Пример #1
0
        private void initClass()
        {
            DataSetName = "dsmeta";
            Prefix      = "";
            Namespace   = "http://tempuri.org/dsmeta.xsd";

            #region create DataTables
            //////////////////// ESTIMATEDETAIL /////////////////////////////////
            var testimatedetail = new estimatedetailTable();
            testimatedetail.addBaseColumns("idestimkind", "nestim", "rownum", "yestim", "annotations", "ct", "cu", "detaildescription", "discount", "idinc_iva", "idinc_taxable", "idsor1", "idsor2", "idsor3", "idupb", "lt", "lu", "ninvoiced", "number", "start", "stop", "tax", "taxable", "taxrate", "toinvoice", "idaccmotive", "idivakind", "idreg", "idgroup", "competencystart", "competencystop", "idaccmotiveannulment", "epkind", "idrevenuepartition", "idupb_iva", "idepacc", "idlist", "cigcode", "iduniqueformcode", "nform", "idfinmotive", "flag", "proceedsexpiring", "idsor_siope", "idepacc_pre");
            Tables.Add(testimatedetail);
            testimatedetail.defineKey("idestimkind", "nestim", "rownum", "yestim");

            //////////////////// UPB /////////////////////////////////
            var tupb = new upbTable();
            tupb.addBaseColumns("idupb", "active", "assured", "codeupb", "ct", "cu", "expiration", "granted", "idman", "idunderwriter", "lt", "lu", "paridupb", "previousappropriation", "previousassessment", "printingorder", "requested", "rtf", "title", "txt", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05");
            Tables.Add(tupb);
            tupb.defineKey("idupb");

            //////////////////// IVAKIND /////////////////////////////////
            var tivakind = new ivakindTable();
            tivakind.addBaseColumns("idivakind", "ct", "cu", "description", "lt", "lu", "rate", "unabatabilitypercentage", "active", "flag");
            Tables.Add(tivakind);
            tivakind.defineKey("idivakind");

            //////////////////// INVOICEDETAIL /////////////////////////////////
            var tinvoicedetail = new invoicedetailTable();
            tinvoicedetail.addBaseColumns("idinvkind", "ninv", "rownum", "yinv", "annotations", "competencystart", "competencystop", "ct", "cu", "detaildescription", "discount", "idaccmotive", "idivakind", "idmankind", "idsor1", "idsor2", "idsor3", "idupb", "lt", "lu", "manrownum", "nman", "number", "tax", "taxable", "unabatable", "yman", "idestimkind", "yestim", "nestim", "estimrownum", "idgroup");
            tinvoicedetail.defineColumn("!tipodocumento", typeof(string));
            Tables.Add(tinvoicedetail);
            tinvoicedetail.defineKey("idinvkind", "ninv", "rownum", "yinv");

            //////////////////// INVOICEKIND /////////////////////////////////
            var tinvoicekind = new invoicekindTable();
            tinvoicekind.addBaseColumns("idinvkind", "ct", "cu", "description", "lt", "lu", "active");
            Tables.Add(tinvoicekind);
            tinvoicekind.defineKey("idinvkind");

            //////////////////// SORTING1 /////////////////////////////////
            var tsorting1 = new sortingTable();
            tsorting1.TableName = "sorting1";
            tsorting1.addBaseColumns("idsor", "idsorkind", "ct", "cu", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5", "description", "flagnodate", "lt", "lu", "movkind", "nlevel", "paridsor", "printingorder", "rtf", "sortcode", "txt");
            tsorting1.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting1);
            tsorting1.defineKey("idsor");

            //////////////////// SORTING2 /////////////////////////////////
            var tsorting2 = new sortingTable();
            tsorting2.TableName = "sorting2";
            tsorting2.addBaseColumns("idsor", "idsorkind", "ct", "cu", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5", "description", "flagnodate", "lt", "lu", "movkind", "nlevel", "paridsor", "printingorder", "rtf", "sortcode", "txt");
            tsorting2.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting2);
            tsorting2.defineKey("idsor");

            //////////////////// SORTING3 /////////////////////////////////
            var tsorting3 = new sortingTable();
            tsorting3.TableName = "sorting3";
            tsorting3.addBaseColumns("idsor", "idsorkind", "ct", "cu", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5", "description", "flagnodate", "lt", "lu", "movkind", "nlevel", "paridsor", "printingorder", "rtf", "sortcode", "txt");
            tsorting3.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting3);
            tsorting3.defineKey("idsor");

            //////////////////// ACCMOTIVEAPPLIED /////////////////////////////////
            var taccmotiveapplied = new accmotiveappliedTable();
            taccmotiveapplied.addBaseColumns("idaccmotive", "paridaccmotive", "codemotive", "motive", "cu", "ct", "lu", "lt", "active", "idepoperation", "epoperation", "in_use", "flagdep", "flagamm");
            Tables.Add(taccmotiveapplied);
            taccmotiveapplied.defineKey("idaccmotive");

            //////////////////// INCOME_IMPONIBILE /////////////////////////////////
            var tincome_imponibile = new incomeTable();
            tincome_imponibile.TableName = "income_imponibile";
            tincome_imponibile.addBaseColumns("idinc", "nphase", "ymov", "nmov", "parentidinc", "idreg", "idman", "doc", "docdate", "description", "autokind", "autocode", "idpayment", "expiration", "adate", "cu", "ct", "lu", "lt");
            tincome_imponibile.ExtendedProperties["TableForReading"] = "income";
            Tables.Add(tincome_imponibile);
            tincome_imponibile.defineKey("idinc");

            //////////////////// INCOME_IVA /////////////////////////////////
            var tincome_iva = new incomeTable();
            tincome_iva.TableName = "income_iva";
            tincome_iva.addBaseColumns("idinc", "nphase", "ymov", "nmov", "parentidinc", "idreg", "idman", "doc", "docdate", "description", "autokind", "autocode", "idpayment", "expiration", "adate", "cu", "ct", "lu", "lt");
            tincome_iva.ExtendedProperties["TableForReading"] = "income";
            Tables.Add(tincome_iva);
            tincome_iva.defineKey("idinc");

            //////////////////// REGISTRYMAINVIEW /////////////////////////////////
            var tregistrymainview = new MetaTable("registrymainview");
            tregistrymainview.defineColumn("idreg", typeof(int), false);
            tregistrymainview.defineColumn("title", typeof(string), false);
            tregistrymainview.defineColumn("idregistryclass", typeof(string));
            tregistrymainview.defineColumn("registryclass", typeof(string));
            tregistrymainview.defineColumn("surname", typeof(string));
            tregistrymainview.defineColumn("forename", typeof(string));
            tregistrymainview.defineColumn("cf", typeof(string));
            tregistrymainview.defineColumn("p_iva", typeof(string));
            tregistrymainview.defineColumn("residence", typeof(int), false);
            tregistrymainview.defineColumn("residencekind", typeof(string));
            tregistrymainview.defineColumn("annotation", typeof(string));
            tregistrymainview.defineColumn("birthdate", typeof(DateTime));
            tregistrymainview.defineColumn("idcity", typeof(int));
            tregistrymainview.defineColumn("city", typeof(string));
            tregistrymainview.defineColumn("gender", typeof(string));
            tregistrymainview.defineColumn("foreigncf", typeof(string));
            tregistrymainview.defineColumn("idtitle", typeof(string));
            tregistrymainview.defineColumn("qualification", typeof(string));
            tregistrymainview.defineColumn("idmaritalstatus", typeof(string));
            tregistrymainview.defineColumn("maritalstatus", typeof(string));
            tregistrymainview.defineColumn("sortcode", typeof(string));
            tregistrymainview.defineColumn("registrykind", typeof(string));
            tregistrymainview.defineColumn("human", typeof(string));
            tregistrymainview.defineColumn("active", typeof(string), false);
            tregistrymainview.defineColumn("badgecode", typeof(string));
            tregistrymainview.defineColumn("maritalsurname", typeof(string));
            tregistrymainview.defineColumn("idcategory", typeof(string));
            tregistrymainview.defineColumn("extmatricula", typeof(string));
            tregistrymainview.defineColumn("idcentralizedcategory", typeof(string));
            tregistrymainview.defineColumn("cu", typeof(string), false);
            tregistrymainview.defineColumn("ct", typeof(DateTime), false);
            tregistrymainview.defineColumn("lu", typeof(string), false);
            tregistrymainview.defineColumn("lt", typeof(DateTime), false);
            tregistrymainview.defineColumn("location", typeof(string));
            tregistrymainview.defineColumn("idnation", typeof(int));
            tregistrymainview.defineColumn("nation", typeof(string));
            Tables.Add(tregistrymainview);
            tregistrymainview.defineKey("idreg");

            //////////////////// ACCMOTIVEAPPLIEDANNULMENT /////////////////////////////////
            var taccmotiveappliedannulment = new MetaTable("accmotiveappliedannulment");
            taccmotiveappliedannulment.defineColumn("idaccmotive", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("paridaccmotive", typeof(string));
            taccmotiveappliedannulment.defineColumn("codemotive", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("motive", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("cu", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("ct", typeof(DateTime), false);
            taccmotiveappliedannulment.defineColumn("lu", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("lt", typeof(DateTime), false);
            taccmotiveappliedannulment.defineColumn("active", typeof(string));
            taccmotiveappliedannulment.defineColumn("idepoperation", typeof(string));
            taccmotiveappliedannulment.defineColumn("epoperation", typeof(string));
            taccmotiveappliedannulment.defineColumn("in_use", typeof(string));
            taccmotiveappliedannulment.defineColumn("flagdep", typeof(string));
            taccmotiveappliedannulment.defineColumn("flagamm", typeof(string));
            Tables.Add(taccmotiveappliedannulment);
            taccmotiveappliedannulment.defineKey("idaccmotive");

            //////////////////// REVENUEPARTITION /////////////////////////////////
            var trevenuepartition = new MetaTable("revenuepartition");
            trevenuepartition.defineColumn("idrevenuepartition", typeof(int), false);
            trevenuepartition.defineColumn("title", typeof(string));
            trevenuepartition.defineColumn("kind", typeof(string));
            trevenuepartition.defineColumn("lt", typeof(DateTime));
            trevenuepartition.defineColumn("lu", typeof(string));
            trevenuepartition.defineColumn("ct", typeof(DateTime));
            trevenuepartition.defineColumn("cu", typeof(string));
            trevenuepartition.defineColumn("revenuepartitioncode", typeof(string));
            trevenuepartition.defineColumn("active", typeof(string));
            trevenuepartition.defineColumn("description", typeof(string));
            Tables.Add(trevenuepartition);
            trevenuepartition.defineKey("idrevenuepartition");

            //////////////////// UPB_IVA /////////////////////////////////
            var tupb_iva = new upbTable();
            tupb_iva.TableName = "upb_iva";
            tupb_iva.addBaseColumns("idupb", "active", "assured", "codeupb", "ct", "cu", "expiration", "granted", "lt", "lu", "paridupb", "previousappropriation", "previousassessment", "printingorder", "requested", "rtf", "title", "txt", "idman", "idunderwriter", "cupcode", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "flagactivity", "flagkind", "newcodeupb", "idtreasurer", "start", "stop", "cigcode", "idepupbkind");
            tupb_iva.ExtendedProperties["TableForReading"] = "upb";
            Tables.Add(tupb_iva);
            tupb_iva.defineKey("idupb");

            //////////////////// LISTVIEW /////////////////////////////////
            var tlistview = new MetaTable("listview");
            tlistview.defineColumn("idlist", typeof(int), false);
            tlistview.defineColumn("description", typeof(string), false);
            tlistview.defineColumn("intcode", typeof(string), false);
            tlistview.defineColumn("intbarcode", typeof(string));
            tlistview.defineColumn("extcode", typeof(string));
            tlistview.defineColumn("extbarcode", typeof(string));
            tlistview.defineColumn("validitystop", typeof(DateTime));
            tlistview.defineColumn("active", typeof(string), false);
            tlistview.defineColumn("idpackage", typeof(int));
            tlistview.defineColumn("package", typeof(string));
            tlistview.defineColumn("idunit", typeof(int));
            tlistview.defineColumn("unit", typeof(string));
            tlistview.defineColumn("unitsforpackage", typeof(int));
            tlistview.defineColumn("has_expiry", typeof(string), false);
            tlistview.defineColumn("idlistclass", typeof(string), false);
            tlistview.defineColumn("codelistclass", typeof(string), false);
            tlistview.defineColumn("listclass", typeof(string), false);
            tlistview.defineColumn("pic", typeof(Byte[]));
            tlistview.defineColumn("timesupply", typeof(int));
            tlistview.defineColumn("nmaxorder", typeof(decimal));
            tlistview.defineColumn("authrequired", typeof(string));
            tlistview.defineColumn("assetkind", typeof(string));
            tlistview.defineColumn("flagvisiblekind", typeof(byte));
            Tables.Add(tlistview);
            tlistview.defineKey("idlist");

            //////////////////// LISTCLASS /////////////////////////////////
            var tlistclass = new MetaTable("listclass");
            tlistclass.defineColumn("idlistclass", typeof(string), false);
            tlistclass.defineColumn("active", typeof(string), false);
            tlistclass.defineColumn("codelistclass", typeof(string), false);
            tlistclass.defineColumn("paridlistclass", typeof(string));
            tlistclass.defineColumn("printingorder", typeof(string), false);
            tlistclass.defineColumn("title", typeof(string), false);
            tlistclass.defineColumn("rtf", typeof(Byte[]));
            tlistclass.defineColumn("txt", typeof(string));
            tlistclass.defineColumn("ct", typeof(DateTime), false);
            tlistclass.defineColumn("cu", typeof(string), false);
            tlistclass.defineColumn("lt", typeof(DateTime), false);
            tlistclass.defineColumn("lu", typeof(string), false);
            tlistclass.defineColumn("authrequired", typeof(string));
            tlistclass.defineColumn("idaccmotive", typeof(string));
            tlistclass.defineColumn("idinv", typeof(int));
            tlistclass.defineColumn("assetkind", typeof(string));
            tlistclass.defineColumn("va3type", typeof(string));
            tlistclass.defineColumn("flag", typeof(int));
            tlistclass.defineColumn("idintrastatsupplymethod", typeof(int));
            tlistclass.defineColumn("intra12operationkind", typeof(string));
            tlistclass.defineColumn("flagvisiblekind", typeof(byte));
            Tables.Add(tlistclass);
            tlistclass.defineKey("idlistclass");

            //////////////////// EPACC /////////////////////////////////
            var tepacc = new MetaTable("epacc");
            tepacc.defineColumn("idepacc", typeof(int), false);
            tepacc.defineColumn("adate", typeof(DateTime), false);
            tepacc.defineColumn("ct", typeof(DateTime), false);
            tepacc.defineColumn("cu", typeof(string), false);
            tepacc.defineColumn("description", typeof(string), false);
            tepacc.defineColumn("doc", typeof(string));
            tepacc.defineColumn("docdate", typeof(DateTime));
            tepacc.defineColumn("idman", typeof(int));
            tepacc.defineColumn("idreg", typeof(int));
            tepacc.defineColumn("idrelated", typeof(string));
            tepacc.defineColumn("lt", typeof(DateTime), false);
            tepacc.defineColumn("lu", typeof(string), false);
            tepacc.defineColumn("nepacc", typeof(int), false);
            tepacc.defineColumn("nphase", typeof(short), false);
            tepacc.defineColumn("paridepacc", typeof(int));
            tepacc.defineColumn("rtf", typeof(Byte[]));
            tepacc.defineColumn("start", typeof(DateTime));
            tepacc.defineColumn("stop", typeof(DateTime));
            tepacc.defineColumn("txt", typeof(string));
            tepacc.defineColumn("yepacc", typeof(short), false);
            tepacc.defineColumn("flagvariation", typeof(string));
            Tables.Add(tepacc);
            tepacc.defineKey("idepacc");

            //////////////////// FINMOTIVE_INCOME /////////////////////////////////
            var tfinmotive_income = new MetaTable("finmotive_income");
            tfinmotive_income.defineColumn("idfinmotive", typeof(string), false);
            tfinmotive_income.defineColumn("active", typeof(string), false);
            tfinmotive_income.defineColumn("codemotive", typeof(string), false);
            tfinmotive_income.defineColumn("paridfinmotive", typeof(string));
            tfinmotive_income.defineColumn("title", typeof(string), false);
            tfinmotive_income.defineColumn("lt", typeof(DateTime));
            tfinmotive_income.defineColumn("lu", typeof(string));
            tfinmotive_income.defineColumn("ct", typeof(DateTime));
            tfinmotive_income.defineColumn("cu", typeof(string));
            tfinmotive_income.ExtendedProperties["TableForReading"] = "finmotive";
            Tables.Add(tfinmotive_income);
            tfinmotive_income.defineKey("idfinmotive");

            //////////////////// SORTING_SIOPE /////////////////////////////////
            var tsorting_siope = new sortingTable();
            tsorting_siope.TableName = "sorting_siope";
            tsorting_siope.addBaseColumns("ct", "cu", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5", "description", "flagnodate", "lt", "lu", "movkind", "printingorder", "rtf", "sortcode", "txt", "idsorkind", "idsor", "paridsor", "nlevel", "start", "stop", "email");
            tsorting_siope.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting_siope);
            tsorting_siope.defineKey("idsor");

            //////////////////// PRE_EPACC /////////////////////////////////
            var tpre_epacc = new MetaTable("pre_epacc");
            tpre_epacc.defineColumn("idepacc", typeof(int), false);
            tpre_epacc.defineColumn("adate", typeof(DateTime), false);
            tpre_epacc.defineColumn("ct", typeof(DateTime), false);
            tpre_epacc.defineColumn("cu", typeof(string), false);
            tpre_epacc.defineColumn("description", typeof(string), false);
            tpre_epacc.defineColumn("doc", typeof(string));
            tpre_epacc.defineColumn("docdate", typeof(DateTime));
            tpre_epacc.defineColumn("idman", typeof(int));
            tpre_epacc.defineColumn("idreg", typeof(int));
            tpre_epacc.defineColumn("idrelated", typeof(string));
            tpre_epacc.defineColumn("lt", typeof(DateTime), false);
            tpre_epacc.defineColumn("lu", typeof(string), false);
            tpre_epacc.defineColumn("nepacc", typeof(int), false);
            tpre_epacc.defineColumn("nphase", typeof(short), false);
            tpre_epacc.defineColumn("paridepacc", typeof(int));
            tpre_epacc.defineColumn("rtf", typeof(Byte[]));
            tpre_epacc.defineColumn("start", typeof(DateTime));
            tpre_epacc.defineColumn("stop", typeof(DateTime));
            tpre_epacc.defineColumn("txt", typeof(string));
            tpre_epacc.defineColumn("yepacc", typeof(short), false);
            tpre_epacc.defineColumn("flagvariation", typeof(string));
            tpre_epacc.ExtendedProperties["TableForReading"] = "epacc";
            Tables.Add(tpre_epacc);
            tpre_epacc.defineKey("idepacc");

            #endregion


            #region DataRelation creation
            var cPar   = new [] { estimatedetail.Columns["idestimkind"], estimatedetail.Columns["nestim"], estimatedetail.Columns["rownum"], estimatedetail.Columns["yestim"] };
            var cChild = new [] { invoicedetail.Columns["idestimkind"], invoicedetail.Columns["nestim"], invoicedetail.Columns["estimrownum"], invoicedetail.Columns["yestim"] };
            Relations.Add(new DataRelation("estimatedetailinvoicedetail", cPar, cChild, false));

            this.defineRelation("invoicekindinvoicedetail", "invoicekind", "invoicedetail", "idinvkind");
            this.defineRelation("FK_epacc_estimatedetail", "epacc", "estimatedetail", "idepacc");
            this.defineRelation("FK_listview_estimatedetail", "listview", "estimatedetail", "idlist");
            cPar   = new [] { upb_iva.Columns["idupb"] };
            cChild = new [] { estimatedetail.Columns["idupb_iva"] };
            Relations.Add(new DataRelation("FK_upb_iva_estimatedetail", cPar, cChild, false));

            this.defineRelation("registrymainviewestimatedetail", "registrymainview", "estimatedetail", "idreg");
            cPar   = new [] { income_iva.Columns["idinc"] };
            cChild = new [] { estimatedetail.Columns["idinc_iva"] };
            Relations.Add(new DataRelation("income_ivaestimatedetail", cPar, cChild, false));

            cPar   = new [] { income_imponibile.Columns["idinc"] };
            cChild = new [] { estimatedetail.Columns["idinc_taxable"] };
            Relations.Add(new DataRelation("income_imponibileestimatedetail", cPar, cChild, false));

            cPar   = new [] { sorting3.Columns["idsor"] };
            cChild = new [] { estimatedetail.Columns["idsor3"] };
            Relations.Add(new DataRelation("sorting3invoicedetail", cPar, cChild, false));

            cPar   = new [] { sorting2.Columns["idsor"] };
            cChild = new [] { estimatedetail.Columns["idsor2"] };
            Relations.Add(new DataRelation("sorting2invoicedetail", cPar, cChild, false));

            cPar   = new [] { sorting1.Columns["idsor"] };
            cChild = new [] { estimatedetail.Columns["idsor1"] };
            Relations.Add(new DataRelation("sorting1invoicedetail", cPar, cChild, false));

            this.defineRelation("upbestimatedetail", "upb", "estimatedetail", "idupb");
            this.defineRelation("ivakindestimatedetail", "ivakind", "estimatedetail", "idivakind");
            this.defineRelation("accmotiveappliedestimatedetail", "accmotiveapplied", "estimatedetail", "idaccmotive");
            cPar   = new [] { accmotiveappliedannulment.Columns["idaccmotive"] };
            cChild = new [] { estimatedetail.Columns["idaccmotiveannulment"] };
            Relations.Add(new DataRelation("accmotiveappliedannulment_estimatedetail", cPar, cChild, false));

            this.defineRelation("revenuepartition_estimatedetail", "revenuepartition", "estimatedetail", "idrevenuepartition");
            this.defineRelation("finmotive_income_estimatedetail", "finmotive_income", "estimatedetail", "idfinmotive");
            cPar   = new [] { sorting_siope.Columns["idsor"] };
            cChild = new [] { estimatedetail.Columns["idsor_siope"] };
            Relations.Add(new DataRelation("sorting_siope_estimatedetail", cPar, cChild, false));

            cPar   = new [] { pre_epacc.Columns["idepacc"] };
            cChild = new [] { estimatedetail.Columns["idepacc_pre"] };
            Relations.Add(new DataRelation("pre_epacc_estimatedetail", cPar, cChild, false));

            #endregion
        }
Пример #2
0
        private void initClass()
        {
            DataSetName = "dsmeta";
            Prefix      = "";
            Namespace   = "http://tempuri.org/dsmeta.xsd";

            #region create DataTables
            //////////////////// IVAKIND /////////////////////////////////
            var tivakind = new ivakindTable();
            tivakind.addBaseColumns("idivakind", "description", "rate", "unabatabilitypercentage", "cu", "ct", "lu", "lt", "active", "idivataxablekind", "flag", "idfenature");
            Tables.Add(tivakind);
            tivakind.defineKey("idivakind");

            //////////////////// INVOICEDETAIL /////////////////////////////////
            var tinvoicedetail = new invoicedetailTable();
            tinvoicedetail.addBaseColumns("idinvkind", "yinv", "ninv", "rownum", "idivakind", "detaildescription", "annotations", "taxable", "tax", "unabatable", "cu", "ct", "lu", "lt", "discount", "idmankind", "yman", "nman", "manrownum", "number", "idupb", "idsor1", "idsor2", "idsor3", "competencystart", "competencystop", "paymentcompetency", "idaccmotive", "idestimkind", "yestim", "nestim", "estimrownum", "idexp_iva", "idexp_taxable", "idinc_iva", "idinc_taxable", "idgroup", "yinv_main", "ninv_main", "va3type", "idintrastatcode", "idintrastatmeasure", "weight", "intrastatoperationkind", "idintrastatservice", "idintrastatsupplymethod", "idlist", "idunit", "idpackage", "unitsforpackage", "npackage", "flag", "exception12", "intra12operationkind", "move12", "idupb_iva", "idinvkind_main", "leasing", "usedmodesospesometro", "resetresidualmandate", "idfetransfer", "fereferencerule", "cupcode", "cigcode", "idcostpartition", "idpccdebitmotive", "idpccdebitstatus", "expensekind", "rounding", "idepexp", "idepacc", "flagbit", "idfinmotive", "iduniqueformcode", "ycon", "ncon", "codicetipo", "codicevalore", "idsor_siope", "idepexp_pre");
            Tables.Add(tinvoicedetail);
            tinvoicedetail.defineKey("idinvkind", "yinv", "ninv", "rownum");

            //////////////////// SORTING1 /////////////////////////////////
            var tsorting1 = new sortingTable();
            tsorting1.TableName = "sorting1";
            tsorting1.addBaseColumns("idsorkind", "idsor", "sortcode", "paridsor", "nlevel", "description", "txt", "rtf", "cu", "ct", "lu", "lt", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "flagnodate", "movkind", "printingorder", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5");
            tsorting1.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting1);
            tsorting1.defineKey("idsor");

            //////////////////// SORTING2 /////////////////////////////////
            var tsorting2 = new sortingTable();
            tsorting2.TableName = "sorting2";
            tsorting2.addBaseColumns("idsorkind", "idsor", "sortcode", "paridsor", "nlevel", "description", "txt", "rtf", "cu", "ct", "lu", "lt", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "flagnodate", "movkind", "printingorder", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5");
            tsorting2.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting2);
            tsorting2.defineKey("idsor");

            //////////////////// SORTING3 /////////////////////////////////
            var tsorting3 = new sortingTable();
            tsorting3.TableName = "sorting3";
            tsorting3.addBaseColumns("idsorkind", "idsor", "sortcode", "paridsor", "nlevel", "description", "txt", "rtf", "cu", "ct", "lu", "lt", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "flagnodate", "movkind", "printingorder", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5");
            tsorting3.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting3);
            tsorting3.defineKey("idsor");

            //////////////////// UPB /////////////////////////////////
            var tupb = new upbTable();
            tupb.addBaseColumns("idupb", "codeupb", "title", "paridupb", "idunderwriter", "idman", "requested", "granted", "previousappropriation", "expiration", "txt", "rtf", "cu", "ct", "lu", "lt", "assured", "printingorder", "active");
            Tables.Add(tupb);
            tupb.defineKey("idupb");

            //////////////////// MANDATEKIND /////////////////////////////////
            var tmandatekind = new mandatekindTable();
            tmandatekind.addBaseColumns("idmankind", "description", "idupb", "rtf", "txt", "cu", "ct", "lu", "lt", "active");
            Tables.Add(tmandatekind);
            tmandatekind.defineKey("idmankind");

            //////////////////// ACCMOTIVEAPPLIED /////////////////////////////////
            var taccmotiveapplied = new accmotiveappliedTable();
            taccmotiveapplied.addBaseColumns("idaccmotive", "paridaccmotive", "codemotive", "motive", "cu", "ct", "lu", "lt", "active", "idepoperation", "epoperation", "in_use", "expensekind");
            Tables.Add(taccmotiveapplied);
            taccmotiveapplied.defineKey("idaccmotive");

            //////////////////// ESTIMATEKIND /////////////////////////////////
            var testimatekind = new estimatekindTable();
            testimatekind.addBaseColumns("idestimkind", "active", "ct", "cu", "description", "idupb", "lt", "lu", "rtf", "txt", "email", "faxnumber", "office", "phonenumber");
            Tables.Add(testimatekind);
            testimatekind.defineKey("idestimkind");

            //////////////////// EXPENSE_IVA /////////////////////////////////
            var texpense_iva = new expenseTable();
            texpense_iva.TableName = "expense_iva";
            texpense_iva.addBaseColumns("adate", "ct", "cu", "description", "doc", "docdate", "expiration", "idreg", "lt", "lu", "nmov", "txt", "ymov", "idclawback", "idman", "nphase", "idexp", "parentidexp", "idpayment", "idformerexpense", "autokind", "autocode");
            texpense_iva.ExtendedProperties["TableForReading"] = "expense";
            Tables.Add(texpense_iva);
            texpense_iva.defineKey("idexp");

            //////////////////// EXPENSE_TAXABLE /////////////////////////////////
            var texpense_taxable = new expenseTable();
            texpense_taxable.TableName = "expense_taxable";
            texpense_taxable.addBaseColumns("adate", "ct", "cu", "description", "doc", "docdate", "expiration", "idreg", "lt", "lu", "nmov", "txt", "ymov", "idclawback", "idman", "nphase", "idexp", "parentidexp", "idpayment", "idformerexpense", "autokind", "autocode");
            texpense_taxable.ExtendedProperties["TableForReading"] = "expense";
            Tables.Add(texpense_taxable);
            texpense_taxable.defineKey("idexp");

            //////////////////// INCOME_IVA /////////////////////////////////
            var tincome_iva = new incomeTable();
            tincome_iva.TableName = "income_iva";
            tincome_iva.addBaseColumns("adate", "ct", "cu", "description", "doc", "docdate", "expiration", "idreg", "lt", "lu", "nmov", "ymov", "idman", "nphase", "idpayment", "idinc", "parentidinc", "autokind", "autocode");
            tincome_iva.ExtendedProperties["TableForReading"] = "income";
            Tables.Add(tincome_iva);
            tincome_iva.defineKey("idinc");

            //////////////////// INCOME_TAXABLE /////////////////////////////////
            var tincome_taxable = new incomeTable();
            tincome_taxable.TableName = "income_taxable";
            tincome_taxable.addBaseColumns("adate", "ct", "cu", "description", "doc", "docdate", "expiration", "idreg", "lt", "lu", "nmov", "ymov", "idman", "nphase", "idpayment", "idinc", "parentidinc", "autokind", "autocode");
            tincome_taxable.ExtendedProperties["TableForReading"] = "income";
            Tables.Add(tincome_taxable);
            tincome_taxable.defineKey("idinc");

            //////////////////// INTRASTATMEASURE /////////////////////////////////
            var tintrastatmeasure = new MetaTable("intrastatmeasure");
            tintrastatmeasure.defineColumn("idintrastatmeasure", typeof(int), false);
            tintrastatmeasure.defineColumn("code", typeof(string), false);
            tintrastatmeasure.defineColumn("description", typeof(string), false);
            tintrastatmeasure.defineColumn("lt", typeof(DateTime));
            tintrastatmeasure.defineColumn("lu", typeof(string));
            Tables.Add(tintrastatmeasure);
            tintrastatmeasure.defineKey("idintrastatmeasure");

            //////////////////// INTRASTATCODE /////////////////////////////////
            var tintrastatcode = new MetaTable("intrastatcode");
            tintrastatcode.defineColumn("ayear", typeof(short), false);
            tintrastatcode.defineColumn("code", typeof(string), false);
            tintrastatcode.defineColumn("description", typeof(string), false);
            tintrastatcode.defineColumn("idintrastatmeasure", typeof(int));
            tintrastatcode.defineColumn("lt", typeof(DateTime));
            tintrastatcode.defineColumn("lu", typeof(string));
            tintrastatcode.defineColumn("idintrastatcode", typeof(int), false);
            Tables.Add(tintrastatcode);
            tintrastatcode.defineKey("idintrastatcode");

            //////////////////// INTRASTATSERVICE /////////////////////////////////
            var tintrastatservice = new MetaTable("intrastatservice");
            tintrastatservice.defineColumn("description", typeof(string), false);
            tintrastatservice.defineColumn("code", typeof(string), false);
            tintrastatservice.defineColumn("cu", typeof(string), false);
            tintrastatservice.defineColumn("ct", typeof(DateTime), false);
            tintrastatservice.defineColumn("lu", typeof(string), false);
            tintrastatservice.defineColumn("lt", typeof(DateTime), false);
            tintrastatservice.defineColumn("ayear", typeof(short), false);
            tintrastatservice.defineColumn("idintrastatservice", typeof(int), false, true);
            Tables.Add(tintrastatservice);
            tintrastatservice.defineKey("idintrastatservice");

            //////////////////// INTRASTATSUPPLYMETHOD /////////////////////////////////
            var tintrastatsupplymethod = new MetaTable("intrastatsupplymethod");
            tintrastatsupplymethod.defineColumn("idintrastatsupplymethod", typeof(int), false);
            tintrastatsupplymethod.defineColumn("code", typeof(string), false);
            tintrastatsupplymethod.defineColumn("description", typeof(string), false);
            tintrastatsupplymethod.defineColumn("cu", typeof(string), false);
            tintrastatsupplymethod.defineColumn("ct", typeof(DateTime), false);
            tintrastatsupplymethod.defineColumn("lu", typeof(string), false);
            tintrastatsupplymethod.defineColumn("lt", typeof(DateTime), false);
            Tables.Add(tintrastatsupplymethod);
            tintrastatsupplymethod.defineKey("idintrastatsupplymethod");

            //////////////////// LISTVIEW /////////////////////////////////
            var tlistview = new MetaTable("listview");
            tlistview.defineColumn("idlist", typeof(int), false);
            tlistview.defineColumn("description", typeof(string), false);
            tlistview.defineColumn("intcode", typeof(string), false);
            tlistview.defineColumn("intbarcode", typeof(string));
            tlistview.defineColumn("extcode", typeof(string));
            tlistview.defineColumn("extbarcode", typeof(string));
            tlistview.defineColumn("validitystop", typeof(DateTime));
            tlistview.defineColumn("active", typeof(string), false);
            tlistview.defineColumn("idpackage", typeof(int));
            tlistview.defineColumn("package", typeof(string));
            tlistview.defineColumn("idunit", typeof(int));
            tlistview.defineColumn("unit", typeof(string));
            tlistview.defineColumn("unitsforpackage", typeof(int));
            tlistview.defineColumn("has_expiry", typeof(string), false);
            tlistview.defineColumn("idlistclass", typeof(string), false);
            tlistview.defineColumn("codelistclass", typeof(string), false);
            tlistview.defineColumn("listclass", typeof(string), false);
            Tables.Add(tlistview);
            tlistview.defineKey("idlist");

            //////////////////// PACKAGE /////////////////////////////////
            var tpackage = new MetaTable("package");
            tpackage.defineColumn("idpackage", typeof(int), false);
            tpackage.defineColumn("description", typeof(string), false);
            tpackage.defineColumn("cu", typeof(string), false);
            tpackage.defineColumn("ct", typeof(DateTime), false);
            tpackage.defineColumn("lu", typeof(string), false);
            tpackage.defineColumn("lt", typeof(DateTime), false);
            tpackage.defineColumn("active", typeof(string), false);
            Tables.Add(tpackage);
            tpackage.defineKey("idpackage");

            //////////////////// UNIT /////////////////////////////////
            var tunit = new MetaTable("unit");
            tunit.defineColumn("idunit", typeof(int), false);
            tunit.defineColumn("description", typeof(string), false);
            tunit.defineColumn("cu", typeof(string), false);
            tunit.defineColumn("ct", typeof(DateTime), false);
            tunit.defineColumn("lu", typeof(string), false);
            tunit.defineColumn("lt", typeof(DateTime), false);
            tunit.defineColumn("active", typeof(string), false);
            Tables.Add(tunit);
            tunit.defineKey("idunit");

            //////////////////// LISTCLASS /////////////////////////////////
            var tlistclass = new MetaTable("listclass");
            tlistclass.defineColumn("idlistclass", typeof(string), false);
            tlistclass.defineColumn("active", typeof(string), false);
            tlistclass.defineColumn("codelistclass", typeof(string), false);
            tlistclass.defineColumn("paridlistclass", typeof(string));
            tlistclass.defineColumn("printingorder", typeof(string), false);
            tlistclass.defineColumn("title", typeof(string), false);
            tlistclass.defineColumn("rtf", typeof(Byte[]));
            tlistclass.defineColumn("txt", typeof(string));
            tlistclass.defineColumn("ct", typeof(DateTime), false);
            tlistclass.defineColumn("cu", typeof(string), false);
            tlistclass.defineColumn("lt", typeof(DateTime), false);
            tlistclass.defineColumn("lu", typeof(string), false);
            tlistclass.defineColumn("authrequired", typeof(string));
            tlistclass.defineColumn("idaccmotive", typeof(string));
            Tables.Add(tlistclass);
            tlistclass.defineKey("idlistclass");

            //////////////////// UPB_IVA /////////////////////////////////
            var tupb_iva = new upbTable();
            tupb_iva.TableName = "upb_iva";
            tupb_iva.addBaseColumns("idupb", "active", "assured", "codeupb", "ct", "cu", "expiration", "granted", "lt", "lu", "paridupb", "previousappropriation", "previousassessment", "printingorder", "requested", "rtf", "title", "txt", "idman", "idunderwriter", "cupcode");
            tupb_iva.ExtendedProperties["TableForReading"] = "upb";
            Tables.Add(tupb_iva);
            tupb_iva.defineKey("idupb");

            //////////////////// INVOICEKIND /////////////////////////////////
            var tinvoicekind = new invoicekindTable();
            tinvoicekind.addBaseColumns("ct", "cu", "description", "lt", "lu", "codeinvkind", "idinvkind", "flag", "flag_autodocnumbering", "formatstring", "active", "idinvkind_auto");
            Tables.Add(tinvoicekind);
            tinvoicekind.defineKey("idinvkind");

            //////////////////// FETRANSFER /////////////////////////////////
            var tfetransfer = new MetaTable("fetransfer");
            tfetransfer.defineColumn("idfetransfer", typeof(string), false);
            tfetransfer.defineColumn("description", typeof(string), false);
            tfetransfer.defineColumn("cu", typeof(string), false);
            tfetransfer.defineColumn("ct", typeof(DateTime), false);
            tfetransfer.defineColumn("lu", typeof(string), false);
            tfetransfer.defineColumn("lt", typeof(DateTime), false);
            Tables.Add(tfetransfer);

            //////////////////// PCCDEBITMOTIVE /////////////////////////////////
            var tpccdebitmotive = new MetaTable("pccdebitmotive");
            tpccdebitmotive.defineColumn("idpccdebitmotive", typeof(string), false);
            tpccdebitmotive.defineColumn("description", typeof(string));
            tpccdebitmotive.defineColumn("listingorder", typeof(int));
            tpccdebitmotive.defineColumn("lu", typeof(string), false);
            tpccdebitmotive.defineColumn("lt", typeof(DateTime), false);
            tpccdebitmotive.defineColumn("flagstatus", typeof(int));
            Tables.Add(tpccdebitmotive);
            tpccdebitmotive.defineKey("idpccdebitmotive");

            //////////////////// PCCDEBITSTATUS /////////////////////////////////
            var tpccdebitstatus = new MetaTable("pccdebitstatus");
            tpccdebitstatus.defineColumn("idpccdebitstatus", typeof(string), false);
            tpccdebitstatus.defineColumn("description", typeof(string));
            tpccdebitstatus.defineColumn("lt", typeof(DateTime), false);
            tpccdebitstatus.defineColumn("lu", typeof(string), false);
            tpccdebitstatus.defineColumn("listingorder", typeof(int));
            tpccdebitstatus.defineColumn("flag", typeof(int));
            Tables.Add(tpccdebitstatus);
            tpccdebitstatus.defineKey("idpccdebitstatus");

            //////////////////// COSTPARTITION /////////////////////////////////
            var tcostpartition = new MetaTable("costpartition");
            tcostpartition.defineColumn("idcostpartition", typeof(int), false);
            tcostpartition.defineColumn("title", typeof(string));
            tcostpartition.defineColumn("kind", typeof(string));
            tcostpartition.defineColumn("lt", typeof(DateTime));
            tcostpartition.defineColumn("lu", typeof(string));
            tcostpartition.defineColumn("ct", typeof(DateTime));
            tcostpartition.defineColumn("cu", typeof(string));
            tcostpartition.defineColumn("costpartitioncode", typeof(string));
            tcostpartition.defineColumn("active", typeof(string));
            tcostpartition.defineColumn("description", typeof(string));
            Tables.Add(tcostpartition);
            tcostpartition.defineKey("idcostpartition");

            //////////////////// EPEXP /////////////////////////////////
            var tepexp = new epexpTable();
            tepexp.addBaseColumns("idepexp", "adate", "ct", "cu", "description", "doc", "docdate", "idman", "idreg", "idrelated", "lt", "lu", "nepexp", "nphase", "paridepexp", "rtf", "start", "stop", "txt", "yepexp");
            Tables.Add(tepexp);
            tepexp.defineKey("idepexp");

            //////////////////// INVOICEDETAILDEFERRED /////////////////////////////////
            var tinvoicedetaildeferred = new MetaTable("invoicedetaildeferred");
            tinvoicedetaildeferred.defineColumn("idinvkind", typeof(int), false);
            tinvoicedetaildeferred.defineColumn("yinv", typeof(short), false);
            tinvoicedetaildeferred.defineColumn("ninv", typeof(int), false);
            tinvoicedetaildeferred.defineColumn("rownum", typeof(int), false);
            tinvoicedetaildeferred.defineColumn("yivapay", typeof(int), false);
            tinvoicedetaildeferred.defineColumn("nivapay", typeof(int), false);
            tinvoicedetaildeferred.defineColumn("ivatotalpayed", typeof(decimal));
            tinvoicedetaildeferred.defineColumn("taxable", typeof(decimal));
            tinvoicedetaildeferred.defineColumn("cu", typeof(string));
            tinvoicedetaildeferred.defineColumn("ct", typeof(DateTime));
            tinvoicedetaildeferred.defineColumn("lu", typeof(string));
            tinvoicedetaildeferred.defineColumn("lt", typeof(string));
            tinvoicedetaildeferred.defineColumn("idivaregisterkind", typeof(int), false);
            Tables.Add(tinvoicedetaildeferred);
            tinvoicedetaildeferred.defineKey("idinvkind", "yinv", "ninv", "rownum", "yivapay", "nivapay", "idivaregisterkind");

            //////////////////// EPACC /////////////////////////////////
            var tepacc = new MetaTable("epacc");
            tepacc.defineColumn("idepacc", typeof(int), false);
            tepacc.defineColumn("adate", typeof(DateTime), false);
            tepacc.defineColumn("ct", typeof(DateTime), false);
            tepacc.defineColumn("cu", typeof(string), false);
            tepacc.defineColumn("description", typeof(string), false);
            tepacc.defineColumn("doc", typeof(string));
            tepacc.defineColumn("docdate", typeof(DateTime));
            tepacc.defineColumn("idman", typeof(int));
            tepacc.defineColumn("idreg", typeof(int));
            tepacc.defineColumn("idrelated", typeof(string));
            tepacc.defineColumn("lt", typeof(DateTime), false);
            tepacc.defineColumn("lu", typeof(string), false);
            tepacc.defineColumn("nepacc", typeof(int), false);
            tepacc.defineColumn("nphase", typeof(short), false);
            tepacc.defineColumn("paridepacc", typeof(int));
            tepacc.defineColumn("rtf", typeof(Byte[]));
            tepacc.defineColumn("start", typeof(DateTime));
            tepacc.defineColumn("stop", typeof(DateTime));
            tepacc.defineColumn("txt", typeof(string));
            tepacc.defineColumn("yepacc", typeof(short), false);
            tepacc.defineColumn("flagvariation", typeof(string));
            Tables.Add(tepacc);
            tepacc.defineKey("idepacc");

            //////////////////// FINMOTIVE_INCOME /////////////////////////////////
            var tfinmotive_income = new MetaTable("finmotive_income");
            tfinmotive_income.defineColumn("idfinmotive", typeof(string), false);
            tfinmotive_income.defineColumn("active", typeof(string), false);
            tfinmotive_income.defineColumn("codemotive", typeof(string), false);
            tfinmotive_income.defineColumn("paridfinmotive", typeof(string));
            tfinmotive_income.defineColumn("title", typeof(string), false);
            tfinmotive_income.defineColumn("lt", typeof(DateTime));
            tfinmotive_income.defineColumn("lu", typeof(string));
            tfinmotive_income.defineColumn("ct", typeof(DateTime));
            tfinmotive_income.defineColumn("cu", typeof(string));
            tfinmotive_income.ExtendedProperties["TableForReading"] = "finmotive";
            Tables.Add(tfinmotive_income);
            tfinmotive_income.defineKey("idfinmotive");

            //////////////////// SORTING_SIOPE /////////////////////////////////
            var tsorting_siope = new sortingTable();
            tsorting_siope.TableName = "sorting_siope";
            tsorting_siope.addBaseColumns("ct", "cu", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5", "description", "flagnodate", "lt", "lu", "movkind", "printingorder", "rtf", "sortcode", "txt", "idsorkind", "idsor", "paridsor", "nlevel", "start", "stop", "email");
            tsorting_siope.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting_siope);
            tsorting_siope.defineKey("idsor");

            //////////////////// EPEXP_PRE /////////////////////////////////
            var tepexp_pre = new epexpTable();
            tepexp_pre.TableName = "epexp_pre";
            tepexp_pre.addBaseColumns("idepexp", "adate", "ct", "cu", "description", "doc", "docdate", "idman", "idreg", "idrelated", "lt", "lu", "nepexp", "nphase", "paridepexp", "rtf", "start", "stop", "txt", "yepexp");
            tepexp_pre.ExtendedProperties["TableForReading"] = "epexp";
            Tables.Add(tepexp_pre);
            tepexp_pre.defineKey("idepexp");

            #endregion


            #region DataRelation creation
            this.defineRelation("FK_invoicekind_invoicedetaildeferred", "invoicekind", "invoicedetaildeferred", "idinvkind");
            this.defineRelation("FK_invoicedetail_invoicedetaildeferred", "invoicedetail", "invoicedetaildeferred", "idinvkind", "yinv", "ninv", "rownum");
            this.defineRelation("FK_epacc_invoicedetail", "epacc", "invoicedetail", "idepacc");
            this.defineRelation("FK_epexp_invoicedetail", "epexp", "invoicedetail", "idepexp");
            this.defineRelation("FK_pccdebitstatus_invoicedetail", "pccdebitstatus", "invoicedetail", "idpccdebitstatus");
            this.defineRelation("FK_pccdebitmotive_invoicedetail", "pccdebitmotive", "invoicedetail", "idpccdebitmotive");
            this.defineRelation("FK_fetransfer_invoicedetail", "fetransfer", "invoicedetail", "idfetransfer");
            var cPar   = new [] { upb_iva.Columns["idupb"] };
            var cChild = new [] { invoicedetail.Columns["idupb_iva"] };
            Relations.Add(new DataRelation("FK_upb_iva_invoicedetail", cPar, cChild, false));

            this.defineRelation("FK_package_invoicedetail", "package", "invoicedetail", "idpackage");
            this.defineRelation("FK_unit_invoicedetail", "unit", "invoicedetail", "idunit");
            this.defineRelation("FK_listview_invoicedetail", "listview", "invoicedetail", "idlist");
            this.defineRelation("FK_intrastatsupplymethod_invoicedetail", "intrastatsupplymethod", "invoicedetail", "idintrastatsupplymethod");
            this.defineRelation("FK_intrastatservice_invoicedetail", "intrastatservice", "invoicedetail", "idintrastatservice");
            this.defineRelation("ivakindinvoicedetail", "ivakind", "invoicedetail", "idivakind");
            this.defineRelation("upbinvoicedetail", "upb", "invoicedetail", "idupb");
            this.defineRelation("mandatekindinvoicedetail", "mandatekind", "invoicedetail", "idmankind");
            this.defineRelation("estimatekindinvoicedetail", "estimatekind", "invoicedetail", "idestimkind");
            cPar   = new [] { expense_iva.Columns["idexp"] };
            cChild = new [] { invoicedetail.Columns["idexp_iva"] };
            Relations.Add(new DataRelation("expense_ivainvoicedetail", cPar, cChild, false));

            cPar   = new [] { expense_taxable.Columns["idexp"] };
            cChild = new [] { invoicedetail.Columns["idexp_taxable"] };
            Relations.Add(new DataRelation("expense_taxableinvoicedetail", cPar, cChild, false));

            cPar   = new [] { income_iva.Columns["idinc"] };
            cChild = new [] { invoicedetail.Columns["idinc_iva"] };
            Relations.Add(new DataRelation("incomeinvoicedetail", cPar, cChild, false));

            cPar   = new [] { income_taxable.Columns["idinc"] };
            cChild = new [] { invoicedetail.Columns["idinc_taxable"] };
            Relations.Add(new DataRelation("income_taxableinvoicedetail", cPar, cChild, false));

            this.defineRelation("accmotiveapplied_invoicedetail", "accmotiveapplied", "invoicedetail", "idaccmotive");
            cPar   = new [] { sorting1.Columns["idsor"] };
            cChild = new [] { invoicedetail.Columns["idsor1"] };
            Relations.Add(new DataRelation("sorting1invoicedetail", cPar, cChild, false));

            cPar   = new [] { sorting2.Columns["idsor"] };
            cChild = new [] { invoicedetail.Columns["idsor2"] };
            Relations.Add(new DataRelation("sorting2invoicedetail", cPar, cChild, false));

            cPar   = new [] { sorting3.Columns["idsor"] };
            cChild = new [] { invoicedetail.Columns["idsor3"] };
            Relations.Add(new DataRelation("sorting3invoicedetail", cPar, cChild, false));

            this.defineRelation("intrastatmeasure_invoicedetail", "intrastatmeasure", "invoicedetail", "idintrastatmeasure");
            this.defineRelation("intrastatcode_invoicedetail", "intrastatcode", "invoicedetail", "idintrastatcode");
            cPar   = new [] { invoicekind.Columns["idinvkind"] };
            cChild = new [] { invoicedetail.Columns["idinvkind_main"] };
            Relations.Add(new DataRelation("invoicekind_invoicedetail", cPar, cChild, false));

            this.defineRelation("costpartition_invoicedetail", "costpartition", "invoicedetail", "idcostpartition");
            this.defineRelation("finmotive_income_invoicedetail", "finmotive_income", "invoicedetail", "idfinmotive");
            cPar   = new [] { sorting_siope.Columns["idsor"] };
            cChild = new [] { invoicedetail.Columns["idsor_siope"] };
            Relations.Add(new DataRelation("sorting_siope_invoicedetail", cPar, cChild, false));

            cPar   = new [] { epexp_pre.Columns["idepexp"] };
            cChild = new [] { invoicedetail.Columns["idepexp_pre"] };
            Relations.Add(new DataRelation("epexp_pre_invoicedetail", cPar, cChild, false));

            #endregion
        }
Пример #3
0
        private void initClass()
        {
            DataSetName = "dsmeta";
            Prefix      = "";
            Namespace   = "http://tempuri.org/dsmeta.xsd";

            #region create DataTables
            //////////////////// INVOICEDETAIL /////////////////////////////////
            var tinvoicedetail = new invoicedetailTable();
            tinvoicedetail.addBaseColumns("idinvkind", "yinv", "ninv", "rownum", "idgroup", "idivakind", "detaildescription", "annotations", "taxable", "tax", "unabatable", "cu", "ct", "lu", "lt", "discount", "idmankind", "yman", "nman", "manrownum", "number", "idupb", "idsor1", "idsor2", "idsor3", "competencystart", "competencystop", "idexp_taxable", "idexp_iva", "idaccmotive", "idestimkind", "estimrownum", "nestim", "yestim", "idintrastatcode", "idintrastatmeasure", "weight", "va3type", "idlist", "idpackage", "idunit", "npackage", "unitsforpackage", "flag", "intrastatoperationkind", "intra12operationkind", "exception12", "move12", "idupb_iva", "idintrastatservice", "idintrastatsupplymethod", "leasing", "usedmodesospesometro", "resetresidualmandate", "idcostpartition", "idpccdebitmotive", "idpccdebitstatus", "expensekind", "rounding", "idepexp", "idepacc", "ycon", "ncon", "idsor_siope");
            tinvoicedetail.defineColumn("!codeupb", typeof(string));
            tinvoicedetail.defineColumn("!disponibile", typeof(decimal));
            tinvoicedetail.defineColumn("!idexptolink", typeof(string));
            tinvoicedetail.defineColumn("!monomandate", typeof(string));
            tinvoicedetail.defineColumn("!tipoiva", typeof(string));
            tinvoicedetail.defineColumn("!totaleriga", typeof(decimal));
            tinvoicedetail.defineColumn("!aliquota", typeof(decimal));
            tinvoicedetail.defineColumn("!codeupb_iva", typeof(string));
            Tables.Add(tinvoicedetail);
            tinvoicedetail.defineKey("idinvkind", "yinv", "ninv", "rownum");

            //////////////////// EXPENSEPHASE /////////////////////////////////
            var texpensephase = new MetaTable("expensephase");
            texpensephase.defineColumn("nphase", typeof(byte), false);
            texpensephase.defineColumn("ct", typeof(DateTime), false);
            texpensephase.defineColumn("cu", typeof(string), false);
            texpensephase.defineColumn("description", typeof(string), false);
            texpensephase.defineColumn("lt", typeof(DateTime), false);
            texpensephase.defineColumn("lu", typeof(string), false);
            Tables.Add(texpensephase);
            texpensephase.defineKey("nphase");

            //////////////////// INVOICEKIND /////////////////////////////////
            var tinvoicekind = new invoicekindTable();
            tinvoicekind.addBaseColumns("idinvkind", "flag", "ct", "cu", "description", "lt", "lu", "active", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05");
            Tables.Add(tinvoicekind);
            tinvoicekind.defineKey("idinvkind");

            //////////////////// IVAKIND /////////////////////////////////
            var tivakind = new ivakindTable();
            tivakind.addBaseColumns("idivakind", "ct", "cu", "description", "lt", "lu", "rate", "unabatabilitypercentage", "active");
            Tables.Add(tivakind);
            tivakind.defineKey("idivakind");

            //////////////////// EXPENSE /////////////////////////////////
            var texpense = new expenseTable();
            texpense.addBaseColumns("adate", "ct", "cu", "description", "doc", "docdate", "expiration", "idreg", "lt", "lu", "nmov", "rtf", "txt", "ymov", "idclawback", "idman", "nphase", "idexp", "parentidexp", "idpayment", "idformerexpense", "autokind", "autocode");
            Tables.Add(texpense);
            texpense.defineKey("idexp");

            //////////////////// REGISTRY /////////////////////////////////
            var tregistry = new registryTable();
            tregistry.addBaseColumns("idreg", "active", "annotation", "badgecode", "birthdate", "cf", "ct", "cu", "extmatricula", "foreigncf", "forename", "gender", "idcategory", "idcentralizedcategory", "idcity", "idmaritalstatus", "idnation", "idregistryclass", "idtitle", "location", "lt", "lu", "maritalsurname", "p_iva", "residence", "rtf", "surname", "title", "txt");
            Tables.Add(tregistry);
            tregistry.defineKey("idreg");

            //////////////////// EXPENSEYEAR /////////////////////////////////
            var texpenseyear = new expenseyearTable();
            texpenseyear.addBaseColumns("ayear", "idexp", "amount", "ct", "cu", "idfin", "idupb", "lt", "lu");
            Tables.Add(texpenseyear);
            texpenseyear.defineKey("ayear", "idexp");

            //////////////////// FIN /////////////////////////////////
            var tfin = new finTable();
            tfin.addBaseColumns("idfin", "ayear", "flag", "codefin", "paridfin", "nlevel", "printingorder", "title", "cu", "ct", "lu", "lt");
            Tables.Add(tfin);
            tfin.defineKey("idfin");

            //////////////////// UPB /////////////////////////////////
            var tupb = new upbTable();
            tupb.addBaseColumns("idupb", "active", "assured", "codeupb", "ct", "cu", "expiration", "granted", "idman", "idunderwriter", "lt", "lu", "paridupb", "previousappropriation", "previousassessment", "printingorder", "requested", "rtf", "title", "txt", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05");
            Tables.Add(tupb);
            tupb.defineKey("idupb");

            //////////////////// TIPOMOVIMENTO /////////////////////////////////
            var ttipomovimento = new MetaTable("tipomovimento");
            ttipomovimento.defineColumn("idtipo", typeof(string), false);
            ttipomovimento.defineColumn("descrizione", typeof(string), false);
            Tables.Add(ttipomovimento);
            ttipomovimento.defineKey("idtipo");

            //////////////////// INVOICE /////////////////////////////////
            var tinvoice = new invoiceTable();
            tinvoice.addBaseColumns("idinvkind", "ninv", "yinv", "active", "adate", "ct", "cu", "description", "doc", "docdate", "exchangerate", "flagdeferred", "idcurrency", "idexpirationkind", "idreg", "lt", "lu", "officiallyprinted", "packinglistdate", "packinglistnum", "paymentexpiring", "registryreference", "rtf", "txt", "idaccmotivedebit", "idaccmotivedebit_crg", "flag", "idblacklist", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "flag_enable_split_payment", "flag_auto_split_payment", "requested_doc", "flagbit", "flagintracom");
            Tables.Add(tinvoice);
            tinvoice.defineKey("idinvkind", "ninv", "yinv");

            //////////////////// EXPENSEINVOICE /////////////////////////////////
            var texpenseinvoice = new MetaTable("expenseinvoice");
            texpenseinvoice.defineColumn("idexp", typeof(int), false);
            texpenseinvoice.defineColumn("idinvkind", typeof(int), false);
            texpenseinvoice.defineColumn("ninv", typeof(int), false);
            texpenseinvoice.defineColumn("yinv", typeof(short), false);
            texpenseinvoice.defineColumn("ct", typeof(DateTime), false);
            texpenseinvoice.defineColumn("cu", typeof(string), false);
            texpenseinvoice.defineColumn("lt", typeof(DateTime), false);
            texpenseinvoice.defineColumn("lu", typeof(string), false);
            texpenseinvoice.defineColumn("movkind", typeof(short));
            Tables.Add(texpenseinvoice);
            texpenseinvoice.defineKey("idexp", "idinvkind", "ninv", "yinv");

            //////////////////// EXPENSELAST /////////////////////////////////
            var texpenselast = new expenselastTable();
            texpenselast.addBaseColumns("idexp", "cc", "cin", "ct", "cu", "flag", "idbank", "idcab", "iddeputy", "idpay", "idpaymethod", "idregistrypaymethod", "idser", "ivaamount", "lt", "lu", "nbill", "paymentdescr", "servicestart", "servicestop", "refexternaldoc", "kpay", "iban", "idaccdebit", "biccode", "paymethod_flag", "paymethod_allowdeputy", "extracode", "idchargehandling");
            Tables.Add(texpenselast);
            texpenselast.defineKey("idexp");

            //////////////////// BILL /////////////////////////////////
            var tbill = new billTable();
            tbill.addBaseColumns("ybill", "nbill", "billkind", "registry", "covered", "total", "adate", "active", "motive", "cu", "ct", "lu", "lt");
            Tables.Add(tbill);
            tbill.defineKey("nbill");

            //////////////////// BILLVIEW /////////////////////////////////
            var tbillview = new MetaTable("billview");
            tbillview.defineColumn("ybill", typeof(short), false);
            tbillview.defineColumn("nbill", typeof(int), false);
            tbillview.defineColumn("billkind", typeof(string), false);
            tbillview.defineColumn("active", typeof(string));
            tbillview.defineColumn("adate", typeof(DateTime));
            tbillview.defineColumn("registry", typeof(string));
            tbillview.defineColumn("motive", typeof(string));
            tbillview.defineColumn("total", typeof(decimal));
            tbillview.defineColumn("covered", typeof(decimal));
            tbillview.defineColumn("cu", typeof(string), false);
            tbillview.defineColumn("ct", typeof(DateTime), false);
            tbillview.defineColumn("lu", typeof(string), false);
            tbillview.defineColumn("lt", typeof(DateTime), false);
            tbillview.defineColumn("idtreasurer", typeof(int));
            tbillview.defineColumn("treasurer", typeof(string));
            tbillview.defineColumn("regularizationnote", typeof(string));
            tbillview.defineColumn("idsor01", typeof(int));
            tbillview.defineColumn("idsor02", typeof(int));
            tbillview.defineColumn("idsor03", typeof(int));
            tbillview.defineColumn("idsor04", typeof(int));
            tbillview.defineColumn("idsor05", typeof(int));
            Tables.Add(tbillview);

            //////////////////// ACCOUNT /////////////////////////////////
            var taccount = new accountTable();
            taccount.addBaseColumns("idacc", "ayear", "codeacc", "ct", "cu", "flagregistry", "flagtransitory", "flagupb", "idaccountkind", "lt", "lu", "nlevel", "paridacc", "printingorder", "rtf", "title", "txt", "idpatrimony", "idplaccount", "flagprofit", "flagloss", "placcount_sign", "patrimony_sign", "flagcompetency", "flag");
            Tables.Add(taccount);
            taccount.defineKey("idacc");

            //////////////////// EXPENSECLAWBACK /////////////////////////////////
            var texpenseclawback = new MetaTable("expenseclawback");
            texpenseclawback.defineColumn("idexp", typeof(int), false);
            texpenseclawback.defineColumn("idclawback", typeof(int), false);
            texpenseclawback.defineColumn("amount", typeof(decimal));
            texpenseclawback.defineColumn("cu", typeof(string), false);
            texpenseclawback.defineColumn("ct", typeof(DateTime), false);
            texpenseclawback.defineColumn("lu", typeof(string), false);
            texpenseclawback.defineColumn("lt", typeof(DateTime), false);
            texpenseclawback.defineColumn("!clawbackref", typeof(string));
            texpenseclawback.defineColumn("fiscaltaxcode", typeof(string));
            texpenseclawback.defineColumn("identifying_marks", typeof(string));
            texpenseclawback.defineColumn("code", typeof(string));
            texpenseclawback.defineColumn("tiporiga", typeof(string));
            texpenseclawback.defineColumn("rifb_month", typeof(int));
            texpenseclawback.defineColumn("rifb_year", typeof(int));
            texpenseclawback.defineColumn("rifa_month", typeof(int));
            texpenseclawback.defineColumn("rifa_year", typeof(int));
            texpenseclawback.defineColumn("rifa", typeof(string));
            Tables.Add(texpenseclawback);
            texpenseclawback.defineKey("idexp", "idclawback");

            //////////////////// CLAWBACK /////////////////////////////////
            var tclawback = new MetaTable("clawback");
            tclawback.defineColumn("idclawback", typeof(int), false);
            tclawback.defineColumn("description", typeof(string), false);
            tclawback.defineColumn("cu", typeof(string), false);
            tclawback.defineColumn("ct", typeof(DateTime), false);
            tclawback.defineColumn("lu", typeof(string), false);
            tclawback.defineColumn("lt", typeof(DateTime), false);
            tclawback.defineColumn("clawbackref", typeof(string));
            tclawback.defineColumn("active", typeof(string));
            tclawback.defineColumn("flagf24ep", typeof(string));
            Tables.Add(tclawback);
            tclawback.defineKey("idclawback");

            //////////////////// CONFIG /////////////////////////////////
            var tconfig = new configTable();
            tconfig.addBaseColumns("ayear", "agencycode", "appname", "appropriationphasecode", "assessmentphasecode", "asset_flagnumbering", "asset_flagrestart", "assetload_flag", "boxpartitiontitle", "casualcontract_flagrestart", "ct", "cu", "currpartitiontitle", "deferredexpensephase", "deferredincomephase", "electronicimport", "electronictrasmission", "expense_expiringdays", "expensephase", "flagautopayment", "flagautoproceeds", "flagcredit", "flagepexp", "flagfruitful", "flagpayment", "flagproceeds", "flagrefund", "foreignhours", "idacc_accruedcost", "idacc_accruedrevenue", "idacc_customer", "idacc_deferredcost", "idacc_deferredcredit", "idacc_deferreddebit", "idacc_deferredrevenue", "idacc_ivapayment", "idacc_ivarefund", "idacc_patrimony", "idacc_pl", "idacc_supplier", "idaccmotive_admincar", "idaccmotive_foot", "idaccmotive_owncar", "idclawback", "idfinexpense", "idfinexpensesurplus", "idfinincomesurplus", "idfinivapayment", "idfinivarefund", "idregauto", "importappname", "income_expiringdays", "incomephase", "linktoinvoice", "lt", "lu", "minpayment", "minrefund", "motivelen", "motiveprefix", "motiveseparator", "payment_finlevel", "payment_flag", "payment_flagautoprintdate", "paymentagency", "prevpartitiontitle", "proceeds_finlevel", "proceeds_flag", "proceeds_flagautoprintdate", "profservice_flagrestart", "refundagency", "wageaddition_flagrestart", "idivapayperiodicity", "idsortingkind1", "idsortingkind2", "idsortingkind3", "fin_kind", "taxvaliditykind", "flag_paymentamount", "automanagekind", "flag_autodocnumbering", "flagbank_grouping", "cashvaliditykind");
            Tables.Add(tconfig);
            tconfig.defineKey("ayear");

            //////////////////// INVOICEDETAILDEFERRED /////////////////////////////////
            var tinvoicedetaildeferred = new MetaTable("invoicedetaildeferred");
            tinvoicedetaildeferred.defineColumn("idinvkind", typeof(int), false);
            tinvoicedetaildeferred.defineColumn("yinv", typeof(short), false);
            tinvoicedetaildeferred.defineColumn("ninv", typeof(int), false);
            tinvoicedetaildeferred.defineColumn("rownum", typeof(int), false);
            tinvoicedetaildeferred.defineColumn("yivapay", typeof(short), false);
            tinvoicedetaildeferred.defineColumn("nivapay", typeof(int), false);
            tinvoicedetaildeferred.defineColumn("ivatotalpayed", typeof(decimal));
            tinvoicedetaildeferred.defineColumn("taxable", typeof(decimal));
            tinvoicedetaildeferred.defineColumn("cu", typeof(string));
            tinvoicedetaildeferred.defineColumn("ct", typeof(DateTime));
            tinvoicedetaildeferred.defineColumn("lu", typeof(string));
            tinvoicedetaildeferred.defineColumn("lt", typeof(string));
            tinvoicedetaildeferred.defineColumn("idivaregisterkind", typeof(int), false);
            Tables.Add(tinvoicedetaildeferred);
            tinvoicedetaildeferred.defineKey("idinvkind", "yinv", "ninv", "rownum", "yivapay", "nivapay", "idivaregisterkind");

            //////////////////// EXPENSESORTED /////////////////////////////////
            var texpensesorted = new expensesortedTable();
            texpensesorted.addBaseColumns("idsor", "idexp", "idsubclass", "amount", "valuen1", "valuen2", "valuen3", "valuen4", "valuen5", "values1", "values2", "values3", "values4", "values5", "valuev1", "valuev2", "valuev3", "valuev4", "valuev5", "ayear", "description", "txt", "rtf", "cu", "ct", "lu", "lt", "flagnodate", "tobecontinued", "start", "stop", "paridsor", "paridsubclass");
            Tables.Add(texpensesorted);
            texpensesorted.defineKey("idexp", "idsor", "idsubclass");

            #endregion


            #region DataRelation creation
            this.defineRelation("invoicedetail_invoicedetaildeferred", "invoicedetail", "invoicedetaildeferred", "idinvkind", "yinv", "ninv", "rownum");
            this.defineRelation("expense_expenseclawback", "expense", "expenseclawback", "idexp");
            this.defineRelation("clawback_expenseclawback", "clawback", "expenseclawback", "idclawback");
            var cPar   = new [] { account.Columns["idacc"] };
            var cChild = new [] { expenselast.Columns["idaccdebit"] };
            Relations.Add(new DataRelation("account_expenselast", cPar, cChild, false));

            this.defineRelation("bill_expenselast", "bill", "expenselast", "nbill");
            this.defineRelation("expense_expenselast", "expense", "expenselast", "idexp");
            this.defineRelation("FK_expense_expenseinvoice", "expense", "expenseinvoice", "idexp");
            this.defineRelation("FK_invoice_expenseinvoice", "invoice", "expenseinvoice", "idinvkind", "ninv", "yinv");
            this.defineRelation("invoicekind_invoice", "invoicekind", "invoice", "idinvkind");
            this.defineRelation("upb_expenseyear", "upb", "expenseyear", "idupb");
            this.defineRelation("fin_expenseyear", "fin", "expenseyear", "idfin");
            this.defineRelation("expense_expenseyear", "expense", "expenseyear", "idexp");
            this.defineRelation("registry_expense", "registry", "expense", "idreg");
            cPar   = new [] { expense.Columns["idexp"] };
            cChild = new [] { expense.Columns["parentidexp"] };
            Relations.Add(new DataRelation("expense_expense", cPar, cChild, false));

            cPar   = new [] { expense.Columns["idexp"] };
            cChild = new [] { invoicedetail.Columns["idexp_iva"] };
            Relations.Add(new DataRelation("expense_invoicedetail1", cPar, cChild, false));

            this.defineRelation("invoice_invoicedetail", "invoice", "invoicedetail", "idinvkind", "ninv", "yinv");
            cPar   = new [] { expense.Columns["idexp"] };
            cChild = new [] { invoicedetail.Columns["idexp_taxable"] };
            Relations.Add(new DataRelation("expense_invoicedetail", cPar, cChild, false));

            this.defineRelation("ivakind_invoicedetail", "ivakind", "invoicedetail", "idivakind");
            this.defineRelation("expense_expensesorted", "expense", "expensesorted", "idexp");
            #endregion
        }
Пример #4
0
        private void initClass()
        {
            DataSetName = "dsmeta";
            Prefix      = "";
            Namespace   = "http://tempuri.org/dsmeta.xsd";

            #region create DataTables
            //////////////////// NO_TABLE /////////////////////////////////
            var tno_table = new MetaTable("no_table");
            tno_table.defineColumn("idnotable", typeof(string), false);
            Tables.Add(tno_table);
            tno_table.defineKey("idnotable");

            //////////////////// LICENSE /////////////////////////////////
            var tlicense = new MetaTable("license");
            tlicense.defineColumn("dummykey", typeof(string), false);
            tlicense.defineColumn("address1", typeof(string));
            tlicense.defineColumn("address2", typeof(string));
            tlicense.defineColumn("agency", typeof(string));
            tlicense.defineColumn("agencycode", typeof(string));
            tlicense.defineColumn("agencyname", typeof(string));
            tlicense.defineColumn("annotations", typeof(string));
            tlicense.defineColumn("cap", typeof(string));
            tlicense.defineColumn("cf", typeof(string));
            tlicense.defineColumn("checkbackup1", typeof(string));
            tlicense.defineColumn("checkbackup2", typeof(string));
            tlicense.defineColumn("checkflag", typeof(string));
            tlicense.defineColumn("checklic", typeof(string));
            tlicense.defineColumn("checkman", typeof(string));
            tlicense.defineColumn("country", typeof(string));
            tlicense.defineColumn("dbname", typeof(string));
            tlicense.defineColumn("department", typeof(string));
            tlicense.defineColumn("departmentcode", typeof(string));
            tlicense.defineColumn("departmentname", typeof(string));
            tlicense.defineColumn("email", typeof(string));
            tlicense.defineColumn("expiringlic", typeof(DateTime));
            tlicense.defineColumn("expiringman", typeof(DateTime));
            tlicense.defineColumn("fax", typeof(string));
            tlicense.defineColumn("idcity", typeof(int));
            tlicense.defineColumn("iddb", typeof(int));
            tlicense.defineColumn("idreg", typeof(int));
            tlicense.defineColumn("lickind", typeof(string));
            tlicense.defineColumn("licstatus", typeof(string));
            tlicense.defineColumn("location", typeof(string));
            tlicense.defineColumn("lt", typeof(DateTime));
            tlicense.defineColumn("lu", typeof(string));
            tlicense.defineColumn("mankind", typeof(string));
            tlicense.defineColumn("manstatus", typeof(string));
            tlicense.defineColumn("nmsgs", typeof(int));
            tlicense.defineColumn("p_iva", typeof(string));
            tlicense.defineColumn("phonenumber", typeof(string));
            tlicense.defineColumn("referent", typeof(string));
            tlicense.defineColumn("sent", typeof(string));
            tlicense.defineColumn("serverbackup1", typeof(string));
            tlicense.defineColumn("serverbackup2", typeof(string));
            tlicense.defineColumn("servername", typeof(string));
            tlicense.defineColumn("swmorecode", typeof(string));
            tlicense.defineColumn("swmoreflag", typeof(int));
            Tables.Add(tlicense);
            tlicense.defineKey("dummykey");

            //////////////////// CONFIG /////////////////////////////////
            var tconfig = new configTable();
            tconfig.addBaseColumns("ayear", "agencycode", "appname", "appropriationphasecode", "assessmentphasecode", "asset_flagnumbering", "asset_flagrestart", "assetload_flag", "boxpartitiontitle", "finvarofficial_default", "casualcontract_flagrestart", "ct", "cu", "currpartitiontitle", "deferredexpensephase", "deferredincomephase", "electronicimport", "electronictrasmission", "expense_expiringdays", "expensephase", "flagautopayment", "flagautoproceeds", "flagcredit", "flagepexp", "flagfruitful", "flagpayment", "flagproceeds", "flagrefund", "foreignhours", "idacc_accruedcost", "idacc_accruedrevenue", "idacc_customer", "idacc_deferredcost", "idacc_deferredcredit", "idacc_deferreddebit", "idacc_deferredrevenue", "idacc_ivapayment", "idacc_ivarefund", "idacc_patrimony", "idacc_pl", "idacc_supplier", "idaccmotive_admincar", "idaccmotive_foot", "idaccmotive_owncar", "idclawback", "idfinexpense", "idfinexpensesurplus", "idfinincomesurplus", "idfinivapayment", "idfinivarefund", "idregauto", "importappname", "income_expiringdays", "incomephase", "linktoinvoice", "lt", "lu", "minpayment", "minrefund", "motivelen", "motiveprefix", "motiveseparator", "payment_finlevel", "payment_flag", "payment_flagautoprintdate", "paymentagency", "prevpartitiontitle", "proceeds_finlevel", "proceeds_flag", "proceeds_flagautoprintdate", "profservice_flagrestart", "refundagency", "wageaddition_flagrestart", "idivapayperiodicity", "idsortingkind1", "idsortingkind2", "idsortingkind3", "fin_kind", "taxvaliditykind", "flag_paymentamount", "automanagekind", "flag_autodocnumbering", "flagbank_grouping", "cashvaliditykind", "wageimportappname", "balancekind", "idpaymethodabi", "idpaymethodnoabi", "iban_f24", "cudactivitycode", "startivabalance", "flagivapaybyrow", "idacc_unabatable", "idacc_unabatable_refund", "invoice_flagregister", "default_idfinvarstatus", "flagivaregphase", "mainflagpayment", "mainflagrefund", "mainidfinivapayment", "mainidfinivarefund", "mainminpayment", "mainminrefund", "mainpaymentagency", "mainrefundagency", "mainflagivaregphase", "mainstartivabalance", "mainidacc_unabatable", "mainidacc_unabatable_refund", "idacc_mainivapayment", "idacc_mainivapayment_internal", "idacc_mainivarefund", "idacc_mainivarefund_internal", "flagva3", "flagrefund12", "flagpayment12", "refundagency12", "paymentagency12", "idfinivarefund12", "idfinivapayment12", "minrefund12", "minpayment12", "idacc_ivapayment12", "idacc_ivarefund12", "idacc_mainivarefund12", "idacc_mainivapayment12", "idacc_mainivapayment_internal12", "idacc_mainivarefund_internal12", "startivabalance12", "mainrefundagency12", "mainpaymentagency12", "mainflagrefund12", "mainflagpayment12", "mainidfinivarefund12", "mainidfinivapayment12", "mainminrefund12", "mainminpayment12", "mainstartivabalance12", "idreg_csa", "finvar_warnmail", "flagdirectcsaclawback", "idacc_revenue_gross_csa", "idfinincome_gross_csa", "idsor1_stock", "idsor2_stock", "idsor3_stock", "idinpscenter", "idivapayperiodicity_instit", "idfin_store", "flagpcashautopayment", "flagpcashautoproceeds", "email", "lcard", "booking_on_invoice");
            Tables.Add(tconfig);
            tconfig.defineKey("ayear");

            //////////////////// ESTIMATEDETAIL /////////////////////////////////
            var testimatedetail = new estimatedetailTable();
            testimatedetail.addBaseColumns("idestimkind", "yestim", "nestim", "rownum", "annotations", "ct", "cu", "detaildescription", "discount", "idupb", "lt", "lu", "ninvoiced", "number", "start", "stop", "tax", "taxable", "taxrate", "toinvoice", "idaccmotive", "idreg", "idgroup", "competencystart", "competencystop", "idinc_taxable", "idinc_iva", "idivakind", "idsor1", "idsor2", "idsor3", "idaccmotiveannulment", "epkind", "idrevenuepartition", "idepacc", "idupb_iva", "idlist", "cigcode", "iduniqueformcode", "idfinmotive", "flag", "nform", "idsor_siope", "idepacc_pre");
            testimatedetail.defineColumn("!codeupb", typeof(string));
            testimatedetail.defineColumn("!codeupb_iva", typeof(string));
            testimatedetail.defineColumn("!registry", typeof(string));
            testimatedetail.defineColumn("!totaleriga", typeof(decimal));
            Tables.Add(testimatedetail);
            testimatedetail.defineKey("idestimkind", "yestim", "nestim", "rownum");

            //////////////////// REGISTRY /////////////////////////////////
            var tregistry = new registryTable();
            tregistry.addBaseColumns("idreg", "active", "annotation", "badgecode", "birthdate", "cf", "ct", "cu", "extmatricula", "foreigncf", "forename", "gender", "idcategory", "idcentralizedcategory", "idcity", "idmaritalstatus", "idnation", "idregistryclass", "idtitle", "location", "lt", "lu", "maritalsurname", "p_iva", "rtf", "surname", "title", "txt", "residence", "idregistrykind", "authorization_free", "multi_cf", "toredirect", "idaccmotivedebit", "idaccmotivecredit", "ccp", "flagbankitaliaproceeds", "idexternal", "ipa_fe", "flag_pa", "sdi_norifamm", "sdi_defrifamm", "email_fe", "pec_fe");
            Tables.Add(tregistry);
            tregistry.defineKey("idreg");

            //////////////////// ESTIMATEKIND /////////////////////////////////
            var testimatekind = new estimatekindTable();
            testimatekind.addBaseColumns("idestimkind", "active", "ct", "cu", "description", "idupb", "lt", "lu", "rtf", "txt", "email", "faxnumber", "office", "phonenumber", "linktoinvoice", "multireg", "deltaamount", "deltapercentage", "flag_autodocnumbering", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "address", "header", "idivakind_forced", "flag");
            Tables.Add(testimatekind);
            testimatekind.defineKey("idestimkind");

            //////////////////// ESTIMATE /////////////////////////////////
            var testimate = new estimateTable();
            testimate.addBaseColumns("idestimkind", "yestim", "nestim", "active", "adate", "ct", "cu", "deliveryaddress", "deliveryexpiration", "description", "doc", "docdate", "exchangerate", "idreg", "lt", "lu", "officiallyprinted", "paymentexpiring", "registryreference", "txt", "idman", "idcurrency", "idexpirationkind", "flagintracom", "idaccmotivecredit", "idaccmotivecredit_crg", "idaccmotivecredit_datacrg", "idsor_underwriter", "idunderwriting", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "external_reference", "cigcode");
            Tables.Add(testimate);
            testimate.defineKey("idestimkind", "yestim", "nestim");

            //////////////////// INCOMEPHASE /////////////////////////////////
            var tincomephase = new MetaTable("incomephase");
            tincomephase.defineColumn("nphase", typeof(byte), false);
            tincomephase.defineColumn("description", typeof(string), false);
            tincomephase.defineColumn("cu", typeof(string), false);
            tincomephase.defineColumn("ct", typeof(DateTime), false);
            tincomephase.defineColumn("lu", typeof(string), false);
            tincomephase.defineColumn("lt", typeof(DateTime), false);
            Tables.Add(tincomephase);
            tincomephase.defineKey("nphase");

            //////////////////// INCOMELAST /////////////////////////////////
            var tincomelast = new incomelastTable();
            tincomelast.addBaseColumns("idinc", "ct", "cu", "flag", "idpro", "lt", "lu", "nbill", "kpro", "idacccredit");
            Tables.Add(tincomelast);
            tincomelast.defineKey("idinc");

            //////////////////// INCOMESORTED /////////////////////////////////
            var tincomesorted = new incomesortedTable();
            tincomesorted.addBaseColumns("idinc", "idsor", "idsubclass", "amount", "ayear", "ct", "cu", "description", "flagnodate", "lt", "lu", "paridsor", "paridsubclass", "rtf", "start", "stop", "tobecontinued", "txt", "valuen1", "valuen2", "valuen3", "valuen4", "valuen5", "values1", "values2", "values3", "values4", "values5", "valuev1", "valuev2", "valuev3", "valuev4", "valuev5");
            Tables.Add(tincomesorted);
            tincomesorted.defineKey("idinc", "idsor", "idsubclass");

            //////////////////// INCOME /////////////////////////////////
            var tincome = new incomeTable();
            tincome.addBaseColumns("idinc", "nphase", "ymov", "nmov", "parentidinc", "idreg", "idman", "doc", "docdate", "description", "idpayment", "expiration", "adate", "cu", "ct", "lu", "lt", "autokind", "autocode", "cupcode", "idunderwriting");
            Tables.Add(tincome);
            tincome.defineKey("idinc");

            //////////////////// INCOMEYEAR /////////////////////////////////
            var tincomeyear = new incomeyearTable();
            tincomeyear.addBaseColumns("idinc", "ayear", "idfin", "idupb", "amount", "cu", "ct", "lu", "lt");
            Tables.Add(tincomeyear);
            tincomeyear.defineKey("idinc", "ayear");

            //////////////////// UPB /////////////////////////////////
            var tupb = new upbTable();
            tupb.addBaseColumns("idupb", "codeupb", "title", "paridupb", "idunderwriter", "idman", "requested", "granted", "previousappropriation", "expiration", "txt", "rtf", "cu", "ct", "lu", "lt", "assured", "printingorder", "active", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "idtreasurer");
            Tables.Add(tupb);
            tupb.defineKey("idupb");

            //////////////////// FIN /////////////////////////////////
            var tfin = new finTable();
            tfin.addBaseColumns("idfin", "ayear", "flag", "codefin", "paridfin", "nlevel", "printingorder", "title", "cu", "ct", "lu", "lt");
            Tables.Add(tfin);
            tfin.defineKey("idfin");

            //////////////////// REGISTRY1 /////////////////////////////////
            var tregistry1 = new registryTable();
            tregistry1.TableName = "registry1";
            tregistry1.addBaseColumns("idreg", "title", "cf", "p_iva", "residence", "annotation", "birthdate", "gender", "surname", "forename", "foreigncf", "active", "txt", "rtf", "cu", "ct", "lu", "lt", "badgecode", "idcategory", "idcentralizedcategory", "idmaritalstatus", "idtitle", "idregistryclass", "maritalsurname", "idcity", "idnation", "location", "extmatricula");
            tregistry1.ExtendedProperties["TableForReading"] = "registry";
            Tables.Add(tregistry1);
            tregistry1.defineKey("idreg");

            //////////////////// INCOMEESTIMATE /////////////////////////////////
            var tincomeestimate = new MetaTable("incomeestimate");
            tincomeestimate.defineColumn("idestimkind", typeof(string), false);
            tincomeestimate.defineColumn("yestim", typeof(short), false);
            tincomeestimate.defineColumn("nestim", typeof(int), false);
            tincomeestimate.defineColumn("idinc", typeof(int), false);
            tincomeestimate.defineColumn("movkind", typeof(short));
            tincomeestimate.defineColumn("cu", typeof(string), false);
            tincomeestimate.defineColumn("ct", typeof(DateTime), false);
            tincomeestimate.defineColumn("lu", typeof(string), false);
            tincomeestimate.defineColumn("lt", typeof(DateTime), false);
            Tables.Add(tincomeestimate);
            tincomeestimate.defineKey("idestimkind", "yestim", "nestim", "idinc");

            //////////////////// FINMOTIVE /////////////////////////////////
            var tfinmotive = new MetaTable("finmotive");
            tfinmotive.defineColumn("idfinmotive", typeof(string), false);
            tfinmotive.defineColumn("active", typeof(string), false);
            tfinmotive.defineColumn("codemotive", typeof(string), false);
            tfinmotive.defineColumn("paridfinmotive", typeof(string));
            tfinmotive.defineColumn("title", typeof(string), false);
            tfinmotive.defineColumn("lt", typeof(DateTime));
            tfinmotive.defineColumn("lu", typeof(string));
            tfinmotive.defineColumn("ct", typeof(DateTime));
            tfinmotive.defineColumn("cu", typeof(string));
            Tables.Add(tfinmotive);
            tfinmotive.defineKey("idfinmotive");

            //////////////////// FINMOTIVEDETAIL /////////////////////////////////
            var tfinmotivedetail = new MetaTable("finmotivedetail");
            tfinmotivedetail.defineColumn("idfinmotive", typeof(string), false);
            tfinmotivedetail.defineColumn("idfin", typeof(int), false);
            tfinmotivedetail.defineColumn("ayear", typeof(short), false);
            tfinmotivedetail.defineColumn("lu", typeof(string));
            tfinmotivedetail.defineColumn("cu", typeof(string));
            tfinmotivedetail.defineColumn("ct", typeof(DateTime));
            tfinmotivedetail.defineColumn("lt", typeof(DateTime));
            Tables.Add(tfinmotivedetail);
            tfinmotivedetail.defineKey("idfinmotive", "idfin", "ayear");

            //////////////////// INCOMEVAR /////////////////////////////////
            var tincomevar = new incomevarTable();
            tincomevar.addBaseColumns("idinc", "nvar", "yvar", "description", "amount", "doc", "docdate", "adate", "txt", "rtf", "cu", "ct", "lu", "lt", "autokind", "idinvkind", "ninv", "yinv");
            Tables.Add(tincomevar);
            tincomevar.defineKey("idinc", "nvar");

            //////////////////// FLUSSOCREDITI /////////////////////////////////
            var tflussocrediti = new flussocreditiTable();
            tflussocrediti.addBaseColumns("idflusso", "cu", "ct", "lu", "lt", "datacreazioneflusso", "flusso", "istransmitted", "docdate", "idestimkind", "idsor03", "idsor02", "idsor01", "idsor04", "idsor05", "progday", "filename");
            Tables.Add(tflussocrediti);
            tflussocrediti.defineKey("idflusso");

            //////////////////// FLUSSOCREDITIDETAIL /////////////////////////////////
            var tflussocreditidetail = new flussocreditidetailTable();
            tflussocreditidetail.addBaseColumns("idflusso", "iddetail", "cu", "ct", "lu", "lt", "importoversamento", "idestimkind", "yestim", "nestim", "rownum", "idupb", "idfinmotive", "iduniqueformcode", "idaccmotiverevenue", "idaccmotivecredit", "idaccmotiveundotax", "idaccmotiveundotaxpost", "idreg", "nform", "stop", "competencystart", "competencystop", "description", "idinvkind", "yinv", "ninv", "invrownum", "cf", "annulment", "flag", "idunivoco", "idsor1", "idsor2", "idsor3", "idivakind", "tax", "number", "idlist", "p_iva", "annotations", "idupb_iva", "iuv");
            Tables.Add(tflussocreditidetail);
            tflussocreditidetail.defineKey("idflusso", "iddetail");

            //////////////////// INVOICE /////////////////////////////////
            var tinvoice = new invoiceTable();
            tinvoice.addBaseColumns("ninv", "yinv", "active", "adate", "ct", "cu", "description", "doc", "docdate", "exchangerate", "flagdeferred", "idreg", "lt", "lu", "officiallyprinted", "packinglistdate", "packinglistnum", "paymentexpiring", "registryreference", "rtf", "txt", "idinvkind", "idcurrency", "idexpirationkind", "idtreasurer", "flagintracom", "iso_origin", "iso_provenance", "iso_destination", "idcountry_origin", "idcountry_destination", "idintrastatkind", "idaccmotivedebit", "idaccmotivedebit_crg", "idaccmotivedebit_datacrg", "idintrastatpaymethod", "iso_payment", "flag_ddt", "flag", "idblacklist", "idinvkind_real", "yinv_real", "ninv_real", "autoinvoice", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "protocoldate", "idfepaymethodcondition", "idfepaymethod", "nelectronicinvoice", "yelectronicinvoice", "annotations", "arrivalprotocolnum", "toincludeinpaymentindicator", "resendingpcc", "touniqueregister", "idstampkind", "flag_auto_split_payment", "flag_enable_split_payment", "idsdi_acquisto", "idsdi_vendita", "flag_reverse_charge", "ipa_acq", "rifamm_acq", "ipa_ven_emittente", "rifamm_ven_emittente", "ipa_ven_cliente", "rifamm_ven_cliente", "ssntipospesa", "ssnflagtipospesa", "idinvkind_forwarder", "yinv_forwarder", "ninv_forwarder", "flagbit", "ssn_nprot", "requested_doc", "email_ven_cliente", "pec_ven_cliente");
            tinvoice.defineColumn("!registry", typeof(string));
            Tables.Add(tinvoice);
            tinvoice.defineKey("ninv", "yinv", "idinvkind");

            //////////////////// INVOICEDETAIL /////////////////////////////////
            var tinvoicedetail = new invoicedetailTable();
            tinvoicedetail.addBaseColumns("ninv", "rownum", "yinv", "annotations", "competencystart", "paymentcompetency", "competencystop", "ct", "cu", "detaildescription", "discount", "idaccmotive", "idmankind", "idupb", "lt", "lu", "manrownum", "nman", "number", "tax", "taxable", "unabatable", "yman", "idestimkind", "estimrownum", "nestim", "yestim", "idgroup", "idexp_taxable", "idexp_iva", "idinc_taxable", "idinc_iva", "ninv_main", "yinv_main", "idivakind", "idinvkind", "idsor1", "idsor2", "idsor3", "idintrastatcode", "idintrastatmeasure", "weight", "va3type", "intrastatoperationkind", "idintrastatservice", "idintrastatsupplymethod", "idlist", "idunit", "idpackage", "unitsforpackage", "npackage", "flag", "exception12", "intra12operationkind", "move12", "idupb_iva", "idinvkind_main", "leasing", "usedmodesospesometro", "resetresidualmandate", "idfetransfer", "fereferencerule", "cupcode", "cigcode", "idpccdebitstatus", "idpccdebitmotive", "idcostpartition", "expensekind", "rounding", "idepexp", "idepacc", "flagbit", "idfinmotive", "iduniqueformcode", "ycon", "ncon", "codicevalore", "codicetipo", "idsor_siope", "idepexp_pre");
            Tables.Add(tinvoicedetail);
            tinvoicedetail.defineKey("ninv", "rownum", "yinv", "idinvkind");

            //////////////////// INCOMEINVOICE /////////////////////////////////
            var tincomeinvoice = new MetaTable("incomeinvoice");
            tincomeinvoice.defineColumn("ninv", typeof(int), false);
            tincomeinvoice.defineColumn("yinv", typeof(short), false);
            tincomeinvoice.defineColumn("ct", typeof(DateTime), false);
            tincomeinvoice.defineColumn("cu", typeof(string), false);
            tincomeinvoice.defineColumn("lt", typeof(DateTime), false);
            tincomeinvoice.defineColumn("lu", typeof(string), false);
            tincomeinvoice.defineColumn("idinc", typeof(int), false);
            tincomeinvoice.defineColumn("idinvkind", typeof(int), false);
            tincomeinvoice.defineColumn("movkind", typeof(short), false);
            Tables.Add(tincomeinvoice);
            tincomeinvoice.defineKey("ninv", "yinv", "idinc", "idinvkind");

            //////////////////// FLUSSOINCASSI /////////////////////////////////
            var tflussoincassi = new flussoincassiTable();
            tflussoincassi.addBaseColumns("idflusso", "codiceflusso", "trn", "ct", "cu", "lt", "lu", "ayear", "causale", "dataincasso", "nbill", "importo", "to_complete", "elaborato", "active", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05");
            Tables.Add(tflussoincassi);
            tflussoincassi.defineKey("idflusso");

            //////////////////// FLUSSOINCASSIDETAIL /////////////////////////////////
            var tflussoincassidetail = new flussoincassidetailTable();
            tflussoincassidetail.addBaseColumns("idflusso", "iddetail", "iduniqueformcode", "iuv", "importo", "ct", "cu", "lt", "lu", "cf", "p_iva");
            Tables.Add(tflussoincassidetail);
            tflussoincassidetail.defineKey("idflusso", "iddetail");

            //////////////////// REGISTRYREFERENCE /////////////////////////////////
            var tregistryreference = new registryreferenceTable();
            tregistryreference.addBaseColumns("idreg", "idregistryreference", "referencename", "ct", "cu", "email", "faxnumber", "flagdefault", "lt", "lu", "mobilenumber", "passwordweb", "phonenumber", "registryreferencerole", "rtf", "txt", "userweb", "skypenumber", "msnnumber", "activeweb", "iterweb", "saltweb");
            Tables.Add(tregistryreference);
            tregistryreference.defineKey("idreg", "idregistryreference");

            //////////////////// INVOICEKIND /////////////////////////////////
            var tinvoicekind = new invoicekindTable();
            tinvoicekind.addBaseColumns("ct", "cu", "description", "lt", "lu", "codeinvkind", "idinvkind", "flag", "flag_autodocnumbering", "formatstring", "active", "idinvkind_auto", "printingcode", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "address", "header", "notes1", "notes2", "notes3", "ipa_fe", "riferimento_amministrazione", "enable_fe");
            Tables.Add(tinvoicekind);
            tinvoicekind.defineKey("idinvkind");

            //////////////////// CURRENCY /////////////////////////////////
            var tcurrency = new MetaTable("currency");
            tcurrency.defineColumn("ct", typeof(DateTime), false);
            tcurrency.defineColumn("cu", typeof(string), false);
            tcurrency.defineColumn("description", typeof(string), false);
            tcurrency.defineColumn("lt", typeof(DateTime), false);
            tcurrency.defineColumn("lu", typeof(string), false);
            tcurrency.defineColumn("codecurrency", typeof(string));
            tcurrency.defineColumn("idcurrency", typeof(int), false);
            Tables.Add(tcurrency);
            tcurrency.defineKey("idcurrency");

            //////////////////// IVAREGISTER /////////////////////////////////
            var tivaregister = new ivaregisterTable();
            tivaregister.addBaseColumns("nivaregister", "yivaregister", "ct", "cu", "lt", "lu", "ninv", "protocolnum", "yinv", "idinvkind", "idivaregisterkind");
            Tables.Add(tivaregister);
            tivaregister.defineKey("nivaregister", "yivaregister", "idivaregisterkind");

            //////////////////// LIST /////////////////////////////////
            var tlist = new listTable();
            tlist.addBaseColumns("idlist", "description", "intcode", "intbarcode", "extcode", "extbarcode", "validitystop", "active", "idpackage", "idunit", "unitsforpackage", "has_expiry", "cu", "ct", "lu", "lt", "idlistclass", "pic", "picext", "nmin", "ntoreorder", "tounload", "timesupply", "nmaxorder", "price", "insinfo", "descrforuser");
            Tables.Add(tlist);
            tlist.defineKey("idlist");

            //////////////////// INVOICEKINDREGISTERKIND /////////////////////////////////
            var tinvoicekindregisterkind = new MetaTable("invoicekindregisterkind");
            tinvoicekindregisterkind.defineColumn("ct", typeof(DateTime), false);
            tinvoicekindregisterkind.defineColumn("cu", typeof(string), false);
            tinvoicekindregisterkind.defineColumn("lt", typeof(DateTime), false);
            tinvoicekindregisterkind.defineColumn("lu", typeof(string), false);
            tinvoicekindregisterkind.defineColumn("idinvkind", typeof(int), false);
            tinvoicekindregisterkind.defineColumn("idivaregisterkind", typeof(int), false);
            Tables.Add(tinvoicekindregisterkind);
            tinvoicekindregisterkind.defineKey("idinvkind", "idivaregisterkind");

            //////////////////// IVAREGISTERKIND /////////////////////////////////
            var tivaregisterkind = new ivaregisterkindTable();
            tivaregisterkind.addBaseColumns("ct", "cu", "description", "lt", "lu", "registerclass", "idivaregisterkindunified", "flagactivity", "codeivaregisterkind", "idivaregisterkind", "compensation", "idtreasurer");
            Tables.Add(tivaregisterkind);
            tivaregisterkind.defineKey("idivaregisterkind");

            //////////////////// REPORT /////////////////////////////////
            var treport = new MetaTable("report");
            treport.defineColumn("modulename", typeof(string), false);
            treport.defineColumn("reportname", typeof(string), false);
            treport.defineColumn("description", typeof(string), false);
            treport.defineColumn("filename", typeof(string), false);
            treport.defineColumn("groupname", typeof(string));
            treport.defineColumn("orientation", typeof(string), false);
            treport.defineColumn("papersize", typeof(string));
            treport.defineColumn("sp_doupdate", typeof(string));
            treport.defineColumn("timeout", typeof(int));
            treport.defineColumn("webvisible", typeof(string));
            treport.defineColumn("active", typeof(string));
            treport.defineColumn("flag_both", typeof(string));
            treport.defineColumn("flag_cash", typeof(string));
            treport.defineColumn("flag_comp", typeof(string));
            treport.defineColumn("flag_credit", typeof(string));
            treport.defineColumn("flag_proceeds", typeof(string));
            Tables.Add(treport);
            treport.defineKey("reportname");

            //////////////////// WEBPAYMENT /////////////////////////////////
            var twebpayment = new webpaymentTable();
            twebpayment.addBaseColumns("idwebpayment", "cf", "ct", "cu", "email", "forename", "idcustomuser", "idlcard", "idman", "lt", "lu", "nwebpayment", "surname", "ywebpayment", "idwebpaymentstatus", "idreg", "iuv", "qrcode", "idflussocrediti", "adate");
            Tables.Add(twebpayment);
            twebpayment.defineKey("idwebpayment");

            //////////////////// WEBPAYMENTSTATUS /////////////////////////////////
            var twebpaymentstatus = new MetaTable("webpaymentstatus");
            twebpaymentstatus.defineColumn("idwebpaymentstatus", typeof(short), false);
            twebpaymentstatus.defineColumn("ct", typeof(DateTime), false);
            twebpaymentstatus.defineColumn("cu", typeof(string), false);
            twebpaymentstatus.defineColumn("description", typeof(string), false);
            twebpaymentstatus.defineColumn("listingorder", typeof(int));
            twebpaymentstatus.defineColumn("lt", typeof(DateTime), false);
            twebpaymentstatus.defineColumn("lu", typeof(string), false);
            Tables.Add(twebpaymentstatus);
            twebpaymentstatus.defineKey("idwebpaymentstatus");

            //////////////////// GENERALREPORTPARAMETER /////////////////////////////////
            var tgeneralreportparameter = new MetaTable("generalreportparameter");
            tgeneralreportparameter.defineColumn("idparam", typeof(string), false);
            tgeneralreportparameter.defineColumn("paramvalue", typeof(string));
            tgeneralreportparameter.defineColumn("description", typeof(string));
            tgeneralreportparameter.defineColumn("lt", typeof(DateTime));
            tgeneralreportparameter.defineColumn("lu", typeof(string));
            tgeneralreportparameter.defineColumn("stop", typeof(DateTime));
            tgeneralreportparameter.defineColumn("start", typeof(DateTime), false);
            Tables.Add(tgeneralreportparameter);
            tgeneralreportparameter.defineKey("idparam", "start");

            //////////////////// IVAKIND /////////////////////////////////
            var tivakind = new ivakindTable();
            tivakind.addBaseColumns("ct", "cu", "description", "lt", "lu", "rate", "unabatabilitypercentage", "active", "idivataxablekind", "idivakind", "codeivakind", "flag", "annotations", "idfenature");
            Tables.Add(tivakind);
            tivakind.defineKey("idivakind");

            #endregion


            #region DataRelation creation
            this.defineRelation("income_incomeinvoice", "income", "incomeinvoice", "idinc");
            var cPar   = new [] { income.Columns["idinc"] };
            var cChild = new [] { invoicedetail.Columns["idinc_taxable"] };
            Relations.Add(new DataRelation("income_invoicedetail", cPar, cChild, false));

            cPar   = new [] { income.Columns["idinc"] };
            cChild = new [] { invoicedetail.Columns["idinc_iva"] };
            Relations.Add(new DataRelation("income_invoicedetail1", cPar, cChild, false));

            this.defineRelation("flussocrediti_flussocreditidetail", "flussocrediti", "flussocreditidetail", "idflusso");
            this.defineRelation("registry_flussocreditidetail", "registry", "flussocreditidetail", "idreg");
            this.defineRelation("finmotive_finmotivedetail", "finmotive", "finmotivedetail", "idfinmotive");
            this.defineRelation("income_incomeestimate", "income", "incomeestimate", "idinc");
            this.defineRelation("estimate_incomeestimate", "estimate", "incomeestimate", "idestimkind", "yestim", "nestim");
            cPar   = new [] { income.Columns["idinc"] };
            cChild = new [] { income.Columns["parentidinc"] };
            Relations.Add(new DataRelation("incomeincome", cPar, cChild, false));

            this.defineRelation("FK_estimate_estimatekind", "estimatekind", "estimate", "idestimkind");
            this.defineRelation("FK_estimatedetail_estimatekind", "estimatekind", "estimatedetail", "idestimkind");
            this.defineRelation("FK_estimatedetail_estimate", "estimate", "estimatedetail", "idestimkind", "yestim", "nestim");
            this.defineRelation("registry_registryreference", "registry", "registryreference", "idreg");
            this.defineRelation("invoicekind_invoicedetail", "invoicekind", "invoicedetail", "idinvkind");
            this.defineRelation("currency_invoice", "currency", "invoice", "idcurrency");
            this.defineRelation("list_flussocreditidetail", "list", "flussocreditidetail", "idlist");
            this.defineRelation("ivaregisterkindivaregister", "ivaregisterkind", "ivaregister", "idivaregisterkind");
            cPar   = new [] { flussocrediti.Columns["idflusso"] };
            cChild = new [] { webpayment.Columns["idflussocrediti"] };
            Relations.Add(new DataRelation("flussocrediti_webpayment", cPar, cChild, false));

            this.defineRelation("webpaymentstatus_webpayment", "webpaymentstatus", "webpayment", "idwebpaymentstatus");
            this.defineRelation("invoice_incomeinvoice", "invoice", "incomeinvoice", "ninv", "yinv", "idinvkind");
            cPar   = new [] { invoicedetail.Columns["idinvkind"], invoicedetail.Columns["yinv"], invoicedetail.Columns["ninv"], invoicedetail.Columns["rownum"] };
            cChild = new [] { flussocreditidetail.Columns["idinvkind"], flussocreditidetail.Columns["yinv"], flussocreditidetail.Columns["ninv"], flussocreditidetail.Columns["invrownum"] };
            Relations.Add(new DataRelation("invoicedetail_flussocreditidetail", cPar, cChild, false));

            this.defineRelation("estimatedetail_flussocreditidetail", "estimatedetail", "flussocreditidetail", "idestimkind", "yestim", "nestim", "rownum");
            this.defineRelation("income_incomelast", "income", "incomelast", "idinc");
            this.defineRelation("income_incomesorted", "income", "incomesorted", "idinc");
            this.defineRelation("income_incomeyear", "income", "incomeyear", "idinc");
            this.defineRelation("FK_flussoincassi_flussoincassidetail", "flussoincassi", "flussoincassidetail", "idflusso");
            this.defineRelation("invoice_invoicedetail", "invoice", "invoicedetail", "idinvkind", "yinv", "ninv");
            this.defineRelation("ivaregisterinvoice", "invoice", "ivaregister", "idinvkind", "yinv", "ninv");
            cPar   = new [] { income.Columns["idinc"] };
            cChild = new [] { estimatedetail.Columns["idinc_taxable"] };
            Relations.Add(new DataRelation("income_estimatedetail", cPar, cChild, false));

            cPar   = new [] { income.Columns["idinc"] };
            cChild = new [] { estimatedetail.Columns["idinc_iva"] };
            Relations.Add(new DataRelation("income_estimatedetail1", cPar, cChild, false));

            this.defineRelation("income_incomevar", "income", "incomevar", "idinc");
            #endregion
        }
Пример #5
0
        private void initClass()
        {
            DataSetName = "dsmeta";
            Prefix      = "";
            Namespace   = "http://tempuri.org/dsmeta.xsd";

            #region create DataTables
            //////////////////// MANDATEDETAIL /////////////////////////////////
            var tmandatedetail = new mandatedetailTable();
            tmandatedetail.addBaseColumns("yman", "nman", "rownum", "detaildescription", "annotations", "number", "taxable", "taxrate", "discount", "start", "stop", "cu", "ct", "lu", "lt", "idinv", "assetkind", "idexp_iva", "idexp_taxable", "idupb", "toinvoice", "idsor1", "idsor2", "idsor3", "idmankind", "competencystart", "competencystop", "tax", "idaccmotive", "idivakind", "unabatable", "flagmixed", "idreg", "idgroup", "idaccmotiveannulment", "flagactivity", "va3type", "ivanotes", "idlist", "idunit", "idpackage", "npackage", "unitsforpackage", "cupcode", "flagto_unload", "cigcode", "epkind", "rownum_origin", "contractamount", "idavcp", "idavcp_choice", "avcp_startcontract", "avcp_stopcontract", "avcp_description", "idcostpartition", "idpccdebitstatus", "idpccdebitmotive", "expensekind", "idepexp", "idepacc", "idlocation", "idupb_iva", "idsor_siope", "idepexp_pre");
            Tables.Add(tmandatedetail);
            tmandatedetail.defineKey("yman", "nman", "rownum", "idmankind");

            //////////////////// INVENTORYTREEVIEW /////////////////////////////////
            var tinventorytreeview = new MetaTable("inventorytreeview");
            tinventorytreeview.defineColumn("idinv", typeof(int), false);
            tinventorytreeview.defineColumn("codeinv", typeof(string), false);
            tinventorytreeview.defineColumn("nlevel", typeof(byte), false);
            tinventorytreeview.defineColumn("leveldescr", typeof(string), false);
            tinventorytreeview.defineColumn("paridinv", typeof(int));
            tinventorytreeview.defineColumn("description", typeof(string), false);
            tinventorytreeview.defineColumn("cu", typeof(string), false);
            tinventorytreeview.defineColumn("ct", typeof(DateTime), false);
            tinventorytreeview.defineColumn("lu", typeof(string), false);
            tinventorytreeview.defineColumn("lt", typeof(DateTime), false);
            Tables.Add(tinventorytreeview);
            tinventorytreeview.defineKey("idinv");

            //////////////////// EXPENSE_IVA /////////////////////////////////
            var texpense_iva = new expenseTable();
            texpense_iva.TableName = "expense_iva";
            texpense_iva.addBaseColumns("idexp", "nphase", "ymov", "nmov", "parentidexp", "idreg", "idman", "doc", "docdate", "description", "autokind", "idpayment", "expiration", "adate", "txt", "cu", "ct", "lu", "lt", "idformerexpense", "autocode");
            texpense_iva.ExtendedProperties["TableForReading"] = "expense";
            Tables.Add(texpense_iva);
            texpense_iva.defineKey("idexp");

            //////////////////// EXPENSE_IMPONIBILE /////////////////////////////////
            var texpense_imponibile = new expenseTable();
            texpense_imponibile.TableName = "expense_imponibile";
            texpense_imponibile.addBaseColumns("idexp", "nphase", "ymov", "nmov", "parentidexp", "idreg", "idman", "doc", "docdate", "description", "autokind", "idpayment", "expiration", "adate", "txt", "cu", "ct", "lu", "lt", "idformerexpense", "autocode");
            texpense_imponibile.ExtendedProperties["TableForReading"] = "expense";
            Tables.Add(texpense_imponibile);
            texpense_imponibile.defineKey("idexp");

            //////////////////// UPB /////////////////////////////////
            var tupb = new upbTable();
            tupb.addBaseColumns("idupb", "codeupb", "title", "paridupb", "idunderwriter", "idman", "requested", "granted", "previousappropriation", "expiration", "txt", "rtf", "cu", "ct", "lu", "lt", "assured", "printingorder", "active", "cupcode", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "flagactivity", "flagkind", "newcodeupb");
            Tables.Add(tupb);
            tupb.defineKey("idupb");

            //////////////////// SORTING1 /////////////////////////////////
            var tsorting1 = new sortingTable();
            tsorting1.TableName = "sorting1";
            tsorting1.addBaseColumns("idsorkind", "idsor", "sortcode", "paridsor", "nlevel", "description", "txt", "rtf", "cu", "ct", "lu", "lt", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "flagnodate", "movkind", "printingorder", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5");
            tsorting1.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting1);
            tsorting1.defineKey("idsor");

            //////////////////// SORTING2 /////////////////////////////////
            var tsorting2 = new sortingTable();
            tsorting2.TableName = "sorting2";
            tsorting2.addBaseColumns("idsorkind", "idsor", "sortcode", "paridsor", "nlevel", "description", "txt", "rtf", "cu", "ct", "lu", "lt", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "flagnodate", "movkind", "printingorder", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5");
            tsorting2.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting2);
            tsorting2.defineKey("idsor");

            //////////////////// SORTING3 /////////////////////////////////
            var tsorting3 = new sortingTable();
            tsorting3.TableName = "sorting3";
            tsorting3.addBaseColumns("idsorkind", "idsor", "sortcode", "paridsor", "nlevel", "description", "txt", "rtf", "cu", "ct", "lu", "lt", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "flagnodate", "movkind", "printingorder", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5");
            tsorting3.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting3);
            tsorting3.defineKey("idsor");

            //////////////////// INVOICEDETAIL /////////////////////////////////
            var tinvoicedetail = new invoicedetailTable();
            tinvoicedetail.addBaseColumns("idinvkind", "yinv", "ninv", "rownum", "idivakind", "detaildescription", "annotations", "taxable", "tax", "unabatable", "cu", "ct", "lu", "lt", "discount", "idmankind", "yman", "nman", "manrownum", "number", "idupb", "idsor1", "idsor2", "idsor3", "competencystart", "competencystop");
            tinvoicedetail.defineColumn("!tipodocumento", typeof(string));
            Tables.Add(tinvoicedetail);
            tinvoicedetail.defineKey("idinvkind", "yinv", "ninv", "rownum");

            //////////////////// INVOICEKIND /////////////////////////////////
            var tinvoicekind = new invoicekindTable();
            tinvoicekind.addBaseColumns("idinvkind", "flag", "description", "cu", "ct", "lu", "lt", "active");
            Tables.Add(tinvoicekind);
            tinvoicekind.defineKey("idinvkind");

            //////////////////// ACCMOTIVEAPPLIED /////////////////////////////////
            var taccmotiveapplied = new accmotiveappliedTable();
            taccmotiveapplied.addBaseColumns("idaccmotive", "paridaccmotive", "codemotive", "motive", "cu", "ct", "lu", "lt", "active", "idepoperation", "epoperation", "in_use", "flagdep", "flagamm", "expensekind");
            Tables.Add(taccmotiveapplied);
            taccmotiveapplied.defineKey("idaccmotive");

            //////////////////// IVAKIND /////////////////////////////////
            var tivakind = new ivakindTable();
            tivakind.addBaseColumns("idivakind", "ct", "cu", "description", "lt", "lu", "rate", "unabatabilitypercentage", "active", "flag", "codeivakind");
            Tables.Add(tivakind);
            tivakind.defineKey("idivakind");

            //////////////////// REGISTRYMAINVIEW /////////////////////////////////
            var tregistrymainview = new MetaTable("registrymainview");
            tregistrymainview.defineColumn("idreg", typeof(int), false);
            tregistrymainview.defineColumn("title", typeof(string), false);
            tregistrymainview.defineColumn("idregistryclass", typeof(string));
            tregistrymainview.defineColumn("registryclass", typeof(string));
            tregistrymainview.defineColumn("surname", typeof(string));
            tregistrymainview.defineColumn("forename", typeof(string));
            tregistrymainview.defineColumn("cf", typeof(string));
            tregistrymainview.defineColumn("p_iva", typeof(string));
            tregistrymainview.defineColumn("residence", typeof(int), false);
            tregistrymainview.defineColumn("residencekind", typeof(string));
            tregistrymainview.defineColumn("annotation", typeof(string));
            tregistrymainview.defineColumn("birthdate", typeof(DateTime));
            tregistrymainview.defineColumn("idcity", typeof(int));
            tregistrymainview.defineColumn("city", typeof(string));
            tregistrymainview.defineColumn("gender", typeof(string));
            tregistrymainview.defineColumn("foreigncf", typeof(string));
            tregistrymainview.defineColumn("idtitle", typeof(string));
            tregistrymainview.defineColumn("qualification", typeof(string));
            tregistrymainview.defineColumn("idmaritalstatus", typeof(string));
            tregistrymainview.defineColumn("maritalstatus", typeof(string));
            tregistrymainview.defineColumn("sortcode", typeof(string));
            tregistrymainview.defineColumn("registrykind", typeof(string));
            tregistrymainview.defineColumn("human", typeof(string));
            tregistrymainview.defineColumn("active", typeof(string), false);
            tregistrymainview.defineColumn("badgecode", typeof(string));
            tregistrymainview.defineColumn("maritalsurname", typeof(string));
            tregistrymainview.defineColumn("idcategory", typeof(string));
            tregistrymainview.defineColumn("extmatricula", typeof(string));
            tregistrymainview.defineColumn("idcentralizedcategory", typeof(string));
            tregistrymainview.defineColumn("cu", typeof(string), false);
            tregistrymainview.defineColumn("ct", typeof(DateTime), false);
            tregistrymainview.defineColumn("lu", typeof(string), false);
            tregistrymainview.defineColumn("lt", typeof(DateTime), false);
            tregistrymainview.defineColumn("location", typeof(string));
            tregistrymainview.defineColumn("idnation", typeof(int));
            tregistrymainview.defineColumn("nation", typeof(string));
            Tables.Add(tregistrymainview);
            tregistrymainview.defineKey("idreg");

            //////////////////// ACCMOTIVEAPPLIEDANNULMENT /////////////////////////////////
            var taccmotiveappliedannulment = new MetaTable("accmotiveappliedannulment");
            taccmotiveappliedannulment.defineColumn("idaccmotive", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("paridaccmotive", typeof(string));
            taccmotiveappliedannulment.defineColumn("codemotive", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("motive", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("cu", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("ct", typeof(DateTime), false);
            taccmotiveappliedannulment.defineColumn("lu", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("lt", typeof(DateTime), false);
            taccmotiveappliedannulment.defineColumn("active", typeof(string));
            taccmotiveappliedannulment.defineColumn("idepoperation", typeof(string), false);
            taccmotiveappliedannulment.defineColumn("epoperation", typeof(string));
            taccmotiveappliedannulment.defineColumn("in_use", typeof(string));
            taccmotiveappliedannulment.defineColumn("flagdep", typeof(string));
            taccmotiveappliedannulment.defineColumn("flagamm", typeof(string));
            Tables.Add(taccmotiveappliedannulment);
            taccmotiveappliedannulment.defineKey("idaccmotive");

            //////////////////// LISTCLASS /////////////////////////////////
            var tlistclass = new MetaTable("listclass");
            tlistclass.defineColumn("idlistclass", typeof(string), false);
            tlistclass.defineColumn("active", typeof(string), false);
            tlistclass.defineColumn("codelistclass", typeof(string), false);
            tlistclass.defineColumn("paridlistclass", typeof(string));
            tlistclass.defineColumn("printingorder", typeof(string), false);
            tlistclass.defineColumn("title", typeof(string), false);
            tlistclass.defineColumn("rtf", typeof(Byte[]));
            tlistclass.defineColumn("txt", typeof(string));
            tlistclass.defineColumn("ct", typeof(DateTime), false);
            tlistclass.defineColumn("cu", typeof(string), false);
            tlistclass.defineColumn("lt", typeof(DateTime), false);
            tlistclass.defineColumn("lu", typeof(string), false);
            tlistclass.defineColumn("flagvisiblekind", typeof(byte));
            Tables.Add(tlistclass);
            tlistclass.defineKey("idlistclass");

            //////////////////// LISTVIEW /////////////////////////////////
            var tlistview = new MetaTable("listview");
            tlistview.defineColumn("idlist", typeof(int), false);
            tlistview.defineColumn("description", typeof(string), false);
            tlistview.defineColumn("intcode", typeof(string), false);
            tlistview.defineColumn("intbarcode", typeof(string));
            tlistview.defineColumn("extcode", typeof(string));
            tlistview.defineColumn("extbarcode", typeof(string));
            tlistview.defineColumn("validitystop", typeof(DateTime));
            tlistview.defineColumn("active", typeof(string), false);
            tlistview.defineColumn("idpackage", typeof(int));
            tlistview.defineColumn("idunit", typeof(int));
            tlistview.defineColumn("unitsforpackage", typeof(int));
            tlistview.defineColumn("has_expiry", typeof(string), false);
            tlistview.defineColumn("idlistclass", typeof(string), false);
            tlistview.defineColumn("codelistclass", typeof(string), false);
            tlistview.defineColumn("listclass", typeof(string), false);
            tlistview.defineColumn("package", typeof(string));
            tlistview.defineColumn("unit", typeof(string));
            Tables.Add(tlistview);
            tlistview.defineKey("idlist");

            //////////////////// UNIT /////////////////////////////////
            var tunit = new MetaTable("unit");
            tunit.defineColumn("idunit", typeof(int), false);
            tunit.defineColumn("description", typeof(string), false);
            tunit.defineColumn("cu", typeof(string), false);
            tunit.defineColumn("ct", typeof(DateTime), false);
            tunit.defineColumn("lu", typeof(string), false);
            tunit.defineColumn("lt", typeof(DateTime), false);
            tunit.defineColumn("active", typeof(string), false);
            Tables.Add(tunit);
            tunit.defineKey("idunit");

            //////////////////// PACKAGE /////////////////////////////////
            var tpackage = new MetaTable("package");
            tpackage.defineColumn("idpackage", typeof(int), false);
            tpackage.defineColumn("description", typeof(string));
            tpackage.defineColumn("cu", typeof(string), false);
            tpackage.defineColumn("ct", typeof(DateTime), false);
            tpackage.defineColumn("lu", typeof(string), false);
            tpackage.defineColumn("lt", typeof(DateTime), false);
            tpackage.defineColumn("active", typeof(string), false);
            Tables.Add(tpackage);
            tpackage.defineKey("idpackage");

            //////////////////// STOCKVIEW /////////////////////////////////
            var tstockview = new MetaTable("stockview");
            tstockview.defineColumn("idstock", typeof(int), false);
            tstockview.defineColumn("idstore", typeof(int), false);
            tstockview.defineColumn("store", typeof(string), false);
            tstockview.defineColumn("idlist", typeof(int), false);
            tstockview.defineColumn("number", typeof(decimal), false);
            tstockview.defineColumn("residual", typeof(decimal), true, true);
            tstockview.defineColumn("amount", typeof(decimal), false);
            tstockview.defineColumn("expiry", typeof(DateTime));
            tstockview.defineColumn("idmankind", typeof(string));
            tstockview.defineColumn("mandatekind", typeof(string));
            tstockview.defineColumn("yman", typeof(short));
            tstockview.defineColumn("nman", typeof(int));
            tstockview.defineColumn("man_idgroup", typeof(int));
            tstockview.defineColumn("idinvkind", typeof(int));
            tstockview.defineColumn("invoicekind", typeof(string));
            tstockview.defineColumn("yinv", typeof(short));
            tstockview.defineColumn("ninv", typeof(int));
            tstockview.defineColumn("inv_idgroup", typeof(int));
            tstockview.defineColumn("idddt_in", typeof(int));
            tstockview.defineColumn("idstoreload_motive", typeof(int));
            tstockview.defineColumn("storeload_motive", typeof(string));
            tstockview.defineColumn("list", typeof(string), false);
            tstockview.defineColumn("intcode", typeof(string), false);
            tstockview.defineColumn("unit", typeof(string));
            tstockview.defineColumn("yddt_in", typeof(short));
            tstockview.defineColumn("nddt_in", typeof(string));
            tstockview.defineColumn("codelistclass", typeof(string));
            tstockview.defineColumn("listclass", typeof(string));
            tstockview.defineColumn("authrequired", typeof(string));
            tstockview.defineColumn("flagto_unload", typeof(string));
            tstockview.defineColumn("adate", typeof(DateTime));
            tstockview.defineColumn("idstocklocation", typeof(int));
            tstockview.defineColumn("stocklocationcode", typeof(string));
            tstockview.defineColumn("stocklocation", typeof(string));
            Tables.Add(tstockview);
            tstockview.defineKey("idstock");

            //////////////////// MANDATEKIND /////////////////////////////////
            var tmandatekind = new mandatekindTable();
            tmandatekind.addBaseColumns("idmankind", "active", "ct", "cu", "description", "idupb", "lt", "lu", "rtf", "txt", "email", "faxnumber", "office", "phonenumber", "linktoasset", "linktoinvoice", "multireg", "deltaamount", "deltapercentage", "flag_autodocnumbering", "flagactivity", "name_c", "name_l", "name_r", "title_c", "title_l", "title_r", "notes1", "notes2", "notes3", "warnmail", "isrequest", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "assetkind", "dangermail", "address", "header", "flag", "touniqueregister", "idivakind_forced");
            Tables.Add(tmandatekind);
            tmandatekind.defineKey("idmankind");

            //////////////////// PCCDEBITMOTIVE /////////////////////////////////
            var tpccdebitmotive = new MetaTable("pccdebitmotive");
            tpccdebitmotive.defineColumn("idpccdebitmotive", typeof(string), false);
            tpccdebitmotive.defineColumn("description", typeof(string));
            tpccdebitmotive.defineColumn("listingorder", typeof(int));
            tpccdebitmotive.defineColumn("lu", typeof(string), false);
            tpccdebitmotive.defineColumn("lt", typeof(DateTime), false);
            tpccdebitmotive.defineColumn("flagstatus", typeof(int));
            Tables.Add(tpccdebitmotive);
            tpccdebitmotive.defineKey("idpccdebitmotive");

            //////////////////// PCCDEBITSTATUS /////////////////////////////////
            var tpccdebitstatus = new MetaTable("pccdebitstatus");
            tpccdebitstatus.defineColumn("idpccdebitstatus", typeof(string), false);
            tpccdebitstatus.defineColumn("description", typeof(string));
            tpccdebitstatus.defineColumn("lt", typeof(DateTime), false);
            tpccdebitstatus.defineColumn("lu", typeof(string), false);
            tpccdebitstatus.defineColumn("listingorder", typeof(int));
            tpccdebitstatus.defineColumn("flag", typeof(int));
            Tables.Add(tpccdebitstatus);
            tpccdebitstatus.defineKey("idpccdebitstatus");

            //////////////////// COSTPARTITION /////////////////////////////////
            var tcostpartition = new MetaTable("costpartition");
            tcostpartition.defineColumn("idcostpartition", typeof(int), false);
            tcostpartition.defineColumn("title", typeof(string));
            tcostpartition.defineColumn("kind", typeof(string));
            tcostpartition.defineColumn("lt", typeof(DateTime));
            tcostpartition.defineColumn("lu", typeof(string));
            tcostpartition.defineColumn("ct", typeof(DateTime));
            tcostpartition.defineColumn("cu", typeof(string));
            tcostpartition.defineColumn("costpartitioncode", typeof(string));
            tcostpartition.defineColumn("active", typeof(string));
            tcostpartition.defineColumn("description", typeof(string));
            Tables.Add(tcostpartition);
            tcostpartition.defineKey("idcostpartition");

            //////////////////// EPEXP /////////////////////////////////
            var tepexp = new epexpTable();
            tepexp.addBaseColumns("idepexp", "adate", "ct", "cu", "description", "doc", "docdate", "idman", "idreg", "idrelated", "lt", "lu", "nepexp", "nphase", "paridepexp", "rtf", "start", "stop", "txt", "yepexp");
            Tables.Add(tepexp);
            tepexp.defineKey("idepexp");

            //////////////////// EPACC /////////////////////////////////
            var tepacc = new MetaTable("epacc");
            tepacc.defineColumn("idepacc", typeof(int), false);
            tepacc.defineColumn("adate", typeof(DateTime), false);
            tepacc.defineColumn("ct", typeof(DateTime), false);
            tepacc.defineColumn("cu", typeof(string), false);
            tepacc.defineColumn("description", typeof(string), false);
            tepacc.defineColumn("doc", typeof(string));
            tepacc.defineColumn("docdate", typeof(DateTime));
            tepacc.defineColumn("idman", typeof(int));
            tepacc.defineColumn("idreg", typeof(int));
            tepacc.defineColumn("idrelated", typeof(string));
            tepacc.defineColumn("lt", typeof(DateTime), false);
            tepacc.defineColumn("lu", typeof(string), false);
            tepacc.defineColumn("nepacc", typeof(int), false);
            tepacc.defineColumn("nphase", typeof(short), false);
            tepacc.defineColumn("paridepacc", typeof(int));
            tepacc.defineColumn("rtf", typeof(Byte[]));
            tepacc.defineColumn("start", typeof(DateTime));
            tepacc.defineColumn("stop", typeof(DateTime));
            tepacc.defineColumn("txt", typeof(string));
            tepacc.defineColumn("yepacc", typeof(short), false);
            tepacc.defineColumn("flagvariation", typeof(string));
            Tables.Add(tepacc);
            tepacc.defineKey("idepacc");

            //////////////////// LOCATIONVIEW /////////////////////////////////
            var tlocationview = new MetaTable("locationview");
            tlocationview.defineColumn("idlocation", typeof(int), false);
            tlocationview.defineColumn("locationcode", typeof(string), false);
            tlocationview.defineColumn("active", typeof(string), false);
            tlocationview.defineColumn("nlevel", typeof(byte), false);
            tlocationview.defineColumn("leveldescr", typeof(string), false);
            tlocationview.defineColumn("paridlocation", typeof(int));
            tlocationview.defineColumn("description", typeof(string), false);
            tlocationview.defineColumn("idman", typeof(int));
            tlocationview.defineColumn("manager", typeof(string));
            tlocationview.defineColumn("cu", typeof(string), false);
            tlocationview.defineColumn("ct", typeof(DateTime), false);
            tlocationview.defineColumn("lu", typeof(string), false);
            tlocationview.defineColumn("lt", typeof(DateTime), false);
            tlocationview.defineColumn("idsor01", typeof(int));
            tlocationview.defineColumn("idsor02", typeof(int));
            tlocationview.defineColumn("idsor03", typeof(int));
            tlocationview.defineColumn("idsor04", typeof(int));
            tlocationview.defineColumn("idsor05", typeof(int));
            Tables.Add(tlocationview);
            tlocationview.defineKey("idlocation");

            //////////////////// UPB_IVA /////////////////////////////////
            var tupb_iva = new upbTable();
            tupb_iva.TableName = "upb_iva";
            tupb_iva.addBaseColumns("idupb", "active", "assured", "codeupb", "ct", "cu", "expiration", "granted", "lt", "lu", "paridupb", "previousappropriation", "previousassessment", "printingorder", "requested", "rtf", "title", "txt", "idman", "idunderwriter", "cupcode", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "flagactivity", "flagkind", "newcodeupb", "idtreasurer", "start", "stop", "cigcode", "idepupbkind", "flag");
            tupb_iva.ExtendedProperties["TableForReading"] = "upb";
            Tables.Add(tupb_iva);
            tupb_iva.defineKey("idupb");

            //////////////////// SORTING_SIOPE /////////////////////////////////
            var tsorting_siope = new sortingTable();
            tsorting_siope.TableName = "sorting_siope";
            tsorting_siope.addBaseColumns("ct", "cu", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5", "description", "flagnodate", "lt", "lu", "movkind", "printingorder", "rtf", "sortcode", "txt", "idsorkind", "idsor", "paridsor", "nlevel", "start", "stop", "email");
            tsorting_siope.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting_siope);
            tsorting_siope.defineKey("idsor");

            //////////////////// PRE_EPEXP /////////////////////////////////
            var tpre_epexp = new epexpTable();
            tpre_epexp.TableName = "pre_epexp";
            tpre_epexp.addBaseColumns("idepexp", "adate", "ct", "cu", "description", "doc", "docdate", "idman", "idreg", "idrelated", "lt", "lu", "nepexp", "nphase", "paridepexp", "rtf", "start", "stop", "txt", "yepexp");
            tpre_epexp.ExtendedProperties["TableForReading"] = "epexp";
            Tables.Add(tpre_epexp);
            tpre_epexp.defineKey("idepexp");

            #endregion


            #region DataRelation creation
            var cPar   = new [] { sorting_siope.Columns["idsor"] };
            var cChild = new [] { mandatedetail.Columns["idsor_siope"] };
            Relations.Add(new DataRelation("FK_sorting_siope_mandatedetail", cPar, cChild, false));

            cPar   = new [] { upb_iva.Columns["idupb"] };
            cChild = new [] { mandatedetail.Columns["idupb_iva"] };
            Relations.Add(new DataRelation("FK_upb_iva_mandatedetail", cPar, cChild, false));

            cPar   = new [] { mandatedetail.Columns["yman"], mandatedetail.Columns["nman"], mandatedetail.Columns["idgroup"], mandatedetail.Columns["idmankind"] };
            cChild = new [] { stockview.Columns["yman"], stockview.Columns["nman"], stockview.Columns["man_idgroup"], stockview.Columns["idmankind"] };
            Relations.Add(new DataRelation("mandatedetail_stockview", cPar, cChild, false));

            this.defineRelation("invoicekindinvoicedetail", "invoicekind", "invoicedetail", "idinvkind");
            cPar   = new [] { mandatedetail.Columns["yman"], mandatedetail.Columns["nman"], mandatedetail.Columns["rownum"], mandatedetail.Columns["idmankind"] };
            cChild = new [] { invoicedetail.Columns["yman"], invoicedetail.Columns["nman"], invoicedetail.Columns["manrownum"], invoicedetail.Columns["idmankind"] };
            Relations.Add(new DataRelation("mandatedetailinvoicedetail", cPar, cChild, false));

            this.defineRelation("FK_epexp_mandatedetail", "epexp", "mandatedetail", "idepexp");
            this.defineRelation("FK_pccdebitmotive_mandatedetail", "pccdebitmotive", "mandatedetail", "idpccdebitmotive");
            this.defineRelation("FK_pccdebitstatus_mandatedetail", "pccdebitstatus", "mandatedetail", "idpccdebitstatus");
            this.defineRelation("FK_unit_mandatedetail", "unit", "mandatedetail", "idunit");
            this.defineRelation("FK_package_mandatedetail", "package", "mandatedetail", "idpackage");
            this.defineRelation("FK_listview_mandatedetail", "listview", "mandatedetail", "idlist");
            this.defineRelation("registrymainviewmandatedetail", "registrymainview", "mandatedetail", "idreg");
            this.defineRelation("ivakindmandatedetail", "ivakind", "mandatedetail", "idivakind");
            this.defineRelation("accmotiveappliedmandatedetail", "accmotiveapplied", "mandatedetail", "idaccmotive");
            cPar   = new [] { expense_imponibile.Columns["idexp"] };
            cChild = new [] { mandatedetail.Columns["idexp_taxable"] };
            Relations.Add(new DataRelation("expense_imponibilemandatedetail", cPar, cChild, false));

            cPar   = new [] { expense_iva.Columns["idexp"] };
            cChild = new [] { mandatedetail.Columns["idexp_iva"] };
            Relations.Add(new DataRelation("expense_ivamandatedetail", cPar, cChild, false));

            this.defineRelation("inventorytreeviewmandatedetail", "inventorytreeview", "mandatedetail", "idinv");
            cPar   = new [] { sorting1.Columns["idsor"] };
            cChild = new [] { mandatedetail.Columns["idsor1"] };
            Relations.Add(new DataRelation("sortingmandatedetail", cPar, cChild, false));

            cPar   = new [] { sorting2.Columns["idsor"] };
            cChild = new [] { mandatedetail.Columns["idsor2"] };
            Relations.Add(new DataRelation("sortingmandatedetail1", cPar, cChild, false));

            cPar   = new [] { sorting3.Columns["idsor"] };
            cChild = new [] { mandatedetail.Columns["idsor3"] };
            Relations.Add(new DataRelation("sorting3mandatedetail", cPar, cChild, false));

            cPar   = new [] { accmotiveappliedannulment.Columns["idaccmotive"] };
            cChild = new [] { mandatedetail.Columns["idaccmotiveannulment"] };
            Relations.Add(new DataRelation("accmotiveappliedannulment_mandatedetail", cPar, cChild, false));

            this.defineRelation("mandatekind_mandatedetail", "mandatekind", "mandatedetail", "idmankind");
            this.defineRelation("costpartition_mandatedetail", "costpartition", "mandatedetail", "idcostpartition");
            cPar   = new [] { mandatekind.Columns["idivakind_forced"] };
            cChild = new [] { mandatedetail.Columns["idivakind"] };
            Relations.Add(new DataRelation("mandatekind_mandatedetail1", cPar, cChild, false));

            this.defineRelation("epacc_mandatedetail", "epacc", "mandatedetail", "idepacc");
            this.defineRelation("upbmandatedetail", "upb", "mandatedetail", "idupb");
            this.defineRelation("locationview_mandatedetail", "locationview", "mandatedetail", "idlocation");
            cPar   = new [] { pre_epexp.Columns["idepexp"] };
            cChild = new [] { mandatedetail.Columns["idepexp_pre"] };
            Relations.Add(new DataRelation("pre_epexp_mandatedetail", cPar, cChild, false));

            #endregion
        }
Пример #6
0
        private void initClass()
        {
            DataSetName = "dsmeta";
            Prefix      = "";
            Namespace   = "http://tempuri.org/dsmeta.xsd";

            #region create DataTables
            //////////////////// ESTIMATEKIND /////////////////////////////////
            var testimatekind = new estimatekindTable();
            testimatekind.addBaseColumns("idestimkind", "active", "ct", "cu", "description", "idupb", "lt", "lu", "rtf", "txt", "email", "faxnumber", "office", "phonenumber", "linktoinvoice", "multireg", "deltaamount", "deltapercentage", "flag_autodocnumbering", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "address", "header", "idivakind_forced", "flag");
            Tables.Add(testimatekind);
            testimatekind.defineKey("idestimkind");

            //////////////////// FLUSSOCREDITIDETAIL /////////////////////////////////
            var tflussocreditidetail = new flussocreditidetailTable();
            tflussocreditidetail.addBaseColumns("idflusso", "iddetail", "cu", "ct", "lu", "lt", "importoversamento", "idestimkind", "yestim", "nestim", "rownum", "idinvkind", "yinv", "ninv", "invrownum", "competencystart", "competencystop", "description", "idaccmotivecredit", "idaccmotiverevenue", "idaccmotiveundotax", "idaccmotiveundotaxpost", "idfinmotive", "idreg", "iduniqueformcode", "idupb", "nform", "stop", "expirationdate", "cf", "iuv", "annulment", "idunivoco", "codiceavviso", "idsor1", "idsor2", "idsor3", "tax", "barcodevalue", "barcodeimage", "qrcodevalue", "qrcodeimage", "idivakind", "number", "p_iva", "annotations", "idlist", "idupb_iva", "flag");
            Tables.Add(tflussocreditidetail);
            tflussocreditidetail.defineKey("idflusso", "iddetail");

            //////////////////// INVOICEKIND /////////////////////////////////
            var tinvoicekind = new invoicekindTable();
            tinvoicekind.addBaseColumns("ct", "cu", "description", "lt", "lu", "codeinvkind", "idinvkind", "flag", "flag_autodocnumbering", "formatstring", "active", "idinvkind_auto", "printingcode", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "address", "header", "notes1", "notes2", "notes3", "ipa_fe", "riferimento_amministrazione", "enable_fe");
            Tables.Add(tinvoicekind);
            tinvoicekind.defineKey("idinvkind");

            //////////////////// FINMOTIVE_INCOME /////////////////////////////////
            var tfinmotive_income = new MetaTable("finmotive_income");
            tfinmotive_income.defineColumn("idfinmotive", typeof(string), false);
            tfinmotive_income.defineColumn("active", typeof(string), false);
            tfinmotive_income.defineColumn("codemotive", typeof(string), false);
            tfinmotive_income.defineColumn("paridfinmotive", typeof(string));
            tfinmotive_income.defineColumn("title", typeof(string), false);
            tfinmotive_income.defineColumn("lt", typeof(DateTime));
            tfinmotive_income.defineColumn("lu", typeof(string));
            tfinmotive_income.defineColumn("ct", typeof(DateTime));
            tfinmotive_income.defineColumn("cu", typeof(string));
            tfinmotive_income.ExtendedProperties["TableForReading"] = "finmotive";
            Tables.Add(tfinmotive_income);
            tfinmotive_income.defineKey("idfinmotive");

            //////////////////// ACCMOTIVEAPPLIED_CREDIT /////////////////////////////////
            var taccmotiveapplied_credit = new accmotiveappliedTable();
            taccmotiveapplied_credit.TableName = "accmotiveapplied_credit";
            taccmotiveapplied_credit.addBaseColumns("idaccmotive", "paridaccmotive", "codemotive", "motive", "cu", "ct", "lu", "lt", "active", "idepoperation", "epoperation", "in_use", "flagamm", "flagdep", "expensekind");
            taccmotiveapplied_credit.ExtendedProperties["TableForReading"] = "accmotiveapplied";
            Tables.Add(taccmotiveapplied_credit);
            taccmotiveapplied_credit.defineKey("idepoperation", "idaccmotive");

            //////////////////// ACCMOTIVEAPPLIED_REVENUE /////////////////////////////////
            var taccmotiveapplied_revenue = new accmotiveappliedTable();
            taccmotiveapplied_revenue.TableName = "accmotiveapplied_revenue";
            taccmotiveapplied_revenue.addBaseColumns("idaccmotive", "paridaccmotive", "codemotive", "motive", "cu", "ct", "lu", "lt", "active", "idepoperation", "epoperation", "in_use", "flagamm", "flagdep", "expensekind");
            taccmotiveapplied_revenue.ExtendedProperties["TableForReading"] = "accmotiveapplied";
            Tables.Add(taccmotiveapplied_revenue);
            taccmotiveapplied_revenue.defineKey("idaccmotive", "idepoperation");

            //////////////////// ACCMOTIVEAPPLIED_UNDOTAX /////////////////////////////////
            var taccmotiveapplied_undotax = new accmotiveappliedTable();
            taccmotiveapplied_undotax.TableName = "accmotiveapplied_undotax";
            taccmotiveapplied_undotax.addBaseColumns("idaccmotive", "paridaccmotive", "codemotive", "motive", "cu", "ct", "lu", "lt", "active", "idepoperation", "epoperation", "in_use", "flagamm", "flagdep", "expensekind");
            taccmotiveapplied_undotax.ExtendedProperties["TableForReading"] = "accmotiveapplied";
            Tables.Add(taccmotiveapplied_undotax);
            taccmotiveapplied_undotax.defineKey("idaccmotive", "idepoperation");

            //////////////////// ACCMOTIVEAPPLIED_UNDOTAXPOST /////////////////////////////////
            var taccmotiveapplied_undotaxpost = new accmotiveappliedTable();
            taccmotiveapplied_undotaxpost.TableName = "accmotiveapplied_undotaxpost";
            taccmotiveapplied_undotaxpost.addBaseColumns("idaccmotive", "paridaccmotive", "codemotive", "motive", "cu", "ct", "lu", "lt", "active", "idepoperation", "epoperation", "in_use", "flagamm", "flagdep", "expensekind");
            taccmotiveapplied_undotaxpost.ExtendedProperties["TableForReading"] = "accmotiveapplied";
            Tables.Add(taccmotiveapplied_undotaxpost);
            taccmotiveapplied_undotaxpost.defineKey("idaccmotive", "idepoperation");

            //////////////////// REGISTRYMAINVIEW /////////////////////////////////
            var tregistrymainview = new MetaTable("registrymainview");
            tregistrymainview.defineColumn("idreg", typeof(int), false);
            tregistrymainview.defineColumn("title", typeof(string), false);
            tregistrymainview.defineColumn("idregistryclass", typeof(string));
            tregistrymainview.defineColumn("registryclass", typeof(string));
            tregistrymainview.defineColumn("surname", typeof(string));
            tregistrymainview.defineColumn("forename", typeof(string));
            tregistrymainview.defineColumn("cf", typeof(string));
            tregistrymainview.defineColumn("p_iva", typeof(string));
            tregistrymainview.defineColumn("residence", typeof(int), false);
            tregistrymainview.defineColumn("coderesidence", typeof(string));
            tregistrymainview.defineColumn("residencekind", typeof(string));
            tregistrymainview.defineColumn("annotation", typeof(string));
            tregistrymainview.defineColumn("birthdate", typeof(DateTime));
            tregistrymainview.defineColumn("idcity", typeof(int));
            tregistrymainview.defineColumn("city", typeof(string));
            tregistrymainview.defineColumn("gender", typeof(string));
            tregistrymainview.defineColumn("foreigncf", typeof(string));
            tregistrymainview.defineColumn("idtitle", typeof(string));
            tregistrymainview.defineColumn("qualification", typeof(string));
            tregistrymainview.defineColumn("idmaritalstatus", typeof(string));
            tregistrymainview.defineColumn("maritalstatus", typeof(string));
            tregistrymainview.defineColumn("idregistrykind", typeof(int));
            tregistrymainview.defineColumn("sortcode", typeof(string));
            tregistrymainview.defineColumn("registrykind", typeof(string));
            tregistrymainview.defineColumn("human", typeof(string));
            tregistrymainview.defineColumn("active", typeof(string), false);
            tregistrymainview.defineColumn("badgecode", typeof(string));
            tregistrymainview.defineColumn("maritalsurname", typeof(string));
            tregistrymainview.defineColumn("idcategory", typeof(string));
            tregistrymainview.defineColumn("category", typeof(string));
            tregistrymainview.defineColumn("extmatricula", typeof(string));
            tregistrymainview.defineColumn("idcentralizedcategory", typeof(string));
            tregistrymainview.defineColumn("cu", typeof(string), false);
            tregistrymainview.defineColumn("ct", typeof(DateTime), false);
            tregistrymainview.defineColumn("lu", typeof(string), false);
            tregistrymainview.defineColumn("lt", typeof(DateTime), false);
            tregistrymainview.defineColumn("location", typeof(string));
            tregistrymainview.defineColumn("idnation", typeof(int));
            tregistrymainview.defineColumn("nation", typeof(string));
            tregistrymainview.defineColumn("authorization_free", typeof(string));
            tregistrymainview.defineColumn("multi_cf", typeof(string));
            tregistrymainview.defineColumn("toredirect", typeof(int));
            tregistrymainview.defineColumn("idaccmotivedebit", typeof(string));
            tregistrymainview.defineColumn("codemotivedebit", typeof(string));
            tregistrymainview.defineColumn("idaccmotivecredit", typeof(string));
            tregistrymainview.defineColumn("codemotivecredit", typeof(string));
            tregistrymainview.defineColumn("ccp", typeof(string));
            tregistrymainview.defineColumn("flagbankitaliaproceeds", typeof(string));
            tregistrymainview.defineColumn("ipa_fe", typeof(string));
            tregistrymainview.defineColumn("flag_pa", typeof(string));
            tregistrymainview.defineColumn("sdi_norifamm", typeof(string));
            tregistrymainview.defineColumn("sdi_defrifamm", typeof(string));
            Tables.Add(tregistrymainview);
            tregistrymainview.defineKey("idreg");

            //////////////////// UPB /////////////////////////////////
            var tupb = new upbTable();
            tupb.addBaseColumns("idupb", "active", "assured", "codeupb", "ct", "cu", "expiration", "granted", "lt", "lu", "paridupb", "previousappropriation", "previousassessment", "printingorder", "requested", "rtf", "title", "txt", "idman", "idunderwriter", "cupcode", "idsor01", "idsor02", "idsor03", "idsor04", "idsor05", "flagactivity", "flagkind", "newcodeupb", "idtreasurer", "start", "stop", "cigcode", "idepupbkind");
            Tables.Add(tupb);
            tupb.defineKey("idupb");

            //////////////////// SORTING3 /////////////////////////////////
            var tsorting3 = new sortingTable();
            tsorting3.TableName = "sorting3";
            tsorting3.addBaseColumns("ct", "cu", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5", "description", "flagnodate", "lt", "lu", "movkind", "printingorder", "rtf", "sortcode", "txt", "idsorkind", "idsor", "paridsor", "nlevel", "start", "stop", "email");
            tsorting3.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting3);
            tsorting3.defineKey("idsor");

            //////////////////// SORTING1 /////////////////////////////////
            var tsorting1 = new sortingTable();
            tsorting1.TableName = "sorting1";
            tsorting1.addBaseColumns("ct", "cu", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5", "description", "flagnodate", "lt", "lu", "movkind", "printingorder", "rtf", "sortcode", "txt", "idsorkind", "idsor", "paridsor", "nlevel", "start", "stop", "email");
            tsorting1.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting1);
            tsorting1.defineKey("idsor");

            //////////////////// SORTING2 /////////////////////////////////
            var tsorting2 = new sortingTable();
            tsorting2.TableName = "sorting2";
            tsorting2.addBaseColumns("ct", "cu", "defaultN1", "defaultN2", "defaultN3", "defaultN4", "defaultN5", "defaultS1", "defaultS2", "defaultS3", "defaultS4", "defaultS5", "defaultv1", "defaultv2", "defaultv3", "defaultv4", "defaultv5", "description", "flagnodate", "lt", "lu", "movkind", "printingorder", "rtf", "sortcode", "txt", "idsorkind", "idsor", "paridsor", "nlevel", "start", "stop", "email");
            tsorting2.ExtendedProperties["TableForReading"] = "sorting";
            Tables.Add(tsorting2);
            tsorting2.defineKey("idsor");

            //////////////////// IVAKIND /////////////////////////////////
            var tivakind = new ivakindTable();
            tivakind.addBaseColumns("ct", "cu", "description", "lt", "lu", "rate", "unabatabilitypercentage", "active", "idivataxablekind", "idivakind", "codeivakind", "flag", "annotations", "idfenature");
            Tables.Add(tivakind);
            tivakind.defineKey("idivakind");

            //////////////////// LIST /////////////////////////////////
            var tlist = new listTable();
            tlist.addBaseColumns("idlist", "description", "intcode", "intbarcode", "extcode", "extbarcode", "validitystop", "active", "idpackage", "idunit", "unitsforpackage", "has_expiry", "cu", "ct", "lu", "lt", "idlistclass", "pic", "picext", "nmin", "ntoreorder", "tounload", "timesupply", "nmaxorder", "price", "insinfo", "descrforuser");
            Tables.Add(tlist);
            tlist.defineKey("idlist");

            //////////////////// UPB_IVA /////////////////////////////////
            var tupb_iva = new MetaTable("upb_iva");
            tupb_iva.defineColumn("idupb", typeof(string), false);
            tupb_iva.defineColumn("active", typeof(string));
            tupb_iva.defineColumn("assured", typeof(string));
            tupb_iva.defineColumn("codeupb", typeof(string), false);
            tupb_iva.defineColumn("ct", typeof(DateTime), false);
            tupb_iva.defineColumn("cu", typeof(string), false);
            tupb_iva.defineColumn("expiration", typeof(DateTime));
            tupb_iva.defineColumn("granted", typeof(decimal));
            tupb_iva.defineColumn("lt", typeof(DateTime), false);
            tupb_iva.defineColumn("lu", typeof(string), false);
            tupb_iva.defineColumn("paridupb", typeof(string));
            tupb_iva.defineColumn("previousappropriation", typeof(decimal));
            tupb_iva.defineColumn("previousassessment", typeof(decimal));
            tupb_iva.defineColumn("printingorder", typeof(string), false);
            tupb_iva.defineColumn("requested", typeof(decimal));
            tupb_iva.defineColumn("rtf", typeof(Byte[]));
            tupb_iva.defineColumn("title", typeof(string), false);
            tupb_iva.defineColumn("txt", typeof(string));
            tupb_iva.defineColumn("idman", typeof(int));
            tupb_iva.defineColumn("idunderwriter", typeof(int));
            tupb_iva.defineColumn("cupcode", typeof(string));
            tupb_iva.defineColumn("idsor01", typeof(int));
            tupb_iva.defineColumn("idsor02", typeof(int));
            tupb_iva.defineColumn("idsor03", typeof(int));
            tupb_iva.defineColumn("idsor04", typeof(int));
            tupb_iva.defineColumn("idsor05", typeof(int));
            tupb_iva.defineColumn("flagactivity", typeof(short));
            tupb_iva.defineColumn("flagkind", typeof(byte));
            tupb_iva.defineColumn("newcodeupb", typeof(string));
            tupb_iva.defineColumn("idtreasurer", typeof(int));
            tupb_iva.defineColumn("start", typeof(DateTime));
            tupb_iva.defineColumn("stop", typeof(DateTime));
            tupb_iva.defineColumn("cigcode", typeof(string));
            tupb_iva.defineColumn("idepupbkind", typeof(int));
            tupb_iva.defineColumn("flag", typeof(int));
            Tables.Add(tupb_iva);
            tupb_iva.defineKey("idupb");

            #endregion


            #region DataRelation creation
            this.defineRelation("FK_upb_flussocreditidetail", "upb", "flussocreditidetail", "idupb");
            this.defineRelation("FK_registrymainview_flussocreditidetail", "registrymainview", "flussocreditidetail", "idreg");
            var cPar   = new [] { accmotiveapplied_undotaxpost.Columns["idaccmotive"] };
            var cChild = new [] { flussocreditidetail.Columns["idaccmotiveundotaxpost"] };
            Relations.Add(new DataRelation("FK_accmotiveapplied_undotaxpost_flussocreditidetail", cPar, cChild, false));

            cPar   = new [] { accmotiveapplied_undotax.Columns["idaccmotive"] };
            cChild = new [] { flussocreditidetail.Columns["idaccmotiveundotax"] };
            Relations.Add(new DataRelation("FK_accmotiveapplied_undotax_flussocreditidetail", cPar, cChild, false));

            cPar   = new [] { accmotiveapplied_revenue.Columns["idaccmotive"] };
            cChild = new [] { flussocreditidetail.Columns["idaccmotiverevenue"] };
            Relations.Add(new DataRelation("FK_accmotiveapplied_revenue_flussocreditidetail", cPar, cChild, false));

            cPar   = new [] { accmotiveapplied_credit.Columns["idaccmotive"] };
            cChild = new [] { flussocreditidetail.Columns["idaccmotivecredit"] };
            Relations.Add(new DataRelation("FK_accmotiveapplied_credit_flussocreditidetail", cPar, cChild, false));

            this.defineRelation("FK_finmotive_income_flussocreditidetail", "finmotive_income", "flussocreditidetail", "idfinmotive");
            this.defineRelation("FK_invoicekind_flussocreditidetail", "invoicekind", "flussocreditidetail", "idinvkind");
            this.defineRelation("FK_estimatekind_flussocreditidetail", "estimatekind", "flussocreditidetail", "idestimkind");
            cPar   = new [] { sorting3.Columns["idsor"] };
            cChild = new [] { flussocreditidetail.Columns["idsor3"] };
            Relations.Add(new DataRelation("sorting3_flussocreditidetail", cPar, cChild, false));

            cPar   = new [] { sorting2.Columns["idsor"] };
            cChild = new [] { flussocreditidetail.Columns["idsor2"] };
            Relations.Add(new DataRelation("sorting2_flussocreditidetail", cPar, cChild, false));

            cPar   = new [] { sorting1.Columns["idsor"] };
            cChild = new [] { flussocreditidetail.Columns["idsor1"] };
            Relations.Add(new DataRelation("sorting1_flussocreditidetail", cPar, cChild, false));

            this.defineRelation("ivakind_flussocreditidetail", "ivakind", "flussocreditidetail", "idivakind");
            this.defineRelation("list_flussocreditidetail", "list", "flussocreditidetail", "idlist");
            cPar   = new [] { upb_iva.Columns["idupb"] };
            cChild = new [] { flussocreditidetail.Columns["idupb_iva"] };
            Relations.Add(new DataRelation("upb_iva_flussocreditidetail", cPar, cChild, false));

            #endregion
        }