Update 20241112
This commit is contained in:
@@ -118,6 +118,7 @@ namespace OnDoc.UIControls
|
||||
|
||||
private void RibbonButtonExcelImport_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
System.Data.DataTable importdata = new System.Data.DataTable();
|
||||
openFileDialog1.Filter = "Excel-Dateien files (*.xlsx)|*.xlsx|CSV-Dateien (*.csv)|*.csv|Alle Dateien (*.*)|*.*";
|
||||
openFileDialog1.FilterIndex = 0;
|
||||
@@ -140,6 +141,8 @@ namespace OnDoc.UIControls
|
||||
else { selected_sheetname = sheets[0]; }
|
||||
|
||||
reader.Excel_To_Datatabable(openFileDialog1.FileName, selected_sheetname, true, ref importdata);
|
||||
init_progressbar("Daten importieren", importdata.Rows.Count);
|
||||
|
||||
if (importdata.Rows.Count < 1)
|
||||
{
|
||||
MessageBox.Show("Die ausgewählten Daten können nicht verwendet werden.", "Import", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
@@ -153,11 +156,13 @@ namespace OnDoc.UIControls
|
||||
return;
|
||||
}
|
||||
DB dB = new DB(AppParams.connectionstring);
|
||||
sb.dsempfaenger.Tables[0].Rows.Clear();
|
||||
//sb.dsempfaenger.Tables[0].Rows.Clear();
|
||||
sfDataGridEmpfaenger.DataSource = null;
|
||||
foreach (System.Data.DataRow dr in importdata.Rows)
|
||||
{
|
||||
add_progress();
|
||||
System.Data.DataRow r1 = sb.dsempfaenger.Tables[0].NewRow();
|
||||
foreach (DataColumn col in sb.dsempfaenger.Tables[0].Columns)
|
||||
foreach (DataColumn col in importdata.Columns)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -169,6 +174,11 @@ namespace OnDoc.UIControls
|
||||
}
|
||||
r1["STATUS"] = 0;
|
||||
r1["FEHLERCODE"] = 0;
|
||||
try
|
||||
{
|
||||
r1["inteingragnr"] = string.Empty;
|
||||
}
|
||||
catch { }
|
||||
dB.Get_Tabledata("Select bkpar00 from partner where nrpar00=" + r1[0].ToString(), false, true);
|
||||
if (dB.dsdaten.Tables[0].Rows.Count < 1) r1["Fehlercode"] = 1; else r1["fehlercode"] = 0;
|
||||
r1[1] = dB.dsdaten.Tables[0].Rows[0][0].ToString();
|
||||
@@ -176,6 +186,8 @@ namespace OnDoc.UIControls
|
||||
}
|
||||
dB = null;
|
||||
refresh_empfaenger(sb.dsempfaenger.Tables[0]);
|
||||
|
||||
finish_progress();
|
||||
//sfDataGridEmpfaenger.DataSource = importdata;
|
||||
}
|
||||
}
|
||||
@@ -184,6 +196,9 @@ namespace OnDoc.UIControls
|
||||
{
|
||||
sfDataGridEmpfaenger.DataSource = null;
|
||||
sfDataGridEmpfaenger.DataSource = dt;
|
||||
update_zahlen();
|
||||
}
|
||||
private void refresh_spalten() {
|
||||
//sfDataGridEmpfaenger.Columns["STATUS"].Visible = false;
|
||||
//sfDataGridEmpfaenger.Columns["FEHLERCODE"].Visible = false;
|
||||
//sfDataGridEmpfaenger.Columns["BLKUNDE"].Visible = false;
|
||||
@@ -193,7 +208,17 @@ namespace OnDoc.UIControls
|
||||
//sfDataGridEmpfaenger.Columns["ERSTELLER"].Visible = false;
|
||||
//sfDataGridEmpfaenger.Columns["DRUCKJOBID"].Visible = false;
|
||||
//sfDataGridEmpfaenger.Columns["AKTIV"].Visible = false;
|
||||
update_zahlen();
|
||||
sfDataGridEmpfaenger.Columns["Zustelladresse"].Visible = false;
|
||||
sfDataGridEmpfaenger.Columns["Briefanrede1"].Visible = false;
|
||||
sfDataGridEmpfaenger.Columns["Briefanrede2"].Visible = false;
|
||||
sfDataGridEmpfaenger.Columns["Anrede"].Width = 0;
|
||||
sfDataGridEmpfaenger.Columns["Name"].Visible = false;
|
||||
sfDataGridEmpfaenger.Columns["Vorname"].Visible = false;
|
||||
sfDataGridEmpfaenger.Columns["Strasse"].Visible = false;
|
||||
sfDataGridEmpfaenger.Columns["PLZ"].Visible = false;
|
||||
sfDataGridEmpfaenger.Columns["Ort"].Visible = false;
|
||||
|
||||
|
||||
}
|
||||
private void init_empfaenger(int serienbriefnr)
|
||||
{
|
||||
@@ -354,35 +379,81 @@ namespace OnDoc.UIControls
|
||||
|
||||
|
||||
|
||||
private void treeViewAdv1_NodeMouseClick(object sender, TreeViewAdvMouseClickEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void update_zahlen()
|
||||
{
|
||||
try
|
||||
{
|
||||
int inbearbeitung = 0;
|
||||
int fehlerhaft = 0;
|
||||
int generiert = 0;
|
||||
int abgeschlossen = 0;
|
||||
sb.dsempfaenger.AcceptChanges();
|
||||
DataView dv = new DataView(sb.dsempfaenger.Tables[0]);
|
||||
dv.RowFilter = "Status = 0";
|
||||
treeViewAdv1.Nodes[0].Text = "In Bearbeitung (" + dv.Count.ToString() + ")";
|
||||
inbearbeitung = dv.Count;
|
||||
dv.RowFilter = "Status =-1";
|
||||
treeViewAdv1.Nodes[1].Text = "Fehlerhaft (" + dv.Count.ToString() + ")";
|
||||
fehlerhaft = dv.Count;
|
||||
if (dv.Count > 0) treeViewAdv1.Nodes[1].TextColor = Color.Red; else treeViewAdv1.Nodes[1].TextColor = Color.Black;
|
||||
if (dv.Count > 0) { }
|
||||
dv.RowFilter = "Status = 1";
|
||||
treeViewAdv1.Nodes[2].Text = "Generiert (" + dv.Count.ToString() + ")";
|
||||
generiert = dv.Count;
|
||||
dv.RowFilter = "Status = 2";
|
||||
treeViewAdv1.Nodes[3].Text = "Abgeschlossen (" + dv.Count.ToString() + ")";
|
||||
abgeschlossen = dv.Count;
|
||||
treeViewAdv1.SelectedNode = treeViewAdv1.Nodes[0];
|
||||
update_grid();
|
||||
|
||||
RibbonButtonGenerateSB.Enabled = false;
|
||||
RibbonButtonArchivierenUndAbschlessen.Enabled = false;
|
||||
ribbonButtonDruckstapel.Enabled = false;
|
||||
if (inbearbeitung > 0) { RibbonButtonGenerateSB.Enabled = true; }
|
||||
if (fehlerhaft == 0 && inbearbeitung == 0 && generiert > 0) {
|
||||
RibbonButtonArchivierenUndAbschlessen.Enabled = true;
|
||||
ribbonButtonDruckstapel.Enabled = true;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
catch { }
|
||||
|
||||
}
|
||||
|
||||
private void Set_Functions(int type)
|
||||
{
|
||||
if (type == 1 || type == 2)
|
||||
{
|
||||
sfDataGridEmpfaenger.AllowEditing = true;
|
||||
ctxmenuEmpfaenger.Enabled = true;
|
||||
partnerHinzufügenToolStripMenuItem.Visible = true;
|
||||
partnerLöschenToolStripMenuItem.Visible = true;
|
||||
ausListeLöschenToolStripMenuItem.Visible = false;
|
||||
erneutGenerierenToolStripMenuItem.Visible = false;
|
||||
docPreview1.Visible = false;
|
||||
|
||||
|
||||
}
|
||||
if (type == 3 || type==4)
|
||||
{
|
||||
partnerHinzufügenToolStripMenuItem.Visible = false;
|
||||
partnerLöschenToolStripMenuItem.Visible = false;
|
||||
sfDataGridEmpfaenger.AllowEditing = false;
|
||||
ausListeLöschenToolStripMenuItem.Visible = true;
|
||||
erneutGenerierenToolStripMenuItem.Visible = true;
|
||||
docPreview1.clear_viewer();
|
||||
docPreview1.Visible = true;
|
||||
//ctxmenuEmpfaenger.Enabled = false;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void treeViewAdv1_AfterSelect(object sender, EventArgs e)
|
||||
{
|
||||
update_grid();
|
||||
}
|
||||
private void update_grid()
|
||||
{
|
||||
string nodetext = treeViewAdv1.SelectedNode.Text;
|
||||
DataView dv = new DataView(sb.dsempfaenger.Tables[0]);
|
||||
@@ -393,25 +464,32 @@ namespace OnDoc.UIControls
|
||||
dv.RowFilter = "Status = 0";
|
||||
sfDataGridEmpfaenger.DataSource = null;
|
||||
sfDataGridEmpfaenger.DataSource = dv;
|
||||
refresh_spalten();
|
||||
Set_Functions(1);
|
||||
break;
|
||||
case "Fehle":
|
||||
dv.RowFilter = "Status=-1";
|
||||
sfDataGridEmpfaenger.DataSource = null;
|
||||
sfDataGridEmpfaenger.DataSource = dv;
|
||||
refresh_spalten();
|
||||
Set_Functions(2);
|
||||
break;
|
||||
case "Gener":
|
||||
dv.RowFilter = "Status = 1";
|
||||
sfDataGridEmpfaenger.DataSource = null;
|
||||
sfDataGridEmpfaenger.DataSource = dv;
|
||||
refresh_spalten(); Set_Functions(3);
|
||||
break;
|
||||
case "Abges":
|
||||
dv.RowFilter = "Status = 2";
|
||||
sfDataGridEmpfaenger.DataSource = null;
|
||||
sfDataGridEmpfaenger.DataSource = dv;
|
||||
refresh_spalten();
|
||||
Set_Functions(4);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void ribbonbuttonsave_Click(object sender, EventArgs e)
|
||||
{
|
||||
@@ -433,7 +511,14 @@ namespace OnDoc.UIControls
|
||||
btnsbloadok.Left = pnlLoad.Width - btnsbloadok.Width - 20;
|
||||
if (sfdatagridsbload.RowCount == 0) this.btnsbloadok.Enabled = false;
|
||||
// vorlage_auslesen_und_speichern();
|
||||
|
||||
System.Windows.Forms.Application.DoEvents();
|
||||
|
||||
ribbonbuttonsave.Enabled = true;
|
||||
RibbonButtonExcelImport.Enabled = true;
|
||||
RibbonButtonEditWord.Enabled = true;
|
||||
grpDruckstapel.Visible = false;
|
||||
docPreview1.Visible = false;
|
||||
}
|
||||
|
||||
private void bntsbloadok_Click(object sender, EventArgs e)
|
||||
@@ -670,6 +755,8 @@ namespace OnDoc.UIControls
|
||||
vorlagendaten_aufbereiten();
|
||||
update_serienbriefdaten(false);
|
||||
update_zahlen();
|
||||
treeViewAdv1.SelectedNode = treeViewAdv1.Nodes[2];
|
||||
update_grid();
|
||||
|
||||
}
|
||||
|
||||
@@ -1028,7 +1115,7 @@ namespace OnDoc.UIControls
|
||||
dt.Columns.Add(sb.dsempfaenger.Tables[0].Columns[i].ColumnName);
|
||||
System.Data.DataRow[] dv;
|
||||
|
||||
dv = sb.dsempfaenger.Tables[0].Select("Dokumentid='' or dokumentid<>''");
|
||||
dv = sb.dsempfaenger.Tables[0].Select("Status=0");
|
||||
|
||||
|
||||
foreach (System.Data.DataRow dr in dv)
|
||||
@@ -1231,6 +1318,7 @@ namespace OnDoc.UIControls
|
||||
try
|
||||
{
|
||||
treeviewDruckstapel.SelectedNode = treeviewDruckstapel.Nodes[0];
|
||||
update_grid();
|
||||
}
|
||||
catch { }
|
||||
grpDruckstapel.Visible = true;
|
||||
@@ -1253,96 +1341,133 @@ namespace OnDoc.UIControls
|
||||
|
||||
private void RibbonButtonArchivierenUndAbschlessen_Click(object sender, EventArgs e)
|
||||
{
|
||||
DB db = new DB(AppParams.connectionstring);
|
||||
DataView dv = new DataView(sb.dsempfaenger.Tables[0]);
|
||||
dv.RowFilter = "Status = 1";
|
||||
dv.Sort = "Partnernr";
|
||||
foreach (DataRowView rowView in dv)
|
||||
try
|
||||
{
|
||||
OnBaseDocUpload.OnBaseDokument onbasedoc = new OnBaseDocUpload.OnBaseDokument();
|
||||
System.Data.DataRow dr = rowView.Row;
|
||||
db.clear_parameter();
|
||||
db.add_parameter("@serienbriefnr", sb.serienbriefnr.ToString());
|
||||
db.add_parameter("@intEintragnr", dr["intEintragnr"].ToString());
|
||||
db.add_parameter("@partnernr", dr["Partnernr"].ToString());
|
||||
db.Get_Tabledata("sp_get_onbase_parameters_sb", true, false);
|
||||
if (db.dsdaten.Tables[0].Rows[0]["BpNummer"].ToString() == "")
|
||||
|
||||
DB db = new DB(AppParams.connectionstring);
|
||||
DataView dv = new DataView(sb.dsempfaenger.Tables[0]);
|
||||
init_progressbar("Dokumente archivieren", dv.Count);
|
||||
dv.RowFilter = "Status = 1";
|
||||
dv.Sort = "Partnernr";
|
||||
foreach (DataRowView rowView in dv)
|
||||
{
|
||||
onbasedoc.personNummer = db.dsdaten.Tables[0].Rows[0]["PersonNummer"].ToString();
|
||||
onbasedoc.bpNummer = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
onbasedoc.bpNummer = db.dsdaten.Tables[0].Rows[0]["BpNummer"].ToString();
|
||||
onbasedoc.personNummer = "";
|
||||
}
|
||||
onbasedoc.dokumentDatum = db.dsdaten.Tables[0].Rows[0]["DokumentDatum"].ToString();
|
||||
onbasedoc.dokumentTyp = db.dsdaten.Tables[0].Rows[0]["dokumenttyp"].ToString();
|
||||
onbasedoc.dateiTyp= db.dsdaten.Tables[0].Rows[0]["dateityp"].ToString();
|
||||
var Attribute = new List<Model.OnBaseDocUpload.attribute>();
|
||||
foreach (System.Data.DataRow rw in db.dsdaten.Tables[1].Rows)
|
||||
{
|
||||
var p = new OnBaseDocUpload.attribute()
|
||||
add_progress();
|
||||
OnBaseDocUpload.OnBaseDokument onbasedoc = new OnBaseDocUpload.OnBaseDokument();
|
||||
System.Data.DataRow dr = rowView.Row;
|
||||
db.clear_parameter();
|
||||
db.add_parameter("@serienbriefnr", sb.serienbriefnr.ToString());
|
||||
db.add_parameter("@intEintragnr", dr["intEintragnr"].ToString());
|
||||
db.add_parameter("@partnernr", dr["Partnernr"].ToString());
|
||||
db.Get_Tabledata("sp_get_onbase_parameters_sb", true, false);
|
||||
if (db.dsdaten.Tables[0].Rows[0]["BpNummer"].ToString() == "")
|
||||
{
|
||||
fieldname = rw["fieldname"].ToString(),
|
||||
fieldvalue = rw["fieldvalue"].ToString()
|
||||
};
|
||||
Attribute.Add(p);
|
||||
}
|
||||
onbasedoc.attributes = Attribute;
|
||||
db.Get_Tabledata("Select dbo.BinaryToBase64(dokument) from edex_sb_serienbrief_dokument where serienbriefnr=" + sb.serienbriefnr.ToString() + " and inteintragnr=" + dr["IntEintragNr"].ToString(), false, true);
|
||||
onbasedoc.dokumentDatei = db.dsdaten.Tables[0].Rows[0][0].ToString();
|
||||
string URL = "";
|
||||
string response = "";
|
||||
|
||||
string jsonstring = Newtonsoft.Json.JsonConvert.SerializeObject(onbasedoc);
|
||||
URL = AppParams.RESTURI + "api/ArchivSBDoc";
|
||||
URL = URL + "?sbnr=" + sb.serienbriefnr.ToString();
|
||||
URL = URL + "&intid=" + dr["inteintragnr"].ToString();
|
||||
URL = URL + "&partnernr=" + dr["partnernr"].ToString();
|
||||
|
||||
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(URL);
|
||||
|
||||
httpWebRequest.ContentType = "text/json";
|
||||
httpWebRequest.Method = "POST";
|
||||
|
||||
|
||||
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
|
||||
{
|
||||
string json = jsonstring;
|
||||
|
||||
streamWriter.Write(json);
|
||||
streamWriter.Flush();
|
||||
}
|
||||
|
||||
var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
|
||||
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
|
||||
{
|
||||
var result = streamReader.ReadToEnd();
|
||||
if (httpResponse.StatusCode == HttpStatusCode.OK)
|
||||
onbasedoc.personNummer = db.dsdaten.Tables[0].Rows[0]["PersonNummer"].ToString();
|
||||
onbasedoc.bpNummer = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
dr["STATUS"] = 2; ;
|
||||
onbasedoc.bpNummer = db.dsdaten.Tables[0].Rows[0]["BpNummer"].ToString();
|
||||
onbasedoc.personNummer = "";
|
||||
}
|
||||
onbasedoc.dokumentDatum = db.dsdaten.Tables[0].Rows[0]["DokumentDatum"].ToString();
|
||||
onbasedoc.dokumentTyp = db.dsdaten.Tables[0].Rows[0]["dokumenttyp"].ToString();
|
||||
onbasedoc.dateiTyp = db.dsdaten.Tables[0].Rows[0]["dateityp"].ToString();
|
||||
var Attribute = new List<Model.OnBaseDocUpload.attribute>();
|
||||
foreach (System.Data.DataRow rw in db.dsdaten.Tables[1].Rows)
|
||||
{
|
||||
var p = new OnBaseDocUpload.attribute()
|
||||
{
|
||||
fieldname = rw["fieldname"].ToString(),
|
||||
fieldvalue = rw["fieldvalue"].ToString()
|
||||
};
|
||||
Attribute.Add(p);
|
||||
}
|
||||
onbasedoc.attributes = Attribute;
|
||||
db.Get_Tabledata("Select dbo.BinaryToBase64(dokument) from edex_sb_serienbrief_dokument where serienbriefnr=" + sb.serienbriefnr.ToString() + " and inteintragnr=" + dr["IntEintragNr"].ToString(), false, true);
|
||||
onbasedoc.dokumentDatei = db.dsdaten.Tables[0].Rows[0][0].ToString();
|
||||
string URL = "";
|
||||
string response = "";
|
||||
|
||||
string jsonstring = Newtonsoft.Json.JsonConvert.SerializeObject(onbasedoc);
|
||||
URL = AppParams.RESTURI + "api/ArchivSBDoc";
|
||||
URL = URL + "?sbnr=" + sb.serienbriefnr.ToString();
|
||||
URL = URL + "&intid=" + dr["inteintragnr"].ToString();
|
||||
URL = URL + "&partnernr=" + dr["partnernr"].ToString();
|
||||
|
||||
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(URL);
|
||||
|
||||
httpWebRequest.ContentType = "text/json";
|
||||
httpWebRequest.Method = "POST";
|
||||
httpWebRequest.Headers["Authorization"] = "Bearer " + AppParams.apikey;
|
||||
|
||||
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
|
||||
{
|
||||
string json = jsonstring;
|
||||
|
||||
streamWriter.Write(json);
|
||||
streamWriter.Flush();
|
||||
}
|
||||
|
||||
var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
|
||||
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
|
||||
{
|
||||
var result = streamReader.ReadToEnd();
|
||||
if (httpResponse.StatusCode == HttpStatusCode.OK)
|
||||
{
|
||||
dr["STATUS"] = 2; ;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//using (HttpWebResponse response = webRequest.GetResponse() as HttpWebResponse)
|
||||
//{
|
||||
// if (response.StatusCode == HttpStatusCode.OK)
|
||||
// {
|
||||
// StreamReader reader = new StreamReader(response.GetResponseStream());
|
||||
// string responseContent = reader.ReadToEnd();
|
||||
|
||||
// dok = Newtonsoft.Json.JsonConvert.DeserializeObject<clsdok>(responseContent);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// Logging.Logging.Error(URL + ": " + response.StatusCode.ToString() + " / " + response.StatusDescription, "Clinet - DokList GetDocument", "");
|
||||
// }
|
||||
//}
|
||||
sb.dsempfaenger.AcceptChanges();
|
||||
update_zahlen();
|
||||
}
|
||||
sb.dsempfaenger.AcceptChanges();
|
||||
update_zahlen();
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.Message);
|
||||
}
|
||||
finally
|
||||
{
|
||||
finish_progress();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void ausListeLöschenToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
sfDataGridEmpfaenger.AllowDeleting = true;
|
||||
sfDataGridEmpfaenger.DeleteSelectedRecords();
|
||||
sfDataGridEmpfaenger.AllowDeleting = false;
|
||||
refresh_empfaenger(sb.dsempfaenger.Tables[0]);
|
||||
return;
|
||||
}
|
||||
|
||||
private void erneutGenerierenToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
System.Data.DataTable dt = sb.dsempfaenger.Tables[0];
|
||||
var records = sfDataGridEmpfaenger.View.GetSelectedRecords();
|
||||
|
||||
if (records.Count < 1) { return; }
|
||||
int[] inteintraege = new int[records.Count];
|
||||
int i = 0;
|
||||
foreach (var record in records)
|
||||
{
|
||||
var datarow = record as DataRowView;
|
||||
string documentid = datarow["dokumentid"].ToString();
|
||||
inteintraege[i] = Convert.ToInt32(datarow["inteintragnr"].ToString());
|
||||
i = i + 1;
|
||||
|
||||
}
|
||||
for (int i1 = 0; i1 < i; i1++)
|
||||
{
|
||||
System.Data.DataRow dr = sb.dsempfaenger.Tables[0].Select("inteintragnr='" + inteintraege[i1].ToString()+"'").FirstOrDefault(); // finds all rows with id==2 and selects first or null if haven't found any
|
||||
if (dr != null)
|
||||
{
|
||||
dr["status"] = "0"; //changes the Product_name
|
||||
}
|
||||
}
|
||||
|
||||
refresh_empfaenger(sb.dsempfaenger.Tables[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user