update 20241029

This commit is contained in:
Stefan Hutter
2024-10-29 19:35:53 +01:00
parent 6da124508d
commit 4b85e91ed9
54 changed files with 557 additions and 104 deletions

View File

@@ -9,9 +9,13 @@ using System.Runtime.Remoting.Messaging;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Xml.Linq;
using Database;
using DOCGEN.Klassen;
using Helper;
using Model;
using NLog;
using OnDoc.DocMgmt;
using OnDoc.Klassen;
using OnDoc.UIControls.Administrator;
using Syncfusion.Windows.Forms.Tools;
@@ -24,12 +28,14 @@ namespace OnDoc.UIControls
{
public partial class Serienbrief : SfForm
{
private int dokumenttypnr = 0;
//private int dokumenttypnr = 0;
private int officevorlagenr = 0;
private int profilnr = 0;
private serienbrief sb = new serienbrief();
private int serienbriefnr = 0;
private DataSet dsempfaenger = new DataSet();
//private DataSet dsempfaenger = new DataSet();
private int selectedsbnr = 0;
public Serienbrief()
{
InitializeComponent();
@@ -132,18 +138,18 @@ namespace OnDoc.UIControls
return;
}
DB dB = new DB(AppParams.connectionstring);
dsempfaenger.Tables[0].Rows.Clear();
sb.dsempfaenger.Tables[0].Rows.Clear();
foreach (System.Data.DataRow dr in importdata.Rows)
{
System.Data.DataRow r1 = dsempfaenger.Tables[0].NewRow();
foreach (DataColumn col in importdata.Columns)
System.Data.DataRow r1 = sb.dsempfaenger.Tables[0].NewRow();
foreach (DataColumn col in sb.dsempfaenger.Tables[0].Columns)
{
try
{
r1[col.ColumnName] = dr[col.ColumnName];
}
catch { }
catch { r1[col.ColumnName] = ""; }
}
r1["Status"] = 0;
@@ -151,10 +157,10 @@ namespace OnDoc.UIControls
dB.Get_Tabledata("Select bkpar00 from partner where nrpar00=" + r1[0].ToString(), false, true);
if (dB.dsdaten.Tables[0].Rows.Count < 1) r1["Error"] = 1; else r1["Error"] = 0;
r1[1] = dB.dsdaten.Tables[0].Rows[0][0].ToString();
dsempfaenger.Tables[0].Rows.Add(r1);
sb.dsempfaenger.Tables[0].Rows.Add(r1);
}
dB = null;
refresh_empfaenger(dsempfaenger.Tables[0]);
refresh_empfaenger(sb.dsempfaenger.Tables[0]);
//sfDataGridEmpfaenger.DataSource = importdata;
}
}
@@ -185,17 +191,26 @@ namespace OnDoc.UIControls
string xml = bh.DecodeBase64();
string filename = AppParams.tempdir + @"\tmpsb.xml";
System.IO.File.WriteAllText(filename, xml);
dsempfaenger.Tables.Clear();
dsempfaenger.ReadXml(filename);
dsempfaenger.Tables[0].Columns.Add("Status");
dsempfaenger.Tables[0].Columns.Add("Error");
refresh_empfaenger(dsempfaenger.Tables[0]);
//dsempfaenger.Tables.Clear();
//dsempfaenger.ReadXml(filename);
//dsempfaenger.Tables[0].Columns.Add("Status");
//dsempfaenger.Tables[0].Columns.Add("Error");
sb.dsempfaenger = new DataSet();
sb.dsempfaenger.Tables.Clear();
sb.dsempfaenger.ReadXml(filename);
sb.dsempfaenger.Tables[0].Columns.Add("Status");
sb.dsempfaenger.Tables[0].Rows[0]["Status"] = "0";
sb.dsempfaenger.Tables[0].Columns.Add("Error");
sb.dsempfaenger.Tables[0].Rows[0]["Error"] = "0";
sb.dsempfaenger.AcceptChanges();
refresh_empfaenger(sb.dsempfaenger.Tables[0]);
System.IO.File.Delete(filename);
}
private void RibbonButtonNew_Click(object sender, EventArgs e)
{
OnDoc.DocMgmt.DokTypSelect DokTypSelect = new OnDoc.DocMgmt.DokTypSelect();
DokTypSelect.vorlagentype = 1;
DokTypSelect.ShowDialog(this);
@@ -203,14 +218,15 @@ namespace OnDoc.UIControls
{
this.sb = null;
this.sb = new serienbrief();
dokumenttypnr = DokTypSelect.dokumenttypnr;
GrpDokumentInhalt.Enabled = true;
update_serienbrief_details(true, dokumenttypnr, 0);
init_empfaenger(0);
vorlagenfelder(dokumenttypnr);
refresh_empfaenger(dsempfaenger.Tables[0]);
sb.dokumenttypnr = DokTypSelect.dokumenttypnr;
update_serienbrief_details(true, sb.dokumenttypnr, 0);
init_empfaenger(0);
vorlagenfelder(sb.dokumenttypnr);
refresh_empfaenger(sb.dsempfaenger.Tables[0]);
update_screen();
update_serienbriefdaten(true);
vorlage_auslesen_und_speichern();
}
else
@@ -222,13 +238,18 @@ namespace OnDoc.UIControls
private void vorlage_auslesen_und_speichern()
{
}
DB dB = new DB(AppParams.connectionstring);
dB.Get_ApplicationType_from_Vorlage(sb.officevorlagenr);
string Apptype = "";
Apptype = dB.dsdaten.Tables[0].Rows[0][1].ToString();
string filename = dB.get_vorlage_to_file(sb.officevorlagenr.ToString(),AppParams.tempdir,sb.serienbriefnr.ToString()+"."+Apptype);
sb.filename = dB.save_sb_vorlage_to_db(filename,Apptype,sb.serienbriefnr);
}
private void vorlagenfelder(int dokumenttypnr)
{
DB db = new DB(AppParams.connectionstring);
db.clear_parameter();
db.add_parameter("@dokumenttypnr", dokumenttypnr.ToString());
db.add_parameter("@dokumenttypnr", sb.dokumenttypnr.ToString());
db.Get_Tabledata("sp_edex_sb_get_vorlagenfelder", true, false);
string s = "";
for (int i = 0, loopTo = db.dsdaten.Tables[0].Rows.Count - 1; i <= loopTo; i++)
@@ -236,34 +257,35 @@ namespace OnDoc.UIControls
try
{
string X;
X = this.dsempfaenger.Tables[0].Rows[0][db.dsdaten.Tables[0].Rows[i][0].ToString()].ToString();
X = sb.dsempfaenger.Tables[0].Rows[0][db.dsdaten.Tables[0].Rows[i][0].ToString()].ToString();
}
catch
{
this.dsempfaenger.Tables[0].Columns.Add(db.dsdaten.Tables[0].Rows[i][0].ToString());
this.dsempfaenger.Tables[0].Rows[0][i] = "";
this.dsempfaenger.Tables[1].Columns.Add(db.dsdaten.Tables[0].Rows[i][0].ToString());
sb.dsempfaenger.Tables[0].Columns.Add(db.dsdaten.Tables[0].Rows[i][0].ToString());
sb.dsempfaenger.Tables[0].Rows[0][db.dsdaten.Tables[0].Rows[i][0].ToString()] = "";
sb.dsempfaenger.Tables[1].Columns.Add(db.dsdaten.Tables[0].Rows[i][0].ToString());
try
{
if (Convert.ToBoolean(db.dsdaten.Tables[0].Rows[i][1])==true)
{
this.dsempfaenger.Tables[1].Rows[0][db.dsdaten.Tables[0].Rows[i][0].ToString()] = 1;
sb.dsempfaenger.Tables[1].Rows[0][db.dsdaten.Tables[0].Rows[i][0].ToString()] = 1;
}
else
{
this.dsempfaenger.Tables[1].Rows[0][db.dsdaten.Tables[0].Rows[i][0].ToString()] = 0;
sb.dsempfaenger.Tables[1].Rows[0][db.dsdaten.Tables[0].Rows[i][0].ToString()] = 0;
}
}
catch
{
this.dsempfaenger.Tables[1].Rows[0][db.dsdaten.Tables[0].Rows[i][0].ToString()] = 0;
sb.dsempfaenger.Tables[1].Rows[0][db.dsdaten.Tables[0].Rows[i][0].ToString()] = 0;
}
s = s + "- " + db.dsdaten.Tables[0].Rows[i][0].ToString() + System.Environment.NewLine;
}
}
sb.dsempfaenger.AcceptChanges();
if (s !="") { MessageBox.Show("Folgende Spalten wurden aufgrund der gewählten Vorlage zur Liste hinzugefügt"+System.Environment.NewLine+ s,"Serienbrief",MessageBoxButtons.OK,MessageBoxIcon.Information); }
//foreach (System.Data.DataRow dr in db.dsdaten.Tables[0].Rows)
@@ -287,9 +309,9 @@ namespace OnDoc.UIControls
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]);
db.Get_Tabledata("Select bezeichnung,office_vorlagenr from dokumenttyp where dokumenttypnr=" + sb.dokumenttypnr.ToString(), false, true);
sb.bezeichnung= db.dsdaten.Tables[0].Rows[0][0].ToString();
sb.officevorlagenr = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0][1]);
}
@@ -302,13 +324,14 @@ namespace OnDoc.UIControls
sb.aktiv = true;
sb.mutiert_am = DateTime.Now;
sb.mutierer = AppParams.CurrentMitarbieter;
sb.dokumenttypnr=this.dokumenttypnr;
sb.verantwortlich=AppParams.CurrentMitarbieter;
try {sb.postzustellung = Convert.ToInt32(cbboxpostzustellung.SelectedValue.ToString());} catch { sb.postzustellung = 0; }
try { sb.unterschriftlinks = Convert.ToInt32(cbboxunterschriftlinks.SelectedValue.ToString()); } catch { sb.unterschriftlinks = 0; }
try { sb.unterschriftrechts = Convert.ToInt32(cbboxunterschriftrechts.SelectedValue.ToString()); } catch { sb.unterschriftrechts = 0;}
try { sb.team = Convert.ToInt32(cbboxteam.SelectedValue.ToString()); } catch { sb.team = 0; }
DB db = new DB(AppParams.connectionstring);
this.serienbriefnr=db.Save_Serienbrief(sb);
sb.serienbriefnr=db.Save_Serienbrief(sb,AppParams.tempdir);
db.save_sb_vorlage_to_db(sb.filename, "", sb.serienbriefnr);
}
@@ -322,7 +345,7 @@ namespace OnDoc.UIControls
{
try
{
DataView dv = new DataView(dsempfaenger.Tables[0]);
DataView dv = new DataView(sb.dsempfaenger.Tables[0]);
dv.RowFilter = "Status = 0";
treeViewAdv1.Nodes[0].Text = "In Bearbeitung (" + dv.Count.ToString() + ")";
dv.RowFilter = "Error <> 0";
@@ -341,7 +364,7 @@ namespace OnDoc.UIControls
{
{
string nodetext = treeViewAdv1.SelectedNode.Text;
DataView dv = new DataView(dsempfaenger.Tables[0]);
DataView dv = new DataView(sb.dsempfaenger.Tables[0]);
switch (nodetext.Substring(0, 5))
{
@@ -385,11 +408,30 @@ namespace OnDoc.UIControls
sfdatagridsbload.DataSource = db.dsdaten.Tables[0];
this.pnlLoad.Left = this.Left;
this.pnlLoad.Width = this.Width;
Application.DoEvents();
}
private void bntsbloadok_Click(object sender, EventArgs e)
{
DB db = new DB(AppParams.connectionstring);
sb = new serienbrief();
sb.dsempfaenger = new DataSet();
sb.serienbriefnr = selectedsbnr;
sb = db.Load_Serienbrief(sb,AppParams.tempdir);
sb.filename= db.get_sb_vorlage(sb.serienbriefnr,AppParams.tempdir);
pnlLoad.Visible = false;
update_screen();
refresh_empfaenger(sb.dsempfaenger.Tables[0]);
db = null;
}
private void update_screen() {
txtbezeichnung.Text = sb.bezeichnung;
cbboxpostzustellung.SelectedValue = sb.postzustellung;
cbboxunterschriftlinks.SelectedValue = sb.unterschriftlinks;
cbboxunterschriftrechts.SelectedValue=sb.unterschriftrechts;
cbboxverantwortlich.SelectedValue = sb.verantwortlich;
update_zahlen();
GrpDokumentInhalt.Enabled = true;
}
@@ -397,5 +439,20 @@ namespace OnDoc.UIControls
{
pnlLoad.Visible = false;
}
private void sfdatagridsbload_CellClick(object sender, Syncfusion.WinForms.DataGrid.Events.CellClickEventArgs e)
{
var selectedItem = e.DataRow;
var dataRow = (e.DataRow.RowData as DataRowView).Row;
selectedsbnr = Convert.ToInt32( dataRow["serienbriefnr"].ToString());
}
private void ribbonButton1_Click(object sender, EventArgs e)
{
SerienbriefBearbeitung sbedit = new SerienbriefBearbeitung(this.sb);
sbedit.Show();
}
}
}