public static bool GetData(long Organisation_ID, ref string Name, ref string Tax_ID, ref string Registration_ID, ref UniversalInvoice.Address Address, ref string PhoneNumber, ref string FaxNumber, ref string Email, ref string HomePage, ref string OrganisationType, ref string Logo_Hash, ref Image LogoImage, ref string Logo_Description ) { string Err = null; string sql = @"select OrganisationData_$_org_$$Name, OrganisationData_$_org_$$Tax_ID, OrganisationData_$_org_$$Registration_ID, OrganisationData_$_cadrorg_$_strnorg_$$StreetName, OrganisationData_$_cadrorg_$_hounorg_$$HouseNumber, OrganisationData_$_cadrorg_$_citorg_$$City, OrganisationData_$_cadrorg_$_ziporg_$$ZIP, OrganisationData_$_cadrorg_$_couorg_$$Country, OrganisationData_$_cadrorg_$_storg_$$State, OrganisationData_$_cphnnorg_$$PhoneNumber, OrganisationData_$_cfaxnorg_$$FaxNumber, OrganisationData_$_cemailorg_$$Email, OrganisationData_$_chomepgorg_$$HomePage, OrganisationData_$_orgt_$$OrganisationTYPE, OrganisationData_$_logo.Image_Hash AS OrganisationData_$_logo_$$Image_Hash, OrganisationData_$_logo.Image_Data AS OrganisationData_$_logo_$$Image_Data, OrganisationData_$_logo.Description AS OrganisationData_$_logo_$$Description from OrganisationData_VIEW where OrganisationData_$_org_$$ID = " + Organisation_ID.ToString(); DataTable dt = new DataTable(); if (DBSync.DBSync.ReadDataTable(ref dt, sql, null, ref Err)) { if (dt.Rows.Count > 0) { Name = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_org_$$Name"]); Tax_ID = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_org_$$Tax_ID"]); Registration_ID = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_org_$$Registration_ID"]); Address.StreetName = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_cadrorg_$_strnorg_$$StreetName"]); Address.HouseNumber = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_cadrorg_$_ahounorg_$$HouseNumber"]); Address.City = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_cadrorg_$_acitorg_$$City"]); Address.ZIP = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_cadrorg_$_aziporg_$$ZIP"]); Address.State = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_cadrorg_$_couorg_$$Country"]); Address.State = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_cadrorg_$_storg_$$State"]); PhoneNumber = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_cphnnorg_$$PhoneNumber"]); FaxNumber = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_cfaxnorg_$$FaxNumber"]); Email = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_cemailorg_$$Email"]); HomePage = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_chomepgorg_$$HomePage"]); OrganisationType = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_orgt_$$OrganisationTYPE"]); Logo_Hash = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_logo_$$Image_Hash"]); LogoImage = DBTypes.tf._set_Image(dt.Rows[0]["OrganisationData_$_logo_$$Image_Data"]); Logo_Description = DBTypes.tf._set_string(dt.Rows[0]["OrganisationData_$_logo_$$Description"]); return true; } else { } } else { LogFile.Error.Show("ERROR:f_Atom_OrganisationData:GetData:sql=" + sql + "\r\nErr=" + Err); } return false; }
public void Fill_Sold_ShopC_ItemsData(List<object> xDocInvoice_ShopC_Item_Data_LIST, ltext lt_token_prefix, ref UniversalInvoice.ItemSold[] ItemsSold, int start_index, int count,bool bInvoiceStorno) { int i; int end_index = start_index + count; int j = 0; for (i = start_index; i < end_index; i++) { Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd = (Atom_DocInvoice_ShopC_Item_Price_Stock_Data)xDocInvoice_ShopC_Item_Data_LIST[j]; decimal Discount = appisd.Discount.v; decimal ExtraDiscount = appisd.ExtraDiscount.v; decimal TotalDiscount = StaticLib.Func.TotalDiscount(Discount, ExtraDiscount, GlobalData.Get_BaseCurrency_DecimalPlaces()); decimal Atom_Taxation_Rate = appisd.Atom_Taxation_Rate.v; decimal RetailItemsPriceWithDiscount = 0; decimal ItemsTaxPrice = 0; decimal ItemsNetPrice = 0; int decimal_places = appisd.Atom_Currency_DecimalPlaces.v; decimal RetailPricePerUnit = appisd.RetailPricePerUnit.v; decimal dQuantityAll = appisd.dQuantity_FromStock + appisd.dQuantity_FromFactory; StaticLib.Func.CalculatePrice(RetailPricePerUnit, dQuantityAll, Discount, ExtraDiscount, Atom_Taxation_Rate, ref RetailItemsPriceWithDiscount, ref ItemsTaxPrice, ref ItemsNetPrice, decimal_places); decimal taxation_rate = DBTypes.tf._set_decimal(appisd.Atom_Taxation_Rate.v); decimal tax_price = ItemsTaxPrice; string tax_name = appisd.Atom_Taxation_Name.v; if (bInvoiceStorno) { taxSum.Add(-tax_price, -ItemsNetPrice, tax_name, taxation_rate); } else { taxSum.Add(tax_price, ItemsNetPrice, tax_name, taxation_rate); } decimal dRetailItemsPriceWithDiscount = DBTypes.tf._set_decimal(RetailItemsPriceWithDiscount); tax_price = DBTypes.tf._set_decimal(ItemsTaxPrice); decimal dprice_without_tax = DBTypes.tf._set_decimal(ItemsNetPrice); if (bInvoiceStorno) { tax_price = tax_price * -1; dprice_without_tax = dprice_without_tax * -1; dRetailItemsPriceWithDiscount = dRetailItemsPriceWithDiscount * -1; } ItemsSold[i] = new UniversalInvoice.ItemSold(lt_token_prefix, lngRPM.s_Shop_B, DBTypes.tf._set_string(appisd.Atom_Item_UniqueName.v), DBTypes.tf._set_decimal(appisd.RetailPricePerUnit.v), DBTypes.tf._set_string(appisd.Atom_Unit_Name.v), DBTypes.tf._set_decimal(appisd.RetailPriceWithDiscount.v), DBTypes.tf._set_string(appisd.Atom_Taxation_Name.v), DBTypes.tf._set_decimal(dQuantityAll), DBTypes.tf._set_decimal(appisd.Discount.v), DBTypes.tf._set_decimal(appisd.ExtraDiscount.v), DBTypes.tf._set_string(appisd.Atom_Currency_Symbol.v), taxation_rate, DBTypes.tf._set_decimal(TotalDiscount), dprice_without_tax, tax_price, dRetailItemsPriceWithDiscount ); j++; } }
public void Fill_Sold_ShopA_ItemsData(ltext lt_token_prefix, ref UniversalInvoice.ItemSold[] ItemsSold, int start_index, int count, bool bInvoiceStorno) { int i; int end_index = start_index + count; int j = 0; for (i = start_index; i < end_index; i++) { DataRow dr = dt_ShopA_Items.Rows[j]; decimal Discount = 0; object oDiscount = dr[DocInvoice + "_ShopA_Item_$$Discount"]; if (oDiscount is decimal) { Discount = (decimal)oDiscount; } decimal TotalDiscount = Discount; decimal RetailSimpleItemPriceWithDiscount = 0; object o_RetailSimpleItemPriceWithDiscount = dr[DocInvoice+"_ShopA_Item_$$EndPriceWithDiscountAndTax"]; if (o_RetailSimpleItemPriceWithDiscount.GetType() == typeof(decimal)) { RetailSimpleItemPriceWithDiscount = (decimal)o_RetailSimpleItemPriceWithDiscount; } string sUnitName = ""; object oUnitName = dr[DocInvoice+"_ShopA_Item_$_aisha_$_u_$$Name"]; if (oUnitName is string) { sUnitName = (string)oUnitName; } decimal dQuantity = -1; object oQuantity = dr[DocInvoice+"_ShopA_Item_$$dQuantity"]; if (oQuantity is decimal) { dQuantity = (decimal)oQuantity; } decimal TaxPrice = -1; object oTaxPrice = dr[DocInvoice+"_ShopA_Item_$$TAX"]; if (oTaxPrice is decimal) { TaxPrice = (decimal)oTaxPrice; } decimal price_without_tax = RetailSimpleItemPriceWithDiscount - TaxPrice; decimal taxation_rate = DBTypes.tf._set_decimal(dr[DocInvoice+"_ShopA_Item_$_aisha_$_tax_$$Rate"]); decimal tax_price = DBTypes.tf._set_decimal(dr[DocInvoice+"_ShopA_Item_$$TAX"]); string tax_name = DBTypes.tf._set_string(dr[DocInvoice+"_ShopA_Item_$_aisha_$_tax_$$Name"]); if (bInvoiceStorno) { taxSum.Add(-tax_price, -price_without_tax, tax_name, taxation_rate); } else { taxSum.Add(tax_price, price_without_tax, tax_name, taxation_rate); } decimal dRetailPricePerUnitWithDiscount = 0; if (dr[DocInvoice+"_ShopA_Item_$$PricePerUnit"] is decimal) { dRetailPricePerUnitWithDiscount = decimal.Round((decimal)dr[DocInvoice+"_ShopA_Item_$$PricePerUnit"] * (1 - Discount), GlobalData.BaseCurrency.DecimalPlaces); } decimal dprice_without_tax = DBTypes.tf._set_decimal(price_without_tax); decimal dEndPriceWithDiscountAndTax = DBTypes.tf._set_decimal(dr[DocInvoice+"_ShopA_Item_$$EndPriceWithDiscountAndTax"]); if (bInvoiceStorno) { tax_price = tax_price * -1; dprice_without_tax = dprice_without_tax * -1; dEndPriceWithDiscountAndTax = dEndPriceWithDiscountAndTax * -1; } ItemsSold[i] = new UniversalInvoice.ItemSold(lt_token_prefix, lngRPM.s_Shop_B, DBTypes.tf._set_string(dr[DocInvoice+"_ShopA_Item_$_aisha_$$Name"]), DBTypes.tf._set_decimal(dr[DocInvoice+"_ShopA_Item_$$PricePerUnit"]), sUnitName, dRetailPricePerUnitWithDiscount, tax_name, dQuantity, DBTypes.tf._set_decimal(dr[DocInvoice+"_ShopA_Item_$$Discount"]), DBTypes.tf._set_decimal(0), DBTypes.tf._set_string(GlobalData.BaseCurrency.Symbol), taxation_rate, DBTypes.tf._set_decimal(TotalDiscount), dprice_without_tax, tax_price, dEndPriceWithDiscountAndTax ); j++; } }
public void Fill_Sold_ShopB_ItemsData(ltext lt_token_prefix, ref UniversalInvoice.ItemSold[] ItemsSold, int start_index, int count, bool bInvoiceStorno) { int i; int end_index = start_index + count; int j = 0; for (i = start_index; i < end_index; i++) { DataRow dr = dt_ShopB_Items.Rows[j]; decimal Discount = 0; object oDiscount = dr["Discount"]; if (oDiscount is decimal) { Discount = (decimal)oDiscount; } decimal ExtraDiscount = 0; object oExtraDiscount = dr["ExtraDiscount"]; if (oExtraDiscount is decimal) { ExtraDiscount = (decimal)oExtraDiscount; } decimal TotalDiscount = StaticLib.Func.TotalDiscount(Discount, ExtraDiscount, GlobalData.Get_BaseCurrency_DecimalPlaces()); decimal RetailSimpleItemPriceWithDiscount = 0; object o_RetailSimpleItemPriceWithDiscount = dr["RetailSimpleItemPriceWithDiscount"]; if (o_RetailSimpleItemPriceWithDiscount.GetType() == typeof(decimal)) { RetailSimpleItemPriceWithDiscount = (decimal)o_RetailSimpleItemPriceWithDiscount; } decimal TaxPrice = -1; object oTaxPrice = dr["TaxPrice"]; if (oTaxPrice is decimal) { TaxPrice = (decimal)oTaxPrice; } decimal price_without_tax = RetailSimpleItemPriceWithDiscount - TaxPrice; decimal taxation_rate = DBTypes.tf._set_decimal(dr["Atom_Taxation_Rate"]); decimal tax_price = DBTypes.tf._set_decimal(dr["TaxPrice"]); string tax_name = DBTypes.tf._set_string(dr["Atom_Taxation_Name"]); if (bInvoiceStorno) { taxSum.Add(-tax_price, -price_without_tax, tax_name, taxation_rate); } else { taxSum.Add(tax_price, price_without_tax, tax_name, taxation_rate); } decimal dEndPriceWithDiscountAndTax = DBTypes.tf._set_decimal(dr["RetailSimpleItemPriceWithDiscount"]); if (bInvoiceStorno) { tax_price = tax_price * -1; price_without_tax = price_without_tax * -1; dEndPriceWithDiscountAndTax = dEndPriceWithDiscountAndTax * -1; } ItemsSold[i] = new UniversalInvoice.ItemSold(lt_token_prefix, lngRPM.s_Shop_B, DBTypes.tf._set_string(dr["Name"]), DBTypes.tf._set_decimal(dr["RetailSimpleItemPrice"]), "", // no unit DBTypes.tf._set_decimal(dr["RetailSimpleItemPriceWithDiscount"]), tax_name, Convert.ToDecimal(DBTypes.tf._set_int(dr["iQuantity"])), DBTypes.tf._set_decimal(dr["Discount"]), DBTypes.tf._set_decimal(dr["ExtraDiscount"]), DBTypes.tf._set_string(dr["Atom_Currency_Symbol"]), taxation_rate, DBTypes.tf._set_decimal(TotalDiscount), price_without_tax, tax_price, dEndPriceWithDiscountAndTax ); j++; } }
public string Create_furs_InvoiceXML(bool bStorno, string InvoiceXmlTemplate, string FursD_MyOrgTaxID, string FursD_BussinesPremiseID, string CasshierName, string FursD_InvoiceAuthorTaxID, string stornoReferenceInvoiceNumber, string stornoReferenceInvoiceIssueDateTime, DateTime_v IssueDate_v, long NumberInFinancialYear, decimal GrossSum, StaticLib.TaxSum taxSum, UniversalInvoice.Person Invoice_Author) { try { // string InvoiceXmlTemplate = Properties.Resources.FVI_SLO_Invoice; XmlDocument xdoc = new XmlDocument(); xdoc.LoadXml(InvoiceXmlTemplate); XmlNodeList ndl_TaxNumber = xdoc.GetElementsByTagName("fu:TaxNumber"); //string sInnerText_MyOrgTaxID = Program.usrc_FVI_SLO1.FursD_MyOrgTaxID; // "10329048";//MyOrganisation.Tax_ID; ndl_TaxNumber.Item(0).InnerText = FursD_MyOrgTaxID;//Program.usrc_FVI_SLO1.FursD_MyOrgTaxID; //MyOrganisation.Tax_ID; XmlNodeList ndl_IssueDateTime = xdoc.GetElementsByTagName("fu:IssueDateTime"); ndl_IssueDateTime.Item(0).InnerText = fs.GetFURS_Time_Formated(IssueDate_v.v); XmlNodeList ndl_BusinessPremiseID = xdoc.GetElementsByTagName("fu:BusinessPremiseID"); //string sInnerText_FursD_BussinesPremiseID = Program.usrc_FVI_SLO1.FursD_BussinesPremiseID; ndl_BusinessPremiseID.Item(0).InnerText = FursD_BussinesPremiseID;// Program.usrc_FVI_SLO1.FursD_BussinesPremiseID; // "36CF"; //MyOrganisation.Atom_Office_Name; XmlNodeList ndl_ElectronicDeviceID = xdoc.GetElementsByTagName("fu:ElectronicDeviceID"); ndl_ElectronicDeviceID.Item(0).InnerText = CasshierName;//Properties.Settings.Default.CasshierName; XmlNodeList ndl_InvoiceNumber = xdoc.GetElementsByTagName("fu:InvoiceNumber"); ndl_InvoiceNumber.Item(0).InnerText = NumberInFinancialYear.ToString(); XmlNodeList ndl_InvoiceAmount = xdoc.GetElementsByTagName("fu:InvoiceAmount"); ndl_InvoiceAmount.Item(0).InnerText = sStorno(bStorno) + fs.GetFursDecimalString(GrossSum); XmlNodeList ndl_PaymentAmount = xdoc.GetElementsByTagName("fu:PaymentAmount"); ndl_PaymentAmount.Item(0).InnerText = sStorno(bStorno) + fs.GetFursDecimalString(GrossSum); XmlNodeList ndl_TaxesPerSeller = xdoc.GetElementsByTagName("fu:TaxesPerSeller"); string s_innertext = ""; foreach (StaticLib.Tax tax in taxSum.TaxList) { string sVat = "<fu:VAT>\r\n" + "<fu:TaxRate>" + sStorno(bStorno) + fs.GetFursDecimalString(tax.Rate * 100) + "</fu:TaxRate>\r\n" + "<fu:TaxableAmount>" + sStorno(bStorno) + fs.GetFursDecimalString(tax.TaxableAmount) + "</fu:TaxableAmount>\r\n" + "<fu:TaxAmount>" + sStorno(bStorno) + fs.GetFursDecimalString(tax.TaxAmount) + "</fu:TaxAmount>\r\n" + "</fu:VAT>" + "\r\n"; s_innertext += sVat; } ndl_TaxesPerSeller.Item(0).InnerXml = s_innertext; XmlNodeList ndl_OperatorTaxNumber = xdoc.GetElementsByTagName("fu:OperatorTaxNumber"); string sFursD_InvoiceAuthorTaxID = FursD_InvoiceAuthorTaxID;// Program.usrc_FVI_SLO1.FursD_InvoiceAuthorTaxID; //Invoice_Author.Tax_ID = "59729481"; Invoice_Author.Tax_ID = FursD_InvoiceAuthorTaxID;// Program.usrc_FVI_SLO1.FursD_InvoiceAuthorTaxID; ndl_OperatorTaxNumber.Item(0).InnerText = Invoice_Author.Tax_ID; //LK storno if (bStorno) { XmlNodeList Fu_Invoice = xdoc.GetElementsByTagName("fu:Invoice"); string ns = Fu_Invoice.Item(0).GetNamespaceOfPrefix("fu"); XmlNode xReferenceInvoice = xdoc.CreateNode("element", "ReferenceInvoice", ns); XmlNode xReferenceInvoiceIdentifier = xdoc.CreateNode("element", "ReferenceInvoiceIdentifier", ns); XmlNode xBusinessPremiseID = xdoc.CreateNode("element", "BusinessPremiseID", ns); XmlNode xElectronicDeviceID = xdoc.CreateNode("element", "ElectronicDeviceID", ns); XmlNode xInvoiceNumber = xdoc.CreateNode("element", "InvoiceNumber", ns); XmlNode xReferenceInvoiceIssueDateTime = xdoc.CreateNode("element", "ReferenceInvoiceIssueDateTime", ns); xReferenceInvoice.Prefix = "fu"; xReferenceInvoiceIdentifier.Prefix = "fu"; xBusinessPremiseID.Prefix = "fu"; xElectronicDeviceID.Prefix = "fu"; xInvoiceNumber.Prefix = "fu"; xReferenceInvoiceIssueDateTime.Prefix = "fu"; xBusinessPremiseID.InnerText = FursD_BussinesPremiseID; xElectronicDeviceID.InnerText = CasshierName; xInvoiceNumber.InnerText = stornoReferenceInvoiceNumber; xReferenceInvoiceIssueDateTime.InnerText = stornoReferenceInvoiceIssueDateTime; xReferenceInvoiceIdentifier.AppendChild(xBusinessPremiseID); xReferenceInvoiceIdentifier.AppendChild(xElectronicDeviceID); xReferenceInvoiceIdentifier.AppendChild(xInvoiceNumber); xReferenceInvoice.AppendChild(xReferenceInvoiceIdentifier); xReferenceInvoice.AppendChild(xReferenceInvoiceIssueDateTime); Fu_Invoice.Item(0).AppendChild(xReferenceInvoice); //<fu:ReferenceInvoice> // <fu:ReferenceInvoiceIdentifier > // <fu:BusinessPremiseID > TRGOVINA1 </ fu:BusinessPremiseID > // <fu:ElectronicDeviceID > BLAG2 </ fu:ElectronicDeviceID > // <fu:InvoiceNumber > 145 </ fu:InvoiceNumber > // </fu:ReferenceInvoiceIdentifier > // <fu:ReferenceInvoiceIssueDateTime > 2015 - 09 - 07T12: 12:54 </ fu:ReferenceInvoiceIssueDateTime > //</fu:ReferenceInvoice > } string InvoiceXml = XmlDcoumentToString(xdoc); return InvoiceXml; } catch (Exception Ex) { LogFile.Error.Show("ERROR:InvoiceData:Create_furs_InvoiceXML:Exception = " + Ex.Message); return null; } }