/// <summary>
        /// Diese Funktion gibt alle EtbEintraege zurueck, die nicht Systemereignisse sind.
        /// </summary>
        /// <returns>Menge aller EtbZusatzeintraege</returns>
        public Cdv_EtbEintrag[] LadeEtbEintraege()
        {
            // hole alle EtbEintraege
            pELS.DV.Server.Interfaces.IPelsObject[] ipoa = _ObjektManager.EtbEintraege.HolenAlle();
            if(!(ipoa == null) || (ipoa.Length == 0))
            {
                Cdv_EtbEintrag[] tmpEtbEintraege = new Cdv_EtbEintrag[ipoa.Length];
                ipoa.CopyTo(tmpEtbEintraege,0);

                //Schmeiße alle Systemereignisse raus
                ArrayList _tmpAL = new ArrayList();
                for (int pos = 0; pos < tmpEtbEintraege.Length; pos++)
                {
                    if (tmpEtbEintraege[pos].GetType().ToString() != "pELS.DV.Cdv_Systemereignis") _tmpAL.Add(tmpEtbEintraege[pos]);
                }

                // kopiere Einträge aus ArrayList nach Array
                Cdv_EtbEintrag[] pout_EtbEintraege = new Cdv_EtbEintrag[_tmpAL.Count];
                _tmpAL.CopyTo(pout_EtbEintraege);

                //nach Datum sortieren
                pout_EtbEintraege = this.SortiereNachDatum(pout_EtbEintraege);
                return pout_EtbEintraege;
            }
            else
                return null;
        }
        public override IPelsObject[] LadeAusDerDB()
        {
            // Reader, der Daten aufnimmt
            NpgsqlDataReader dreader_etbE_erg;
            // Zum initialisieren des Pels-Objekt-Arrays
            int i_anzahlZeilen;
            // Select anfrage
            String str_SELECTAnfrage = "Select * from \"EtbEintraege\"";
            // Zugriff auf DB
            dreader_etbE_erg = db.AusfuehrenSelectAnfrage(str_SELECTAnfrage, out i_anzahlZeilen);
            // Objekte-Behälter für die Ergebnisse
            Cdv_EtbEintrag[] etbE_erg = new Cdv_EtbEintrag[i_anzahlZeilen];
            int i = 0;

            while(dreader_etbE_erg.Read())
            {
                string str_Benutzername, str_Beschreibung;
                DateTime date_erstellDatum;
                date_erstellDatum = dreader_etbE_erg.GetDateTime(dreader_etbE_erg.GetOrdinal("Erstelldatum"));
                str_Benutzername = CMethoden.KonvertiereStringAusDB(dreader_etbE_erg.GetString(dreader_etbE_erg.GetOrdinal("Benutzername")));
                str_Beschreibung = CMethoden.KonvertiereStringAusDB(dreader_etbE_erg.GetString(dreader_etbE_erg.GetOrdinal("BEschreibung")));

                if(dreader_etbE_erg.GetBoolean(dreader_etbE_erg.GetOrdinal("IstSystemereignis")))
                {
                    Tdv_SystemereignisArt syserg =	(Tdv_SystemereignisArt) dreader_etbE_erg.GetInt32(dreader_etbE_erg.GetOrdinal("Systemereignisart"));
                    bool b_erscheintInEtb = dreader_etbE_erg.GetBoolean(dreader_etbE_erg.GetOrdinal("ErscheintInEtb"));
                    etbE_erg[i] = new Cdv_Systemereignis(str_Benutzername,date_erstellDatum,str_Beschreibung,syserg,b_erscheintInEtb);
                }
                else
                    etbE_erg[i] = new Cdv_EtbEintrag(str_Benutzername, date_erstellDatum, str_Beschreibung);

                etbE_erg[i].ID = dreader_etbE_erg.GetInt32(dreader_etbE_erg.GetOrdinal("ID"));

                //TODO: alle Kommentare nochmal auslesen
                i++;
            }
            return etbE_erg;
        }
        private void btn_Zusatzeintrag_Speichern_Click(object sender, System.EventArgs e)
        {
            if(ValidiereTextfeldNichtLeer(txt_Zusatzeintrag_Text))
            {
                // Objekt aus den Eingabefeldern füllen
                Cdv_EtbEintrag neuerZE = new Cdv_EtbEintrag(
                    txt_Zusatzeintrag_Autor.Text,
                    dtp_Zusatzeintrag_Datum.Value,
                    txt_Zusatzeintrag_Text.Text);
                // Objekt zum Speichern an die Steuerungsschicht weiterreichen
                _st_etb.SpeichereEtbZusatzEintrag(neuerZE);

                this.ZusatzeintragBeendeModusNeuerEintrag(true);
            }
        }
 public void LadeAlleZusatzeintraegeInListe(Cdv_EtbEintrag[] pin_ZeArray)
 {
     lbx_Zusatzeintrag_Liste.Items.Clear();
     lbx_Zusatzeintrag_Liste.Items.AddRange(pin_ZeArray);
 }
 //Stellt den übergebenen EtbEintrag rechts im Auswahlfeld dar
 private void ZusatzeintragInAuswahlfeldDarstellen(Cdv_EtbEintrag pin_etbE)
 {
     txt_Zusatzeintrag_Autor.Text = pin_etbE.Benutzername;
     dtp_Zusatzeintrag_Datum.Value = pin_etbE.ErstellDatum;
     txt_Zusatzeintrag_Text.Text = pin_etbE.Beschreibung;
 }
        //Stellt den übergebenen Kommentar auf dem Reiter ZusatzErinträe im Kommentarbereich dar
        private void ZusatzeintragAlteKommentareLaden(Cdv_EtbEintrag pin_ebtE)
        {
            //Initialisieren des Kommentarbereiches
            this.InitZusatzeintragKommentare();

            //Kommentare zu diesem Eintrag in die Groupbox laden
            foreach(Cdv_EtbEintragKommentar etbK in this._st_etb._myEtbKommentarMenge)
            {
                if(etbK.EtbEintragID == pin_ebtE.ID)
                {
                    cmb_Zusatzeintrag_AlteKommentare.Items.Add(etbK);
                    cmb_Zusatzeintrag_AlteKommentare.Enabled = true;
                }

            }
        }
        /// <summary>
        /// Sortiert EtbEintraege (und auch Systemereignisse) nach dem 
        /// Erstelldatum.
        /// </summary>
        /// <param name="pin_etbEs">zu Sortierendes Array</param>
        /// <returns>Sortiertes Array</returns>
        private Cdv_EtbEintrag[] SortiereNachDatum(Cdv_EtbEintrag[] pin_etbEs)
        {
            IComparer MeinVergleicher = new EtbEDateComparer();
            Array.Sort(pin_etbEs, MeinVergleicher);

            return pin_etbEs;
        }
 /// <summary>
 /// Speichert einen neuen Zusatzeintrag in die Datenbank
 /// </summary>
 /// <param name="pin_neuerZeOhneID">neuer ETB Eintrag</param>
 /// <returns>Objekt mit ID</returns>
 public Cdv_EtbEintrag SpeichereZusatzeintrag(Cdv_EtbEintrag pin_neuerZeOhneID)
 {
     Cdv_EtbEintrag pout_ZeMitID = (Cdv_EtbEintrag) _ObjektManager.EtbEintraege.Speichern(pin_neuerZeOhneID);
     return pout_ZeMitID;
 }
 /// <summary>
 /// Schreibt ein neu markiertes Systemereignis in die Datenbank
 /// </summary>
 /// <param name="pin_ID">neuer ETB Eintrag</param>
 /// <returns>nichts</returns>
 public void MarkiereSystemereignis(Cdv_EtbEintrag pin_markiertesSE)
 {
     _ObjektManager.EtbEintraege.Speichern(pin_markiertesSE);
 }
Exemple #10
0
 /// <summary>
 /// Schreibe Zusatzeintrag in die Datenbank und füge es zur GUI hinzu
 /// </summary>
 public void SpeichereEtbZusatzEintrag(Cdv_EtbEintrag pin_neuerZE)
 {
     // Objekt in die Datenbank schreiben, und verhindern das währendessen Updates passieren
     UpdateErlaubt = false;
     Cdv_EtbEintrag neuerZeMitID = _PortalLogikEtb.SpeichereZusatzeintrag(pin_neuerZE);
     UpdateErlaubt = true;
     // Aktualisiere Liste
     this.BehandleEventEtbEintraege(null);
 }
Exemple #11
0
 /// <summary>
 /// Markiert ein ausgewähltes Systemereignis, so dass es im ETB angezeigt wird
 /// </summary>
 public void MarkiereSystemereignis(Cdv_EtbEintrag pin_neuMarkiertesSE)
 {
     // Ändere Markierung in der Datenbank
     UpdateErlaubt = false;
     _PortalLogikEtb.MarkiereSystemereignis(pin_neuMarkiertesSE);
     UpdateErlaubt = true;
     // Aktualisiere Liste
     this.BehandleEventEtbEintraege(null);
 }