예제 #1
0
        static public bool SafeObjectInDb(Tabelle record, string tabellenName, out string errms)
        {
            errms = "";

            switch (tabellenName)
            {
            case "Modell_mod":
                return(_db.ModellSpeichern(record as Modell_mod, out errms));

            case "Material_mat":
                return(_db.MaterialSpeichern(record as Material_mat, out errms));

            case "Artikel_art":
                return(_db.ArtikelSpeichern(record as Artikel_art, out errms));

            case "Typ_typ":
                return(_db.TypSpeichern(record as Typ_typ, out errms));

            case "Groesse_gro":
                return(_db.GroesseSpeichern(record as Groesse_gro, out errms));

            case "Farbe_fab":
                return(_db.FarbeSpeichern(record as Farbe_fab, out errms));
            }


            return(false);
        }
예제 #2
0
파일: ModulFarbe.cs 프로젝트: heibik/Label
        public override Tabelle Ui2Object(Tabelle record)
        {
            Farbe_fab f;

            if (record == null)
            {
                f = new Farbe_fab();
            }
            else
            {
                f = record as Farbe_fab;
            }
            if (true)
            {
            }
            if (_uiTbBezeichnung.Text.Trim().Length == 0)
            {
                _uiTbBezeichnung.Focus();
                MessageBox.Show("Bezeichnung darf nicht leer sein!", "Fehlermeldung");
                return(null);
            }
            f.sBezeichnung = _uiTbBezeichnung.Text;

            return(f);
        }
예제 #3
0
파일: ModulFarbe.cs 프로젝트: heibik/Label
 public override void Object2Ui(Tabelle t)
 {
     if (t != null)
     {
         Farbe_fab farbe = t as Farbe_fab;
         _uiTbBezeichnung.Text = farbe.sBezeichnung;
     }
     else
     {
         _uiTbBezeichnung.Clear();
     }
 }
예제 #4
0
파일: ModulTyp.cs 프로젝트: heibik/Label
 public override void Object2Ui(Tabelle t)
 {
     if (t != null)
     {
         Typ_typ modell = t as Typ_typ;
         _uiTbBezeichnung.Text = modell.sBezeichnung;
     }
     else
     {
         _uiTbBezeichnung.Clear();
     }
 }
예제 #5
0
 public override void Object2Ui(Tabelle t)
 {
     if (t != null)
     {
         Groesse_gro groesse = t as Groesse_gro;
         _uiTbGroesse.Text = groesse.rGroesse.ToString();
     }
     else
     {
         _uiTbGroesse.Clear();
     }
 }
예제 #6
0
파일: StammListe.cs 프로젝트: heibik/Label
        public void SetSelectedIds(System.Collections.IList selectedItems)
        {
            _selectedObjects.Clear();
            if (selectedItems != null)
            {
                foreach (var item in selectedItems)
                {
                    Tabelle record = (Tabelle)item;

                    _selectedObjects.Add(record);
                }
            }
        }
예제 #7
0
        public override Tabelle Ui2Object(Tabelle record)
        {
            Groesse_gro g;

            if (record == null)
            {
                g = new Groesse_gro();
            }
            else
            {
                g = record as Groesse_gro;
            }


            decimal groesse;

            if (_uiTbGroesse.Text.Trim().Length == 0)
            {
                MessageBox.Show("Größe braucht einen Wert", "Eingabefehler");
                _uiTbGroesse.Focus();
                return(null);
            }
            else if (!decimal.TryParse(_uiTbGroesse.Text.Trim(), out groesse))
            {
                MessageBox.Show("Eingabe ist keine Zahl", "Eingabefehler");
                _uiTbGroesse.Focus();
                return(null);
            }
            else if ((int)Math.Round(groesse, 2, MidpointRounding.AwayFromZero) > 999)
            {
                MessageBox.Show("Groesse darf nur 3 Vorkommastellen haben", "Eingabefehler");
                _uiTbGroesse.Focus();
                return(null);
            }
            else
            {
                decimal gr = groesse;
                foreach (Groesse_gro item in Datenverwaltung.GetAllRecordsFromTable("Groesse_gro"))
                {
                    if (item.rGroesse == groesse)
                    {
                        MessageBox.Show("Diese Größe gibt es schon", "Fehlermeldung");
                        return(null);
                    }
                }
                g.rGroesse = Math.Round(groesse, 2, MidpointRounding.AwayFromZero);
            }


            return(g);
        }
예제 #8
0
 public override void Object2Ui(Tabelle t)
 {
     if (t != null)
     {
         Material_mat modell = t as Material_mat;
         _uiTbBezeichnung.Text = modell.sBezeichnung;
         _uiTbNummer.Text      = modell.sNummer;
     }
     else
     {
         _uiTbBezeichnung.Clear();
         _uiTbNummer.Clear();
     }
 }
