Update 20241106

This commit is contained in:
Stefan Hutter
2024-11-06 16:12:09 +01:00
parent 0ddc71c2b3
commit 86be28ec33
89 changed files with 1029 additions and 107 deletions

View File

@@ -162,6 +162,7 @@ namespace Database
}
// sqlcmd.CommandType = CommandType.StoredProcedure
// sqlcmd.CommandText = "Berufsliste"
da.SelectCommand = sqlcmd;
da.Fill(daten, "Daten");
qb = new SqlCommandBuilder(da);
@@ -170,7 +171,7 @@ namespace Database
public void Update_Data()
{
da.Update(daten, "Daten");
int i = da.Update(daten, "Daten");
//SqlDataAdapter dadaten = new SqlDataAdapter();
//var cb = new SqlCommandBuilder(dadaten);
//dadaten.Update(dsdaten, dsdaten.Tables[0].TableName);
@@ -179,7 +180,23 @@ namespace Database
}
#endregion
public string generate_key(string dbkey)
{
string skey = "OFFEDK000";
string s = "";
s = DateTime.Now.Year.ToString().Trim();
string dt = s;
skey = skey + s;
while (dbkey.Length < 8)
{
dbkey = "0" + dbkey;
}
skey = skey + dbkey;
s = Helper.DivFnkt.modulo10(dt + dbkey).ToString();
skey = skey + s;
return skey;
}
public string get_dbkey(string Tablename)
{
clsMyKey_Tabelle myKey_Tabelle = new clsMyKey_Tabelle();
@@ -187,20 +204,8 @@ namespace Database
string dbkey = myKey_Tabelle.get_dbkey(Tablename).ToString();
if (Tablename == "Dokument")
{
string skey = "OFFEDK000";
string s = "";
s = DateTime.Now.Year.ToString().Trim();
string dt = s;
skey = skey + s;
return generate_key(dbkey);
while (dbkey.Length < 8)
{
dbkey = "0" + dbkey;
}
skey = skey + dbkey;
s = Helper.DivFnkt.modulo10(dt + dbkey).ToString();
skey = skey + s;
return skey;
}
else { return dbkey; }
}
@@ -1367,6 +1372,56 @@ namespace Database
}
return true;
}
public string save_serienbrief_datei(int serienbriefnr, int eintragnr, string filename)
{
SqlConnection Connection = new SqlConnection();
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();
FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read);
byte[] mydata = new byte[fs.Length];
try
{
fs.Read(mydata, 0, Convert.ToInt32(fs.Length));
fs.Close();
Connection.ConnectionString = connectionstring;
Connection.Open();
DA.Fill(ds, "sbdokument");
DataRow myRow;
if (ds.Tables[0].Rows.Count == 0)
{
myRow = ds.Tables[0].NewRow();
myRow[1] = serienbriefnr.ToString();
myRow[2] = eintragnr.ToString();
myRow[3] = mydata;
ds.Tables[0].Rows.Add(myRow);
DA.Update(ds, "sbdokument");
}
else
{
myRow = ds.Tables[0].Rows[0];
myRow[3] = mydata;
DA.Update(ds, "sbdokument");
}
}
catch (Exception ex)
{
return "";
}
finally
{
fs = null;
cb = null;
ds = null;
DA = null;
Connection.Close();
Connection = null;
}
return filename;
}
public string save_sb_vorlage_to_db(string filename, string doctype, int serienbriefnr)
{
try
@@ -1513,7 +1568,7 @@ namespace Database
return;
}
public DataTable Check_sb_Data(int mitarbeiternr,serienbrief sb)
public DataTable Check_sb_Data(int mitarbeiternr, serienbrief sb)
{
clear_parameter();
add_parameter("@manr", mitarbeiternr.ToString());
@@ -1523,9 +1578,167 @@ namespace Database
return dsdaten.Tables[0];
}
public void Create_sb_SQL_Server_Table(ref DataTable dt, serienbrief sb)
{
string s;
string s1;
int i;
// dt.Columns.Add("NRPAR00")
// dt.Columns.Add("IntEintragNr")
s1 = "Drop Table DBO.EDKB09_" + sb.serienbriefnr.ToString();
// s = "Create Table EDKB09_" + Me.Serienbriefnr.ToString + "( NRPAR00 int, intEintragNr int,"
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.Substring(0, s.Length - 1);
s = s + "";
s = s + " " + ",CONSTRAINT [PK_EDKB09_" + sb.serienbriefnr.ToString() + "] PRIMARY KEY CLUSTERED ([IntEintragnr] ASC)) ON[DEFAULT]";
var conn = new SqlConnection();
conn.ConnectionString = connectionstring;
conn.Open();
var sqlcmd0 = new SqlCommand(s1, conn);
try
{
sqlcmd0.ExecuteNonQuery();
}
catch
{
}
var sqlcmd = new SqlCommand(s, conn);
sqlcmd.ExecuteNonQuery();
conn.Close();
}
public void Save_sb_Data_To_Temptable(ref DataTable dt, serienbrief sb)
{
Get_Tabledata_for_Update("Select * from EDKB09_" + sb.serienbriefnr.ToString() + " where inteintragnr=-1", false, true);
System.Data.DataTable ndt = dt.Copy();
ndt.Columns[0].ColumnName = "NRPAR00";
ndt.AcceptChanges();
foreach (System.Data.DataRow dr in ndt.Rows)
{
System.Data.DataRow nr = daten.Tables[0].NewRow();
foreach (System.Data.DataColumn col in ndt.Columns)
{
nr[col.ColumnName] = dr[col.ColumnName].ToString();
}
daten.Tables[0].Rows.Add(nr);
}
foreach (System.Data.DataRow dr in ndt.Rows)
{
string s = "insert into edkb09_" + sb.serienbriefnr.ToString();
s = s + "(";
foreach (System.Data.DataColumn col in ndt.Columns)
{
s = s + "[" + col.ColumnName.ToString() + "],";
}
s = s.Substring(0, s.Length - 1);
s = s + ") values (";
foreach (System.Data.DataColumn col in ndt.Columns)
{
s = s + "'" + dr[col.ColumnName].ToString() + "',";
}
s = s.Substring(0, s.Length - 1);
s = s + ")";
Exec_SQL(s);
}
return;
//var connection = new SqlConnection();
//var da = new SqlDataAdapter("Select * from EDKB09_" + sb.serienbriefnr.ToString(), connection);
//var cb = new SqlCommandBuilder(da);
//connection.ConnectionString = connectionstring;
//connection.Open();
//da.Update(ndt);
//connection.Close();
//daten.AcceptChanges();
//Update_Data();
//da.Update(dt);
//var tdt = new DataTable("EDKB09_" + sb.serienbriefnr.ToString());
//DataRow tdr;
//int i;
//int ii;
//tdt = dt.Copy();
//tdt.Columns[0].ColumnName = "NRPAR00";
//daten.Tables.Clear();
//daten.Tables.Add(tdt.Copy());
//daten.Tables[0].TableName = "Daten";
//daten.WriteXml(@"x:\gaga.xml");
//daten.AcceptChanges();
//Update_Data();
////var connection = new SqlConnection();
////var da = new SqlDataAdapter("Select * from EDKB09_" + sb.serienbriefnr.ToString(), connection);
////var cb = new SqlCommandBuilder(da);
////connection.ConnectionString = connectionstring;
////connection.Open();
////da.Update(tdt);
////connection.Close();
}
public DataTable Fill_And_Get_Data(serienbrief sb)
{
var scmCmdToExecute = new SqlCommand();
int i;
SqlConnection con = new SqlConnection(connectionstring);
var dtToReturn = new DataTable();
var sdaAdapter = new SqlDataAdapter(scmCmdToExecute);
scmCmdToExecute.CommandText = "dbo.sp_edex_sb_fill_sbdata";
scmCmdToExecute.CommandType = CommandType.StoredProcedure;
scmCmdToExecute.Connection = con;
string Dokid = "";
try
{
scmCmdToExecute.Parameters.Add(new SqlParameter("@serienbriefnr", SqlDbType.Int, 4, ParameterDirection.Input, true, 10, 0, "", DataRowVersion.Proposed, sb.serienbriefnr));
scmCmdToExecute.Parameters.Add(new SqlParameter("@ROWCOUNT", SqlDbType.Int, 4, ParameterDirection.Input, true, 10, 0, "", DataRowVersion.Proposed, sb.dsempfaenger.Tables[0].Rows.Count));
scmCmdToExecute.Parameters.Add(new SqlParameter("@dokumentid", SqlDbType.Int, 4, ParameterDirection.Output, true, 10, 0, "", DataRowVersion.Proposed, 0));
scmCmdToExecute.Parameters.Add(new SqlParameter("@bedr", SqlDbType.Int, 4, ParameterDirection.Output, true, 10, 0, "", DataRowVersion.Proposed, 0));
scmCmdToExecute.Parameters.Add(new SqlParameter("@preview", SqlDbType.Int, 4, ParameterDirection.Input, true, 10, 0, "", DataRowVersion.Proposed, 1));
sdaAdapter.Fill(dtToReturn);
Dokid = scmCmdToExecute.Parameters["@dokumentid"].Value.ToString();
var loopTo = dtToReturn.Rows.Count - 1;
for (i = 0; i <= loopTo; i++)
{
dtToReturn.Rows[i]["Dokumentid"] = generate_key(Dokid);
Dokid = Dokid + 1;
if (scmCmdToExecute.Parameters["@bedr"].Value.ToString() == "1")
{
dtToReturn.Rows[i]["dokumentidbdr"] = generate_key(Dokid);
Dokid = Dokid + 1;
}
}
return dtToReturn;
}
catch (Exception ex)
{
throw new Exception("sp_check_dokumentreaktivierung::" + scmCmdToExecute.CommandText + "::Error occured." + ex.Message, ex);
}
finally
{
scmCmdToExecute.Dispose();
sdaAdapter.Dispose();
}
}
}
}