using BroadcastListener.Classes; using Database; using OnDoc.DocMgmt; using OnDoc.Klassen; using Syncfusion.Windows.Forms.Tools; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using BroadcastListener.Interfaces; using static BroadcastListener.Classes.Factory; using BroadcastListener.Classes; using Syncfusion.WinForms.Controls; namespace OnDoc.UIControls.Administrator { public partial class AdminDokTypGenerierung : SfForm { DB db = new DB(AppParams.connectionstring); private int dokumenttypnr = 0; System.Data.DataTable treedata = new System.Data.DataTable(); public AdminDokTypGenerierung() { InitializeComponent(); this.Style.TitleBar.BackColor = Theaming.Titelbar(); this.Style.TitleBar.ForeColor = Theaming.TitelFontColor(); this.Style.ShadowOpacity = Theaming.ShadowOpacity; this.Style.InactiveShadowOpacity = Theaming.InactivShadowOpacity; } private void AdminDokTypGenerierung_Load(object sender, EventArgs e) { DB db = new DB(AppParams.connectionstring); db.Get_Tabledata("select distinct fachverantwortung from dbo.view_dokumenttypen_relaunch order by fachverantwortung asc", false, true); foreach (System.Data.DataRow dr in db.dsdaten.Tables[0].Rows) { cbboxfachverantwortung.Items.Add(dr[0].ToString()); } update_tree(); return; } private void update_tree() { int count = txtFilter.Text.Trim().Count(f => f == ' '); if (count > 0) { treedata.Rows.Clear(); } TreeDokumenttyp.Nodes.Clear(); string sql = " Select dokumenttypnr as ID, Bezeichnung from view_dokumenttypen_relaunch "; string where = ""; //sql = "Select dokumenttypnr as ID, Bezeichnung, Aktiv from dokumenttyp"; if (txtFilter.Text.Trim().Length > 0) { if (where.Length > 0) { where = where + " and "; } else { where = "where "; } where = where + " bezeichnung like '%" + txtFilter.Text.Replace(" ", "%") + "%'"; } if (cbboxfachverantwortung.Text != "") { if (where.Length > 0) { where = where + " and "; } else { where = "where "; } where = where + " fachverantwortung ='"+cbboxfachverantwortung.Text+"'" ; } if (where.Trim().Length > 0) { sql = sql + where; } //else //{ // sql = sql + " where dokumenttypnr > 0"; //} // if (chkboxaktive.Checked) { sql = sql + " and aktiv=1"; } if (rbNr.Checked) { sql = sql + " order by dokumenttypnr"; } else { sql = sql + " order by bezeichnung"; } db.Get_Tabledata(sql, false, true); treedata = db.dsdaten.Tables[0].Copy(); try { foreach (DataRow r in treedata.Rows) { TreeNodeAdv nodeAdv = new TreeNodeAdv(); nodeAdv.Text = r["id"].ToString() + " " + r["Bezeichnung"].ToString(); nodeAdv.Tag = r["id"].ToString(); //if (Convert.ToBoolean(r["aktiv"]) == false) //{ // nodeAdv.Font = new System.Drawing.Font(nodeAdv.Font, FontStyle.Strikeout); //} TreeDokumenttyp.Nodes.Add(nodeAdv); } } catch { } } private void TreeDokumenttyp_AfterSelect(object sender, EventArgs e) { try { this.dokumenttypnr = Convert.ToInt32(TreeDokumenttyp.SelectedNode.Tag.ToString()); Update_Details(dokumenttypnr); } catch { } } private void Update_Details(int id) { int erstellungstyp = 0; db.Get_Tabledata("Select * from Dokumenttyp_BP_Person_Erstellung where dokumenttypnr=" + dokumenttypnr.ToString(), false, true); if (db.dsdaten.Tables[0].Rows.Count != 0) { erstellungstyp = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0][0]); } db.Get_Tabledata("Select * from dokumenttyp where dokumenttypnr = " + dokumenttypnr.ToString(), false, true); DataRow r = db.dsdaten.Tables[0].Rows[0]; try { chkbearbeitungdirekt.Checked = Convert.ToBoolean(r["BearbeitungDirket"]) == true; } catch { chkbearbeitungdirekt.Checked = false; } try { chkinterop.Checked = Convert.ToBoolean(r["interop"]) == true; } catch { chkinterop.Checked = false; } try { chkboxInOffice.Checked = Convert.ToBoolean(r["erstellungInOffice"]) == true; } catch { chkboxInOffice.Checked = false; }; try { cbbearbeitungzwingend.Checked = Convert.ToBoolean(r["bearbeitung_zwingend"]) == true; } catch { cbbearbeitungzwingend.Checked = false; } try { chkfilloffice.Checked = Convert.ToBoolean(r["FillOffice"]) == true; } catch { chkfilloffice.Checked = false; } try { cbboxcompatibilitymode.Text = r["compatibilitymode"].ToString(); } catch { cbboxcompatibilitymode.Text = ""; } } private void sfButton1_Click(object sender, EventArgs e) { DB db = new DB(AppParams.connectionstring); db.Get_Tabledata_for_Update("Select * from dokumenttyp where dokumenttypnr=" + dokumenttypnr.ToString(), false, true); DataRow r = db.daten.Tables[0].Rows[0]; r["mutierer"] = AppParams.CurrentMitarbeiter; r["mutiert_am"] = DateTime.Now; r["BearbeitungDirket"] = chkbearbeitungdirekt.Checked == true; r["interop"] = chkinterop.Checked == true; r["erstellungInOffice"] = chkboxInOffice.Checked == true; r["CompatibilityMode"] = cbboxcompatibilitymode.Text; r["FillOffice"] = chkfilloffice.Checked == true; r["bearbeitung_zwingend"] = this.cbbearbeitungzwingend.Checked == true; db.Update_Data(); } private void txtFilter_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { update_tree(); } } private void btnerstellen_Click(object sender, EventArgs e) { try { Broadcaster().Broadcast("AdminDokErstellung", new SenderInfo("AdminDokErstellung", "", this.dokumenttypnr.ToString())); } catch { } } private void cbbearbeitungzwingend_CheckedChanged(object sender, EventArgs e) { } private void chkboxInOffice_CheckedChanged(object sender, EventArgs e) { if (chkboxInOffice.Checked) { chkbearbeitungdirekt.Checked = false; chkfilloffice.Checked = true; } } private void chkbearbeitungdirekt_CheckedChanged(object sender, EventArgs e) { if (chkbearbeitungdirekt.Checked) { chkboxInOffice.Checked = false; chkfilloffice.Checked = false; } } private void toolstripCombobox_Fachverantwortung_SelectedIndexChanged(object sender, EventArgs e) { } private void cbboxfachverantwortung_SelectedIndexChanged(object sender, EventArgs e) { update_tree(); } private void btnFilterDelete_Click(object sender, EventArgs e) { cbboxfachverantwortung.Text = ""; txtFilter.Text = ""; update_tree(); } } }