예제 #9
0
        public override void Object2Ui(Tabelle t)
        {
            _uiLiMaterial.Items.Clear();
            foreach (var record in Datenverwaltung.GetAllRecordsFromTable("Material_mat"))
            {
                _uiLiMaterial.Items.Add(new CheckBox()
                {
                    DataContext = (Material_mat)record, Content = ((Material_mat)record).sBezeichnung
                });
            }



            if (t != null)
            {
                Modell_mod modell = t as Modell_mod;
                _uiTbBezeichnung.Text         = modell.sBezeichnung;
                _uiTbGeschlecht.SelectedValue = modell.sGeschlecht;
                _uiImBildAnzeige.Source       = Byte2Pic(modell.bSymbolBild);
                _uiTbTyp.SelectedValue        = modell.typ_iId;
                _bild = modell.bSymbolBild;

                foreach (var item in _uiLiMaterial.Items)
                {
                    if (modell.Materialien.Contains(((CheckBox)item).DataContext))
                    {
                        ((CheckBox)item).IsChecked = true;
                    }
                    else
                    {
                        ((CheckBox)item).IsChecked = false;
                    }
                }
            }
            else
            {
                _uiTbBezeichnung.Clear();
                _uiTbGeschlecht.SelectedValue = null;
                _uiImBildAnzeige.Source       = null;
                _uiTbTyp.SelectedValue        = null;
                _bild = null;

                foreach (var item in _uiLiMaterial.Items)
                {
                    ((CheckBox)item).IsChecked = false;
                }
            }
        }
예제 #10
0
        public override Tabelle Ui2Object(Tabelle record)
        {
            Material_mat m;

            if (record == null)
            {
                m = new Material_mat();
            }
            else
            {
                m = record as Material_mat;
            }



            if (_uiTbBezeichnung.Text.Trim().Length == 0)
            {
                _uiTbBezeichnung.Focus();
                MessageBox.Show("Bezeichnung darf nicht leer sein!", "Fehlermeldung");
                return(null);
            }
            else
            {
                m.sBezeichnung = _uiTbBezeichnung.Text;
            }


            if (_uiTbNummer.Text.Trim().Length == 0)
            {
                _uiTbNummer.Focus();
                MessageBox.Show("Nummer darf nicht leer sein!", "Fehlermeldung");
                return(null);
            }
            else if (_uiTbNummer.Text.Trim().Length != 10)
            {
                _uiTbNummer.Focus();
                MessageBox.Show("Nummer muss 10-stellig sein!", "Fehlermeldung");
                return(null);
            }
            else
            {
                m.sNummer = _uiTbNummer.Text.Trim();
            }



            return(m);
        }
