/// <summary> /// Initializes a new instance of the <see cref="Form_Kalkulation"/> class. /// </summary> public Form_Kalkualtion() { InitializeComponent(); InitializeKalkulation(); kalkParamDB = DBManager.GetKalkulationsparameter(); cbxSonderartikelEinheit.SelectedIndex = 0; }
/// <summary> /// Initializes a new instance of the <see cref="Form_Kalkulation"/> class. /// </summary> /// <param name="pIsAuftrag">Wenn Flag == <c>true</c>, dann wurde die Kalkulationsform aus dem Auftragsmodul heraus geöffnet.</param> public Form_Kalkualtion(bool pIsAuftrag) { this.isAuftrag = pIsAuftrag; InitializeComponent(); InitializeKalkulation(); kalkParamDB = DBManager.GetKalkulationsparameter(); cbxSonderartikelEinheit.SelectedIndex = 0; }
/// <summary> /// Lädt die Kalkulationsparameter aus der DB in die entsprechenden Textboxen. /// </summary> private void LoadKalkulationsparameter() { try { using (var dbContext = new DataBaseDataContext()) { if (kalkParamDB != null) { kalkParamDB = null; kalkParamDB = dbContext.Kalkulationsparameter.Where(kp => kp.ParamterID.Equals(1)).FirstOrDefault(); } else { kalkParamDB = dbContext.Kalkulationsparameter.Where(kp => kp.ParamterID.Equals(1)).FirstOrDefault(); } tbxPlattenkostenTM.Text = kalkParamDB.PlattenkostenTM.ToString("#00.00"); tbxPlattenkostenTS.Text = kalkParamDB.PlattenkostenTS.ToString("#00.00"); tbxPlattenkostenNK.Text = kalkParamDB.PlattenkostenNK.ToString("#00.00"); tbxAluprofilkosten.Text = kalkParamDB.Aluprofilkosten.ToString("##0.00"); tbxBeschlagkosten.Text = kalkParamDB.Beschlagkosten.ToString("#00.00"); tbxFixkosten.Text = kalkParamDB.Fixkosten.ToString("##0.00"); tbxPulverkosten.Text = kalkParamDB.Pulverkosten.ToString("##0.00"); tbxMontagekosten.Text = kalkParamDB.Montagekosten.ToString("#00.00"); tbxLohnkostenTM.Text = kalkParamDB.LohnkostenTM.ToString("#00.00"); tbxLohnkostenTS.Text = kalkParamDB.LohnkostenTS.ToString("#00.00"); tbxLohnkostenNK.Text = kalkParamDB.LohnkostenNK.ToString("#00.00"); tbxOberlichtTM.Text = kalkParamDB.OberlichtkostenTM.ToString("#00.00"); tbxOberlichtTS.Text = kalkParamDB.OberlichtkostenTS.ToString("#00.00"); tbxOberlichtNK.Text = kalkParamDB.OberlichtkostenNK.ToString("#00.00"); tbxGewinn.Text = (((kalkParamDB.Gewinn) - 1) * 100).ToString("0.00#"); //tbxMwst.Text = (((kalkParamDB.Mwst) - 1) * 100).ToString("0.00#"); tbxSonderzuschlag.Text = (((kalkParamDB.Sonderzuschlag) - 1) * 100).ToString("0.00#"); tbxAussparung.Text = ((kalkParamDB.Aussparung).ToString("0.00#")); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
/// <summary> /// Speichert die Kalkulationsparameter in der DB. /// </summary> private void SaveKalkulationsparameter() { try { using (var dbContext = new DataBaseDataContext()) { if (kalkParamDB != null) { kalkParamDB = null; kalkParamDB = dbContext.Kalkulationsparameter.Where(kp => kp.ParamterID.Equals(1)).FirstOrDefault(); } else { kalkParamDB = dbContext.Kalkulationsparameter.Where(kp => kp.ParamterID.Equals(1)).FirstOrDefault(); } kalkParamDB.PlattenkostenTM = Decimal.Parse(tbxPlattenkostenTM.Text); kalkParamDB.PlattenkostenTS = Decimal.Parse(tbxPlattenkostenTS.Text); kalkParamDB.PlattenkostenNK = Decimal.Parse(tbxPlattenkostenNK.Text); kalkParamDB.Aluprofilkosten = Decimal.Parse(tbxAluprofilkosten.Text); kalkParamDB.Beschlagkosten = Decimal.Parse(tbxBeschlagkosten.Text); kalkParamDB.Fixkosten = Decimal.Parse(tbxFixkosten.Text); kalkParamDB.Pulverkosten = Decimal.Parse(tbxPulverkosten.Text); kalkParamDB.Montagekosten = Decimal.Parse(tbxMontagekosten.Text); kalkParamDB.LohnkostenTM = Decimal.Parse(tbxLohnkostenTM.Text); kalkParamDB.LohnkostenTS = Decimal.Parse(tbxLohnkostenTS.Text); kalkParamDB.LohnkostenNK = Decimal.Parse(tbxLohnkostenNK.Text); kalkParamDB.OberlichtkostenTM = Decimal.Parse(tbxOberlichtTM.Text); kalkParamDB.OberlichtkostenTS = Decimal.Parse(tbxOberlichtTS.Text); kalkParamDB.OberlichtkostenNK = Decimal.Parse(tbxOberlichtNK.Text); kalkParamDB.Gewinn = Decimal.Parse(tbxGewinn.Text) / 100 + 1; kalkParamDB.Sonderzuschlag = Decimal.Parse(tbxSonderzuschlag.Text) / 100 + 1; kalkParamDB.Aussparung = Decimal.Parse(tbxAussparung.Text); //kalkParamDB.Mwst = Decimal.Parse(tbxMwst.Text) / 100 + 1; dbContext.SubmitChanges(); this.Validate(); // Steuer speichern this.steuerBindingSource.EndEdit(); this.steuerTableAdapter.Update(this.dsSteuer.Steuer); // Zeichenparameter speichern zeichenparameterBindingSource.EndEdit(); zeichenparameterTableAdapter.Update(dsZeichenparameter.Zeichenparameter); // Lagerkategorien speichern lagerkategorieBindingSource.EndEdit(); lagerkategorieTableAdapter.Update(dsLagerkategorie.Lagerkategorie); // Lagereinheiten speichern lagereinheitBindingSource.EndEdit(); lagereinheitTableAdapter.Update(dsLagereinheit.Lagereinheit); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
// ****************************************************************** // Konstruktor // ****************************************************************** #region Konstruktor /// <summary> /// Intitialisiert eine neue Instanz der <see cref="Kalkulation"/> Klasse. /// </summary> public Kalkulation() { using (var dbContext = new DataBaseDataContext()) { if (kalkParamDB != null) { kalkParamDB = null; kalkParamDB = dbContext.Kalkulationsparameter.Where(kp => kp.ParamterID.Equals(1)).FirstOrDefault(); } else { kalkParamDB = dbContext.Kalkulationsparameter.Where(kp => kp.ParamterID.Equals(1)).FirstOrDefault(); } } this.Montagekosten = kalkParamDB.Montagekosten; this.Alukosten = kalkParamDB.Aluprofilkosten; this.AlubeschKosten = kalkParamDB.Pulverkosten; this.Beschlagkosten = kalkParamDB.Beschlagkosten; this.Fixkosten = kalkParamDB.Fixkosten; this.Gewinn = kalkParamDB.Gewinn; this.Sonderzuschlag = kalkParamDB.Sonderzuschlag; }
partial void DeleteKalkulationsparameter(Kalkulationsparameter instance);
partial void UpdateKalkulationsparameter(Kalkulationsparameter instance);
partial void InsertKalkulationsparameter(Kalkulationsparameter instance);
///<summary> ///</summary> ///<param name="ap"></param> public Form_Kalkualtion(Angebot_Position ap) { InitializeComponent(); InitializeKalkulation(); kalkParamDB = DBManager.GetKalkulationsparameter(); isAuftrag = false; //Ausgewählte Angebotsposition laden positionsNr = ap.PosID.ToString(); angebotsNr = ap.AngebotID.ToString(); switch (ap.Artikel) { case "Vorderwand": rdbVorderwand.Checked = true; break; case "Kabine": rdbKabinen.Checked = true; break; case "Trennwand": rdbTrennwand.Checked = true; break; case "Schamwand": rdbSchamwand.Checked = true; break; case "Abschlusswand": rdbVorOTuer.Checked = true; break; case "Sonderartikel": rdbAussparung.Checked = true; break; } tbxSondertextUnten.Text = ap.Sondertext; tbxSondertextOben.Text = ap.SondertextOben; switch (ap.Typ) { case "TM": rdbTM.Checked = true; break; case "TS": rdbTS.Checked = true; break; case "NK": rdbNK.Checked = true; break; } tbxAnlagen.Text = String.Format("{0:#,0.##}", ap.AnlagenStk); tbxBreite.Text = ap.Breite.ToString(); tbxTiefe.Text = ap.Tiefe.ToString(); tbxTüren.Text = ap.Türen.ToString(); tbxTrw.Text = ap.TW.ToString(); tbxZuschlag.Text = ap.ZuschlagTür.ToString(); if (ap.Artikel == "Sonderartikel") { tbxAussparungenPreis.Text = ap.Einzelpreis.ToString(); double temp = double.Parse(tbxAussparungenPreis.Text); tbxAussparungenPreis.Text = temp.ToString(); gbxAussparung.Enabled = true; cbxSonderartikelEinheit.Text = ap.SonderartikelEinheit; } tbxVK.Text = ap.Zuschlag.ToString(); switch (ap.ZuschlagArt) { case "Prozent": cbxVK.SelectedIndex = 0; break; case "Euro": cbxVK.SelectedIndex = 1; break; } cbxAlupulver.Checked = ap.Alupulver != 0.00m ? true : false; cbxMontage.Checked = ap.Montage == "ja" ? true : false; cbxEventual.Checked = ap.Eventual != 0 ? true : false; cobAussaprungBeschreibung.Text = ap.AussparungTxt; if (ap.Alternativ1Typ != null) { cbxAlternativ1.Checked = true; switch (ap.Alternativ1Typ) { case "TM": rdbTM1.Checked = true; break; case "TS": rdbTS1.Checked = true; break; case "NK": rdbNK1.Checked = true; break; } tbxAlt1Preis.Text = ap.Alternativ1Preis.ToString(); } if (ap.Alternativ2Typ != null) { cbxAlternativ2.Checked = true; switch (ap.Alternativ2Typ) { case "TM": rdbTM2.Checked = true; break; case "TS": rdbTS2.Checked = true; break; case "NK": rdbNK2.Checked = true; break; } tbxAlt2Preis.Text = ap.Alternativ2Preis.ToString(); } Kalkulieren(); tbxAlupulv.Text = ap.Alupulver.ToString(); cbxOberlicht.Checked = ap.Oberlicht == "ja" ? true : false; // Der Positions-Einzelpreis wird zum Schluss in die Form geladen. // Hat der User bei der Kalkulation den errechneten Preis manuell abgeändert // so würde der Preis immer durch das erneute Kalkulieren überschrieben. // Das passiert zwar weiterhin, aber durch das nachladen des Preises erscheint somit der korrekte Betrag. if (ap.Artikel != "Sonderartikel") { tbxEinzelVK.Text = String.Format("{0:0,0}", ap.Einzelpreis); } }
///<summary> ///</summary> ///<param name="ap"></param> public Form_Kalkualtion(Auftrag_Position ap) { InitializeComponent(); InitializeKalkulation(); kalkParamDB = DBManager.GetKalkulationsparameter(); this.isAuftrag = true; //Ausgewählte Auftragsposition laden positionsNr = ap.PosID.ToString(); auftragsNr = ap.AuftragID.ToString(); switch (ap.Artikel) { case "Vorderwand": rdbVorderwand.Checked = true; break; case "Kabine": rdbKabinen.Checked = true; break; case "Trennwand": rdbTrennwand.Checked = true; break; case "Schamwand": rdbSchamwand.Checked = true; break; case "Abschlusswand": rdbVorOTuer.Checked = true; break; case "Sonderartikel": rdbAussparung.Checked = true; break; } tbxSondertextUnten.Text = ap.Sondertext; tbxSondertextOben.Text = ap.SondertextOben; switch (ap.Typ) { case "TM": rdbTM.Checked = true; break; case "TS": rdbTS.Checked = true; break; case "NK": rdbNK.Checked = true; break; } tbxAnlagen.Text = String.Format("{0:#,0.##}", ap.AnlagenStk); tbxBreite.Text = ap.Breite.ToString(); tbxTiefe.Text = ap.Tiefe.ToString(); tbxTüren.Text = ap.Türen.ToString(); tbxTrw.Text = ap.TW.ToString(); tbxZuschlag.Text = ap.ZuschlagTür.ToString(); if (ap.Artikel == "Sonderartikel") { tbxAussparungenPreis.Text = ap.Einzelpreis.ToString(); double temp = double.Parse(tbxAussparungenPreis.Text); tbxAussparungenPreis.Text = temp.ToString(); gbxAussparung.Enabled = true; cbxSonderartikelEinheit.Text = ap.SonderartikelEinheit; } tbxVK.Text = ap.Zuschlag.ToString(); switch (ap.ZuschlagArt) { case "Prozent": cbxVK.SelectedIndex = 0; break; case "Euro": cbxVK.SelectedIndex = 1; break; } cbxAlupulver.Checked = ap.Alupulver != 0.00m ? true : false; cbxMontage.Checked = ap.Montage == "ja" ? true : false; cobAussaprungBeschreibung.Text = ap.AussparungTxt; if (ap.Alternativ1Typ != null) { cbxAlternativ1.Checked = true; switch (ap.Alternativ1Typ) { case "TM": rdbTM1.Checked = true; break; case "TS": rdbTS1.Checked = true; break; case "NK": rdbNK1.Checked = true; break; } tbxAlt1Preis.Text = ap.Alternativ1Preis.ToString(); } if (ap.Alternativ2Typ != null) { cbxAlternativ2.Checked = true; switch (ap.Alternativ2Typ) { case "TM": rdbTM2.Checked = true; break; case "TS": rdbTS2.Checked = true; break; case "NK": rdbNK2.Checked = true; break; } tbxAlt2Preis.Text = ap.Alternativ2Preis.ToString(); } Kalkulieren(); tbxAlupulv.Text = ap.Alupulver.ToString(); cbxOberlicht.Checked = ap.Oberlicht == "ja" ? true : false; if (ap.Artikel != "Sonderartikel") { tbxEinzelVK.Text = String.Format("{0:0,0}", ap.Einzelpreis); } }