updaet 20250123

This commit is contained in:
Stefan Hutter
2025-01-24 16:25:47 +01:00
parent 52a3fecee5
commit 608c67d21b
156 changed files with 2055 additions and 1660 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -17,6 +17,7 @@ using System.Runtime.CompilerServices;
using NLog.LayoutRenderers;
using Helper;
using System.Transactions;
using System.Net.NetworkInformation;
@@ -196,7 +197,7 @@ namespace Database
dbkey = "0" + dbkey;
}
skey = skey + dbkey;
s = Helper.DivFnkt.modulo10(skey.Substring(skey.Length-15,15)).ToString();
s = Helper.DivFnkt.modulo10(skey.Substring(skey.Length - 15, 15)).ToString();
skey = skey + s;
return skey;
}
@@ -268,24 +269,46 @@ namespace Database
}
}
public DataTable Get_Vorlage_By_DokumentID(string dokumentid, bool useoffice = false, string tempdir="")
public DataTable Get_Vorlage_By_DokumentID(string dokumentid, bool useoffice = false, string tempdir = "", bool editdoc=false)
{
string sql = "Select dbo.BinaryToBase64(vorlage) as Data, dbo.office_vorlage.office_vorlagenr as nr from dbo.Office_Vorlage_Datei INNER JOIN ";
sql = sql + " dbo.office_vorlage ON dbo.Office_Vorlage_Datei.office_vorlage_dateinr = dbo.office_vorlage.office_vorlagenr INNER JOIN ";
sql = sql + "dbo.dokumenttyp INNER JOIN ";
sql = sql + "dbo.dokument ON dbo.dokumenttyp.dokumenttypnr = dbo.dokument.dokumenttypnr ON dbo.office_vorlage.office_vorlagenr = dbo.dokumenttyp.office_vorlagenr ";
sql = sql + "WHERE dbo.dokument.dokumentid = '" + dokumentid + "' ";
string sql = "";
if (!editdoc)
{
sql = "Select dbo.BinaryToBase64(vorlage) as Data, dbo.office_vorlage.office_vorlagenr as nr from dbo.Office_Vorlage_Datei INNER JOIN ";
sql = sql + " dbo.office_vorlage ON dbo.Office_Vorlage_Datei.office_vorlage_dateinr = dbo.office_vorlage.office_vorlagenr INNER JOIN ";
sql = sql + "dbo.dokumenttyp INNER JOIN ";
sql = sql + "dbo.dokument ON dbo.dokumenttyp.dokumenttypnr = dbo.dokument.dokumenttypnr ON dbo.office_vorlage.office_vorlagenr = dbo.dokumenttyp.office_vorlagenr ";
sql = sql + "WHERE dbo.dokument.dokumentid = '" + dokumentid + "' ";
}
else
{
sql = "SELECT dbo.BinaryToBase64(dbo.Doks.Dokument) AS Data, dbo.office_vorlage.office_vorlagenr AS nr ";
sql = sql + " FROM dbo.Office_Vorlage_Datei INNER JOIN ";
sql = sql + " dbo.office_vorlage ON dbo.Office_Vorlage_Datei.office_vorlage_dateinr = dbo.office_vorlage.office_vorlagenr INNER JOIN";
sql = sql + " dbo.dokumenttyp INNER JOIN ";
sql = sql + " dbo.dokument ON dbo.dokumenttyp.dokumenttypnr = dbo.dokument.dokumenttypnr ON dbo.office_vorlage.office_vorlagenr = dbo.dokumenttyp.office_vorlagenr INNER JOIN ";
sql = sql + " dbo.Doks ON dbo.dokument.dokumentid = dbo.Doks.DokumentID ";
sql = sql + " WHERE(dbo.dokument.dokumentid = '" + dokumentid + "')";
}
Get_Tabledata(sql, false, true);
if (!useoffice) { return dsdaten.Tables[0]; }
else
{
VBFileManagement.VBFileManagement vm = new VBFileManagement.VBFileManagement();
vm.Get_From_DB(Convert.ToInt32(dsdaten.Tables[0].Rows[0][1]), tempdir + dokumentid, connectionstring, false);
if (!editdoc)
{
vm.Get_From_DB(Convert.ToInt32(dsdaten.Tables[0].Rows[0][1]), tempdir + dokumentid, connectionstring, false);
}else
{
vm.Get_Dok_From_DB(dokumentid, tempdir + dokumentid, connectionstring);
}
clsFileHelper fh = new clsFileHelper();
dsdaten.Tables[0].Rows[0][0] = fh.Base64FromFile(tempdir+ dokumentid);
dsdaten.Tables[0].Rows[0][0] = fh.Base64FromFile(tempdir + dokumentid);
fh = null;
vm=null;
vm = null;
System.IO.File.Delete(tempdir + dokumentid);
return dsdaten.Tables[0];
@@ -338,18 +361,32 @@ namespace Database
#region "EDOKA_Datenbank"
public string Create_EDOKA_Doc(clsDocData DocData)
public string Create_EDOKA_Doc(clsDocData DocData, bool editdoc, string dokumentid)
{
DB db = new DB(connectionstring);
string dokumentid = "";
dokumentid = db.get_dbkey("Dokument");
clsDokument dok = new clsDokument();
clsDokumenttyp doktyp = new clsDokumenttyp();
clsConnectionProvider edoka_conn = new clsConnectionProvider();
edoka_conn.sConnectionString = this.connectionstring;
if (dokumentid == "")
{
dokumentid = db.get_dbkey("Dokument");
}
else
{
dok.sDokumentid= dokumentid;
dok.cpMainConnectionProvider=edoka_conn;
dok.SelectOne();
}
doktyp.cpMainConnectionProvider = edoka_conn;
doktyp.iDokumenttypnr = Convert.ToInt32(DocData.DokumenttypNr);
@@ -405,7 +442,7 @@ namespace Database
dok.iBearbeitung_nach_abschluss = doktyp.iTage_mutation;
dok.iBearbeitungszeit_in_minuten = doktyp.iDbearbeitungszeit;
dok.iMonierung_in_tagen = doktyp.iAnzahl_tage;
// dok.sBezeichnung = doktyp.sBezeichnung;
// dok.sBezeichnung = doktyp.sBezeichnung;
dok.iNrpar00 = Convert.ToInt32(DocData.PartnerNr);
dok.iMutierer = dok.iErsteller;
dok.iMitarbeiternr = dok.iErsteller;
@@ -456,21 +493,31 @@ namespace Database
dok.sDokumentname = dokumentname;
dok.cpMainConnectionProvider = edoka_conn;
edoka_conn.OpenConnection();
dok.Insert();
if (!editdoc)
{
dok.Insert();
}
else
{
dok.Update();
}
edoka_conn.CloseConnection(true);
COLD_Index_Sichern(1, dokumentid);
if (dok.bZu_retournieren == true)
if (!editdoc)
{
COLD_Index_Sichern(2, dokumentid);
COLD_Index_Sichern(1, dokumentid);
if (dok.bZu_retournieren == true)
{
COLD_Index_Sichern(2, dokumentid);
}
Status_Erstellen(dokumentid, false);
dok.iStatusnr = Convert.ToInt32(get_current_Status(dokumentid).ToString());
edoka_conn.OpenConnection();
dok.Update();
edoka_conn.CloseConnection(true);
}
Status_Erstellen(dokumentid, false);
dok.iStatusnr = Convert.ToInt32(get_current_Status(dokumentid).ToString());
edoka_conn.OpenConnection();
dok.Update();
edoka_conn.CloseConnection(true);
//DokumentInfoWert
foreach (DataRow dr in DocData.dokumentwerte.Rows)
{
@@ -493,35 +540,38 @@ namespace Database
db.add_parameter("@indextyp", "1");
db.Get_Tabledata("SP_Dokument_Cold_Index", true, false);
}
db.clear_parameter();
db.add_parameter("@dokumentid", dokumentid);
db.add_parameter("@coldfeldnr", dr["cold_indexfeld"].ToString());
db.add_parameter("@value", dr["feldwert"].ToString());
db.Get_Tabledata("SP_Dokument_Cold_Index_Update", true, false);
else
{
db.clear_parameter();
db.add_parameter("@dokumentid", dokumentid);
db.add_parameter("@coldfeldnr", dr["cold_indexfeld"].ToString());
db.add_parameter("@value", dr["feldwert"].ToString());
db.Get_Tabledata("SP_Dokument_Cold_Index_Update", true, false);
}
}
}
db.Get_Tabledata("Select * from dokumenttyp where dokumenttypnr=" + dok.iDokumenttypnr.ToString(), false, true);
int toapprove = 0;
int approved = 0;
int approved1 = 0;
int approved2 = 0;
if (Convert.ToBoolean(db.dsdaten.Tables[0].Rows[0]["Unterschrift_Pruefung"]) == true || DocData.As_Faksimile=="True")
int toapprove = DocData.toapprove;
int approved = DocData.approved;
int approved1 = DocData.approval1;
int approved2 = DocData.approval2;
if (Convert.ToBoolean(db.dsdaten.Tables[0].Rows[0]["Unterschrift_Pruefung"]) == true || DocData.As_Faksimile == "True")
{
toapprove = 1;
if (dok.iUnterschriftlinks == dok.iErsteller) { approved1 = 1; }
if (dok.iUnterschriftrechts == dok.iErsteller) { approved2 = 1; }
//if (dok.iUnterschriftlinks == dok.iErsteller) { approved1 = 1; }
//if (dok.iUnterschriftrechts == dok.iErsteller) { approved2 = 1; }
}
int unterschriftlinks = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["Unterschrift_links"]);
int unterschriftrechts = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["Unterschrift_rechts"]);
int bearbeitung_zwingend = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["bearbeitung_zwingend"]);
int as_faksimile = 0;
if (DocData.As_Faksimile=="True") { as_faksimile = 1; }
if (DocData.As_Faksimile == "True") { as_faksimile = 1; }
//if (bearbeitung_zwingend == 4) { bearbeitung_zwingend = 1; } else { bearbeitung_zwingend = 0; }
if (unterschriftlinks == 1 && unterschriftrechts == 0 && approved1 == 1) { approved = 1; }
//if (unterschriftlinks == 1 && unterschriftrechts == 0 && approved1 == 1) { approved = 1; }
db.Exec_SQL("Update dokument set faksimile="+as_faksimile.ToString()+", bearbeitung_zwingend = " + bearbeitung_zwingend.ToString()+", toapprove=" + toapprove.ToString() + ", approved=" + approved.ToString() + ", approval1=" + approved1.ToString() + ", approval2=" + approved2.ToString() + " where dokumentid = '" + dokumentid + "'");
db.Exec_SQL("Update dokument set faksimile=" + as_faksimile.ToString() + ", bearbeitung_zwingend = " + bearbeitung_zwingend.ToString() + ", toapprove=" + toapprove.ToString() + ", approved=" + approved.ToString() + ", approval1=" + approved1.ToString() + ", approval2=" + approved2.ToString() + " where dokumentid = '" + dokumentid + "'");
return dokumentid;
}
@@ -835,7 +885,8 @@ namespace Database
SqlConnection Connection = new SqlConnection();
string sql = "";
if (serienbriefnr == 0) { sql = "select * from doks where dokumentid='" + DokumentID + "'"; }
if (serienbriefnr !=0) {
if (serienbriefnr != 0)
{
sql = "select top 1 * from edex_sb_vorlage where serienbriefnr=" + serienbriefnr.ToString();
DokumentID = serienbriefnr.ToString();
}
@@ -983,7 +1034,7 @@ namespace Database
return true;
}
public DataTable Get_DokumentWertList(string dokumentid, int dokumenttypnr)
public DataTable Get_DokumentWertList(string dokumentid, int dokumenttypnr, int CreateNew)
{
var scmCmdToExecute = new SqlCommand();
@@ -998,7 +1049,7 @@ namespace Database
{
scmCmdToExecute.Parameters.Add(new SqlParameter("@dokumentid", SqlDbType.VarChar, 22, ParameterDirection.Input, true, 10, 0, "", DataRowVersion.Proposed, dokumentid));
scmCmdToExecute.Parameters.Add(new SqlParameter("@dokumenttypnr", SqlDbType.Int, 4, ParameterDirection.Input, true, 10, 0, "", DataRowVersion.Proposed, dokumenttypnr));
scmCmdToExecute.Parameters.Add(new SqlParameter("@CreateNew", SqlDbType.Int, 4, ParameterDirection.Input, true, 10, 0, "", DataRowVersion.Proposed, 1));
scmCmdToExecute.Parameters.Add(new SqlParameter("@CreateNew", SqlDbType.Int, 4, ParameterDirection.Input, true, 10, 0, "", DataRowVersion.Proposed, CreateNew));
sdaAdapter.Fill(dtToReturn);
// Release 4.0 KC 01.06.2007 XMl Daten berücksichtigen (DokumentBearbeitung.edka)
@@ -1276,9 +1327,16 @@ namespace Database
sb.dsempfaenger.ReadXml(fn);
System.IO.File.Delete(fn);
}
Get_Tabledata("Select isnull(faktura,0), isnull(office_vorlagenr,0) from edex_sb_serienbrief where serienbriefnr=" + sb.serienbriefnr.ToString(), false, true);
Get_Tabledata("Select isnull(faktura,0), isnull(office_vorlagenr,0), isnull(toapprove,0), isnull(approved,0), isnull(approval1,0), isnull(approval2,0), isnull(faksimile,0), isnull(ohneunterschrift,0) from edex_sb_serienbrief where serienbriefnr=" + sb.serienbriefnr.ToString(), false, true);
sb.ppfaktura = Convert.ToInt32(dsdaten.Tables[0].Rows[0][0]);
sb.officevorlagenr = Convert.ToInt32(dsdaten.Tables[0].Rows[0][1]);
sb.toapproval = Convert.ToInt32(dsdaten.Tables[0].Rows[0][2]);
sb.approved = Convert.ToInt32(dsdaten.Tables[0].Rows[0][3]);
sb.approval1 = Convert.ToInt32(dsdaten.Tables[0].Rows[0][4]);
sb.approval2 = Convert.ToInt32(dsdaten.Tables[0].Rows[0][5]);
sb.faksimile = Convert.ToInt32(dsdaten.Tables[0].Rows[0][6]);
sb.ohneunterschrift = Convert.ToInt32(dsdaten.Tables[0].Rows[0][7]);
return sb;
}
public int Save_Serienbrief(serienbrief sb, string temppath)
@@ -1322,7 +1380,7 @@ namespace Database
dbsb.iBestaetigt = sb.bestaetigt;
dbsb.iAusgeloest = sb.ausgeloest;
dbsb.iBldossier = sb.vertrag;
edoka_conn.OpenConnection();
if (sb.serienbriefnr == 0)
{
@@ -1337,7 +1395,9 @@ namespace Database
save_empfaengerdata(sb.serienbriefnr, temppath, sb.dsempfaenger);
edoka_conn.CloseConnection(true);
Exec_SQL("Update edex_sb_serienbrief set faktura=" + sb.ppfaktura.ToString() + ", office_vorlagenr="+sb.officevorlagenr.ToString()+" where serienbriefnr = " + sb.serienbriefnr.ToString());
Exec_SQL("Update edex_sb_serienbrief set faktura=" + sb.ppfaktura.ToString() + ", office_vorlagenr=" + sb.officevorlagenr.ToString() + " where serienbriefnr = " + sb.serienbriefnr.ToString());
Exec_SQL("update edex_sb_serienbrief set toapprove=" + sb.toapproval.ToString() + ", approved=" + sb.approved.ToString() + ", approval1=" + sb.approval1.ToString() + ", approval2=" + sb.approval2.ToString() + " where serienbriefnr=" + sb.serienbriefnr.ToString());
Exec_SQL("update edex_sb_serienbrief set faksimile=" + sb.faksimile.ToString() + ", ohneunterschrift=" + sb.ohneunterschrift.ToString() + " where serienbriefnr=" + sb.serienbriefnr.ToString());
return sb.serienbriefnr;
}
@@ -1363,13 +1423,13 @@ namespace Database
{
try
{
string filename = temppath + serienbriefnr.ToString() + ".xml";
//filename = temppath + "sbbase1.xml";
//serienbriefnr = -1;
empf.WriteXml(filename);
SqlConnection Connection = new SqlConnection();
SqlDataAdapter DA = new SqlDataAdapter("select top 1 * from edex_sb_empfaenger where serienbriefnr=" + serienbriefnr.ToString() + "", Connection);
SqlCommandBuilder cb = new SqlCommandBuilder(DA);
@@ -1425,7 +1485,7 @@ namespace Database
public string save_serienbrief_datei(int serienbriefnr, int eintragnr, string filename, string dokumentid)
{
SqlConnection Connection = new SqlConnection();
SqlDataAdapter DA = new SqlDataAdapter("select top 1 * from edex_sb_serienbrief_dokument where dokumentid='"+dokumentid+"'", Connection);
SqlDataAdapter DA = new SqlDataAdapter("select top 1 * from edex_sb_serienbrief_dokument where dokumentid='" + dokumentid + "'", Connection);
//SqlDataAdapter DA = new SqlDataAdapter("select top 1 * from edex_sb_serienbrief_dokument where inteintragnr = " + eintragnr.ToString() + " and serienbriefnr = " + serienbriefnr.ToString(), Connection);
SqlCommandBuilder cb = new SqlCommandBuilder(DA);
DataSet ds = new DataSet();
@@ -1624,7 +1684,7 @@ namespace Database
tdt.Rows.Add(tdr);
}
i=i+1; ;
i = i + 1; ;
}
//foreach (var DR in dv)
@@ -1700,7 +1760,7 @@ namespace Database
s = "Create Table DBO.EDKB09_" + sb.serienbriefnr.ToString() + "( NRPAR00 varchar(11),";
var loopTo = dt.Columns.Count - 1;
for (i = 0; i <= loopTo; i++)
s = s + "["+dt.Columns[i].ColumnName + "] varchar(255),";
s = s + "[" + dt.Columns[i].ColumnName + "] varchar(255),";
s = s.Substring(0, s.Length - 1);
s = s + "";
s = s + " " + ",CONSTRAINT [PK_EDKB09_" + sb.serienbriefnr.ToString() + "] PRIMARY KEY CLUSTERED ([IntEintragnr] ASC)) ON[DEFAULT]";
@@ -1887,7 +1947,7 @@ namespace Database
}
public bool save_edkdata(string filename,string tgnummer)
public bool save_edkdata(string filename, string tgnummer)
{
try
{
@@ -1997,7 +2057,7 @@ namespace Database
clear_parameter();
add_parameter("UrsprungID", dokumentid);
add_parameter("NewDokID", newdokumentid);
clsDokument dok = new clsDokument();
clsConnectionProvider edoka_conn = new clsConnectionProvider();
edoka_conn.sConnectionString = this.connectionstring;
@@ -2005,7 +2065,7 @@ namespace Database
edoka_conn.OpenConnection();
dok.sDokumentid = dokumentid;
dok.SelectOne();
dok.sDokumentid=newdokumentid;
dok.sDokumentid = newdokumentid;
dok.daErstelltam = DateTime.Now;
dok.daMutiertam = DateTime.Now;
dok.iErsteller = manr;

Binary file not shown.

Binary file not shown.