using Database; using DOCGEN; using Model; using OnDoc.Klassen; 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.Web.UI.WebControls.Expressions; using System.Windows.Forms; namespace OnDoc.UIControls { public partial class DokTypDetail : UserControl { public int dokumenttypnr { get; set; } = 0; public int einzeldokument { get; set; } = 0; public bool dokumentpaket { get; set; } = false; public DokTypDetail() { InitializeComponent(); } public DokTypDetail(int dokumenttypnr) { InitializeComponent(); this.dokumenttypnr = dokumenttypnr; Refresh_Details(); } public void Refresh_Details() { DataTable details = new DataTable(); details.Columns.Add("Element"); details.Columns.Add("Inhalt"); if (dokumentpaket) { sfDataGrid1.Dock = DockStyle.Top; groupBox2.Dock = DockStyle.Fill; groupBox2.Visible = true; } else { sfDataGrid1.Dock = DockStyle.Fill; groupBox2.Visible = false; } DB dB = new DB(AppParams.connectionstring); if (einzeldokument == 0) { dB.Get_Tabledata("Select * from view_ondoc_doctypdetail where nr=" + dokumenttypnr.ToString(), false, true); } if (einzeldokument==1) { dB.Get_Tabledata("Select * from view_ondoc_doctypdetail_nativ where nr=" + dokumenttypnr.ToString(), false, true); } if (dokumentpaket) { dB.Get_Tabledata("Select [Nr],[Bezeichung],[Beschreibung],[Hinweis],[zwingend],[sort],[ID],[DokTyp] from view_ondoc_docpacdetail where nr=" + dokumenttypnr.ToString()+" order by sort", false, true); for (int i = 0; i < 4; i++) { System.Data.DataRow dr1 = details.NewRow(); dr1[0]= dB.dsdaten.Tables[0].Columns[i].ColumnName; dr1[1] = dB.dsdaten.Tables[0].Rows[0][i].ToString(); details.Rows.Add(dr1); } sfDataGrid1.DataSource= details; dB.dsdaten.Tables[0].Columns.RemoveAt(0); dB.dsdaten.Tables[0].Columns.RemoveAt(0); dB.dsdaten.Tables[0].Columns.RemoveAt(0); dB.dsdaten.Tables[0].Columns.RemoveAt(0); dB.dsdaten.Tables[0].Columns.RemoveAt(0); dB.dsdaten.Tables[0].Columns.RemoveAt(0); sfDataGrid2.DataSource = dB.dsdaten.Tables[0]; //sfDataGrid2.Columns[0].Visible = false; //sfDataGrid2.Columns[1].Visible = false; //sfDataGrid2.Columns[2].Visible = false; //sfDataGrid2.Columns[3].Visible = false; dB = null; return; } foreach (DataColumn dc in dB.dsdaten.Tables[0].Columns) { if (dc.ColumnName != "Image") { DataRow dr = details.NewRow(); dr[0] = dc.ColumnName.ToString().Replace("_", ""); dr[1] = dB.dsdaten.Tables[0].Rows[0][dc.ColumnName].ToString(); try { if (dB.dsdaten.Tables[0].Columns[0].DataType == typeof(Boolean)) { if (Convert.ToBoolean(dB.dsdaten.Tables[0].Rows[0][dc.ColumnName]) == false) { dr[1] = "Nein"; } else { dr[1] = "Ja"; } } else { } } catch { } details.Rows.Add(dr); } else { if (dB.dsdaten.Tables[0].Rows[0][dc.ColumnName].ToString() != "") { DocGet dg = new DocGet(AppParams.connectionstring); clsdok dok = new clsdok(dB.dsdaten.Tables[0].Rows[0][dc.ColumnName].ToString(), dB.dsdaten.Tables[0].Rows[0]["Applikation"].ToString(), ""); string PDF = ""; switch (dB.dsdaten.Tables[0].Rows[0]["Applikation"].ToString().ToUpper()) { case "WORD": PDF = dg.Convert_Word_To_PDF(dB.dsdaten.Tables[0].Rows[0][dc.ColumnName].ToString()); break; case "EXCEL": PDF = dg.Convert_Excel_To_PDF(dB.dsdaten.Tables[0].Rows[0][dc.ColumnName].ToString()); break; case "PDF": PDF = dB.dsdaten.Tables[0].Rows[0][dc.ColumnName].ToString(); break; default: break; } docPreview1.show_base64(PDF, "Dokumenttyp: " + dokumenttypnr.ToString()); dg = null; dok = null; } } } sfDataGrid1.DataSource = details; dB = null; } private void sfDataGrid2_CellClick(object sender, Syncfusion.WinForms.DataGrid.Events.CellClickEventArgs e) { string id = ""; string apptype = ""; string image = ""; try { var rowIndex = e.DataRow.RowIndex; //Get the column index value var columnIndex = e.DataColumn.ColumnIndex; var selectedItem = e.DataRow; var dataRow = (e.DataRow.RowData as DataRowView).Row; id = dataRow["id"].ToString(); DB db = new DB(AppParams.connectionstring); db.Get_Tabledata("Select apptype,image from view_ondoc_docpacdetail where nr= " + this.dokumenttypnr.ToString() + " and id=" + id, false, true); apptype = db.dsdaten.Tables[0].Rows[0][0].ToString().ToUpper(); image = db.dsdaten.Tables[0].Rows[0][1].ToString(); db = null; DocGet dg = new DocGet(AppParams.connectionstring); string PDF = ""; switch (apptype) { case "WORD": PDF = dg.Convert_Word_To_PDF(image); break; case "EXCEL": PDF = dg.Convert_Excel_To_PDF(image); break; case "PDF": PDF = image; break; default: break; } docPreview1.show_base64(PDF, "Dokumenttyp: " + dokumenttypnr.ToString()); dg = null; } catch { } } } }