private void btnEmail_Click(object sender, EventArgs e) { //this.Cursor = Cursors.WaitCursor; String eMail = ""; using (var dbContext = new DataBaseDataContext()) { try { // Tabelleninhalt löschen dbContext.ExecuteCommand("TRUNCATE TABLE Brief"); dbContext.SubmitChanges(); var brief = new Brief { Betreff = tbxBetreff.Text, Text = tbxText.Text, Bauvorhaben = tbxBauvorhaben.Text, ZuHaenden = tbxHaenden.Text, Anrede = cobAnrede.Text }; dbContext.Brief.InsertOnSubmit(brief); dbContext.SubmitChanges(); var k = dbContext.Kunde.Where(customer => customer.KundeID.Equals(kundennr[0])).FirstOrDefault(); eMail = k.Email2; Func.SendDocumentViaEmail(eMail, "", "", ReportManager.GetExportFilepath(reportType, kundennr[0])); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } //this.Cursor = Cursors.Default; }
/// <summary> /// Speicher die Firmendaten in der DB. /// </summary> private void SaveFirmendaten() { try { using (var dbContext = new DataBaseDataContext()) { if (firmendatenDB != null) { firmendatenDB = null; firmendatenDB = dbContext.Firmendatens.Where(fd => fd.ID.Equals(1)).FirstOrDefault(); } else { firmendatenDB = dbContext.Firmendatens.Where(fd => fd.ID.Equals(1)).FirstOrDefault(); } firmendatenDB.Name = tbxFirmenname.Text; firmendatenDB.Inhaber = tbxInhaber.Text; firmendatenDB.Straße = tbxStraße.Text; firmendatenDB.PLZ = tbxPLZ.Text; firmendatenDB.Ort = tbxOrt.Text; firmendatenDB.Telefon = tbxTelefon.Text; firmendatenDB.Fax = tbxFax.Text; firmendatenDB.Email = tbxEmail.Text; firmendatenDB.Homepage = tbxHompage.Text; firmendatenDB.Steuernummer = tbxSteuernummer.Text; firmendatenDB.Ust_Nummer = tbxUST.Text; firmendatenDB.Bank1 = tbxBank1.Text; firmendatenDB.BLZ1 = tbxBLZ1.Text; firmendatenDB.Konto1 = tbxKnt1.Text; firmendatenDB.IBAN1 = tbxIban1.Text; firmendatenDB.BIC1 = tbxBic1.Text; firmendatenDB.Bank2 = tbxBank2.Text; firmendatenDB.BLZ2 = tbxBLZ2.Text; firmendatenDB.Konto2 = tbxKnt2.Text; firmendatenDB.IBAN2 = tbxIban2.Text; firmendatenDB.BIC2 = tbxBic2.Text; firmendatenDB.Steuertext = tbxSteuertext.Text; firmendatenDB.Bank1Aktiv = cbxBank1Aktiv.Checked ? 1 : 0; firmendatenDB.Bank2Aktiv = cbxBank2Aktiv.Checked ? 1 : 0; dbContext.SubmitChanges(); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
//Anlegen eines Angebots private void btnAnlegen_Click(object sender, EventArgs e) { using (var dbContext = new DataBaseDataContext()) { if ((!string.IsNullOrEmpty(tbxKdName.Text)) | (Func.IsNumeric(tbxKdNummer.Text, true))) { if (cobBetreff.SelectedIndex != -1) { try { var a = new Angebot { Anfahrt = cbxAnfahrt.Checked ? "ja" : "nein", KundeID = int.Parse(tbxKdNummer.Text), Empfänger = tbxKdHaenden.Text == "" ? null : tbxKdHaenden.Text, Datum = dateAngebot.Value, Typ = cobTyp.Text == "Eigener Text" ? tbxEigenerText.Text : cobTyp.Text, Betreff = cobBetreff.Text, BV = tbxBauvorhaben.Text == "" ? null : tbxBauvorhaben.Text, BV2 = tbxBV2.Text == "" ? null : tbxBV2.Text, Gesamtbetrag = 0.0m, //Initialwert Nachlass = Decimal.Parse(tbxNachlass.Text), NachlassArt = cobNachlass.Text, Steuer = (Decimal)cobMwSt.SelectedValue, Zahlungsbedingung = cobSkonto.Text == "" ? "Keine" : cobSkonto.Text, Aufmaß = cbxAufmaß.Checked ? "ja" : "nein", Sondertext = tbxSondertextOben.Text == "" ? null : tbxSondertextOben.Text, SondertextUnten = tbxSondertextUnten.Text == "" ? null : tbxSondertextUnten.Text, VorgabedatumRechnung = dateAngVorgabeRech.Value.Date != DateTime.Today.Date ? dateAngVorgabeRech.Value.Date : (DateTime?)null }; dbContext.Angebot.InsertOnSubmit(a); dbContext.SubmitChanges(); tbxAngNummer.Text = a.AngebotID.ToString(); //itemPosNeu.Enabled = true; btnAnlegen.Enabled = false; //btnEdit.Enabled = true; } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } else { DialogResult res = MessageBox.Show("Bitte wählen Sie einen gültigen Betreff aus.", "Ungültige Betreffauswahl", MessageBoxButtons.OK, MessageBoxIcon.Information); if (res == DialogResult.OK) { cobBetreff.DroppedDown = true; } } } else { MessageBox.Show("Bitte wählen Sie einen gültigen Kunden aus.", "Ungültige Kundenauswahl", MessageBoxButtons.OK, MessageBoxIcon.Information); } } }
//public void setErgebnisse(decimal Pos, decimal Nachl, decimal Mwst, decimal Gesamtsum) //{ // positionSumme = Pos; // nachlass = Nachl; // steuer = Mwst; // gesamt = Gesamtsum; //} private void btnEdit_Click(object sender, EventArgs e) { using (var dbContext = new DataBaseDataContext()) { try { var a = dbContext.Angebot.Where(angebot => angebot.AngebotID.Equals(int.Parse(tbxAngNummer.Text))).FirstOrDefault(); a.Anfahrt = cbxAnfahrt.Checked ? "ja" : "nein"; a.KundeID = int.Parse(tbxKdNummer.Text); a.Empfänger = tbxKdHaenden.Text == "" ? null : tbxKdHaenden.Text; a.Datum = dateAngebot.Value; a.Typ = cobTyp.Text == "Eigener Text" ? tbxEigenerText.Text : cobTyp.Text; a.Betreff = cobBetreff.Text; a.BV = tbxBauvorhaben.Text == "" ? null : tbxBauvorhaben.Text; a.BV2 = tbxBV2.Text == "" ? null : tbxBV2.Text; a.Gesamtbetrag = Decimal.Parse(lblGesamt.Text); a.Nachlass = Decimal.Parse(tbxNachlass.Text); a.NachlassArt = cobNachlass.Text; a.Steuer = (Decimal)cobMwSt.SelectedValue; a.Zahlungsbedingung = cobSkonto.Text; a.Aufmaß = cbxAufmaß.Checked ? "ja" : "nein"; a.Sondertext = tbxSondertextOben.Text == "" ? null : tbxSondertextOben.Text; a.SondertextUnten = tbxSondertextUnten.Text == "" ? null : tbxSondertextUnten.Text; a.VorgabedatumRechnung = dateAngVorgabeRech.Value.Date != DateTime.Today.Date ? dateAngVorgabeRech.Value.Date : (DateTime?)null; dbContext.SubmitChanges(); changesDone = false; } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } }
private void duplizierenToolStripMenuItem_Click(object sender, EventArgs e) { var currentRow = dgrPositionen.CurrentRow; if (currentRow != null) { using (var dbContext = new DataBaseDataContext()) { try { var ap = dbContext.Angebot_Position.Where(angebotPosition => angebotPosition.PosID.Equals(currentRow.Cells["PosID"].Value)).FirstOrDefault(); Angebot_Position ap_new = (Angebot_Position)Entity.Copy(ap, new Angebot_Position()); dbContext.Angebot_Position.InsertOnSubmit(ap_new); dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } Func.FAngebot.dgrPositionen.Columns.Clear(); Func.FAngebot.dgrPositionen.Columns.Add(new DataGridViewCheckBoxColumn() { HeaderText = "Markieren", Name = "Markieren" }); Func.FAngebot.dgrPositionen.Columns.Add(new DataGridViewColumn { CellTemplate = new DataGridViewTextBoxCell(), HeaderText = Const.PosNrHeaderName, Name = Const.PosNrHeaderName, Visible = true }); Func.FAngebot.dgrPositionen.DataSource = Func.LoadAngebotPositionenUebersicht(); //Func.FAngebot.ColorizeZuschlagColumn(); //Func.FAngebot.ColorizeTypColumn(); //Func.FAngebot.GeneratePosNr(); Func.FAngebot.DisableSortmode(); Func.FAngebot.dgrPositionen.Columns["PosID"].Visible = false; Func.FAngebot.dgrPositionen.Columns["AngebotID"].Visible = false; Func.FAngebot.dgrPositionen.Columns["Angebot"].Visible = false; Func.FAngebot.dgrPositionen.Columns["Auftrag"].Visible = false; } }
/// <summary> /// Löscht eine Postion aus dem Angebot. /// </summary> private void DeleteAngebotPos() { var dr = dgrPositionen.CurrentRow; if (dr != null) { DialogResult result = MessageBox.Show("Möchten Sie diese Position wirklich löschen?", "Position löschen", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result == DialogResult.Yes) { using (var dbContext = new DataBaseDataContext()) { try { var ap = dbContext.Angebot_Position.Where(angebot_position => angebot_position.PosID.Equals(dr.Cells["PosID"].Value)).FirstOrDefault(); dbContext.Angebot_Position.DeleteOnSubmit(ap); dbContext.SubmitChanges(); dgrPositionen.DataSource = Func.LoadAngebotPositionenUebersicht(); GeneratePosNr(); DisableSortmode(); Func.LoadAngebotSumme(); var angebot = dbContext.Angebot.Where(a => a.AngebotID.Equals(int.Parse(tbxAngNummer.Text))).FirstOrDefault(); angebot.Gesamtbetrag = Decimal.Parse(Func.FAngebot.lblGesamt.Text); dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } } } }
private void itemAllPos_Click(object sender, EventArgs e) { using (DataBaseDataContext dbContext = new DataBaseDataContext()) { var auftrag = dbContext.Auftrag.Where(auf => auf.AuftragID.Equals(int.Parse(tbxAufNummer.Text))).FirstOrDefault(); var rechnung = new DB.Rechnung { Datum = dateAufVorgabeRech.Value.Date != DateTime.Today.Date ? dateAufVorgabeRech.Value.Date : DateTime.Today.Date, Steuer = auftrag.Steuer, KundeID = auftrag.KundeID, Typ = auftrag.Typ, BV = auftrag.BV, BV2 = auftrag.BV2, Zahlungsbedingung = auftrag.Zahlungsbedingung, Betreff = auftrag.Betreff, Nachlass = auftrag.Nachlass, NachlassArt = auftrag.NachlassArt, Aufmaß = auftrag.Aufmaß, Anfahrt = auftrag.Anfahrt, Sondertext = auftrag.Sondertext, }; try { dbContext.Rechnung.InsertOnSubmit(rechnung); dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } decimal sum = 0.0m; foreach (DataGridViewRow row in dgrPositionen.Rows) { // Es werden nur Auftragspositionen berücksichtigt, die noch keinem Auftrag zugeordnet wurden. if (row.Cells["RechnungID"].Value == null) { var auftragPosition = dbContext.Auftrag_Position.Where(ap => ap.PosID.Equals(row.Cells["PosID"].Value)).FirstOrDefault(); var rechnungPosition = new Rechnung_Position() { RechnungID = rechnung.RechnungID, Artikel = auftragPosition.Artikel, Sondertext = auftragPosition.Sondertext, Typ = auftragPosition.Typ, AnlagenStk = auftragPosition.AnlagenStk, Breite = auftragPosition.Breite, Tiefe = auftragPosition.Tiefe, Türen = auftragPosition.Türen, TW = auftragPosition.TW, ZuschlagTür = auftragPosition.ZuschlagTür, Einzelpreis = auftragPosition.Einzelpreis, Zuschlag = auftragPosition.Zuschlag, ZuschlagArt = auftragPosition.ZuschlagArt, Alupulver = auftragPosition.Alupulver, Montage = auftragPosition.Montage, AussparungStk = auftragPosition.AussparungStk, AussparungTxt = auftragPosition.AussparungTxt, Alternativ1Typ = auftragPosition.Alternativ1Typ, Alternativ1Preis = auftragPosition.Alternativ1Preis, Alternativ2Typ = auftragPosition.Alternativ2Typ, Alternativ2Preis = auftragPosition.Alternativ2Preis, SondertextOben = auftragPosition.SondertextOben, SonderartikelEinheit = auftragPosition.SonderartikelEinheit }; // Increment Gesamtsumme. sum += rechnungPosition.Einzelpreis * rechnungPosition.AnlagenStk; sum += rechnungPosition.Alupulver * rechnungPosition.AnlagenStk; try { dbContext.Rechnung_Position.InsertOnSubmit(rechnungPosition); dbContext.SubmitChanges(); auftragPosition.RechnungID = rechnung.RechnungID; dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } } try { // Von der Gesamtsumme der Positionen den Nachlass abziehen if (Func.IsNumeric(tbxNachlass.Text, true) & tbxNachlass.Text != "" & cobNachlass.SelectedIndex == 0) // Prozent { sum = sum - (sum * decimal.Parse(tbxNachlass.Text) / 100); } else if (Func.IsNumeric(tbxNachlass.Text, true) & tbxNachlass.Text != "") { sum = sum - decimal.Parse(tbxNachlass.Text); } // Zu der Gesamtsumme der Positionen die MwSt hinzurechnen. //if (cobMwSt.SelectedIndex == 0) //{ // sum = sum * 0.19m + sum; //} sum = sum * (Decimal)cobMwSt.SelectedValue + sum; // Rechnung mit Gesamtbetrag updaten. rechnung.Gesamtbetrag = sum; dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } dgrPositionen.DataSource = Func.LoadAuftragPositionenUebersicht(); GeneratePosNr(); selectedRows = 0; btnEdit.Enabled = false; this.Cursor = Cursors.WaitCursor; PrintManager.PrintDirectlyWithDialog(EReports.Rechnung, new List<int>() { 1, rechnung.RechnungID }); this.Cursor = Cursors.Default; } }
/// <summary> /// Löscht den selektierten Kunden im dgrKunden-Grid aus der Datenbank. /// </summary> private void DeleteKunde() { DataGridViewRow dr = dgrKunden.CurrentRow; if (dr != null) // sicherstellen, dass ein Kunde selektiert wurde. { DialogResult result = MessageBox.Show("Möchten Sie diesen Kunden wirklich löschen?", "Kunden löschen", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result == DialogResult.Yes) { using (var dbContext = new DataBaseDataContext()) { var kunde = dbContext.Kunde.Where(cust => cust.KundeID.Equals(dr.Cells["KundeID"].Value)).FirstOrDefault(); dbContext.Kunde.DeleteOnSubmit(kunde); try { dbContext.SubmitChanges(); } catch (SqlException ex) { if (ex.Number == 547) // Verletzung der Foreign-Key REFERENCE-Einschränkung { if (ex.Message.Contains("FK_Auftrag_Kunde")) { MessageBox.Show("Dieser Kunde kann nicht gelöscht werden, da ihm noch Aufträge zugeordnet sind.", "Kunde löschen.", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else if (ex.Message.Contains("FK_Angebot_Kunde")) { MessageBox.Show("Dieser Kunde kann nicht gelöscht werden, da ihm noch Angebote zugeordnet sind.", "Kunde löschen", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } } } Func.FUebersicht.tsItemAkualisieren.PerformClick(); // aktualisieren des dgrKunden-Grids. } } }
/// <summary> /// Diese Methode erstellt einen Auftrag über alle Angebotspositionen, zu denen noch kein Auftrag exisitiert. /// </summary> private Auftrag CreateOrderForOfferPositionsWithoutOrderID() { Auftrag auftrag; using (var dbContext = new DataBaseDataContext()) { var angebot = dbContext.Angebot.Where(ang => ang.AngebotID.Equals(int.Parse(tbxAngNummer.Text))).FirstOrDefault(); auftrag = new Auftrag { Datum = DateTime.Today, Typ = angebot.Typ, BV = angebot.BV, BV2 = angebot.BV2, Zahlungsbedingung = angebot.Zahlungsbedingung, Betreff = angebot.Betreff, Nachlass = angebot.Nachlass, NachlassArt = angebot.NachlassArt, Steuer = angebot.Steuer, Aufmaß = angebot.Aufmaß, Anfahrt = angebot.Anfahrt, Sondertext = angebot.Sondertext, SondertextUnten = angebot.SondertextUnten, KundeID = angebot.KundeID, //Gesamtbetrag = angebot.Gesamtbetrag, Empfänger = angebot.Empfänger, VorgabedatumRechnung = dateAngVorgabeRech.Value.Date != DateTime.Today.Date ? dateAngVorgabeRech.Value.Date : (DateTime?)null }; try { dbContext.Auftrag.InsertOnSubmit(auftrag); dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } decimal sum = 0.0m; foreach (DataGridViewRow row in dgrPositionen.Rows) { // Es werden nur AngebotsPositionen berücksichtigt, die noch keinem Auftrag zugeordnet wurden. if (row.Cells["AuftragID"].Value == null) { var angebotPosition = dbContext.Angebot_Position.Where(ap => ap.PosID.Equals(row.Cells["PosID"].Value)).FirstOrDefault(); var auftragPosition = new Auftrag_Position { AuftragID = auftrag.AuftragID, Artikel = angebotPosition.Artikel, Sondertext = angebotPosition.Sondertext, Typ = angebotPosition.Typ, AnlagenStk = angebotPosition.AnlagenStk, Breite = angebotPosition.Breite, Tiefe = angebotPosition.Tiefe, Türen = angebotPosition.Türen, TW = angebotPosition.TW, ZuschlagTür = angebotPosition.ZuschlagTür, Einzelpreis = angebotPosition.Einzelpreis, Zuschlag = angebotPosition.Zuschlag, ZuschlagArt = angebotPosition.ZuschlagArt, Alupulver = angebotPosition.Alupulver, Montage = angebotPosition.Montage, AussparungStk = angebotPosition.AussparungStk, AussparungTxt = angebotPosition.AussparungTxt, Alternativ1Typ = angebotPosition.Alternativ1Typ, Alternativ1Preis = angebotPosition.Alternativ1Preis, Alternativ2Typ = angebotPosition.Alternativ2Typ, Alternativ2Preis = angebotPosition.Alternativ2Preis, SondertextOben = angebotPosition.SondertextOben, Oberlicht = angebotPosition.Oberlicht, SonderartikelEinheit = angebotPosition.SonderartikelEinheit }; // Increment Gesamtsumme. sum += auftragPosition.Einzelpreis * auftragPosition.AnlagenStk; sum += auftragPosition.Alupulver * auftragPosition.AnlagenStk; try { // Auftragsposition in DB speichern dbContext.Auftrag_Position.InsertOnSubmit(auftragPosition); dbContext.SubmitChanges(); // Auftragsposition auf Auftrag referenzieren. angebotPosition.AuftragID = auftrag.AuftragID; //dbContext.SubmitChanges(); dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } } try { // Von der Gesamtsumme der Positionen den Nachlass abziehen. if (Func.IsNumeric(tbxNachlass.Text, true) & tbxNachlass.Text != "" & cobNachlass.SelectedIndex == 0) // Prozent { sum = sum - (sum * decimal.Parse(tbxNachlass.Text) / 100); } else if (Func.IsNumeric(tbxNachlass.Text, true) & tbxNachlass.Text != "") { sum = sum - decimal.Parse(tbxNachlass.Text); } // Zu der Gesamtsumme der Positionen die MwSt hinzurechnen. //if (cobMwSt.SelectedIndex == 0) //{ // sum = sum * 0.19m + sum; //} sum = sum * (Decimal)cobMwSt.SelectedValue + sum; // Auftrag mit Gesamtbetrag updaten. auftrag.Gesamtbetrag = sum; dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } btnEdit.Enabled = false; itemPosNeu.Enabled = false; itemPosEdit.Enabled = false; itemPosDelete.Enabled = false; // Positionsgrid aktualisieren Func.FAngebot.dgrPositionen.DataSource = Func.LoadAngebotPositionenUebersicht(); //GeneratePosNr(); selectedRows = 0; return auftrag; }
private void button1_Click(object sender, EventArgs e) { //this.Cursor = Cursors.WaitCursor; using (var dbContext = new DataBaseDataContext()) { // Tabelleninhalt löschen dbContext.ExecuteCommand("TRUNCATE TABLE Brief"); dbContext.SubmitChanges(); var brief = new Brief { Betreff = tbxBetreff.Text, Text = tbxText.Text, Bauvorhaben = tbxBauvorhaben.Text, ZuHaenden = tbxHaenden.Text, Anrede = cobAnrede.Text }; dbContext.Brief.InsertOnSubmit(brief); dbContext.SubmitChanges(); } //Close(); //Func.FBrief = null; switch (reportType) { case EReports.Brief: report = ReportManager.GetReportByNameForSelectedRecord(EReports.Brief, kundennr); break; case EReports.AbsageProgramm: report = ReportManager.GetReportByNameForSelectedRecord(EReports.AbsageProgramm, kundennr); break; case EReports.AbsageWirkungskreis: report = ReportManager.GetReportByNameForSelectedRecord(EReports.AbsageWirkungskreis, kundennr); break; } var r = new Form_Report(report); r.Show(); // r.Refresh(); // this.Cursor = Cursors.Default; }
private void btnAendSpeichern_Click(object sender, EventArgs e) { if (rdbAussparung.Checked) { tbxEinzelVK.Text = tbxAussparungenPreis.Text; } using (var dbContext = new DataBaseDataContext()) { if (isAuftrag) { try { var ap = dbContext.Auftrag_Position.Where(auftragPosition => auftragPosition.PosID.Equals(positionsNr)).FirstOrDefault(); FillAuftragPositionWithValues(ref ap, cbxAlternativ1.Checked, cbxAlternativ2.Checked); dbContext.SubmitChanges(); Func.FAuftrag.dgrPositionen.Columns.Clear(); Func.FAuftrag.dgrPositionen.Columns.Add(new DataGridViewCheckBoxColumn() { HeaderText = Const.CheckColumHeaderName, Name = Const.CheckColumHeaderName, ThreeState = false }); Func.FAuftrag.dgrPositionen.Columns.Add(new DataGridViewColumn { CellTemplate = new DataGridViewTextBoxCell(), HeaderText = Const.PosNrHeaderName, Name = Const.PosNrHeaderName, Visible = true }); Func.FAuftrag.dgrPositionen.DataSource = Func.LoadAuftragPositionenUebersicht(); Func.FAuftrag.ColorizeZuschlagColumn(); Func.FAuftrag.ColorizeTypColumn(); Func.FAuftrag.GeneratePosNr(); Func.FAuftrag.DisableSortmode(); Func.LoadAuftragSumme(); Func.FAuftrag.dgrPositionen.Columns["PosID"].Visible = false; Func.FAuftrag.dgrPositionen.Columns["AuftragID"].Visible = false; Func.FAuftrag.dgrPositionen.Columns["Auftrag"].Visible = false; Func.FAuftrag.dgrPositionen.Columns["Rechnung"].Visible = false; Func.FAuftrag.dgrPositionen.Columns["RechnungID"].Visible = true; var auftrag = dbContext.Auftrag.Where(a => a.AuftragID.Equals(int.Parse(auftragsNr))).FirstOrDefault(); auftrag.Gesamtbetrag = Decimal.Parse(Func.FAuftrag.lblAufGesamt.Text); dbContext.SubmitChanges(); this.Close(); Func.FAuftragPosition = null; } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } else { try { var ap = dbContext.Angebot_Position.Where(angebotPosition => angebotPosition.PosID.Equals(positionsNr)).FirstOrDefault(); FillAngebotPositionWithValues(ref ap, cbxAlternativ1.Checked, cbxAlternativ2.Checked); dbContext.SubmitChanges(); Func.FAngebot.dgrPositionen.Columns.Add(new DataGridViewCheckBoxColumn() { HeaderText = "Markieren", Name = "Markieren" }); Func.FAngebot.dgrPositionen.Columns.Add(new DataGridViewColumn { CellTemplate = new DataGridViewTextBoxCell(), HeaderText = Const.PosNrHeaderName, Name = Const.PosNrHeaderName, Visible = true }); Func.FAngebot.dgrPositionen.DataSource = Func.LoadAngebotPositionenUebersicht(); //Func.FAngebot.ColorizeZuschlagColumn(); //Func.FAngebot.ColorizeTypColumn(); //Func.FAngebot.GeneratePosNr(); Func.FAngebot.DisableSortmode(); Func.LoadAngebotSumme(); Func.FAngebot.dgrPositionen.Columns["PosID"].Visible = false; Func.FAngebot.dgrPositionen.Columns["AngebotID"].Visible = false; Func.FAngebot.dgrPositionen.Columns["Angebot"].Visible = false; Func.FAngebot.dgrPositionen.Columns["Auftrag"].Visible = false; var angebot = dbContext.Angebot.Where(a => a.AngebotID.Equals(int.Parse(angebotsNr))).FirstOrDefault(); angebot.Gesamtbetrag = Decimal.Parse(Func.FAngebot.lblGesamt.Text); dbContext.SubmitChanges(); this.Close(); Func.FAngebotPosition = null; } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } } }
private void AngebotPosAnlegen() { if (rdbAussparung.Checked) { tbxEinzelVK.Text = tbxAussparungenPreis.Text; } using (DataBaseDataContext dbContext = new DataBaseDataContext()) { var ap = new Angebot_Position(); FillAngebotPositionWithValues(ref ap, cbxAlternativ1.Checked, cbxAlternativ2.Checked); dbContext.Angebot_Position.InsertOnSubmit(ap); try { dbContext.SubmitChanges(); Func.FAngebot.dgrPositionen.Columns.Clear(); Func.FAngebot.dgrPositionen.Columns.Add(new DataGridViewCheckBoxColumn() { HeaderText = "Markieren", Name = "Markieren" }); Func.FAngebot.dgrPositionen.Columns.Add(new DataGridViewColumn { CellTemplate = new DataGridViewTextBoxCell(), HeaderText = Const.PosNrHeaderName, Name = Const.PosNrHeaderName, Visible = true }); Func.FAngebot.dgrPositionen.DataSource = Func.LoadAngebotPositionenUebersicht(); //Func.FAngebot.ColorizeZuschlagColumn(); //Func.FAngebot.ColorizeTypColumn(); //Func.FAngebot.GeneratePosNr(); Func.FAngebot.DisableSortmode(); Func.FAngebot.dgrPositionen.Columns["PosID"].Visible = false; Func.FAngebot.dgrPositionen.Columns["AngebotID"].Visible = false; Func.FAngebot.dgrPositionen.Columns["Angebot"].Visible = false; Func.FAngebot.dgrPositionen.Columns["Auftrag"].Visible = false; k = null; k = new Kalkulation(); Func.FAngebotPosition.ClearEingabefelder(); Func.LoadAngebotSumme(); var angebot = dbContext.Angebot.Where(a => a.AngebotID.Equals(int.Parse(angebotsNr))).FirstOrDefault(); angebot.Gesamtbetrag = Decimal.Parse(Func.FAngebot.lblGesamt.Text); dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } btnPosAnlegen.Enabled = false; }
private void UpdateKunde() { if (tbxNameFirma.Text == "" || tbxStrasse.Text == "" || tbxPLZL.Text == "" || tbxLand.Text == "" || tbxOrt.Text == "") { MessageBox.Show("Sie müssen alle erforderlichen (*) Felder füllen.", "Nicht alle Felder gefüllt!", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { using (DataBaseDataContext dbContext = new DataBaseDataContext()) { try { var k = dbContext.Kunde.Where(customer => customer.KundeID.Equals(int.Parse(tbxKundennummer.Text))).FirstOrDefault(); k.Anrede = cbxAnrede.Text == "" ? null : cbxAnrede.Text; k.Name_Firma = tbxNameFirma.Text == "" ? null : tbxNameFirma.Text; k.Straße = tbxStrasse.Text == "" ? null : tbxStrasse.Text; k.PLZ = tbxPLZL.Text == "" ? null : tbxPLZL.Text; k.Land = tbxLand.Text == "" ? null : tbxLand.Text; k.Ort = tbxOrt.Text == "" ? null : tbxOrt.Text; k.Vorname = tbxVorname.Text == "" ? null : tbxVorname.Text; k.AdressZusatz1 = tbxZusatz1.Text == "" ? null : tbxZusatz1.Text; k.AdressZusatz2 = tbxZusatz2.Text == "" ? null : tbxZusatz2.Text; k.Telefon1 = null;//tbxTelefon1.Text == "" ? null : tbxTelefon1.Text; k.Telefon2 = tbxTelefon2.Text == "" ? null : tbxTelefon2.Text; k.Fax1 = null;//tbxFax1.Text == "" ? null : tbxFax1.Text; k.Fax2 = tbxFax2.Text == "" ? null : tbxFax2.Text; k.Mobil = tbxMobil.Text == "" ? null : tbxMobil.Text; k.Email1 = null;//tbxEmail1.Text == "" ? null : tbxEmail1.Text; k.Email2 = tbxEmail2.Text == "" ? null : tbxEmail2.Text; k.Homepage = tbxHomepage.Text == "" ? null : tbxHomepage.Text; k.Matchcode = tbxMatchcode.Text == "" ? null : tbxMatchcode.Text; k.Notiz = tbxNotiz.Text == "" ? null : tbxNotiz.Text; k.Kategorie = cmbKunde.Checked ? "Kunde" : (cmbPrivat.Checked) ? "Privat" : (cmbVerein.Checked) ? "Verein" : null; k.Status = cbxSperren.Checked ? "gesperrt" : null; dbContext.SubmitChanges(); //Func.FUebersicht.dgrKunden.DataSource = dbContext.Kunde.Where(customer => customer.Kategorie == k.Kategorie && customer.Status == null); Func.FUebersicht.tsItemAkualisieren.PerformClick(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } //this.clearEingabefelderKunde(); //this.Close(); } }
// ************************** // Events // ************************** private void btnKundeAnl_Click(object sender, EventArgs e) { int lastKundeId = 0; if (validateEingabe()) { using (DataBaseDataContext dbContext = new DataBaseDataContext()) { try { Kunde k = new Kunde { Anrede = cbxAnrede.Text == "" ? null : cbxAnrede.Text, Name_Firma = tbxNameFirma.Text == "" ? null : tbxNameFirma.Text, Straße = tbxStrasse.Text == "" ? null : tbxStrasse.Text, PLZ = tbxPLZL.Text == "" ? null : tbxPLZL.Text, Land = tbxLand.Text == "" ? null : tbxLand.Text, Ort = tbxOrt.Text == "" ? null : tbxOrt.Text, Vorname = tbxVorname.Text == "" ? null : tbxVorname.Text, AdressZusatz1 = tbxZusatz1.Text == "" ? null : tbxZusatz1.Text, AdressZusatz2 = tbxZusatz2.Text == "" ? null : tbxZusatz2.Text, Telefon1 = null,//tbxTelefon1.Text =="" ? null : tbxTelefon1.Text, Telefon2 = tbxTelefon2.Text == "" ? null : tbxTelefon2.Text, Fax1 = null,//tbxFax1.Text == "" ? null : tbxFax1.Text, Fax2 = tbxFax2.Text == "" ? null : tbxFax2.Text, Mobil = tbxMobil.Text == "" ? null : tbxMobil.Text, Email1 = null,//tbxEmail1.Text == "" ? null : tbxEmail1.Text, Email2 = tbxEmail2.Text == "" ? null : tbxEmail2.Text, Homepage = tbxHomepage.Text == "" ? null : tbxHomepage.Text, Matchcode = tbxMatchcode.Text == "" ? null : tbxMatchcode.Text, Notiz = tbxNotiz.Text == "" ? null : tbxNotiz.Text, Kategorie = cmbKunde.Checked ? "Kunde" : (cmbPrivat.Checked) ? "Privat" : (cmbVerein.Checked) ? "Verein" : null, Status = cbxSperren.Checked ? "gesperrt" : null }; if (checkKundeDublette(k) == 1) { dbContext.Kunde.InsertOnSubmit(k); dbContext.SubmitChanges(); lastKundeId = k.KundeID; if (cbxOutlookKontakt.Checked) { Func.AddOutlookContact(k); } this.clearEingabefelderKunde(); IsDefault = true; try { using (var sqlconnection = new SqlConnection(Properties.Settings.Default.NorkaConnectionString)) { var command = new SqlCommand(string.Format("SELECT KundeID, Anrede, Vorname, Name_Firma, Straße, AdressZusatz1, AdressZusatz2, PLZ, Ort, Land, Telefon2, Fax2, Mobil, Email2, Homepage, Matchcode, Kategorie, Status, Notiz FROM Kunde WHERE KundeID = {0}", lastKundeId), sqlconnection); var adapter = new SqlDataAdapter(command); var table = new DataTable(); Func.FUebersicht.slKunde.Text = string.Format("{0} Datensätze gefunden.", adapter.Fill(table)); Func.FUebersicht.dgrKunden.Columns.Clear(); Func.FUebersicht.dgrKunden.Columns.Add(new DataGridViewCheckBoxColumn() { HeaderText = "Markieren" }); Func.FUebersicht.dgrKunden.DataSource = table; } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } //Func.FUebersicht.tsItemAkualisieren.PerformClick(); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } } }
/// <summary> /// Lädt sämtliche Firmendaten aus der DB in die entsprechenden Textboxsen des Optionen-Moduls. /// </summary> private void LoadFirmendaten() { try { using (var dbContext = new DataBaseDataContext()) { if (firmendatenDB != null) { firmendatenDB = null; firmendatenDB = dbContext.Firmendatens.Where(fd => fd.ID.Equals(1)).FirstOrDefault(); } else { firmendatenDB = dbContext.Firmendatens.Where(fd => fd.ID.Equals(1)).FirstOrDefault(); } tbxFirmenname.Text = firmendatenDB.Name; tbxInhaber.Text = firmendatenDB.Inhaber; tbxStraße.Text = firmendatenDB.Straße; tbxPLZ.Text = firmendatenDB.PLZ; tbxOrt.Text = firmendatenDB.Ort; tbxTelefon.Text = firmendatenDB.Telefon; tbxFax.Text = firmendatenDB.Fax; tbxEmail.Text = firmendatenDB.Email; tbxHompage.Text = firmendatenDB.Homepage; tbxSteuernummer.Text = firmendatenDB.Steuernummer; tbxUST.Text = firmendatenDB.Ust_Nummer; tbxBank1.Text = firmendatenDB.Bank1; tbxBLZ1.Text = firmendatenDB.BLZ1; tbxKnt1.Text = firmendatenDB.Konto1; tbxIban1.Text = firmendatenDB.IBAN1; tbxBic1.Text = firmendatenDB.BIC1; tbxBank2.Text = firmendatenDB.Bank2; tbxBLZ2.Text = firmendatenDB.BLZ2; tbxIban2.Text = firmendatenDB.IBAN2; tbxBic2.Text = firmendatenDB.BIC2; tbxKnt2.Text = firmendatenDB.Konto2; tbxSteuertext.Text = firmendatenDB.Steuertext; cbxBank1Aktiv.Checked = firmendatenDB.Bank1Aktiv == 1 ? true : false; cbxBank2Aktiv.Checked = firmendatenDB.Bank2Aktiv == 1 ? true : false; dbContext.SubmitChanges(); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
/// <summary> /// Diese Methode erstellt für das angezeigte Angebot implizit einen Auftrag und danach eine Rechnung und öffnet den Sofortdruck-Dialog /// </summary> /// <param name="schlussrechnung">Gibt an ob es sich um eine Schlussrechnung handelt (true) oder nicht (false)</param> private void CreateInvoiceForOrderPositions(bool schlussrechnung) { // Auftrag erstellen Auftrag auftrag = CreateOrderForOfferPositionsWithoutOrderID(); using (DataBaseDataContext dbContext = new DataBaseDataContext()) { // Auftragspositionen zum Auftrag ermitteln. var auftrag_positionen = dbContext.Auftrag_Position.Where(ap => ap.AuftragID.Equals(auftrag.AuftragID)); var rechnung = new DB.Rechnung { Datum = dateAngVorgabeRech.Value.Date != DateTime.Today.Date ? dateAngVorgabeRech.Value.Date : DateTime.Today.Date, Steuer = auftrag.Steuer, KundeID = auftrag.KundeID, Typ = auftrag.Typ, BV = auftrag.BV, BV2 = auftrag.BV2, Zahlungsbedingung = auftrag.Zahlungsbedingung, Betreff = auftrag.Betreff, Nachlass = auftrag.Nachlass, NachlassArt = auftrag.NachlassArt, Aufmaß = auftrag.Aufmaß, Anfahrt = auftrag.Anfahrt, Sondertext = auftrag.Sondertext, Schlussrechnung = schlussrechnung ? "ja" : null }; try { dbContext.Rechnung.InsertOnSubmit(rechnung); dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } decimal sum = 0.0m; foreach (Auftrag_Position pos in auftrag_positionen) { var rechnungPosition = new Rechnung_Position() { RechnungID = rechnung.RechnungID, Artikel = pos.Artikel, Sondertext = pos.Sondertext, Typ = pos.Typ, AnlagenStk = pos.AnlagenStk, Breite = pos.Breite, Tiefe = pos.Tiefe, Türen = pos.Türen, TW = pos.TW, ZuschlagTür = pos.ZuschlagTür, Einzelpreis = pos.Einzelpreis, Zuschlag = pos.Zuschlag, ZuschlagArt = pos.ZuschlagArt, Alupulver = pos.Alupulver, Montage = pos.Montage, AussparungStk = pos.AussparungStk, AussparungTxt = pos.AussparungTxt, Alternativ1Typ = pos.Alternativ1Typ, Alternativ1Preis = pos.Alternativ1Preis, Alternativ2Typ = pos.Alternativ2Typ, Alternativ2Preis = pos.Alternativ2Preis, SondertextOben = pos.SondertextOben, SonderartikelEinheit = pos.SonderartikelEinheit }; // Increment Gesamtsumme. sum += rechnungPosition.Einzelpreis * rechnungPosition.AnlagenStk; sum += rechnungPosition.Alupulver * rechnungPosition.AnlagenStk; try { dbContext.Rechnung_Position.InsertOnSubmit(rechnungPosition); dbContext.SubmitChanges(); pos.RechnungID = rechnung.RechnungID; dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } try { // Von der Gesamtsumme der Positionen den Nachlass abziehen. if (Func.IsNumeric(tbxNachlass.Text, true) & tbxNachlass.Text != "" & cobNachlass.SelectedIndex == 0) // Prozent { sum = sum - (sum * decimal.Parse(tbxNachlass.Text) / 100); } else if (Func.IsNumeric(tbxNachlass.Text, true) & tbxNachlass.Text != "") { sum = sum - decimal.Parse(tbxNachlass.Text); } // Zu der Gesamtsumme der Positionen die MwSt hinzurechnen. //if (cobMwSt.SelectedIndex == 0) //{ // sum = sum * 0.19m + sum; //} sum = sum * (Decimal)cobMwSt.SelectedValue + sum; // Rechnung mit Gesamtbetrag updaten. rechnung.Gesamtbetrag = sum; dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } this.Cursor = Cursors.WaitCursor; PrintManager.PrintDirectlyWithDialog(EReports.Rechnung, new List<int>() { 1, rechnung.RechnungID }); this.Cursor = Cursors.Default; } }
/// <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()); } }
private void itemMarkPos_Click(object sender, EventArgs e) { this.Cursor = Cursors.WaitCursor; using (var dbContext = new DataBaseDataContext()) { // Aktuelles Angebotsobjekt aus DB ermitteln. var angebot = dbContext.Angebot.Where(ang => ang.AngebotID.Equals(int.Parse(tbxAngNummer.Text))).FirstOrDefault(); // Auftragsobjekt anlegen und mit Daten des Angebots füllen. (Außer Gesamtbetrag) var auftrag = new DB.Auftrag { Datum = DateTime.Today, Typ = angebot.Typ, BV = angebot.BV, BV2 = angebot.BV2, Zahlungsbedingung = angebot.Zahlungsbedingung, Betreff = angebot.Betreff, Nachlass = angebot.Nachlass, NachlassArt = angebot.NachlassArt, Steuer = angebot.Steuer, Aufmaß = angebot.Aufmaß, Anfahrt = angebot.Anfahrt, Sondertext = angebot.Sondertext, SondertextUnten = angebot.SondertextUnten, KundeID = angebot.KundeID, Empfänger = angebot.Empfänger, VorgabedatumRechnung = dateAngVorgabeRech.Value.Date != DateTime.Today.Date ? dateAngVorgabeRech.Value.Date : (DateTime?)null }; try { // Auftrag in DB speichern. dbContext.Auftrag.InsertOnSubmit(auftrag); dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } decimal sum = 0.0m; foreach (DataGridViewRow row in dgrPositionen.Rows) { // Nur alle gecheckten Positionen berücksichtigen. var cell = row.Cells[Const.CheckColumHeaderName] as DataGridViewCheckBoxCell; if (cell.Value != null) { // Aktuelle, gecheckte Angebotsposition im FOREACH-Durchlauf aus DB auslesen. var angebotPosition = dbContext.Angebot_Position.Where(ap => ap.PosID.Equals(row.Cells["PosID"].Value)).FirstOrDefault(); // Neue Auftragsposition anlegen und mit Daten aus Angebotsposition füllen. var auftragPosition = new Auftrag_Position { AuftragID = auftrag.AuftragID, Artikel = angebotPosition.Artikel, Sondertext = angebotPosition.Sondertext, Typ = angebotPosition.Typ, AnlagenStk = angebotPosition.AnlagenStk, Breite = angebotPosition.Breite, Tiefe = angebotPosition.Tiefe, Türen = angebotPosition.Türen, TW = angebotPosition.TW, ZuschlagTür = angebotPosition.ZuschlagTür, Einzelpreis = angebotPosition.Einzelpreis, Zuschlag = angebotPosition.Zuschlag, ZuschlagArt = angebotPosition.ZuschlagArt, Alupulver = angebotPosition.Alupulver, Montage = angebotPosition.Montage, AussparungStk = angebotPosition.AussparungStk, AussparungTxt = angebotPosition.AussparungTxt, Alternativ1Typ = angebotPosition.Alternativ1Typ, Alternativ1Preis = angebotPosition.Alternativ1Preis, Alternativ2Typ = angebotPosition.Alternativ2Typ, Alternativ2Preis = angebotPosition.Alternativ2Preis, SondertextOben = angebotPosition.SondertextOben, Oberlicht = angebotPosition.Oberlicht, SonderartikelEinheit = angebotPosition.SonderartikelEinheit }; // Increment Gesamtsumme. sum += auftragPosition.Einzelpreis * auftragPosition.AnlagenStk; sum += auftragPosition.Alupulver * auftragPosition.AnlagenStk; try { // Auftragsposition in DB speichern. dbContext.Auftrag_Position.InsertOnSubmit(auftragPosition); // Angebotsposition auf Auftrag referenzieren. angebotPosition.AuftragID = auftrag.AuftragID; //dbContext.SubmitChanges(); dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } } try { // Von der Gesamtsumme der Positionen den Nachlass abziehen. if (Func.IsNumeric(tbxNachlass.Text, true) & tbxNachlass.Text != "" & cobNachlass.SelectedIndex == 0) // Prozent { sum = sum - (sum * decimal.Parse(tbxNachlass.Text) / 100); } else if (Func.IsNumeric(tbxNachlass.Text, true) & tbxNachlass.Text != "") { sum = sum - decimal.Parse(tbxNachlass.Text); } // Zu der Gesamtsumme der Positionen die MwSt hinzurechnen. //if (cobMwSt.SelectedIndex == 0) //{ // sum = sum * 0.19m + sum; //} sum = sum * (Decimal)cobMwSt.SelectedValue + sum; // Auftrag mit Gesamtbetrag updaten. auftrag.Gesamtbetrag = sum; dbContext.SubmitChanges(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } // Refresh Angebotspositionen Func.FAngebot.dgrPositionen.DataSource = Func.LoadAngebotPositionenUebersicht(); //GeneratePosNr(); btnEdit.Enabled = false; // itemPosNeu.Enabled = false; itemPosEdit.Enabled = false; itemPosDelete.Enabled = false; selectedRows = 0; this.Cursor = Cursors.Default; }
private void SaveRowsInDatabase() { using (var dbContext = new DataBaseDataContext()) { try { for (int i = 0; i <= dgrLager.Rows.Count - 2; i++) { DB.Lager lager = new DB.Lager(); lager.Bezeichnung = dgrLager.Rows[i].Cells["Bezeichnung"].Value != null ? dgrLager.Rows[i].Cells["Bezeichnung"].Value.ToString() : ""; lager.Einheit = dgrLager.Rows[i].Cells["Einheit"].Value != null ? Convert.ToInt32(dgrLager.Rows[i].Cells["Einheit"].Value) : (int?)null; lager.Faktor = Convert.ToInt32(dgrLager.Rows[i].Cells["Faktor"].Value) != 0 ? Convert.ToInt32(dgrLager.Rows[i].Cells["Faktor"].Value) : 1; lager.Kategorie = dgrLager.Rows[i].Cells["Kategorie"].Value != null ? Convert.ToInt32(dgrLager.Rows[i].Cells["Kategorie"].Value) : (int?)null; lager.Stk = dgrLager.Rows[i].Cells["Anzahl"].Value != null ? Convert.ToDouble(dgrLager.Rows[i].Cells["Anzahl"].Value) : 0.0; lager.EK = dgrLager.Rows[i].Cells["EK"].Value != null ? Convert.ToDouble(dgrLager.Rows[i].Cells["EK"].Value) : 0.0; dbContext.Lager.InsertOnSubmit(lager); } dbContext.ExecuteCommand("TRUNCATE TABLE Lager"); dbContext.SubmitChanges(); //MessageBox.Show("DB-Update erfolgt."); } catch (Exception ex) { MessageBox.Show(ex.Message, "Hinweis", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } // Summengrid aktualisieren this.SummenTableAdapter.Fill(this.dsSummen1.Summen); }
private void btnPrint_Click(object sender, EventArgs e) { this.Cursor = Cursors.WaitCursor; using (var dbContext = new DataBaseDataContext()) { // Tabellinhalt löschen dbContext.ExecuteCommand("TRUNCATE TABLE Zeichnungsdruck"); dbContext.SubmitChanges(); Zeichnungsdruck printPosition = null; for (int i = 0; i < lbxPositionen.Items.Count; i++) { if (lbxPositionen.Items[i].GetType() == typeof(Seitenumbruch)) { printPosition = new Zeichnungsdruck() { Artikel = "Seitenumbruch" }; } else if (lbxPositionen.Items[i].GetType() == typeof(Text)) { printPosition = new Zeichnungsdruck() { Artikel = "Text", TEXT_Beschreibung = ((Text)lbxPositionen.Items[i]).Beschreibung }; } else if (lbxPositionen.Items[i].GetType() == typeof(Vorderwand)) { printPosition = new Zeichnungsdruck() { Artikel = "Vorderwand", VW_Typ = ((Vorderwand)lbxPositionen.Items[i]).Typ, VW_Breite = ((Vorderwand)lbxPositionen.Items[i]).Breite, VW_Hoehe = ((Vorderwand)lbxPositionen.Items[i]).Hoehe, VW_Bodenfreiheit = ((Vorderwand)lbxPositionen.Items[i]).Bodenfreiheit, VW_Tuerbreite = ((Vorderwand)lbxPositionen.Items[i]).Tuerbreite, VW_SchildLinks = ((Vorderwand)lbxPositionen.Items[i]).Schildlinks, VW_SchildRechts = ((Vorderwand)lbxPositionen.Items[i]).Schildrechts, VW_Schildhoehe = ((Vorderwand)lbxPositionen.Items[i]).Schildhoehe, VW_Tuerhoehe = ((Vorderwand)lbxPositionen.Items[i]).Tuerhoehe, VW_PlatteSchildLinks = ((Vorderwand)lbxPositionen.Items[i]).PlatteSchildLinks, VW_PlatteSchildRechts = ((Vorderwand)lbxPositionen.Items[i]).PlatteSchildRechts, VW_Verbindungsstueck = ((Vorderwand)lbxPositionen.Items[i]).Verbindungsstueck, VW_Verstaerkung = ((Vorderwand)lbxPositionen.Items[i]).Verstaerkung, VW_Tuere = ((Vorderwand)lbxPositionen.Items[i]).Tuere }; } else if (lbxPositionen.Items[i].GetType() == typeof(Reihenkabine)) { printPosition = new Zeichnungsdruck() { Artikel = "Reihenkabine", RK_Typ = ((Reihenkabine)lbxPositionen.Items[i]).Typ, RK_Breite = ((Reihenkabine)lbxPositionen.Items[i]).Breite, RK_Hoehe = ((Reihenkabine)lbxPositionen.Items[i]).Hoehe, RK_Bodenfreiheit = ((Reihenkabine)lbxPositionen.Items[i]).Bodenfreiheit, RK_Tuerbreite = ((Reihenkabine)lbxPositionen.Items[i]).Tuerbreite, RK_Tueranzahl = ((Reihenkabine)lbxPositionen.Items[i]).Tueranzahl, RK_Trennwand = ((Reihenkabine)lbxPositionen.Items[i]).Trennwand, RK_PlatteTrennwand = ((Reihenkabine)lbxPositionen.Items[i]).PlatteTrennwand, RK_PlatteMittelschild = ((Reihenkabine)lbxPositionen.Items[i]).PlatteMittelschild, RK_SchildLinks = ((Reihenkabine)lbxPositionen.Items[i]).Schildlinks, RK_SchildRechts = ((Reihenkabine)lbxPositionen.Items[i]).Schildrechts, RK_Schildhoehe = ((Reihenkabine)lbxPositionen.Items[i]).Schildhoehe, RK_Tuerhoehe = ((Reihenkabine)lbxPositionen.Items[i]).Tuerhoehe, RK_PlatteSchildLinks = ((Reihenkabine)lbxPositionen.Items[i]).PlatteSchildLinks, RK_PlatteSchildRechts = ((Reihenkabine)lbxPositionen.Items[i]).PlatteSchildRechts, RK_Mittelschild = ((Reihenkabine)lbxPositionen.Items[i]).Mittelschild, RK_Tuere = ((Reihenkabine)lbxPositionen.Items[i]).Tuere, RK_Aussen = ((Reihenkabine)lbxPositionen.Items[i]).Aussen, RK_Alu = ((Reihenkabine)lbxPositionen.Items[i]).Alu, RK_Verbindungsstueck = ((Reihenkabine)lbxPositionen.Items[i]).Verbindungsstueck }; } else if (lbxPositionen.Items[i].GetType() == typeof(Eckkabine)) { printPosition = new Zeichnungsdruck() { Artikel = ((Eckkabine)lbxPositionen.Items[i]).Artikel, EK_Typ = ((Eckkabine)lbxPositionen.Items[i]).Typ, EK_Breite = ((Eckkabine)lbxPositionen.Items[i]).Breite, EK_Hohe = ((Eckkabine)lbxPositionen.Items[i]).Hoehe, EK_Bodenfreiheit = ((Eckkabine)lbxPositionen.Items[i]).Bodenfreiheit, EK_Tuerbreite = ((Eckkabine)lbxPositionen.Items[i]).Tuerbreite, EK_Tueranzahl = ((Eckkabine)lbxPositionen.Items[i]).Tueranzahl, EK_Trennwand = ((Eckkabine)lbxPositionen.Items[i]).Trennwand, EK_Wandschild = ((Eckkabine)lbxPositionen.Items[i]).Schildwand, EK_Eckschild = ((Eckkabine)lbxPositionen.Items[i]).Schildeck, EK_SchildHoehe = ((Eckkabine)lbxPositionen.Items[i]).Schildhoehe, EK_Tuerhoehe = ((Eckkabine)lbxPositionen.Items[i]).Tuerhoehe, EK_Mittelschild = ((Eckkabine)lbxPositionen.Items[i]).Mittelschild, EK_Tuer = ((Eckkabine)lbxPositionen.Items[i]).Tuere, EK_Plattetrennwand = ((Eckkabine)lbxPositionen.Items[i]).PlatteTrennwand, EK_Plattewandschild = ((Eckkabine)lbxPositionen.Items[i]).PlatteSchildWand, EK_Platteeckschild = ((Eckkabine)lbxPositionen.Items[i]).PlatteSchildEck, EK_PlatteMittelschild = ((Eckkabine)lbxPositionen.Items[i]).PlatteMittelschild, EK_Aussen = ((Eckkabine)lbxPositionen.Items[i]).Aussen, EK_Alu = ((Eckkabine)lbxPositionen.Items[i]).Alu, EK_Alueck = ((Eckkabine)lbxPositionen.Items[i]).AluEckTW, EK_Verbindungsstueck = ((Eckkabine)lbxPositionen.Items[i]).Verbindungsstueck }; } else if (lbxPositionen.Items[i].GetType() == typeof(Sonderkabine)) { printPosition = new Zeichnungsdruck() { Artikel = "Sonderkabine", SK_Typ = ((Sonderkabine)lbxPositionen.Items[i]).Typ, SK_Breite = ((Sonderkabine)lbxPositionen.Items[i]).Breite, SK_Hoehe = ((Sonderkabine)lbxPositionen.Items[i]).Hoehe, SK_Bodenfreiheit = ((Sonderkabine)lbxPositionen.Items[i]).Bodenfreiheit, SK_Tuerbreite = ((Sonderkabine)lbxPositionen.Items[i]).Tuerbreite, SK_Tueranzahl = ((Sonderkabine)lbxPositionen.Items[i]).Tueranzahl, SK_Trennwand = ((Sonderkabine)lbxPositionen.Items[i]).Trennwand, SK_Wandschild = ((Sonderkabine)lbxPositionen.Items[i]).Schildwand, SK_Eckschild = ((Sonderkabine)lbxPositionen.Items[i]).Schildeck, SK_Schildhoehe = ((Sonderkabine)lbxPositionen.Items[i]).Schildhoehe, SK_Tuerhoehe = ((Sonderkabine)lbxPositionen.Items[i]).Tuerhoehe, SK_MittelschildLinks = ((Sonderkabine)lbxPositionen.Items[i]).MittelschildL, SK_MittelschildRechts = ((Sonderkabine)lbxPositionen.Items[i]).MittelschildR, SK_Tuer = ((Sonderkabine)lbxPositionen.Items[i]).Tuere, SK_PlatteTrennwand = ((Sonderkabine)lbxPositionen.Items[i]).PlatteTrennwand, SK_PlatteWandschild = ((Sonderkabine)lbxPositionen.Items[i]).PlatteSchildWand, SK_PlatteEckschild = ((Sonderkabine)lbxPositionen.Items[i]).PlatteSchildEck, SK_PlatteMittelschildLinks = ((Sonderkabine)lbxPositionen.Items[i]).PlatteMittelschildL, SK_PlatteMittelschildRechts = ((Sonderkabine)lbxPositionen.Items[i]).PlatteMittelschildR, SK_Aussen = ((Sonderkabine)lbxPositionen.Items[i]).Aussen, SK_Alu = ((Sonderkabine)lbxPositionen.Items[i]).Alu, SK_AluEck = ((Sonderkabine)lbxPositionen.Items[i]).AluEckTW, SK_Verbindungsstueck = ((Sonderkabine)lbxPositionen.Items[i]).Verbindungsstueck }; } else if (lbxPositionen.Items[i].GetType() == typeof(Schamwand)) { printPosition = new Zeichnungsdruck() { Artikel = ((Schamwand)lbxPositionen.Items[i]).Artikel, SW_Bodenfreiheit = ((Schamwand)lbxPositionen.Items[i]).Bodenfreiheit, SW_Breite = ((Schamwand)lbxPositionen.Items[i]).Breite, SW_Hoehe = ((Schamwand)lbxPositionen.Items[i]).Hoehe, SW_PlatteBreite = ((Schamwand)lbxPositionen.Items[i]).PlatteBreite, SW_PlatteHoehe = ((Schamwand)lbxPositionen.Items[i]).PlatteHoehe, SW_Stk = ((Schamwand)lbxPositionen.Items[i]).Stk }; } else if (lbxPositionen.Items[i].GetType() == typeof(Trennwand)) { printPosition = new Zeichnungsdruck() { Artikel = "trennwand", TW_Bodenfreiheit = ((Trennwand)lbxPositionen.Items[i]).Bodenfreiheit, TW_BreiteSchild = ((Trennwand)lbxPositionen.Items[i]).Schildbreite, TW_AluAussp = ((Trennwand)lbxPositionen.Items[i]).AluAussparung, TW_AluETW = ((Trennwand)lbxPositionen.Items[i]).AluETW, TW_AluTrennwand = ((Trennwand)lbxPositionen.Items[i]).AluTrennwand, TW_Stk = ((Trennwand)lbxPositionen.Items[i]).Stk, TW_BreiteAussp = ((Trennwand)lbxPositionen.Items[i]).Aussparungsbreite, TW_Bruestungshoehe = ((Trennwand)lbxPositionen.Items[i]).Brüstungshöhe, TW_Hoehe = ((Trennwand)lbxPositionen.Items[i]).Hoehe, TW_HoeheAussp = ((Trennwand)lbxPositionen.Items[i]).HöheAussparung, TW_PlatteBreiteAussp = ((Trennwand)lbxPositionen.Items[i]).PlatteAussparungBreite, TW_PlatteBreiteSchild = ((Trennwand)lbxPositionen.Items[i]).PlatteSchildBreite, TW_PlatteHoeheAussp = ((Trennwand)lbxPositionen.Items[i]).PlatteAussparungHöhe, TW_PlatteHoeheSchild = ((Trennwand)lbxPositionen.Items[i]).PlatteSchildHoehe }; } else if (lbxPositionen.Items[i].GetType() == typeof(Schild)) { printPosition = new Zeichnungsdruck() { Artikel = ((Schild)lbxPositionen.Items[i]).Artikel == "schildLinks" ? "schildLinks" : "schildRechts", Schild_Bodenfreiheit = ((Schild)lbxPositionen.Items[i]).Bodenfreiheit, Schild_BreiteSchild = ((Schild)lbxPositionen.Items[i]).Schildbreite, Schild_AluAussp = ((Schild)lbxPositionen.Items[i]).AluAussparung, Schild_Stk = ((Schild)lbxPositionen.Items[i]).Stk, Schild_BreiteAussp = ((Schild)lbxPositionen.Items[i]).Aussparungsbreite, Schild_Bruestungshoehe = ((Schild)lbxPositionen.Items[i]).Brüstungshöhe, Schild_Hoehe = ((Schild)lbxPositionen.Items[i]).Hoehe, Schild_HoeheAussp = ((Schild)lbxPositionen.Items[i]).HöheAussparung, Schild_PlatteBreiteAussp = ((Schild)lbxPositionen.Items[i]).PlatteAussparungBreite, Schild_PlatteBreiteSchild = ((Schild)lbxPositionen.Items[i]).PlatteSchildBreite, Schild_PlatteHoeheSchild = ((Schild)lbxPositionen.Items[i]).PlatteSchildHoehe, Schild_PlatteHoeheAussp = ((Schild)lbxPositionen.Items[i]).PlatteAussparungHöhe }; } dbContext.Zeichnungsdruck.InsertOnSubmit(printPosition); } dbContext.SubmitChanges(); } // Report für die Zeichnungen laden. Form_Report_Zeichnen FReportZeichnen = new Form_Report_Zeichnen(ReportManager.GetReportByName(EReports.Zeichnen)); FReportZeichnen.Show(); FReportZeichnen.Refresh(); this.Cursor = Cursors.Default; }