using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Runtime.Remoting.Messaging; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Database; using OnDoc.Klassen; using OnDoc.UIControls.Administrator; using Syncfusion.Windows.Forms.Tools; using Syncfusion.WinForms.Controls; using Syncfusion.WinForms.DataGrid; using Syncfusion.WinForms.DataGrid.Interactivity; namespace OnDoc.UIControls { public partial class Serienbrief : SfForm { private int dokumenttypnr = 0; private int officevorlagenr = 0; private int profilnr = 0; public Serienbrief() { InitializeComponent(); this.Style.TitleBar.BackColor = Theaming.Titelbar(); this.Style.TitleBar.ForeColor = Theaming.TitelFontColor(); } public Serienbrief(int profilnr) { InitializeComponent(); this.Style.TitleBar.BackColor = Theaming.Titelbar(); this.Style.TitleBar.ForeColor = Theaming.TitelFontColor(); this.profilnr = profilnr; } private void Serienbrief_Load(object sender, EventArgs e) { Refresh_Lists(); Refresh_Team(); } private void Refresh_Lists() {DB db = new DB(AppParams.connectionstring); db.Get_Tabledata("Select nreintrag, bezeichnung from Postzustellung where aktiv=1 order by bezeichnung", false, true); cbboxpostzustellung.DataSource = db.dsdaten.Tables[0]; cbboxpostzustellung.ValueMember = "nreintrag"; cbboxpostzustellung.DisplayMember = "bezeichnung"; db.clear_parameter(); db.Get_Tabledata("SP_Dokumentbearbeitung_Mitarbeiter", true, false); cbboxzustaendigmitarbeiter.DataSource = db.dsdaten.Tables[0]; cbboxzustaendigmitarbeiter.DisplayMember = "name"; cbboxzustaendigmitarbeiter.ValueMember = "mitarbeiternr"; cbboxzustaendigmitarbeiter.SelectedValue = AppParams.CurrentMitarbieter; cbboxunterschriftlinks.DataSource = db.dsdaten.Tables[0]; cbboxunterschriftlinks.DisplayMember = "name"; cbboxunterschriftlinks.ValueMember = "mitarbeiternr"; cbboxunterschriftrechts.DataSource = db.dsdaten.Tables[0]; cbboxunterschriftrechts.DisplayMember = "name"; cbboxunterschriftrechts.ValueMember = "mitarbeiternr"; cbboxverantwortlich.DataSource = db.dsdaten.Tables[0]; cbboxverantwortlich.DisplayMember = "name"; cbboxverantwortlich.ValueMember = "mitarbeiternr"; cbboxverantwortlich.SelectedValue = AppParams.CurrentMitarbieter; } private void Refresh_Team() { DB dbteam = new DB(AppParams.connectionstring); dbteam.clear_parameter(); dbteam.add_parameter("@profilnr", profilnr.ToString()); dbteam.add_parameter("@mitarbeiternr", cbboxzustaendigmitarbeiter.SelectedValue.ToString()); dbteam.Get_Tabledata("sp_dokumentbearbeitung_team", true, false); cbboxteam.DataSource = null; cbboxteam.DataSource = dbteam.dsdaten.Tables[0]; cbboxteam.ValueMember = "teamnr"; cbboxteam.DisplayMember = "bezeichnung"; } private void RibbonButtonExit_Click(object sender, EventArgs e) { this.Close(); } private void RibbonButtonExcelImport_Click(object sender, EventArgs e) { DataTable importdata = new DataTable(); openFileDialog1.Filter = "Excel-Dateien files (*.xlsx)|*.xlsx|CSV-Dateien (*.csv)|*.csv|Alle Dateien (*.*)|*.*"; openFileDialog1.FilterIndex = 0; if (openFileDialog1.ShowDialog() == DialogResult.OK) { ExcelNet.ExcelReader reader = new ExcelNet.ExcelReader(); string selected_sheetname = ""; var sheets = new List(); sheets = reader.Get_ExcelSheets(openFileDialog1.FileName); if (sheets.Count > 1) { DocMgmt.Serienbrief_Sheetselect sheetselect = new DocMgmt.Serienbrief_Sheetselect(sheets); sheetselect.ShowDialog(); if (sheetselect.DialogResult == DialogResult.OK) { selected_sheetname = sheetselect.get_selected_sheet(); } else { return; } } else { selected_sheetname = sheets[0]; } reader.Excel_To_Datatabable(openFileDialog1.FileName, selected_sheetname,true, ref importdata); if (importdata.Rows.Count < 1) { MessageBox.Show("Die ausgewählten Daten können nicht verwendet werden.", "Import", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (importdata.Columns[0].Caption.ToUpper() != "PARTNERNR") { MessageBox.Show("Die importierten Daten enthalten keine Spalte 'Partnernr'. Der Vorgang wird abgebrochen.", "Import", MessageBoxButtons.OK, MessageBoxIcon.Error); importdata.Rows.Clear(); importdata.Columns.Clear(); return; } sfDataGridEmpfaenger.DataSource = importdata; } } private void RibbonButtonNew_Click(object sender, EventArgs e) { OnDoc.DocMgmt.DokTypSelect DokTypSelect = new OnDoc.DocMgmt.DokTypSelect(); DokTypSelect.vorlagentype = 1; DokTypSelect.ShowDialog(this); if (DokTypSelect.DialogResult == DialogResult.OK) { dokumenttypnr = DokTypSelect.dokumenttypnr; GrpDokumentInhalt.Enabled=true; update_serienbrief_details(true, dokumenttypnr, 0); } else { this.GrpDokumentInhalt.Enabled = false; return; } } private void update_serienbrief_details(bool newsb = false, int dokumenttypnr = 0, int sbnummer = 0) { DB db = new DB(AppParams.connectionstring); if (newsb) { db.Get_Tabledata("Select bezeichnung,office_vorlagenr from dokumenttyp where dokumenttypnr=" + dokumenttypnr.ToString(),false,true); this.txtbezeichnung.Text = db.dsdaten.Tables[0].Rows[0][0].ToString(); officevorlagenr = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0][1]); } } } }