This commit is contained in:
Stefan Hutter
2024-12-12 19:04:58 +01:00
parent 220e5ff9cf
commit 67ad74f145
48 changed files with 326 additions and 148 deletions

View File

@@ -16,6 +16,8 @@ using System.Web.UI.WebControls;
using Syncfusion.Data;
using Syncfusion.WinForms.DataGrid.Interactivity;
using System.IO;
using Database;
using System.Linq.Expressions;
namespace OnDoc.UIControls
{
@@ -24,8 +26,12 @@ namespace OnDoc.UIControls
public int partnernr = 0;
public string partnerkurzname = "";
public bool bpperson_changed { get; set; } = false;
public bool partnersaldiert = false;
public bool person = false;
public bool personendokument { get; set; } = false;
public bool check_bp_person { get; set; } = false;
public Partnersuche()
{
InitializeComponent();
@@ -33,6 +39,14 @@ namespace OnDoc.UIControls
this.trefferlistedata.TableControl.DoubleClick += TableControl_DoubleClick;
}
public Partnersuche(bool personendokument, bool check_bp_person)
{
InitializeComponent();
this.personendokument = personendokument;
this.check_bp_person = check_bp_person;
clsPartner.set_connectionstring(AppParams.connectionstring);
this.trefferlistedata.TableControl.DoubleClick += TableControl_DoubleClick;
}
private void Form1_Load(object sender, EventArgs e)
{
this.SetDesktopLocation(Cursor.Position.X, Cursor.Position.Y);
@@ -40,8 +54,8 @@ namespace OnDoc.UIControls
try
{
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata, true);
if (trefferlistedata.RowCount > 0) {sfButton1.Enabled = true;}
if (trefferlistedata.RowCount > 0) { sfButton1.Enabled = true; }
trefferlistedata.SelectedIndex = 0;
}
catch { }
@@ -56,7 +70,7 @@ namespace OnDoc.UIControls
if (DivFnkt.IsNumeric(s))
{
trefferlistedata.DataSource = clsPartner.search_partner(s, 50, 0);
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata,true);
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata, true);
if (clsPartner.partnerliste.Rows.Count == 1)
{
@@ -69,7 +83,7 @@ namespace OnDoc.UIControls
{
string s = txtKurzname.Text.Trim();
trefferlistedata.DataSource = clsPartner.search_partner(s, 50, 1);
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata,true);
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata, true);
if (clsPartner.partnerliste.Rows.Count == 1)
{
trefferlistedata.SelectedIndex = 0;
@@ -78,12 +92,17 @@ namespace OnDoc.UIControls
}
try
{
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata,true);
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata, true);
trefferlistedata.SelectedIndex = 0;
try
{
partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref trefferlistedata, "nrpar00"));
partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
if (!bpperson_changed)
{
get_details();
//partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref trefferlistedata, "nrpar00"));
//partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
}
}
catch { }
}
@@ -93,7 +112,7 @@ namespace OnDoc.UIControls
if (trefferlistedata.View.Records.Count > 0) sfButton1.Enabled = true; else sfButton1.Enabled = false;
}
catch { sfButton1.Enabled=false; }
catch { sfButton1.Enabled = false; }
}
@@ -108,9 +127,10 @@ namespace OnDoc.UIControls
try
{
partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref trefferlistedata, "nrpar00"));
partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
get_details();
//partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref trefferlistedata, "nrpar00"));
//partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
//partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
}
catch { }
}
@@ -119,22 +139,93 @@ namespace OnDoc.UIControls
{
try
{
if (get_details())
{
this.DialogResult = DialogResult.OK;
this.Close();
}
} catch { }
}
public bool get_details()
{
try {
partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref this.trefferlistedata, "nrpar00"));
partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
this.DialogResult = DialogResult.OK;
this.Close();
if (!check_bp_person) return true;
if (check_bp_person && personendokument && partnernr < 99999999)
{
DB dB = new DB(AppParams.connectionstring);
dB.Get_Tabledata("SELECT TOP 1 person_nummer FROM Partner_Rel WHERE BP_Nr=" + partnernr.ToString() + " AND BP_Person_Rel_Typ=6 AND aktiv=1", false, true);
if (dB.dsdaten.Tables[0].Rows.Count > 0)
{
partnernr = Convert.ToInt32(dB.dsdaten.Tables[0].Rows[0][0]);
dB.Get_Tabledata("Select bkpar00, saldiert from partner where nrpar00=" + partnernr.ToString(), false, true);
if (dB.dsdaten.Tables[0].Rows.Count > 0)
{
partnerkurzname = dB.dsdaten.Tables[0].Rows[0][0].ToString();
partnersaldiert = Convert.ToBoolean(dB.dsdaten.Tables[0].Rows[0][1]);
bpperson_changed = true;
}
}
dB = null;
return true;
}
if (check_bp_person && !personendokument && partnernr > 100000000)
{
DB db = new DB(AppParams.connectionstring);
try
{
db.clear_parameter();
db.add_parameter("@personnr", partnernr.ToString());
db.Get_Tabledata("ondoc_bps_zur_person", true, false);
if (db.dsdaten.Tables[0].Rows.Count == 0) { return false; }
if (db.dsdaten.Tables[0].Rows.Count == 1)
{
partnerkurzname = db.dsdaten.Tables[0].Rows[0][0].ToString();
partnersaldiert = Convert.ToBoolean(db.dsdaten.Tables[0].Rows[0][1]);
partnernr = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0][2]);
bpperson_changed = true;
return true;
}
if (db.dsdaten.Tables[0].Rows.Count > 1)
{
MessageBox.Show("Für die gewählte Person exisieren mehrere BP's." + Environment.NewLine + "Bitte erneut suchen.", "Partnersuche", MessageBoxButtons.OK, MessageBoxIcon.Information);
return false;
}
}
catch { return false; }
finally { db=null; }
}
return true;
}
catch { }
catch { return false; }
}
private void sfButton1_Click(object sender, EventArgs e)
{
partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref this.trefferlistedata, "nrpar00"));
partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
this.DialogResult = DialogResult.OK;
this.Close();
if (get_details())
{
this.DialogResult = DialogResult.OK;
this.Close();
}
//partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref this.trefferlistedata, "nrpar00"));
//partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
//partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
}
private void sfButton2_Click(object sender, EventArgs e)
@@ -143,14 +234,15 @@ namespace OnDoc.UIControls
this.Close();
}
void TableControl_DoubleClick(object sender, System.EventArgs e)
{
try
try
{
partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref this.trefferlistedata, "nrpar00"));
partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
get_details();
//partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref this.trefferlistedata, "nrpar00"));
//partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
//partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
this.DialogResult = DialogResult.OK;
this.Close();
}
@@ -166,11 +258,11 @@ namespace OnDoc.UIControls
var dataRow = (e.DataRow.RowData as DataRowView).Row;
if (Convert.ToInt32(dataRow["Typ"]) == 1)
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Partner_16x16_32, e.Bounds.X+5 , e.Bounds.Y+3);
e.Graphics.DrawImage(OnDoc.Properties.Resources.Partner_16x16_32, e.Bounds.X + 5, e.Bounds.Y + 3);
}
else
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Person_16x16_32,e.Bounds.X + 5, e.Bounds.Y + 3);
e.Graphics.DrawImage(OnDoc.Properties.Resources.Person_16x16_32, e.Bounds.X + 5, e.Bounds.Y + 3);
}
Pen borderPen = new Pen(Color.LightGray);
e.Graphics.DrawLine(borderPen, e.Bounds.Right, e.Bounds.Top, e.Bounds.Right, e.Bounds.Bottom);