update vor anpassungen vorlagenauswahl fravoriten

This commit is contained in:
Stefan Hutter
2024-08-16 11:45:18 +02:00
parent fc8811829d
commit d9cd58edfe
52 changed files with 3145 additions and 421 deletions

View File

@@ -20,21 +20,37 @@ namespace OnDoc.DocMgmt
{
public partial class DokTypSelect : SfForm
{
public int dokumenttypnr { get; set; } = 0;
public bool favoriten { get; set; } = false;
//0="Einzelvorlagen"
//1="Dokumentpaket"
public int vorlagentype { get; set; } = 0;
public DokTypSelect()
{
InitializeComponent();
this.favoriten = false;
}
public DokTypSelect(bool favoriten)
{
InitializeComponent();
this.favoriten = favoriten;
RibbonButtonFavoriten.Checked = favoriten;
}
private void DokTypSelect_Load_1(object sender, EventArgs e)
{
this.Style.TitleBar.BackColor = Theaming.Titelbar();
this.Style.TitleBar.ForeColor = Theaming.TitelFontColor();
load_standard("");
if (this.favoriten) { Load_Favoriten(""); }
else { load_standard(""); }
}
public void load_standard(string filter)
{
Cursor = Cursors.WaitCursor;
@@ -43,15 +59,17 @@ namespace OnDoc.DocMgmt
AppParams.init();
}
treeViewAdv1.Enabled = false;
treeViewAdv1.Visible= false;
treeViewAdv1.Visible = false;
treeViewAdv1.BeginEdit();
treeViewAdv1.Nodes.Clear();
treeViewAdv1.LeftImageList = imageList1;
string where = "";
if (filter != "")
{
where = "and bezeichnung like '%" + filter.Replace(" ", "%") + "%'";
}
DB db = new DB(AppParams.connectionstring);
db.Get_Tabledata("Select dokumenttypnr as id, bezeichnung, node, OnBase_Dokumenttyp from View_Dokumenttypen_Relaunch where aktiv=1 " + where + " order by bezeichnung", false, true);
@@ -65,22 +83,21 @@ namespace OnDoc.DocMgmt
ds.Tables.Add(Struktur.Copy());
ds.Tables[0].TableName = "Struktur";
ds.Tables.Add(vorlagen.Copy());
ds.Relations.Add("TreeParentChild", ds.Tables[0].Columns["ID"], ds.Tables[0].Columns["ParentID"],false);
ds.Relations.Add("TreeParentChild", ds.Tables[0].Columns["ID"], ds.Tables[0].Columns["ParentID"], false);
ds.Relations.Add("VorlagenParent", ds.Tables[0].Columns["ID"], ds.Tables[1].Columns["node"], false);
foreach ( System.Data. DataRow dr in ds.Tables[0].Rows)
foreach (System.Data.DataRow dr in ds.Tables[0].Rows)
{
if (dr["Parentid"].ToString() == "0")
{
//Creates a TreeNode if the parent equals 0
TreeNodeAdv root = new TreeNodeAdv(dr["bezeichnung"].ToString());
root.Tag = Convert.ToInt32(dr["id"]) * 1;
root.Tag = Convert.ToInt32(dr["id"]) * -1;
root.TagObject = dr;
root.LeftImageIndices = new int[] { 0 };
treeViewAdv1.Nodes.Add(root);
//Recursively builds the tree
PopulateTree(dr, root);
}
}
//Expands all the tree nodes
@@ -88,7 +105,7 @@ namespace OnDoc.DocMgmt
treeViewAdv1.SelectedNode = treeViewAdv1.Nodes[0];
treeViewAdv1.EndEdit();
treeViewAdv1.Enabled = true;
treeViewAdv1.Visible=true;
treeViewAdv1.Visible = true;
if (ExternalCall.struktur != "")
{
treeViewAdv1.CollapseAll();
@@ -97,21 +114,17 @@ namespace OnDoc.DocMgmt
}
Cursor = Cursors.Default;
}
void treeViewAdv1_OnNodeAfterFound(object sender, Syncfusion.Windows.Forms.Tools.TreeNodeAdvAfterFindArgs e)
{
treeViewAdv1.CollapseAll();
treeViewAdv1.SelectedNode = e.Node;
treeViewAdv1.SelectedNode.ExpandAll();
treeViewAdv1.EnsureVisible(treeViewAdv1.SelectedNode);
}
public void PopulateSubTree(System.Data.DataRow dr, TreeNodeAdv pNode)
{
//To iterate through all the rows in the DataSet
foreach (System.Data.DataRow row in dr.GetChildRows("VorlagenParent"))
{
//Creating a TreeNode for each row
TreeNodeAdv cChild = new TreeNodeAdv(row["bezeichnung"].ToString() + " (" + row["OnBase_Dokumenttyp"].ToString() + ")");
TreeNodeAdv cChild = new TreeNodeAdv(row["bezeichnung"].ToString());
cChild.LeftImageIndices = new int[] { 1 };
cChild.Tag = Convert.ToInt32(row["id"]) * 1;
cChild.TagObject = row;
//Add cChild node to the pNode
pNode.Nodes.Add(cChild);
//Recursively build the tree
@@ -124,12 +137,14 @@ namespace OnDoc.DocMgmt
{
PopulateSubTree(dr, pNode);
}
//To iterate through all the rows in the DataSet
//To iterate through all the rows in the DataSet
foreach (System.Data.DataRow row in dr.GetChildRows("TreeParentChild"))
{
//Creating a TreeNode for each row
TreeNodeAdv cChild = new TreeNodeAdv(row["bezeichnung"].ToString());
cChild.Tag = Convert.ToInt32(row["id"]) * 1;
cChild.Tag = Convert.ToInt32(row["id"]) * -1;
cChild.LeftImageIndices = new int[] { 0 };
cChild.TagObject = row;
//Add cChild node to the pNode
pNode.Nodes.Add(cChild);
//Recursively build the tree
@@ -137,6 +152,94 @@ namespace OnDoc.DocMgmt
PopulateSubTree(row, cChild);
}
}
private void Load_Favoriten(string filter)
{
Cursor = Cursors.WaitCursor;
if (AppParams.connectionstring == "")
{
AppParams.init();
}
treeViewAdv1.Enabled = false;
treeViewAdv1.Visible = false;
treeViewAdv1.BeginEdit();
treeViewAdv1.Nodes.Clear();
DataTable vorlagen = new DataTable();
DataTable Struktur = new DataTable();
DataSet ds = new DataSet();
string sql = "Select * from view_favoriten_vorlagen where aktiv=1 and mitarbeiternr=" + AppParams.CurrentMitarbieter.ToString();
DB db = new DB(AppParams.connectionstring);
db.Get_Tabledata(sql, false, true);
ds.Tables.Add(db.dsdaten.Tables[0].Copy());
ds.Relations.Add("TreeParentChild", ds.Tables[0].Columns["pID"], ds.Tables[0].Columns["parentid"], false);
treeViewAdv1.LeftImageList = imageList1;
foreach (System.Data.DataRow dr in ds.Tables[0].Rows)
{
if (dr["Parentid"].ToString() == "0")
{
//Creates a TreeNode if the parent equals 0
TreeNodeAdv root = new TreeNodeAdv(dr["bez"].ToString());
root.Tag = Convert.ToInt32(dr["id"]) * 1;
root.TagObject = dr;
if (dr["id"].ToString() == "0")
{
root.LeftImageIndices = new int[] { 0 };
}
else
{
root.LeftImageIndices = new int[] { 1 };
}
;
treeViewAdv1.Nodes.Add(root);
//Recursively builds the tree
PopulateTree_Favoriten(dr, root);
}
}
treeViewAdv1.ExpandAll();
treeViewAdv1.SelectedNode = treeViewAdv1.Nodes[0];
treeViewAdv1.EndEdit();
treeViewAdv1.Enabled = true;
treeViewAdv1.Visible = true;
Cursor = Cursors.Default;
}
public void PopulateTree_Favoriten(System.Data.DataRow dr, TreeNodeAdv pNode)
{
//To iterate through all the rows in the DataSet
foreach (System.Data.DataRow row in dr.GetChildRows("TreeParentChild"))
{
//Creating a TreeNode for each row
TreeNodeAdv cChild = new TreeNodeAdv(row["bez"].ToString());
//Add cChild node to the pNode
pNode.Nodes.Add(cChild);
cChild.Tag = row["ID"].ToString();
cChild.TagObject = row;
if (row["ID"].ToString() == "0")
{
cChild.LeftImageIndices = new int[] { 0 };
}
else
{
cChild.LeftImageIndices = new int[] { 1 };
}
//Recursively build the tree
PopulateTree_Favoriten(row, cChild);
}
}
void treeViewAdv1_OnNodeAfterFound(object sender, Syncfusion.Windows.Forms.Tools.TreeNodeAdvAfterFindArgs e)
{
treeViewAdv1.CollapseAll();
treeViewAdv1.SelectedNode = e.Node;
treeViewAdv1.SelectedNode.ExpandAll();
treeViewAdv1.EnsureVisible(treeViewAdv1.SelectedNode);
}
private void ribbonButton1_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.Cancel;
@@ -172,7 +275,10 @@ namespace OnDoc.DocMgmt
{
try
{
dokumenttypnr = Convert.ToInt32(e.Node.Tag);
if (Convert.ToInt32(e.Node.Tag) < 0) { return; }
if (e.Node.LeftImageIndices[0] == 0) { return; }
System.Data.DataRow row = e.Node.TagObject as System.Data.DataRow;
dokumenttypnr = Convert.ToInt32(row["ID"]);
DialogResult = DialogResult.OK;
}
catch { }
@@ -192,10 +298,42 @@ namespace OnDoc.DocMgmt
{
try
{
dokumenttypnr = Convert.ToInt32(treeViewAdv1.SelectedNode.Tag);
System.Data.DataRow row = treeViewAdv1.SelectedNode.TagObject as System.Data.DataRow;
dokumenttypnr = Convert.ToInt32(row["id"]);
DialogResult = DialogResult.OK;
}
catch { }
}
private void RibbonButtonFavoriten_Click(object sender, EventArgs e)
{
if (RibbonButtonFavoriten.Checked == true)
{
Load_Favoriten("");
favoriten = true;
}
else
{
load_standard(RibbonTextSearch.TextBoxText);
favoriten = false;
}
}
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
{
try
{
if (treeViewAdv1.SelectedNode.LeftImageIndices[0] == 0) { zuFavoritenHinzufügenToolStripMenuItem.Visible = false; return; }
if (favoriten) { zuFavoritenHinzufügenToolStripMenuItem.Visible = false; }
else { zuFavoritenHinzufügenToolStripMenuItem.Visible = true; }
}
catch {}
}
private void zuFavoritenHinzufügenToolStripMenuItem_Click(object sender, EventArgs e)
{
DokTypFavoritenOrdner fo = new DokTypFavoritenOrdner(AppParams.CurrentMitarbieter, treeViewAdv1.SelectedNode);
fo.ShowDialog();
}
}
}