예제 #11
0
        public void Speichern()
        {
            Tabelle record = Ui2Object(uiDgObjekte.SelectedItem as Tabelle);

            if (record == null)
            {
                return;
            }


            // ---------- Hier kommt das Speichern in der DB ---------------

            if (!Datenverwaltung.SafeObjectInDb(record, tabellenName, out string fehler))
            {
                MessageBox.Show(fehler, "DB-Fehler", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }



            if (status == OpenState.editRow)
            {
                uiDgObjekte.Items.Refresh();
                Object2Ui(uiDgObjekte.SelectedItem as Tabelle);
            }
            else
            {
                Datenverwaltung.AddRecord(record, tabellenName);
                uiDgObjekte.Items.Refresh();
                CloseUiGrEdit();
                uiDgObjekte.SelectedItem = record;
                OpenUiGrEditRow();
                Object2Ui(uiDgObjekte.SelectedItem as Tabelle);

                StartSearch();
                ChangeButton();
            }

            SelectedObjekt?.Invoke(tabellenName);
        }
예제 #12
0
파일: ModulTyp.cs 프로젝트: heibik/Label
        public override Tabelle Ui2Object(Tabelle record)
        {
            Typ_typ t;

            if (record == null)
            {
                t = new Typ_typ();
            }
            else
            {
                t = record as Typ_typ;
            }


            if (_uiTbBezeichnung.Text.Length == 0)
            {
                _uiTbBezeichnung.Focus();
                MessageBox.Show("Bezeichnung darf nicht leer sein!", "Fehlermeldung");
                return(null);
            }
            else
            {
                string bez = _uiTbBezeichnung.Text;
                foreach (Typ_typ item in Datenverwaltung.GetAllRecordsFromTable("Typ_typ"))
                {
                    if (item.sBezeichnung == bez)
                    {
                        MessageBox.Show("Bezeichnung muss eindeutig sein", "Fehlermeldung");
                        return(null);
                    }
                }
                t.sBezeichnung = _uiTbBezeichnung.Text;
            }



            return(t);
        }
예제 #13
0
        public override void Object2Ui(Tabelle t)
        {
            if (t != null)
            {
                Artikel_art artikel = t as Artikel_art;
                _uiTbBezeichnung.Text      = artikel.sBezeichnung;
                _uiTbModell.SelectedValue  = artikel.mod_iId;
                _uiTbFarbe.SelectedValue   = artikel.fab_iId;
                _uiTbGroesse.SelectedValue = artikel.gro_iId;
                _uiTbArtNr.Text            = artikel.iArtNr.ToString();



                generateBarcode(artikel.iArtNr);
            }
            else
            {
                _uiTbBezeichnung.Clear();
                _uiTbModell.SelectedValue  = null;
                _uiTbFarbe.SelectedValue   = null;
                _uiTbGroesse.SelectedValue = null;
                _uiTbArtNr.Clear();
            }
        }
예제 #14
0
        public override Tabelle Ui2Object(Tabelle record)
        {
            Modell_mod m;

            byte[] savePic;
            if (record == null)
            {
                m = new Modell_mod();
            }
            else
            {
                m = record as Modell_mod;
            }

            /*string bez = _uiTbBezeichnung.Text; ;
             * foreach (Modell_mod item in Datenverwaltung.GetAllRecordsFromTable("Modell_mod"))
             * {
             *
             *  if (item.sBezeichnung == bez)
             *  {
             *      MessageBox.Show("Bezeichnung muss eindeutig sein", "Fehlermeldung");
             *      return null;
             *
             *  }
             * }*/
            try
            {
                m.sBezeichnung = _uiTbBezeichnung.Text;
            }
            catch (Exception e)
            {
                MessageBox.Show("Bezeichnug muss eindeutig sein", "DB-Fehler");
            }



            m.sGeschlecht = _uiTbGeschlecht.SelectedValue.ToString();

            m.bSymbolBild = _bild;

            savePic       = m.bSymbolBild;
            m.bSymbolBild = Link2Byte();
            if (m.bSymbolBild == null)
            {
                m.bSymbolBild = savePic;
            }

            _uiTbSymbolBildPfad = null;

            m.typ_iId = (int?)_uiTbTyp.SelectedValue;


            m.Materialien.Clear();
            foreach (var item in _uiLiMaterial.Items)
            {
                if (((CheckBox)item).IsChecked == true)
                {
                    m.Materialien.Add((Material_mat)((CheckBox)item).DataContext);
                }
            }



            return(m);
        }
예제 #15
0
 static public void AddRecord(Tabelle record, string tabellenName)
 {
     _tabellen[tabellenName].AddRecord(record);
 }
예제 #16
0
 public abstract Tabelle Ui2Object(Tabelle record);
예제 #17
0
 public abstract void Object2Ui(Tabelle t);
예제 #18
0
        public override Tabelle Ui2Object(Tabelle record)
        {
            Regex regex = new Regex("^[0-9]+$");

            Artikel_art a;

            if (record == null)
            {
                a = new Artikel_art();
            }
            else
            {
                a = record as Artikel_art;
            }


            if (_uiTbBezeichnung.Text.Trim().Length == 0)
            {
                a.sBezeichnung = null;
            }
            else
            {
                a.sBezeichnung = _uiTbBezeichnung.Text.Trim();
            }


            if (_uiTbArtNr.Text.Trim().Length == 0)
            {
                MessageBox.Show("ArtNr darf nicht Leer sein");
                return(null);
            }
            else if (!regex.IsMatch(_uiTbArtNr.Text.Trim()))
            {
                MessageBox.Show("EAN darf nur Nummern beinnhalten", "Eingabefehler");
                _uiTbBezeichnung.Focus();
                return(null);
            }
            else
            {
                a.iArtNr = int.Parse(_uiTbArtNr.Text.Trim());
            }



            if (_uiTbModell.SelectedValue == null)
            {
                MessageBox.Show("Modell muss ausgewählt werden", "Eingabefehler");
                return(null);
            }
            else
            {
                a.mod_iId = (int)_uiTbModell.SelectedValue;
            }


            if (_uiTbFarbe.SelectedValue == null)
            {
                MessageBox.Show("Farbe muss ausgewählt werden", "Eingabefehler");
                return(null);
            }
            else
            {
                a.fab_iId = (int)_uiTbFarbe.SelectedValue;
            }

            if (_uiTbGroesse.SelectedValue == null)
            {
                MessageBox.Show("Größe muss ausgewählt werden", "Eingabefehler");
                return(null);
            }
            else
            {
                a.gro_iId = (int)_uiTbGroesse.SelectedValue;
            }


            return(a);
        }
예제 #19
0
파일: StammListe.cs 프로젝트: heibik/Label
 public void AddRecord(Tabelle record)
 {
     _allRecords.Add(record);
     _searchResults.Add(record);
 }