From 01096c6b5f7d638d200d39396eaf9ebc1d9a93c7 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 1 Jul 2020 14:08:25 +0200 Subject: [PATCH 01/18] Start new release for tech sheet (edilchimica) --- MP-LAND/Web.config | 709 +++++++++--------- MP-TAB/MP-TAB.csproj | 8 + MP-TAB/TechSheet.aspx | 31 + MP-TAB/TechSheet.aspx.cs | 17 + MP-TAB/TechSheet.aspx.designer.cs | 35 + MP-TAB/WebUserControls/mod_checkHttps.ascx.cs | 54 +- MapoDb/MtcDataModelArchive.cs | 102 +-- 7 files changed, 528 insertions(+), 428 deletions(-) create mode 100644 MP-TAB/TechSheet.aspx create mode 100644 MP-TAB/TechSheet.aspx.cs create mode 100644 MP-TAB/TechSheet.aspx.designer.cs diff --git a/MP-LAND/Web.config b/MP-LAND/Web.config index 40996d58..3786085b 100644 --- a/MP-LAND/Web.config +++ b/MP-LAND/Web.config @@ -4,357 +4,360 @@ http://go.microsoft.com/fwlink/?LinkId=301880 --> - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MP-TAB/MP-TAB.csproj b/MP-TAB/MP-TAB.csproj index 2634b688..59c772b5 100644 --- a/MP-TAB/MP-TAB.csproj +++ b/MP-TAB/MP-TAB.csproj @@ -640,6 +640,7 @@ + @@ -857,6 +858,13 @@ StoricoTC.aspx + + TechSheet.aspx + ASPXCodeBehind + + + TechSheet.aspx + Test.aspx ASPXCodeBehind diff --git a/MP-TAB/TechSheet.aspx b/MP-TAB/TechSheet.aspx new file mode 100644 index 00000000..ee8c4d6c --- /dev/null +++ b/MP-TAB/TechSheet.aspx @@ -0,0 +1,31 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/WebMasterPages/Bootstrap.Master" AutoEventWireup="true" CodeBehind="TechSheet.aspx.cs" Inherits="MoonProTablet.TechSheet" %> + +<%@ Register Src="~/WebUserControls/mod_directLinks.ascx" TagPrefix="uc1" TagName="mod_directLinks" %> +<%@ Register Src="~/WebUserControls/mod_dettMacchina.ascx" TagPrefix="uc1" TagName="mod_dettMacchina" %> + + + + +
+
+
+ + + + AGGIUNTA MODULO SCHEDA + + <%--
+
+ Reg. SCARTI +
+
+ Reg.CONTROLLI +
+
--%> +
+
+ +
+
+
+
diff --git a/MP-TAB/TechSheet.aspx.cs b/MP-TAB/TechSheet.aspx.cs new file mode 100644 index 00000000..4e9d5f56 --- /dev/null +++ b/MP-TAB/TechSheet.aspx.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace MoonProTablet +{ + public partial class TechSheet : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + + } + } +} \ No newline at end of file diff --git a/MP-TAB/TechSheet.aspx.designer.cs b/MP-TAB/TechSheet.aspx.designer.cs new file mode 100644 index 00000000..a539cf6d --- /dev/null +++ b/MP-TAB/TechSheet.aspx.designer.cs @@ -0,0 +1,35 @@ +//------------------------------------------------------------------------------ +// +// Codice generato da uno strumento. +// +// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se +// il codice viene rigenerato. +// +//------------------------------------------------------------------------------ + +namespace MoonProTablet +{ + + + public partial class TechSheet + { + + /// + /// Controllo mod_dettMacchina. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::MoonProTablet.WebUserControls.mod_dettMacchina mod_dettMacchina; + + /// + /// Controllo mod_directLinks. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::MoonProTablet.WebUserControls.mod_directLinks mod_directLinks; + } +} diff --git a/MP-TAB/WebUserControls/mod_checkHttps.ascx.cs b/MP-TAB/WebUserControls/mod_checkHttps.ascx.cs index e02365f6..07a6d3c1 100644 --- a/MP-TAB/WebUserControls/mod_checkHttps.ascx.cs +++ b/MP-TAB/WebUserControls/mod_checkHttps.ascx.cs @@ -8,33 +8,39 @@ using System.Web.UI.WebControls; namespace MoonProTablet.WebUserControls { - public partial class mod_checkHttps : SteamWare.UserControl - { - protected void Page_Load(object sender, EventArgs e) + public partial class mod_checkHttps : SteamWare.UserControl { - if (!Page.IsPostBack) - { - // SOLO SE è abilitato QR reader... - if (memLayer.ML.CRB("EmbedQRead")) - { - // se pagina richiesta in http ma con QR code rimando in https... - bool needHttps = memLayer.ML.CRS("forceSecurePages").IndexOf(titolo) >= 0; - if (needHttps != Request.IsSecureConnection) - { - string newUrl = Request.Url.AbsoluteUri; - // in questo caso scambio http <--> https - if (needHttps) + protected void Page_Load(object sender, EventArgs e) + { + if (!Page.IsPostBack) { - newUrl = newUrl.Replace("http://", "https://"); +#if DEBUG + // in debug NON gestisco cambio http/https... + + +#else + // SOLO SE è abilitato QR reader... + if (memLayer.ML.CRB("EmbedQRead")) + { + // se pagina richiesta in http ma con QR code rimando in https... + bool needHttps = memLayer.ML.CRS("forceSecurePages").IndexOf(titolo) >= 0; + if (needHttps != Request.IsSecureConnection) + { + string newUrl = Request.Url.AbsoluteUri; + // in questo caso scambio http <--> https + if (needHttps) + { + newUrl = newUrl.Replace("http://", "https://"); + } + else + { + newUrl = newUrl.Replace("https://", "http://"); + } + Response.Redirect(newUrl); + } + } +#endif } - else - { - newUrl = newUrl.Replace("https://", "http://"); - } - Response.Redirect(newUrl); - } } - } } - } } \ No newline at end of file diff --git a/MapoDb/MtcDataModelArchive.cs b/MapoDb/MtcDataModelArchive.cs index 46b81471..51bc2786 100644 --- a/MapoDb/MtcDataModelArchive.cs +++ b/MapoDb/MtcDataModelArchive.cs @@ -5,60 +5,60 @@ using System.Collections.Generic; namespace MapoDb { - /// - /// Classe gestione archivio modelli MTC dei vari IOB - /// - public class MtcDataModelArchive - { /// - /// Database corrente MongoDB + /// Classe gestione archivio modelli MTC dei vari IOB /// - IMongoDatabase database; - /// - /// Dizionario conf macchine - /// - public Dictionary> machineDataItems = new Dictionary>(); + public class MtcDataModelArchive + { + /// + /// Database corrente MongoDB + /// + IMongoDatabase database; + /// + /// Dizionario conf macchine + /// + public Dictionary> machineDataItems = new Dictionary>(); - /// - /// Classe gestione archivio allarmi - /// - public MtcDataModelArchive() - { - database = memLayer.ML.getMongoDatabase("MAPO"); - } - /// - /// Singleton gestione istanza AlarmsManager - /// - public static MtcDataModelArchive man = new MtcDataModelArchive(); - /// - /// Salva il DataModel XML della macchina indicata - /// - /// - /// - /// - public bool saveMachineDataItems(string idxMacchina, List dataItems) - { - bool answ = false; - try - { - var collMtcSetup = database.GetCollection("MtcSetup"); - // compongo filtro ricerca e metodo update - var filter = Builders.Filter.Eq(u => u.idxMacchina, idxMacchina); - // chiamo update: cerco riga, se c'è aggiorno sennò creo - MtcSetup newDoc = new MtcSetup() + /// + /// Classe gestione archivio allarmi + /// + public MtcDataModelArchive() { - idxMacchina = idxMacchina, - dataItems = dataItems - }; - // elimino se ci fosse già... - collMtcSetup.DeleteMany(filter); - // inserisco ex novo! - collMtcSetup.InsertOne(newDoc); - answ = true; - } - catch - { } - return answ; + database = memLayer.ML.getMongoDatabase("MAPO"); + } + /// + /// Singleton gestione istanza AlarmsManager + /// + public static MtcDataModelArchive man = new MtcDataModelArchive(); + /// + /// Salva i dataItems della macchina indicata + /// + /// + /// + /// + public bool saveMachineDataItems(string idxMacchina, List dataItems) + { + bool answ = false; + try + { + var collMtcSetup = database.GetCollection("MtcSetup"); + // compongo filtro ricerca e metodo update + var filter = Builders.Filter.Eq(u => u.idxMacchina, idxMacchina); + // chiamo update: cerco riga, se c'è aggiorno sennò creo + MtcSetup newDoc = new MtcSetup() + { + idxMacchina = idxMacchina, + dataItems = dataItems + }; + // elimino se ci fosse già... + collMtcSetup.DeleteMany(filter); + // inserisco ex novo! + collMtcSetup.InsertOne(newDoc); + answ = true; + } + catch + { } + return answ; + } } - } } From fd3d42f73bb87b4a848725167f0ef99cc767eab6 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 1 Jul 2020 18:30:07 +0200 Subject: [PATCH 02/18] Added first release of SheetTech page & mod --- MP-TAB/MP-TAB.csproj | 18 +- MP-TAB/{TechSheet.aspx => SheetTech.aspx} | 17 +- .../{TechSheet.aspx.cs => SheetTech.aspx.cs} | 2 +- ...designer.cs => SheetTech.aspx.designer.cs} | 11 +- MP-TAB/WebUserControls/cmp_sheetTech.ascx | 35 + MP-TAB/WebUserControls/cmp_sheetTech.ascx.cs | 17 + .../cmp_sheetTech.ascx.designer.cs | 44 + MapoDb/DS_SheetTech.Designer.cs | 7627 +++++++++++++++++ MapoDb/DS_SheetTech.xsc | 9 + MapoDb/DS_SheetTech.xsd | 791 ++ MapoDb/DS_SheetTech.xss | 1 + MapoDb/MapoDb.csproj | 16 + 12 files changed, 8568 insertions(+), 20 deletions(-) rename MP-TAB/{TechSheet.aspx => SheetTech.aspx} (56%) rename MP-TAB/{TechSheet.aspx.cs => SheetTech.aspx.cs} (82%) rename MP-TAB/{TechSheet.aspx.designer.cs => SheetTech.aspx.designer.cs} (74%) create mode 100644 MP-TAB/WebUserControls/cmp_sheetTech.ascx create mode 100644 MP-TAB/WebUserControls/cmp_sheetTech.ascx.cs create mode 100644 MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs create mode 100644 MapoDb/DS_SheetTech.Designer.cs create mode 100644 MapoDb/DS_SheetTech.xsc create mode 100644 MapoDb/DS_SheetTech.xsd create mode 100644 MapoDb/DS_SheetTech.xss diff --git a/MP-TAB/MP-TAB.csproj b/MP-TAB/MP-TAB.csproj index 59c772b5..5762a80b 100644 --- a/MP-TAB/MP-TAB.csproj +++ b/MP-TAB/MP-TAB.csproj @@ -640,7 +640,7 @@ - + @@ -659,6 +659,7 @@ + @@ -858,12 +859,12 @@ StoricoTC.aspx - - TechSheet.aspx + + SheetTech.aspx ASPXCodeBehind - - TechSheet.aspx + + SheetTech.aspx Test.aspx @@ -936,6 +937,13 @@ cmp_selPzPallet.ascx + + cmp_sheetTech.ascx + ASPXCodeBehind + + + cmp_sheetTech.ascx + mod_checkHttps.ascx ASPXCodeBehind diff --git a/MP-TAB/TechSheet.aspx b/MP-TAB/SheetTech.aspx similarity index 56% rename from MP-TAB/TechSheet.aspx rename to MP-TAB/SheetTech.aspx index ee8c4d6c..422afc44 100644 --- a/MP-TAB/TechSheet.aspx +++ b/MP-TAB/SheetTech.aspx @@ -1,7 +1,9 @@ -<%@ Page Title="" Language="C#" MasterPageFile="~/WebMasterPages/Bootstrap.Master" AutoEventWireup="true" CodeBehind="TechSheet.aspx.cs" Inherits="MoonProTablet.TechSheet" %> +<%@ Page Title="" Language="C#" MasterPageFile="~/WebMasterPages/Bootstrap.Master" AutoEventWireup="true" CodeBehind="SheetTech.aspx.cs" Inherits="MoonProTablet.SheetTech" %> <%@ Register Src="~/WebUserControls/mod_directLinks.ascx" TagPrefix="uc1" TagName="mod_directLinks" %> <%@ Register Src="~/WebUserControls/mod_dettMacchina.ascx" TagPrefix="uc1" TagName="mod_dettMacchina" %> +<%@ Register Src="~/WebUserControls/cmp_sheetTech.ascx" TagPrefix="uc1" TagName="cmp_sheetTech" %> + @@ -10,18 +12,7 @@
- - - AGGIUNTA MODULO SCHEDA - - <%--
-
- Reg. SCARTI -
-
- Reg.CONTROLLI -
-
--%> +
diff --git a/MP-TAB/TechSheet.aspx.cs b/MP-TAB/SheetTech.aspx.cs similarity index 82% rename from MP-TAB/TechSheet.aspx.cs rename to MP-TAB/SheetTech.aspx.cs index 4e9d5f56..4690595e 100644 --- a/MP-TAB/TechSheet.aspx.cs +++ b/MP-TAB/SheetTech.aspx.cs @@ -7,7 +7,7 @@ using System.Web.UI.WebControls; namespace MoonProTablet { - public partial class TechSheet : System.Web.UI.Page + public partial class SheetTech : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { diff --git a/MP-TAB/TechSheet.aspx.designer.cs b/MP-TAB/SheetTech.aspx.designer.cs similarity index 74% rename from MP-TAB/TechSheet.aspx.designer.cs rename to MP-TAB/SheetTech.aspx.designer.cs index a539cf6d..5bad25fd 100644 --- a/MP-TAB/TechSheet.aspx.designer.cs +++ b/MP-TAB/SheetTech.aspx.designer.cs @@ -11,7 +11,7 @@ namespace MoonProTablet { - public partial class TechSheet + public partial class SheetTech { /// @@ -23,6 +23,15 @@ namespace MoonProTablet /// protected global::MoonProTablet.WebUserControls.mod_dettMacchina mod_dettMacchina; + /// + /// Controllo cmp_sheetTech. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::MoonProTablet.WebUserControls.cmp_sheetTech cmp_sheetTech; + /// /// Controllo mod_directLinks. /// diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx b/MP-TAB/WebUserControls/cmp_sheetTech.ascx new file mode 100644 index 00000000..ea786453 --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx @@ -0,0 +1,35 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_sheetTech.ascx.cs" Inherits="MoonProTablet.WebUserControls.cmp_sheetTech" %> + + + + +
+
+

Scheda Tecnica

+
+
+ + + + + + + + + + + + + + + + + + + + + + + +
+
diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx.cs b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.cs new file mode 100644 index 00000000..c419eb5f --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace MoonProTablet.WebUserControls +{ + public partial class cmp_sheetTech : System.Web.UI.UserControl + { + protected void Page_Load(object sender, EventArgs e) + { + + } + } +} \ No newline at end of file diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs new file mode 100644 index 00000000..d4a196a7 --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs @@ -0,0 +1,44 @@ +//------------------------------------------------------------------------------ +// +// Codice generato da uno strumento. +// +// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se +// il codice viene rigenerato. +// +//------------------------------------------------------------------------------ + +namespace MoonProTablet.WebUserControls +{ + + + public partial class cmp_sheetTech + { + + /// + /// Controllo grView. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.GridView grView; + + /// + /// Controllo ods. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.ObjectDataSource ods; + + /// + /// Controllo hfCodArticolo. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.HiddenField hfCodArticolo; + } +} diff --git a/MapoDb/DS_SheetTech.Designer.cs b/MapoDb/DS_SheetTech.Designer.cs new file mode 100644 index 00000000..c33b1877 --- /dev/null +++ b/MapoDb/DS_SheetTech.Designer.cs @@ -0,0 +1,7627 @@ +//------------------------------------------------------------------------------ +// +// Il codice è stato generato da uno strumento. +// Versione runtime:4.0.30319.42000 +// +// Le modifiche apportate a questo file possono provocare un comportamento non corretto e andranno perse se +// il codice viene rigenerato. +// +//------------------------------------------------------------------------------ + +#pragma warning disable 1591 + +namespace MapoDb { + + + /// + ///Represents a strongly typed in-memory cache of data. + /// + [global::System.Serializable()] + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedDataSetSchema")] + [global::System.Xml.Serialization.XmlRootAttribute("DS_SheetTech")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.DataSet")] + public partial class DS_SheetTech : global::System.Data.DataSet { + + private ST_ActualDataTable tableST_Actual; + + private ST_ActualRowDataTable tableST_ActualRow; + + private ST_CheckDataTable tableST_Check; + + private ST_AnagGruppiDataTable tableST_AnagGruppi; + + private ST_AnagTipiDataTable tableST_AnagTipi; + + private ST_TemplateDataTable tableST_Template; + + private ST_TemplateRowsDataTable tableST_TemplateRows; + + private global::System.Data.DataRelation relationFK_ST_ActualRows_ST_Actual; + + private global::System.Data.DataRelation relationFK_ST_Actual_ST_Template; + + private global::System.Data.DataRelation relationFK_ST_TemplateRows_ST_AnagGruppi; + + private global::System.Data.DataRelation relationFK_ST_TemplateRows_ST_AnagTipi1; + + private global::System.Data.DataRelation relationFK_ST_TemplateRows_ST_Template; + + private global::System.Data.SchemaSerializationMode _schemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public DS_SheetTech() { + this.BeginInit(); + this.InitClass(); + global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged); + base.Tables.CollectionChanged += schemaChangedHandler; + base.Relations.CollectionChanged += schemaChangedHandler; + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected DS_SheetTech(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context, false) { + if ((this.IsBinarySerialized(info, context) == true)) { + this.InitVars(false); + global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler1 = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged); + this.Tables.CollectionChanged += schemaChangedHandler1; + this.Relations.CollectionChanged += schemaChangedHandler1; + return; + } + string strSchema = ((string)(info.GetValue("XmlSchema", typeof(string)))); + if ((this.DetermineSchemaSerializationMode(info, context) == global::System.Data.SchemaSerializationMode.IncludeSchema)) { + global::System.Data.DataSet ds = new global::System.Data.DataSet(); + ds.ReadXmlSchema(new global::System.Xml.XmlTextReader(new global::System.IO.StringReader(strSchema))); + if ((ds.Tables["ST_Actual"] != null)) { + base.Tables.Add(new ST_ActualDataTable(ds.Tables["ST_Actual"])); + } + if ((ds.Tables["ST_ActualRow"] != null)) { + base.Tables.Add(new ST_ActualRowDataTable(ds.Tables["ST_ActualRow"])); + } + if ((ds.Tables["ST_Check"] != null)) { + base.Tables.Add(new ST_CheckDataTable(ds.Tables["ST_Check"])); + } + if ((ds.Tables["ST_AnagGruppi"] != null)) { + base.Tables.Add(new ST_AnagGruppiDataTable(ds.Tables["ST_AnagGruppi"])); + } + if ((ds.Tables["ST_AnagTipi"] != null)) { + base.Tables.Add(new ST_AnagTipiDataTable(ds.Tables["ST_AnagTipi"])); + } + if ((ds.Tables["ST_Template"] != null)) { + base.Tables.Add(new ST_TemplateDataTable(ds.Tables["ST_Template"])); + } + if ((ds.Tables["ST_TemplateRows"] != null)) { + base.Tables.Add(new ST_TemplateRowsDataTable(ds.Tables["ST_TemplateRows"])); + } + this.DataSetName = ds.DataSetName; + this.Prefix = ds.Prefix; + this.Namespace = ds.Namespace; + this.Locale = ds.Locale; + this.CaseSensitive = ds.CaseSensitive; + this.EnforceConstraints = ds.EnforceConstraints; + this.Merge(ds, false, global::System.Data.MissingSchemaAction.Add); + this.InitVars(); + } + else { + this.ReadXmlSchema(new global::System.Xml.XmlTextReader(new global::System.IO.StringReader(strSchema))); + } + this.GetSerializationData(info, context); + global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged); + base.Tables.CollectionChanged += schemaChangedHandler; + this.Relations.CollectionChanged += schemaChangedHandler; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)] + public ST_ActualDataTable ST_Actual { + get { + return this.tableST_Actual; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)] + public ST_ActualRowDataTable _ST_ActualRow { + get { + return this.tableST_ActualRow; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)] + public ST_CheckDataTable ST_Check { + get { + return this.tableST_Check; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)] + public ST_AnagGruppiDataTable ST_AnagGruppi { + get { + return this.tableST_AnagGruppi; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)] + public ST_AnagTipiDataTable ST_AnagTipi { + get { + return this.tableST_AnagTipi; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)] + public ST_TemplateDataTable ST_Template { + get { + return this.tableST_Template; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)] + public ST_TemplateRowsDataTable ST_TemplateRows { + get { + return this.tableST_TemplateRows; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.BrowsableAttribute(true)] + [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Visible)] + public override global::System.Data.SchemaSerializationMode SchemaSerializationMode { + get { + return this._schemaSerializationMode; + } + set { + this._schemaSerializationMode = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public new global::System.Data.DataTableCollection Tables { + get { + return base.Tables; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public new global::System.Data.DataRelationCollection Relations { + get { + return base.Relations; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void InitializeDerivedDataSet() { + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public override global::System.Data.DataSet Clone() { + DS_SheetTech cln = ((DS_SheetTech)(base.Clone())); + cln.InitVars(); + cln.SchemaSerializationMode = this.SchemaSerializationMode; + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override bool ShouldSerializeTables() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override bool ShouldSerializeRelations() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void ReadXmlSerializable(global::System.Xml.XmlReader reader) { + if ((this.DetermineSchemaSerializationMode(reader) == global::System.Data.SchemaSerializationMode.IncludeSchema)) { + this.Reset(); + global::System.Data.DataSet ds = new global::System.Data.DataSet(); + ds.ReadXml(reader); + if ((ds.Tables["ST_Actual"] != null)) { + base.Tables.Add(new ST_ActualDataTable(ds.Tables["ST_Actual"])); + } + if ((ds.Tables["ST_ActualRow"] != null)) { + base.Tables.Add(new ST_ActualRowDataTable(ds.Tables["ST_ActualRow"])); + } + if ((ds.Tables["ST_Check"] != null)) { + base.Tables.Add(new ST_CheckDataTable(ds.Tables["ST_Check"])); + } + if ((ds.Tables["ST_AnagGruppi"] != null)) { + base.Tables.Add(new ST_AnagGruppiDataTable(ds.Tables["ST_AnagGruppi"])); + } + if ((ds.Tables["ST_AnagTipi"] != null)) { + base.Tables.Add(new ST_AnagTipiDataTable(ds.Tables["ST_AnagTipi"])); + } + if ((ds.Tables["ST_Template"] != null)) { + base.Tables.Add(new ST_TemplateDataTable(ds.Tables["ST_Template"])); + } + if ((ds.Tables["ST_TemplateRows"] != null)) { + base.Tables.Add(new ST_TemplateRowsDataTable(ds.Tables["ST_TemplateRows"])); + } + this.DataSetName = ds.DataSetName; + this.Prefix = ds.Prefix; + this.Namespace = ds.Namespace; + this.Locale = ds.Locale; + this.CaseSensitive = ds.CaseSensitive; + this.EnforceConstraints = ds.EnforceConstraints; + this.Merge(ds, false, global::System.Data.MissingSchemaAction.Add); + this.InitVars(); + } + else { + this.ReadXml(reader); + this.InitVars(); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Xml.Schema.XmlSchema GetSchemaSerializable() { + global::System.IO.MemoryStream stream = new global::System.IO.MemoryStream(); + this.WriteXmlSchema(new global::System.Xml.XmlTextWriter(stream, null)); + stream.Position = 0; + return global::System.Xml.Schema.XmlSchema.Read(new global::System.Xml.XmlTextReader(stream), null); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal void InitVars() { + this.InitVars(true); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal void InitVars(bool initTable) { + this.tableST_Actual = ((ST_ActualDataTable)(base.Tables["ST_Actual"])); + if ((initTable == true)) { + if ((this.tableST_Actual != null)) { + this.tableST_Actual.InitVars(); + } + } + this.tableST_ActualRow = ((ST_ActualRowDataTable)(base.Tables["ST_ActualRow"])); + if ((initTable == true)) { + if ((this.tableST_ActualRow != null)) { + this.tableST_ActualRow.InitVars(); + } + } + this.tableST_Check = ((ST_CheckDataTable)(base.Tables["ST_Check"])); + if ((initTable == true)) { + if ((this.tableST_Check != null)) { + this.tableST_Check.InitVars(); + } + } + this.tableST_AnagGruppi = ((ST_AnagGruppiDataTable)(base.Tables["ST_AnagGruppi"])); + if ((initTable == true)) { + if ((this.tableST_AnagGruppi != null)) { + this.tableST_AnagGruppi.InitVars(); + } + } + this.tableST_AnagTipi = ((ST_AnagTipiDataTable)(base.Tables["ST_AnagTipi"])); + if ((initTable == true)) { + if ((this.tableST_AnagTipi != null)) { + this.tableST_AnagTipi.InitVars(); + } + } + this.tableST_Template = ((ST_TemplateDataTable)(base.Tables["ST_Template"])); + if ((initTable == true)) { + if ((this.tableST_Template != null)) { + this.tableST_Template.InitVars(); + } + } + this.tableST_TemplateRows = ((ST_TemplateRowsDataTable)(base.Tables["ST_TemplateRows"])); + if ((initTable == true)) { + if ((this.tableST_TemplateRows != null)) { + this.tableST_TemplateRows.InitVars(); + } + } + this.relationFK_ST_ActualRows_ST_Actual = this.Relations["FK_ST_ActualRows_ST_Actual"]; + this.relationFK_ST_Actual_ST_Template = this.Relations["FK_ST_Actual_ST_Template"]; + this.relationFK_ST_TemplateRows_ST_AnagGruppi = this.Relations["FK_ST_TemplateRows_ST_AnagGruppi"]; + this.relationFK_ST_TemplateRows_ST_AnagTipi1 = this.Relations["FK_ST_TemplateRows_ST_AnagTipi1"]; + this.relationFK_ST_TemplateRows_ST_Template = this.Relations["FK_ST_TemplateRows_ST_Template"]; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitClass() { + this.DataSetName = "DS_SheetTech"; + this.Prefix = ""; + this.Namespace = "http://tempuri.org/DS_SheetTech.xsd"; + this.EnforceConstraints = true; + this.SchemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema; + this.tableST_Actual = new ST_ActualDataTable(); + base.Tables.Add(this.tableST_Actual); + this.tableST_ActualRow = new ST_ActualRowDataTable(); + base.Tables.Add(this.tableST_ActualRow); + this.tableST_Check = new ST_CheckDataTable(); + base.Tables.Add(this.tableST_Check); + this.tableST_AnagGruppi = new ST_AnagGruppiDataTable(); + base.Tables.Add(this.tableST_AnagGruppi); + this.tableST_AnagTipi = new ST_AnagTipiDataTable(); + base.Tables.Add(this.tableST_AnagTipi); + this.tableST_Template = new ST_TemplateDataTable(); + base.Tables.Add(this.tableST_Template); + this.tableST_TemplateRows = new ST_TemplateRowsDataTable(); + base.Tables.Add(this.tableST_TemplateRows); + this.relationFK_ST_ActualRows_ST_Actual = new global::System.Data.DataRelation("FK_ST_ActualRows_ST_Actual", new global::System.Data.DataColumn[] { + this.tableST_Actual.IdxSTColumn}, new global::System.Data.DataColumn[] { + this.tableST_ActualRow.IdxSTColumn}, false); + this.Relations.Add(this.relationFK_ST_ActualRows_ST_Actual); + this.relationFK_ST_Actual_ST_Template = new global::System.Data.DataRelation("FK_ST_Actual_ST_Template", new global::System.Data.DataColumn[] { + this.tableST_Template.CodTemplColumn}, new global::System.Data.DataColumn[] { + this.tableST_Actual.CodTemplColumn}, false); + this.Relations.Add(this.relationFK_ST_Actual_ST_Template); + this.relationFK_ST_TemplateRows_ST_AnagGruppi = new global::System.Data.DataRelation("FK_ST_TemplateRows_ST_AnagGruppi", new global::System.Data.DataColumn[] { + this.tableST_AnagGruppi.CodGruppoColumn}, new global::System.Data.DataColumn[] { + this.tableST_TemplateRows.CodGruppoColumn}, false); + this.Relations.Add(this.relationFK_ST_TemplateRows_ST_AnagGruppi); + this.relationFK_ST_TemplateRows_ST_AnagTipi1 = new global::System.Data.DataRelation("FK_ST_TemplateRows_ST_AnagTipi1", new global::System.Data.DataColumn[] { + this.tableST_AnagTipi.CodTipoColumn}, new global::System.Data.DataColumn[] { + this.tableST_TemplateRows.CodTipoColumn}, false); + this.Relations.Add(this.relationFK_ST_TemplateRows_ST_AnagTipi1); + this.relationFK_ST_TemplateRows_ST_Template = new global::System.Data.DataRelation("FK_ST_TemplateRows_ST_Template", new global::System.Data.DataColumn[] { + this.tableST_Template.CodTemplColumn}, new global::System.Data.DataColumn[] { + this.tableST_TemplateRows.CodTemplColumn}, false); + this.Relations.Add(this.relationFK_ST_TemplateRows_ST_Template); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private bool ShouldSerializeST_Actual() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private bool ShouldSerialize_ST_ActualRow() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private bool ShouldSerializeST_Check() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private bool ShouldSerializeST_AnagGruppi() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private bool ShouldSerializeST_AnagTipi() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private bool ShouldSerializeST_Template() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private bool ShouldSerializeST_TemplateRows() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void SchemaChanged(object sender, global::System.ComponentModel.CollectionChangeEventArgs e) { + if ((e.Action == global::System.ComponentModel.CollectionChangeAction.Remove)) { + this.InitVars(); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + DS_SheetTech ds = new DS_SheetTech(); + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny(); + any.Namespace = ds.Namespace; + sequence.Items.Add(any); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public delegate void ST_ActualRowChangeEventHandler(object sender, ST_ActualRowChangeEvent e); + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public delegate void ST_ActualRowRowChangeEventHandler(object sender, ST_ActualRowRowChangeEvent e); + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public delegate void ST_CheckRowChangeEventHandler(object sender, ST_CheckRowChangeEvent e); + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public delegate void ST_AnagGruppiRowChangeEventHandler(object sender, ST_AnagGruppiRowChangeEvent e); + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public delegate void ST_AnagTipiRowChangeEventHandler(object sender, ST_AnagTipiRowChangeEvent e); + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public delegate void ST_TemplateRowChangeEventHandler(object sender, ST_TemplateRowChangeEvent e); + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public delegate void ST_TemplateRowsRowChangeEventHandler(object sender, ST_TemplateRowsRowChangeEvent e); + + /// + ///Represents the strongly named DataTable class. + /// + [global::System.Serializable()] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] + public partial class ST_ActualDataTable : global::System.Data.TypedTableBase { + + private global::System.Data.DataColumn columnIdxST; + + private global::System.Data.DataColumn columnCodTempl; + + private global::System.Data.DataColumn columnCodArticolo; + + private global::System.Data.DataColumn columnMatrOpr; + + private global::System.Data.DataColumn columnDtMod; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualDataTable() { + this.TableName = "ST_Actual"; + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_ActualDataTable(global::System.Data.DataTable table) { + this.TableName = table.TableName; + if ((table.CaseSensitive != table.DataSet.CaseSensitive)) { + this.CaseSensitive = table.CaseSensitive; + } + if ((table.Locale.ToString() != table.DataSet.Locale.ToString())) { + this.Locale = table.Locale; + } + if ((table.Namespace != table.DataSet.Namespace)) { + this.Namespace = table.Namespace; + } + this.Prefix = table.Prefix; + this.MinimumCapacity = table.MinimumCapacity; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected ST_ActualDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context) { + this.InitVars(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn IdxSTColumn { + get { + return this.columnIdxST; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CodTemplColumn { + get { + return this.columnCodTempl; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CodArticoloColumn { + get { + return this.columnCodArticolo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn MatrOprColumn { + get { + return this.columnMatrOpr; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn DtModColumn { + get { + return this.columnDtMod; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public int Count { + get { + return this.Rows.Count; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRow this[int index] { + get { + return ((ST_ActualRow)(this.Rows[index])); + } + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_ActualRowChangeEventHandler ST_ActualRowChanging; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_ActualRowChangeEventHandler ST_ActualRowChanged; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_ActualRowChangeEventHandler ST_ActualRowDeleting; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_ActualRowChangeEventHandler ST_ActualRowDeleted; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void AddST_ActualRow(ST_ActualRow row) { + this.Rows.Add(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRow AddST_ActualRow(ST_TemplateRow parentST_TemplateRowByFK_ST_Actual_ST_Template, string CodArticolo, int MatrOpr, System.DateTime DtMod) { + ST_ActualRow rowST_ActualRow = ((ST_ActualRow)(this.NewRow())); + object[] columnValuesArray = new object[] { + null, + null, + CodArticolo, + MatrOpr, + DtMod}; + if ((parentST_TemplateRowByFK_ST_Actual_ST_Template != null)) { + columnValuesArray[1] = parentST_TemplateRowByFK_ST_Actual_ST_Template[0]; + } + rowST_ActualRow.ItemArray = columnValuesArray; + this.Rows.Add(rowST_ActualRow); + return rowST_ActualRow; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRow FindByIdxST(int IdxST) { + return ((ST_ActualRow)(this.Rows.Find(new object[] { + IdxST}))); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public override global::System.Data.DataTable Clone() { + ST_ActualDataTable cln = ((ST_ActualDataTable)(base.Clone())); + cln.InitVars(); + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataTable CreateInstance() { + return new ST_ActualDataTable(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal void InitVars() { + this.columnIdxST = base.Columns["IdxST"]; + this.columnCodTempl = base.Columns["CodTempl"]; + this.columnCodArticolo = base.Columns["CodArticolo"]; + this.columnMatrOpr = base.Columns["MatrOpr"]; + this.columnDtMod = base.Columns["DtMod"]; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitClass() { + this.columnIdxST = new global::System.Data.DataColumn("IdxST", typeof(int), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnIdxST); + this.columnCodTempl = new global::System.Data.DataColumn("CodTempl", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodTempl); + this.columnCodArticolo = new global::System.Data.DataColumn("CodArticolo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodArticolo); + this.columnMatrOpr = new global::System.Data.DataColumn("MatrOpr", typeof(int), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnMatrOpr); + this.columnDtMod = new global::System.Data.DataColumn("DtMod", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDtMod); + this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { + this.columnIdxST}, true)); + this.columnIdxST.AutoIncrement = true; + this.columnIdxST.AutoIncrementSeed = -1; + this.columnIdxST.AutoIncrementStep = -1; + this.columnIdxST.AllowDBNull = false; + this.columnIdxST.ReadOnly = true; + this.columnIdxST.Unique = true; + this.columnCodTempl.AllowDBNull = false; + this.columnCodTempl.MaxLength = 50; + this.columnCodArticolo.AllowDBNull = false; + this.columnCodArticolo.MaxLength = 50; + this.columnMatrOpr.AllowDBNull = false; + this.columnDtMod.AllowDBNull = false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRow NewST_ActualRow() { + return ((ST_ActualRow)(this.NewRow())); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) { + return new ST_ActualRow(builder); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Type GetRowType() { + return typeof(ST_ActualRow); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanged(e); + if ((this.ST_ActualRowChanged != null)) { + this.ST_ActualRowChanged(this, new ST_ActualRowChangeEvent(((ST_ActualRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanging(e); + if ((this.ST_ActualRowChanging != null)) { + this.ST_ActualRowChanging(this, new ST_ActualRowChangeEvent(((ST_ActualRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleted(e); + if ((this.ST_ActualRowDeleted != null)) { + this.ST_ActualRowDeleted(this, new ST_ActualRowChangeEvent(((ST_ActualRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleting(e); + if ((this.ST_ActualRowDeleting != null)) { + this.ST_ActualRowDeleting(this, new ST_ActualRowChangeEvent(((ST_ActualRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void RemoveST_ActualRow(ST_ActualRow row) { + this.Rows.Remove(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + DS_SheetTech ds = new DS_SheetTech(); + global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); + any1.Namespace = "http://www.w3.org/2001/XMLSchema"; + any1.MinOccurs = new decimal(0); + any1.MaxOccurs = decimal.MaxValue; + any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any1); + global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; + any2.MinOccurs = new decimal(1); + any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any2); + global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute1.Name = "namespace"; + attribute1.FixedValue = ds.Namespace; + type.Attributes.Add(attribute1); + global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute2.Name = "tableTypeName"; + attribute2.FixedValue = "ST_ActualDataTable"; + type.Attributes.Add(attribute2); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + } + + /// + ///Represents the strongly named DataTable class. + /// + [global::System.Serializable()] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] + public partial class ST_ActualRowDataTable : global::System.Data.TypedTableBase { + + private global::System.Data.DataColumn columnIdxST; + + private global::System.Data.DataColumn columnLabel; + + private global::System.Data.DataColumn columnOggetto; + + private global::System.Data.DataColumn columnNum; + + private global::System.Data.DataColumn columnCodGruppo; + + private global::System.Data.DataColumn columnCodTipo; + + private global::System.Data.DataColumn columnValue; + + private global::System.Data.DataColumn columnCheckType; + + private global::System.Data.DataColumn columnRequired; + + private global::System.Data.DataColumn columnExtCode; + + private global::System.Data.DataColumn columnNote; + + private global::System.Data.DataColumn columnDescGruppo; + + private global::System.Data.DataColumn columnDescTipo; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRowDataTable() { + this.TableName = "ST_ActualRow"; + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_ActualRowDataTable(global::System.Data.DataTable table) { + this.TableName = table.TableName; + if ((table.CaseSensitive != table.DataSet.CaseSensitive)) { + this.CaseSensitive = table.CaseSensitive; + } + if ((table.Locale.ToString() != table.DataSet.Locale.ToString())) { + this.Locale = table.Locale; + } + if ((table.Namespace != table.DataSet.Namespace)) { + this.Namespace = table.Namespace; + } + this.Prefix = table.Prefix; + this.MinimumCapacity = table.MinimumCapacity; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected ST_ActualRowDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context) { + this.InitVars(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn IdxSTColumn { + get { + return this.columnIdxST; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn LabelColumn { + get { + return this.columnLabel; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn OggettoColumn { + get { + return this.columnOggetto; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn NumColumn { + get { + return this.columnNum; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CodGruppoColumn { + get { + return this.columnCodGruppo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CodTipoColumn { + get { + return this.columnCodTipo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn ValueColumn { + get { + return this.columnValue; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CheckTypeColumn { + get { + return this.columnCheckType; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn RequiredColumn { + get { + return this.columnRequired; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn ExtCodeColumn { + get { + return this.columnExtCode; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn NoteColumn { + get { + return this.columnNote; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn DescGruppoColumn { + get { + return this.columnDescGruppo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn DescTipoColumn { + get { + return this.columnDescTipo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public int Count { + get { + return this.Rows.Count; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRowRow this[int index] { + get { + return ((ST_ActualRowRow)(this.Rows[index])); + } + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_ActualRowRowChangeEventHandler ST_ActualRowRowChanging; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_ActualRowRowChangeEventHandler ST_ActualRowRowChanged; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_ActualRowRowChangeEventHandler ST_ActualRowRowDeleting; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_ActualRowRowChangeEventHandler ST_ActualRowRowDeleted; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void AddST_ActualRowRow(ST_ActualRowRow row) { + this.Rows.Add(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRowRow AddST_ActualRowRow(ST_ActualRow parentST_ActualRowByFK_ST_ActualRows_ST_Actual, string Label, short Oggetto, int Num, string CodGruppo, string CodTipo, string Value, string CheckType, bool Required, string ExtCode, string Note, string DescGruppo, string DescTipo) { + ST_ActualRowRow rowST_ActualRowRow = ((ST_ActualRowRow)(this.NewRow())); + object[] columnValuesArray = new object[] { + null, + Label, + Oggetto, + Num, + CodGruppo, + CodTipo, + Value, + CheckType, + Required, + ExtCode, + Note, + DescGruppo, + DescTipo}; + if ((parentST_ActualRowByFK_ST_ActualRows_ST_Actual != null)) { + columnValuesArray[0] = parentST_ActualRowByFK_ST_ActualRows_ST_Actual[0]; + } + rowST_ActualRowRow.ItemArray = columnValuesArray; + this.Rows.Add(rowST_ActualRowRow); + return rowST_ActualRowRow; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRowRow FindByIdxSTLabelOggetto(int IdxST, string Label, short Oggetto) { + return ((ST_ActualRowRow)(this.Rows.Find(new object[] { + IdxST, + Label, + Oggetto}))); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public override global::System.Data.DataTable Clone() { + ST_ActualRowDataTable cln = ((ST_ActualRowDataTable)(base.Clone())); + cln.InitVars(); + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataTable CreateInstance() { + return new ST_ActualRowDataTable(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal void InitVars() { + this.columnIdxST = base.Columns["IdxST"]; + this.columnLabel = base.Columns["Label"]; + this.columnOggetto = base.Columns["Oggetto"]; + this.columnNum = base.Columns["Num"]; + this.columnCodGruppo = base.Columns["CodGruppo"]; + this.columnCodTipo = base.Columns["CodTipo"]; + this.columnValue = base.Columns["Value"]; + this.columnCheckType = base.Columns["CheckType"]; + this.columnRequired = base.Columns["Required"]; + this.columnExtCode = base.Columns["ExtCode"]; + this.columnNote = base.Columns["Note"]; + this.columnDescGruppo = base.Columns["DescGruppo"]; + this.columnDescTipo = base.Columns["DescTipo"]; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitClass() { + this.columnIdxST = new global::System.Data.DataColumn("IdxST", typeof(int), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnIdxST); + this.columnLabel = new global::System.Data.DataColumn("Label", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnLabel); + this.columnOggetto = new global::System.Data.DataColumn("Oggetto", typeof(short), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnOggetto); + this.columnNum = new global::System.Data.DataColumn("Num", typeof(int), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnNum); + this.columnCodGruppo = new global::System.Data.DataColumn("CodGruppo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodGruppo); + this.columnCodTipo = new global::System.Data.DataColumn("CodTipo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodTipo); + this.columnValue = new global::System.Data.DataColumn("Value", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnValue); + this.columnCheckType = new global::System.Data.DataColumn("CheckType", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCheckType); + this.columnRequired = new global::System.Data.DataColumn("Required", typeof(bool), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnRequired); + this.columnExtCode = new global::System.Data.DataColumn("ExtCode", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnExtCode); + this.columnNote = new global::System.Data.DataColumn("Note", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnNote); + this.columnDescGruppo = new global::System.Data.DataColumn("DescGruppo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDescGruppo); + this.columnDescTipo = new global::System.Data.DataColumn("DescTipo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDescTipo); + this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { + this.columnIdxST, + this.columnLabel, + this.columnOggetto}, true)); + this.columnIdxST.AllowDBNull = false; + this.columnLabel.AllowDBNull = false; + this.columnLabel.MaxLength = 50; + this.columnOggetto.AllowDBNull = false; + this.columnNum.AllowDBNull = false; + this.columnCodGruppo.AllowDBNull = false; + this.columnCodGruppo.MaxLength = 50; + this.columnCodTipo.AllowDBNull = false; + this.columnCodTipo.MaxLength = 50; + this.columnValue.AllowDBNull = false; + this.columnValue.MaxLength = 250; + this.columnCheckType.AllowDBNull = false; + this.columnCheckType.MaxLength = 50; + this.columnRequired.AllowDBNull = false; + this.columnExtCode.AllowDBNull = false; + this.columnExtCode.MaxLength = 2147483647; + this.columnNote.AllowDBNull = false; + this.columnNote.MaxLength = 500; + this.columnDescGruppo.MaxLength = 250; + this.columnDescTipo.AllowDBNull = false; + this.columnDescTipo.MaxLength = 50; + this.ExtendedProperties.Add("Generator_TablePropName", "_ST_ActualRow"); + this.ExtendedProperties.Add("Generator_UserTableName", "ST_ActualRow"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRowRow NewST_ActualRowRow() { + return ((ST_ActualRowRow)(this.NewRow())); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) { + return new ST_ActualRowRow(builder); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Type GetRowType() { + return typeof(ST_ActualRowRow); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanged(e); + if ((this.ST_ActualRowRowChanged != null)) { + this.ST_ActualRowRowChanged(this, new ST_ActualRowRowChangeEvent(((ST_ActualRowRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanging(e); + if ((this.ST_ActualRowRowChanging != null)) { + this.ST_ActualRowRowChanging(this, new ST_ActualRowRowChangeEvent(((ST_ActualRowRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleted(e); + if ((this.ST_ActualRowRowDeleted != null)) { + this.ST_ActualRowRowDeleted(this, new ST_ActualRowRowChangeEvent(((ST_ActualRowRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleting(e); + if ((this.ST_ActualRowRowDeleting != null)) { + this.ST_ActualRowRowDeleting(this, new ST_ActualRowRowChangeEvent(((ST_ActualRowRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void RemoveST_ActualRowRow(ST_ActualRowRow row) { + this.Rows.Remove(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + DS_SheetTech ds = new DS_SheetTech(); + global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); + any1.Namespace = "http://www.w3.org/2001/XMLSchema"; + any1.MinOccurs = new decimal(0); + any1.MaxOccurs = decimal.MaxValue; + any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any1); + global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; + any2.MinOccurs = new decimal(1); + any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any2); + global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute1.Name = "namespace"; + attribute1.FixedValue = ds.Namespace; + type.Attributes.Add(attribute1); + global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute2.Name = "tableTypeName"; + attribute2.FixedValue = "ST_ActualRowDataTable"; + type.Attributes.Add(attribute2); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + } + + /// + ///Represents the strongly named DataTable class. + /// + [global::System.Serializable()] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] + public partial class ST_CheckDataTable : global::System.Data.TypedTableBase { + + private global::System.Data.DataColumn columnDtEvent; + + private global::System.Data.DataColumn columnIdxODL; + + private global::System.Data.DataColumn columnIdxST; + + private global::System.Data.DataColumn columnNum; + + private global::System.Data.DataColumn columnValueCurr; + + private global::System.Data.DataColumn columnCheckOk; + + private global::System.Data.DataColumn columnDtMod; + + private global::System.Data.DataColumn columnUserMod; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_CheckDataTable() { + this.TableName = "ST_Check"; + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_CheckDataTable(global::System.Data.DataTable table) { + this.TableName = table.TableName; + if ((table.CaseSensitive != table.DataSet.CaseSensitive)) { + this.CaseSensitive = table.CaseSensitive; + } + if ((table.Locale.ToString() != table.DataSet.Locale.ToString())) { + this.Locale = table.Locale; + } + if ((table.Namespace != table.DataSet.Namespace)) { + this.Namespace = table.Namespace; + } + this.Prefix = table.Prefix; + this.MinimumCapacity = table.MinimumCapacity; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected ST_CheckDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context) { + this.InitVars(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn DtEventColumn { + get { + return this.columnDtEvent; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn IdxODLColumn { + get { + return this.columnIdxODL; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn IdxSTColumn { + get { + return this.columnIdxST; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn NumColumn { + get { + return this.columnNum; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn ValueCurrColumn { + get { + return this.columnValueCurr; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CheckOkColumn { + get { + return this.columnCheckOk; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn DtModColumn { + get { + return this.columnDtMod; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn UserModColumn { + get { + return this.columnUserMod; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public int Count { + get { + return this.Rows.Count; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_CheckRow this[int index] { + get { + return ((ST_CheckRow)(this.Rows[index])); + } + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_CheckRowChangeEventHandler ST_CheckRowChanging; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_CheckRowChangeEventHandler ST_CheckRowChanged; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_CheckRowChangeEventHandler ST_CheckRowDeleting; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_CheckRowChangeEventHandler ST_CheckRowDeleted; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void AddST_CheckRow(ST_CheckRow row) { + this.Rows.Add(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_CheckRow AddST_CheckRow(System.DateTime DtEvent, int IdxODL, int IdxST, int Num, string ValueCurr, bool CheckOk, string DtMod, string UserMod) { + ST_CheckRow rowST_CheckRow = ((ST_CheckRow)(this.NewRow())); + object[] columnValuesArray = new object[] { + DtEvent, + IdxODL, + IdxST, + Num, + ValueCurr, + CheckOk, + DtMod, + UserMod}; + rowST_CheckRow.ItemArray = columnValuesArray; + this.Rows.Add(rowST_CheckRow); + return rowST_CheckRow; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_CheckRow FindByDtEventIdxODLIdxSTNum(System.DateTime DtEvent, int IdxODL, int IdxST, int Num) { + return ((ST_CheckRow)(this.Rows.Find(new object[] { + DtEvent, + IdxODL, + IdxST, + Num}))); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public override global::System.Data.DataTable Clone() { + ST_CheckDataTable cln = ((ST_CheckDataTable)(base.Clone())); + cln.InitVars(); + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataTable CreateInstance() { + return new ST_CheckDataTable(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal void InitVars() { + this.columnDtEvent = base.Columns["DtEvent"]; + this.columnIdxODL = base.Columns["IdxODL"]; + this.columnIdxST = base.Columns["IdxST"]; + this.columnNum = base.Columns["Num"]; + this.columnValueCurr = base.Columns["ValueCurr"]; + this.columnCheckOk = base.Columns["CheckOk"]; + this.columnDtMod = base.Columns["DtMod"]; + this.columnUserMod = base.Columns["UserMod"]; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitClass() { + this.columnDtEvent = new global::System.Data.DataColumn("DtEvent", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDtEvent); + this.columnIdxODL = new global::System.Data.DataColumn("IdxODL", typeof(int), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnIdxODL); + this.columnIdxST = new global::System.Data.DataColumn("IdxST", typeof(int), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnIdxST); + this.columnNum = new global::System.Data.DataColumn("Num", typeof(int), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnNum); + this.columnValueCurr = new global::System.Data.DataColumn("ValueCurr", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnValueCurr); + this.columnCheckOk = new global::System.Data.DataColumn("CheckOk", typeof(bool), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCheckOk); + this.columnDtMod = new global::System.Data.DataColumn("DtMod", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDtMod); + this.columnUserMod = new global::System.Data.DataColumn("UserMod", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnUserMod); + this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { + this.columnDtEvent, + this.columnIdxODL, + this.columnIdxST, + this.columnNum}, true)); + this.columnDtEvent.AllowDBNull = false; + this.columnIdxODL.AllowDBNull = false; + this.columnIdxST.AllowDBNull = false; + this.columnNum.AllowDBNull = false; + this.columnValueCurr.AllowDBNull = false; + this.columnValueCurr.MaxLength = 250; + this.columnCheckOk.AllowDBNull = false; + this.columnDtMod.AllowDBNull = false; + this.columnDtMod.MaxLength = 250; + this.columnUserMod.AllowDBNull = false; + this.columnUserMod.MaxLength = 250; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_CheckRow NewST_CheckRow() { + return ((ST_CheckRow)(this.NewRow())); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) { + return new ST_CheckRow(builder); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Type GetRowType() { + return typeof(ST_CheckRow); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanged(e); + if ((this.ST_CheckRowChanged != null)) { + this.ST_CheckRowChanged(this, new ST_CheckRowChangeEvent(((ST_CheckRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanging(e); + if ((this.ST_CheckRowChanging != null)) { + this.ST_CheckRowChanging(this, new ST_CheckRowChangeEvent(((ST_CheckRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleted(e); + if ((this.ST_CheckRowDeleted != null)) { + this.ST_CheckRowDeleted(this, new ST_CheckRowChangeEvent(((ST_CheckRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleting(e); + if ((this.ST_CheckRowDeleting != null)) { + this.ST_CheckRowDeleting(this, new ST_CheckRowChangeEvent(((ST_CheckRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void RemoveST_CheckRow(ST_CheckRow row) { + this.Rows.Remove(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + DS_SheetTech ds = new DS_SheetTech(); + global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); + any1.Namespace = "http://www.w3.org/2001/XMLSchema"; + any1.MinOccurs = new decimal(0); + any1.MaxOccurs = decimal.MaxValue; + any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any1); + global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; + any2.MinOccurs = new decimal(1); + any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any2); + global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute1.Name = "namespace"; + attribute1.FixedValue = ds.Namespace; + type.Attributes.Add(attribute1); + global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute2.Name = "tableTypeName"; + attribute2.FixedValue = "ST_CheckDataTable"; + type.Attributes.Add(attribute2); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + } + + /// + ///Represents the strongly named DataTable class. + /// + [global::System.Serializable()] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] + public partial class ST_AnagGruppiDataTable : global::System.Data.TypedTableBase { + + private global::System.Data.DataColumn columnCodGruppo; + + private global::System.Data.DataColumn columnDescGruppo; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagGruppiDataTable() { + this.TableName = "ST_AnagGruppi"; + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_AnagGruppiDataTable(global::System.Data.DataTable table) { + this.TableName = table.TableName; + if ((table.CaseSensitive != table.DataSet.CaseSensitive)) { + this.CaseSensitive = table.CaseSensitive; + } + if ((table.Locale.ToString() != table.DataSet.Locale.ToString())) { + this.Locale = table.Locale; + } + if ((table.Namespace != table.DataSet.Namespace)) { + this.Namespace = table.Namespace; + } + this.Prefix = table.Prefix; + this.MinimumCapacity = table.MinimumCapacity; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected ST_AnagGruppiDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context) { + this.InitVars(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CodGruppoColumn { + get { + return this.columnCodGruppo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn DescGruppoColumn { + get { + return this.columnDescGruppo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public int Count { + get { + return this.Rows.Count; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagGruppiRow this[int index] { + get { + return ((ST_AnagGruppiRow)(this.Rows[index])); + } + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_AnagGruppiRowChangeEventHandler ST_AnagGruppiRowChanging; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_AnagGruppiRowChangeEventHandler ST_AnagGruppiRowChanged; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_AnagGruppiRowChangeEventHandler ST_AnagGruppiRowDeleting; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_AnagGruppiRowChangeEventHandler ST_AnagGruppiRowDeleted; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void AddST_AnagGruppiRow(ST_AnagGruppiRow row) { + this.Rows.Add(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagGruppiRow AddST_AnagGruppiRow(string CodGruppo, string DescGruppo) { + ST_AnagGruppiRow rowST_AnagGruppiRow = ((ST_AnagGruppiRow)(this.NewRow())); + object[] columnValuesArray = new object[] { + CodGruppo, + DescGruppo}; + rowST_AnagGruppiRow.ItemArray = columnValuesArray; + this.Rows.Add(rowST_AnagGruppiRow); + return rowST_AnagGruppiRow; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagGruppiRow FindByCodGruppo(string CodGruppo) { + return ((ST_AnagGruppiRow)(this.Rows.Find(new object[] { + CodGruppo}))); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public override global::System.Data.DataTable Clone() { + ST_AnagGruppiDataTable cln = ((ST_AnagGruppiDataTable)(base.Clone())); + cln.InitVars(); + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataTable CreateInstance() { + return new ST_AnagGruppiDataTable(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal void InitVars() { + this.columnCodGruppo = base.Columns["CodGruppo"]; + this.columnDescGruppo = base.Columns["DescGruppo"]; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitClass() { + this.columnCodGruppo = new global::System.Data.DataColumn("CodGruppo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodGruppo); + this.columnDescGruppo = new global::System.Data.DataColumn("DescGruppo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDescGruppo); + this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { + this.columnCodGruppo}, true)); + this.columnCodGruppo.AllowDBNull = false; + this.columnCodGruppo.Unique = true; + this.columnCodGruppo.MaxLength = 50; + this.columnDescGruppo.MaxLength = 250; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagGruppiRow NewST_AnagGruppiRow() { + return ((ST_AnagGruppiRow)(this.NewRow())); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) { + return new ST_AnagGruppiRow(builder); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Type GetRowType() { + return typeof(ST_AnagGruppiRow); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanged(e); + if ((this.ST_AnagGruppiRowChanged != null)) { + this.ST_AnagGruppiRowChanged(this, new ST_AnagGruppiRowChangeEvent(((ST_AnagGruppiRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanging(e); + if ((this.ST_AnagGruppiRowChanging != null)) { + this.ST_AnagGruppiRowChanging(this, new ST_AnagGruppiRowChangeEvent(((ST_AnagGruppiRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleted(e); + if ((this.ST_AnagGruppiRowDeleted != null)) { + this.ST_AnagGruppiRowDeleted(this, new ST_AnagGruppiRowChangeEvent(((ST_AnagGruppiRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleting(e); + if ((this.ST_AnagGruppiRowDeleting != null)) { + this.ST_AnagGruppiRowDeleting(this, new ST_AnagGruppiRowChangeEvent(((ST_AnagGruppiRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void RemoveST_AnagGruppiRow(ST_AnagGruppiRow row) { + this.Rows.Remove(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + DS_SheetTech ds = new DS_SheetTech(); + global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); + any1.Namespace = "http://www.w3.org/2001/XMLSchema"; + any1.MinOccurs = new decimal(0); + any1.MaxOccurs = decimal.MaxValue; + any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any1); + global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; + any2.MinOccurs = new decimal(1); + any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any2); + global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute1.Name = "namespace"; + attribute1.FixedValue = ds.Namespace; + type.Attributes.Add(attribute1); + global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute2.Name = "tableTypeName"; + attribute2.FixedValue = "ST_AnagGruppiDataTable"; + type.Attributes.Add(attribute2); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + } + + /// + ///Represents the strongly named DataTable class. + /// + [global::System.Serializable()] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] + public partial class ST_AnagTipiDataTable : global::System.Data.TypedTableBase { + + private global::System.Data.DataColumn columnCodTipo; + + private global::System.Data.DataColumn columnDescTipo; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagTipiDataTable() { + this.TableName = "ST_AnagTipi"; + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_AnagTipiDataTable(global::System.Data.DataTable table) { + this.TableName = table.TableName; + if ((table.CaseSensitive != table.DataSet.CaseSensitive)) { + this.CaseSensitive = table.CaseSensitive; + } + if ((table.Locale.ToString() != table.DataSet.Locale.ToString())) { + this.Locale = table.Locale; + } + if ((table.Namespace != table.DataSet.Namespace)) { + this.Namespace = table.Namespace; + } + this.Prefix = table.Prefix; + this.MinimumCapacity = table.MinimumCapacity; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected ST_AnagTipiDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context) { + this.InitVars(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CodTipoColumn { + get { + return this.columnCodTipo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn DescTipoColumn { + get { + return this.columnDescTipo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public int Count { + get { + return this.Rows.Count; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagTipiRow this[int index] { + get { + return ((ST_AnagTipiRow)(this.Rows[index])); + } + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_AnagTipiRowChangeEventHandler ST_AnagTipiRowChanging; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_AnagTipiRowChangeEventHandler ST_AnagTipiRowChanged; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_AnagTipiRowChangeEventHandler ST_AnagTipiRowDeleting; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_AnagTipiRowChangeEventHandler ST_AnagTipiRowDeleted; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void AddST_AnagTipiRow(ST_AnagTipiRow row) { + this.Rows.Add(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagTipiRow AddST_AnagTipiRow(string CodTipo, string DescTipo) { + ST_AnagTipiRow rowST_AnagTipiRow = ((ST_AnagTipiRow)(this.NewRow())); + object[] columnValuesArray = new object[] { + CodTipo, + DescTipo}; + rowST_AnagTipiRow.ItemArray = columnValuesArray; + this.Rows.Add(rowST_AnagTipiRow); + return rowST_AnagTipiRow; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagTipiRow FindByCodTipo(string CodTipo) { + return ((ST_AnagTipiRow)(this.Rows.Find(new object[] { + CodTipo}))); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public override global::System.Data.DataTable Clone() { + ST_AnagTipiDataTable cln = ((ST_AnagTipiDataTable)(base.Clone())); + cln.InitVars(); + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataTable CreateInstance() { + return new ST_AnagTipiDataTable(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal void InitVars() { + this.columnCodTipo = base.Columns["CodTipo"]; + this.columnDescTipo = base.Columns["DescTipo"]; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitClass() { + this.columnCodTipo = new global::System.Data.DataColumn("CodTipo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodTipo); + this.columnDescTipo = new global::System.Data.DataColumn("DescTipo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDescTipo); + this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { + this.columnCodTipo}, true)); + this.columnCodTipo.AllowDBNull = false; + this.columnCodTipo.Unique = true; + this.columnCodTipo.MaxLength = 50; + this.columnDescTipo.AllowDBNull = false; + this.columnDescTipo.MaxLength = 50; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagTipiRow NewST_AnagTipiRow() { + return ((ST_AnagTipiRow)(this.NewRow())); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) { + return new ST_AnagTipiRow(builder); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Type GetRowType() { + return typeof(ST_AnagTipiRow); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanged(e); + if ((this.ST_AnagTipiRowChanged != null)) { + this.ST_AnagTipiRowChanged(this, new ST_AnagTipiRowChangeEvent(((ST_AnagTipiRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanging(e); + if ((this.ST_AnagTipiRowChanging != null)) { + this.ST_AnagTipiRowChanging(this, new ST_AnagTipiRowChangeEvent(((ST_AnagTipiRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleted(e); + if ((this.ST_AnagTipiRowDeleted != null)) { + this.ST_AnagTipiRowDeleted(this, new ST_AnagTipiRowChangeEvent(((ST_AnagTipiRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleting(e); + if ((this.ST_AnagTipiRowDeleting != null)) { + this.ST_AnagTipiRowDeleting(this, new ST_AnagTipiRowChangeEvent(((ST_AnagTipiRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void RemoveST_AnagTipiRow(ST_AnagTipiRow row) { + this.Rows.Remove(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + DS_SheetTech ds = new DS_SheetTech(); + global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); + any1.Namespace = "http://www.w3.org/2001/XMLSchema"; + any1.MinOccurs = new decimal(0); + any1.MaxOccurs = decimal.MaxValue; + any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any1); + global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; + any2.MinOccurs = new decimal(1); + any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any2); + global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute1.Name = "namespace"; + attribute1.FixedValue = ds.Namespace; + type.Attributes.Add(attribute1); + global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute2.Name = "tableTypeName"; + attribute2.FixedValue = "ST_AnagTipiDataTable"; + type.Attributes.Add(attribute2); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + } + + /// + ///Represents the strongly named DataTable class. + /// + [global::System.Serializable()] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] + public partial class ST_TemplateDataTable : global::System.Data.TypedTableBase { + + private global::System.Data.DataColumn columnCodTempl; + + private global::System.Data.DataColumn columnDescTempl; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateDataTable() { + this.TableName = "ST_Template"; + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_TemplateDataTable(global::System.Data.DataTable table) { + this.TableName = table.TableName; + if ((table.CaseSensitive != table.DataSet.CaseSensitive)) { + this.CaseSensitive = table.CaseSensitive; + } + if ((table.Locale.ToString() != table.DataSet.Locale.ToString())) { + this.Locale = table.Locale; + } + if ((table.Namespace != table.DataSet.Namespace)) { + this.Namespace = table.Namespace; + } + this.Prefix = table.Prefix; + this.MinimumCapacity = table.MinimumCapacity; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected ST_TemplateDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context) { + this.InitVars(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CodTemplColumn { + get { + return this.columnCodTempl; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn DescTemplColumn { + get { + return this.columnDescTempl; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public int Count { + get { + return this.Rows.Count; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRow this[int index] { + get { + return ((ST_TemplateRow)(this.Rows[index])); + } + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_TemplateRowChangeEventHandler ST_TemplateRowChanging; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_TemplateRowChangeEventHandler ST_TemplateRowChanged; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_TemplateRowChangeEventHandler ST_TemplateRowDeleting; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_TemplateRowChangeEventHandler ST_TemplateRowDeleted; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void AddST_TemplateRow(ST_TemplateRow row) { + this.Rows.Add(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRow AddST_TemplateRow(string CodTempl, string DescTempl) { + ST_TemplateRow rowST_TemplateRow = ((ST_TemplateRow)(this.NewRow())); + object[] columnValuesArray = new object[] { + CodTempl, + DescTempl}; + rowST_TemplateRow.ItemArray = columnValuesArray; + this.Rows.Add(rowST_TemplateRow); + return rowST_TemplateRow; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRow FindByCodTempl(string CodTempl) { + return ((ST_TemplateRow)(this.Rows.Find(new object[] { + CodTempl}))); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public override global::System.Data.DataTable Clone() { + ST_TemplateDataTable cln = ((ST_TemplateDataTable)(base.Clone())); + cln.InitVars(); + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataTable CreateInstance() { + return new ST_TemplateDataTable(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal void InitVars() { + this.columnCodTempl = base.Columns["CodTempl"]; + this.columnDescTempl = base.Columns["DescTempl"]; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitClass() { + this.columnCodTempl = new global::System.Data.DataColumn("CodTempl", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodTempl); + this.columnDescTempl = new global::System.Data.DataColumn("DescTempl", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDescTempl); + this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { + this.columnCodTempl}, true)); + this.columnCodTempl.AllowDBNull = false; + this.columnCodTempl.Unique = true; + this.columnCodTempl.MaxLength = 50; + this.columnDescTempl.AllowDBNull = false; + this.columnDescTempl.MaxLength = 250; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRow NewST_TemplateRow() { + return ((ST_TemplateRow)(this.NewRow())); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) { + return new ST_TemplateRow(builder); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Type GetRowType() { + return typeof(ST_TemplateRow); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanged(e); + if ((this.ST_TemplateRowChanged != null)) { + this.ST_TemplateRowChanged(this, new ST_TemplateRowChangeEvent(((ST_TemplateRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanging(e); + if ((this.ST_TemplateRowChanging != null)) { + this.ST_TemplateRowChanging(this, new ST_TemplateRowChangeEvent(((ST_TemplateRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleted(e); + if ((this.ST_TemplateRowDeleted != null)) { + this.ST_TemplateRowDeleted(this, new ST_TemplateRowChangeEvent(((ST_TemplateRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleting(e); + if ((this.ST_TemplateRowDeleting != null)) { + this.ST_TemplateRowDeleting(this, new ST_TemplateRowChangeEvent(((ST_TemplateRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void RemoveST_TemplateRow(ST_TemplateRow row) { + this.Rows.Remove(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + DS_SheetTech ds = new DS_SheetTech(); + global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); + any1.Namespace = "http://www.w3.org/2001/XMLSchema"; + any1.MinOccurs = new decimal(0); + any1.MaxOccurs = decimal.MaxValue; + any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any1); + global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; + any2.MinOccurs = new decimal(1); + any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any2); + global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute1.Name = "namespace"; + attribute1.FixedValue = ds.Namespace; + type.Attributes.Add(attribute1); + global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute2.Name = "tableTypeName"; + attribute2.FixedValue = "ST_TemplateDataTable"; + type.Attributes.Add(attribute2); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + } + + /// + ///Represents the strongly named DataTable class. + /// + [global::System.Serializable()] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] + public partial class ST_TemplateRowsDataTable : global::System.Data.TypedTableBase { + + private global::System.Data.DataColumn columnCodTempl; + + private global::System.Data.DataColumn columnLabel; + + private global::System.Data.DataColumn columnOggetto; + + private global::System.Data.DataColumn columnNum; + + private global::System.Data.DataColumn columnCodGruppo; + + private global::System.Data.DataColumn columnCodTipo; + + private global::System.Data.DataColumn columnValue; + + private global::System.Data.DataColumn columnCheckType; + + private global::System.Data.DataColumn columnRequired; + + private global::System.Data.DataColumn columnNote; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsDataTable() { + this.TableName = "ST_TemplateRows"; + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_TemplateRowsDataTable(global::System.Data.DataTable table) { + this.TableName = table.TableName; + if ((table.CaseSensitive != table.DataSet.CaseSensitive)) { + this.CaseSensitive = table.CaseSensitive; + } + if ((table.Locale.ToString() != table.DataSet.Locale.ToString())) { + this.Locale = table.Locale; + } + if ((table.Namespace != table.DataSet.Namespace)) { + this.Namespace = table.Namespace; + } + this.Prefix = table.Prefix; + this.MinimumCapacity = table.MinimumCapacity; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected ST_TemplateRowsDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context) { + this.InitVars(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CodTemplColumn { + get { + return this.columnCodTempl; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn LabelColumn { + get { + return this.columnLabel; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn OggettoColumn { + get { + return this.columnOggetto; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn NumColumn { + get { + return this.columnNum; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CodGruppoColumn { + get { + return this.columnCodGruppo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CodTipoColumn { + get { + return this.columnCodTipo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn ValueColumn { + get { + return this.columnValue; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn CheckTypeColumn { + get { + return this.columnCheckType; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn RequiredColumn { + get { + return this.columnRequired; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn NoteColumn { + get { + return this.columnNote; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public int Count { + get { + return this.Rows.Count; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsRow this[int index] { + get { + return ((ST_TemplateRowsRow)(this.Rows[index])); + } + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_TemplateRowsRowChangeEventHandler ST_TemplateRowsRowChanging; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_TemplateRowsRowChangeEventHandler ST_TemplateRowsRowChanged; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_TemplateRowsRowChangeEventHandler ST_TemplateRowsRowDeleting; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public event ST_TemplateRowsRowChangeEventHandler ST_TemplateRowsRowDeleted; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void AddST_TemplateRowsRow(ST_TemplateRowsRow row) { + this.Rows.Add(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsRow AddST_TemplateRowsRow(ST_TemplateRow parentST_TemplateRowByFK_ST_TemplateRows_ST_Template, string Label, short Oggetto, int Num, ST_AnagGruppiRow parentST_AnagGruppiRowByFK_ST_TemplateRows_ST_AnagGruppi, ST_AnagTipiRow parentST_AnagTipiRowByFK_ST_TemplateRows_ST_AnagTipi1, string Value, string CheckType, bool Required, string Note) { + ST_TemplateRowsRow rowST_TemplateRowsRow = ((ST_TemplateRowsRow)(this.NewRow())); + object[] columnValuesArray = new object[] { + null, + Label, + Oggetto, + Num, + null, + null, + Value, + CheckType, + Required, + Note}; + if ((parentST_TemplateRowByFK_ST_TemplateRows_ST_Template != null)) { + columnValuesArray[0] = parentST_TemplateRowByFK_ST_TemplateRows_ST_Template[0]; + } + if ((parentST_AnagGruppiRowByFK_ST_TemplateRows_ST_AnagGruppi != null)) { + columnValuesArray[4] = parentST_AnagGruppiRowByFK_ST_TemplateRows_ST_AnagGruppi[0]; + } + if ((parentST_AnagTipiRowByFK_ST_TemplateRows_ST_AnagTipi1 != null)) { + columnValuesArray[5] = parentST_AnagTipiRowByFK_ST_TemplateRows_ST_AnagTipi1[0]; + } + rowST_TemplateRowsRow.ItemArray = columnValuesArray; + this.Rows.Add(rowST_TemplateRowsRow); + return rowST_TemplateRowsRow; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsRow FindByCodTemplLabelOggetto(string CodTempl, string Label, short Oggetto) { + return ((ST_TemplateRowsRow)(this.Rows.Find(new object[] { + CodTempl, + Label, + Oggetto}))); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public override global::System.Data.DataTable Clone() { + ST_TemplateRowsDataTable cln = ((ST_TemplateRowsDataTable)(base.Clone())); + cln.InitVars(); + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataTable CreateInstance() { + return new ST_TemplateRowsDataTable(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal void InitVars() { + this.columnCodTempl = base.Columns["CodTempl"]; + this.columnLabel = base.Columns["Label"]; + this.columnOggetto = base.Columns["Oggetto"]; + this.columnNum = base.Columns["Num"]; + this.columnCodGruppo = base.Columns["CodGruppo"]; + this.columnCodTipo = base.Columns["CodTipo"]; + this.columnValue = base.Columns["Value"]; + this.columnCheckType = base.Columns["CheckType"]; + this.columnRequired = base.Columns["Required"]; + this.columnNote = base.Columns["Note"]; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitClass() { + this.columnCodTempl = new global::System.Data.DataColumn("CodTempl", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodTempl); + this.columnLabel = new global::System.Data.DataColumn("Label", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnLabel); + this.columnOggetto = new global::System.Data.DataColumn("Oggetto", typeof(short), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnOggetto); + this.columnNum = new global::System.Data.DataColumn("Num", typeof(int), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnNum); + this.columnCodGruppo = new global::System.Data.DataColumn("CodGruppo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodGruppo); + this.columnCodTipo = new global::System.Data.DataColumn("CodTipo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCodTipo); + this.columnValue = new global::System.Data.DataColumn("Value", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnValue); + this.columnCheckType = new global::System.Data.DataColumn("CheckType", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCheckType); + this.columnRequired = new global::System.Data.DataColumn("Required", typeof(bool), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnRequired); + this.columnNote = new global::System.Data.DataColumn("Note", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnNote); + this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { + this.columnCodTempl, + this.columnLabel, + this.columnOggetto}, true)); + this.columnCodTempl.AllowDBNull = false; + this.columnCodTempl.MaxLength = 50; + this.columnLabel.AllowDBNull = false; + this.columnLabel.MaxLength = 50; + this.columnOggetto.AllowDBNull = false; + this.columnNum.AllowDBNull = false; + this.columnCodGruppo.AllowDBNull = false; + this.columnCodGruppo.MaxLength = 50; + this.columnCodTipo.AllowDBNull = false; + this.columnCodTipo.MaxLength = 50; + this.columnValue.AllowDBNull = false; + this.columnValue.MaxLength = 250; + this.columnCheckType.AllowDBNull = false; + this.columnCheckType.MaxLength = 50; + this.columnRequired.AllowDBNull = false; + this.columnNote.AllowDBNull = false; + this.columnNote.MaxLength = 500; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsRow NewST_TemplateRowsRow() { + return ((ST_TemplateRowsRow)(this.NewRow())); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) { + return new ST_TemplateRowsRow(builder); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override global::System.Type GetRowType() { + return typeof(ST_TemplateRowsRow); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanged(e); + if ((this.ST_TemplateRowsRowChanged != null)) { + this.ST_TemplateRowsRowChanged(this, new ST_TemplateRowsRowChangeEvent(((ST_TemplateRowsRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanging(e); + if ((this.ST_TemplateRowsRowChanging != null)) { + this.ST_TemplateRowsRowChanging(this, new ST_TemplateRowsRowChangeEvent(((ST_TemplateRowsRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleted(e); + if ((this.ST_TemplateRowsRowDeleted != null)) { + this.ST_TemplateRowsRowDeleted(this, new ST_TemplateRowsRowChangeEvent(((ST_TemplateRowsRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleting(e); + if ((this.ST_TemplateRowsRowDeleting != null)) { + this.ST_TemplateRowsRowDeleting(this, new ST_TemplateRowsRowChangeEvent(((ST_TemplateRowsRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void RemoveST_TemplateRowsRow(ST_TemplateRowsRow row) { + this.Rows.Remove(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + DS_SheetTech ds = new DS_SheetTech(); + global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); + any1.Namespace = "http://www.w3.org/2001/XMLSchema"; + any1.MinOccurs = new decimal(0); + any1.MaxOccurs = decimal.MaxValue; + any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any1); + global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; + any2.MinOccurs = new decimal(1); + any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any2); + global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute1.Name = "namespace"; + attribute1.FixedValue = ds.Namespace; + type.Attributes.Add(attribute1); + global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute2.Name = "tableTypeName"; + attribute2.FixedValue = "ST_TemplateRowsDataTable"; + type.Attributes.Add(attribute2); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + } + + /// + ///Represents strongly named DataRow class. + /// + public partial class ST_ActualRow : global::System.Data.DataRow { + + private ST_ActualDataTable tableST_Actual; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_ActualRow(global::System.Data.DataRowBuilder rb) : + base(rb) { + this.tableST_Actual = ((ST_ActualDataTable)(this.Table)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public int IdxST { + get { + return ((int)(this[this.tableST_Actual.IdxSTColumn])); + } + set { + this[this.tableST_Actual.IdxSTColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CodTempl { + get { + return ((string)(this[this.tableST_Actual.CodTemplColumn])); + } + set { + this[this.tableST_Actual.CodTemplColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CodArticolo { + get { + return ((string)(this[this.tableST_Actual.CodArticoloColumn])); + } + set { + this[this.tableST_Actual.CodArticoloColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public int MatrOpr { + get { + return ((int)(this[this.tableST_Actual.MatrOprColumn])); + } + set { + this[this.tableST_Actual.MatrOprColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public System.DateTime DtMod { + get { + return ((global::System.DateTime)(this[this.tableST_Actual.DtModColumn])); + } + set { + this[this.tableST_Actual.DtModColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRow ST_TemplateRow { + get { + return ((ST_TemplateRow)(this.GetParentRow(this.Table.ParentRelations["FK_ST_Actual_ST_Template"]))); + } + set { + this.SetParentRow(value, this.Table.ParentRelations["FK_ST_Actual_ST_Template"]); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRowRow[] GetST_ActualRowRows() { + if ((this.Table.ChildRelations["FK_ST_ActualRows_ST_Actual"] == null)) { + return new ST_ActualRowRow[0]; + } + else { + return ((ST_ActualRowRow[])(base.GetChildRows(this.Table.ChildRelations["FK_ST_ActualRows_ST_Actual"]))); + } + } + } + + /// + ///Represents strongly named DataRow class. + /// + public partial class ST_ActualRowRow : global::System.Data.DataRow { + + private ST_ActualRowDataTable tableST_ActualRow; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_ActualRowRow(global::System.Data.DataRowBuilder rb) : + base(rb) { + this.tableST_ActualRow = ((ST_ActualRowDataTable)(this.Table)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public int IdxST { + get { + return ((int)(this[this.tableST_ActualRow.IdxSTColumn])); + } + set { + this[this.tableST_ActualRow.IdxSTColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string Label { + get { + return ((string)(this[this.tableST_ActualRow.LabelColumn])); + } + set { + this[this.tableST_ActualRow.LabelColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public short Oggetto { + get { + return ((short)(this[this.tableST_ActualRow.OggettoColumn])); + } + set { + this[this.tableST_ActualRow.OggettoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public int Num { + get { + return ((int)(this[this.tableST_ActualRow.NumColumn])); + } + set { + this[this.tableST_ActualRow.NumColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CodGruppo { + get { + return ((string)(this[this.tableST_ActualRow.CodGruppoColumn])); + } + set { + this[this.tableST_ActualRow.CodGruppoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CodTipo { + get { + return ((string)(this[this.tableST_ActualRow.CodTipoColumn])); + } + set { + this[this.tableST_ActualRow.CodTipoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string Value { + get { + return ((string)(this[this.tableST_ActualRow.ValueColumn])); + } + set { + this[this.tableST_ActualRow.ValueColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CheckType { + get { + return ((string)(this[this.tableST_ActualRow.CheckTypeColumn])); + } + set { + this[this.tableST_ActualRow.CheckTypeColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool Required { + get { + return ((bool)(this[this.tableST_ActualRow.RequiredColumn])); + } + set { + this[this.tableST_ActualRow.RequiredColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string ExtCode { + get { + return ((string)(this[this.tableST_ActualRow.ExtCodeColumn])); + } + set { + this[this.tableST_ActualRow.ExtCodeColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string Note { + get { + return ((string)(this[this.tableST_ActualRow.NoteColumn])); + } + set { + this[this.tableST_ActualRow.NoteColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string DescGruppo { + get { + try { + return ((string)(this[this.tableST_ActualRow.DescGruppoColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("Il valore della colonna \'DescGruppo\' nella tabella \'ST_ActualRow\' è DBNull.", e); + } + } + set { + this[this.tableST_ActualRow.DescGruppoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string DescTipo { + get { + return ((string)(this[this.tableST_ActualRow.DescTipoColumn])); + } + set { + this[this.tableST_ActualRow.DescTipoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRow ST_ActualRow { + get { + return ((ST_ActualRow)(this.GetParentRow(this.Table.ParentRelations["FK_ST_ActualRows_ST_Actual"]))); + } + set { + this.SetParentRow(value, this.Table.ParentRelations["FK_ST_ActualRows_ST_Actual"]); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool IsDescGruppoNull() { + return this.IsNull(this.tableST_ActualRow.DescGruppoColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void SetDescGruppoNull() { + this[this.tableST_ActualRow.DescGruppoColumn] = global::System.Convert.DBNull; + } + } + + /// + ///Represents strongly named DataRow class. + /// + public partial class ST_CheckRow : global::System.Data.DataRow { + + private ST_CheckDataTable tableST_Check; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_CheckRow(global::System.Data.DataRowBuilder rb) : + base(rb) { + this.tableST_Check = ((ST_CheckDataTable)(this.Table)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public System.DateTime DtEvent { + get { + return ((global::System.DateTime)(this[this.tableST_Check.DtEventColumn])); + } + set { + this[this.tableST_Check.DtEventColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public int IdxODL { + get { + return ((int)(this[this.tableST_Check.IdxODLColumn])); + } + set { + this[this.tableST_Check.IdxODLColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public int IdxST { + get { + return ((int)(this[this.tableST_Check.IdxSTColumn])); + } + set { + this[this.tableST_Check.IdxSTColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public int Num { + get { + return ((int)(this[this.tableST_Check.NumColumn])); + } + set { + this[this.tableST_Check.NumColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string ValueCurr { + get { + return ((string)(this[this.tableST_Check.ValueCurrColumn])); + } + set { + this[this.tableST_Check.ValueCurrColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool CheckOk { + get { + return ((bool)(this[this.tableST_Check.CheckOkColumn])); + } + set { + this[this.tableST_Check.CheckOkColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string DtMod { + get { + return ((string)(this[this.tableST_Check.DtModColumn])); + } + set { + this[this.tableST_Check.DtModColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string UserMod { + get { + return ((string)(this[this.tableST_Check.UserModColumn])); + } + set { + this[this.tableST_Check.UserModColumn] = value; + } + } + } + + /// + ///Represents strongly named DataRow class. + /// + public partial class ST_AnagGruppiRow : global::System.Data.DataRow { + + private ST_AnagGruppiDataTable tableST_AnagGruppi; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_AnagGruppiRow(global::System.Data.DataRowBuilder rb) : + base(rb) { + this.tableST_AnagGruppi = ((ST_AnagGruppiDataTable)(this.Table)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CodGruppo { + get { + return ((string)(this[this.tableST_AnagGruppi.CodGruppoColumn])); + } + set { + this[this.tableST_AnagGruppi.CodGruppoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string DescGruppo { + get { + try { + return ((string)(this[this.tableST_AnagGruppi.DescGruppoColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("Il valore della colonna \'DescGruppo\' nella tabella \'ST_AnagGruppi\' è DBNull.", e); + } + } + set { + this[this.tableST_AnagGruppi.DescGruppoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool IsDescGruppoNull() { + return this.IsNull(this.tableST_AnagGruppi.DescGruppoColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public void SetDescGruppoNull() { + this[this.tableST_AnagGruppi.DescGruppoColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsRow[] GetST_TemplateRowsRows() { + if ((this.Table.ChildRelations["FK_ST_TemplateRows_ST_AnagGruppi"] == null)) { + return new ST_TemplateRowsRow[0]; + } + else { + return ((ST_TemplateRowsRow[])(base.GetChildRows(this.Table.ChildRelations["FK_ST_TemplateRows_ST_AnagGruppi"]))); + } + } + } + + /// + ///Represents strongly named DataRow class. + /// + public partial class ST_AnagTipiRow : global::System.Data.DataRow { + + private ST_AnagTipiDataTable tableST_AnagTipi; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_AnagTipiRow(global::System.Data.DataRowBuilder rb) : + base(rb) { + this.tableST_AnagTipi = ((ST_AnagTipiDataTable)(this.Table)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CodTipo { + get { + return ((string)(this[this.tableST_AnagTipi.CodTipoColumn])); + } + set { + this[this.tableST_AnagTipi.CodTipoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string DescTipo { + get { + return ((string)(this[this.tableST_AnagTipi.DescTipoColumn])); + } + set { + this[this.tableST_AnagTipi.DescTipoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsRow[] GetST_TemplateRowsRows() { + if ((this.Table.ChildRelations["FK_ST_TemplateRows_ST_AnagTipi1"] == null)) { + return new ST_TemplateRowsRow[0]; + } + else { + return ((ST_TemplateRowsRow[])(base.GetChildRows(this.Table.ChildRelations["FK_ST_TemplateRows_ST_AnagTipi1"]))); + } + } + } + + /// + ///Represents strongly named DataRow class. + /// + public partial class ST_TemplateRow : global::System.Data.DataRow { + + private ST_TemplateDataTable tableST_Template; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_TemplateRow(global::System.Data.DataRowBuilder rb) : + base(rb) { + this.tableST_Template = ((ST_TemplateDataTable)(this.Table)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CodTempl { + get { + return ((string)(this[this.tableST_Template.CodTemplColumn])); + } + set { + this[this.tableST_Template.CodTemplColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string DescTempl { + get { + return ((string)(this[this.tableST_Template.DescTemplColumn])); + } + set { + this[this.tableST_Template.DescTemplColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRow[] GetST_ActualRows() { + if ((this.Table.ChildRelations["FK_ST_Actual_ST_Template"] == null)) { + return new ST_ActualRow[0]; + } + else { + return ((ST_ActualRow[])(base.GetChildRows(this.Table.ChildRelations["FK_ST_Actual_ST_Template"]))); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsRow[] GetST_TemplateRowsRows() { + if ((this.Table.ChildRelations["FK_ST_TemplateRows_ST_Template"] == null)) { + return new ST_TemplateRowsRow[0]; + } + else { + return ((ST_TemplateRowsRow[])(base.GetChildRows(this.Table.ChildRelations["FK_ST_TemplateRows_ST_Template"]))); + } + } + } + + /// + ///Represents strongly named DataRow class. + /// + public partial class ST_TemplateRowsRow : global::System.Data.DataRow { + + private ST_TemplateRowsDataTable tableST_TemplateRows; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal ST_TemplateRowsRow(global::System.Data.DataRowBuilder rb) : + base(rb) { + this.tableST_TemplateRows = ((ST_TemplateRowsDataTable)(this.Table)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CodTempl { + get { + return ((string)(this[this.tableST_TemplateRows.CodTemplColumn])); + } + set { + this[this.tableST_TemplateRows.CodTemplColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string Label { + get { + return ((string)(this[this.tableST_TemplateRows.LabelColumn])); + } + set { + this[this.tableST_TemplateRows.LabelColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public short Oggetto { + get { + return ((short)(this[this.tableST_TemplateRows.OggettoColumn])); + } + set { + this[this.tableST_TemplateRows.OggettoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public int Num { + get { + return ((int)(this[this.tableST_TemplateRows.NumColumn])); + } + set { + this[this.tableST_TemplateRows.NumColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CodGruppo { + get { + return ((string)(this[this.tableST_TemplateRows.CodGruppoColumn])); + } + set { + this[this.tableST_TemplateRows.CodGruppoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CodTipo { + get { + return ((string)(this[this.tableST_TemplateRows.CodTipoColumn])); + } + set { + this[this.tableST_TemplateRows.CodTipoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string Value { + get { + return ((string)(this[this.tableST_TemplateRows.ValueColumn])); + } + set { + this[this.tableST_TemplateRows.ValueColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string CheckType { + get { + return ((string)(this[this.tableST_TemplateRows.CheckTypeColumn])); + } + set { + this[this.tableST_TemplateRows.CheckTypeColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool Required { + get { + return ((bool)(this[this.tableST_TemplateRows.RequiredColumn])); + } + set { + this[this.tableST_TemplateRows.RequiredColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public string Note { + get { + return ((string)(this[this.tableST_TemplateRows.NoteColumn])); + } + set { + this[this.tableST_TemplateRows.NoteColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagGruppiRow ST_AnagGruppiRow { + get { + return ((ST_AnagGruppiRow)(this.GetParentRow(this.Table.ParentRelations["FK_ST_TemplateRows_ST_AnagGruppi"]))); + } + set { + this.SetParentRow(value, this.Table.ParentRelations["FK_ST_TemplateRows_ST_AnagGruppi"]); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagTipiRow ST_AnagTipiRow { + get { + return ((ST_AnagTipiRow)(this.GetParentRow(this.Table.ParentRelations["FK_ST_TemplateRows_ST_AnagTipi1"]))); + } + set { + this.SetParentRow(value, this.Table.ParentRelations["FK_ST_TemplateRows_ST_AnagTipi1"]); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRow ST_TemplateRow { + get { + return ((ST_TemplateRow)(this.GetParentRow(this.Table.ParentRelations["FK_ST_TemplateRows_ST_Template"]))); + } + set { + this.SetParentRow(value, this.Table.ParentRelations["FK_ST_TemplateRows_ST_Template"]); + } + } + } + + /// + ///Row event argument class + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public class ST_ActualRowChangeEvent : global::System.EventArgs { + + private ST_ActualRow eventRow; + + private global::System.Data.DataRowAction eventAction; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRowChangeEvent(ST_ActualRow row, global::System.Data.DataRowAction action) { + this.eventRow = row; + this.eventAction = action; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRow Row { + get { + return this.eventRow; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataRowAction Action { + get { + return this.eventAction; + } + } + } + + /// + ///Row event argument class + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public class ST_ActualRowRowChangeEvent : global::System.EventArgs { + + private ST_ActualRowRow eventRow; + + private global::System.Data.DataRowAction eventAction; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRowRowChangeEvent(ST_ActualRowRow row, global::System.Data.DataRowAction action) { + this.eventRow = row; + this.eventAction = action; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRowRow Row { + get { + return this.eventRow; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataRowAction Action { + get { + return this.eventAction; + } + } + } + + /// + ///Row event argument class + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public class ST_CheckRowChangeEvent : global::System.EventArgs { + + private ST_CheckRow eventRow; + + private global::System.Data.DataRowAction eventAction; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_CheckRowChangeEvent(ST_CheckRow row, global::System.Data.DataRowAction action) { + this.eventRow = row; + this.eventAction = action; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_CheckRow Row { + get { + return this.eventRow; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataRowAction Action { + get { + return this.eventAction; + } + } + } + + /// + ///Row event argument class + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public class ST_AnagGruppiRowChangeEvent : global::System.EventArgs { + + private ST_AnagGruppiRow eventRow; + + private global::System.Data.DataRowAction eventAction; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagGruppiRowChangeEvent(ST_AnagGruppiRow row, global::System.Data.DataRowAction action) { + this.eventRow = row; + this.eventAction = action; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagGruppiRow Row { + get { + return this.eventRow; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataRowAction Action { + get { + return this.eventAction; + } + } + } + + /// + ///Row event argument class + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public class ST_AnagTipiRowChangeEvent : global::System.EventArgs { + + private ST_AnagTipiRow eventRow; + + private global::System.Data.DataRowAction eventAction; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagTipiRowChangeEvent(ST_AnagTipiRow row, global::System.Data.DataRowAction action) { + this.eventRow = row; + this.eventAction = action; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagTipiRow Row { + get { + return this.eventRow; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataRowAction Action { + get { + return this.eventAction; + } + } + } + + /// + ///Row event argument class + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public class ST_TemplateRowChangeEvent : global::System.EventArgs { + + private ST_TemplateRow eventRow; + + private global::System.Data.DataRowAction eventAction; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowChangeEvent(ST_TemplateRow row, global::System.Data.DataRowAction action) { + this.eventRow = row; + this.eventAction = action; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRow Row { + get { + return this.eventRow; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataRowAction Action { + get { + return this.eventAction; + } + } + } + + /// + ///Row event argument class + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public class ST_TemplateRowsRowChangeEvent : global::System.EventArgs { + + private ST_TemplateRowsRow eventRow; + + private global::System.Data.DataRowAction eventAction; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsRowChangeEvent(ST_TemplateRowsRow row, global::System.Data.DataRowAction action) { + this.eventRow = row; + this.eventAction = action; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsRow Row { + get { + return this.eventRow; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataRowAction Action { + get { + return this.eventAction; + } + } + } + } +} +namespace MapoDb.DS_SheetTechTableAdapters { + + + /// + ///Represents the connection and commands used to retrieve and save data. + /// + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DataObjectAttribute(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" + + ", Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public partial class ST_ActualTableAdapter : global::System.ComponentModel.Component { + + private global::System.Data.SqlClient.SqlDataAdapter _adapter; + + private global::System.Data.SqlClient.SqlConnection _connection; + + private global::System.Data.SqlClient.SqlTransaction _transaction; + + private global::System.Data.SqlClient.SqlCommand[] _commandCollection; + + private bool _clearBeforeFill; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualTableAdapter() { + this.ClearBeforeFill = true; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected internal global::System.Data.SqlClient.SqlDataAdapter Adapter { + get { + if ((this._adapter == null)) { + this.InitAdapter(); + } + return this._adapter; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlConnection Connection { + get { + if ((this._connection == null)) { + this.InitConnection(); + } + return this._connection; + } + set { + this._connection = value; + if ((this.Adapter.InsertCommand != null)) { + this.Adapter.InsertCommand.Connection = value; + } + if ((this.Adapter.DeleteCommand != null)) { + this.Adapter.DeleteCommand.Connection = value; + } + if ((this.Adapter.UpdateCommand != null)) { + this.Adapter.UpdateCommand.Connection = value; + } + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + if ((this.CommandCollection[i] != null)) { + ((global::System.Data.SqlClient.SqlCommand)(this.CommandCollection[i])).Connection = value; + } + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlTransaction Transaction { + get { + return this._transaction; + } + set { + this._transaction = value; + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + this.CommandCollection[i].Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.DeleteCommand != null))) { + this.Adapter.DeleteCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.InsertCommand != null))) { + this.Adapter.InsertCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.UpdateCommand != null))) { + this.Adapter.UpdateCommand.Transaction = this._transaction; + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected global::System.Data.SqlClient.SqlCommand[] CommandCollection { + get { + if ((this._commandCollection == null)) { + this.InitCommandCollection(); + } + return this._commandCollection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool ClearBeforeFill { + get { + return this._clearBeforeFill; + } + set { + this._clearBeforeFill = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitAdapter() { + this._adapter = new global::System.Data.SqlClient.SqlDataAdapter(); + global::System.Data.Common.DataTableMapping tableMapping = new global::System.Data.Common.DataTableMapping(); + tableMapping.SourceTable = "Table"; + tableMapping.DataSetTable = "ST_Actual"; + tableMapping.ColumnMappings.Add("IdxST", "IdxST"); + tableMapping.ColumnMappings.Add("CodTempl", "CodTempl"); + tableMapping.ColumnMappings.Add("CodArticolo", "CodArticolo"); + tableMapping.ColumnMappings.Add("MatrOpr", "MatrOpr"); + tableMapping.ColumnMappings.Add("DtMod", "DtMod"); + this._adapter.TableMappings.Add(tableMapping); + this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.DeleteCommand.Connection = this.Connection; + this._adapter.DeleteCommand.CommandText = "DELETE FROM [dbo].[ST_Actual] WHERE (([IdxST] = @Original_IdxST) AND ([CodTempl] " + + "= @Original_CodTempl) AND ([CodArticolo] = @Original_CodArticolo) AND ([MatrOpr]" + + " = @Original_MatrOpr) AND ([DtMod] = @Original_DtMod))"; + this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_IdxST", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodArticolo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodArticolo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_MatrOpr", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "MatrOpr", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DtMod", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtMod", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.InsertCommand.Connection = this.Connection; + this._adapter.InsertCommand.CommandText = "INSERT INTO [dbo].[ST_Actual] ([CodTempl], [CodArticolo], [MatrOpr], [DtMod]) VAL" + + "UES (@CodTempl, @CodArticolo, @MatrOpr, @DtMod);\r\nSELECT IdxST, CodTempl, CodArt" + + "icolo, MatrOpr, DtMod FROM ST_Actual WHERE (IdxST = SCOPE_IDENTITY())"; + this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodArticolo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodArticolo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@MatrOpr", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "MatrOpr", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DtMod", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtMod", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.UpdateCommand.Connection = this.Connection; + this._adapter.UpdateCommand.CommandText = @"UPDATE [dbo].[ST_Actual] SET [CodTempl] = @CodTempl, [CodArticolo] = @CodArticolo, [MatrOpr] = @MatrOpr, [DtMod] = @DtMod WHERE (([IdxST] = @Original_IdxST) AND ([CodTempl] = @Original_CodTempl) AND ([CodArticolo] = @Original_CodArticolo) AND ([MatrOpr] = @Original_MatrOpr) AND ([DtMod] = @Original_DtMod)); +SELECT IdxST, CodTempl, CodArticolo, MatrOpr, DtMod FROM ST_Actual WHERE (IdxST = @IdxST)"; + this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodArticolo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodArticolo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@MatrOpr", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "MatrOpr", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DtMod", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtMod", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_IdxST", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodArticolo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodArticolo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_MatrOpr", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "MatrOpr", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DtMod", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtMod", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IdxST", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitConnection() { + this._connection = new global::System.Data.SqlClient.SqlConnection(); + this._connection.ConnectionString = global::MapoDb.Properties.Settings.Default.MoonProConnectionString; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitCommandCollection() { + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[1]; + this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[0].Connection = this.Connection; + this._commandCollection[0].CommandText = "SELECT IdxST, CodTempl, CodArticolo, MatrOpr, DtMod FROM dbo.ST_Actual"; + this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, true)] + public virtual int Fill(DS_SheetTech.ST_ActualDataTable dataTable) { + this.Adapter.SelectCommand = this.CommandCollection[0]; + if ((this.ClearBeforeFill == true)) { + dataTable.Clear(); + } + int returnValue = this.Adapter.Fill(dataTable); + return returnValue; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)] + public virtual DS_SheetTech.ST_ActualDataTable GetData() { + this.Adapter.SelectCommand = this.CommandCollection[0]; + DS_SheetTech.ST_ActualDataTable dataTable = new DS_SheetTech.ST_ActualDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech.ST_ActualDataTable dataTable) { + return this.Adapter.Update(dataTable); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech dataSet) { + return this.Adapter.Update(dataSet, "ST_Actual"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow dataRow) { + return this.Adapter.Update(new global::System.Data.DataRow[] { + dataRow}); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow[] dataRows) { + return this.Adapter.Update(dataRows); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] + public virtual int Delete(int Original_IdxST, string Original_CodTempl, string Original_CodArticolo, int Original_MatrOpr, System.DateTime Original_DtMod) { + this.Adapter.DeleteCommand.Parameters[0].Value = ((int)(Original_IdxST)); + if ((Original_CodTempl == null)) { + throw new global::System.ArgumentNullException("Original_CodTempl"); + } + else { + this.Adapter.DeleteCommand.Parameters[1].Value = ((string)(Original_CodTempl)); + } + if ((Original_CodArticolo == null)) { + throw new global::System.ArgumentNullException("Original_CodArticolo"); + } + else { + this.Adapter.DeleteCommand.Parameters[2].Value = ((string)(Original_CodArticolo)); + } + this.Adapter.DeleteCommand.Parameters[3].Value = ((int)(Original_MatrOpr)); + this.Adapter.DeleteCommand.Parameters[4].Value = ((System.DateTime)(Original_DtMod)); + global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; + if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.DeleteCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.DeleteCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.DeleteCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] + public virtual int Insert(string CodTempl, string CodArticolo, int MatrOpr, System.DateTime DtMod) { + if ((CodTempl == null)) { + throw new global::System.ArgumentNullException("CodTempl"); + } + else { + this.Adapter.InsertCommand.Parameters[0].Value = ((string)(CodTempl)); + } + if ((CodArticolo == null)) { + throw new global::System.ArgumentNullException("CodArticolo"); + } + else { + this.Adapter.InsertCommand.Parameters[1].Value = ((string)(CodArticolo)); + } + this.Adapter.InsertCommand.Parameters[2].Value = ((int)(MatrOpr)); + this.Adapter.InsertCommand.Parameters[3].Value = ((System.DateTime)(DtMod)); + global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; + if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.InsertCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.InsertCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.InsertCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string CodTempl, string CodArticolo, int MatrOpr, System.DateTime DtMod, int Original_IdxST, string Original_CodTempl, string Original_CodArticolo, int Original_MatrOpr, System.DateTime Original_DtMod, int IdxST) { + if ((CodTempl == null)) { + throw new global::System.ArgumentNullException("CodTempl"); + } + else { + this.Adapter.UpdateCommand.Parameters[0].Value = ((string)(CodTempl)); + } + if ((CodArticolo == null)) { + throw new global::System.ArgumentNullException("CodArticolo"); + } + else { + this.Adapter.UpdateCommand.Parameters[1].Value = ((string)(CodArticolo)); + } + this.Adapter.UpdateCommand.Parameters[2].Value = ((int)(MatrOpr)); + this.Adapter.UpdateCommand.Parameters[3].Value = ((System.DateTime)(DtMod)); + this.Adapter.UpdateCommand.Parameters[4].Value = ((int)(Original_IdxST)); + if ((Original_CodTempl == null)) { + throw new global::System.ArgumentNullException("Original_CodTempl"); + } + else { + this.Adapter.UpdateCommand.Parameters[5].Value = ((string)(Original_CodTempl)); + } + if ((Original_CodArticolo == null)) { + throw new global::System.ArgumentNullException("Original_CodArticolo"); + } + else { + this.Adapter.UpdateCommand.Parameters[6].Value = ((string)(Original_CodArticolo)); + } + this.Adapter.UpdateCommand.Parameters[7].Value = ((int)(Original_MatrOpr)); + this.Adapter.UpdateCommand.Parameters[8].Value = ((System.DateTime)(Original_DtMod)); + this.Adapter.UpdateCommand.Parameters[9].Value = ((int)(IdxST)); + global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; + if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.UpdateCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.UpdateCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string CodTempl, string CodArticolo, int MatrOpr, System.DateTime DtMod, int Original_IdxST, string Original_CodTempl, string Original_CodArticolo, int Original_MatrOpr, System.DateTime Original_DtMod) { + return this.Update(CodTempl, CodArticolo, MatrOpr, DtMod, Original_IdxST, Original_CodTempl, Original_CodArticolo, Original_MatrOpr, Original_DtMod, Original_IdxST); + } + } + + /// + ///Represents the connection and commands used to retrieve and save data. + /// + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DataObjectAttribute(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" + + ", Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public partial class ST_ActualRowTableAdapter : global::System.ComponentModel.Component { + + private global::System.Data.SqlClient.SqlDataAdapter _adapter; + + private global::System.Data.SqlClient.SqlConnection _connection; + + private global::System.Data.SqlClient.SqlTransaction _transaction; + + private global::System.Data.SqlClient.SqlCommand[] _commandCollection; + + private bool _clearBeforeFill; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_ActualRowTableAdapter() { + this.ClearBeforeFill = true; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected internal global::System.Data.SqlClient.SqlDataAdapter Adapter { + get { + if ((this._adapter == null)) { + this.InitAdapter(); + } + return this._adapter; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlConnection Connection { + get { + if ((this._connection == null)) { + this.InitConnection(); + } + return this._connection; + } + set { + this._connection = value; + if ((this.Adapter.InsertCommand != null)) { + this.Adapter.InsertCommand.Connection = value; + } + if ((this.Adapter.DeleteCommand != null)) { + this.Adapter.DeleteCommand.Connection = value; + } + if ((this.Adapter.UpdateCommand != null)) { + this.Adapter.UpdateCommand.Connection = value; + } + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + if ((this.CommandCollection[i] != null)) { + ((global::System.Data.SqlClient.SqlCommand)(this.CommandCollection[i])).Connection = value; + } + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlTransaction Transaction { + get { + return this._transaction; + } + set { + this._transaction = value; + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + this.CommandCollection[i].Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.DeleteCommand != null))) { + this.Adapter.DeleteCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.InsertCommand != null))) { + this.Adapter.InsertCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.UpdateCommand != null))) { + this.Adapter.UpdateCommand.Transaction = this._transaction; + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected global::System.Data.SqlClient.SqlCommand[] CommandCollection { + get { + if ((this._commandCollection == null)) { + this.InitCommandCollection(); + } + return this._commandCollection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool ClearBeforeFill { + get { + return this._clearBeforeFill; + } + set { + this._clearBeforeFill = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitAdapter() { + this._adapter = new global::System.Data.SqlClient.SqlDataAdapter(); + global::System.Data.Common.DataTableMapping tableMapping = new global::System.Data.Common.DataTableMapping(); + tableMapping.SourceTable = "Table"; + tableMapping.DataSetTable = "ST_ActualRow"; + tableMapping.ColumnMappings.Add("IdxST", "IdxST"); + tableMapping.ColumnMappings.Add("Label", "Label"); + tableMapping.ColumnMappings.Add("Oggetto", "Oggetto"); + tableMapping.ColumnMappings.Add("Num", "Num"); + tableMapping.ColumnMappings.Add("CodGruppo", "CodGruppo"); + tableMapping.ColumnMappings.Add("CodTipo", "CodTipo"); + tableMapping.ColumnMappings.Add("Value", "Value"); + tableMapping.ColumnMappings.Add("CheckType", "CheckType"); + tableMapping.ColumnMappings.Add("Required", "Required"); + tableMapping.ColumnMappings.Add("ExtCode", "ExtCode"); + tableMapping.ColumnMappings.Add("Note", "Note"); + tableMapping.ColumnMappings.Add("DescGruppo", "DescGruppo"); + tableMapping.ColumnMappings.Add("DescTipo", "DescTipo"); + this._adapter.TableMappings.Add(tableMapping); + this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.DeleteCommand.Connection = this.Connection; + this._adapter.DeleteCommand.CommandText = @"DELETE FROM [dbo].[ST_ActualRows] WHERE (([IdxST] = @Original_IdxST) AND ([Label] = @Original_Label) AND ([Oggetto] = @Original_Oggetto) AND ([Num] = @Original_Num) AND ([CodGruppo] = @Original_CodGruppo) AND ([CodTipo] = @Original_CodTipo) AND ([Value] = @Original_Value) AND ([CheckType] = @Original_CheckType) AND ([Required] = @Original_Required) AND ([Note] = @Original_Note))"; + this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_IdxST", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Label", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Label", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Oggetto", global::System.Data.SqlDbType.SmallInt, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Oggetto", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Value", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Value", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CheckType", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckType", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Required", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Required", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Note", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Note", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.InsertCommand.Connection = this.Connection; + this._adapter.InsertCommand.CommandText = @"INSERT INTO [dbo].[ST_ActualRows] ([IdxST], [Label], [Oggetto], [Num], [CodGruppo], [CodTipo], [Value], [CheckType], [Required], [ExtCode], [Note]) VALUES (@IdxST, @Label, @Oggetto, @Num, @CodGruppo, @CodTipo, @Value, @CheckType, @Required, @ExtCode, @Note); +SELECT IdxST, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, ExtCode, Note FROM ST_ActualRows WHERE (IdxST = @IdxST) AND (Label = @Label) AND (Oggetto = @Oggetto)"; + this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IdxST", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Label", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Label", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Oggetto", global::System.Data.SqlDbType.SmallInt, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Oggetto", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Value", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Value", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CheckType", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckType", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Required", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Required", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ExtCode", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ExtCode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Note", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Note", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.UpdateCommand.Connection = this.Connection; + this._adapter.UpdateCommand.CommandText = @"UPDATE [dbo].[ST_ActualRows] SET [IdxST] = @IdxST, [Label] = @Label, [Oggetto] = @Oggetto, [Num] = @Num, [CodGruppo] = @CodGruppo, [CodTipo] = @CodTipo, [Value] = @Value, [CheckType] = @CheckType, [Required] = @Required, [ExtCode] = @ExtCode, [Note] = @Note WHERE (([IdxST] = @Original_IdxST) AND ([Label] = @Original_Label) AND ([Oggetto] = @Original_Oggetto) AND ([Num] = @Original_Num) AND ([CodGruppo] = @Original_CodGruppo) AND ([CodTipo] = @Original_CodTipo) AND ([Value] = @Original_Value) AND ([CheckType] = @Original_CheckType) AND ([Required] = @Original_Required) AND ([Note] = @Original_Note)); +SELECT IdxST, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, ExtCode, Note FROM ST_ActualRows WHERE (IdxST = @IdxST) AND (Label = @Label) AND (Oggetto = @Oggetto)"; + this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IdxST", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Label", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Label", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Oggetto", global::System.Data.SqlDbType.SmallInt, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Oggetto", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Value", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Value", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CheckType", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckType", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Required", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Required", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ExtCode", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ExtCode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Note", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Note", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_IdxST", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Label", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Label", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Oggetto", global::System.Data.SqlDbType.SmallInt, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Oggetto", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Value", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Value", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CheckType", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckType", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Required", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Required", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Note", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Note", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitConnection() { + this._connection = new global::System.Data.SqlClient.SqlConnection(); + this._connection.ConnectionString = global::MapoDb.Properties.Settings.Default.MoonProConnectionString; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitCommandCollection() { + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[2]; + this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[0].Connection = this.Connection; + this._commandCollection[0].CommandText = "SELECT DescGruppo, DescTipo, IdxST, Label, Oggetto, Num, CodGruppo, CodTip" + + "o, Value, CheckType, Required, ExtCode, Note\r\nFROM v_ST_AR"; + this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; + this._commandCollection[1] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[1].Connection = this.Connection; + this._commandCollection[1].CommandText = "dbo.stp_ST_AR_getByCodArt"; + this._commandCollection[1].CommandType = global::System.Data.CommandType.StoredProcedure; + this._commandCollection[1].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@RETURN_VALUE", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.ReturnValue, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[1].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodArticolo", global::System.Data.SqlDbType.NVarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, true)] + public virtual int Fill(DS_SheetTech.ST_ActualRowDataTable dataTable) { + this.Adapter.SelectCommand = this.CommandCollection[0]; + if ((this.ClearBeforeFill == true)) { + dataTable.Clear(); + } + int returnValue = this.Adapter.Fill(dataTable); + return returnValue; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)] + public virtual DS_SheetTech.ST_ActualRowDataTable GetData() { + this.Adapter.SelectCommand = this.CommandCollection[0]; + DS_SheetTech.ST_ActualRowDataTable dataTable = new DS_SheetTech.ST_ActualRowDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] + public virtual DS_SheetTech.ST_ActualRowDataTable getByCodArt(string CodArticolo) { + this.Adapter.SelectCommand = this.CommandCollection[1]; + if ((CodArticolo == null)) { + this.Adapter.SelectCommand.Parameters[1].Value = global::System.DBNull.Value; + } + else { + this.Adapter.SelectCommand.Parameters[1].Value = ((string)(CodArticolo)); + } + DS_SheetTech.ST_ActualRowDataTable dataTable = new DS_SheetTech.ST_ActualRowDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech.ST_ActualRowDataTable dataTable) { + return this.Adapter.Update(dataTable); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech dataSet) { + return this.Adapter.Update(dataSet, "ST_ActualRow"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow dataRow) { + return this.Adapter.Update(new global::System.Data.DataRow[] { + dataRow}); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow[] dataRows) { + return this.Adapter.Update(dataRows); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] + public virtual int Delete(int Original_IdxST, string Original_Label, short Original_Oggetto, int Original_Num, string Original_CodGruppo, string Original_CodTipo, string Original_Value, string Original_CheckType, bool Original_Required, string Original_Note) { + this.Adapter.DeleteCommand.Parameters[0].Value = ((int)(Original_IdxST)); + if ((Original_Label == null)) { + throw new global::System.ArgumentNullException("Original_Label"); + } + else { + this.Adapter.DeleteCommand.Parameters[1].Value = ((string)(Original_Label)); + } + this.Adapter.DeleteCommand.Parameters[2].Value = ((short)(Original_Oggetto)); + this.Adapter.DeleteCommand.Parameters[3].Value = ((int)(Original_Num)); + if ((Original_CodGruppo == null)) { + throw new global::System.ArgumentNullException("Original_CodGruppo"); + } + else { + this.Adapter.DeleteCommand.Parameters[4].Value = ((string)(Original_CodGruppo)); + } + if ((Original_CodTipo == null)) { + throw new global::System.ArgumentNullException("Original_CodTipo"); + } + else { + this.Adapter.DeleteCommand.Parameters[5].Value = ((string)(Original_CodTipo)); + } + if ((Original_Value == null)) { + throw new global::System.ArgumentNullException("Original_Value"); + } + else { + this.Adapter.DeleteCommand.Parameters[6].Value = ((string)(Original_Value)); + } + if ((Original_CheckType == null)) { + throw new global::System.ArgumentNullException("Original_CheckType"); + } + else { + this.Adapter.DeleteCommand.Parameters[7].Value = ((string)(Original_CheckType)); + } + this.Adapter.DeleteCommand.Parameters[8].Value = ((bool)(Original_Required)); + if ((Original_Note == null)) { + throw new global::System.ArgumentNullException("Original_Note"); + } + else { + this.Adapter.DeleteCommand.Parameters[9].Value = ((string)(Original_Note)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; + if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.DeleteCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.DeleteCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.DeleteCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] + public virtual int Insert(int IdxST, string Label, short Oggetto, int Num, string CodGruppo, string CodTipo, string Value, string CheckType, bool Required, string ExtCode, string Note) { + this.Adapter.InsertCommand.Parameters[0].Value = ((int)(IdxST)); + if ((Label == null)) { + throw new global::System.ArgumentNullException("Label"); + } + else { + this.Adapter.InsertCommand.Parameters[1].Value = ((string)(Label)); + } + this.Adapter.InsertCommand.Parameters[2].Value = ((short)(Oggetto)); + this.Adapter.InsertCommand.Parameters[3].Value = ((int)(Num)); + if ((CodGruppo == null)) { + throw new global::System.ArgumentNullException("CodGruppo"); + } + else { + this.Adapter.InsertCommand.Parameters[4].Value = ((string)(CodGruppo)); + } + if ((CodTipo == null)) { + throw new global::System.ArgumentNullException("CodTipo"); + } + else { + this.Adapter.InsertCommand.Parameters[5].Value = ((string)(CodTipo)); + } + if ((Value == null)) { + throw new global::System.ArgumentNullException("Value"); + } + else { + this.Adapter.InsertCommand.Parameters[6].Value = ((string)(Value)); + } + if ((CheckType == null)) { + throw new global::System.ArgumentNullException("CheckType"); + } + else { + this.Adapter.InsertCommand.Parameters[7].Value = ((string)(CheckType)); + } + this.Adapter.InsertCommand.Parameters[8].Value = ((bool)(Required)); + if ((ExtCode == null)) { + throw new global::System.ArgumentNullException("ExtCode"); + } + else { + this.Adapter.InsertCommand.Parameters[9].Value = ((string)(ExtCode)); + } + if ((Note == null)) { + throw new global::System.ArgumentNullException("Note"); + } + else { + this.Adapter.InsertCommand.Parameters[10].Value = ((string)(Note)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; + if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.InsertCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.InsertCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.InsertCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update( + int IdxST, + string Label, + short Oggetto, + int Num, + string CodGruppo, + string CodTipo, + string Value, + string CheckType, + bool Required, + string ExtCode, + string Note, + int Original_IdxST, + string Original_Label, + short Original_Oggetto, + int Original_Num, + string Original_CodGruppo, + string Original_CodTipo, + string Original_Value, + string Original_CheckType, + bool Original_Required, + string Original_Note) { + this.Adapter.UpdateCommand.Parameters[0].Value = ((int)(IdxST)); + if ((Label == null)) { + throw new global::System.ArgumentNullException("Label"); + } + else { + this.Adapter.UpdateCommand.Parameters[1].Value = ((string)(Label)); + } + this.Adapter.UpdateCommand.Parameters[2].Value = ((short)(Oggetto)); + this.Adapter.UpdateCommand.Parameters[3].Value = ((int)(Num)); + if ((CodGruppo == null)) { + throw new global::System.ArgumentNullException("CodGruppo"); + } + else { + this.Adapter.UpdateCommand.Parameters[4].Value = ((string)(CodGruppo)); + } + if ((CodTipo == null)) { + throw new global::System.ArgumentNullException("CodTipo"); + } + else { + this.Adapter.UpdateCommand.Parameters[5].Value = ((string)(CodTipo)); + } + if ((Value == null)) { + throw new global::System.ArgumentNullException("Value"); + } + else { + this.Adapter.UpdateCommand.Parameters[6].Value = ((string)(Value)); + } + if ((CheckType == null)) { + throw new global::System.ArgumentNullException("CheckType"); + } + else { + this.Adapter.UpdateCommand.Parameters[7].Value = ((string)(CheckType)); + } + this.Adapter.UpdateCommand.Parameters[8].Value = ((bool)(Required)); + if ((ExtCode == null)) { + throw new global::System.ArgumentNullException("ExtCode"); + } + else { + this.Adapter.UpdateCommand.Parameters[9].Value = ((string)(ExtCode)); + } + if ((Note == null)) { + throw new global::System.ArgumentNullException("Note"); + } + else { + this.Adapter.UpdateCommand.Parameters[10].Value = ((string)(Note)); + } + this.Adapter.UpdateCommand.Parameters[11].Value = ((int)(Original_IdxST)); + if ((Original_Label == null)) { + throw new global::System.ArgumentNullException("Original_Label"); + } + else { + this.Adapter.UpdateCommand.Parameters[12].Value = ((string)(Original_Label)); + } + this.Adapter.UpdateCommand.Parameters[13].Value = ((short)(Original_Oggetto)); + this.Adapter.UpdateCommand.Parameters[14].Value = ((int)(Original_Num)); + if ((Original_CodGruppo == null)) { + throw new global::System.ArgumentNullException("Original_CodGruppo"); + } + else { + this.Adapter.UpdateCommand.Parameters[15].Value = ((string)(Original_CodGruppo)); + } + if ((Original_CodTipo == null)) { + throw new global::System.ArgumentNullException("Original_CodTipo"); + } + else { + this.Adapter.UpdateCommand.Parameters[16].Value = ((string)(Original_CodTipo)); + } + if ((Original_Value == null)) { + throw new global::System.ArgumentNullException("Original_Value"); + } + else { + this.Adapter.UpdateCommand.Parameters[17].Value = ((string)(Original_Value)); + } + if ((Original_CheckType == null)) { + throw new global::System.ArgumentNullException("Original_CheckType"); + } + else { + this.Adapter.UpdateCommand.Parameters[18].Value = ((string)(Original_CheckType)); + } + this.Adapter.UpdateCommand.Parameters[19].Value = ((bool)(Original_Required)); + if ((Original_Note == null)) { + throw new global::System.ArgumentNullException("Original_Note"); + } + else { + this.Adapter.UpdateCommand.Parameters[20].Value = ((string)(Original_Note)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; + if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.UpdateCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.UpdateCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update( + int Num, + string CodGruppo, + string CodTipo, + string Value, + string CheckType, + bool Required, + string ExtCode, + string Note, + int Original_IdxST, + string Original_Label, + short Original_Oggetto, + int Original_Num, + string Original_CodGruppo, + string Original_CodTipo, + string Original_Value, + string Original_CheckType, + bool Original_Required, + string Original_Note) { + return this.Update(Original_IdxST, Original_Label, Original_Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, ExtCode, Note, Original_IdxST, Original_Label, Original_Oggetto, Original_Num, Original_CodGruppo, Original_CodTipo, Original_Value, Original_CheckType, Original_Required, Original_Note); + } + } + + /// + ///Represents the connection and commands used to retrieve and save data. + /// + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DataObjectAttribute(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" + + ", Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public partial class ST_CheckTableAdapter : global::System.ComponentModel.Component { + + private global::System.Data.SqlClient.SqlDataAdapter _adapter; + + private global::System.Data.SqlClient.SqlConnection _connection; + + private global::System.Data.SqlClient.SqlTransaction _transaction; + + private global::System.Data.SqlClient.SqlCommand[] _commandCollection; + + private bool _clearBeforeFill; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_CheckTableAdapter() { + this.ClearBeforeFill = true; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected internal global::System.Data.SqlClient.SqlDataAdapter Adapter { + get { + if ((this._adapter == null)) { + this.InitAdapter(); + } + return this._adapter; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlConnection Connection { + get { + if ((this._connection == null)) { + this.InitConnection(); + } + return this._connection; + } + set { + this._connection = value; + if ((this.Adapter.InsertCommand != null)) { + this.Adapter.InsertCommand.Connection = value; + } + if ((this.Adapter.DeleteCommand != null)) { + this.Adapter.DeleteCommand.Connection = value; + } + if ((this.Adapter.UpdateCommand != null)) { + this.Adapter.UpdateCommand.Connection = value; + } + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + if ((this.CommandCollection[i] != null)) { + ((global::System.Data.SqlClient.SqlCommand)(this.CommandCollection[i])).Connection = value; + } + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlTransaction Transaction { + get { + return this._transaction; + } + set { + this._transaction = value; + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + this.CommandCollection[i].Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.DeleteCommand != null))) { + this.Adapter.DeleteCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.InsertCommand != null))) { + this.Adapter.InsertCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.UpdateCommand != null))) { + this.Adapter.UpdateCommand.Transaction = this._transaction; + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected global::System.Data.SqlClient.SqlCommand[] CommandCollection { + get { + if ((this._commandCollection == null)) { + this.InitCommandCollection(); + } + return this._commandCollection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool ClearBeforeFill { + get { + return this._clearBeforeFill; + } + set { + this._clearBeforeFill = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitAdapter() { + this._adapter = new global::System.Data.SqlClient.SqlDataAdapter(); + global::System.Data.Common.DataTableMapping tableMapping = new global::System.Data.Common.DataTableMapping(); + tableMapping.SourceTable = "Table"; + tableMapping.DataSetTable = "ST_Check"; + tableMapping.ColumnMappings.Add("DtEvent", "DtEvent"); + tableMapping.ColumnMappings.Add("IdxODL", "IdxODL"); + tableMapping.ColumnMappings.Add("IdxST", "IdxST"); + tableMapping.ColumnMappings.Add("Num", "Num"); + tableMapping.ColumnMappings.Add("ValueCurr", "ValueCurr"); + tableMapping.ColumnMappings.Add("CheckOk", "CheckOk"); + tableMapping.ColumnMappings.Add("DtMod", "DtMod"); + tableMapping.ColumnMappings.Add("UserMod", "UserMod"); + this._adapter.TableMappings.Add(tableMapping); + this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.DeleteCommand.Connection = this.Connection; + this._adapter.DeleteCommand.CommandText = @"DELETE FROM [dbo].[ST_Check] WHERE (([DtEvent] = @Original_DtEvent) AND ([IdxODL] = @Original_IdxODL) AND ([IdxST] = @Original_IdxST) AND ([Num] = @Original_Num) AND ([ValueCurr] = @Original_ValueCurr) AND ([CheckOk] = @Original_CheckOk) AND ([DtMod] = @Original_DtMod) AND ([UserMod] = @Original_UserMod))"; + this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DtEvent", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtEvent", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_IdxODL", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxODL", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_IdxST", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_ValueCurr", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ValueCurr", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CheckOk", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckOk", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DtMod", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtMod", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_UserMod", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "UserMod", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.InsertCommand.Connection = this.Connection; + this._adapter.InsertCommand.CommandText = @"INSERT INTO [dbo].[ST_Check] ([DtEvent], [IdxODL], [IdxST], [Num], [ValueCurr], [CheckOk], [DtMod], [UserMod]) VALUES (@DtEvent, @IdxODL, @IdxST, @Num, @ValueCurr, @CheckOk, @DtMod, @UserMod); +SELECT DtEvent, IdxODL, IdxST, Num, ValueCurr, CheckOk, DtMod, UserMod FROM ST_Check WHERE (DtEvent = @DtEvent) AND (IdxODL = @IdxODL) AND (IdxST = @IdxST) AND (Num = @Num)"; + this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DtEvent", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtEvent", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IdxODL", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxODL", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IdxST", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ValueCurr", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ValueCurr", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CheckOk", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckOk", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DtMod", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtMod", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@UserMod", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "UserMod", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.UpdateCommand.Connection = this.Connection; + this._adapter.UpdateCommand.CommandText = @"UPDATE [dbo].[ST_Check] SET [DtEvent] = @DtEvent, [IdxODL] = @IdxODL, [IdxST] = @IdxST, [Num] = @Num, [ValueCurr] = @ValueCurr, [CheckOk] = @CheckOk, [DtMod] = @DtMod, [UserMod] = @UserMod WHERE (([DtEvent] = @Original_DtEvent) AND ([IdxODL] = @Original_IdxODL) AND ([IdxST] = @Original_IdxST) AND ([Num] = @Original_Num) AND ([ValueCurr] = @Original_ValueCurr) AND ([CheckOk] = @Original_CheckOk) AND ([DtMod] = @Original_DtMod) AND ([UserMod] = @Original_UserMod)); +SELECT DtEvent, IdxODL, IdxST, Num, ValueCurr, CheckOk, DtMod, UserMod FROM ST_Check WHERE (DtEvent = @DtEvent) AND (IdxODL = @IdxODL) AND (IdxST = @IdxST) AND (Num = @Num)"; + this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DtEvent", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtEvent", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IdxODL", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxODL", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IdxST", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ValueCurr", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ValueCurr", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CheckOk", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckOk", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DtMod", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtMod", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@UserMod", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "UserMod", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DtEvent", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtEvent", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_IdxODL", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxODL", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_IdxST", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "IdxST", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_ValueCurr", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ValueCurr", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CheckOk", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckOk", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DtMod", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DtMod", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_UserMod", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "UserMod", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitConnection() { + this._connection = new global::System.Data.SqlClient.SqlConnection(); + this._connection.ConnectionString = global::MapoDb.Properties.Settings.Default.MoonProConnectionString; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitCommandCollection() { + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[1]; + this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[0].Connection = this.Connection; + this._commandCollection[0].CommandText = "SELECT DtEvent, IdxODL, IdxST, Num, ValueCurr, CheckOk, DtMod, UserMod FROM dbo.S" + + "T_Check"; + this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, true)] + public virtual int Fill(DS_SheetTech.ST_CheckDataTable dataTable) { + this.Adapter.SelectCommand = this.CommandCollection[0]; + if ((this.ClearBeforeFill == true)) { + dataTable.Clear(); + } + int returnValue = this.Adapter.Fill(dataTable); + return returnValue; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)] + public virtual DS_SheetTech.ST_CheckDataTable GetData() { + this.Adapter.SelectCommand = this.CommandCollection[0]; + DS_SheetTech.ST_CheckDataTable dataTable = new DS_SheetTech.ST_CheckDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech.ST_CheckDataTable dataTable) { + return this.Adapter.Update(dataTable); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech dataSet) { + return this.Adapter.Update(dataSet, "ST_Check"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow dataRow) { + return this.Adapter.Update(new global::System.Data.DataRow[] { + dataRow}); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow[] dataRows) { + return this.Adapter.Update(dataRows); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] + public virtual int Delete(System.DateTime Original_DtEvent, int Original_IdxODL, int Original_IdxST, int Original_Num, string Original_ValueCurr, bool Original_CheckOk, string Original_DtMod, string Original_UserMod) { + this.Adapter.DeleteCommand.Parameters[0].Value = ((System.DateTime)(Original_DtEvent)); + this.Adapter.DeleteCommand.Parameters[1].Value = ((int)(Original_IdxODL)); + this.Adapter.DeleteCommand.Parameters[2].Value = ((int)(Original_IdxST)); + this.Adapter.DeleteCommand.Parameters[3].Value = ((int)(Original_Num)); + if ((Original_ValueCurr == null)) { + throw new global::System.ArgumentNullException("Original_ValueCurr"); + } + else { + this.Adapter.DeleteCommand.Parameters[4].Value = ((string)(Original_ValueCurr)); + } + this.Adapter.DeleteCommand.Parameters[5].Value = ((bool)(Original_CheckOk)); + if ((Original_DtMod == null)) { + throw new global::System.ArgumentNullException("Original_DtMod"); + } + else { + this.Adapter.DeleteCommand.Parameters[6].Value = ((string)(Original_DtMod)); + } + if ((Original_UserMod == null)) { + throw new global::System.ArgumentNullException("Original_UserMod"); + } + else { + this.Adapter.DeleteCommand.Parameters[7].Value = ((string)(Original_UserMod)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; + if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.DeleteCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.DeleteCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.DeleteCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] + public virtual int Insert(System.DateTime DtEvent, int IdxODL, int IdxST, int Num, string ValueCurr, bool CheckOk, string DtMod, string UserMod) { + this.Adapter.InsertCommand.Parameters[0].Value = ((System.DateTime)(DtEvent)); + this.Adapter.InsertCommand.Parameters[1].Value = ((int)(IdxODL)); + this.Adapter.InsertCommand.Parameters[2].Value = ((int)(IdxST)); + this.Adapter.InsertCommand.Parameters[3].Value = ((int)(Num)); + if ((ValueCurr == null)) { + throw new global::System.ArgumentNullException("ValueCurr"); + } + else { + this.Adapter.InsertCommand.Parameters[4].Value = ((string)(ValueCurr)); + } + this.Adapter.InsertCommand.Parameters[5].Value = ((bool)(CheckOk)); + if ((DtMod == null)) { + throw new global::System.ArgumentNullException("DtMod"); + } + else { + this.Adapter.InsertCommand.Parameters[6].Value = ((string)(DtMod)); + } + if ((UserMod == null)) { + throw new global::System.ArgumentNullException("UserMod"); + } + else { + this.Adapter.InsertCommand.Parameters[7].Value = ((string)(UserMod)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; + if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.InsertCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.InsertCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.InsertCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update( + System.DateTime DtEvent, + int IdxODL, + int IdxST, + int Num, + string ValueCurr, + bool CheckOk, + string DtMod, + string UserMod, + System.DateTime Original_DtEvent, + int Original_IdxODL, + int Original_IdxST, + int Original_Num, + string Original_ValueCurr, + bool Original_CheckOk, + string Original_DtMod, + string Original_UserMod) { + this.Adapter.UpdateCommand.Parameters[0].Value = ((System.DateTime)(DtEvent)); + this.Adapter.UpdateCommand.Parameters[1].Value = ((int)(IdxODL)); + this.Adapter.UpdateCommand.Parameters[2].Value = ((int)(IdxST)); + this.Adapter.UpdateCommand.Parameters[3].Value = ((int)(Num)); + if ((ValueCurr == null)) { + throw new global::System.ArgumentNullException("ValueCurr"); + } + else { + this.Adapter.UpdateCommand.Parameters[4].Value = ((string)(ValueCurr)); + } + this.Adapter.UpdateCommand.Parameters[5].Value = ((bool)(CheckOk)); + if ((DtMod == null)) { + throw new global::System.ArgumentNullException("DtMod"); + } + else { + this.Adapter.UpdateCommand.Parameters[6].Value = ((string)(DtMod)); + } + if ((UserMod == null)) { + throw new global::System.ArgumentNullException("UserMod"); + } + else { + this.Adapter.UpdateCommand.Parameters[7].Value = ((string)(UserMod)); + } + this.Adapter.UpdateCommand.Parameters[8].Value = ((System.DateTime)(Original_DtEvent)); + this.Adapter.UpdateCommand.Parameters[9].Value = ((int)(Original_IdxODL)); + this.Adapter.UpdateCommand.Parameters[10].Value = ((int)(Original_IdxST)); + this.Adapter.UpdateCommand.Parameters[11].Value = ((int)(Original_Num)); + if ((Original_ValueCurr == null)) { + throw new global::System.ArgumentNullException("Original_ValueCurr"); + } + else { + this.Adapter.UpdateCommand.Parameters[12].Value = ((string)(Original_ValueCurr)); + } + this.Adapter.UpdateCommand.Parameters[13].Value = ((bool)(Original_CheckOk)); + if ((Original_DtMod == null)) { + throw new global::System.ArgumentNullException("Original_DtMod"); + } + else { + this.Adapter.UpdateCommand.Parameters[14].Value = ((string)(Original_DtMod)); + } + if ((Original_UserMod == null)) { + throw new global::System.ArgumentNullException("Original_UserMod"); + } + else { + this.Adapter.UpdateCommand.Parameters[15].Value = ((string)(Original_UserMod)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; + if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.UpdateCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.UpdateCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string ValueCurr, bool CheckOk, string DtMod, string UserMod, System.DateTime Original_DtEvent, int Original_IdxODL, int Original_IdxST, int Original_Num, string Original_ValueCurr, bool Original_CheckOk, string Original_DtMod, string Original_UserMod) { + return this.Update(Original_DtEvent, Original_IdxODL, Original_IdxST, Original_Num, ValueCurr, CheckOk, DtMod, UserMod, Original_DtEvent, Original_IdxODL, Original_IdxST, Original_Num, Original_ValueCurr, Original_CheckOk, Original_DtMod, Original_UserMod); + } + } + + /// + ///Represents the connection and commands used to retrieve and save data. + /// + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DataObjectAttribute(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" + + ", Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public partial class ST_AnagGruppiTableAdapter : global::System.ComponentModel.Component { + + private global::System.Data.SqlClient.SqlDataAdapter _adapter; + + private global::System.Data.SqlClient.SqlConnection _connection; + + private global::System.Data.SqlClient.SqlTransaction _transaction; + + private global::System.Data.SqlClient.SqlCommand[] _commandCollection; + + private bool _clearBeforeFill; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagGruppiTableAdapter() { + this.ClearBeforeFill = true; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected internal global::System.Data.SqlClient.SqlDataAdapter Adapter { + get { + if ((this._adapter == null)) { + this.InitAdapter(); + } + return this._adapter; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlConnection Connection { + get { + if ((this._connection == null)) { + this.InitConnection(); + } + return this._connection; + } + set { + this._connection = value; + if ((this.Adapter.InsertCommand != null)) { + this.Adapter.InsertCommand.Connection = value; + } + if ((this.Adapter.DeleteCommand != null)) { + this.Adapter.DeleteCommand.Connection = value; + } + if ((this.Adapter.UpdateCommand != null)) { + this.Adapter.UpdateCommand.Connection = value; + } + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + if ((this.CommandCollection[i] != null)) { + ((global::System.Data.SqlClient.SqlCommand)(this.CommandCollection[i])).Connection = value; + } + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlTransaction Transaction { + get { + return this._transaction; + } + set { + this._transaction = value; + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + this.CommandCollection[i].Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.DeleteCommand != null))) { + this.Adapter.DeleteCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.InsertCommand != null))) { + this.Adapter.InsertCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.UpdateCommand != null))) { + this.Adapter.UpdateCommand.Transaction = this._transaction; + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected global::System.Data.SqlClient.SqlCommand[] CommandCollection { + get { + if ((this._commandCollection == null)) { + this.InitCommandCollection(); + } + return this._commandCollection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool ClearBeforeFill { + get { + return this._clearBeforeFill; + } + set { + this._clearBeforeFill = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitAdapter() { + this._adapter = new global::System.Data.SqlClient.SqlDataAdapter(); + global::System.Data.Common.DataTableMapping tableMapping = new global::System.Data.Common.DataTableMapping(); + tableMapping.SourceTable = "Table"; + tableMapping.DataSetTable = "ST_AnagGruppi"; + tableMapping.ColumnMappings.Add("CodGruppo", "CodGruppo"); + tableMapping.ColumnMappings.Add("DescGruppo", "DescGruppo"); + this._adapter.TableMappings.Add(tableMapping); + this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.DeleteCommand.Connection = this.Connection; + this._adapter.DeleteCommand.CommandText = "DELETE FROM [dbo].[ST_AnagGruppi] WHERE (([CodGruppo] = @Original_CodGruppo) AND " + + "((@IsNull_DescGruppo = 1 AND [DescGruppo] IS NULL) OR ([DescGruppo] = @Original_" + + "DescGruppo)))"; + this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_DescGruppo", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DescGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.InsertCommand.Connection = this.Connection; + this._adapter.InsertCommand.CommandText = "INSERT INTO [dbo].[ST_AnagGruppi] ([CodGruppo], [DescGruppo]) VALUES (@CodGruppo," + + " @DescGruppo);\r\nSELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo" + + " = @CodGruppo)"; + this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DescGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.UpdateCommand.Connection = this.Connection; + this._adapter.UpdateCommand.CommandText = @"UPDATE [dbo].[ST_AnagGruppi] SET [CodGruppo] = @CodGruppo, [DescGruppo] = @DescGruppo WHERE (([CodGruppo] = @Original_CodGruppo) AND ((@IsNull_DescGruppo = 1 AND [DescGruppo] IS NULL) OR ([DescGruppo] = @Original_DescGruppo))); +SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo)"; + this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DescGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_DescGruppo", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DescGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitConnection() { + this._connection = new global::System.Data.SqlClient.SqlConnection(); + this._connection.ConnectionString = global::MapoDb.Properties.Settings.Default.MoonProConnectionString; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitCommandCollection() { + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[1]; + this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[0].Connection = this.Connection; + this._commandCollection[0].CommandText = "SELECT CodGruppo, DescGruppo FROM dbo.ST_AnagGruppi"; + this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, true)] + public virtual int Fill(DS_SheetTech.ST_AnagGruppiDataTable dataTable) { + this.Adapter.SelectCommand = this.CommandCollection[0]; + if ((this.ClearBeforeFill == true)) { + dataTable.Clear(); + } + int returnValue = this.Adapter.Fill(dataTable); + return returnValue; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)] + public virtual DS_SheetTech.ST_AnagGruppiDataTable GetData() { + this.Adapter.SelectCommand = this.CommandCollection[0]; + DS_SheetTech.ST_AnagGruppiDataTable dataTable = new DS_SheetTech.ST_AnagGruppiDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech.ST_AnagGruppiDataTable dataTable) { + return this.Adapter.Update(dataTable); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech dataSet) { + return this.Adapter.Update(dataSet, "ST_AnagGruppi"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow dataRow) { + return this.Adapter.Update(new global::System.Data.DataRow[] { + dataRow}); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow[] dataRows) { + return this.Adapter.Update(dataRows); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] + public virtual int Delete(string Original_CodGruppo, string Original_DescGruppo) { + if ((Original_CodGruppo == null)) { + throw new global::System.ArgumentNullException("Original_CodGruppo"); + } + else { + this.Adapter.DeleteCommand.Parameters[0].Value = ((string)(Original_CodGruppo)); + } + if ((Original_DescGruppo == null)) { + this.Adapter.DeleteCommand.Parameters[1].Value = ((object)(1)); + this.Adapter.DeleteCommand.Parameters[2].Value = global::System.DBNull.Value; + } + else { + this.Adapter.DeleteCommand.Parameters[1].Value = ((object)(0)); + this.Adapter.DeleteCommand.Parameters[2].Value = ((string)(Original_DescGruppo)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; + if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.DeleteCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.DeleteCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.DeleteCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] + public virtual int Insert(string CodGruppo, string DescGruppo) { + if ((CodGruppo == null)) { + throw new global::System.ArgumentNullException("CodGruppo"); + } + else { + this.Adapter.InsertCommand.Parameters[0].Value = ((string)(CodGruppo)); + } + if ((DescGruppo == null)) { + this.Adapter.InsertCommand.Parameters[1].Value = global::System.DBNull.Value; + } + else { + this.Adapter.InsertCommand.Parameters[1].Value = ((string)(DescGruppo)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; + if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.InsertCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.InsertCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.InsertCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string CodGruppo, string DescGruppo, string Original_CodGruppo, string Original_DescGruppo) { + if ((CodGruppo == null)) { + throw new global::System.ArgumentNullException("CodGruppo"); + } + else { + this.Adapter.UpdateCommand.Parameters[0].Value = ((string)(CodGruppo)); + } + if ((DescGruppo == null)) { + this.Adapter.UpdateCommand.Parameters[1].Value = global::System.DBNull.Value; + } + else { + this.Adapter.UpdateCommand.Parameters[1].Value = ((string)(DescGruppo)); + } + if ((Original_CodGruppo == null)) { + throw new global::System.ArgumentNullException("Original_CodGruppo"); + } + else { + this.Adapter.UpdateCommand.Parameters[2].Value = ((string)(Original_CodGruppo)); + } + if ((Original_DescGruppo == null)) { + this.Adapter.UpdateCommand.Parameters[3].Value = ((object)(1)); + this.Adapter.UpdateCommand.Parameters[4].Value = global::System.DBNull.Value; + } + else { + this.Adapter.UpdateCommand.Parameters[3].Value = ((object)(0)); + this.Adapter.UpdateCommand.Parameters[4].Value = ((string)(Original_DescGruppo)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; + if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.UpdateCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.UpdateCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string DescGruppo, string Original_CodGruppo, string Original_DescGruppo) { + return this.Update(Original_CodGruppo, DescGruppo, Original_CodGruppo, Original_DescGruppo); + } + } + + /// + ///Represents the connection and commands used to retrieve and save data. + /// + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DataObjectAttribute(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" + + ", Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public partial class ST_AnagTipiTableAdapter : global::System.ComponentModel.Component { + + private global::System.Data.SqlClient.SqlDataAdapter _adapter; + + private global::System.Data.SqlClient.SqlConnection _connection; + + private global::System.Data.SqlClient.SqlTransaction _transaction; + + private global::System.Data.SqlClient.SqlCommand[] _commandCollection; + + private bool _clearBeforeFill; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_AnagTipiTableAdapter() { + this.ClearBeforeFill = true; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected internal global::System.Data.SqlClient.SqlDataAdapter Adapter { + get { + if ((this._adapter == null)) { + this.InitAdapter(); + } + return this._adapter; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlConnection Connection { + get { + if ((this._connection == null)) { + this.InitConnection(); + } + return this._connection; + } + set { + this._connection = value; + if ((this.Adapter.InsertCommand != null)) { + this.Adapter.InsertCommand.Connection = value; + } + if ((this.Adapter.DeleteCommand != null)) { + this.Adapter.DeleteCommand.Connection = value; + } + if ((this.Adapter.UpdateCommand != null)) { + this.Adapter.UpdateCommand.Connection = value; + } + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + if ((this.CommandCollection[i] != null)) { + ((global::System.Data.SqlClient.SqlCommand)(this.CommandCollection[i])).Connection = value; + } + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlTransaction Transaction { + get { + return this._transaction; + } + set { + this._transaction = value; + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + this.CommandCollection[i].Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.DeleteCommand != null))) { + this.Adapter.DeleteCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.InsertCommand != null))) { + this.Adapter.InsertCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.UpdateCommand != null))) { + this.Adapter.UpdateCommand.Transaction = this._transaction; + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected global::System.Data.SqlClient.SqlCommand[] CommandCollection { + get { + if ((this._commandCollection == null)) { + this.InitCommandCollection(); + } + return this._commandCollection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool ClearBeforeFill { + get { + return this._clearBeforeFill; + } + set { + this._clearBeforeFill = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitAdapter() { + this._adapter = new global::System.Data.SqlClient.SqlDataAdapter(); + global::System.Data.Common.DataTableMapping tableMapping = new global::System.Data.Common.DataTableMapping(); + tableMapping.SourceTable = "Table"; + tableMapping.DataSetTable = "ST_AnagTipi"; + tableMapping.ColumnMappings.Add("CodTipo", "CodTipo"); + tableMapping.ColumnMappings.Add("DescTipo", "DescTipo"); + this._adapter.TableMappings.Add(tableMapping); + this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.DeleteCommand.Connection = this.Connection; + this._adapter.DeleteCommand.CommandText = "DELETE FROM [dbo].[ST_AnagTipi] WHERE (([CodTipo] = @Original_CodTipo) AND ([Desc" + + "Tipo] = @Original_DescTipo))"; + this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DescTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescTipo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.InsertCommand.Connection = this.Connection; + this._adapter.InsertCommand.CommandText = "INSERT INTO [dbo].[ST_AnagTipi] ([CodTipo], [DescTipo]) VALUES (@CodTipo, @DescTi" + + "po);\r\nSELECT CodTipo, DescTipo FROM ST_AnagTipi WHERE (CodTipo = @CodTipo)"; + this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DescTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescTipo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.UpdateCommand.Connection = this.Connection; + this._adapter.UpdateCommand.CommandText = "UPDATE [dbo].[ST_AnagTipi] SET [CodTipo] = @CodTipo, [DescTipo] = @DescTipo WHERE" + + " (([CodTipo] = @Original_CodTipo) AND ([DescTipo] = @Original_DescTipo));\r\nSELEC" + + "T CodTipo, DescTipo FROM ST_AnagTipi WHERE (CodTipo = @CodTipo)"; + this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DescTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescTipo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DescTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescTipo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitConnection() { + this._connection = new global::System.Data.SqlClient.SqlConnection(); + this._connection.ConnectionString = global::MapoDb.Properties.Settings.Default.MoonProConnectionString; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitCommandCollection() { + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[1]; + this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[0].Connection = this.Connection; + this._commandCollection[0].CommandText = "SELECT CodTipo, DescTipo FROM dbo.ST_AnagTipi"; + this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, true)] + public virtual int Fill(DS_SheetTech.ST_AnagTipiDataTable dataTable) { + this.Adapter.SelectCommand = this.CommandCollection[0]; + if ((this.ClearBeforeFill == true)) { + dataTable.Clear(); + } + int returnValue = this.Adapter.Fill(dataTable); + return returnValue; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)] + public virtual DS_SheetTech.ST_AnagTipiDataTable GetData() { + this.Adapter.SelectCommand = this.CommandCollection[0]; + DS_SheetTech.ST_AnagTipiDataTable dataTable = new DS_SheetTech.ST_AnagTipiDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech.ST_AnagTipiDataTable dataTable) { + return this.Adapter.Update(dataTable); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech dataSet) { + return this.Adapter.Update(dataSet, "ST_AnagTipi"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow dataRow) { + return this.Adapter.Update(new global::System.Data.DataRow[] { + dataRow}); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow[] dataRows) { + return this.Adapter.Update(dataRows); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] + public virtual int Delete(string Original_CodTipo, string Original_DescTipo) { + if ((Original_CodTipo == null)) { + throw new global::System.ArgumentNullException("Original_CodTipo"); + } + else { + this.Adapter.DeleteCommand.Parameters[0].Value = ((string)(Original_CodTipo)); + } + if ((Original_DescTipo == null)) { + throw new global::System.ArgumentNullException("Original_DescTipo"); + } + else { + this.Adapter.DeleteCommand.Parameters[1].Value = ((string)(Original_DescTipo)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; + if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.DeleteCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.DeleteCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.DeleteCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] + public virtual int Insert(string CodTipo, string DescTipo) { + if ((CodTipo == null)) { + throw new global::System.ArgumentNullException("CodTipo"); + } + else { + this.Adapter.InsertCommand.Parameters[0].Value = ((string)(CodTipo)); + } + if ((DescTipo == null)) { + throw new global::System.ArgumentNullException("DescTipo"); + } + else { + this.Adapter.InsertCommand.Parameters[1].Value = ((string)(DescTipo)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; + if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.InsertCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.InsertCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.InsertCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string CodTipo, string DescTipo, string Original_CodTipo, string Original_DescTipo) { + if ((CodTipo == null)) { + throw new global::System.ArgumentNullException("CodTipo"); + } + else { + this.Adapter.UpdateCommand.Parameters[0].Value = ((string)(CodTipo)); + } + if ((DescTipo == null)) { + throw new global::System.ArgumentNullException("DescTipo"); + } + else { + this.Adapter.UpdateCommand.Parameters[1].Value = ((string)(DescTipo)); + } + if ((Original_CodTipo == null)) { + throw new global::System.ArgumentNullException("Original_CodTipo"); + } + else { + this.Adapter.UpdateCommand.Parameters[2].Value = ((string)(Original_CodTipo)); + } + if ((Original_DescTipo == null)) { + throw new global::System.ArgumentNullException("Original_DescTipo"); + } + else { + this.Adapter.UpdateCommand.Parameters[3].Value = ((string)(Original_DescTipo)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; + if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.UpdateCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.UpdateCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string DescTipo, string Original_CodTipo, string Original_DescTipo) { + return this.Update(Original_CodTipo, DescTipo, Original_CodTipo, Original_DescTipo); + } + } + + /// + ///Represents the connection and commands used to retrieve and save data. + /// + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DataObjectAttribute(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" + + ", Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public partial class ST_TemplateTableAdapter : global::System.ComponentModel.Component { + + private global::System.Data.SqlClient.SqlDataAdapter _adapter; + + private global::System.Data.SqlClient.SqlConnection _connection; + + private global::System.Data.SqlClient.SqlTransaction _transaction; + + private global::System.Data.SqlClient.SqlCommand[] _commandCollection; + + private bool _clearBeforeFill; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateTableAdapter() { + this.ClearBeforeFill = true; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected internal global::System.Data.SqlClient.SqlDataAdapter Adapter { + get { + if ((this._adapter == null)) { + this.InitAdapter(); + } + return this._adapter; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlConnection Connection { + get { + if ((this._connection == null)) { + this.InitConnection(); + } + return this._connection; + } + set { + this._connection = value; + if ((this.Adapter.InsertCommand != null)) { + this.Adapter.InsertCommand.Connection = value; + } + if ((this.Adapter.DeleteCommand != null)) { + this.Adapter.DeleteCommand.Connection = value; + } + if ((this.Adapter.UpdateCommand != null)) { + this.Adapter.UpdateCommand.Connection = value; + } + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + if ((this.CommandCollection[i] != null)) { + ((global::System.Data.SqlClient.SqlCommand)(this.CommandCollection[i])).Connection = value; + } + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlTransaction Transaction { + get { + return this._transaction; + } + set { + this._transaction = value; + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + this.CommandCollection[i].Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.DeleteCommand != null))) { + this.Adapter.DeleteCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.InsertCommand != null))) { + this.Adapter.InsertCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.UpdateCommand != null))) { + this.Adapter.UpdateCommand.Transaction = this._transaction; + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected global::System.Data.SqlClient.SqlCommand[] CommandCollection { + get { + if ((this._commandCollection == null)) { + this.InitCommandCollection(); + } + return this._commandCollection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool ClearBeforeFill { + get { + return this._clearBeforeFill; + } + set { + this._clearBeforeFill = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitAdapter() { + this._adapter = new global::System.Data.SqlClient.SqlDataAdapter(); + global::System.Data.Common.DataTableMapping tableMapping = new global::System.Data.Common.DataTableMapping(); + tableMapping.SourceTable = "Table"; + tableMapping.DataSetTable = "ST_Template"; + tableMapping.ColumnMappings.Add("CodTempl", "CodTempl"); + tableMapping.ColumnMappings.Add("DescTempl", "DescTempl"); + this._adapter.TableMappings.Add(tableMapping); + this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.DeleteCommand.Connection = this.Connection; + this._adapter.DeleteCommand.CommandText = "DELETE FROM [dbo].[ST_Template] WHERE (([CodTempl] = @Original_CodTempl) AND ([De" + + "scTempl] = @Original_DescTempl))"; + this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DescTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescTempl", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.InsertCommand.Connection = this.Connection; + this._adapter.InsertCommand.CommandText = "INSERT INTO [dbo].[ST_Template] ([CodTempl], [DescTempl]) VALUES (@CodTempl, @Des" + + "cTempl);\r\nSELECT CodTempl, DescTempl FROM ST_Template WHERE (CodTempl = @CodTemp" + + "l)"; + this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DescTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescTempl", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.UpdateCommand.Connection = this.Connection; + this._adapter.UpdateCommand.CommandText = "UPDATE [dbo].[ST_Template] SET [CodTempl] = @CodTempl, [DescTempl] = @DescTempl W" + + "HERE (([CodTempl] = @Original_CodTempl) AND ([DescTempl] = @Original_DescTempl))" + + ";\r\nSELECT CodTempl, DescTempl FROM ST_Template WHERE (CodTempl = @CodTempl)"; + this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DescTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescTempl", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DescTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescTempl", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitConnection() { + this._connection = new global::System.Data.SqlClient.SqlConnection(); + this._connection.ConnectionString = global::MapoDb.Properties.Settings.Default.MoonProConnectionString; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitCommandCollection() { + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[1]; + this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[0].Connection = this.Connection; + this._commandCollection[0].CommandText = "SELECT CodTempl, DescTempl FROM dbo.ST_Template"; + this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, true)] + public virtual int Fill(DS_SheetTech.ST_TemplateDataTable dataTable) { + this.Adapter.SelectCommand = this.CommandCollection[0]; + if ((this.ClearBeforeFill == true)) { + dataTable.Clear(); + } + int returnValue = this.Adapter.Fill(dataTable); + return returnValue; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)] + public virtual DS_SheetTech.ST_TemplateDataTable GetData() { + this.Adapter.SelectCommand = this.CommandCollection[0]; + DS_SheetTech.ST_TemplateDataTable dataTable = new DS_SheetTech.ST_TemplateDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech.ST_TemplateDataTable dataTable) { + return this.Adapter.Update(dataTable); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech dataSet) { + return this.Adapter.Update(dataSet, "ST_Template"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow dataRow) { + return this.Adapter.Update(new global::System.Data.DataRow[] { + dataRow}); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow[] dataRows) { + return this.Adapter.Update(dataRows); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] + public virtual int Delete(string Original_CodTempl, string Original_DescTempl) { + if ((Original_CodTempl == null)) { + throw new global::System.ArgumentNullException("Original_CodTempl"); + } + else { + this.Adapter.DeleteCommand.Parameters[0].Value = ((string)(Original_CodTempl)); + } + if ((Original_DescTempl == null)) { + throw new global::System.ArgumentNullException("Original_DescTempl"); + } + else { + this.Adapter.DeleteCommand.Parameters[1].Value = ((string)(Original_DescTempl)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; + if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.DeleteCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.DeleteCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.DeleteCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] + public virtual int Insert(string CodTempl, string DescTempl) { + if ((CodTempl == null)) { + throw new global::System.ArgumentNullException("CodTempl"); + } + else { + this.Adapter.InsertCommand.Parameters[0].Value = ((string)(CodTempl)); + } + if ((DescTempl == null)) { + throw new global::System.ArgumentNullException("DescTempl"); + } + else { + this.Adapter.InsertCommand.Parameters[1].Value = ((string)(DescTempl)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; + if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.InsertCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.InsertCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.InsertCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string CodTempl, string DescTempl, string Original_CodTempl, string Original_DescTempl) { + if ((CodTempl == null)) { + throw new global::System.ArgumentNullException("CodTempl"); + } + else { + this.Adapter.UpdateCommand.Parameters[0].Value = ((string)(CodTempl)); + } + if ((DescTempl == null)) { + throw new global::System.ArgumentNullException("DescTempl"); + } + else { + this.Adapter.UpdateCommand.Parameters[1].Value = ((string)(DescTempl)); + } + if ((Original_CodTempl == null)) { + throw new global::System.ArgumentNullException("Original_CodTempl"); + } + else { + this.Adapter.UpdateCommand.Parameters[2].Value = ((string)(Original_CodTempl)); + } + if ((Original_DescTempl == null)) { + throw new global::System.ArgumentNullException("Original_DescTempl"); + } + else { + this.Adapter.UpdateCommand.Parameters[3].Value = ((string)(Original_DescTempl)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; + if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.UpdateCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.UpdateCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string DescTempl, string Original_CodTempl, string Original_DescTempl) { + return this.Update(Original_CodTempl, DescTempl, Original_CodTempl, Original_DescTempl); + } + } + + /// + ///Represents the connection and commands used to retrieve and save data. + /// + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DataObjectAttribute(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" + + ", Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public partial class ST_TemplateRowsTableAdapter : global::System.ComponentModel.Component { + + private global::System.Data.SqlClient.SqlDataAdapter _adapter; + + private global::System.Data.SqlClient.SqlConnection _connection; + + private global::System.Data.SqlClient.SqlTransaction _transaction; + + private global::System.Data.SqlClient.SqlCommand[] _commandCollection; + + private bool _clearBeforeFill; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public ST_TemplateRowsTableAdapter() { + this.ClearBeforeFill = true; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected internal global::System.Data.SqlClient.SqlDataAdapter Adapter { + get { + if ((this._adapter == null)) { + this.InitAdapter(); + } + return this._adapter; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlConnection Connection { + get { + if ((this._connection == null)) { + this.InitConnection(); + } + return this._connection; + } + set { + this._connection = value; + if ((this.Adapter.InsertCommand != null)) { + this.Adapter.InsertCommand.Connection = value; + } + if ((this.Adapter.DeleteCommand != null)) { + this.Adapter.DeleteCommand.Connection = value; + } + if ((this.Adapter.UpdateCommand != null)) { + this.Adapter.UpdateCommand.Connection = value; + } + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + if ((this.CommandCollection[i] != null)) { + ((global::System.Data.SqlClient.SqlCommand)(this.CommandCollection[i])).Connection = value; + } + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal global::System.Data.SqlClient.SqlTransaction Transaction { + get { + return this._transaction; + } + set { + this._transaction = value; + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + this.CommandCollection[i].Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.DeleteCommand != null))) { + this.Adapter.DeleteCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.InsertCommand != null))) { + this.Adapter.InsertCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.UpdateCommand != null))) { + this.Adapter.UpdateCommand.Transaction = this._transaction; + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected global::System.Data.SqlClient.SqlCommand[] CommandCollection { + get { + if ((this._commandCollection == null)) { + this.InitCommandCollection(); + } + return this._commandCollection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool ClearBeforeFill { + get { + return this._clearBeforeFill; + } + set { + this._clearBeforeFill = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitAdapter() { + this._adapter = new global::System.Data.SqlClient.SqlDataAdapter(); + global::System.Data.Common.DataTableMapping tableMapping = new global::System.Data.Common.DataTableMapping(); + tableMapping.SourceTable = "Table"; + tableMapping.DataSetTable = "ST_TemplateRows"; + tableMapping.ColumnMappings.Add("CodTempl", "CodTempl"); + tableMapping.ColumnMappings.Add("Label", "Label"); + tableMapping.ColumnMappings.Add("Oggetto", "Oggetto"); + tableMapping.ColumnMappings.Add("Num", "Num"); + tableMapping.ColumnMappings.Add("CodGruppo", "CodGruppo"); + tableMapping.ColumnMappings.Add("CodTipo", "CodTipo"); + tableMapping.ColumnMappings.Add("Value", "Value"); + tableMapping.ColumnMappings.Add("CheckType", "CheckType"); + tableMapping.ColumnMappings.Add("Required", "Required"); + tableMapping.ColumnMappings.Add("Note", "Note"); + this._adapter.TableMappings.Add(tableMapping); + this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.DeleteCommand.Connection = this.Connection; + this._adapter.DeleteCommand.CommandText = @"DELETE FROM [dbo].[ST_TemplateRows] WHERE (([CodTempl] = @Original_CodTempl) AND ([Label] = @Original_Label) AND ([Oggetto] = @Original_Oggetto) AND ([Num] = @Original_Num) AND ([CodGruppo] = @Original_CodGruppo) AND ([CodTipo] = @Original_CodTipo) AND ([Value] = @Original_Value) AND ([CheckType] = @Original_CheckType) AND ([Required] = @Original_Required) AND ([Note] = @Original_Note))"; + this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Label", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Label", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Oggetto", global::System.Data.SqlDbType.SmallInt, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Oggetto", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Value", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Value", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CheckType", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckType", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Required", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Required", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Note", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Note", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.InsertCommand.Connection = this.Connection; + this._adapter.InsertCommand.CommandText = @"INSERT INTO [dbo].[ST_TemplateRows] ([CodTempl], [Label], [Oggetto], [Num], [CodGruppo], [CodTipo], [Value], [CheckType], [Required], [Note]) VALUES (@CodTempl, @Label, @Oggetto, @Num, @CodGruppo, @CodTipo, @Value, @CheckType, @Required, @Note); +SELECT CodTempl, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, Note FROM ST_TemplateRows WHERE (CodTempl = @CodTempl) AND (Label = @Label) AND (Oggetto = @Oggetto)"; + this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Label", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Label", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Oggetto", global::System.Data.SqlDbType.SmallInt, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Oggetto", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Value", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Value", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CheckType", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckType", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Required", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Required", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Note", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Note", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.UpdateCommand.Connection = this.Connection; + this._adapter.UpdateCommand.CommandText = @"UPDATE [dbo].[ST_TemplateRows] SET [CodTempl] = @CodTempl, [Label] = @Label, [Oggetto] = @Oggetto, [Num] = @Num, [CodGruppo] = @CodGruppo, [CodTipo] = @CodTipo, [Value] = @Value, [CheckType] = @CheckType, [Required] = @Required, [Note] = @Note WHERE (([CodTempl] = @Original_CodTempl) AND ([Label] = @Original_Label) AND ([Oggetto] = @Original_Oggetto) AND ([Num] = @Original_Num) AND ([CodGruppo] = @Original_CodGruppo) AND ([CodTipo] = @Original_CodTipo) AND ([Value] = @Original_Value) AND ([CheckType] = @Original_CheckType) AND ([Required] = @Original_Required) AND ([Note] = @Original_Note)); +SELECT CodTempl, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, Note FROM ST_TemplateRows WHERE (CodTempl = @CodTempl) AND (Label = @Label) AND (Oggetto = @Oggetto)"; + this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Label", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Label", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Oggetto", global::System.Data.SqlDbType.SmallInt, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Oggetto", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Value", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Value", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CheckType", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckType", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Required", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Required", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Note", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Note", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTempl", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTempl", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Label", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Label", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Oggetto", global::System.Data.SqlDbType.SmallInt, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Oggetto", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Num", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Num", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodTipo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodTipo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Value", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Value", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CheckType", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CheckType", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Required", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Required", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Note", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Note", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitConnection() { + this._connection = new global::System.Data.SqlClient.SqlConnection(); + this._connection.ConnectionString = global::MapoDb.Properties.Settings.Default.MoonProConnectionString; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private void InitCommandCollection() { + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[1]; + this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[0].Connection = this.Connection; + this._commandCollection[0].CommandText = "SELECT CodTempl, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Requi" + + "red, Note FROM dbo.ST_TemplateRows"; + this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, true)] + public virtual int Fill(DS_SheetTech.ST_TemplateRowsDataTable dataTable) { + this.Adapter.SelectCommand = this.CommandCollection[0]; + if ((this.ClearBeforeFill == true)) { + dataTable.Clear(); + } + int returnValue = this.Adapter.Fill(dataTable); + return returnValue; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)] + public virtual DS_SheetTech.ST_TemplateRowsDataTable GetData() { + this.Adapter.SelectCommand = this.CommandCollection[0]; + DS_SheetTech.ST_TemplateRowsDataTable dataTable = new DS_SheetTech.ST_TemplateRowsDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech.ST_TemplateRowsDataTable dataTable) { + return this.Adapter.Update(dataTable); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(DS_SheetTech dataSet) { + return this.Adapter.Update(dataSet, "ST_TemplateRows"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow dataRow) { + return this.Adapter.Update(new global::System.Data.DataRow[] { + dataRow}); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow[] dataRows) { + return this.Adapter.Update(dataRows); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] + public virtual int Delete(string Original_CodTempl, string Original_Label, short Original_Oggetto, int Original_Num, string Original_CodGruppo, string Original_CodTipo, string Original_Value, string Original_CheckType, bool Original_Required, string Original_Note) { + if ((Original_CodTempl == null)) { + throw new global::System.ArgumentNullException("Original_CodTempl"); + } + else { + this.Adapter.DeleteCommand.Parameters[0].Value = ((string)(Original_CodTempl)); + } + if ((Original_Label == null)) { + throw new global::System.ArgumentNullException("Original_Label"); + } + else { + this.Adapter.DeleteCommand.Parameters[1].Value = ((string)(Original_Label)); + } + this.Adapter.DeleteCommand.Parameters[2].Value = ((short)(Original_Oggetto)); + this.Adapter.DeleteCommand.Parameters[3].Value = ((int)(Original_Num)); + if ((Original_CodGruppo == null)) { + throw new global::System.ArgumentNullException("Original_CodGruppo"); + } + else { + this.Adapter.DeleteCommand.Parameters[4].Value = ((string)(Original_CodGruppo)); + } + if ((Original_CodTipo == null)) { + throw new global::System.ArgumentNullException("Original_CodTipo"); + } + else { + this.Adapter.DeleteCommand.Parameters[5].Value = ((string)(Original_CodTipo)); + } + if ((Original_Value == null)) { + throw new global::System.ArgumentNullException("Original_Value"); + } + else { + this.Adapter.DeleteCommand.Parameters[6].Value = ((string)(Original_Value)); + } + if ((Original_CheckType == null)) { + throw new global::System.ArgumentNullException("Original_CheckType"); + } + else { + this.Adapter.DeleteCommand.Parameters[7].Value = ((string)(Original_CheckType)); + } + this.Adapter.DeleteCommand.Parameters[8].Value = ((bool)(Original_Required)); + if ((Original_Note == null)) { + throw new global::System.ArgumentNullException("Original_Note"); + } + else { + this.Adapter.DeleteCommand.Parameters[9].Value = ((string)(Original_Note)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; + if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.DeleteCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.DeleteCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.DeleteCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] + public virtual int Insert(string CodTempl, string Label, short Oggetto, int Num, string CodGruppo, string CodTipo, string Value, string CheckType, bool Required, string Note) { + if ((CodTempl == null)) { + throw new global::System.ArgumentNullException("CodTempl"); + } + else { + this.Adapter.InsertCommand.Parameters[0].Value = ((string)(CodTempl)); + } + if ((Label == null)) { + throw new global::System.ArgumentNullException("Label"); + } + else { + this.Adapter.InsertCommand.Parameters[1].Value = ((string)(Label)); + } + this.Adapter.InsertCommand.Parameters[2].Value = ((short)(Oggetto)); + this.Adapter.InsertCommand.Parameters[3].Value = ((int)(Num)); + if ((CodGruppo == null)) { + throw new global::System.ArgumentNullException("CodGruppo"); + } + else { + this.Adapter.InsertCommand.Parameters[4].Value = ((string)(CodGruppo)); + } + if ((CodTipo == null)) { + throw new global::System.ArgumentNullException("CodTipo"); + } + else { + this.Adapter.InsertCommand.Parameters[5].Value = ((string)(CodTipo)); + } + if ((Value == null)) { + throw new global::System.ArgumentNullException("Value"); + } + else { + this.Adapter.InsertCommand.Parameters[6].Value = ((string)(Value)); + } + if ((CheckType == null)) { + throw new global::System.ArgumentNullException("CheckType"); + } + else { + this.Adapter.InsertCommand.Parameters[7].Value = ((string)(CheckType)); + } + this.Adapter.InsertCommand.Parameters[8].Value = ((bool)(Required)); + if ((Note == null)) { + throw new global::System.ArgumentNullException("Note"); + } + else { + this.Adapter.InsertCommand.Parameters[9].Value = ((string)(Note)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; + if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.InsertCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.InsertCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.InsertCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update( + string CodTempl, + string Label, + short Oggetto, + int Num, + string CodGruppo, + string CodTipo, + string Value, + string CheckType, + bool Required, + string Note, + string Original_CodTempl, + string Original_Label, + short Original_Oggetto, + int Original_Num, + string Original_CodGruppo, + string Original_CodTipo, + string Original_Value, + string Original_CheckType, + bool Original_Required, + string Original_Note) { + if ((CodTempl == null)) { + throw new global::System.ArgumentNullException("CodTempl"); + } + else { + this.Adapter.UpdateCommand.Parameters[0].Value = ((string)(CodTempl)); + } + if ((Label == null)) { + throw new global::System.ArgumentNullException("Label"); + } + else { + this.Adapter.UpdateCommand.Parameters[1].Value = ((string)(Label)); + } + this.Adapter.UpdateCommand.Parameters[2].Value = ((short)(Oggetto)); + this.Adapter.UpdateCommand.Parameters[3].Value = ((int)(Num)); + if ((CodGruppo == null)) { + throw new global::System.ArgumentNullException("CodGruppo"); + } + else { + this.Adapter.UpdateCommand.Parameters[4].Value = ((string)(CodGruppo)); + } + if ((CodTipo == null)) { + throw new global::System.ArgumentNullException("CodTipo"); + } + else { + this.Adapter.UpdateCommand.Parameters[5].Value = ((string)(CodTipo)); + } + if ((Value == null)) { + throw new global::System.ArgumentNullException("Value"); + } + else { + this.Adapter.UpdateCommand.Parameters[6].Value = ((string)(Value)); + } + if ((CheckType == null)) { + throw new global::System.ArgumentNullException("CheckType"); + } + else { + this.Adapter.UpdateCommand.Parameters[7].Value = ((string)(CheckType)); + } + this.Adapter.UpdateCommand.Parameters[8].Value = ((bool)(Required)); + if ((Note == null)) { + throw new global::System.ArgumentNullException("Note"); + } + else { + this.Adapter.UpdateCommand.Parameters[9].Value = ((string)(Note)); + } + if ((Original_CodTempl == null)) { + throw new global::System.ArgumentNullException("Original_CodTempl"); + } + else { + this.Adapter.UpdateCommand.Parameters[10].Value = ((string)(Original_CodTempl)); + } + if ((Original_Label == null)) { + throw new global::System.ArgumentNullException("Original_Label"); + } + else { + this.Adapter.UpdateCommand.Parameters[11].Value = ((string)(Original_Label)); + } + this.Adapter.UpdateCommand.Parameters[12].Value = ((short)(Original_Oggetto)); + this.Adapter.UpdateCommand.Parameters[13].Value = ((int)(Original_Num)); + if ((Original_CodGruppo == null)) { + throw new global::System.ArgumentNullException("Original_CodGruppo"); + } + else { + this.Adapter.UpdateCommand.Parameters[14].Value = ((string)(Original_CodGruppo)); + } + if ((Original_CodTipo == null)) { + throw new global::System.ArgumentNullException("Original_CodTipo"); + } + else { + this.Adapter.UpdateCommand.Parameters[15].Value = ((string)(Original_CodTipo)); + } + if ((Original_Value == null)) { + throw new global::System.ArgumentNullException("Original_Value"); + } + else { + this.Adapter.UpdateCommand.Parameters[16].Value = ((string)(Original_Value)); + } + if ((Original_CheckType == null)) { + throw new global::System.ArgumentNullException("Original_CheckType"); + } + else { + this.Adapter.UpdateCommand.Parameters[17].Value = ((string)(Original_CheckType)); + } + this.Adapter.UpdateCommand.Parameters[18].Value = ((bool)(Original_Required)); + if ((Original_Note == null)) { + throw new global::System.ArgumentNullException("Original_Note"); + } + else { + this.Adapter.UpdateCommand.Parameters[19].Value = ((string)(Original_Note)); + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; + if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.UpdateCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.UpdateCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update( + int Num, + string CodGruppo, + string CodTipo, + string Value, + string CheckType, + bool Required, + string Note, + string Original_CodTempl, + string Original_Label, + short Original_Oggetto, + int Original_Num, + string Original_CodGruppo, + string Original_CodTipo, + string Original_Value, + string Original_CheckType, + bool Original_Required, + string Original_Note) { + return this.Update(Original_CodTempl, Original_Label, Original_Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, Note, Original_CodTempl, Original_Label, Original_Oggetto, Original_Num, Original_CodGruppo, Original_CodTipo, Original_Value, Original_CheckType, Original_Required, Original_Note); + } + } + + /// + ///TableAdapterManager is used to coordinate TableAdapters in the dataset to enable Hierarchical Update scenarios + /// + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerDesigner, Microsoft.VSD" + + "esigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapterManager")] + public partial class TableAdapterManager : global::System.ComponentModel.Component { + + private UpdateOrderOption _updateOrder; + + private ST_ActualTableAdapter _sT_ActualTableAdapter; + + private ST_ActualRowTableAdapter _sT_ActualRowTableAdapter; + + private ST_CheckTableAdapter _sT_CheckTableAdapter; + + private ST_AnagGruppiTableAdapter _sT_AnagGruppiTableAdapter; + + private ST_AnagTipiTableAdapter _sT_AnagTipiTableAdapter; + + private ST_TemplateTableAdapter _sT_TemplateTableAdapter; + + private ST_TemplateRowsTableAdapter _sT_TemplateRowsTableAdapter; + + private bool _backupDataSetBeforeUpdate; + + private global::System.Data.IDbConnection _connection; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public UpdateOrderOption UpdateOrder { + get { + return this._updateOrder; + } + set { + this._updateOrder = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.EditorAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerPropertyEditor, Microso" + + "ft.VSDesigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3" + + "a", "System.Drawing.Design.UITypeEditor")] + public ST_ActualTableAdapter ST_ActualTableAdapter { + get { + return this._sT_ActualTableAdapter; + } + set { + this._sT_ActualTableAdapter = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.EditorAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerPropertyEditor, Microso" + + "ft.VSDesigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3" + + "a", "System.Drawing.Design.UITypeEditor")] + public ST_ActualRowTableAdapter ST_ActualRowTableAdapter { + get { + return this._sT_ActualRowTableAdapter; + } + set { + this._sT_ActualRowTableAdapter = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.EditorAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerPropertyEditor, Microso" + + "ft.VSDesigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3" + + "a", "System.Drawing.Design.UITypeEditor")] + public ST_CheckTableAdapter ST_CheckTableAdapter { + get { + return this._sT_CheckTableAdapter; + } + set { + this._sT_CheckTableAdapter = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.EditorAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerPropertyEditor, Microso" + + "ft.VSDesigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3" + + "a", "System.Drawing.Design.UITypeEditor")] + public ST_AnagGruppiTableAdapter ST_AnagGruppiTableAdapter { + get { + return this._sT_AnagGruppiTableAdapter; + } + set { + this._sT_AnagGruppiTableAdapter = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.EditorAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerPropertyEditor, Microso" + + "ft.VSDesigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3" + + "a", "System.Drawing.Design.UITypeEditor")] + public ST_AnagTipiTableAdapter ST_AnagTipiTableAdapter { + get { + return this._sT_AnagTipiTableAdapter; + } + set { + this._sT_AnagTipiTableAdapter = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.EditorAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerPropertyEditor, Microso" + + "ft.VSDesigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3" + + "a", "System.Drawing.Design.UITypeEditor")] + public ST_TemplateTableAdapter ST_TemplateTableAdapter { + get { + return this._sT_TemplateTableAdapter; + } + set { + this._sT_TemplateTableAdapter = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.EditorAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerPropertyEditor, Microso" + + "ft.VSDesigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3" + + "a", "System.Drawing.Design.UITypeEditor")] + public ST_TemplateRowsTableAdapter ST_TemplateRowsTableAdapter { + get { + return this._sT_TemplateRowsTableAdapter; + } + set { + this._sT_TemplateRowsTableAdapter = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool BackupDataSetBeforeUpdate { + get { + return this._backupDataSetBeforeUpdate; + } + set { + this._backupDataSetBeforeUpdate = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public global::System.Data.IDbConnection Connection { + get { + if ((this._connection != null)) { + return this._connection; + } + if (((this._sT_ActualTableAdapter != null) + && (this._sT_ActualTableAdapter.Connection != null))) { + return this._sT_ActualTableAdapter.Connection; + } + if (((this._sT_ActualRowTableAdapter != null) + && (this._sT_ActualRowTableAdapter.Connection != null))) { + return this._sT_ActualRowTableAdapter.Connection; + } + if (((this._sT_CheckTableAdapter != null) + && (this._sT_CheckTableAdapter.Connection != null))) { + return this._sT_CheckTableAdapter.Connection; + } + if (((this._sT_AnagGruppiTableAdapter != null) + && (this._sT_AnagGruppiTableAdapter.Connection != null))) { + return this._sT_AnagGruppiTableAdapter.Connection; + } + if (((this._sT_AnagTipiTableAdapter != null) + && (this._sT_AnagTipiTableAdapter.Connection != null))) { + return this._sT_AnagTipiTableAdapter.Connection; + } + if (((this._sT_TemplateTableAdapter != null) + && (this._sT_TemplateTableAdapter.Connection != null))) { + return this._sT_TemplateTableAdapter.Connection; + } + if (((this._sT_TemplateRowsTableAdapter != null) + && (this._sT_TemplateRowsTableAdapter.Connection != null))) { + return this._sT_TemplateRowsTableAdapter.Connection; + } + return null; + } + set { + this._connection = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public int TableAdapterInstanceCount { + get { + int count = 0; + if ((this._sT_ActualTableAdapter != null)) { + count = (count + 1); + } + if ((this._sT_ActualRowTableAdapter != null)) { + count = (count + 1); + } + if ((this._sT_CheckTableAdapter != null)) { + count = (count + 1); + } + if ((this._sT_AnagGruppiTableAdapter != null)) { + count = (count + 1); + } + if ((this._sT_AnagTipiTableAdapter != null)) { + count = (count + 1); + } + if ((this._sT_TemplateTableAdapter != null)) { + count = (count + 1); + } + if ((this._sT_TemplateRowsTableAdapter != null)) { + count = (count + 1); + } + return count; + } + } + + /// + ///Update rows in top-down order. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private int UpdateUpdatedRows(DS_SheetTech dataSet, global::System.Collections.Generic.List allChangedRows, global::System.Collections.Generic.List allAddedRows) { + int result = 0; + if ((this._sT_TemplateTableAdapter != null)) { + global::System.Data.DataRow[] updatedRows = dataSet.ST_Template.Select(null, null, global::System.Data.DataViewRowState.ModifiedCurrent); + updatedRows = this.GetRealUpdatedRows(updatedRows, allAddedRows); + if (((updatedRows != null) + && (0 < updatedRows.Length))) { + result = (result + this._sT_TemplateTableAdapter.Update(updatedRows)); + allChangedRows.AddRange(updatedRows); + } + } + if ((this._sT_ActualTableAdapter != null)) { + global::System.Data.DataRow[] updatedRows = dataSet.ST_Actual.Select(null, null, global::System.Data.DataViewRowState.ModifiedCurrent); + updatedRows = this.GetRealUpdatedRows(updatedRows, allAddedRows); + if (((updatedRows != null) + && (0 < updatedRows.Length))) { + result = (result + this._sT_ActualTableAdapter.Update(updatedRows)); + allChangedRows.AddRange(updatedRows); + } + } + if ((this._sT_AnagGruppiTableAdapter != null)) { + global::System.Data.DataRow[] updatedRows = dataSet.ST_AnagGruppi.Select(null, null, global::System.Data.DataViewRowState.ModifiedCurrent); + updatedRows = this.GetRealUpdatedRows(updatedRows, allAddedRows); + if (((updatedRows != null) + && (0 < updatedRows.Length))) { + result = (result + this._sT_AnagGruppiTableAdapter.Update(updatedRows)); + allChangedRows.AddRange(updatedRows); + } + } + if ((this._sT_AnagTipiTableAdapter != null)) { + global::System.Data.DataRow[] updatedRows = dataSet.ST_AnagTipi.Select(null, null, global::System.Data.DataViewRowState.ModifiedCurrent); + updatedRows = this.GetRealUpdatedRows(updatedRows, allAddedRows); + if (((updatedRows != null) + && (0 < updatedRows.Length))) { + result = (result + this._sT_AnagTipiTableAdapter.Update(updatedRows)); + allChangedRows.AddRange(updatedRows); + } + } + if ((this._sT_ActualRowTableAdapter != null)) { + global::System.Data.DataRow[] updatedRows = dataSet._ST_ActualRow.Select(null, null, global::System.Data.DataViewRowState.ModifiedCurrent); + updatedRows = this.GetRealUpdatedRows(updatedRows, allAddedRows); + if (((updatedRows != null) + && (0 < updatedRows.Length))) { + result = (result + this._sT_ActualRowTableAdapter.Update(updatedRows)); + allChangedRows.AddRange(updatedRows); + } + } + if ((this._sT_CheckTableAdapter != null)) { + global::System.Data.DataRow[] updatedRows = dataSet.ST_Check.Select(null, null, global::System.Data.DataViewRowState.ModifiedCurrent); + updatedRows = this.GetRealUpdatedRows(updatedRows, allAddedRows); + if (((updatedRows != null) + && (0 < updatedRows.Length))) { + result = (result + this._sT_CheckTableAdapter.Update(updatedRows)); + allChangedRows.AddRange(updatedRows); + } + } + if ((this._sT_TemplateRowsTableAdapter != null)) { + global::System.Data.DataRow[] updatedRows = dataSet.ST_TemplateRows.Select(null, null, global::System.Data.DataViewRowState.ModifiedCurrent); + updatedRows = this.GetRealUpdatedRows(updatedRows, allAddedRows); + if (((updatedRows != null) + && (0 < updatedRows.Length))) { + result = (result + this._sT_TemplateRowsTableAdapter.Update(updatedRows)); + allChangedRows.AddRange(updatedRows); + } + } + return result; + } + + /// + ///Insert rows in top-down order. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private int UpdateInsertedRows(DS_SheetTech dataSet, global::System.Collections.Generic.List allAddedRows) { + int result = 0; + if ((this._sT_TemplateTableAdapter != null)) { + global::System.Data.DataRow[] addedRows = dataSet.ST_Template.Select(null, null, global::System.Data.DataViewRowState.Added); + if (((addedRows != null) + && (0 < addedRows.Length))) { + result = (result + this._sT_TemplateTableAdapter.Update(addedRows)); + allAddedRows.AddRange(addedRows); + } + } + if ((this._sT_ActualTableAdapter != null)) { + global::System.Data.DataRow[] addedRows = dataSet.ST_Actual.Select(null, null, global::System.Data.DataViewRowState.Added); + if (((addedRows != null) + && (0 < addedRows.Length))) { + result = (result + this._sT_ActualTableAdapter.Update(addedRows)); + allAddedRows.AddRange(addedRows); + } + } + if ((this._sT_AnagGruppiTableAdapter != null)) { + global::System.Data.DataRow[] addedRows = dataSet.ST_AnagGruppi.Select(null, null, global::System.Data.DataViewRowState.Added); + if (((addedRows != null) + && (0 < addedRows.Length))) { + result = (result + this._sT_AnagGruppiTableAdapter.Update(addedRows)); + allAddedRows.AddRange(addedRows); + } + } + if ((this._sT_AnagTipiTableAdapter != null)) { + global::System.Data.DataRow[] addedRows = dataSet.ST_AnagTipi.Select(null, null, global::System.Data.DataViewRowState.Added); + if (((addedRows != null) + && (0 < addedRows.Length))) { + result = (result + this._sT_AnagTipiTableAdapter.Update(addedRows)); + allAddedRows.AddRange(addedRows); + } + } + if ((this._sT_ActualRowTableAdapter != null)) { + global::System.Data.DataRow[] addedRows = dataSet._ST_ActualRow.Select(null, null, global::System.Data.DataViewRowState.Added); + if (((addedRows != null) + && (0 < addedRows.Length))) { + result = (result + this._sT_ActualRowTableAdapter.Update(addedRows)); + allAddedRows.AddRange(addedRows); + } + } + if ((this._sT_CheckTableAdapter != null)) { + global::System.Data.DataRow[] addedRows = dataSet.ST_Check.Select(null, null, global::System.Data.DataViewRowState.Added); + if (((addedRows != null) + && (0 < addedRows.Length))) { + result = (result + this._sT_CheckTableAdapter.Update(addedRows)); + allAddedRows.AddRange(addedRows); + } + } + if ((this._sT_TemplateRowsTableAdapter != null)) { + global::System.Data.DataRow[] addedRows = dataSet.ST_TemplateRows.Select(null, null, global::System.Data.DataViewRowState.Added); + if (((addedRows != null) + && (0 < addedRows.Length))) { + result = (result + this._sT_TemplateRowsTableAdapter.Update(addedRows)); + allAddedRows.AddRange(addedRows); + } + } + return result; + } + + /// + ///Delete rows in bottom-up order. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private int UpdateDeletedRows(DS_SheetTech dataSet, global::System.Collections.Generic.List allChangedRows) { + int result = 0; + if ((this._sT_TemplateRowsTableAdapter != null)) { + global::System.Data.DataRow[] deletedRows = dataSet.ST_TemplateRows.Select(null, null, global::System.Data.DataViewRowState.Deleted); + if (((deletedRows != null) + && (0 < deletedRows.Length))) { + result = (result + this._sT_TemplateRowsTableAdapter.Update(deletedRows)); + allChangedRows.AddRange(deletedRows); + } + } + if ((this._sT_CheckTableAdapter != null)) { + global::System.Data.DataRow[] deletedRows = dataSet.ST_Check.Select(null, null, global::System.Data.DataViewRowState.Deleted); + if (((deletedRows != null) + && (0 < deletedRows.Length))) { + result = (result + this._sT_CheckTableAdapter.Update(deletedRows)); + allChangedRows.AddRange(deletedRows); + } + } + if ((this._sT_ActualRowTableAdapter != null)) { + global::System.Data.DataRow[] deletedRows = dataSet._ST_ActualRow.Select(null, null, global::System.Data.DataViewRowState.Deleted); + if (((deletedRows != null) + && (0 < deletedRows.Length))) { + result = (result + this._sT_ActualRowTableAdapter.Update(deletedRows)); + allChangedRows.AddRange(deletedRows); + } + } + if ((this._sT_AnagTipiTableAdapter != null)) { + global::System.Data.DataRow[] deletedRows = dataSet.ST_AnagTipi.Select(null, null, global::System.Data.DataViewRowState.Deleted); + if (((deletedRows != null) + && (0 < deletedRows.Length))) { + result = (result + this._sT_AnagTipiTableAdapter.Update(deletedRows)); + allChangedRows.AddRange(deletedRows); + } + } + if ((this._sT_AnagGruppiTableAdapter != null)) { + global::System.Data.DataRow[] deletedRows = dataSet.ST_AnagGruppi.Select(null, null, global::System.Data.DataViewRowState.Deleted); + if (((deletedRows != null) + && (0 < deletedRows.Length))) { + result = (result + this._sT_AnagGruppiTableAdapter.Update(deletedRows)); + allChangedRows.AddRange(deletedRows); + } + } + if ((this._sT_ActualTableAdapter != null)) { + global::System.Data.DataRow[] deletedRows = dataSet.ST_Actual.Select(null, null, global::System.Data.DataViewRowState.Deleted); + if (((deletedRows != null) + && (0 < deletedRows.Length))) { + result = (result + this._sT_ActualTableAdapter.Update(deletedRows)); + allChangedRows.AddRange(deletedRows); + } + } + if ((this._sT_TemplateTableAdapter != null)) { + global::System.Data.DataRow[] deletedRows = dataSet.ST_Template.Select(null, null, global::System.Data.DataViewRowState.Deleted); + if (((deletedRows != null) + && (0 < deletedRows.Length))) { + result = (result + this._sT_TemplateTableAdapter.Update(deletedRows)); + allChangedRows.AddRange(deletedRows); + } + } + return result; + } + + /// + ///Remove inserted rows that become updated rows after calling TableAdapter.Update(inserted rows) first + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private global::System.Data.DataRow[] GetRealUpdatedRows(global::System.Data.DataRow[] updatedRows, global::System.Collections.Generic.List allAddedRows) { + if (((updatedRows == null) + || (updatedRows.Length < 1))) { + return updatedRows; + } + if (((allAddedRows == null) + || (allAddedRows.Count < 1))) { + return updatedRows; + } + global::System.Collections.Generic.List realUpdatedRows = new global::System.Collections.Generic.List(); + for (int i = 0; (i < updatedRows.Length); i = (i + 1)) { + global::System.Data.DataRow row = updatedRows[i]; + if ((allAddedRows.Contains(row) == false)) { + realUpdatedRows.Add(row); + } + } + return realUpdatedRows.ToArray(); + } + + /// + ///Update all changes to the dataset. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public virtual int UpdateAll(DS_SheetTech dataSet) { + if ((dataSet == null)) { + throw new global::System.ArgumentNullException("dataSet"); + } + if ((dataSet.HasChanges() == false)) { + return 0; + } + if (((this._sT_ActualTableAdapter != null) + && (this.MatchTableAdapterConnection(this._sT_ActualTableAdapter.Connection) == false))) { + throw new global::System.ArgumentException("Tutti gli oggetti TableAdapter gestiti da TableAdapterManager devono utilizzare l" + + "a stessa stringa di connessione."); + } + if (((this._sT_ActualRowTableAdapter != null) + && (this.MatchTableAdapterConnection(this._sT_ActualRowTableAdapter.Connection) == false))) { + throw new global::System.ArgumentException("Tutti gli oggetti TableAdapter gestiti da TableAdapterManager devono utilizzare l" + + "a stessa stringa di connessione."); + } + if (((this._sT_CheckTableAdapter != null) + && (this.MatchTableAdapterConnection(this._sT_CheckTableAdapter.Connection) == false))) { + throw new global::System.ArgumentException("Tutti gli oggetti TableAdapter gestiti da TableAdapterManager devono utilizzare l" + + "a stessa stringa di connessione."); + } + if (((this._sT_AnagGruppiTableAdapter != null) + && (this.MatchTableAdapterConnection(this._sT_AnagGruppiTableAdapter.Connection) == false))) { + throw new global::System.ArgumentException("Tutti gli oggetti TableAdapter gestiti da TableAdapterManager devono utilizzare l" + + "a stessa stringa di connessione."); + } + if (((this._sT_AnagTipiTableAdapter != null) + && (this.MatchTableAdapterConnection(this._sT_AnagTipiTableAdapter.Connection) == false))) { + throw new global::System.ArgumentException("Tutti gli oggetti TableAdapter gestiti da TableAdapterManager devono utilizzare l" + + "a stessa stringa di connessione."); + } + if (((this._sT_TemplateTableAdapter != null) + && (this.MatchTableAdapterConnection(this._sT_TemplateTableAdapter.Connection) == false))) { + throw new global::System.ArgumentException("Tutti gli oggetti TableAdapter gestiti da TableAdapterManager devono utilizzare l" + + "a stessa stringa di connessione."); + } + if (((this._sT_TemplateRowsTableAdapter != null) + && (this.MatchTableAdapterConnection(this._sT_TemplateRowsTableAdapter.Connection) == false))) { + throw new global::System.ArgumentException("Tutti gli oggetti TableAdapter gestiti da TableAdapterManager devono utilizzare l" + + "a stessa stringa di connessione."); + } + global::System.Data.IDbConnection workConnection = this.Connection; + if ((workConnection == null)) { + throw new global::System.ApplicationException("TableAdapterManager non contiene informazioni di connessione. Impostare la propri" + + "età TableAdapter di ciascun oggetto TableAdapterManager su un\'istanza TableAdapt" + + "er valida."); + } + bool workConnOpened = false; + if (((workConnection.State & global::System.Data.ConnectionState.Broken) + == global::System.Data.ConnectionState.Broken)) { + workConnection.Close(); + } + if ((workConnection.State == global::System.Data.ConnectionState.Closed)) { + workConnection.Open(); + workConnOpened = true; + } + global::System.Data.IDbTransaction workTransaction = workConnection.BeginTransaction(); + if ((workTransaction == null)) { + throw new global::System.ApplicationException("Impossibile avviare la transazione. La connessione dati corrente non supporta le " + + "transazioni oppure lo stato corrente non consente l\'avvio della transazione."); + } + global::System.Collections.Generic.List allChangedRows = new global::System.Collections.Generic.List(); + global::System.Collections.Generic.List allAddedRows = new global::System.Collections.Generic.List(); + global::System.Collections.Generic.List adaptersWithAcceptChangesDuringUpdate = new global::System.Collections.Generic.List(); + global::System.Collections.Generic.Dictionary revertConnections = new global::System.Collections.Generic.Dictionary(); + int result = 0; + global::System.Data.DataSet backupDataSet = null; + if (this.BackupDataSetBeforeUpdate) { + backupDataSet = new global::System.Data.DataSet(); + backupDataSet.Merge(dataSet); + } + try { + // ---- Prepare for update ----------- + // + if ((this._sT_ActualTableAdapter != null)) { + revertConnections.Add(this._sT_ActualTableAdapter, this._sT_ActualTableAdapter.Connection); + this._sT_ActualTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(workConnection)); + this._sT_ActualTableAdapter.Transaction = ((global::System.Data.SqlClient.SqlTransaction)(workTransaction)); + if (this._sT_ActualTableAdapter.Adapter.AcceptChangesDuringUpdate) { + this._sT_ActualTableAdapter.Adapter.AcceptChangesDuringUpdate = false; + adaptersWithAcceptChangesDuringUpdate.Add(this._sT_ActualTableAdapter.Adapter); + } + } + if ((this._sT_ActualRowTableAdapter != null)) { + revertConnections.Add(this._sT_ActualRowTableAdapter, this._sT_ActualRowTableAdapter.Connection); + this._sT_ActualRowTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(workConnection)); + this._sT_ActualRowTableAdapter.Transaction = ((global::System.Data.SqlClient.SqlTransaction)(workTransaction)); + if (this._sT_ActualRowTableAdapter.Adapter.AcceptChangesDuringUpdate) { + this._sT_ActualRowTableAdapter.Adapter.AcceptChangesDuringUpdate = false; + adaptersWithAcceptChangesDuringUpdate.Add(this._sT_ActualRowTableAdapter.Adapter); + } + } + if ((this._sT_CheckTableAdapter != null)) { + revertConnections.Add(this._sT_CheckTableAdapter, this._sT_CheckTableAdapter.Connection); + this._sT_CheckTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(workConnection)); + this._sT_CheckTableAdapter.Transaction = ((global::System.Data.SqlClient.SqlTransaction)(workTransaction)); + if (this._sT_CheckTableAdapter.Adapter.AcceptChangesDuringUpdate) { + this._sT_CheckTableAdapter.Adapter.AcceptChangesDuringUpdate = false; + adaptersWithAcceptChangesDuringUpdate.Add(this._sT_CheckTableAdapter.Adapter); + } + } + if ((this._sT_AnagGruppiTableAdapter != null)) { + revertConnections.Add(this._sT_AnagGruppiTableAdapter, this._sT_AnagGruppiTableAdapter.Connection); + this._sT_AnagGruppiTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(workConnection)); + this._sT_AnagGruppiTableAdapter.Transaction = ((global::System.Data.SqlClient.SqlTransaction)(workTransaction)); + if (this._sT_AnagGruppiTableAdapter.Adapter.AcceptChangesDuringUpdate) { + this._sT_AnagGruppiTableAdapter.Adapter.AcceptChangesDuringUpdate = false; + adaptersWithAcceptChangesDuringUpdate.Add(this._sT_AnagGruppiTableAdapter.Adapter); + } + } + if ((this._sT_AnagTipiTableAdapter != null)) { + revertConnections.Add(this._sT_AnagTipiTableAdapter, this._sT_AnagTipiTableAdapter.Connection); + this._sT_AnagTipiTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(workConnection)); + this._sT_AnagTipiTableAdapter.Transaction = ((global::System.Data.SqlClient.SqlTransaction)(workTransaction)); + if (this._sT_AnagTipiTableAdapter.Adapter.AcceptChangesDuringUpdate) { + this._sT_AnagTipiTableAdapter.Adapter.AcceptChangesDuringUpdate = false; + adaptersWithAcceptChangesDuringUpdate.Add(this._sT_AnagTipiTableAdapter.Adapter); + } + } + if ((this._sT_TemplateTableAdapter != null)) { + revertConnections.Add(this._sT_TemplateTableAdapter, this._sT_TemplateTableAdapter.Connection); + this._sT_TemplateTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(workConnection)); + this._sT_TemplateTableAdapter.Transaction = ((global::System.Data.SqlClient.SqlTransaction)(workTransaction)); + if (this._sT_TemplateTableAdapter.Adapter.AcceptChangesDuringUpdate) { + this._sT_TemplateTableAdapter.Adapter.AcceptChangesDuringUpdate = false; + adaptersWithAcceptChangesDuringUpdate.Add(this._sT_TemplateTableAdapter.Adapter); + } + } + if ((this._sT_TemplateRowsTableAdapter != null)) { + revertConnections.Add(this._sT_TemplateRowsTableAdapter, this._sT_TemplateRowsTableAdapter.Connection); + this._sT_TemplateRowsTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(workConnection)); + this._sT_TemplateRowsTableAdapter.Transaction = ((global::System.Data.SqlClient.SqlTransaction)(workTransaction)); + if (this._sT_TemplateRowsTableAdapter.Adapter.AcceptChangesDuringUpdate) { + this._sT_TemplateRowsTableAdapter.Adapter.AcceptChangesDuringUpdate = false; + adaptersWithAcceptChangesDuringUpdate.Add(this._sT_TemplateRowsTableAdapter.Adapter); + } + } + // + //---- Perform updates ----------- + // + if ((this.UpdateOrder == UpdateOrderOption.UpdateInsertDelete)) { + result = (result + this.UpdateUpdatedRows(dataSet, allChangedRows, allAddedRows)); + result = (result + this.UpdateInsertedRows(dataSet, allAddedRows)); + } + else { + result = (result + this.UpdateInsertedRows(dataSet, allAddedRows)); + result = (result + this.UpdateUpdatedRows(dataSet, allChangedRows, allAddedRows)); + } + result = (result + this.UpdateDeletedRows(dataSet, allChangedRows)); + // + //---- Commit updates ----------- + // + workTransaction.Commit(); + if ((0 < allAddedRows.Count)) { + global::System.Data.DataRow[] rows = new System.Data.DataRow[allAddedRows.Count]; + allAddedRows.CopyTo(rows); + for (int i = 0; (i < rows.Length); i = (i + 1)) { + global::System.Data.DataRow row = rows[i]; + row.AcceptChanges(); + } + } + if ((0 < allChangedRows.Count)) { + global::System.Data.DataRow[] rows = new System.Data.DataRow[allChangedRows.Count]; + allChangedRows.CopyTo(rows); + for (int i = 0; (i < rows.Length); i = (i + 1)) { + global::System.Data.DataRow row = rows[i]; + row.AcceptChanges(); + } + } + } + catch (global::System.Exception ex) { + workTransaction.Rollback(); + // ---- Restore the dataset ----------- + if (this.BackupDataSetBeforeUpdate) { + global::System.Diagnostics.Debug.Assert((backupDataSet != null)); + dataSet.Clear(); + dataSet.Merge(backupDataSet); + } + else { + if ((0 < allAddedRows.Count)) { + global::System.Data.DataRow[] rows = new System.Data.DataRow[allAddedRows.Count]; + allAddedRows.CopyTo(rows); + for (int i = 0; (i < rows.Length); i = (i + 1)) { + global::System.Data.DataRow row = rows[i]; + row.AcceptChanges(); + row.SetAdded(); + } + } + } + throw ex; + } + finally { + if (workConnOpened) { + workConnection.Close(); + } + if ((this._sT_ActualTableAdapter != null)) { + this._sT_ActualTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(revertConnections[this._sT_ActualTableAdapter])); + this._sT_ActualTableAdapter.Transaction = null; + } + if ((this._sT_ActualRowTableAdapter != null)) { + this._sT_ActualRowTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(revertConnections[this._sT_ActualRowTableAdapter])); + this._sT_ActualRowTableAdapter.Transaction = null; + } + if ((this._sT_CheckTableAdapter != null)) { + this._sT_CheckTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(revertConnections[this._sT_CheckTableAdapter])); + this._sT_CheckTableAdapter.Transaction = null; + } + if ((this._sT_AnagGruppiTableAdapter != null)) { + this._sT_AnagGruppiTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(revertConnections[this._sT_AnagGruppiTableAdapter])); + this._sT_AnagGruppiTableAdapter.Transaction = null; + } + if ((this._sT_AnagTipiTableAdapter != null)) { + this._sT_AnagTipiTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(revertConnections[this._sT_AnagTipiTableAdapter])); + this._sT_AnagTipiTableAdapter.Transaction = null; + } + if ((this._sT_TemplateTableAdapter != null)) { + this._sT_TemplateTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(revertConnections[this._sT_TemplateTableAdapter])); + this._sT_TemplateTableAdapter.Transaction = null; + } + if ((this._sT_TemplateRowsTableAdapter != null)) { + this._sT_TemplateRowsTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(revertConnections[this._sT_TemplateRowsTableAdapter])); + this._sT_TemplateRowsTableAdapter.Transaction = null; + } + if ((0 < adaptersWithAcceptChangesDuringUpdate.Count)) { + global::System.Data.Common.DataAdapter[] adapters = new System.Data.Common.DataAdapter[adaptersWithAcceptChangesDuringUpdate.Count]; + adaptersWithAcceptChangesDuringUpdate.CopyTo(adapters); + for (int i = 0; (i < adapters.Length); i = (i + 1)) { + global::System.Data.Common.DataAdapter adapter = adapters[i]; + adapter.AcceptChangesDuringUpdate = true; + } + } + } + return result; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected virtual void SortSelfReferenceRows(global::System.Data.DataRow[] rows, global::System.Data.DataRelation relation, bool childFirst) { + global::System.Array.Sort(rows, new SelfReferenceComparer(relation, childFirst)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + protected virtual bool MatchTableAdapterConnection(global::System.Data.IDbConnection inputConnection) { + if ((this._connection != null)) { + return true; + } + if (((this.Connection == null) + || (inputConnection == null))) { + return true; + } + if (string.Equals(this.Connection.ConnectionString, inputConnection.ConnectionString, global::System.StringComparison.Ordinal)) { + return true; + } + return false; + } + + /// + ///Update Order Option + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public enum UpdateOrderOption { + + InsertUpdateDelete = 0, + + UpdateInsertDelete = 1, + } + + /// + ///Used to sort self-referenced table's rows + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private class SelfReferenceComparer : object, global::System.Collections.Generic.IComparer { + + private global::System.Data.DataRelation _relation; + + private int _childFirst; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + internal SelfReferenceComparer(global::System.Data.DataRelation relation, bool childFirst) { + this._relation = relation; + if (childFirst) { + this._childFirst = -1; + } + else { + this._childFirst = 1; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + private global::System.Data.DataRow GetRoot(global::System.Data.DataRow row, out int distance) { + global::System.Diagnostics.Debug.Assert((row != null)); + global::System.Data.DataRow root = row; + distance = 0; + + global::System.Collections.Generic.IDictionary traversedRows = new global::System.Collections.Generic.Dictionary(); + traversedRows[row] = row; + + global::System.Data.DataRow parent = row.GetParentRow(this._relation, global::System.Data.DataRowVersion.Default); + for ( + ; ((parent != null) + && (traversedRows.ContainsKey(parent) == false)); + ) { + distance = (distance + 1); + root = parent; + traversedRows[parent] = parent; + parent = parent.GetParentRow(this._relation, global::System.Data.DataRowVersion.Default); + } + + if ((distance == 0)) { + traversedRows.Clear(); + traversedRows[row] = row; + parent = row.GetParentRow(this._relation, global::System.Data.DataRowVersion.Original); + for ( + ; ((parent != null) + && (traversedRows.ContainsKey(parent) == false)); + ) { + distance = (distance + 1); + root = parent; + traversedRows[parent] = parent; + parent = parent.GetParentRow(this._relation, global::System.Data.DataRowVersion.Original); + } + } + + return root; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public int Compare(global::System.Data.DataRow row1, global::System.Data.DataRow row2) { + if (object.ReferenceEquals(row1, row2)) { + return 0; + } + if ((row1 == null)) { + return -1; + } + if ((row2 == null)) { + return 1; + } + + int distance1 = 0; + global::System.Data.DataRow root1 = this.GetRoot(row1, out distance1); + + int distance2 = 0; + global::System.Data.DataRow root2 = this.GetRoot(row2, out distance2); + + if (object.ReferenceEquals(root1, root2)) { + return (this._childFirst * distance1.CompareTo(distance2)); + } + else { + global::System.Diagnostics.Debug.Assert(((root1.Table != null) + && (root2.Table != null))); + if ((root1.Table.Rows.IndexOf(root1) < root2.Table.Rows.IndexOf(root2))) { + return -1; + } + else { + return 1; + } + } + } + } + } +} + +#pragma warning restore 1591 \ No newline at end of file diff --git a/MapoDb/DS_SheetTech.xsc b/MapoDb/DS_SheetTech.xsc new file mode 100644 index 00000000..05b01991 --- /dev/null +++ b/MapoDb/DS_SheetTech.xsc @@ -0,0 +1,9 @@ + + + + + \ No newline at end of file diff --git a/MapoDb/DS_SheetTech.xsd b/MapoDb/DS_SheetTech.xsd new file mode 100644 index 00000000..f470d396 --- /dev/null +++ b/MapoDb/DS_SheetTech.xsd @@ -0,0 +1,791 @@ + + + + + + + + + + + + + + + DELETE FROM [dbo].[ST_Actual] WHERE (([IdxST] = @Original_IdxST) AND ([CodTempl] = @Original_CodTempl) AND ([CodArticolo] = @Original_CodArticolo) AND ([MatrOpr] = @Original_MatrOpr) AND ([DtMod] = @Original_DtMod)) + + + + + + + + + + + + INSERT INTO [dbo].[ST_Actual] ([CodTempl], [CodArticolo], [MatrOpr], [DtMod]) VALUES (@CodTempl, @CodArticolo, @MatrOpr, @DtMod); +SELECT IdxST, CodTempl, CodArticolo, MatrOpr, DtMod FROM ST_Actual WHERE (IdxST = SCOPE_IDENTITY()) + + + + + + + + + + + SELECT IdxST, CodTempl, CodArticolo, MatrOpr, DtMod FROM dbo.ST_Actual + + + + + + UPDATE [dbo].[ST_Actual] SET [CodTempl] = @CodTempl, [CodArticolo] = @CodArticolo, [MatrOpr] = @MatrOpr, [DtMod] = @DtMod WHERE (([IdxST] = @Original_IdxST) AND ([CodTempl] = @Original_CodTempl) AND ([CodArticolo] = @Original_CodArticolo) AND ([MatrOpr] = @Original_MatrOpr) AND ([DtMod] = @Original_DtMod)); +SELECT IdxST, CodTempl, CodArticolo, MatrOpr, DtMod FROM ST_Actual WHERE (IdxST = @IdxST) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DELETE FROM [dbo].[ST_ActualRows] WHERE (([IdxST] = @Original_IdxST) AND ([Label] = @Original_Label) AND ([Oggetto] = @Original_Oggetto) AND ([Num] = @Original_Num) AND ([CodGruppo] = @Original_CodGruppo) AND ([CodTipo] = @Original_CodTipo) AND ([Value] = @Original_Value) AND ([CheckType] = @Original_CheckType) AND ([Required] = @Original_Required) AND ([Note] = @Original_Note)) + + + + + + + + + + + + + + + + + INSERT INTO [dbo].[ST_ActualRows] ([IdxST], [Label], [Oggetto], [Num], [CodGruppo], [CodTipo], [Value], [CheckType], [Required], [ExtCode], [Note]) VALUES (@IdxST, @Label, @Oggetto, @Num, @CodGruppo, @CodTipo, @Value, @CheckType, @Required, @ExtCode, @Note); +SELECT IdxST, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, ExtCode, Note FROM ST_ActualRows WHERE (IdxST = @IdxST) AND (Label = @Label) AND (Oggetto = @Oggetto) + + + + + + + + + + + + + + + + + + SELECT DescGruppo, DescTipo, IdxST, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, ExtCode, Note +FROM v_ST_AR + + + + + + UPDATE [dbo].[ST_ActualRows] SET [IdxST] = @IdxST, [Label] = @Label, [Oggetto] = @Oggetto, [Num] = @Num, [CodGruppo] = @CodGruppo, [CodTipo] = @CodTipo, [Value] = @Value, [CheckType] = @CheckType, [Required] = @Required, [ExtCode] = @ExtCode, [Note] = @Note WHERE (([IdxST] = @Original_IdxST) AND ([Label] = @Original_Label) AND ([Oggetto] = @Original_Oggetto) AND ([Num] = @Original_Num) AND ([CodGruppo] = @Original_CodGruppo) AND ([CodTipo] = @Original_CodTipo) AND ([Value] = @Original_Value) AND ([CheckType] = @Original_CheckType) AND ([Required] = @Original_Required) AND ([Note] = @Original_Note)); +SELECT IdxST, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, ExtCode, Note FROM ST_ActualRows WHERE (IdxST = @IdxST) AND (Label = @Label) AND (Oggetto = @Oggetto) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + dbo.stp_ST_AR_getByCodArt + + + + + + + + + + + + + + + DELETE FROM [dbo].[ST_Check] WHERE (([DtEvent] = @Original_DtEvent) AND ([IdxODL] = @Original_IdxODL) AND ([IdxST] = @Original_IdxST) AND ([Num] = @Original_Num) AND ([ValueCurr] = @Original_ValueCurr) AND ([CheckOk] = @Original_CheckOk) AND ([DtMod] = @Original_DtMod) AND ([UserMod] = @Original_UserMod)) + + + + + + + + + + + + + + + INSERT INTO [dbo].[ST_Check] ([DtEvent], [IdxODL], [IdxST], [Num], [ValueCurr], [CheckOk], [DtMod], [UserMod]) VALUES (@DtEvent, @IdxODL, @IdxST, @Num, @ValueCurr, @CheckOk, @DtMod, @UserMod); +SELECT DtEvent, IdxODL, IdxST, Num, ValueCurr, CheckOk, DtMod, UserMod FROM ST_Check WHERE (DtEvent = @DtEvent) AND (IdxODL = @IdxODL) AND (IdxST = @IdxST) AND (Num = @Num) + + + + + + + + + + + + + + + SELECT DtEvent, IdxODL, IdxST, Num, ValueCurr, CheckOk, DtMod, UserMod FROM dbo.ST_Check + + + + + + UPDATE [dbo].[ST_Check] SET [DtEvent] = @DtEvent, [IdxODL] = @IdxODL, [IdxST] = @IdxST, [Num] = @Num, [ValueCurr] = @ValueCurr, [CheckOk] = @CheckOk, [DtMod] = @DtMod, [UserMod] = @UserMod WHERE (([DtEvent] = @Original_DtEvent) AND ([IdxODL] = @Original_IdxODL) AND ([IdxST] = @Original_IdxST) AND ([Num] = @Original_Num) AND ([ValueCurr] = @Original_ValueCurr) AND ([CheckOk] = @Original_CheckOk) AND ([DtMod] = @Original_DtMod) AND ([UserMod] = @Original_UserMod)); +SELECT DtEvent, IdxODL, IdxST, Num, ValueCurr, CheckOk, DtMod, UserMod FROM ST_Check WHERE (DtEvent = @DtEvent) AND (IdxODL = @IdxODL) AND (IdxST = @IdxST) AND (Num = @Num) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DELETE FROM [dbo].[ST_AnagGruppi] WHERE (([CodGruppo] = @Original_CodGruppo) AND ((@IsNull_DescGruppo = 1 AND [DescGruppo] IS NULL) OR ([DescGruppo] = @Original_DescGruppo))) + + + + + + + + + + INSERT INTO [dbo].[ST_AnagGruppi] ([CodGruppo], [DescGruppo]) VALUES (@CodGruppo, @DescGruppo); +SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo) + + + + + + + + + SELECT CodGruppo, DescGruppo FROM dbo.ST_AnagGruppi + + + + + + UPDATE [dbo].[ST_AnagGruppi] SET [CodGruppo] = @CodGruppo, [DescGruppo] = @DescGruppo WHERE (([CodGruppo] = @Original_CodGruppo) AND ((@IsNull_DescGruppo = 1 AND [DescGruppo] IS NULL) OR ([DescGruppo] = @Original_DescGruppo))); +SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo) + + + + + + + + + + + + + + + + + + + + + + + DELETE FROM [dbo].[ST_AnagTipi] WHERE (([CodTipo] = @Original_CodTipo) AND ([DescTipo] = @Original_DescTipo)) + + + + + + + + + INSERT INTO [dbo].[ST_AnagTipi] ([CodTipo], [DescTipo]) VALUES (@CodTipo, @DescTipo); +SELECT CodTipo, DescTipo FROM ST_AnagTipi WHERE (CodTipo = @CodTipo) + + + + + + + + + SELECT CodTipo, DescTipo FROM dbo.ST_AnagTipi + + + + + + UPDATE [dbo].[ST_AnagTipi] SET [CodTipo] = @CodTipo, [DescTipo] = @DescTipo WHERE (([CodTipo] = @Original_CodTipo) AND ([DescTipo] = @Original_DescTipo)); +SELECT CodTipo, DescTipo FROM ST_AnagTipi WHERE (CodTipo = @CodTipo) + + + + + + + + + + + + + + + + + + + + + + DELETE FROM [dbo].[ST_Template] WHERE (([CodTempl] = @Original_CodTempl) AND ([DescTempl] = @Original_DescTempl)) + + + + + + + + + INSERT INTO [dbo].[ST_Template] ([CodTempl], [DescTempl]) VALUES (@CodTempl, @DescTempl); +SELECT CodTempl, DescTempl FROM ST_Template WHERE (CodTempl = @CodTempl) + + + + + + + + + SELECT CodTempl, DescTempl FROM dbo.ST_Template + + + + + + UPDATE [dbo].[ST_Template] SET [CodTempl] = @CodTempl, [DescTempl] = @DescTempl WHERE (([CodTempl] = @Original_CodTempl) AND ([DescTempl] = @Original_DescTempl)); +SELECT CodTempl, DescTempl FROM ST_Template WHERE (CodTempl = @CodTempl) + + + + + + + + + + + + + + + + + + + + + + DELETE FROM [dbo].[ST_TemplateRows] WHERE (([CodTempl] = @Original_CodTempl) AND ([Label] = @Original_Label) AND ([Oggetto] = @Original_Oggetto) AND ([Num] = @Original_Num) AND ([CodGruppo] = @Original_CodGruppo) AND ([CodTipo] = @Original_CodTipo) AND ([Value] = @Original_Value) AND ([CheckType] = @Original_CheckType) AND ([Required] = @Original_Required) AND ([Note] = @Original_Note)) + + + + + + + + + + + + + + + + + INSERT INTO [dbo].[ST_TemplateRows] ([CodTempl], [Label], [Oggetto], [Num], [CodGruppo], [CodTipo], [Value], [CheckType], [Required], [Note]) VALUES (@CodTempl, @Label, @Oggetto, @Num, @CodGruppo, @CodTipo, @Value, @CheckType, @Required, @Note); +SELECT CodTempl, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, Note FROM ST_TemplateRows WHERE (CodTempl = @CodTempl) AND (Label = @Label) AND (Oggetto = @Oggetto) + + + + + + + + + + + + + + + + + SELECT CodTempl, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, Note FROM dbo.ST_TemplateRows + + + + + + UPDATE [dbo].[ST_TemplateRows] SET [CodTempl] = @CodTempl, [Label] = @Label, [Oggetto] = @Oggetto, [Num] = @Num, [CodGruppo] = @CodGruppo, [CodTipo] = @CodTipo, [Value] = @Value, [CheckType] = @CheckType, [Required] = @Required, [Note] = @Note WHERE (([CodTempl] = @Original_CodTempl) AND ([Label] = @Original_Label) AND ([Oggetto] = @Original_Oggetto) AND ([Num] = @Original_Num) AND ([CodGruppo] = @Original_CodGruppo) AND ([CodTipo] = @Original_CodTipo) AND ([Value] = @Original_Value) AND ([CheckType] = @Original_CheckType) AND ([Required] = @Original_Required) AND ([Note] = @Original_Note)); +SELECT CodTempl, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Required, Note FROM ST_TemplateRows WHERE (CodTempl = @CodTempl) AND (Label = @Label) AND (Oggetto = @Oggetto) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/MapoDb/DS_SheetTech.xss b/MapoDb/DS_SheetTech.xss new file mode 100644 index 00000000..5f282702 --- /dev/null +++ b/MapoDb/DS_SheetTech.xss @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/MapoDb/MapoDb.csproj b/MapoDb/MapoDb.csproj index dfcf7d92..31d03cfe 100644 --- a/MapoDb/MapoDb.csproj +++ b/MapoDb/MapoDb.csproj @@ -204,6 +204,11 @@ True DS_ProdTempi.xsd + + True + True + DS_SheetTech.xsd + DS_Utility.xsd @@ -276,6 +281,17 @@ DS_ProdTempi.xsd + + DS_SheetTech.xsd + + + Designer + MSDataSetGenerator + DS_SheetTech.Designer.cs + + + DS_SheetTech.xsd + DS_Utility.xsd From 49f505b98752d0309c3bfd7d8670c955419d0032 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 1 Jul 2020 19:27:19 +0200 Subject: [PATCH 03/18] bozza 2 livelli gruppo/dati scheda x preparare.. --- MP-TAB/WebUserControls/cmp_sheetTech.ascx | 109 ++++++++++++++++- .../cmp_sheetTech.ascx.designer.cs | 27 +++++ MapoDb/DS_SheetTech.Designer.cs | 110 +++++++++++------- MapoDb/DS_SheetTech.xsd | 35 +++--- MapoDb/DS_SheetTech.xss | 84 ++++++++++++- 5 files changed, 303 insertions(+), 62 deletions(-) diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx b/MP-TAB/WebUserControls/cmp_sheetTech.ascx index ea786453..240b81dc 100644 --- a/MP-TAB/WebUserControls/cmp_sheetTech.ascx +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx @@ -8,9 +8,112 @@

Scheda Tecnica

- + + + CodGruppo: + +
+ DescGruppo: + +
+ OrdVisual: + +
+ +
+ + CodGruppo: + +
+ DescGruppo: + +
+ OrdVisual: + +
+ +
+ +
+ +
+ + + + + +
Non è stato restituito alcun dato.
+
+ + + + + + + + + + CodGruppo: + +
+ DescGruppo: + +
+ OrdVisual: + +
+ +
+ +
+ +
+ + CodGruppo: + +
+ DescGruppo: + +
+ OrdVisual: + +
+ +
+ + + + + + + + +
+ + + +
+
+
+ + CodGruppo: + +
+ DescGruppo: + +
+ OrdVisual: + +
+ +
+
+ + + + - + @@ -27,9 +130,11 @@ + +
diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs index d4a196a7..680ba7f5 100644 --- a/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs @@ -14,6 +14,24 @@ namespace MoonProTablet.WebUserControls public partial class cmp_sheetTech { + /// + /// Controllo listGroups. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.ListView listGroups; + + /// + /// Controllo odsGroup. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.ObjectDataSource odsGroup; + /// /// Controllo grView. /// @@ -32,6 +50,15 @@ namespace MoonProTablet.WebUserControls /// protected global::System.Web.UI.WebControls.ObjectDataSource ods; + /// + /// Controllo hfCodGruppo. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.HiddenField hfCodGruppo; + /// /// Controllo hfCodArticolo. /// diff --git a/MapoDb/DS_SheetTech.Designer.cs b/MapoDb/DS_SheetTech.Designer.cs index c33b1877..70dcde08 100644 --- a/MapoDb/DS_SheetTech.Designer.cs +++ b/MapoDb/DS_SheetTech.Designer.cs @@ -1680,6 +1680,8 @@ namespace MapoDb { private global::System.Data.DataColumn columnDescGruppo; + private global::System.Data.DataColumn columnOrdVisual; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] public ST_AnagGruppiDataTable() { @@ -1729,6 +1731,14 @@ namespace MapoDb { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn OrdVisualColumn { + get { + return this.columnOrdVisual; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Browsable(false)] @@ -1766,11 +1776,12 @@ namespace MapoDb { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] - public ST_AnagGruppiRow AddST_AnagGruppiRow(string CodGruppo, string DescGruppo) { + public ST_AnagGruppiRow AddST_AnagGruppiRow(string CodGruppo, string DescGruppo, int OrdVisual) { ST_AnagGruppiRow rowST_AnagGruppiRow = ((ST_AnagGruppiRow)(this.NewRow())); object[] columnValuesArray = new object[] { CodGruppo, - DescGruppo}; + DescGruppo, + OrdVisual}; rowST_AnagGruppiRow.ItemArray = columnValuesArray; this.Rows.Add(rowST_AnagGruppiRow); return rowST_AnagGruppiRow; @@ -1802,6 +1813,7 @@ namespace MapoDb { internal void InitVars() { this.columnCodGruppo = base.Columns["CodGruppo"]; this.columnDescGruppo = base.Columns["DescGruppo"]; + this.columnOrdVisual = base.Columns["OrdVisual"]; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -1811,12 +1823,16 @@ namespace MapoDb { base.Columns.Add(this.columnCodGruppo); this.columnDescGruppo = new global::System.Data.DataColumn("DescGruppo", typeof(string), null, global::System.Data.MappingType.Element); base.Columns.Add(this.columnDescGruppo); + this.columnOrdVisual = new global::System.Data.DataColumn("OrdVisual", typeof(int), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnOrdVisual); this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { this.columnCodGruppo}, true)); this.columnCodGruppo.AllowDBNull = false; this.columnCodGruppo.Unique = true; this.columnCodGruppo.MaxLength = 50; + this.columnDescGruppo.AllowDBNull = false; this.columnDescGruppo.MaxLength = 250; + this.columnOrdVisual.AllowDBNull = false; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -3315,12 +3331,7 @@ namespace MapoDb { [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] public string DescGruppo { get { - try { - return ((string)(this[this.tableST_AnagGruppi.DescGruppoColumn])); - } - catch (global::System.InvalidCastException e) { - throw new global::System.Data.StrongTypingException("Il valore della colonna \'DescGruppo\' nella tabella \'ST_AnagGruppi\' è DBNull.", e); - } + return ((string)(this[this.tableST_AnagGruppi.DescGruppoColumn])); } set { this[this.tableST_AnagGruppi.DescGruppoColumn] = value; @@ -3329,14 +3340,13 @@ namespace MapoDb { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] - public bool IsDescGruppoNull() { - return this.IsNull(this.tableST_AnagGruppi.DescGruppoColumn); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] - public void SetDescGruppoNull() { - this[this.tableST_AnagGruppi.DescGruppoColumn] = global::System.Convert.DBNull; + public int OrdVisual { + get { + return ((int)(this[this.tableST_AnagGruppi.OrdVisualColumn])); + } + set { + this[this.tableST_AnagGruppi.OrdVisualColumn] = value; + } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -4438,6 +4448,7 @@ SELECT IdxST, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Require this._commandCollection[1].CommandText = "dbo.stp_ST_AR_getByCodArt"; this._commandCollection[1].CommandType = global::System.Data.CommandType.StoredProcedure; this._commandCollection[1].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@RETURN_VALUE", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.ReturnValue, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[1].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodGruppo", global::System.Data.SqlDbType.NVarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[1].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodArticolo", global::System.Data.SqlDbType.NVarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); } @@ -4469,13 +4480,19 @@ SELECT IdxST, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Require [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] - public virtual DS_SheetTech.ST_ActualRowDataTable getByCodArt(string CodArticolo) { + public virtual DS_SheetTech.ST_ActualRowDataTable getByCodArt(string CodGruppo, string CodArticolo) { this.Adapter.SelectCommand = this.CommandCollection[1]; - if ((CodArticolo == null)) { + if ((CodGruppo == null)) { this.Adapter.SelectCommand.Parameters[1].Value = global::System.DBNull.Value; } else { - this.Adapter.SelectCommand.Parameters[1].Value = ((string)(CodArticolo)); + this.Adapter.SelectCommand.Parameters[1].Value = ((string)(CodGruppo)); + } + if ((CodArticolo == null)) { + this.Adapter.SelectCommand.Parameters[2].Value = global::System.DBNull.Value; + } + else { + this.Adapter.SelectCommand.Parameters[2].Value = ((string)(CodArticolo)); } DS_SheetTech.ST_ActualRowDataTable dataTable = new DS_SheetTech.ST_ActualRowDataTable(); this.Adapter.Fill(dataTable); @@ -5346,34 +5363,36 @@ SELECT DtEvent, IdxODL, IdxST, Num, ValueCurr, CheckOk, DtMod, UserMod FROM ST_C tableMapping.DataSetTable = "ST_AnagGruppi"; tableMapping.ColumnMappings.Add("CodGruppo", "CodGruppo"); tableMapping.ColumnMappings.Add("DescGruppo", "DescGruppo"); + tableMapping.ColumnMappings.Add("OrdVisual", "OrdVisual"); this._adapter.TableMappings.Add(tableMapping); this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); this._adapter.DeleteCommand.Connection = this.Connection; - this._adapter.DeleteCommand.CommandText = "DELETE FROM [dbo].[ST_AnagGruppi] WHERE (([CodGruppo] = @Original_CodGruppo) AND " + - "((@IsNull_DescGruppo = 1 AND [DescGruppo] IS NULL) OR ([DescGruppo] = @Original_" + - "DescGruppo)))"; + this._adapter.DeleteCommand.CommandText = "DELETE FROM [ST_AnagGruppi] WHERE (([CodGruppo] = @Original_CodGruppo) AND ([Desc" + + "Gruppo] = @Original_DescGruppo) AND ([OrdVisual] = @Original_OrdVisual))"; this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); - this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_DescGruppo", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DescGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_OrdVisual", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "OrdVisual", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); this._adapter.InsertCommand.Connection = this.Connection; - this._adapter.InsertCommand.CommandText = "INSERT INTO [dbo].[ST_AnagGruppi] ([CodGruppo], [DescGruppo]) VALUES (@CodGruppo," + - " @DescGruppo);\r\nSELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo" + - " = @CodGruppo)"; + this._adapter.InsertCommand.CommandText = "INSERT INTO [ST_AnagGruppi] ([CodGruppo], [DescGruppo], [OrdVisual]) VALUES (@Cod" + + "Gruppo, @DescGruppo, @OrdVisual);\r\nSELECT CodGruppo, DescGruppo, OrdVisual FROM " + + "ST_AnagGruppi WHERE (CodGruppo = @CodGruppo) ORDER BY OrdVisual"; this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DescGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@OrdVisual", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "OrdVisual", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); this._adapter.UpdateCommand.Connection = this.Connection; - this._adapter.UpdateCommand.CommandText = @"UPDATE [dbo].[ST_AnagGruppi] SET [CodGruppo] = @CodGruppo, [DescGruppo] = @DescGruppo WHERE (([CodGruppo] = @Original_CodGruppo) AND ((@IsNull_DescGruppo = 1 AND [DescGruppo] IS NULL) OR ([DescGruppo] = @Original_DescGruppo))); -SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo)"; + this._adapter.UpdateCommand.CommandText = @"UPDATE [ST_AnagGruppi] SET [CodGruppo] = @CodGruppo, [DescGruppo] = @DescGruppo, [OrdVisual] = @OrdVisual WHERE (([CodGruppo] = @Original_CodGruppo) AND ([DescGruppo] = @Original_DescGruppo) AND ([OrdVisual] = @Original_OrdVisual)); +SELECT CodGruppo, DescGruppo, OrdVisual FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo) ORDER BY OrdVisual"; this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DescGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@OrdVisual", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "OrdVisual", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CodGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CodGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); - this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_DescGruppo", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_DescGruppo", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DescGruppo", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_OrdVisual", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "OrdVisual", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -5389,7 +5408,8 @@ SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo)"; this._commandCollection = new global::System.Data.SqlClient.SqlCommand[1]; this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); this._commandCollection[0].Connection = this.Connection; - this._commandCollection[0].CommandText = "SELECT CodGruppo, DescGruppo FROM dbo.ST_AnagGruppi"; + this._commandCollection[0].CommandText = "SELECT CodGruppo, DescGruppo, OrdVisual\r\nFROM ST_AnagGruppi\r\nOR" + + "DER BY OrdVisual"; this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; } @@ -5450,7 +5470,7 @@ SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo)"; [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] - public virtual int Delete(string Original_CodGruppo, string Original_DescGruppo) { + public virtual int Delete(string Original_CodGruppo, string Original_DescGruppo, int Original_OrdVisual) { if ((Original_CodGruppo == null)) { throw new global::System.ArgumentNullException("Original_CodGruppo"); } @@ -5458,13 +5478,12 @@ SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo)"; this.Adapter.DeleteCommand.Parameters[0].Value = ((string)(Original_CodGruppo)); } if ((Original_DescGruppo == null)) { - this.Adapter.DeleteCommand.Parameters[1].Value = ((object)(1)); - this.Adapter.DeleteCommand.Parameters[2].Value = global::System.DBNull.Value; + throw new global::System.ArgumentNullException("Original_DescGruppo"); } else { - this.Adapter.DeleteCommand.Parameters[1].Value = ((object)(0)); - this.Adapter.DeleteCommand.Parameters[2].Value = ((string)(Original_DescGruppo)); + this.Adapter.DeleteCommand.Parameters[1].Value = ((string)(Original_DescGruppo)); } + this.Adapter.DeleteCommand.Parameters[2].Value = ((int)(Original_OrdVisual)); global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) != global::System.Data.ConnectionState.Open)) { @@ -5485,7 +5504,7 @@ SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo)"; [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] - public virtual int Insert(string CodGruppo, string DescGruppo) { + public virtual int Insert(string CodGruppo, string DescGruppo, int OrdVisual) { if ((CodGruppo == null)) { throw new global::System.ArgumentNullException("CodGruppo"); } @@ -5493,11 +5512,12 @@ SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo)"; this.Adapter.InsertCommand.Parameters[0].Value = ((string)(CodGruppo)); } if ((DescGruppo == null)) { - this.Adapter.InsertCommand.Parameters[1].Value = global::System.DBNull.Value; + throw new global::System.ArgumentNullException("DescGruppo"); } else { this.Adapter.InsertCommand.Parameters[1].Value = ((string)(DescGruppo)); } + this.Adapter.InsertCommand.Parameters[2].Value = ((int)(OrdVisual)); global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) != global::System.Data.ConnectionState.Open)) { @@ -5518,7 +5538,7 @@ SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo)"; [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] - public virtual int Update(string CodGruppo, string DescGruppo, string Original_CodGruppo, string Original_DescGruppo) { + public virtual int Update(string CodGruppo, string DescGruppo, int OrdVisual, string Original_CodGruppo, string Original_DescGruppo, int Original_OrdVisual) { if ((CodGruppo == null)) { throw new global::System.ArgumentNullException("CodGruppo"); } @@ -5526,25 +5546,25 @@ SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo)"; this.Adapter.UpdateCommand.Parameters[0].Value = ((string)(CodGruppo)); } if ((DescGruppo == null)) { - this.Adapter.UpdateCommand.Parameters[1].Value = global::System.DBNull.Value; + throw new global::System.ArgumentNullException("DescGruppo"); } else { this.Adapter.UpdateCommand.Parameters[1].Value = ((string)(DescGruppo)); } + this.Adapter.UpdateCommand.Parameters[2].Value = ((int)(OrdVisual)); if ((Original_CodGruppo == null)) { throw new global::System.ArgumentNullException("Original_CodGruppo"); } else { - this.Adapter.UpdateCommand.Parameters[2].Value = ((string)(Original_CodGruppo)); + this.Adapter.UpdateCommand.Parameters[3].Value = ((string)(Original_CodGruppo)); } if ((Original_DescGruppo == null)) { - this.Adapter.UpdateCommand.Parameters[3].Value = ((object)(1)); - this.Adapter.UpdateCommand.Parameters[4].Value = global::System.DBNull.Value; + throw new global::System.ArgumentNullException("Original_DescGruppo"); } else { - this.Adapter.UpdateCommand.Parameters[3].Value = ((object)(0)); this.Adapter.UpdateCommand.Parameters[4].Value = ((string)(Original_DescGruppo)); } + this.Adapter.UpdateCommand.Parameters[5].Value = ((int)(Original_OrdVisual)); global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) != global::System.Data.ConnectionState.Open)) { @@ -5565,8 +5585,8 @@ SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo)"; [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] - public virtual int Update(string DescGruppo, string Original_CodGruppo, string Original_DescGruppo) { - return this.Update(Original_CodGruppo, DescGruppo, Original_CodGruppo, Original_DescGruppo); + public virtual int Update(string DescGruppo, int OrdVisual, string Original_CodGruppo, string Original_DescGruppo, int Original_OrdVisual) { + return this.Update(Original_CodGruppo, DescGruppo, OrdVisual, Original_CodGruppo, Original_DescGruppo, Original_OrdVisual); } } diff --git a/MapoDb/DS_SheetTech.xsd b/MapoDb/DS_SheetTech.xsd index f470d396..1ae8206d 100644 --- a/MapoDb/DS_SheetTech.xsd +++ b/MapoDb/DS_SheetTech.xsd @@ -4,7 +4,7 @@ - + @@ -168,6 +168,7 @@ SELECT IdxST, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Require dbo.stp_ST_AR_getByCodArt + @@ -258,40 +259,44 @@ SELECT DtEvent, IdxODL, IdxST, Num, ValueCurr, CheckOk, DtMod, UserMod FROM ST_C - DELETE FROM [dbo].[ST_AnagGruppi] WHERE (([CodGruppo] = @Original_CodGruppo) AND ((@IsNull_DescGruppo = 1 AND [DescGruppo] IS NULL) OR ([DescGruppo] = @Original_DescGruppo))) + DELETE FROM [ST_AnagGruppi] WHERE (([CodGruppo] = @Original_CodGruppo) AND ([DescGruppo] = @Original_DescGruppo) AND ([OrdVisual] = @Original_OrdVisual)) - - + + - INSERT INTO [dbo].[ST_AnagGruppi] ([CodGruppo], [DescGruppo]) VALUES (@CodGruppo, @DescGruppo); -SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo) + INSERT INTO [ST_AnagGruppi] ([CodGruppo], [DescGruppo], [OrdVisual]) VALUES (@CodGruppo, @DescGruppo, @OrdVisual); +SELECT CodGruppo, DescGruppo, OrdVisual FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo) ORDER BY OrdVisual - + + - SELECT CodGruppo, DescGruppo FROM dbo.ST_AnagGruppi + SELECT CodGruppo, DescGruppo, OrdVisual +FROM ST_AnagGruppi +ORDER BY OrdVisual - UPDATE [dbo].[ST_AnagGruppi] SET [CodGruppo] = @CodGruppo, [DescGruppo] = @DescGruppo WHERE (([CodGruppo] = @Original_CodGruppo) AND ((@IsNull_DescGruppo = 1 AND [DescGruppo] IS NULL) OR ([DescGruppo] = @Original_DescGruppo))); -SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo) + UPDATE [ST_AnagGruppi] SET [CodGruppo] = @CodGruppo, [DescGruppo] = @DescGruppo, [OrdVisual] = @OrdVisual WHERE (([CodGruppo] = @Original_CodGruppo) AND ([DescGruppo] = @Original_DescGruppo) AND ([OrdVisual] = @Original_OrdVisual)); +SELECT CodGruppo, DescGruppo, OrdVisual FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo) ORDER BY OrdVisual - + + - - + + @@ -300,6 +305,7 @@ SELECT CodGruppo, DescGruppo FROM ST_AnagGruppi WHERE (CodGruppo = @CodGruppo) + @@ -633,13 +639,14 @@ SELECT CodTempl, Label, Oggetto, Num, CodGruppo, CodTipo, Value, CheckType, Requ - + + diff --git a/MapoDb/DS_SheetTech.xss b/MapoDb/DS_SheetTech.xss index 5f282702..52e8edf7 100644 --- a/MapoDb/DS_SheetTech.xss +++ b/MapoDb/DS_SheetTech.xss @@ -1 +1,83 @@ - \ No newline at end of file + + + + + + + + + + + + + + + + + 455 + 689 + + + 455 + 789 + + + + + + + 727 + 562 + + + 612 + 562 + + + + + + + 1196 + 329 + + + 1196 + 426 + + + + + + + 991 + 335 + + + 991 + 443 + + + 999 + 443 + + + + + + + 945 + 572 + + + 999 + 572 + + + + + \ No newline at end of file From e5f50e6d620ad97f8badf28d89e6a989a5c74bdd Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 8 Jul 2020 20:49:51 +0200 Subject: [PATCH 04/18] Continuo integrazioen dettaglio TechSheet --- MP-TAB/MP-TAB.csproj | 16 ++- MP-TAB/WebUserControls/cmp_ST_detail.ascx | 29 +++++ MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs | 40 ++++++ .../cmp_ST_detail.ascx.designer.cs | 53 ++++++++ MP-TAB/WebUserControls/cmp_sheetTech.ascx | 120 +++--------------- .../cmp_sheetTech.ascx.designer.cs | 40 +----- 6 files changed, 155 insertions(+), 143 deletions(-) create mode 100644 MP-TAB/WebUserControls/cmp_ST_detail.ascx create mode 100644 MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs create mode 100644 MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs diff --git a/MP-TAB/MP-TAB.csproj b/MP-TAB/MP-TAB.csproj index 5762a80b..59ba9ee8 100644 --- a/MP-TAB/MP-TAB.csproj +++ b/MP-TAB/MP-TAB.csproj @@ -21,11 +21,9 @@ 4.0 - 44384 - - - - + 44328 + enabled + disabled @@ -660,6 +658,7 @@ + @@ -944,6 +943,13 @@ cmp_sheetTech.ascx + + cmp_ST_detail.ascx + ASPXCodeBehind + + + cmp_ST_detail.ascx + mod_checkHttps.ascx ASPXCodeBehind diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx b/MP-TAB/WebUserControls/cmp_ST_detail.ascx new file mode 100644 index 00000000..01f29316 --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx @@ -0,0 +1,29 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_ST_detail.ascx.cs" Inherits="MoonProTablet.WebUserControls.cmp_ST_detail" %> + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs new file mode 100644 index 00000000..08ee2621 --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs @@ -0,0 +1,40 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace MoonProTablet.WebUserControls +{ + public partial class cmp_ST_detail : System.Web.UI.UserControl + { + protected void Page_Load(object sender, EventArgs e) + { + + } + + public string CodArticolo + { + get + { + return hfCodArticolo.Value.Trim(); + } + set + { + hfCodArticolo.Value = value.Trim(); + } + } + public string CodGruppo + { + get + { + return hfCodGruppo.Value.Trim(); + } + set + { + hfCodGruppo.Value = value.Trim(); + } + } + } +} \ No newline at end of file diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs new file mode 100644 index 00000000..c41283e0 --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs @@ -0,0 +1,53 @@ +//------------------------------------------------------------------------------ +// +// Codice generato da uno strumento. +// +// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se +// il codice viene rigenerato. +// +//------------------------------------------------------------------------------ + +namespace MoonProTablet.WebUserControls +{ + + + public partial class cmp_ST_detail + { + + /// + /// Controllo grView. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.GridView grView; + + /// + /// Controllo ods. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.ObjectDataSource ods; + + /// + /// Controllo hfCodGruppo. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.HiddenField hfCodGruppo; + + /// + /// Controllo hfCodArticolo. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.HiddenField hfCodArticolo; + } +} diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx b/MP-TAB/WebUserControls/cmp_sheetTech.ascx index 240b81dc..a0e28b6c 100644 --- a/MP-TAB/WebUserControls/cmp_sheetTech.ascx +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx @@ -1,4 +1,6 @@ <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_sheetTech.ascx.cs" Inherits="MoonProTablet.WebUserControls.cmp_sheetTech" %> +<%@ Register Src="~/WebUserControls/cmp_ST_detail.ascx" TagPrefix="uc1" TagName="cmp_ST_detail" %> + @@ -8,110 +10,28 @@

Scheda Tecnica

- - - CodGruppo: +
+ + +
+ CodGruppo: -
- DescGruppo: +
+ DescGruppo: -
- OrdVisual: +
+ OrdVisual: -
- - - - CodGruppo: - -
- DescGruppo: - -
- OrdVisual: - -
- -
- -
- -
- - - - - -
Non è stato restituito alcun dato.
-
- - - - - - - - - - CodGruppo: - -
- DescGruppo: - -
- OrdVisual: - -
- -
- -
- -
- - CodGruppo: - -
- DescGruppo: - -
- OrdVisual: - -
- -
- - - - - - - - -
- - - -
-
-
- - CodGruppo: - -
- DescGruppo: - -
- OrdVisual: - -
- -
- - +
+ +
+
+
+
+
- + <%-- @@ -135,6 +55,6 @@ - + --%>
diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs index 680ba7f5..9e590931 100644 --- a/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs @@ -15,13 +15,13 @@ namespace MoonProTablet.WebUserControls { /// - /// Controllo listGroups. + /// Controllo repGroup. /// /// /// Campo generato automaticamente. /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// - protected global::System.Web.UI.WebControls.ListView listGroups; + protected global::System.Web.UI.WebControls.Repeater repGroup; /// /// Controllo odsGroup. @@ -31,41 +31,5 @@ namespace MoonProTablet.WebUserControls /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.ObjectDataSource odsGroup; - - /// - /// Controllo grView. - /// - /// - /// Campo generato automaticamente. - /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. - /// - protected global::System.Web.UI.WebControls.GridView grView; - - /// - /// Controllo ods. - /// - /// - /// Campo generato automaticamente. - /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. - /// - protected global::System.Web.UI.WebControls.ObjectDataSource ods; - - /// - /// Controllo hfCodGruppo. - /// - /// - /// Campo generato automaticamente. - /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. - /// - protected global::System.Web.UI.WebControls.HiddenField hfCodGruppo; - - /// - /// Controllo hfCodArticolo. - /// - /// - /// Campo generato automaticamente. - /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. - /// - protected global::System.Web.UI.WebControls.HiddenField hfCodArticolo; } } From 4cfcb4a7291d8b08934773ae398eed661001ce5a Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 8 Jul 2020 20:50:08 +0200 Subject: [PATCH 05/18] inizio update versione --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 715c92e2..28cf4045 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -12,7 +12,7 @@ pipeline { steps { /* calcolo numero versione... diverso x branch MASTER/DEVELOP */ script { - withEnv(['NEXT_BUILD_NUMBER=1292']) { + withEnv(['NEXT_BUILD_NUMBER=1293']) { // env.versionNumber = VersionNumber(versionNumberString : '6.9.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true) env.versionNumber = VersionNumber(versionNumberString : '6.9.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}') env.APP_NAME = 'MAPO' From 8392416cec2081f836402d7b0f20a6ce7596ea2d Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 8 Jul 2020 20:59:57 +0200 Subject: [PATCH 06/18] COmpletato aggancio dati scheda tecnica --- MP-TAB/SheetTech.aspx.cs | 36 +- MP-TAB/WebUserControls/cmp_ST_detail.ascx | 4 +- MP-TAB/WebUserControls/cmp_sheetTech.ascx | 31 +- MP-TAB/WebUserControls/cmp_sheetTech.ascx.cs | 12 + .../cmp_sheetTech.ascx.designer.cs | 9 + .../WebUserControls/mod_dettMacchina.ascx.cs | 394 +++++++++--------- 6 files changed, 258 insertions(+), 228 deletions(-) diff --git a/MP-TAB/SheetTech.aspx.cs b/MP-TAB/SheetTech.aspx.cs index 4690595e..0368e206 100644 --- a/MP-TAB/SheetTech.aspx.cs +++ b/MP-TAB/SheetTech.aspx.cs @@ -1,4 +1,6 @@ -using System; +using MapoDb; +using SteamWare; +using System; using System.Collections.Generic; using System.Linq; using System.Web; @@ -9,9 +11,41 @@ namespace MoonProTablet { public partial class SheetTech : System.Web.UI.Page { + /// + /// Oggetto datalayer specifico + /// + DataLayer DataLayerObj = new DataLayer(); protected void Page_Load(object sender, EventArgs e) + { + if(!Page.IsPostBack) + { + setArticolo(); + } + } + /// + /// idxMacchina + /// + public string idxMacchina + { + get + { + return memLayer.ML.StringSessionObj("idxMacchina"); + } + set + { + memLayer.ML.setSessionVal("idxMacchina", value); + } + } + /// + /// Imposta articolo x dettaglio dato ODL + /// + private void setArticolo() { + + // leggo riga... + DS_ProdTempi.MappaStatoExplRow rigaDati = DataLayerObj.taMSE.getByIdxMacchina(idxMacchina)[0]; + cmp_sheetTech.CodArticolo = rigaDati.CodArticolo; } } } \ No newline at end of file diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx b/MP-TAB/WebUserControls/cmp_ST_detail.ascx index 01f29316..2479045b 100644 --- a/MP-TAB/WebUserControls/cmp_ST_detail.ascx +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx @@ -25,5 +25,5 @@ - - + + diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx b/MP-TAB/WebUserControls/cmp_sheetTech.ascx index a0e28b6c..a92ba622 100644 --- a/MP-TAB/WebUserControls/cmp_sheetTech.ascx +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx @@ -23,38 +23,13 @@ OrdVisual:
- +
- - - <%-- - - - - - - - - - - - - - - - - - - - - - - - - --%> + + diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx.cs b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.cs index c419eb5f..a88fe8ac 100644 --- a/MP-TAB/WebUserControls/cmp_sheetTech.ascx.cs +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.cs @@ -13,5 +13,17 @@ namespace MoonProTablet.WebUserControls { } + + public string CodArticolo + { + get + { + return hfCodArticolo.Value.Trim(); + } + set + { + hfCodArticolo.Value = value.Trim(); + } + } } } \ No newline at end of file diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs index 9e590931..7b9ab26a 100644 --- a/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx.designer.cs @@ -31,5 +31,14 @@ namespace MoonProTablet.WebUserControls /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.ObjectDataSource odsGroup; + + /// + /// Controllo hfCodArticolo. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.HiddenField hfCodArticolo; } } diff --git a/MP-TAB/WebUserControls/mod_dettMacchina.ascx.cs b/MP-TAB/WebUserControls/mod_dettMacchina.ascx.cs index adfeded0..045a3307 100644 --- a/MP-TAB/WebUserControls/mod_dettMacchina.ascx.cs +++ b/MP-TAB/WebUserControls/mod_dettMacchina.ascx.cs @@ -5,216 +5,216 @@ using System.Web.UI; namespace MoonProTablet.WebUserControls { - public partial class mod_dettMacchina : System.Web.UI.UserControl - { - /// - /// Oggetto datalayer specifico - /// - DataLayer DataLayerObj = new DataLayer(); - /// - /// fatto refresh --> chiedo remove modal (se c'è) - /// - public event EventHandler eh_reqRemoveModal; - /// - /// idx macchina selezionata - /// - public string idxMacchina + public partial class mod_dettMacchina : System.Web.UI.UserControl { - get - { - return memLayer.ML.StringSessionObj("IdxMacchina"); - } - set - { - memLayer.ML.setSessionVal("IdxMacchina", value); - } - } + /// + /// Oggetto datalayer specifico + /// + DataLayer DataLayerObj = new DataLayer(); + /// + /// fatto refresh --> chiedo remove modal (se c'è) + /// + public event EventHandler eh_reqRemoveModal; + /// + /// idx macchina selezionata + /// + public string idxMacchina + { + get + { + return memLayer.ML.StringSessionObj("IdxMacchina"); + } + set + { + memLayer.ML.setSessionVal("IdxMacchina", value); + } + } - public bool showDisegno(object _codArticolo) - { - // default è ND... - bool answ = false; - // SE abilitata gestione controlli... - if (memLayer.ML.cdvb("enableDisegno")) - { - // recupero da anagrafica articoli... - try + public bool showDisegno(object _codArticolo) { - DS_ProdTempi.AnagArticoliRow riga = selData.mng.rigaArt(_codArticolo.ToString()); - if (riga != null) - { - answ = (riga.Disegno != ""); - } - else - { - logger.lg.scriviLog(string.Format("Attenzione! nessuna informazione trovata per l'articolo {0}", _codArticolo), tipoLog.WARNING); - } + // default è ND... + bool answ = false; + // SE abilitata gestione controlli... + if (memLayer.ML.cdvb("enableDisegno")) + { + // recupero da anagrafica articoli... + try + { + DS_ProdTempi.AnagArticoliRow riga = selData.mng.rigaArt(_codArticolo.ToString()); + if (riga != null) + { + answ = (riga.Disegno != ""); + } + else + { + logger.lg.scriviLog(string.Format("Attenzione! nessuna informazione trovata per l'articolo {0}", _codArticolo), tipoLog.WARNING); + } + } + catch (Exception exc) + { + logger.lg.scriviLog(string.Format("Errore in ricostruzione URL disegno:{0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION); + } + } + return answ; } - catch (Exception exc) + /// + /// caricamento pagina + /// + /// + /// + protected void Page_Load(object sender, EventArgs e) { - logger.lg.scriviLog(string.Format("Errore in ricostruzione URL disegno:{0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION); + if (!Page.IsPostBack) + { + dmTimer.Interval = memLayer.ML.CRI("dtTimerInt"); + } + // controllo se ho dett macchina altrimenti ritorno a pagina generale... + if (idxMacchina == "") + { + Response.Redirect("~/MappaStato.aspx"); + } } - } - return answ; - } - /// - /// caricamento pagina - /// - /// - /// - protected void Page_Load(object sender, EventArgs e) - { - if (!Page.IsPostBack) - { - dmTimer.Interval = memLayer.ML.CRI("dtTimerInt"); - } - // controllo se ho dett macchina altrimenti ritorno a pagina generale... - if (idxMacchina == "") - { - Response.Redirect("~/MappaStato.aspx"); - } - } - /// - /// url completo immagine - /// - /// - /// - public string ImgUrl(object url) - { - if (url.ToString() == "") - { - url = "empty.png"; - } - return string.Format("./images/macchine/{0}", url); - } - /// - /// fomratta durata in minuti/ore/gg a seconda del totale... - /// - /// - /// - public string formatDurata(object min) - { - return utility.formatDurata(min); - } - /// - /// fa update del controllo - /// - public void doUpdate() - { - ods.DataBind(); - repLI.DataBind(); - } - /// - /// timeout scaduto - /// - /// - /// - protected void Timer1_Tick(object sender, EventArgs e) - { - // sollevo evento! - if (eh_reqRemoveModal != null) - { - eh_reqRemoveModal(this, new EventArgs()); - } - // update - doUpdate(); - //ScriptManager.RegisterStartupScript(Page, GetType(), "temp", "", false); - ScriptManager.RegisterStartupScript(Page, GetType(), "temp", "", false); - } - /// - /// Determina se il refresh (via timer) sia o meno abilitato - /// - public bool refreshEnabled - { - get - { - return dmTimer.Enabled; - } - set - { - dmTimer.Enabled = value; - } - } - /// - /// Determina se dato lo stato dell'impianto si debba mostrare btn fermata perché - /// - fermo > xx min (da web.config, es 20') - /// - impianto fermo (controllando idxStato: priorità > 1) - /// - public bool showInsFermata(object _idxStato, object _durata) - { - int idxStato = 0; - int durata = 0; - int durMinWarning = memLayer.ML.CRI("durMinWarning"); - int.TryParse(_idxStato.ToString(), out idxStato); - int.TryParse(_durata.ToString(), out durata); - bool answ = false; - if (durata >= durMinWarning) - { - try + /// + /// url completo immagine + /// + /// + /// + public string ImgUrl(object url) { - // in questo caso controllo idxStato... e recupero priorità se > 1 --> richiesta qualifica - answ = (DataLayerObj.taAnagStati.GetByIdx(idxStato)[0].Priorita > 1); + if (url.ToString() == "") + { + url = "empty.png"; + } + return string.Format("./images/macchine/{0}", url); + } + /// + /// fomratta durata in minuti/ore/gg a seconda del totale... + /// + /// + /// + public string formatDurata(object min) + { + return utility.formatDurata(min); + } + /// + /// fa update del controllo + /// + public void doUpdate() + { + ods.DataBind(); + repLI.DataBind(); + } + /// + /// timeout scaduto + /// + /// + /// + protected void Timer1_Tick(object sender, EventArgs e) + { + // sollevo evento! + if (eh_reqRemoveModal != null) + { + eh_reqRemoveModal(this, new EventArgs()); + } + // update + doUpdate(); + //ScriptManager.RegisterStartupScript(Page, GetType(), "temp", "", false); + ScriptManager.RegisterStartupScript(Page, GetType(), "temp", "", false); + } + /// + /// Determina se il refresh (via timer) sia o meno abilitato + /// + public bool refreshEnabled + { + get + { + return dmTimer.Enabled; + } + set + { + dmTimer.Enabled = value; + } + } + /// + /// Determina se dato lo stato dell'impianto si debba mostrare btn fermata perché + /// - fermo > xx min (da web.config, es 20') + /// - impianto fermo (controllando idxStato: priorità > 1) + /// + public bool showInsFermata(object _idxStato, object _durata) + { + int idxStato = 0; + int durata = 0; + int durMinWarning = memLayer.ML.CRI("durMinWarning"); + int.TryParse(_idxStato.ToString(), out idxStato); + int.TryParse(_durata.ToString(), out durata); + bool answ = false; + if (durata >= durMinWarning) + { + try + { + // in questo caso controllo idxStato... e recupero priorità se > 1 --> richiesta qualifica + answ = (DataLayerObj.taAnagStati.GetByIdx(idxStato)[0].Priorita > 1); + } + catch + { } + } + return answ; } - catch - { } - } - return answ; - } - /// - /// Determina se sia necessario richiedere un controllo per la macchina secondo condizione - /// - cerco ultimo controllo fatto - /// - se è più lontano di "intervalloControlli" --> attivo! - /// - public bool showReqControl(object IdxMacchina) - { - bool answ = false; - // SE abilitata gestione controlli... - if (memLayer.ML.cdvb("enableControlli")) - { - int intervalloControlli = memLayer.ML.CRI("intervalloControlli"); - // cerco ultimo controllo fatto - DateTime lastControl = DateTime.Now.AddYears(-1); - try + /// + /// Determina se sia necessario richiedere un controllo per la macchina secondo condizione + /// - cerco ultimo controllo fatto + /// - se è più lontano di "intervalloControlli" --> attivo! + /// + public bool showReqControl(object IdxMacchina) { - var tab = DataLayerObj.taRC.getLast(idxMacchina); - if (tab.Count > 0) - { - lastControl = tab[0].DataOra; - } + bool answ = false; + // SE abilitata gestione controlli... + if (memLayer.ML.cdvb("enableControlli")) + { + int intervalloControlli = memLayer.ML.CRI("intervalloControlli"); + // cerco ultimo controllo fatto + DateTime lastControl = DateTime.Now.AddYears(-1); + try + { + var tab = DataLayerObj.taRC.getLast(idxMacchina); + if (tab.Count > 0) + { + lastControl = tab[0].DataOra; + } + } + catch + { } + if (Math.Abs(DateTime.Now.Subtract(lastControl).TotalMinutes) >= intervalloControlli) + { + answ = true; + } + } + return answ; } - catch - { } - if (Math.Abs(DateTime.Now.Subtract(lastControl).TotalMinutes) >= intervalloControlli) + public string urlDisegno(object _codArticolo) { - answ = true; - } - } - return answ; - } - public string urlDisegno(object _codArticolo) - { - // default è ND... - string outVal = "~/Files/Disegni/ND.pdf"; - // recupero da anagrafica articoli... - try - { + // default è ND... + string outVal = "~/Files/Disegni/ND.pdf"; + // recupero da anagrafica articoli... + try + { - DS_ProdTempi.AnagArticoliRow riga = selData.mng.rigaArt(_codArticolo.ToString()); - if (riga != null) - { - outVal = string.Format("~/Files/Disegni/{0}.pdf", riga.Disegno); + DS_ProdTempi.AnagArticoliRow riga = selData.mng.rigaArt(_codArticolo.ToString()); + if (riga != null) + { + outVal = string.Format("~/Files/Disegni/{0}.pdf", riga.Disegno); + } + else + { + logger.lg.scriviLog(string.Format("Attenzione! nessuna informazione trovata per l'articolo {0}", _codArticolo), tipoLog.WARNING); + } + } + catch (Exception exc) + { + logger.lg.scriviLog(string.Format("Errore in ricostruzione URL disegno:{0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION); + } + return outVal; } - else - { - logger.lg.scriviLog(string.Format("Attenzione! nessuna informazione trovata per l'articolo {0}", _codArticolo), tipoLog.WARNING); - } - } - catch (Exception exc) - { - logger.lg.scriviLog(string.Format("Errore in ricostruzione URL disegno:{0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION); - } - return outVal; } - } } \ No newline at end of file From 826e615a16796aff11a4fdfea1e7831e4549ae9d Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 8 Jul 2020 21:32:08 +0200 Subject: [PATCH 07/18] Aggiunta pagina x update cache (vocabolario & co) --- MP-TAB/MP-TAB.csproj | 11 +++++++++++ MP-TAB/Update.aspx | 5 +++++ MP-TAB/Update.aspx.cs | 21 +++++++++++++++++++++ MP-TAB/Update.aspx.designer.cs | 17 +++++++++++++++++ 4 files changed, 54 insertions(+) create mode 100644 MP-TAB/Update.aspx create mode 100644 MP-TAB/Update.aspx.cs create mode 100644 MP-TAB/Update.aspx.designer.cs diff --git a/MP-TAB/MP-TAB.csproj b/MP-TAB/MP-TAB.csproj index 59ba9ee8..f60ae373 100644 --- a/MP-TAB/MP-TAB.csproj +++ b/MP-TAB/MP-TAB.csproj @@ -642,6 +642,7 @@ + @@ -886,6 +887,13 @@ Turni.aspx + + Update.aspx + ASPXCodeBehind + + + Update.aspx + User.aspx ASPXCodeBehind @@ -1167,6 +1175,9 @@ mod_turni.ascx + + ASPXCodeBehind + windowSize.ashx diff --git a/MP-TAB/Update.aspx b/MP-TAB/Update.aspx new file mode 100644 index 00000000..5b11c980 --- /dev/null +++ b/MP-TAB/Update.aspx @@ -0,0 +1,5 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/WebMasterPages/Bootstrap.Master" AutoEventWireup="true" CodeBehind="Update.aspx.cs" Inherits="MoonProTablet.Update" %> + + + + diff --git a/MP-TAB/Update.aspx.cs b/MP-TAB/Update.aspx.cs new file mode 100644 index 00000000..5d3ea904 --- /dev/null +++ b/MP-TAB/Update.aspx.cs @@ -0,0 +1,21 @@ +using SteamWare; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace MoonProTablet +{ + public partial class Update : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // update vocabolario... + memLayer.ML.flushRegisteredCache(); + // rimando a pag precedente + Response.Redirect("MappaStato"); + } + } +} \ No newline at end of file diff --git a/MP-TAB/Update.aspx.designer.cs b/MP-TAB/Update.aspx.designer.cs new file mode 100644 index 00000000..980c9f0d --- /dev/null +++ b/MP-TAB/Update.aspx.designer.cs @@ -0,0 +1,17 @@ +//------------------------------------------------------------------------------ +// +// Codice generato da uno strumento. +// +// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se +// il codice viene rigenerato. +// +//------------------------------------------------------------------------------ + +namespace MoonProTablet +{ + + + public partial class Update + { + } +} From 95c80f282a53ce9769eef1a8077d001d2d48387f Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 8 Jul 2020 21:32:19 +0200 Subject: [PATCH 08/18] controllo base x metodi comuni --- MP-TAB/WebUserControls/MpTabControl.cs | 36 ++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 MP-TAB/WebUserControls/MpTabControl.cs diff --git a/MP-TAB/WebUserControls/MpTabControl.cs b/MP-TAB/WebUserControls/MpTabControl.cs new file mode 100644 index 00000000..74fa8cbb --- /dev/null +++ b/MP-TAB/WebUserControls/MpTabControl.cs @@ -0,0 +1,36 @@ +using SteamWare; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; + +namespace MoonProTablet.WebUserControls +{ + public class MpTabControl : System.Web.UI.UserControl + { + /// + /// idxMacchina + /// + public string idxMacchina + { + get + { + return memLayer.ML.StringSessionObj("idxMacchina"); + } + set + { + memLayer.ML.setSessionVal("idxMacchina", value); + } + } + /// + /// effettua traduzione del lemma + /// + /// + /// + public string traduci(object _lemma) + { + _lemma = _lemma == null ? "":_lemma; + return user_std.UtSn.Traduci(_lemma.ToString()); + } + } +} \ No newline at end of file From 0d6390c54e07e9bb003301de834f5daf9eabc8d0 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 8 Jul 2020 21:34:01 +0200 Subject: [PATCH 09/18] Bozza grafica pagina TechSheet (no input) --- MP-TAB/SheetTech.aspx | 2 +- MP-TAB/WebUserControls/cmp_ST_detail.ascx | 23 ++++++++++---------- MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs | 2 +- MP-TAB/WebUserControls/cmp_sheetTech.ascx | 21 ++++++++---------- 4 files changed, 23 insertions(+), 25 deletions(-) diff --git a/MP-TAB/SheetTech.aspx b/MP-TAB/SheetTech.aspx index 422afc44..66ca8777 100644 --- a/MP-TAB/SheetTech.aspx +++ b/MP-TAB/SheetTech.aspx @@ -9,7 +9,7 @@
-
+
diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx b/MP-TAB/WebUserControls/cmp_ST_detail.ascx index 2479045b..d9f45e6d 100644 --- a/MP-TAB/WebUserControls/cmp_ST_detail.ascx +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx @@ -2,21 +2,22 @@ - + - - - - - - + + + + + + <%-- + --%> + <%----%> - + <%----%> - - - + <%----%> + <%----%> diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs index 08ee2621..8fadb586 100644 --- a/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs @@ -7,7 +7,7 @@ using System.Web.UI.WebControls; namespace MoonProTablet.WebUserControls { - public partial class cmp_ST_detail : System.Web.UI.UserControl + public partial class cmp_ST_detail : MpTabControl { protected void Page_Load(object sender, EventArgs e) { diff --git a/MP-TAB/WebUserControls/cmp_sheetTech.ascx b/MP-TAB/WebUserControls/cmp_sheetTech.ascx index a92ba622..bdde0fab 100644 --- a/MP-TAB/WebUserControls/cmp_sheetTech.ascx +++ b/MP-TAB/WebUserControls/cmp_sheetTech.ascx @@ -9,27 +9,24 @@

Scheda Tecnica

-
+
-
- CodGruppo: - -
- DescGruppo: - -
- OrdVisual: - -
+
+
+
+ +
+
+
- +
From 28e4061a0834dc54788c4d9e02719bf53ec45d10 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 8 Jul 2020 21:37:37 +0200 Subject: [PATCH 10/18] Appunti x completamento funzione --- MP-TAB/WebUserControls/cmp_ST_detail.ascx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx b/MP-TAB/WebUserControls/cmp_ST_detail.ascx index d9f45e6d..26fdd80d 100644 --- a/MP-TAB/WebUserControls/cmp_ST_detail.ascx +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx @@ -20,6 +20,9 @@ <%----%> +rifare con repeater + modulo che traduce oggetto da tipo (testo, input, immagine...)
+completare con interazione campi richiesti!!!
+NB: campi richiesti devono prevedere check con valore in tab specifica istanze ODL From dc700f7c5ff5bea80bd3aab998acf82573023b58 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 8 Jul 2020 21:56:07 +0200 Subject: [PATCH 11/18] Ancora fix grafici (da completare detail...) --- MP-TAB/MP-TAB.csproj | 16 +++++ MP-TAB/WebUserControls/cmp_ST_detail.ascx | 39 +++++++--- .../cmp_ST_detail.ascx.designer.cs | 4 +- MP-TAB/WebUserControls/cmp_ST_objCheck.ascx | 1 + .../WebUserControls/cmp_ST_objCheck.ascx.cs | 17 +++++ .../cmp_ST_objCheck.ascx.designer.cs | 17 +++++ MP-TAB/WebUserControls/cmp_ST_objView.ascx | 16 +++++ MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs | 70 ++++++++++++++++++ .../cmp_ST_objView.ascx.designer.cs | 71 +++++++++++++++++++ 9 files changed, 238 insertions(+), 13 deletions(-) create mode 100644 MP-TAB/WebUserControls/cmp_ST_objCheck.ascx create mode 100644 MP-TAB/WebUserControls/cmp_ST_objCheck.ascx.cs create mode 100644 MP-TAB/WebUserControls/cmp_ST_objCheck.ascx.designer.cs create mode 100644 MP-TAB/WebUserControls/cmp_ST_objView.ascx create mode 100644 MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs create mode 100644 MP-TAB/WebUserControls/cmp_ST_objView.ascx.designer.cs diff --git a/MP-TAB/MP-TAB.csproj b/MP-TAB/MP-TAB.csproj index f60ae373..baec53d9 100644 --- a/MP-TAB/MP-TAB.csproj +++ b/MP-TAB/MP-TAB.csproj @@ -660,6 +660,8 @@ + + @@ -958,6 +960,20 @@ cmp_ST_detail.ascx + + cmp_ST_objCheck.ascx + ASPXCodeBehind + + + cmp_ST_objCheck.ascx + + + cmp_ST_objView.ascx + ASPXCodeBehind + + + cmp_ST_objView.ascx + mod_checkHttps.ascx ASPXCodeBehind diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx b/MP-TAB/WebUserControls/cmp_ST_detail.ascx index 26fdd80d..f5184de8 100644 --- a/MP-TAB/WebUserControls/cmp_ST_detail.ascx +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx @@ -1,28 +1,45 @@ <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_ST_detail.ascx.cs" Inherits="MoonProTablet.WebUserControls.cmp_ST_detail" %> +<%@ Register Src="~/WebUserControls/cmp_ST_objView.ascx" TagPrefix="uc1" TagName="cmp_ST_objView" %> - + +<%-- - <%-- - --%> - <%----%> + + + - <%----%> + - <%----%> - <%----%> + + - -rifare con repeater + modulo che traduce oggetto da tipo (testo, input, immagine...)
-completare con interazione campi richiesti!!!
-NB: campi richiesti devono prevedere check con valore in tab specifica istanze ODL +
--%> + + + +
+ +
+
+ +
+ +
+
+
+ +
+ completare con interazione campi richiesti!!!
+ NB: campi richiesti devono prevedere check con valore in tab specifica istanze ODL +
diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs index c41283e0..51ccc490 100644 --- a/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs @@ -15,13 +15,13 @@ namespace MoonProTablet.WebUserControls { /// - /// Controllo grView. + /// Controllo repDetail. /// /// /// Campo generato automaticamente. /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// - protected global::System.Web.UI.WebControls.GridView grView; + protected global::System.Web.UI.WebControls.Repeater repDetail; /// /// Controllo ods. diff --git a/MP-TAB/WebUserControls/cmp_ST_objCheck.ascx b/MP-TAB/WebUserControls/cmp_ST_objCheck.ascx new file mode 100644 index 00000000..d6d0f539 --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_ST_objCheck.ascx @@ -0,0 +1 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_ST_objCheck.ascx.cs" Inherits="MoonProTablet.WebUserControls.cmp_ST_objCheck" %> diff --git a/MP-TAB/WebUserControls/cmp_ST_objCheck.ascx.cs b/MP-TAB/WebUserControls/cmp_ST_objCheck.ascx.cs new file mode 100644 index 00000000..0cfaaec3 --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_ST_objCheck.ascx.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace MoonProTablet.WebUserControls +{ + public partial class cmp_ST_objCheck : System.Web.UI.UserControl + { + protected void Page_Load(object sender, EventArgs e) + { + + } + } +} \ No newline at end of file diff --git a/MP-TAB/WebUserControls/cmp_ST_objCheck.ascx.designer.cs b/MP-TAB/WebUserControls/cmp_ST_objCheck.ascx.designer.cs new file mode 100644 index 00000000..1ff32f8f --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_ST_objCheck.ascx.designer.cs @@ -0,0 +1,17 @@ +//------------------------------------------------------------------------------ +// +// Codice generato da uno strumento. +// +// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se +// il codice viene rigenerato. +// +//------------------------------------------------------------------------------ + +namespace MoonProTablet.WebUserControls +{ + + + public partial class cmp_ST_objCheck + { + } +} diff --git a/MP-TAB/WebUserControls/cmp_ST_objView.ascx b/MP-TAB/WebUserControls/cmp_ST_objView.ascx new file mode 100644 index 00000000..b60fc713 --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_ST_objView.ascx @@ -0,0 +1,16 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_ST_objView.ascx.cs" Inherits="MoonProTablet.WebUserControls.cmp_ST_objView" %> + + + + +
+
+ <%: hfLabel.Value %> +
+
+ <%: hfValue.Value %> +
+
+
+ +
\ No newline at end of file diff --git a/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs b/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs new file mode 100644 index 00000000..77bc0850 --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs @@ -0,0 +1,70 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace MoonProTablet.WebUserControls +{ + public partial class cmp_ST_objView : MpTabControl + { + public string dataType + { + get + { + return hfType.Value.Trim(); + } + set + { + hfType.Value = value.Trim(); + } + } + public string dataLabel + { + get + { + return hfLabel.Value.Trim(); + } + set + { + hfLabel.Value = value.Trim(); + } + } + public string dataValue + { + get + { + return hfValue.Value.Trim(); + } + set + { + hfValue.Value = value.Trim(); + } + } + protected void Page_Load(object sender, EventArgs e) + { + fixDisplay(); + } + + private void fixDisplay() + { + divImg.Visible = false; + divTxt.Visible = false; + switch (dataType) + { + case "IMG": + divImg.Visible = true; + break; + + case "TXT": + divTxt.Visible = true; + break; + default: + divTxt.Visible = true; + break; + } + } + + } +} \ No newline at end of file diff --git a/MP-TAB/WebUserControls/cmp_ST_objView.ascx.designer.cs b/MP-TAB/WebUserControls/cmp_ST_objView.ascx.designer.cs new file mode 100644 index 00000000..c781b8c7 --- /dev/null +++ b/MP-TAB/WebUserControls/cmp_ST_objView.ascx.designer.cs @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// Codice generato da uno strumento. +// +// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se +// il codice viene rigenerato. +// +//------------------------------------------------------------------------------ + +namespace MoonProTablet.WebUserControls +{ + + + public partial class cmp_ST_objView + { + + /// + /// Controllo hfType. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.HiddenField hfType; + + /// + /// Controllo hfLabel. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.HiddenField hfLabel; + + /// + /// Controllo hfValue. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.HiddenField hfValue; + + /// + /// Controllo divTxt. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.HtmlControls.HtmlGenericControl divTxt; + + /// + /// Controllo divImg. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.HtmlControls.HtmlGenericControl divImg; + + /// + /// Controllo imgData. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.Image imgData; + } +} From 2dc63b83e361a78f40cb5a5f6d73b79592d92b77 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Fri, 10 Jul 2020 08:04:54 +0200 Subject: [PATCH 12/18] Check ODL presente x macchina + basePbj --- MP-TAB/MP-TAB.csproj | 5 +- .../MpTabControl.cs => MpTabPage.cs} | 22 +- MP-TAB/WebUserControls/MpTabUserControl.cs | 64 ++ MP-TAB/WebUserControls/cmp_ST_detail.ascx | 21 +- MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs | 25 +- .../cmp_ST_detail.ascx.designer.cs | 9 + MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs | 2 +- MP-TAB/WebUserControls/mod_confProd.ascx.cs | 957 +++++++++--------- .../WebUserControls/mod_dettMacchina.ascx.cs | 16 +- MP-TAB/fixODL.aspx.cs | 367 ++++--- 10 files changed, 759 insertions(+), 729 deletions(-) rename MP-TAB/{WebUserControls/MpTabControl.cs => MpTabPage.cs} (56%) create mode 100644 MP-TAB/WebUserControls/MpTabUserControl.cs diff --git a/MP-TAB/MP-TAB.csproj b/MP-TAB/MP-TAB.csproj index baec53d9..d30f4c8b 100644 --- a/MP-TAB/MP-TAB.csproj +++ b/MP-TAB/MP-TAB.csproj @@ -804,6 +804,9 @@ MappaStato.aspx + + ASPXCodeBehind + ODL.aspx ASPXCodeBehind @@ -1191,7 +1194,7 @@ mod_turni.ascx - + ASPXCodeBehind diff --git a/MP-TAB/WebUserControls/MpTabControl.cs b/MP-TAB/MpTabPage.cs similarity index 56% rename from MP-TAB/WebUserControls/MpTabControl.cs rename to MP-TAB/MpTabPage.cs index 74fa8cbb..17c8a26b 100644 --- a/MP-TAB/WebUserControls/MpTabControl.cs +++ b/MP-TAB/MpTabPage.cs @@ -4,12 +4,12 @@ using System.Collections.Generic; using System.Linq; using System.Web; -namespace MoonProTablet.WebUserControls +namespace MoonProTablet { - public class MpTabControl : System.Web.UI.UserControl + public class MpTabPage : System.Web.UI.Page { /// - /// idxMacchina + /// idxMacchina corrente /// public string idxMacchina { @@ -23,14 +23,18 @@ namespace MoonProTablet.WebUserControls } } /// - /// effettua traduzione del lemma + /// idxODL corrente /// - /// - /// - public string traduci(object _lemma) + public int idxODL { - _lemma = _lemma == null ? "":_lemma; - return user_std.UtSn.Traduci(_lemma.ToString()); + get + { + return memLayer.ML.IntSessionObj("idxODL"); + } + set + { + memLayer.ML.setSessionVal("idxODL", value); + } } } } \ No newline at end of file diff --git a/MP-TAB/WebUserControls/MpTabUserControl.cs b/MP-TAB/WebUserControls/MpTabUserControl.cs new file mode 100644 index 00000000..8b96b4ba --- /dev/null +++ b/MP-TAB/WebUserControls/MpTabUserControl.cs @@ -0,0 +1,64 @@ +using SteamWare; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; + +namespace MoonProTablet.WebUserControls +{ + public class MpTabUserControl : System.Web.UI.UserControl + { + /// + /// idxMacchina corrente in sessione + /// + public string idxMacchina + { + get + { + return memLayer.ML.StringSessionObj("idxMacchina"); + } + set + { + memLayer.ML.setSessionVal("idxMacchina", value); + } + } + /// + /// Sotto sistema (macchina) selezionato in sessione + /// + public string subMaccSel + { + get + { + return memLayer.ML.StringSessionObj("subMaccSel"); + } + set + { + memLayer.ML.setSessionVal("subMaccSel", value); + } + } + /// + /// idxOdl corrente in sessione + /// + public int idxOdl + { + get + { + return memLayer.ML.IntSessionObj("idxODL"); + } + set + { + memLayer.ML.setSessionVal("idxODL", value); + } + } + /// + /// effettua traduzione del lemma + /// + /// + /// + public string traduci(object _lemma) + { + _lemma = _lemma == null ? "":_lemma; + return user_std.UtSn.Traduci(_lemma.ToString()); + } + } +} \ No newline at end of file diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx b/MP-TAB/WebUserControls/cmp_ST_detail.ascx index f5184de8..3dda2cd5 100644 --- a/MP-TAB/WebUserControls/cmp_ST_detail.ascx +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx @@ -2,26 +2,7 @@ <%@ Register Src="~/WebUserControls/cmp_ST_objView.ascx" TagPrefix="uc1" TagName="cmp_ST_objView" %> - - -<%-- - - - - - - - - - - - - - - - - ---%> + diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs index 8fadb586..e53fdd42 100644 --- a/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.cs @@ -7,11 +7,32 @@ using System.Web.UI.WebControls; namespace MoonProTablet.WebUserControls { - public partial class cmp_ST_detail : MpTabControl + public partial class cmp_ST_detail : MpTabUserControl { protected void Page_Load(object sender, EventArgs e) { - + fixWarning(); + } + /// + /// check ODL presente + /// + private void fixWarning() + { + if (idxMacchina == "") + { + lblWarning.Text = traduci("MancaMacchina"); + lblWarning.Visible = true; + } + else if (idxOdl == 0) + { + lblWarning.Text = traduci("MancaOdl"); + lblWarning.Visible = true; + } + else + { + lblWarning.Text = ""; + lblWarning.Visible = false; + } } public string CodArticolo diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs index 51ccc490..25e22655 100644 --- a/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx.designer.cs @@ -14,6 +14,15 @@ namespace MoonProTablet.WebUserControls public partial class cmp_ST_detail { + /// + /// Controllo lblWarning. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.Label lblWarning; + /// /// Controllo repDetail. /// diff --git a/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs b/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs index 77bc0850..ecea8b7a 100644 --- a/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs +++ b/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs @@ -7,7 +7,7 @@ using System.Web.UI.WebControls; namespace MoonProTablet.WebUserControls { - public partial class cmp_ST_objView : MpTabControl + public partial class cmp_ST_objView : MpTabUserControl { public string dataType { diff --git a/MP-TAB/WebUserControls/mod_confProd.ascx.cs b/MP-TAB/WebUserControls/mod_confProd.ascx.cs index 67f161d7..377b494f 100644 --- a/MP-TAB/WebUserControls/mod_confProd.ascx.cs +++ b/MP-TAB/WebUserControls/mod_confProd.ascx.cs @@ -5,517 +5,492 @@ using System.Web.UI; namespace MoonProTablet.WebUserControls { - public partial class mod_confProd : System.Web.UI.UserControl - { - /// - /// indica conferma con rettifica (evento 121) - /// - protected bool confRett = memLayer.ML.CRB("confRett"); - /// - /// Oggetto datalayer specifico - /// - DataLayer DataLayerObj = new DataLayer(); - /// - /// registrato nuovo valore - /// - public event EventHandler eh_inserting; - /// - /// registrato nuovo valore - /// - public event EventHandler eh_newVal; - /// - /// registrato nuovo valore - /// - public event EventHandler eh_reset; - /// - /// Data-Ora ultimo update valori produzione - /// - public DateTime dtReqUpdate + public partial class mod_confProd : MpTabUserControl { - get - { - DateTime answ = DateTime.Now; - DateTime.TryParse(memLayer.ML.StringSessionObj("dtReqUpdate"), out answ); - return answ; - } - set - { - memLayer.ML.setSessionVal("dtReqUpdate", value); - } - } - /// - /// Dati produzioen rilevati - /// - public DS_ProdTempi.StatoProdRow datiProdAct; - /// - /// caricamento pagina - /// - /// - /// - protected void Page_Load(object sender, EventArgs e) - { - if (!Page.IsPostBack) - { - checkAll(); - if (isMulti) + /// + /// indica conferma con rettifica (evento 121) + /// + protected bool confRett = memLayer.ML.CRB("confRett"); + /// + /// Oggetto datalayer specifico + /// + DataLayer DataLayerObj = new DataLayer(); + /// + /// registrato nuovo valore + /// + public event EventHandler eh_inserting; + /// + /// registrato nuovo valore + /// + public event EventHandler eh_newVal; + /// + /// registrato nuovo valore + /// + public event EventHandler eh_reset; + /// + /// Data-Ora ultimo update valori produzione + /// + public DateTime dtReqUpdate { - // sollevo evento! - if (eh_reset != null) - { - eh_reset(this, new EventArgs()); - } + get + { + DateTime answ = DateTime.Now; + DateTime.TryParse(memLayer.ML.StringSessionObj("dtReqUpdate"), out answ); + return answ; + } + set + { + memLayer.ML.setSessionVal("dtReqUpdate", value); + } } - } - } - /// - /// Reset parametri x calcolo pezzi (no pezzi lasciati, dataora attuale...) - /// - private void resetParam() - { - dtReqUpdate = DateTime.Now; - numPzLasciati = 0; - } - - /// - /// Aggiorno valori produzione alla data richiesta... - /// - /// - public void doUpdate() - { - datiProdAct = DataLayerObj.taStatoProd.GetData(idxMacchina, dtReqUpdate)[0]; - // aggiorno visualizzazione... - numPzProdotti = datiProdAct.PzTotODL; - numPz2Rec = datiProdAct.Pz2RecTot; - numPzScaConf = datiProdAct.PzConfScarto; - numPzBuoniConf = datiProdAct.PzConfBuoni; - numPzProdotti2Rec = datiProdAct.Pz2RecTot; - numPzScarto2Rec = datiProdAct.Pz2RecScarto; - } - /// - /// Numero pezzi PRODOTTI GLOBALI - /// - protected int numPzProdotti - { - set - { - lblPzTotODL.Text = value.ToString(); - } - } - /// - /// Numero pezzi da LASCIARE non dichiarati - /// - protected int numPzLasciati - { - set - { - txtNumLasciati.Text = value.ToString(); - } - get - { - int answ = 0; - try + /// + /// Dati produzioen rilevati + /// + public DS_ProdTempi.StatoProdRow datiProdAct; + /// + /// caricamento pagina + /// + /// + /// + protected void Page_Load(object sender, EventArgs e) { - answ = Convert.ToInt32(txtNumLasciati.Text); + if (!Page.IsPostBack) + { + checkAll(); + if (isMulti) + { + // sollevo evento! + if (eh_reset != null) + { + eh_reset(this, new EventArgs()); + } + } + } } - catch - { } - return answ; - } - } - /// - /// Numero pezzi PRODOTTI da ultima conferma - /// - protected int numPz2Rec - { - set - { - lblPz2RecTot.Text = value.ToString(); - } - } - /// - /// Numero pezzi SCARTO già confermati - /// - protected int numPzScaConf - { - set - { - lblPzConfScarto.Text = value.ToString(); - } - } - /// - /// Numero pezzi BUONI già confermati - /// - protected int numPzBuoniConf - { - set - { - lblPzConfBuoni.Text = value.ToString(); - } - } - /// - /// Numero pezzi PRODOTTI da registrare - /// da ultima conferma - protected int numPzProdotti2Rec - { - set - { - txtNumPezzi.Text = value.ToString(); - } - get - { - int answ = 0; - try + /// + /// Reset parametri x calcolo pezzi (no pezzi lasciati, dataora attuale...) + /// + private void resetParam() { - answ = Convert.ToInt32(txtNumPezzi.Text); + dtReqUpdate = DateTime.Now; + numPzLasciati = 0; } - catch - { } - return answ; - } - } - /// - /// Numero pezzi SCARTATI da registrare - /// - protected int numPzScarto2Rec - { - set - { - lblPz2RecScarto.Text = value.ToString(); - memLayer.ML.setSessionVal("lblPz2RecScarto", value); - } - get - { - int answ = 0; - try + + /// + /// Aggiorno valori produzione alla data richiesta... + /// + /// + public void doUpdate() { - answ = memLayer.ML.IntSessionObj("lblPz2RecScarto"); + datiProdAct = DataLayerObj.taStatoProd.GetData(idxMacchinaSel, dtReqUpdate)[0]; + // aggiorno visualizzazione... + numPzProdotti = datiProdAct.PzTotODL; + numPz2Rec = datiProdAct.Pz2RecTot; + numPzScaConf = datiProdAct.PzConfScarto; + numPzBuoniConf = datiProdAct.PzConfBuoni; + numPzProdotti2Rec = datiProdAct.Pz2RecTot; + numPzScarto2Rec = datiProdAct.Pz2RecScarto; } - catch - { } - return answ; - } - } - /// - /// Numero pezzi confermati (buoni - scarto) - /// - protected int numPzConfermati - { - get - { - return numPzProdotti2Rec - numPzScarto2Rec; - } - } - private void checkAll() - { - checkConfig(); - fixSelMacc(); - checkOdl(); - lblOut.Text = ""; - switchBtnConferma(false); - lbtShowConfProd.Visible = odlOk; - lblConfProd.Visible = !odlOk; - } - /// - /// verifica config x modalità permesse - /// - private void checkConfig() - { - // verifico SE sia permesso gestire i "Pezzi lasciati" in macchina... - lblNumLasciati.Visible = memLayer.ML.cdvb("enablePzProdLasciati"); - txtNumLasciati.Visible = memLayer.ML.cdvb("enablePzProdLasciati"); - } - - /// - /// Verifica se abbia un ODL ATTIVO - /// - private void checkOdl() - { - lbtShowConfProd.Visible = odlOk; - lblConfProd.Visible = !odlOk; - lblMancaODL.Visible = !odlOk; - } - - /// - /// Verifica se la macchina MAIN sia MULTI (da DatiMacchina / redis...) - /// - protected bool isMulti - { - get - { - return DataLayerObj.isMulti(idxMacchinaSession); - } - } - - /// - /// Se la machcina è MULTI --> mostro selettore - /// - private void fixSelMacc() - { - divSelMacc.Visible = isMulti; - if (isMulti) - { - // salvo selezione submacc - ddlSubMacc.DataBind(); - subMaccSel = ddlSubMacc.SelectedValue; - } - } - /// - /// restituisce css disabled SE odl NON OK... - /// - public string cssBtnConf - { - get - { - return odlOk ? "" : "disabled"; - } - } - /// - /// Verifica ODL OK (ovvero caricato x macchina...) - /// - public bool odlOk - { - get - { - bool answ = true; - // se ODL > 0 è ok!!! - answ = (idxOdl > 0); - return answ; - } - } - /// - /// ODL correntemente sulla macchina - /// - cerca in Redis (TTL 5 sec) - /// - altrimenti recupera da DB... - /// - protected int idxOdl - { - get - { - // userò ODL del turno - int answ = 0; - // cerco da redis... - int.TryParse(DataLayerObj.currODL(idxMacchina, true), out answ); - return answ; - } - } - - /// - /// idx macchina selezionata - /// - public string idxMacchina - { - get - { - string answ = memLayer.ML.StringSessionObj("IdxMacchina"); - // verifoc: se multi uso selettore tendina... - if (isMulti) + /// + /// Numero pezzi PRODOTTI GLOBALI + /// + protected int numPzProdotti { - if (ddlSubMacc.SelectedValue == "") - { - ddlSubMacc.DataBind(); - } - if (ddlSubMacc.SelectedValue != "") - { - answ = ddlSubMacc.SelectedValue; - } + set + { + lblPzTotODL.Text = value.ToString(); + } } - return answ; - } - set - { - memLayer.ML.setSessionVal("IdxMacchina", value); - } - } - /// - /// idx macchina selezionata - /// - public string idxMacchinaSession - { - get - { - return memLayer.ML.StringSessionObj("IdxMacchina"); - } - set - { - memLayer.ML.setSessionVal("IdxMacchina", value); - } - } - /// - /// cambio stato visibilità pannello e testo button - /// - /// - /// - protected void lbtShowConfProd_Click(object sender, EventArgs e) - { - switchBtnConferma(!divInnovazioni.Visible); - } - - /// - /// determina comportamento btn conferma - /// - private void switchBtnConferma(bool showConf) - { - // aggiorno valori rilevati - resetParam(); - doUpdate(); - divInnovazioni.Visible = showConf; - if (showConf) - { - // continuo update - lbtSalva.Visible = showConf; - try + /// + /// Numero pezzi da LASCIARE non dichiarati + /// + protected int numPzLasciati { - updatePzBuoni(); - // sollevo evento! - if (eh_inserting != null) - { - eh_inserting(this, new EventArgs()); - } + set + { + txtNumLasciati.Text = value.ToString(); + } + get + { + int answ = 0; + try + { + answ = Convert.ToInt32(txtNumLasciati.Text); + } + catch + { } + return answ; + } } - catch + /// + /// Numero pezzi PRODOTTI da ultima conferma + /// + protected int numPz2Rec { - txtNumPezzi.Text = "0"; - logger.lg.scriviLog(string.Format("Errore recupero pezzi da confermare per la macchina {0}", idxMacchina), tipoLog.ERROR); + set + { + lblPz2RecTot.Text = value.ToString(); + } } - } - if (showConf) - { - lblShowConfProd.Text = "Nascondi Conferma"; - } - else - { - lblShowConfProd.Text = "Mostra Conferma"; - // sollevo evento! - if (eh_reset != null) + /// + /// Numero pezzi SCARTO già confermati + /// + protected int numPzScaConf { - eh_reset(this, new EventArgs()); + set + { + lblPzConfScarto.Text = value.ToString(); + } } - } - } - - /// - /// salvo produzione - /// - /// - /// - protected void lbtSalva_Click(object sender, EventArgs e) - { - // effettua conferma con conf da DB del tipo (giorni / turni / periodo - bool fatto = effettuaConfermaProd(); - // refresh tabella dati tablet... - DataLayerObj.taMSE.forceRecalc(0, idxMacchina); - // mostro output - lblOut.Text = string.Format("Confermata la produzione per {0} pezzi! (+{1} pz scarto) alle {2:yyyy-MM-dd HH:mm:ss}", numPzConfermati, numPzScarto2Rec, dtReqUpdate); - // cambio button conferma... - switchBtnConferma(!txtNumPezzi.Enabled); - // sollevo evento! - if (eh_newVal != null) - { - eh_newVal(this, new EventArgs()); - } - doUpdate(); - } - /// - /// Registra conferma produzione in modalità nuova (con rettifica pezzi lasciati) o legacy (con anticipo periodo) - /// - private bool effettuaConfermaProd() - { - bool fatto = false; - if (confRett) - { - // confermo al netto dei pezzi lasciati... - fatto = DataLayerObj.confermaProdMacchinaFull(idxMacchina, memLayer.ML.CRI("modoConfProd"), numPzConfermati - numPzLasciati, numPzLasciati, numPzScarto2Rec, dtReqUpdate); - } - else - { - fatto = DataLayerObj.confermaProdMacchina(idxMacchina, memLayer.ML.CRI("modoConfProd"), numPzConfermati, numPzScarto2Rec, dtReqUpdate); - } - return fatto; - } - - /// - /// update post modifica pz buoni - /// - /// - /// - protected void txtNumPezzi_TextChanged(object sender, EventArgs e) - { - lblOut.Text = ""; - updatePzBuoni(); - } - /// - /// aggiorna visualizzazione pz buoni /prodotti - scarti) - /// - private void updatePzBuoni() - { - if (confRett) - { - // cambio le qta di pezzi confermati... - lblPz2RecBuoni.Text = (numPzConfermati - numPzLasciati).ToString(); - } - else - { - // se ho dei pezzi lasciati RICALCOLO la data... - if (numPzLasciati > 0) + /// + /// Numero pezzi BUONI già confermati + /// + protected int numPzBuoniConf { - // calcolo la data.. - DS_ProdTempi.TempiCicloRilevatiDataTable tab = DataLayerObj.taTempiCicloRilevati.getLastPzByMaccQta(idxMacchina, DateTime.Now, numPzLasciati); - if (tab.Rows.Count > 0) - { - dtReqUpdate = tab[0].DataOraRif.AddSeconds(1); - } - // aggiorno - doUpdate(); + set + { + lblPzConfBuoni.Text = value.ToString(); + } } - lblPz2RecBuoni.Text = numPzConfermati.ToString(); - } - // aggiorno la data calcolo + pezzi buoni... - lblDtRec.Text = dtReqUpdate.ToString(); - } - /// - /// Update pz lasciati --> aggiorno! - /// - /// - /// - protected void txtNumLasciati_TextChanged(object sender, EventArgs e) - { - lblOut.Text = ""; - updatePzBuoni(); - } - protected void ddlSubMacc_SelectedIndexChanged(object sender, EventArgs e) - { - subMaccSel = ddlSubMacc.SelectedValue; - checkAll(); - } - - protected void ddlSubMacc_DataBound(object sender, EventArgs e) - { - // se ho in memoria un valore LO REIMPOSTO... - if (subMaccSel != "") - { - // provo a preselezionare... - try + /// + /// Numero pezzi PRODOTTI da registrare + /// da ultima conferma + protected int numPzProdotti2Rec { - ddlSubMacc.SelectedValue = subMaccSel; + set + { + txtNumPezzi.Text = value.ToString(); + } + get + { + int answ = 0; + try + { + answ = Convert.ToInt32(txtNumPezzi.Text); + } + catch + { } + return answ; + } + } + /// + /// Numero pezzi SCARTATI da registrare + /// + protected int numPzScarto2Rec + { + set + { + lblPz2RecScarto.Text = value.ToString(); + memLayer.ML.setSessionVal("lblPz2RecScarto", value); + } + get + { + int answ = 0; + try + { + answ = memLayer.ML.IntSessionObj("lblPz2RecScarto"); + } + catch + { } + return answ; + } + } + /// + /// Numero pezzi confermati (buoni - scarto) + /// + protected int numPzConfermati + { + get + { + return numPzProdotti2Rec - numPzScarto2Rec; + } + } + private void checkAll() + { + updateOdl(); + checkConfig(); + fixSelMacc(); + checkOdl(); + lblOut.Text = ""; + switchBtnConferma(false); + lbtShowConfProd.Visible = odlOk; + lblConfProd.Visible = !odlOk; + } + /// + /// verifica config x modalità permesse + /// + private void checkConfig() + { + // verifico SE sia permesso gestire i "Pezzi lasciati" in macchina... + lblNumLasciati.Visible = memLayer.ML.cdvb("enablePzProdLasciati"); + txtNumLasciati.Visible = memLayer.ML.cdvb("enablePzProdLasciati"); } - catch - { } - } - } - /// - /// Sotto sistema (macchina) selezionato - /// - public string subMaccSel - { - get - { - return memLayer.ML.StringSessionObj("subMaccSel"); - } - set - { - memLayer.ML.setSessionVal("subMaccSel", value); - } - } - } + /// + /// Verifica se abbia un ODL ATTIVO + /// + private void checkOdl() + { + lbtShowConfProd.Visible = odlOk; + lblConfProd.Visible = !odlOk; + lblMancaODL.Visible = !odlOk; + } + + /// + /// Verifica se la macchina MAIN sia MULTI (da DatiMacchina / redis...) + /// + protected bool isMulti + { + get + { + return DataLayerObj.isMulti(idxMacchina); + } + } + + /// + /// Se la machcina è MULTI --> mostro selettore + /// + private void fixSelMacc() + { + divSelMacc.Visible = isMulti; + if (isMulti) + { + // salvo selezione submacc + ddlSubMacc.DataBind(); + subMaccSel = ddlSubMacc.SelectedValue; + } + updateOdl(); + } + /// + /// restituisce css disabled SE odl NON OK... + /// + public string cssBtnConf + { + get + { + return odlOk ? "" : "disabled"; + } + } + /// + /// Verifica ODL OK (ovvero caricato x macchina...) + /// + public bool odlOk + { + get + { + bool answ = true; + // se ODL > 0 è ok!!! + answ = (idxOdl > 0); + return answ; + } + } + /// + /// ODL correntemente sulla macchina + /// - cerca in Redis (TTL 5 sec) + /// - altrimenti recupera da DB... + /// + protected void updateOdl() + { + // userò ODL del turno + int answ = 0; + // cerco da redis... + int.TryParse(DataLayerObj.currODL(idxMacchinaSel, true), out answ); + // salvo! + idxOdl = answ; + } + + /// + /// idx macchina selezionata + /// + public string idxMacchinaSel + { + get + { + string answ = memLayer.ML.StringSessionObj("IdxMacchina"); + // verifoc: se multi uso selettore tendina... + if (isMulti) + { + if (ddlSubMacc.SelectedValue == "") + { + ddlSubMacc.DataBind(); + } + if (ddlSubMacc.SelectedValue != "") + { + answ = ddlSubMacc.SelectedValue; + } + } + return answ; + } + set + { + memLayer.ML.setSessionVal("IdxMacchina", value); + } + } + /// + /// cambio stato visibilità pannello e testo button + /// + /// + /// + protected void lbtShowConfProd_Click(object sender, EventArgs e) + { + switchBtnConferma(!divInnovazioni.Visible); + } + + /// + /// determina comportamento btn conferma + /// + private void switchBtnConferma(bool showConf) + { + // aggiorno valori rilevati + resetParam(); + doUpdate(); + divInnovazioni.Visible = showConf; + if (showConf) + { + // continuo update + lbtSalva.Visible = showConf; + try + { + updatePzBuoni(); + // sollevo evento! + if (eh_inserting != null) + { + eh_inserting(this, new EventArgs()); + } + } + catch + { + txtNumPezzi.Text = "0"; + logger.lg.scriviLog(string.Format("Errore recupero pezzi da confermare per la macchina {0}", idxMacchinaSel), tipoLog.ERROR); + } + } + if (showConf) + { + lblShowConfProd.Text = "Nascondi Conferma"; + } + else + { + lblShowConfProd.Text = "Mostra Conferma"; + // sollevo evento! + if (eh_reset != null) + { + eh_reset(this, new EventArgs()); + } + } + } + + /// + /// salvo produzione + /// + /// + /// + protected void lbtSalva_Click(object sender, EventArgs e) + { + // effettua conferma con conf da DB del tipo (giorni / turni / periodo + bool fatto = effettuaConfermaProd(); + // refresh tabella dati tablet... + DataLayerObj.taMSE.forceRecalc(0, idxMacchinaSel); + // mostro output + lblOut.Text = string.Format("Confermata la produzione per {0} pezzi! (+{1} pz scarto) alle {2:yyyy-MM-dd HH:mm:ss}", numPzConfermati, numPzScarto2Rec, dtReqUpdate); + // cambio button conferma... + switchBtnConferma(!txtNumPezzi.Enabled); + // sollevo evento! + if (eh_newVal != null) + { + eh_newVal(this, new EventArgs()); + } + doUpdate(); + } + /// + /// Registra conferma produzione in modalità nuova (con rettifica pezzi lasciati) o legacy (con anticipo periodo) + /// + private bool effettuaConfermaProd() + { + bool fatto = false; + if (confRett) + { + // confermo al netto dei pezzi lasciati... + fatto = DataLayerObj.confermaProdMacchinaFull(idxMacchinaSel, memLayer.ML.CRI("modoConfProd"), numPzConfermati - numPzLasciati, numPzLasciati, numPzScarto2Rec, dtReqUpdate); + } + else + { + fatto = DataLayerObj.confermaProdMacchina(idxMacchinaSel, memLayer.ML.CRI("modoConfProd"), numPzConfermati, numPzScarto2Rec, dtReqUpdate); + } + return fatto; + } + + /// + /// update post modifica pz buoni + /// + /// + /// + protected void txtNumPezzi_TextChanged(object sender, EventArgs e) + { + lblOut.Text = ""; + updatePzBuoni(); + } + /// + /// aggiorna visualizzazione pz buoni /prodotti - scarti) + /// + private void updatePzBuoni() + { + if (confRett) + { + // cambio le qta di pezzi confermati... + lblPz2RecBuoni.Text = (numPzConfermati - numPzLasciati).ToString(); + } + else + { + // se ho dei pezzi lasciati RICALCOLO la data... + if (numPzLasciati > 0) + { + // calcolo la data.. + DS_ProdTempi.TempiCicloRilevatiDataTable tab = DataLayerObj.taTempiCicloRilevati.getLastPzByMaccQta(idxMacchinaSel, DateTime.Now, numPzLasciati); + if (tab.Rows.Count > 0) + { + dtReqUpdate = tab[0].DataOraRif.AddSeconds(1); + } + // aggiorno + doUpdate(); + } + lblPz2RecBuoni.Text = numPzConfermati.ToString(); + } + // aggiorno la data calcolo + pezzi buoni... + lblDtRec.Text = dtReqUpdate.ToString(); + } + /// + /// Update pz lasciati --> aggiorno! + /// + /// + /// + protected void txtNumLasciati_TextChanged(object sender, EventArgs e) + { + lblOut.Text = ""; + updatePzBuoni(); + } + protected void ddlSubMacc_SelectedIndexChanged(object sender, EventArgs e) + { + subMaccSel = ddlSubMacc.SelectedValue; + // salvo ODL + DataLayerObj.taMSE.getByIdxMaccAndSub(idxMacchinaSel, subMaccSel); + //altri controlli + checkAll(); + } + + protected void ddlSubMacc_DataBound(object sender, EventArgs e) + { + // se ho in memoria un valore LO REIMPOSTO... + if (subMaccSel != "") + { + // provo a preselezionare... + try + { + ddlSubMacc.SelectedValue = subMaccSel; + } + catch + { } + } + } + + } } \ No newline at end of file diff --git a/MP-TAB/WebUserControls/mod_dettMacchina.ascx.cs b/MP-TAB/WebUserControls/mod_dettMacchina.ascx.cs index 045a3307..892fb067 100644 --- a/MP-TAB/WebUserControls/mod_dettMacchina.ascx.cs +++ b/MP-TAB/WebUserControls/mod_dettMacchina.ascx.cs @@ -5,7 +5,7 @@ using System.Web.UI; namespace MoonProTablet.WebUserControls { - public partial class mod_dettMacchina : System.Web.UI.UserControl + public partial class mod_dettMacchina : MpTabUserControl { /// /// Oggetto datalayer specifico @@ -15,20 +15,6 @@ namespace MoonProTablet.WebUserControls /// fatto refresh --> chiedo remove modal (se c'è) /// public event EventHandler eh_reqRemoveModal; - /// - /// idx macchina selezionata - /// - public string idxMacchina - { - get - { - return memLayer.ML.StringSessionObj("IdxMacchina"); - } - set - { - memLayer.ML.setSessionVal("IdxMacchina", value); - } - } public bool showDisegno(object _codArticolo) { diff --git a/MP-TAB/fixODL.aspx.cs b/MP-TAB/fixODL.aspx.cs index a8e87b55..0cdf3bf6 100644 --- a/MP-TAB/fixODL.aspx.cs +++ b/MP-TAB/fixODL.aspx.cs @@ -5,209 +5,196 @@ using System.Web.UI; namespace MoonProTablet { - public partial class fixODL : System.Web.UI.Page - { - /// - /// Oggetto datalayer specifico - /// - DataLayer DataLayerObj = new DataLayer(); - /// - /// Caricamento pagina - /// - /// - /// - protected void Page_Load(object sender, EventArgs e) + public partial class fixODL : MpTabPage { - if (!Page.IsPostBack) - { - fixSelMacc(); - hfIdxMacchina.Value = idxMacchina; - fixBtnImpostaODL(); - DateTime adesso = DateTime.Now; - hfDataTo.Value = adesso.ToString(); - hfDataFrom.Value = adesso.AddMonths(-1).ToString(); - } - } + /// + /// Oggetto datalayer specifico + /// + DataLayer DataLayerObj = new DataLayer(); + /// + /// Caricamento pagina + /// + /// + /// + protected void Page_Load(object sender, EventArgs e) + { + if (!Page.IsPostBack) + { + fixSelMacc(); + hfIdxMacchina.Value = idxMacchinaSel; + fixBtnImpostaODL(); + DateTime adesso = DateTime.Now; + hfDataTo.Value = adesso.ToString(); + hfDataFrom.Value = adesso.AddMonths(-1).ToString(); + } + } + /// + /// idx macchina selezionata + /// + public string idxMacchinaSel + { + get + { + string answ = idxMacchina; + // verifico: se multi uso selettore tendina... + if (isMulti) + { + if (ddlSubMacc.SelectedValue == "") + { + ddlSubMacc.DataBind(); + } + if (ddlSubMacc.SelectedValue != "") + { + answ = ddlSubMacc.SelectedValue; + } + } + return answ; + } + set + { + memLayer.ML.setSessionVal("IdxMacchina", value); + } + } + /// + /// Verifica se la macchina MAIN sia MULTI (da DatiMacchina / redis...) + /// + protected bool isMulti + { + get + { + bool answ = false; + answ = DataLayerObj.isMulti(idxMacchina); + return answ; + } + } + protected void ddlSubMacc_DataBound(object sender, EventArgs e) + { + // se ho in memoria un valore LO REIMPOSTO... + if (subMaccSel != "") + { + // provo a preselezionare... + try + { + ddlSubMacc.SelectedValue = subMaccSel; + } + catch + { } + } + } + protected void ddlSubMacc_SelectedIndexChanged(object sender, EventArgs e) + { + subMaccSel = ddlSubMacc.SelectedValue; + checkAll(); + } - /// - /// idx macchina selezionata - /// - public string idxMacchinaSession - { - get - { - return memLayer.ML.StringSessionObj("IdxMacchina"); - } - set - { - memLayer.ML.setSessionVal("IdxMacchina", value); - } - } - /// - /// idx macchina selezionata - /// - public string idxMacchina - { - get - { - string answ = idxMacchinaSession; - // verifico: se multi uso selettore tendina... - if (isMulti) + private void checkAll() { - if (ddlSubMacc.SelectedValue == "") - { - ddlSubMacc.DataBind(); - } - if (ddlSubMacc.SelectedValue != "") - { - answ = ddlSubMacc.SelectedValue; - } + fixSelMacc(); + hfIdxMacchina.Value = idxMacchinaSel; } - return answ; - } - set - { - memLayer.ML.setSessionVal("IdxMacchina", value); - } - } - /// - /// Verifica se la macchina MAIN sia MULTI (da DatiMacchina / redis...) - /// - protected bool isMulti - { - get - { - bool answ = false; - answ = DataLayerObj.isMulti(idxMacchinaSession); - return answ; - } - } - protected void ddlSubMacc_DataBound(object sender, EventArgs e) - { - // se ho in memoria un valore LO REIMPOSTO... - if (subMaccSel != "") - { - // provo a preselezionare... - try + /// + /// Se la machcina è MULTI --> mostro selettore + /// + private void fixSelMacc() { - ddlSubMacc.SelectedValue = subMaccSel; + divSelMacc.Visible = isMulti; + if (isMulti) + { + // salvo selezione submacc + ddlSubMacc.DataBind(); + subMaccSel = ddlSubMacc.SelectedValue; + } } - catch - { } - } - } - protected void ddlSubMacc_SelectedIndexChanged(object sender, EventArgs e) - { - subMaccSel = ddlSubMacc.SelectedValue; - checkAll(); - } - - private void checkAll() - { - fixSelMacc(); - hfIdxMacchina.Value = idxMacchina; - } - /// - /// Se la machcina è MULTI --> mostro selettore - /// - private void fixSelMacc() - { - divSelMacc.Visible = isMulti; - if (isMulti) - { - // salvo selezione submacc - ddlSubMacc.DataBind(); - subMaccSel = ddlSubMacc.SelectedValue; - } - } - /// - /// Sotto sistema (macchina) selezionato - /// - public string subMaccSel - { - get - { - return memLayer.ML.StringSessionObj("subMaccSel"); - } - set - { - memLayer.ML.setSessionVal("subMaccSel", value); - } - } - private void fixBtnImpostaODL() - { - // verifico se selezionato un ODL sorgente... - lbtSetODL.Visible = idxODL > 0; - } - /// - /// idx macchina selezionata - /// - public int idxODL - { - get - { - int answ = 0; - try + /// + /// Sotto sistema (macchina) selezionato + /// + public string subMaccSel { - answ = Convert.ToInt32(ddlODL.SelectedValue); + get + { + return memLayer.ML.StringSessionObj("subMaccSel"); + } + set + { + memLayer.ML.setSessionVal("subMaccSel", value); + } + } + private void fixBtnImpostaODL() + { + // verifico se selezionato un ODL sorgente... + lbtSetODL.Visible = idxOdlSel > 0; + // salvo in sessione... + idxODL = idxOdlSel; + } + /// + /// idx macchina selezionata + /// + public int idxOdlSel + { + get + { + int answ = 0; + try + { + answ = Convert.ToInt32(ddlODL.SelectedValue); + } + catch + { } + return answ; + } } - catch - { } - return answ; - } - } - protected void ddlODL_SelectedIndexChanged(object sender, EventArgs e) - { - fixBtnImpostaODL(); - } - /// - /// Verifica (su tab config) se sia abilitata la gestione flusso RPO (Richieste - Promesse - ODL) - /// - protected bool enableRPO - { - get - { - return memLayer.ML.cdvb("enableRPO"); - } - } - /// - /// Registra attivazione ODL per macchina corrente... - /// - /// - /// - protected void lbtSetODL_Click(object sender, EventArgs e) - { - if (idxMacchina != "" && idxODL > 0) - { - if (enableRPO) + protected void ddlODL_SelectedIndexChanged(object sender, EventArgs e) { - // registro ODL retroattivamente... - DataLayerObj.taODL.inizioSetupPromessaPostuma(idxODL, DataLayerObj.MatrOpr, idxMacchina); + fixBtnImpostaODL(); } - else + /// + /// Verifica (su tab config) se sia abilitata la gestione flusso RPO (Richieste - Promesse - ODL) + /// + protected bool enableRPO { - // registro ODL retroattivamente... - DataLayerObj.taODL.insPostumo(idxODL, idxMacchina); + get + { + return memLayer.ML.cdvb("enableRPO"); + } + } + /// + /// Registra attivazione ODL per macchina corrente... + /// + /// + /// + protected void lbtSetODL_Click(object sender, EventArgs e) + { + if (idxMacchinaSel != "" && idxOdlSel > 0) + { + if (enableRPO) + { + // registro ODL retroattivamente... + DataLayerObj.taODL.inizioSetupPromessaPostuma(idxOdlSel, DataLayerObj.MatrOpr, idxMacchinaSel); + } + else + { + // registro ODL retroattivamente... + DataLayerObj.taODL.insPostumo(idxOdlSel, idxMacchinaSel); + } + } + // controllo: se il nuovo ODL è stato registrato --> rimando a pagina ODL/Attrezzaggio... + bool odlOk = false; + try + { + // ricalcolo MSE + DataLayerObj.taMSE.getByRefreshData(0); + // verifico! + int idxODL = DataLayerObj.taMSE.getByIdxMacchina(idxMacchinaSel)[0].idxODL; + odlOk = (idxODL > 0); + } + catch (Exception exc) + { + logger.lg.scriviLog(string.Format("Errore recupero ODL corrente da confermare per la macchina {0}{1}{2}", idxMacchinaSel, Environment.NewLine, exc), tipoLog.ERROR); + } + // forzo COMUNQUE redirect... + Response.Redirect("ODL"); } - } - // controllo: se il nuovo ODL è stato registrato --> rimando a pagina ODL/Attrezzaggio... - bool odlOk = false; - try - { - // ricalcolo MSE - DataLayerObj.taMSE.getByRefreshData(0); - // verifico! - int idxODL = DataLayerObj.taMSE.getByIdxMacchina(idxMacchina)[0].idxODL; - odlOk = (idxODL > 0); - } - catch (Exception exc) - { - logger.lg.scriviLog(string.Format("Errore recupero ODL corrente da confermare per la macchina {0}{1}{2}", idxMacchina, Environment.NewLine, exc), tipoLog.ERROR); - } - // forzo COMUNQUE redirect... - Response.Redirect("ODL"); } - } } \ No newline at end of file From 55f4d8ba79e04314d44260efc8041826d0bbb90e Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Fri, 10 Jul 2020 08:07:55 +0200 Subject: [PATCH 13/18] Fix update control --- MP-TAB/WebUserControls/cmp_ST_detail.ascx | 3 +-- MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/MP-TAB/WebUserControls/cmp_ST_detail.ascx b/MP-TAB/WebUserControls/cmp_ST_detail.ascx index 3dda2cd5..75b144e2 100644 --- a/MP-TAB/WebUserControls/cmp_ST_detail.ascx +++ b/MP-TAB/WebUserControls/cmp_ST_detail.ascx @@ -18,8 +18,7 @@
- completare con interazione campi richiesti!!!
- NB: campi richiesti devono prevedere check con valore in tab specifica istanze ODL + completare con interazione campi richiesti!!! --> i campi richiesti devono prevedere check con valore in tab specifica istanze ODL
diff --git a/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs b/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs index ecea8b7a..9aeb0426 100644 --- a/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs +++ b/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs @@ -18,6 +18,7 @@ namespace MoonProTablet.WebUserControls set { hfType.Value = value.Trim(); + fixDisplay(); } } public string dataLabel @@ -44,7 +45,6 @@ namespace MoonProTablet.WebUserControls } protected void Page_Load(object sender, EventArgs e) { - fixDisplay(); } private void fixDisplay() From 18172fa1ad5f2448af113f3eac5f31ba55954434 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Mon, 13 Jul 2020 10:30:24 +0200 Subject: [PATCH 14/18] fix img display x avere selezione reale/pholder --- MP-TAB/MP-TAB.csproj | 9 ++++-- MP-TAB/WebUserControls/cmp_ST_objView.ascx | 9 ++++-- MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs | 28 ++++++++++++++++++ MP-TAB/images/ST_img/Steamware.png | Bin 0 -> 225332 bytes 4 files changed, 41 insertions(+), 5 deletions(-) create mode 100644 MP-TAB/images/ST_img/Steamware.png diff --git a/MP-TAB/MP-TAB.csproj b/MP-TAB/MP-TAB.csproj index d30f4c8b..f6896c3e 100644 --- a/MP-TAB/MP-TAB.csproj +++ b/MP-TAB/MP-TAB.csproj @@ -21,9 +21,11 @@ 4.0 - 44328 - enabled - disabled + 44384 + + + + @@ -462,6 +464,7 @@ + diff --git a/MP-TAB/WebUserControls/cmp_ST_objView.ascx b/MP-TAB/WebUserControls/cmp_ST_objView.ascx index b60fc713..e8a0a6ea 100644 --- a/MP-TAB/WebUserControls/cmp_ST_objView.ascx +++ b/MP-TAB/WebUserControls/cmp_ST_objView.ascx @@ -12,5 +12,10 @@
- -
\ No newline at end of file +
+ <%: hfLabel.Value %> +
+
+ +
+
diff --git a/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs b/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs index 9aeb0426..2c6e15aa 100644 --- a/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs +++ b/MP-TAB/WebUserControls/cmp_ST_objView.ascx.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.IO; using System.Linq; using System.Web; using System.Web.UI; @@ -65,6 +66,33 @@ namespace MoonProTablet.WebUserControls break; } } + /// + /// Url immagine SE richiesta + /// + public string imageUrl + { + get + { + string imgPath = ""; + //check type... + if (dataType == "IMG") + { + imgPath = dataValue; + if (!Path.IsPathRooted(imgPath)) + { + // aggiungo base path + imgPath = $"~\\images\\ST_img\\{imgPath}"; + } + // verifico esistenza file... + if (!File.Exists(imgPath)) + { + // metto segnaposto empty + imgPath = "~\\images\\ST_img\\Steamware.png"; + } + } + return imgPath; + } + } } } \ No newline at end of file diff --git a/MP-TAB/images/ST_img/Steamware.png b/MP-TAB/images/ST_img/Steamware.png new file mode 100644 index 0000000000000000000000000000000000000000..1326fad945cdfcaa507cbe68e82310b8c6c2ab32 GIT binary patch literal 225332 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 $)PslO+E7zM>qRB-Q*EwZ~On{btpy$LCvn!kFW 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

Q#$$s%p)(x16N{7;XvIi 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 literal 0 HcmV?d00001 From b2a4260a1fd8eedc0f807a119de24ef131634a86 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Mon, 7 Sep 2020 18:13:08 +0200 Subject: [PATCH 15/18] Update tab DatiMAcchine x gestione hasCounter IOB-WIN --- MapoDb/DS_ProdTempi.xsd | 24 +++-- MapoDb/DS_ProdTempi.xss | 4 +- MapoDb/DS_ProdTempi1.Designer.cs | 31 +++++- MapoDb/DS_applicazione.Designer.cs | 156 ++++++++++++++++++++++------- MapoDb/DS_applicazione.cs | 14 +-- MapoDb/DS_applicazione.xsd | 81 ++++++++------- MapoDb/DS_applicazione.xss | 4 +- 7 files changed, 217 insertions(+), 97 deletions(-) diff --git a/MapoDb/DS_ProdTempi.xsd b/MapoDb/DS_ProdTempi.xsd index 6ee527fb..8200018e 100644 --- a/MapoDb/DS_ProdTempi.xsd +++ b/MapoDb/DS_ProdTempi.xsd @@ -695,6 +695,7 @@ SELECT CodArticolo, Disegno, DescArticolo, CurrRev, ProdRev, FlagIsNew, Tipo FRO + @@ -890,7 +891,7 @@ SELECT IdxPostazione, DescPostazione, IdxMacchina, MatrOperatore, InputUntil, La - + dbo.stp_ConfermaProduzCompletaFull @@ -910,7 +911,7 @@ SELECT IdxPostazione, DescPostazione, IdxMacchina, MatrOperatore, InputUntil, La - + dbo.stp_DatiConf_conferma @@ -2560,6 +2561,7 @@ FROM v_ECP + @@ -2787,7 +2789,7 @@ FROM v_ECP - + @@ -2868,7 +2870,7 @@ FROM v_ECP - + @@ -2880,7 +2882,7 @@ FROM v_ECP - + @@ -2905,7 +2907,7 @@ FROM v_ECP - + @@ -2943,7 +2945,7 @@ FROM v_ECP - + @@ -2982,7 +2984,7 @@ FROM v_ECP - + @@ -3048,7 +3050,7 @@ FROM v_ECP - + @@ -3125,7 +3127,7 @@ FROM v_ECP - + @@ -3160,7 +3162,7 @@ FROM v_ECP - + diff --git a/MapoDb/DS_ProdTempi.xss b/MapoDb/DS_ProdTempi.xss index 83b05229..3da72408 100644 --- a/MapoDb/DS_ProdTempi.xss +++ b/MapoDb/DS_ProdTempi.xss @@ -4,12 +4,12 @@ Changes to this file may cause incorrect behavior and will be lost if the code is regenerated. --> - + - + diff --git a/MapoDb/DS_ProdTempi1.Designer.cs b/MapoDb/DS_ProdTempi1.Designer.cs index 035d6959..f7ab1876 100644 --- a/MapoDb/DS_ProdTempi1.Designer.cs +++ b/MapoDb/DS_ProdTempi1.Designer.cs @@ -2291,6 +2291,8 @@ namespace MapoDb { private global::System.Data.DataColumn columnCodArticolo_B; + private global::System.Data.DataColumn columnhasCounter; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] public DatiMacchineDataTable() { @@ -2388,6 +2390,14 @@ namespace MapoDb { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn hasCounterColumn { + get { + return this.columnhasCounter; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Browsable(false)] @@ -2425,7 +2435,7 @@ namespace MapoDb { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] - public DatiMacchineRow AddDatiMacchineRow(string idxMacchina, string DescFull, bool palletChange, string serialPort, int refreshPeriod, bool simulazione, string CodArticolo_A, string CodArticolo_B) { + public DatiMacchineRow AddDatiMacchineRow(string idxMacchina, string DescFull, bool palletChange, string serialPort, int refreshPeriod, bool simulazione, string CodArticolo_A, string CodArticolo_B, bool hasCounter) { DatiMacchineRow rowDatiMacchineRow = ((DatiMacchineRow)(this.NewRow())); object[] columnValuesArray = new object[] { idxMacchina, @@ -2435,7 +2445,8 @@ namespace MapoDb { refreshPeriod, simulazione, CodArticolo_A, - CodArticolo_B}; + CodArticolo_B, + hasCounter}; rowDatiMacchineRow.ItemArray = columnValuesArray; this.Rows.Add(rowDatiMacchineRow); return rowDatiMacchineRow; @@ -2473,6 +2484,7 @@ namespace MapoDb { this.columnsimulazione = base.Columns["simulazione"]; this.columnCodArticolo_A = base.Columns["CodArticolo_A"]; this.columnCodArticolo_B = base.Columns["CodArticolo_B"]; + this.columnhasCounter = base.Columns["hasCounter"]; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -2494,6 +2506,8 @@ namespace MapoDb { base.Columns.Add(this.columnCodArticolo_A); this.columnCodArticolo_B = new global::System.Data.DataColumn("CodArticolo_B", typeof(string), null, global::System.Data.MappingType.Element); base.Columns.Add(this.columnCodArticolo_B); + this.columnhasCounter = new global::System.Data.DataColumn("hasCounter", typeof(bool), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnhasCounter); this.Constraints.Add(new global::System.Data.UniqueConstraint("DatiMacchineKey1", new global::System.Data.DataColumn[] { this.columnidxMacchina}, true)); this.columnidxMacchina.AllowDBNull = false; @@ -2503,6 +2517,7 @@ namespace MapoDb { this.columnserialPort.MaxLength = 50; this.columnCodArticolo_A.MaxLength = 50; this.columnCodArticolo_B.MaxLength = 50; + this.columnhasCounter.AllowDBNull = false; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -10796,6 +10811,17 @@ namespace MapoDb { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool hasCounter { + get { + return ((bool)(this[this.tableDatiMacchine.hasCounterColumn])); + } + set { + this[this.tableDatiMacchine.hasCounterColumn] = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] public bool IsDescFullNull() { @@ -18931,6 +18957,7 @@ SELECT CodArticolo, Disegno, DescArticolo, CurrRev, ProdRev, FlagIsNew, Tipo FRO tableMapping.ColumnMappings.Add("simulazione", "simulazione"); tableMapping.ColumnMappings.Add("CodArticolo_A", "CodArticolo_A"); tableMapping.ColumnMappings.Add("CodArticolo_B", "CodArticolo_B"); + tableMapping.ColumnMappings.Add("hasCounter", "hasCounter"); this._adapter.TableMappings.Add(tableMapping); } diff --git a/MapoDb/DS_applicazione.Designer.cs b/MapoDb/DS_applicazione.Designer.cs index 3701e904..db80554b 100644 --- a/MapoDb/DS_applicazione.Designer.cs +++ b/MapoDb/DS_applicazione.Designer.cs @@ -6490,6 +6490,10 @@ namespace MapoDb { private global::System.Data.DataColumn columnCodArticolo_B; + private global::System.Data.DataColumn columnisTrigerDBOn; + + private global::System.Data.DataColumn columnhasCounter; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] public DatiMacchineDataTable() { @@ -6603,6 +6607,22 @@ namespace MapoDb { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn isTrigerDBOnColumn { + get { + return this.columnisTrigerDBOn; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public global::System.Data.DataColumn hasCounterColumn { + get { + return this.columnhasCounter; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Browsable(false)] @@ -6640,7 +6660,7 @@ namespace MapoDb { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] - public DatiMacchineRow AddDatiMacchineRow(string idxMacchina, bool palletChange, string serialPort, int refreshPeriod, bool simulazione, bool simplePallet, bool insEnabled, bool sLogEnabled, string CodArticolo_A, string CodArticolo_B) { + public DatiMacchineRow AddDatiMacchineRow(string idxMacchina, bool palletChange, string serialPort, int refreshPeriod, bool simulazione, bool simplePallet, bool insEnabled, bool sLogEnabled, string CodArticolo_A, string CodArticolo_B, bool isTrigerDBOn, bool hasCounter) { DatiMacchineRow rowDatiMacchineRow = ((DatiMacchineRow)(this.NewRow())); object[] columnValuesArray = new object[] { idxMacchina, @@ -6652,7 +6672,9 @@ namespace MapoDb { insEnabled, sLogEnabled, CodArticolo_A, - CodArticolo_B}; + CodArticolo_B, + isTrigerDBOn, + hasCounter}; rowDatiMacchineRow.ItemArray = columnValuesArray; this.Rows.Add(rowDatiMacchineRow); return rowDatiMacchineRow; @@ -6692,6 +6714,8 @@ namespace MapoDb { this.columnsLogEnabled = base.Columns["sLogEnabled"]; this.columnCodArticolo_A = base.Columns["CodArticolo_A"]; this.columnCodArticolo_B = base.Columns["CodArticolo_B"]; + this.columnisTrigerDBOn = base.Columns["isTrigerDBOn"]; + this.columnhasCounter = base.Columns["hasCounter"]; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -6717,6 +6741,10 @@ namespace MapoDb { base.Columns.Add(this.columnCodArticolo_A); this.columnCodArticolo_B = new global::System.Data.DataColumn("CodArticolo_B", typeof(string), null, global::System.Data.MappingType.Element); base.Columns.Add(this.columnCodArticolo_B); + this.columnisTrigerDBOn = new global::System.Data.DataColumn("isTrigerDBOn", typeof(bool), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnisTrigerDBOn); + this.columnhasCounter = new global::System.Data.DataColumn("hasCounter", typeof(bool), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnhasCounter); this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { this.columnidxMacchina}, true)); this.columnidxMacchina.AllowDBNull = false; @@ -6725,6 +6753,8 @@ namespace MapoDb { this.columnsLogEnabled.AllowDBNull = false; this.columnCodArticolo_A.MaxLength = 50; this.columnCodArticolo_B.MaxLength = 50; + this.columnisTrigerDBOn.AllowDBNull = false; + this.columnhasCounter.AllowDBNull = false; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -12819,6 +12849,28 @@ namespace MapoDb { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool isTrigerDBOn { + get { + return ((bool)(this[this.tableDatiMacchine.isTrigerDBOnColumn])); + } + set { + this[this.tableDatiMacchine.isTrigerDBOnColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + public bool hasCounter { + get { + return ((bool)(this[this.tableDatiMacchine.hasCounterColumn])); + } + set { + this[this.tableDatiMacchine.hasCounterColumn] = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] public bool IspalletChangeNull() { @@ -23729,10 +23781,12 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( tableMapping.ColumnMappings.Add("sLogEnabled", "sLogEnabled"); tableMapping.ColumnMappings.Add("CodArticolo_A", "CodArticolo_A"); tableMapping.ColumnMappings.Add("CodArticolo_B", "CodArticolo_B"); + tableMapping.ColumnMappings.Add("isTrigerDBOn", "isTrigerDBOn"); + tableMapping.ColumnMappings.Add("hasCounter", "hasCounter"); this._adapter.TableMappings.Add(tableMapping); this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); this._adapter.DeleteCommand.Connection = this.Connection; - this._adapter.DeleteCommand.CommandText = @"DELETE FROM [DatiMacchine] WHERE (([idxMacchina] = @Original_idxMacchina) AND ((@IsNull_palletChange = 1 AND [palletChange] IS NULL) OR ([palletChange] = @Original_palletChange)) AND ((@IsNull_CodArticolo_A = 1 AND [CodArticolo_A] IS NULL) OR ([CodArticolo_A] = @Original_CodArticolo_A)) AND ((@IsNull_CodArticolo_B = 1 AND [CodArticolo_B] IS NULL) OR ([CodArticolo_B] = @Original_CodArticolo_B)) AND ((@IsNull_serialPort = 1 AND [serialPort] IS NULL) OR ([serialPort] = @Original_serialPort)) AND ((@IsNull_refreshPeriod = 1 AND [refreshPeriod] IS NULL) OR ([refreshPeriod] = @Original_refreshPeriod)) AND ((@IsNull_simulazione = 1 AND [simulazione] IS NULL) OR ([simulazione] = @Original_simulazione)) AND ((@IsNull_simplePallet = 1 AND [simplePallet] IS NULL) OR ([simplePallet] = @Original_simplePallet)) AND ((@IsNull_insEnabled = 1 AND [insEnabled] IS NULL) OR ([insEnabled] = @Original_insEnabled)) AND ([sLogEnabled] = @Original_sLogEnabled))"; + this._adapter.DeleteCommand.CommandText = @"DELETE FROM [DatiMacchine] WHERE (([idxMacchina] = @Original_idxMacchina) AND ((@IsNull_palletChange = 1 AND [palletChange] IS NULL) OR ([palletChange] = @Original_palletChange)) AND ((@IsNull_CodArticolo_A = 1 AND [CodArticolo_A] IS NULL) OR ([CodArticolo_A] = @Original_CodArticolo_A)) AND ((@IsNull_CodArticolo_B = 1 AND [CodArticolo_B] IS NULL) OR ([CodArticolo_B] = @Original_CodArticolo_B)) AND ((@IsNull_serialPort = 1 AND [serialPort] IS NULL) OR ([serialPort] = @Original_serialPort)) AND ((@IsNull_refreshPeriod = 1 AND [refreshPeriod] IS NULL) OR ([refreshPeriod] = @Original_refreshPeriod)) AND ((@IsNull_simulazione = 1 AND [simulazione] IS NULL) OR ([simulazione] = @Original_simulazione)) AND ((@IsNull_simplePallet = 1 AND [simplePallet] IS NULL) OR ([simplePallet] = @Original_simplePallet)) AND ((@IsNull_insEnabled = 1 AND [insEnabled] IS NULL) OR ([insEnabled] = @Original_insEnabled)) AND ([sLogEnabled] = @Original_sLogEnabled) AND ([isTrigerDBOn] = @Original_isTrigerDBOn) AND ([hasCounter] = @Original_hasCounter))"; this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_idxMacchina", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "idxMacchina", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_palletChange", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "palletChange", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); @@ -23752,9 +23806,11 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_insEnabled", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "insEnabled", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_insEnabled", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "insEnabled", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_sLogEnabled", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "sLogEnabled", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_isTrigerDBOn", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "isTrigerDBOn", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_hasCounter", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "hasCounter", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); this._adapter.InsertCommand.Connection = this.Connection; - this._adapter.InsertCommand.CommandText = @"INSERT INTO [DatiMacchine] ([idxMacchina], [palletChange], [CodArticolo_A], [CodArticolo_B], [serialPort], [refreshPeriod], [simulazione], [simplePallet], [insEnabled], [sLogEnabled]) VALUES (@idxMacchina, @palletChange, @CodArticolo_A, @CodArticolo_B, @serialPort, @refreshPeriod, @simulazione, @simplePallet, @insEnabled, @sLogEnabled)"; + this._adapter.InsertCommand.CommandText = @"INSERT INTO [DatiMacchine] ([idxMacchina], [palletChange], [CodArticolo_A], [CodArticolo_B], [serialPort], [refreshPeriod], [simulazione], [simplePallet], [insEnabled], [sLogEnabled], [isTrigerDBOn], [hasCounter]) VALUES (@idxMacchina, @palletChange, @CodArticolo_A, @CodArticolo_B, @serialPort, @refreshPeriod, @simulazione, @simplePallet, @insEnabled, @sLogEnabled, @isTrigerDBOn, @hasCounter)"; this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@idxMacchina", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "idxMacchina", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@palletChange", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "palletChange", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); @@ -23766,9 +23822,11 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@simplePallet", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "simplePallet", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@insEnabled", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "insEnabled", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@sLogEnabled", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "sLogEnabled", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@isTrigerDBOn", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "isTrigerDBOn", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@hasCounter", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "hasCounter", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); this._adapter.UpdateCommand.Connection = this.Connection; - this._adapter.UpdateCommand.CommandText = @"UPDATE [DatiMacchine] SET [idxMacchina] = @idxMacchina, [palletChange] = @palletChange, [CodArticolo_A] = @CodArticolo_A, [CodArticolo_B] = @CodArticolo_B, [serialPort] = @serialPort, [refreshPeriod] = @refreshPeriod, [simulazione] = @simulazione, [simplePallet] = @simplePallet, [insEnabled] = @insEnabled, [sLogEnabled] = @sLogEnabled WHERE (([idxMacchina] = @Original_idxMacchina) AND ((@IsNull_palletChange = 1 AND [palletChange] IS NULL) OR ([palletChange] = @Original_palletChange)) AND ((@IsNull_CodArticolo_A = 1 AND [CodArticolo_A] IS NULL) OR ([CodArticolo_A] = @Original_CodArticolo_A)) AND ((@IsNull_CodArticolo_B = 1 AND [CodArticolo_B] IS NULL) OR ([CodArticolo_B] = @Original_CodArticolo_B)) AND ((@IsNull_serialPort = 1 AND [serialPort] IS NULL) OR ([serialPort] = @Original_serialPort)) AND ((@IsNull_refreshPeriod = 1 AND [refreshPeriod] IS NULL) OR ([refreshPeriod] = @Original_refreshPeriod)) AND ((@IsNull_simulazione = 1 AND [simulazione] IS NULL) OR ([simulazione] = @Original_simulazione)) AND ((@IsNull_simplePallet = 1 AND [simplePallet] IS NULL) OR ([simplePallet] = @Original_simplePallet)) AND ((@IsNull_insEnabled = 1 AND [insEnabled] IS NULL) OR ([insEnabled] = @Original_insEnabled)) AND ([sLogEnabled] = @Original_sLogEnabled))"; + this._adapter.UpdateCommand.CommandText = @"UPDATE [DatiMacchine] SET [idxMacchina] = @idxMacchina, [palletChange] = @palletChange, [CodArticolo_A] = @CodArticolo_A, [CodArticolo_B] = @CodArticolo_B, [serialPort] = @serialPort, [refreshPeriod] = @refreshPeriod, [simulazione] = @simulazione, [simplePallet] = @simplePallet, [insEnabled] = @insEnabled, [sLogEnabled] = @sLogEnabled, [isTrigerDBOn] = @isTrigerDBOn, [hasCounter] = @hasCounter WHERE (([idxMacchina] = @Original_idxMacchina) AND ((@IsNull_palletChange = 1 AND [palletChange] IS NULL) OR ([palletChange] = @Original_palletChange)) AND ((@IsNull_CodArticolo_A = 1 AND [CodArticolo_A] IS NULL) OR ([CodArticolo_A] = @Original_CodArticolo_A)) AND ((@IsNull_CodArticolo_B = 1 AND [CodArticolo_B] IS NULL) OR ([CodArticolo_B] = @Original_CodArticolo_B)) AND ((@IsNull_serialPort = 1 AND [serialPort] IS NULL) OR ([serialPort] = @Original_serialPort)) AND ((@IsNull_refreshPeriod = 1 AND [refreshPeriod] IS NULL) OR ([refreshPeriod] = @Original_refreshPeriod)) AND ((@IsNull_simulazione = 1 AND [simulazione] IS NULL) OR ([simulazione] = @Original_simulazione)) AND ((@IsNull_simplePallet = 1 AND [simplePallet] IS NULL) OR ([simplePallet] = @Original_simplePallet)) AND ((@IsNull_insEnabled = 1 AND [insEnabled] IS NULL) OR ([insEnabled] = @Original_insEnabled)) AND ([sLogEnabled] = @Original_sLogEnabled) AND ([isTrigerDBOn] = @Original_isTrigerDBOn) AND ([hasCounter] = @Original_hasCounter))"; this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@idxMacchina", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "idxMacchina", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@palletChange", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "palletChange", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); @@ -23780,6 +23838,8 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@simplePallet", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "simplePallet", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@insEnabled", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "insEnabled", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@sLogEnabled", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "sLogEnabled", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@isTrigerDBOn", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "isTrigerDBOn", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@hasCounter", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "hasCounter", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_idxMacchina", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "idxMacchina", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_palletChange", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "palletChange", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_palletChange", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "palletChange", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); @@ -23798,6 +23858,8 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_insEnabled", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "insEnabled", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_insEnabled", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "insEnabled", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_sLogEnabled", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "sLogEnabled", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_isTrigerDBOn", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "isTrigerDBOn", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_hasCounter", global::System.Data.SqlDbType.Bit, 0, global::System.Data.ParameterDirection.Input, 0, 0, "hasCounter", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -23817,7 +23879,9 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; this._commandCollection[1] = new global::System.Data.SqlClient.SqlCommand(); this._commandCollection[1].Connection = this.Connection; - this._commandCollection[1].CommandText = "SELECT *\r\nFROM DatiMacchine WHERE (idxMacchina = @idxMacchina)"; + this._commandCollection[1].CommandText = "SELECT CodArticolo_A, CodArticolo_B, hasCounter, idxMacchina, insEnabled, isTrige" + + "rDBOn, palletChange, refreshPeriod, sLogEnabled, serialPort, simplePallet, simul" + + "azione FROM DatiMacchine WHERE (idxMacchina = @idxMacchina)"; this._commandCollection[1].CommandType = global::System.Data.CommandType.Text; this._commandCollection[1].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@idxMacchina", global::System.Data.SqlDbType.NVarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, "idxMacchina", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); } @@ -23896,7 +23960,7 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] - public virtual int Delete(string Original_idxMacchina, global::System.Nullable Original_palletChange, string Original_CodArticolo_A, string Original_CodArticolo_B, string Original_serialPort, global::System.Nullable Original_refreshPeriod, global::System.Nullable Original_simulazione, global::System.Nullable Original_simplePallet, global::System.Nullable Original_insEnabled, bool Original_sLogEnabled) { + public virtual int Delete(string Original_idxMacchina, global::System.Nullable Original_palletChange, string Original_CodArticolo_A, string Original_CodArticolo_B, string Original_serialPort, global::System.Nullable Original_refreshPeriod, global::System.Nullable Original_simulazione, global::System.Nullable Original_simplePallet, global::System.Nullable Original_insEnabled, bool Original_sLogEnabled, bool Original_isTrigerDBOn, bool Original_hasCounter) { if ((Original_idxMacchina == null)) { throw new global::System.ArgumentNullException("Original_idxMacchina"); } @@ -23968,6 +24032,8 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( this.Adapter.DeleteCommand.Parameters[16].Value = global::System.DBNull.Value; } this.Adapter.DeleteCommand.Parameters[17].Value = ((bool)(Original_sLogEnabled)); + this.Adapter.DeleteCommand.Parameters[18].Value = ((bool)(Original_isTrigerDBOn)); + this.Adapter.DeleteCommand.Parameters[19].Value = ((bool)(Original_hasCounter)); global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) != global::System.Data.ConnectionState.Open)) { @@ -23988,7 +24054,7 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] - public virtual int Insert(string idxMacchina, global::System.Nullable palletChange, string CodArticolo_A, string CodArticolo_B, string serialPort, global::System.Nullable refreshPeriod, global::System.Nullable simulazione, global::System.Nullable simplePallet, global::System.Nullable insEnabled, bool sLogEnabled) { + public virtual int Insert(string idxMacchina, global::System.Nullable palletChange, string CodArticolo_A, string CodArticolo_B, string serialPort, global::System.Nullable refreshPeriod, global::System.Nullable simulazione, global::System.Nullable simplePallet, global::System.Nullable insEnabled, bool sLogEnabled, bool isTrigerDBOn, bool hasCounter) { if ((idxMacchina == null)) { throw new global::System.ArgumentNullException("idxMacchina"); } @@ -24044,6 +24110,8 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( this.Adapter.InsertCommand.Parameters[8].Value = global::System.DBNull.Value; } this.Adapter.InsertCommand.Parameters[9].Value = ((bool)(sLogEnabled)); + this.Adapter.InsertCommand.Parameters[10].Value = ((bool)(isTrigerDBOn)); + this.Adapter.InsertCommand.Parameters[11].Value = ((bool)(hasCounter)); global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) != global::System.Data.ConnectionState.Open)) { @@ -24075,6 +24143,8 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( global::System.Nullable simplePallet, global::System.Nullable insEnabled, bool sLogEnabled, + bool isTrigerDBOn, + bool hasCounter, string Original_idxMacchina, global::System.Nullable Original_palletChange, string Original_CodArticolo_A, @@ -24084,7 +24154,9 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( global::System.Nullable Original_simulazione, global::System.Nullable Original_simplePallet, global::System.Nullable Original_insEnabled, - bool Original_sLogEnabled) { + bool Original_sLogEnabled, + bool Original_isTrigerDBOn, + bool Original_hasCounter) { if ((idxMacchina == null)) { throw new global::System.ArgumentNullException("idxMacchina"); } @@ -24140,77 +24212,81 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( this.Adapter.UpdateCommand.Parameters[8].Value = global::System.DBNull.Value; } this.Adapter.UpdateCommand.Parameters[9].Value = ((bool)(sLogEnabled)); + this.Adapter.UpdateCommand.Parameters[10].Value = ((bool)(isTrigerDBOn)); + this.Adapter.UpdateCommand.Parameters[11].Value = ((bool)(hasCounter)); if ((Original_idxMacchina == null)) { throw new global::System.ArgumentNullException("Original_idxMacchina"); } else { - this.Adapter.UpdateCommand.Parameters[10].Value = ((string)(Original_idxMacchina)); + this.Adapter.UpdateCommand.Parameters[12].Value = ((string)(Original_idxMacchina)); } if ((Original_palletChange.HasValue == true)) { - this.Adapter.UpdateCommand.Parameters[11].Value = ((object)(0)); - this.Adapter.UpdateCommand.Parameters[12].Value = ((bool)(Original_palletChange.Value)); + this.Adapter.UpdateCommand.Parameters[13].Value = ((object)(0)); + this.Adapter.UpdateCommand.Parameters[14].Value = ((bool)(Original_palletChange.Value)); } else { - this.Adapter.UpdateCommand.Parameters[11].Value = ((object)(1)); - this.Adapter.UpdateCommand.Parameters[12].Value = global::System.DBNull.Value; - } - if ((Original_CodArticolo_A == null)) { this.Adapter.UpdateCommand.Parameters[13].Value = ((object)(1)); this.Adapter.UpdateCommand.Parameters[14].Value = global::System.DBNull.Value; } - else { - this.Adapter.UpdateCommand.Parameters[13].Value = ((object)(0)); - this.Adapter.UpdateCommand.Parameters[14].Value = ((string)(Original_CodArticolo_A)); - } - if ((Original_CodArticolo_B == null)) { + if ((Original_CodArticolo_A == null)) { this.Adapter.UpdateCommand.Parameters[15].Value = ((object)(1)); this.Adapter.UpdateCommand.Parameters[16].Value = global::System.DBNull.Value; } else { this.Adapter.UpdateCommand.Parameters[15].Value = ((object)(0)); - this.Adapter.UpdateCommand.Parameters[16].Value = ((string)(Original_CodArticolo_B)); + this.Adapter.UpdateCommand.Parameters[16].Value = ((string)(Original_CodArticolo_A)); } - if ((Original_serialPort == null)) { + if ((Original_CodArticolo_B == null)) { this.Adapter.UpdateCommand.Parameters[17].Value = ((object)(1)); this.Adapter.UpdateCommand.Parameters[18].Value = global::System.DBNull.Value; } else { this.Adapter.UpdateCommand.Parameters[17].Value = ((object)(0)); - this.Adapter.UpdateCommand.Parameters[18].Value = ((string)(Original_serialPort)); + this.Adapter.UpdateCommand.Parameters[18].Value = ((string)(Original_CodArticolo_B)); } - if ((Original_refreshPeriod.HasValue == true)) { - this.Adapter.UpdateCommand.Parameters[19].Value = ((object)(0)); - this.Adapter.UpdateCommand.Parameters[20].Value = ((int)(Original_refreshPeriod.Value)); - } - else { + if ((Original_serialPort == null)) { this.Adapter.UpdateCommand.Parameters[19].Value = ((object)(1)); this.Adapter.UpdateCommand.Parameters[20].Value = global::System.DBNull.Value; } - if ((Original_simulazione.HasValue == true)) { + else { + this.Adapter.UpdateCommand.Parameters[19].Value = ((object)(0)); + this.Adapter.UpdateCommand.Parameters[20].Value = ((string)(Original_serialPort)); + } + if ((Original_refreshPeriod.HasValue == true)) { this.Adapter.UpdateCommand.Parameters[21].Value = ((object)(0)); - this.Adapter.UpdateCommand.Parameters[22].Value = ((bool)(Original_simulazione.Value)); + this.Adapter.UpdateCommand.Parameters[22].Value = ((int)(Original_refreshPeriod.Value)); } else { this.Adapter.UpdateCommand.Parameters[21].Value = ((object)(1)); this.Adapter.UpdateCommand.Parameters[22].Value = global::System.DBNull.Value; } - if ((Original_simplePallet.HasValue == true)) { + if ((Original_simulazione.HasValue == true)) { this.Adapter.UpdateCommand.Parameters[23].Value = ((object)(0)); - this.Adapter.UpdateCommand.Parameters[24].Value = ((bool)(Original_simplePallet.Value)); + this.Adapter.UpdateCommand.Parameters[24].Value = ((bool)(Original_simulazione.Value)); } else { this.Adapter.UpdateCommand.Parameters[23].Value = ((object)(1)); this.Adapter.UpdateCommand.Parameters[24].Value = global::System.DBNull.Value; } - if ((Original_insEnabled.HasValue == true)) { + if ((Original_simplePallet.HasValue == true)) { this.Adapter.UpdateCommand.Parameters[25].Value = ((object)(0)); - this.Adapter.UpdateCommand.Parameters[26].Value = ((bool)(Original_insEnabled.Value)); + this.Adapter.UpdateCommand.Parameters[26].Value = ((bool)(Original_simplePallet.Value)); } else { this.Adapter.UpdateCommand.Parameters[25].Value = ((object)(1)); this.Adapter.UpdateCommand.Parameters[26].Value = global::System.DBNull.Value; } - this.Adapter.UpdateCommand.Parameters[27].Value = ((bool)(Original_sLogEnabled)); + if ((Original_insEnabled.HasValue == true)) { + this.Adapter.UpdateCommand.Parameters[27].Value = ((object)(0)); + this.Adapter.UpdateCommand.Parameters[28].Value = ((bool)(Original_insEnabled.Value)); + } + else { + this.Adapter.UpdateCommand.Parameters[27].Value = ((object)(1)); + this.Adapter.UpdateCommand.Parameters[28].Value = global::System.DBNull.Value; + } + this.Adapter.UpdateCommand.Parameters[29].Value = ((bool)(Original_sLogEnabled)); + this.Adapter.UpdateCommand.Parameters[30].Value = ((bool)(Original_isTrigerDBOn)); + this.Adapter.UpdateCommand.Parameters[31].Value = ((bool)(Original_hasCounter)); global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) != global::System.Data.ConnectionState.Open)) { @@ -24241,6 +24317,8 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( global::System.Nullable simplePallet, global::System.Nullable insEnabled, bool sLogEnabled, + bool isTrigerDBOn, + bool hasCounter, string Original_idxMacchina, global::System.Nullable Original_palletChange, string Original_CodArticolo_A, @@ -24250,8 +24328,10 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( global::System.Nullable Original_simulazione, global::System.Nullable Original_simplePallet, global::System.Nullable Original_insEnabled, - bool Original_sLogEnabled) { - return this.Update(Original_idxMacchina, palletChange, CodArticolo_A, CodArticolo_B, serialPort, refreshPeriod, simulazione, simplePallet, insEnabled, sLogEnabled, Original_idxMacchina, Original_palletChange, Original_CodArticolo_A, Original_CodArticolo_B, Original_serialPort, Original_refreshPeriod, Original_simulazione, Original_simplePallet, Original_insEnabled, Original_sLogEnabled); + bool Original_sLogEnabled, + bool Original_isTrigerDBOn, + bool Original_hasCounter) { + return this.Update(Original_idxMacchina, palletChange, CodArticolo_A, CodArticolo_B, serialPort, refreshPeriod, simulazione, simplePallet, insEnabled, sLogEnabled, isTrigerDBOn, hasCounter, Original_idxMacchina, Original_palletChange, Original_CodArticolo_A, Original_CodArticolo_B, Original_serialPort, Original_refreshPeriod, Original_simulazione, Original_simplePallet, Original_insEnabled, Original_sLogEnabled, Original_isTrigerDBOn, Original_hasCounter); } } diff --git a/MapoDb/DS_applicazione.cs b/MapoDb/DS_applicazione.cs index 5a683ddc..12e8cfd2 100644 --- a/MapoDb/DS_applicazione.cs +++ b/MapoDb/DS_applicazione.cs @@ -2,14 +2,14 @@ { - partial class DS_applicazione - { - partial class MacchineDataTable + partial class DS_applicazione { - } + partial class MacchineDataTable + { + } - partial class StatoMacchineDataTable - { + partial class StatoMacchineDataTable + { + } } - } } diff --git a/MapoDb/DS_applicazione.xsd b/MapoDb/DS_applicazione.xsd index 9fd52b59..f7c7b2a3 100644 --- a/MapoDb/DS_applicazione.xsd +++ b/MapoDb/DS_applicazione.xsd @@ -1837,7 +1837,7 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( - DELETE FROM [DatiMacchine] WHERE (([idxMacchina] = @Original_idxMacchina) AND ((@IsNull_palletChange = 1 AND [palletChange] IS NULL) OR ([palletChange] = @Original_palletChange)) AND ((@IsNull_CodArticolo_A = 1 AND [CodArticolo_A] IS NULL) OR ([CodArticolo_A] = @Original_CodArticolo_A)) AND ((@IsNull_CodArticolo_B = 1 AND [CodArticolo_B] IS NULL) OR ([CodArticolo_B] = @Original_CodArticolo_B)) AND ((@IsNull_serialPort = 1 AND [serialPort] IS NULL) OR ([serialPort] = @Original_serialPort)) AND ((@IsNull_refreshPeriod = 1 AND [refreshPeriod] IS NULL) OR ([refreshPeriod] = @Original_refreshPeriod)) AND ((@IsNull_simulazione = 1 AND [simulazione] IS NULL) OR ([simulazione] = @Original_simulazione)) AND ((@IsNull_simplePallet = 1 AND [simplePallet] IS NULL) OR ([simplePallet] = @Original_simplePallet)) AND ((@IsNull_insEnabled = 1 AND [insEnabled] IS NULL) OR ([insEnabled] = @Original_insEnabled)) AND ([sLogEnabled] = @Original_sLogEnabled)) + DELETE FROM [DatiMacchine] WHERE (([idxMacchina] = @Original_idxMacchina) AND ((@IsNull_palletChange = 1 AND [palletChange] IS NULL) OR ([palletChange] = @Original_palletChange)) AND ((@IsNull_CodArticolo_A = 1 AND [CodArticolo_A] IS NULL) OR ([CodArticolo_A] = @Original_CodArticolo_A)) AND ((@IsNull_CodArticolo_B = 1 AND [CodArticolo_B] IS NULL) OR ([CodArticolo_B] = @Original_CodArticolo_B)) AND ((@IsNull_serialPort = 1 AND [serialPort] IS NULL) OR ([serialPort] = @Original_serialPort)) AND ((@IsNull_refreshPeriod = 1 AND [refreshPeriod] IS NULL) OR ([refreshPeriod] = @Original_refreshPeriod)) AND ((@IsNull_simulazione = 1 AND [simulazione] IS NULL) OR ([simulazione] = @Original_simulazione)) AND ((@IsNull_simplePallet = 1 AND [simplePallet] IS NULL) OR ([simplePallet] = @Original_simplePallet)) AND ((@IsNull_insEnabled = 1 AND [insEnabled] IS NULL) OR ([insEnabled] = @Original_insEnabled)) AND ([sLogEnabled] = @Original_sLogEnabled) AND ([isTrigerDBOn] = @Original_isTrigerDBOn) AND ([hasCounter] = @Original_hasCounter)) @@ -1857,12 +1857,14 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( + + - INSERT INTO [DatiMacchine] ([idxMacchina], [palletChange], [CodArticolo_A], [CodArticolo_B], [serialPort], [refreshPeriod], [simulazione], [simplePallet], [insEnabled], [sLogEnabled]) VALUES (@idxMacchina, @palletChange, @CodArticolo_A, @CodArticolo_B, @serialPort, @refreshPeriod, @simulazione, @simplePallet, @insEnabled, @sLogEnabled) + INSERT INTO [DatiMacchine] ([idxMacchina], [palletChange], [CodArticolo_A], [CodArticolo_B], [serialPort], [refreshPeriod], [simulazione], [simplePallet], [insEnabled], [sLogEnabled], [isTrigerDBOn], [hasCounter]) VALUES (@idxMacchina, @palletChange, @CodArticolo_A, @CodArticolo_B, @serialPort, @refreshPeriod, @simulazione, @simplePallet, @insEnabled, @sLogEnabled, @isTrigerDBOn, @hasCounter) @@ -1874,6 +1876,8 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( + + @@ -1885,7 +1889,7 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( - UPDATE [DatiMacchine] SET [idxMacchina] = @idxMacchina, [palletChange] = @palletChange, [CodArticolo_A] = @CodArticolo_A, [CodArticolo_B] = @CodArticolo_B, [serialPort] = @serialPort, [refreshPeriod] = @refreshPeriod, [simulazione] = @simulazione, [simplePallet] = @simplePallet, [insEnabled] = @insEnabled, [sLogEnabled] = @sLogEnabled WHERE (([idxMacchina] = @Original_idxMacchina) AND ((@IsNull_palletChange = 1 AND [palletChange] IS NULL) OR ([palletChange] = @Original_palletChange)) AND ((@IsNull_CodArticolo_A = 1 AND [CodArticolo_A] IS NULL) OR ([CodArticolo_A] = @Original_CodArticolo_A)) AND ((@IsNull_CodArticolo_B = 1 AND [CodArticolo_B] IS NULL) OR ([CodArticolo_B] = @Original_CodArticolo_B)) AND ((@IsNull_serialPort = 1 AND [serialPort] IS NULL) OR ([serialPort] = @Original_serialPort)) AND ((@IsNull_refreshPeriod = 1 AND [refreshPeriod] IS NULL) OR ([refreshPeriod] = @Original_refreshPeriod)) AND ((@IsNull_simulazione = 1 AND [simulazione] IS NULL) OR ([simulazione] = @Original_simulazione)) AND ((@IsNull_simplePallet = 1 AND [simplePallet] IS NULL) OR ([simplePallet] = @Original_simplePallet)) AND ((@IsNull_insEnabled = 1 AND [insEnabled] IS NULL) OR ([insEnabled] = @Original_insEnabled)) AND ([sLogEnabled] = @Original_sLogEnabled)) + UPDATE [DatiMacchine] SET [idxMacchina] = @idxMacchina, [palletChange] = @palletChange, [CodArticolo_A] = @CodArticolo_A, [CodArticolo_B] = @CodArticolo_B, [serialPort] = @serialPort, [refreshPeriod] = @refreshPeriod, [simulazione] = @simulazione, [simplePallet] = @simplePallet, [insEnabled] = @insEnabled, [sLogEnabled] = @sLogEnabled, [isTrigerDBOn] = @isTrigerDBOn, [hasCounter] = @hasCounter WHERE (([idxMacchina] = @Original_idxMacchina) AND ((@IsNull_palletChange = 1 AND [palletChange] IS NULL) OR ([palletChange] = @Original_palletChange)) AND ((@IsNull_CodArticolo_A = 1 AND [CodArticolo_A] IS NULL) OR ([CodArticolo_A] = @Original_CodArticolo_A)) AND ((@IsNull_CodArticolo_B = 1 AND [CodArticolo_B] IS NULL) OR ([CodArticolo_B] = @Original_CodArticolo_B)) AND ((@IsNull_serialPort = 1 AND [serialPort] IS NULL) OR ([serialPort] = @Original_serialPort)) AND ((@IsNull_refreshPeriod = 1 AND [refreshPeriod] IS NULL) OR ([refreshPeriod] = @Original_refreshPeriod)) AND ((@IsNull_simulazione = 1 AND [simulazione] IS NULL) OR ([simulazione] = @Original_simulazione)) AND ((@IsNull_simplePallet = 1 AND [simplePallet] IS NULL) OR ([simplePallet] = @Original_simplePallet)) AND ((@IsNull_insEnabled = 1 AND [insEnabled] IS NULL) OR ([insEnabled] = @Original_insEnabled)) AND ([sLogEnabled] = @Original_sLogEnabled) AND ([isTrigerDBOn] = @Original_isTrigerDBOn) AND ([hasCounter] = @Original_hasCounter)) @@ -1897,6 +1901,8 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( + + @@ -1915,6 +1921,8 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( + + @@ -1931,13 +1939,14 @@ SELECT MatrOpr, Cognome, Nome, isAdmin, authKey FROM AnagraficaOperatori WHERE ( + + - SELECT * -FROM DatiMacchine WHERE (idxMacchina = @idxMacchina) + SELECT CodArticolo_A, CodArticolo_B, hasCounter, idxMacchina, insEnabled, isTrigerDBOn, palletChange, refreshPeriod, sLogEnabled, serialPort, simplePallet, simulazione FROM DatiMacchine WHERE (idxMacchina = @idxMacchina) @@ -3143,10 +3152,12 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER + + - + @@ -3168,7 +3179,7 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER - + @@ -3204,7 +3215,7 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER - + @@ -3240,7 +3251,7 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER - + @@ -3257,7 +3268,7 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER - + @@ -3281,7 +3292,7 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER - + @@ -3323,7 +3334,7 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER - + @@ -3402,7 +3413,7 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER - + @@ -3431,7 +3442,7 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER - + @@ -3459,7 +3470,7 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER - + @@ -3590,26 +3601,26 @@ SELECT CodGruppo, TipoGruppo, DescrGruppo, SelEnabled FROM AnagraficaGruppi WHER - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/MapoDb/DS_applicazione.xss b/MapoDb/DS_applicazione.xss index 3269b78f..827101e5 100644 --- a/MapoDb/DS_applicazione.xss +++ b/MapoDb/DS_applicazione.xss @@ -4,7 +4,7 @@ Changes to this file may cause incorrect behavior and will be lost if the code is regenerated. --> - + @@ -22,7 +22,7 @@ - + From 38476207f7b44f554c579fe40ff92939c6129558 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Mon, 7 Sep 2020 18:13:16 +0200 Subject: [PATCH 16/18] start new rel --- Jenkinsfile | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 28cf4045..9b3e3dc2 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -12,7 +12,7 @@ pipeline { steps { /* calcolo numero versione... diverso x branch MASTER/DEVELOP */ script { - withEnv(['NEXT_BUILD_NUMBER=1293']) { + withEnv(['NEXT_BUILD_NUMBER=1294']) { // env.versionNumber = VersionNumber(versionNumberString : '6.9.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true) env.versionNumber = VersionNumber(versionNumberString : '6.9.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}') env.APP_NAME = 'MAPO' @@ -309,8 +309,6 @@ def publishToDeployServer(prjPath, iisPath, packName) { bat "xcopy /y " + prjPath + "Resources\\manifest.xml " + iisPath + packName + "\\${env.BRANCH_NAME}\\ " bat "xcopy /y " + prjPath + "Resources\\ChangeLog.html " + iisPath + packName + "\\${env.BRANCH_NAME}\\ " bat "xcopy /y " + prjPath + "Resources\\logoSteamware.png " + iisPath + packName + "\\${env.BRANCH_NAME}\\ " - //// salvo copia della versione... - //bat "xcopy /y " + prjPath + "\\ReleaseClienti\\${env.BRANCH_NAME}\\* E:\\Staging\\byProd\\MP\\${env.BRANCH_NAME}\\" + packName + "\\${env.versionNumber}\\ " // copio x AutoUpdate deploy bat "xcopy /y " + prjPath + "\\ReleaseClienti\\${env.BRANCH_NAME}\\" + packName + ".zip " + iisPath + packName + "\\${env.BRANCH_NAME}\\ " } @@ -337,15 +335,6 @@ def getChangeString() { return changeString } -// Funzione x invio email -def sendEmail(status) { - mail ( - to: "$EMAIL_RECIPIENTS", - subject: "${env.versionNumber} " + status +": Build $BUILD_NUMBER ($JOB_NAME)", - body: "Modifiche:\n " + getChangeString() + "\n\n Verifica console output: $BUILD_URL/console" + "\n" - ) -} - // Funzione x invio slack def sendSlack(status, colorCode) { slackSend ( From 41b90bc2d6ca0895e8c57a1ce51ff103dd050420 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Mon, 7 Sep 2020 18:13:26 +0200 Subject: [PATCH 17/18] inibito editing se hasCounter == true --- MP-ADM/WebUserControls/mod_gestioneODL.ascx | 1 + .../WebUserControls/mod_gestioneODL.ascx.cs | 1086 +++++++++-------- .../mod_gestioneODL.ascx.designer.cs | 55 +- 3 files changed, 593 insertions(+), 549 deletions(-) diff --git a/MP-ADM/WebUserControls/mod_gestioneODL.ascx b/MP-ADM/WebUserControls/mod_gestioneODL.ascx index 581ded3c..a3f69ae5 100644 --- a/MP-ADM/WebUserControls/mod_gestioneODL.ascx +++ b/MP-ADM/WebUserControls/mod_gestioneODL.ascx @@ -50,6 +50,7 @@

+ Pezzi Pallet:
diff --git a/MP-ADM/WebUserControls/mod_gestioneODL.ascx.cs b/MP-ADM/WebUserControls/mod_gestioneODL.ascx.cs index fbc7af44..10b55ed2 100644 --- a/MP-ADM/WebUserControls/mod_gestioneODL.ascx.cs +++ b/MP-ADM/WebUserControls/mod_gestioneODL.ascx.cs @@ -7,541 +7,573 @@ using System.Web.UI.WebControls; namespace MoonPro_site.WebUserControls { - public partial class mod_gestioneODL : System.Web.UI.UserControl - { - /// - /// Oggetto datalayer specifico - /// - DataLayer DataLayerObj = new DataLayer(); - - /// - /// dimensione pagina - /// - public int pageSize + public partial class mod_gestioneODL : System.Web.UI.UserControl { - get - { - int answ = 10; - try + /// + /// Oggetto datalayer specifico + /// + DataLayer DataLayerObj = new DataLayer(); + + /// + /// dimensione pagina + /// + public int pageSize { - answ = Convert.ToInt32(txtPageSize.Text); - } - catch - { } - return answ; - } - set - { - txtPageSize.Text = value.ToString(); - } - } - #region area da NON modificare - - #region area protected - - protected string _idxGridView; - - /// - /// reset della selezione - /// - /// - /// - protected void btnReset_Click(object sender, EventArgs e) - { - resetSelezione(); - } - /// - /// gestione cambio selezione valore - /// - /// - /// - protected void grView_SelectedIndexChanged(object sender, EventArgs e) - { - // salvo in session il valore selezionato... - SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue, false); - // mostro edit quantità... - divEditQta.Visible = true; - lbtNewODL.Visible = enableCreateNew; - mod_newOdl1.Visible = false; - var riga = DataLayerObj.taODL.getByIdx(idxOdlSel, false)[0]; - numPz = riga.NumPezzi; - pzPallet = riga.PzPallet; - } - /// - /// traduce gli header delle colonne - /// - /// - /// - protected void grView_DataBound(object sender, EventArgs e) - { - if (grView.Rows.Count > 0) - { - LinkButton lb; - // aggiorno gli headers - foreach (TableCell cella in grView.HeaderRow.Cells) - { - try - { - lb = (LinkButton)cella.Controls[0]; - lb.Text = traduci(lb.Text); - } - catch - { } - } - int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1); - lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord); - } - else - { - lblNumRec.Text = ""; - } - } - /// - /// recupera i dati di un nuovo record contenuti nel footer di un gridView; - /// questi devono esses opportunamente nominati (es: txt{0}, dl{0}, ...) - /// - /// - /// - protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e) - { - //recupero la riga footer... - DataColumnCollection colonne = colonneObj(); - string nomeCol; - string tipoColonna = ""; - foreach (DataColumn colonna in colonne) - { - nomeCol = colonna.ColumnName; - // cerco un textbox o quello che sia... - if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null) - { - tipoColonna = "textBox"; - } - else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null) - { - tipoColonna = "dropDownList"; - } - else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null) - { - tipoColonna = "checkBox"; - } - else if (grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol)) != null) - { - tipoColonna = "selAjax"; - } - // in base al tipo salvo negli inputparameters dell'ODS - switch (tipoColonna) - { - case "textBox": - e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text; - break; - case "dropDownList": - e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue; - break; - case "checkBox": - e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked; - break; - //case "selAjax": - // e.InputParameters[nomeCol] = ((mod_selettore_ajax)grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol))).valore; - // break; - default: - break; - } - tipoColonna = ""; - } - } - /// - /// svuoto da cache post update - /// - /// - /// - protected void ods_Updated(object sender, ObjectDataSourceStatusEventArgs e) - { - // evento come nuovo... - if (eh_nuovoValore != null) - { - eh_nuovoValore(this, new EventArgs()); - } - } - - #endregion - - #region are public - - /// - /// effettua traduzione del lemma - /// - /// - /// - public string traduci(string lemma) - { - return user_std.UtSn.Traduci(lemma); - } - /// - /// effettua traduzione in inglese del lemma - /// - /// - /// - public string traduciEn(string lemma) - { - return user_std.UtSn.TraduciEn(lemma); - } - /// - /// resetta la selezione dei valori in caso di modifiche su altri controlli - /// - public void resetSelezione() - { - SteamWare.memLayer.ML.emptySessionVal(string.Format("{0}_sel", _idxGridView)); - grView.SelectedIndex = -1; - grView.DataBind(); - divEditQta.Visible = false; - mod_newOdl1.Visible = false; - lbtNewODL.Visible = enableCreateNew; - lblWarning.Visible = false; - if (eh_resetSelezione != null) - { - eh_resetSelezione(this, new EventArgs()); - } - - } - #endregion - - #endregion - - #region gestione eventi - - public event EventHandler eh_resetSelezione; - public event EventHandler eh_nuovoValore; - - #endregion - - #region area da modificare - - protected override void OnLoad(EventArgs e) - { - base.OnLoad(e); - if (!Page.IsPostBack) - { - mod_newOdl1.Visible = false; - grView.PageSize = pageSize; - lbtNewODL.Visible = enableCreateNew; - } - mod_newOdl1.eh_nuovoValore += new EventHandler(mod_newOdl1_eh_nuovoValore); - } - - public bool enableCreateNew - { - get - { - return !memLayer.ML.CRB("enableRPO"); - } - } - - /// inizializzazione valori di default - ///
- /// - protected override void OnInit(EventArgs e) - { - base.OnInit(e); - _idxGridView = "IdxODL"; - } - /// - /// nuovo valore creato... - /// - /// - /// - void mod_newOdl1_eh_nuovoValore(object sender, EventArgs e) - { - // nascondo controllo e mostro button - mod_newOdl1.Visible = false; - lbtNewODL.Visible = enableCreateNew; - // aggiorno! - resetSelezione(); - } - - /// - /// elenco colonne del datagrid - /// - /// - protected DataColumnCollection colonneObj() - { - MapoDb.DS_ProdTempi.ODLDataTable tabella = new MapoDb.DS_ProdTempi.ODLDataTable(); - DataColumnCollection colonne = tabella.Columns; - return colonne; - } - public bool delEnabled(object _idxOdl) - { - bool answ = false; - int idxOdl = 0; - // controllo non sia già stata iniziata la produzione sennò non posso cancellare... - try - { - idxOdl = Convert.ToInt32(_idxOdl); - answ = (DataLayerObj.taODL.getByIdx(idxOdl, true).Count > 0); - } - catch - { } - return answ; - } - /// - /// mostra creazione nuovo ODL - /// - /// - /// - protected void lbtNewODL_Click(object sender, EventArgs e) - { - // mostro controllo creazione ODL - mod_newOdl1.Visible = true; - divEditQta.Visible = false; - lbtNewODL.Visible = false; - grView.SelectedIndex = -1; - grView.DataBind(); - } - /// - /// formatot url x stampa ODL - /// - /// - /// - public string formattaUrlOdl(object idx) - { - string answ = String.Format(memLayer.ML.CRS("exportFormat1"), Convert.ToInt32(reportRichiesto.SchedaODL), idx); - return answ; - } - - /// - /// cambio dim pagina - /// - /// - /// - protected void txtPageSize_TextChanged(object sender, EventArgs e) - { - grView.PageSize = pageSize; - } - /// - /// verifica se ODL sia current = aperto (iniziato, NON concluso) - /// - /// - /// - /// - public bool OdlIsCurrent(object DataInizio, object DataFine) - { - bool answ = false; - try - { - if ((DataInizio.ToString() == "") && (DataFine.ToString() == "")) - { - answ = true; - } - } - catch - { } - if (!answ) - { - try - { - if ((Convert.ToDateTime(DataInizio) <= DateTime.Now) && (DataFine.ToString() == "")) - { - answ = true; - } - } - catch - { } - } - return answ; - } - - #endregion - - protected void btnOk_Click(object sender, EventArgs e) - { - if (idxOdlSel > 0) - { - DataLayerObj.taODL.updateQta(numPz, pzPallet, idxOdlSel); - } - updateCtrl(); - } - - private void updateCtrl() - { - divEditQta.Visible = false; - grView.SelectedIndex = -1; - grView.DataBind(); - } - /// - /// idxOdl selezionato - /// - protected int idxOdlSel - { - get - { - int answ = 0; - try - { - answ = Convert.ToInt32(grView.SelectedValue); - } - catch - { } - return answ; - } - } - /// - /// Nuovo num pz - /// - protected int numPz - { - get - { - int answ = 0; - try - { - answ = Convert.ToInt32(txtNewQta.Text.Trim()); - } - catch - { } - return answ; - } - set - { - txtNewQta.Text = value.ToString(); - } - } - /// - /// Nuovo num pz per pallet - /// - protected int pzPallet - { - get - { - int answ = 1; - try - { - answ = Convert.ToInt32(txtNewPzPallet.Text.Trim()); - } - catch - { } - // controllo sia > 0... - if (answ < 1) - { - answ = 1; + get + { + int answ = 10; + try + { + answ = Convert.ToInt32(txtPageSize.Text); + } + catch + { } + return answ; + } + set + { + txtPageSize.Text = value.ToString(); + } } - return answ; - } - set - { - txtNewPzPallet.Text = value.ToString(); - } - } - protected void btnCancel_Click(object sender, EventArgs e) - { - updateCtrl(); - } + #region area da NON modificare - /// - /// Aggiorno Gridview - /// - private void updateGrView() - { - grView.DataBind(); - } + #region area protected - /// - /// IdxMacchina filtrata - /// - protected string idxMacc - { - get - { - return lblIdxMacc.Text; - } - set - { - lblIdxMacc.Text = value; - } - } - /// - /// Nome filtrata - /// - protected string NomeMacc - { - get - { - return lblNomeMacc.Text; - } - set - { - lblNomeMacc.Text = value; - } - } - /// - /// CodArt filtrato - /// - protected string CodArt - { - get - { - return lblCodArt.Text; - } - set - { - lblCodArt.Text = value; - } - } - /// - /// CodArt filtrato - /// - protected string DescArt - { - get - { - return lblDescArt.Text; - } - set - { - lblDescArt.Text = value; - } - } + protected string _idxGridView; - /// - /// Selezionato un condominio --> riporto selezione - /// - /// - /// - protected void lbtSelArt_Click(object sender, EventArgs e) - { - LinkButton lb = (LinkButton)sender; - // imposto articolo, splittando - string[] artData = lb.CommandArgument.Split('|'); - CodArt = artData[0]; - DescArt = artData[1]; - updateGrView(); - } - /// - /// Selezionato un condominio --> riporto selezione - /// - /// - /// - protected void lbtSelMacc_Click(object sender, EventArgs e) - { - LinkButton lb = (LinkButton)sender; - // imposto articolo, splittando - string[] maccData = lb.CommandArgument.Split('|'); - idxMacc = maccData[0]; - NomeMacc = maccData[1]; - updateGrView(); - } + /// + /// reset della selezione + /// + /// + /// + protected void btnReset_Click(object sender, EventArgs e) + { + resetSelezione(); + } + /// + /// gestione cambio selezione valore + /// + /// + /// + protected void grView_SelectedIndexChanged(object sender, EventArgs e) + { + // salvo in session il valore selezionato... + SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue, false); + // mostro edit quantità... + divEditQta.Visible = true; + lbtNewODL.Visible = enableCreateNew; + mod_newOdl1.Visible = false; + var riga = DataLayerObj.taODL.getByIdx(idxOdlSel, false)[0]; + numPz = riga.NumPezzi; + idxMaccEdit = riga.IdxMacchina; + pzPallet = riga.PzPallet; + } + /// + /// traduce gli header delle colonne + /// + /// + /// + protected void grView_DataBound(object sender, EventArgs e) + { + if (grView.Rows.Count > 0) + { + LinkButton lb; + // aggiorno gli headers + foreach (TableCell cella in grView.HeaderRow.Cells) + { + try + { + lb = (LinkButton)cella.Controls[0]; + lb.Text = traduci(lb.Text); + } + catch + { } + } + int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1); + lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord); + } + else + { + lblNumRec.Text = ""; + } + } + /// + /// recupera i dati di un nuovo record contenuti nel footer di un gridView; + /// questi devono esses opportunamente nominati (es: txt{0}, dl{0}, ...) + /// + /// + /// + protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e) + { + //recupero la riga footer... + DataColumnCollection colonne = colonneObj(); + string nomeCol; + string tipoColonna = ""; + foreach (DataColumn colonna in colonne) + { + nomeCol = colonna.ColumnName; + // cerco un textbox o quello che sia... + if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null) + { + tipoColonna = "textBox"; + } + else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null) + { + tipoColonna = "dropDownList"; + } + else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null) + { + tipoColonna = "checkBox"; + } + else if (grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol)) != null) + { + tipoColonna = "selAjax"; + } + // in base al tipo salvo negli inputparameters dell'ODS + switch (tipoColonna) + { + case "textBox": + e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text; + break; + case "dropDownList": + e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue; + break; + case "checkBox": + e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked; + break; + //case "selAjax": + // e.InputParameters[nomeCol] = ((mod_selettore_ajax)grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol))).valore; + // break; + default: + break; + } + tipoColonna = ""; + } + } + /// + /// svuoto da cache post update + /// + /// + /// + protected void ods_Updated(object sender, ObjectDataSourceStatusEventArgs e) + { + // evento come nuovo... + if (eh_nuovoValore != null) + { + eh_nuovoValore(this, new EventArgs()); + } + } - protected void lbtResArt_Click(object sender, EventArgs e) - { - CodArt = ""; - DescArt = ""; - updateGrView(); - } + #endregion - protected void lbtResMacc_Click(object sender, EventArgs e) - { - idxMacc = ""; - NomeMacc = ""; - updateGrView(); + #region are public + + /// + /// effettua traduzione del lemma + /// + /// + /// + public string traduci(string lemma) + { + return user_std.UtSn.Traduci(lemma); + } + /// + /// effettua traduzione in inglese del lemma + /// + /// + /// + public string traduciEn(string lemma) + { + return user_std.UtSn.TraduciEn(lemma); + } + /// + /// resetta la selezione dei valori in caso di modifiche su altri controlli + /// + public void resetSelezione() + { + SteamWare.memLayer.ML.emptySessionVal(string.Format("{0}_sel", _idxGridView)); + grView.SelectedIndex = -1; + grView.DataBind(); + idxMaccEdit = ""; + divEditQta.Visible = false; + mod_newOdl1.Visible = false; + lbtNewODL.Visible = enableCreateNew; + lblWarning.Visible = false; + if (eh_resetSelezione != null) + { + eh_resetSelezione(this, new EventArgs()); + } + + } + + #endregion + + #endregion + + #region gestione eventi + + public event EventHandler eh_resetSelezione; + public event EventHandler eh_nuovoValore; + + #endregion + + #region area da modificare + + protected override void OnLoad(EventArgs e) + { + base.OnLoad(e); + if (!Page.IsPostBack) + { + mod_newOdl1.Visible = false; + grView.PageSize = pageSize; + lbtNewODL.Visible = enableCreateNew; + } + mod_newOdl1.eh_nuovoValore += new EventHandler(mod_newOdl1_eh_nuovoValore); + } + + public bool enableCreateNew + { + get + { + return !memLayer.ML.CRB("enableRPO"); + } + } + + /// inizializzazione valori di default + /// + /// + protected override void OnInit(EventArgs e) + { + base.OnInit(e); + _idxGridView = "IdxODL"; + } + /// + /// nuovo valore creato... + /// + /// + /// + void mod_newOdl1_eh_nuovoValore(object sender, EventArgs e) + { + // nascondo controllo e mostro button + mod_newOdl1.Visible = false; + lbtNewODL.Visible = enableCreateNew; + // aggiorno! + resetSelezione(); + } + + /// + /// elenco colonne del datagrid + /// + /// + protected DataColumnCollection colonneObj() + { + MapoDb.DS_ProdTempi.ODLDataTable tabella = new MapoDb.DS_ProdTempi.ODLDataTable(); + DataColumnCollection colonne = tabella.Columns; + return colonne; + } + public bool delEnabled(object _idxOdl) + { + bool answ = false; + int idxOdl = 0; + // controllo non sia già stata iniziata la produzione sennò non posso cancellare... + try + { + idxOdl = Convert.ToInt32(_idxOdl); + answ = (DataLayerObj.taODL.getByIdx(idxOdl, true).Count > 0); + } + catch + { } + return answ; + } + /// + /// mostra creazione nuovo ODL + /// + /// + /// + protected void lbtNewODL_Click(object sender, EventArgs e) + { + // mostro controllo creazione ODL + mod_newOdl1.Visible = true; + divEditQta.Visible = false; + lbtNewODL.Visible = false; + grView.SelectedIndex = -1; + grView.DataBind(); + } + /// + /// formatot url x stampa ODL + /// + /// + /// + public string formattaUrlOdl(object idx) + { + string answ = String.Format(memLayer.ML.CRS("exportFormat1"), Convert.ToInt32(reportRichiesto.SchedaODL), idx); + return answ; + } + + /// + /// cambio dim pagina + /// + /// + /// + protected void txtPageSize_TextChanged(object sender, EventArgs e) + { + grView.PageSize = pageSize; + } + /// + /// verifica se ODL sia current = aperto (iniziato, NON concluso) + /// + /// + /// + /// + public bool OdlIsCurrent(object DataInizio, object DataFine) + { + bool answ = false; + try + { + if ((DataInizio.ToString() == "") && (DataFine.ToString() == "")) + { + answ = true; + } + } + catch + { } + if (!answ) + { + try + { + if ((Convert.ToDateTime(DataInizio) <= DateTime.Now) && (DataFine.ToString() == "")) + { + answ = true; + } + } + catch + { } + } + return answ; + } + + #endregion + + protected void btnOk_Click(object sender, EventArgs e) + { + if (idxOdlSel > 0) + { + DataLayerObj.taODL.updateQta(numPz, pzPallet, idxOdlSel); + } + updateCtrl(); + } + + private void updateCtrl() + { + divEditQta.Visible = false; + grView.SelectedIndex = -1; + grView.DataBind(); + } + /// + /// idxOdl selezionato + /// + protected int idxOdlSel + { + get + { + int answ = 0; + try + { + answ = Convert.ToInt32(grView.SelectedValue); + } + catch + { } + return answ; + } + } + /// + /// Nuovo num pz + /// + protected int numPz + { + get + { + int answ = 0; + try + { + answ = Convert.ToInt32(txtNewQta.Text.Trim()); + } + catch + { } + return answ; + } + set + { + txtNewQta.Text = value.ToString(); + } + } + /// + /// Nuovo num pz per pallet + /// + protected int pzPallet + { + get + { + int answ = 1; + try + { + answ = Convert.ToInt32(txtNewPzPallet.Text.Trim()); + } + catch + { } + // controllo sia > 0... + if (answ < 1) + { + answ = 1; + } + + return answ; + } + set + { + txtNewPzPallet.Text = value.ToString(); + // verifico SE sia editabile... + bool nPzEnab = false; + try + { + DS_ProdTempi.DatiMacchineDataTable tabDatiMacc = DataLayerObj.taDatiMacchine.getByIdx(idxMaccEdit); + if (tabDatiMacc != null && tabDatiMacc.Count > 0) + { + DS_ProdTempi.DatiMacchineRow rigaMacc = tabDatiMacc[0]; + nPzEnab = !rigaMacc.hasCounter; + } + } + catch + { } + txtNewPzPallet.Enabled = nPzEnab; + } + } + protected void btnCancel_Click(object sender, EventArgs e) + { + updateCtrl(); + } + + /// + /// Aggiorno Gridview + /// + private void updateGrView() + { + grView.DataBind(); + } + + /// + /// IdxMacchina filtrata + /// + protected string idxMacc + { + get + { + return lblIdxMacc.Text; + } + set + { + lblIdxMacc.Text = value; + } + } + /// + /// IdxMacchina in EDIT + /// + protected string idxMaccEdit + { + get + { + return hfIdxMacc.Value; + } + set + { + hfIdxMacc.Value = value; + } + } + /// + /// Nome filtrata + /// + protected string NomeMacc + { + get + { + return lblNomeMacc.Text; + } + set + { + lblNomeMacc.Text = value; + } + } + /// + /// CodArt filtrato + /// + protected string CodArt + { + get + { + return lblCodArt.Text; + } + set + { + lblCodArt.Text = value; + } + } + /// + /// CodArt filtrato + /// + protected string DescArt + { + get + { + return lblDescArt.Text; + } + set + { + lblDescArt.Text = value; + } + } + + /// + /// Selezionato un condominio --> riporto selezione + /// + /// + /// + protected void lbtSelArt_Click(object sender, EventArgs e) + { + LinkButton lb = (LinkButton)sender; + // imposto articolo, splittando + string[] artData = lb.CommandArgument.Split('|'); + CodArt = artData[0]; + DescArt = artData[1]; + updateGrView(); + } + /// + /// Selezionato un condominio --> riporto selezione + /// + /// + /// + protected void lbtSelMacc_Click(object sender, EventArgs e) + { + LinkButton lb = (LinkButton)sender; + // imposto articolo, splittando + string[] maccData = lb.CommandArgument.Split('|'); + idxMacc = maccData[0]; + NomeMacc = maccData[1]; + updateGrView(); + } + + protected void lbtResArt_Click(object sender, EventArgs e) + { + CodArt = ""; + DescArt = ""; + updateGrView(); + } + + protected void lbtResMacc_Click(object sender, EventArgs e) + { + idxMacc = ""; + NomeMacc = ""; + updateGrView(); + } } - } } \ No newline at end of file diff --git a/MP-ADM/WebUserControls/mod_gestioneODL.ascx.designer.cs b/MP-ADM/WebUserControls/mod_gestioneODL.ascx.designer.cs index 519c3db7..6932ff3e 100644 --- a/MP-ADM/WebUserControls/mod_gestioneODL.ascx.designer.cs +++ b/MP-ADM/WebUserControls/mod_gestioneODL.ascx.designer.cs @@ -7,11 +7,13 @@ // //------------------------------------------------------------------------------ -namespace MoonPro_site.WebUserControls { - - - public partial class mod_gestioneODL { - +namespace MoonPro_site.WebUserControls +{ + + + public partial class mod_gestioneODL + { + /// /// Controllo lbtResArt. /// @@ -20,7 +22,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.LinkButton lbtResArt; - + /// /// Controllo lblCodArt. /// @@ -29,7 +31,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.Label lblCodArt; - + /// /// Controllo lblDescArt. /// @@ -38,7 +40,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.Label lblDescArt; - + /// /// Controllo lbtResMacc. /// @@ -47,7 +49,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.LinkButton lbtResMacc; - + /// /// Controllo lblNomeMacc. /// @@ -56,7 +58,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.Label lblNomeMacc; - + /// /// Controllo lblIdxMacc. /// @@ -65,7 +67,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.Label lblIdxMacc; - + /// /// Controllo lbtNewODL. /// @@ -74,7 +76,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.LinkButton lbtNewODL; - + /// /// Controllo mod_newOdl1. /// @@ -83,7 +85,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::MoonPro_site.WebUserControls.mod_newOdl mod_newOdl1; - + /// /// Controllo divEditQta. /// @@ -92,7 +94,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.HtmlControls.HtmlGenericControl divEditQta; - + /// /// Controllo btnOk. /// @@ -101,7 +103,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.Button btnOk; - + /// /// Controllo txtNewQta. /// @@ -110,7 +112,16 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.TextBox txtNewQta; - + + /// + /// Controllo hfIdxMacc. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.HiddenField hfIdxMacc; + /// /// Controllo txtNewPzPallet. /// @@ -119,7 +130,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.TextBox txtNewPzPallet; - + /// /// Controllo btnCancel. /// @@ -128,7 +139,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.Button btnCancel; - + /// /// Controllo grView. /// @@ -137,7 +148,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.GridView grView; - + /// /// Controllo ods. /// @@ -146,7 +157,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.ObjectDataSource ods; - + /// /// Controllo lblNumRec. /// @@ -155,7 +166,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.Label lblNumRec; - + /// /// Controllo lblWarning. /// @@ -164,7 +175,7 @@ namespace MoonPro_site.WebUserControls { /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. /// protected global::System.Web.UI.WebControls.Label lblWarning; - + /// /// Controllo txtPageSize. /// From ae7f5f1cde16bb169ecac211fddb45a26d75c219 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Mon, 7 Sep 2020 18:34:06 +0200 Subject: [PATCH 18/18] update gestione ricalcolo al passato x TC / numPzPallet ove permesso --- .../WebUserControls/mod_gestioneODL.ascx.cs | 49 +++++++++++++------ MapoDb/DS_ProdTempi.xsd | 12 +++++ MapoDb/DS_ProdTempi.xss | 32 ++++++------ MapoDb/DS_ProdTempi1.Designer.cs | 43 +++++++++++++++- 4 files changed, 105 insertions(+), 31 deletions(-) diff --git a/MP-ADM/WebUserControls/mod_gestioneODL.ascx.cs b/MP-ADM/WebUserControls/mod_gestioneODL.ascx.cs index 10b55ed2..5676381b 100644 --- a/MP-ADM/WebUserControls/mod_gestioneODL.ascx.cs +++ b/MP-ADM/WebUserControls/mod_gestioneODL.ascx.cs @@ -360,6 +360,19 @@ namespace MoonPro_site.WebUserControls if (idxOdlSel > 0) { DataLayerObj.taODL.updateQta(numPz, pzPallet, idxOdlSel); + // se abilitata modifica numPzPallet --> chiamo stored update! + if (numPzEditable) + { + // recupero da config il max... + int numPzMaxFix = 50; + try + { + numPzMaxFix = memLayer.ML.cdvi("numPzMaxFix"); + } + catch + { } + DataLayerObj.taTempiCicloRilevati.TC_fixFromODL(idxOdlSel, numPzMaxFix); + } } updateCtrl(); } @@ -369,6 +382,7 @@ namespace MoonPro_site.WebUserControls divEditQta.Visible = false; grView.SelectedIndex = -1; grView.DataBind(); + idxMaccEdit = ""; } /// /// idxOdl selezionato @@ -408,6 +422,25 @@ namespace MoonPro_site.WebUserControls txtNewQta.Text = value.ToString(); } } + protected bool numPzEditable + { + get + { + bool answ = false; + try + { + DS_ProdTempi.DatiMacchineDataTable tabDatiMacc = DataLayerObj.taDatiMacchine.getByIdx(idxMaccEdit); + if (tabDatiMacc != null && tabDatiMacc.Count > 0) + { + DS_ProdTempi.DatiMacchineRow rigaMacc = tabDatiMacc[0]; + answ = !rigaMacc.hasCounter; + } + } + catch + { } + return answ; + } + } /// /// Nuovo num pz per pallet /// @@ -433,20 +466,8 @@ namespace MoonPro_site.WebUserControls set { txtNewPzPallet.Text = value.ToString(); - // verifico SE sia editabile... - bool nPzEnab = false; - try - { - DS_ProdTempi.DatiMacchineDataTable tabDatiMacc = DataLayerObj.taDatiMacchine.getByIdx(idxMaccEdit); - if (tabDatiMacc != null && tabDatiMacc.Count > 0) - { - DS_ProdTempi.DatiMacchineRow rigaMacc = tabDatiMacc[0]; - nPzEnab = !rigaMacc.hasCounter; - } - } - catch - { } - txtNewPzPallet.Enabled = nPzEnab; + // verifico SE sia editabile... e visualizzo di conseguenza + txtNewPzPallet.Enabled = numPzEditable; } } protected void btnCancel_Click(object sender, EventArgs e) diff --git a/MapoDb/DS_ProdTempi.xsd b/MapoDb/DS_ProdTempi.xsd index 8200018e..31631391 100644 --- a/MapoDb/DS_ProdTempi.xsd +++ b/MapoDb/DS_ProdTempi.xsd @@ -192,6 +192,18 @@ SELECT IdxMacchina, CodArticolo, DataOraRif, TCMedio, PzProd FROM TempiCicloRile + + + + dbo.stp_TC_fixFromODL + + + + + + + + diff --git a/MapoDb/DS_ProdTempi.xss b/MapoDb/DS_ProdTempi.xss index 3da72408..17698765 100644 --- a/MapoDb/DS_ProdTempi.xss +++ b/MapoDb/DS_ProdTempi.xss @@ -6,29 +6,29 @@ --> - - - + + + - + - - + + - + - - - - - + + + + + - - - + + + - + \ No newline at end of file diff --git a/MapoDb/DS_ProdTempi1.Designer.cs b/MapoDb/DS_ProdTempi1.Designer.cs index f7ab1876..5d3ebed0 100644 --- a/MapoDb/DS_ProdTempi1.Designer.cs +++ b/MapoDb/DS_ProdTempi1.Designer.cs @@ -16284,7 +16284,7 @@ SELECT IdxMacchina, CodArticolo, DataOraRif, TCMedio, PzProd FROM TempiCicloRile [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] private void InitCommandCollection() { - this._commandCollection = new global::System.Data.SqlClient.SqlCommand[10]; + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[11]; this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); this._commandCollection[0].Connection = this.Connection; this._commandCollection[0].CommandText = "SELECT IdxMacchina, CodArticolo, DataOraRif, TCMedio, PzProd FROM dbo.TempiCicloR" + @@ -16368,6 +16368,13 @@ SELECT IdxMacchina, CodArticolo, DataOraRif, TCMedio, PzProd FROM TempiCicloRile this._commandCollection[9].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IdxMacchina", global::System.Data.SqlDbType.NVarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[9].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Inizio", global::System.Data.SqlDbType.DateTime, 8, global::System.Data.ParameterDirection.Input, 23, 3, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[9].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Fine", global::System.Data.SqlDbType.DateTime, 8, global::System.Data.ParameterDirection.Input, 23, 3, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[10] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[10].Connection = this.Connection; + this._commandCollection[10].CommandText = "dbo.stp_TC_fixFromODL"; + this._commandCollection[10].CommandType = global::System.Data.CommandType.StoredProcedure; + this._commandCollection[10].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@RETURN_VALUE", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.ReturnValue, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[10].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IdxODL", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[10].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@PzMaxFix", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -16867,6 +16874,40 @@ SELECT IdxMacchina, CodArticolo, DataOraRif, TCMedio, PzProd FROM TempiCicloRile return ((object)(returnValue)); } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "16.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int TC_fixFromODL(global::System.Nullable IdxODL, global::System.Nullable PzMaxFix) { + global::System.Data.SqlClient.SqlCommand command = this.CommandCollection[10]; + if ((IdxODL.HasValue == true)) { + command.Parameters[1].Value = ((int)(IdxODL.Value)); + } + else { + command.Parameters[1].Value = global::System.DBNull.Value; + } + if ((PzMaxFix.HasValue == true)) { + command.Parameters[2].Value = ((int)(PzMaxFix.Value)); + } + else { + command.Parameters[2].Value = global::System.DBNull.Value; + } + global::System.Data.ConnectionState previousConnectionState = command.Connection.State; + if (((command.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + command.Connection.Open(); + } + int returnValue; + try { + returnValue = command.ExecuteNonQuery(); + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + command.Connection.Close(); + } + } + return returnValue; + } } ///