public void Add(long xDocInvoice_ID,object xusrc_Item,Item_Data xItemData,decimal xFactoryQuantity, decimal xStockQuantity, ref Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd, bool b_from_factory) { foreach (Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisdx in m_DocInvoice_ShopC_Item_Data_LIST) { if (appisdx.Item_ID.v == xItemData.Item_ID.v) { appisdx.m_ShopShelf_Source.Add_Stock_Data(xItemData, xFactoryQuantity, xStockQuantity, b_from_factory); appisd = appisdx; return; } } appisd = new Atom_DocInvoice_ShopC_Item_Price_Stock_Data(); appisd.Set(xusrc_Item, xItemData, xDocInvoice_ID, xFactoryQuantity, xStockQuantity, b_from_factory); m_DocInvoice_ShopC_Item_Data_LIST.Add(appisd); }
public bool Insert_DocInvoice_Atom_Price_Items_Stock(string DocInvoice,ref Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd, bool b_from_stock ) { return Get_DocInvoice_ShopC_Item(DocInvoice,ref appisd, b_from_stock); }
private bool Get_Atom_Item(ref Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd) { string Err = null; string sAtom_Item_Name_ID = null; long Atom_Item_Name_ID = -1; if (Get_Atom_Item_Name(appisd.Atom_Item_Name_Name, ref Atom_Item_Name_ID)) { if (Atom_Item_Name_ID >= 0) { sAtom_Item_Name_ID = Atom_Item_Name_ID.ToString(); string sAtom_Unit_ID = null; long Atom_Unit_ID = -1; if (Get_Atom_Unit_ID(appisd, ref Atom_Unit_ID)) { if (Atom_Unit_ID >= 0) { string scond_UniqueName = null; string sv_UniqueName = null; List<DBConnectionControl40.SQL_Parameter> lpar = new List<DBConnectionControl40.SQL_Parameter>(); string spar_UniqueName = "@par_UniqueName"; DBConnectionControl40.SQL_Parameter par_UniqueName = new DBConnectionControl40.SQL_Parameter(spar_UniqueName, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Nvarchar, false, appisd.Atom_Item_UniqueName.v); lpar.Add(par_UniqueName); scond_UniqueName = "(UniqueName = @par_UniqueName)"; sv_UniqueName = spar_UniqueName; sAtom_Unit_ID = Atom_Unit_ID.ToString(); long Atom_Item_barcode_ID = -1; string scond_Atom_Item_barcode_ID = null; string sv_Atom_Item_barcode_ID = null; if (Get_Atom_Item_barcode(appisd.Atom_Item_barcode_barcode, ref Atom_Item_barcode_ID, ref Err)) { if (Atom_Item_barcode_ID >= 0) { scond_Atom_Item_barcode_ID = "(Atom_Item_barcode_ID = " + Atom_Item_barcode_ID.ToString() + ")"; sv_Atom_Item_barcode_ID = Atom_Item_barcode_ID.ToString(); } else { scond_Atom_Item_barcode_ID = "(Atom_Item_barcode_ID is null)"; sv_Atom_Item_barcode_ID = "null"; } } long Atom_Item_Description_ID = -1; string scond_Atom_Item_Description_ID = null; string sv_Atom_Item_Description_ID = null; if (Get_Atom_Item_Description(appisd.Atom_Item_Description_Description, ref Atom_Item_Description_ID, ref Err)) { if (Atom_Item_Description_ID >= 0) { scond_Atom_Item_Description_ID = "(Atom_Item_Description_ID = " + Atom_Item_Description_ID.ToString() + ")"; sv_Atom_Item_Description_ID = Atom_Item_Description_ID.ToString(); } else { scond_Atom_Item_Description_ID = "(Atom_Item_Description_ID is null)"; sv_Atom_Item_Description_ID = "null"; } } long Atom_Expiry_ID = -1; string scond_Atom_Expiry_ID = null; string sv_Atom_Expiry_ID = null; if (appisd.Atom_Expiry_ExpectedShelfLifeInDays != null) { if (Get_Atom_Expiry(appisd.Atom_Expiry_ExpectedShelfLifeInDays, appisd.Atom_Expiry_SaleBeforeExpiryDateInDays, appisd.Atom_Expiry_DiscardBeforeExpiryDateInDays, appisd.Atom_Expiry_ExpiryDescription, ref Atom_Expiry_ID, ref Err)) { scond_Atom_Expiry_ID = "(Atom_Expiry_ID = " + Atom_Expiry_ID.ToString() + ")"; sv_Atom_Expiry_ID = Atom_Expiry_ID.ToString(); } else { return false; } } else { scond_Atom_Expiry_ID = "(Atom_Expiry_ID is null)"; sv_Atom_Expiry_ID = "null"; } long Atom_Item_Atom_Warranty_ID = -1; string scond_Atom_Warranty_ID = null; string sv_Atom_Warranty_ID = null; if (appisd.Atom_Warranty_ID != null) { if (Get_Atom_Warranty(appisd.Atom_Warranty_WarrantyDurationType, appisd.Atom_Warranty_WarrantyDuration, appisd.Atom_Warranty_WarrantyConditions, ref Atom_Item_Atom_Warranty_ID, ref Err)) { scond_Atom_Warranty_ID = "(Atom_Warranty_ID = " + Atom_Item_Atom_Warranty_ID.ToString() + ")"; sv_Atom_Warranty_ID = Atom_Item_Atom_Warranty_ID.ToString(); } else { return false; } } else { scond_Atom_Warranty_ID = "(Atom_Warranty_ID is null)"; sv_Atom_Warranty_ID = "null"; } string sql = @"select ID as Atom_Item_ID from Atom_Item where " + scond_UniqueName + @" and Atom_Item_Name_ID = " + Atom_Item_Name_ID.ToString() + @" and Atom_Unit_ID = " + sAtom_Unit_ID + @" and " + scond_Atom_Item_barcode_ID + @" and " + scond_Atom_Item_Description_ID + @" and " + scond_Atom_Warranty_ID + @" and " + scond_Atom_Expiry_ID; DataTable dt = new DataTable(); if (DBSync.DBSync.ReadDataTable(ref dt, sql, lpar, ref Err)) { if (dt.Rows.Count > 0) { if (appisd.Atom_Item_ID == null) { appisd.Atom_Item_ID = new long_v(); } appisd.Atom_Item_ID.v = (long)dt.Rows[0]["Atom_Item_ID"]; return true; } else { sql = @"insert into Atom_Item ( UniqueName, Atom_Item_Name_ID, Atom_Unit_ID, Atom_Item_barcode_ID, Atom_Item_Description_ID, Atom_Warranty_ID, Atom_Expiry_ID ) values(" + sv_UniqueName + ",\r\n" + Atom_Item_Name_ID.ToString() + ",\r\n" + sAtom_Unit_ID + ",\r\n" + sv_Atom_Item_barcode_ID + ",\r\n" + sv_Atom_Item_Description_ID + ",\r\n" + sv_Atom_Warranty_ID + ",\r\n" + sv_Atom_Expiry_ID + ")"; object objret = null; long Atom_Item_ID = -1; if (DBSync.DBSync.ExecuteNonQuerySQLReturnID(sql, lpar, ref Atom_Item_ID, ref objret, ref Err, DBtcn.stbl_Atom_Item_TableName)) { if (appisd.Atom_Item_ID == null) { appisd.Atom_Item_ID = new long_v(); } appisd.Atom_Item_ID.v = Atom_Item_ID; return true; } else { LogFile.Error.Show("ERROR:Get_Atom_Item:insert into Atom_Item failed!\r\nErr=" + Err); return false; } } } else { LogFile.Error.Show("ERROR:Get_Atom_Item:select ID as Atom_Item_ID from Atom_Item failed!\r\nErr=" + Err); return false; } } else { LogFile.Error.Show("ERROR:Get_Atom_Item:Atom_Unit_ID not found!"); return false; } } else { return false; } } else { LogFile.Error.Show("ERROR:No Atom_Item_Name_ID !"); return false; } } else { return false; } }
private bool Get_DocInvoice_ShopC_Item(string DocInvoice,ref Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd, bool b_from_stock) { long Atom_Price_Item_ID = -1; if (Get_Atom_Price_Item(ref appisd)) { List<SQL_Parameter> lpar = new List<SQL_Parameter>(); int decimal_places = GlobalData.Get_BaseCurrency_DecimalPlaces(); Atom_Price_Item_ID = appisd.Atom_Price_Item_ID.v; string spar_ExtraDiscount = "@par_ExtraDiscount"; SQL_Parameter par_ExtraDiscount = new SQL_Parameter(spar_ExtraDiscount, SQL_Parameter.eSQL_Parameter.Decimal, false, appisd.ExtraDiscount.v); decimal dQuantity_from_factory = appisd.m_ShopShelf_Source.dQuantity_from_factory; decimal dQuantity_from_stock = appisd.m_ShopShelf_Source.dQuantity_from_stock; string spar_RetailPriceWithDiscount = "@par_RetailPriceWithDiscount"; string spar_TaxPrice = "@par_TaxPrice"; string spar_dQuantity = "@par_dQuantity"; foreach (Stock_Data stock_data in appisd.m_ShopShelf_Source.Stock_Data_List) { if (b_from_stock) { if (stock_data.Stock_ID == null) { continue; } } else { if (stock_data.Stock_ID != null) { continue; } } decimal RetailPriceWithDiscount = 0; decimal TaxPrice = 0; decimal RetailPriceWithDiscount_WithoutTax = 0; lpar.Clear(); lpar.Add(par_ExtraDiscount); long_v Stock_ID = stock_data.Stock_ID; string scond_Stock_ID = null; string sValue_Stock_ID = null; if (Stock_ID != null) { decimal dquantity = stock_data.dQuantity.v; StaticLib.Func.CalculatePrice(appisd.RetailPricePerUnit.v, dquantity, appisd.Discount.v, appisd.ExtraDiscount.v, appisd.Atom_Taxation_Rate.v, ref RetailPriceWithDiscount, ref TaxPrice, ref RetailPriceWithDiscount_WithoutTax, decimal_places); SQL_Parameter par_dQuantity = null; par_dQuantity = new SQL_Parameter(spar_dQuantity, SQL_Parameter.eSQL_Parameter.Decimal, false, dquantity); lpar.Add(par_dQuantity); scond_Stock_ID = "(Stock_ID = " + Stock_ID.v.ToString() + ")"; sValue_Stock_ID = Stock_ID.v.ToString(); SQL_Parameter par_RetailPriceWithDiscount = new SQL_Parameter(spar_RetailPriceWithDiscount, SQL_Parameter.eSQL_Parameter.Decimal, false, RetailPriceWithDiscount); lpar.Add(par_RetailPriceWithDiscount); SQL_Parameter par_TaxPrice = new SQL_Parameter(spar_TaxPrice, SQL_Parameter.eSQL_Parameter.Decimal, false, TaxPrice); lpar.Add(par_TaxPrice); } else { StaticLib.Func.CalculatePrice(appisd.RetailPricePerUnit.v, dQuantity_from_factory, appisd.Discount.v, appisd.ExtraDiscount.v, appisd.Atom_Taxation_Rate.v, ref RetailPriceWithDiscount, ref TaxPrice, ref RetailPriceWithDiscount_WithoutTax, decimal_places); SQL_Parameter par_dQuantity = null; par_dQuantity = new SQL_Parameter(spar_dQuantity, SQL_Parameter.eSQL_Parameter.Decimal, false, dQuantity_from_factory); lpar.Add(par_dQuantity); SQL_Parameter par_RetailPriceWithDiscount = new SQL_Parameter(spar_RetailPriceWithDiscount, SQL_Parameter.eSQL_Parameter.Decimal, false, RetailPriceWithDiscount); lpar.Add(par_RetailPriceWithDiscount); SQL_Parameter par_TaxPrice = new SQL_Parameter(spar_TaxPrice, SQL_Parameter.eSQL_Parameter.Decimal, false, TaxPrice); lpar.Add(par_TaxPrice); scond_Stock_ID = "(Stock_ID is null)"; sValue_Stock_ID = "null"; } string spar_ExpiryDate = "@par_ExpiryDate"; string scond_ExpiryDate = null; string sValue_ExpiryDate = null; if (stock_data.Stock_ExpiryDate != null) { SQL_Parameter par_ExpiryDate = new SQL_Parameter(spar_ExpiryDate, SQL_Parameter.eSQL_Parameter.Datetime, false, stock_data.Stock_ExpiryDate.v); lpar.Add(par_ExpiryDate); scond_ExpiryDate = "(ExpiryDate = " + spar_ExpiryDate + ")"; sValue_ExpiryDate = spar_ExpiryDate; } else { scond_ExpiryDate = "(ExpiryDate is null)"; sValue_ExpiryDate = "null"; } if (DocInvoice==null) { LogFile.Error.Show("ERROR:TangentaDB:CurrentInvoice.cs:Get_DocInvoice_ShopC_Item:DocInvoice==null."); return false; } string sql_select_DocInvoice_ShopC_Item_ID = @"select ID as "+DocInvoice+@"_ShopC_Item_ID, dQuantity, ExtraDiscount, RetailPriceWithDiscount, TaxPrice from "+DocInvoice+@"_ShopC_Item where "+DocInvoice+@"_ID = " + Doc_ID.ToString() + @" and Atom_Price_Item_ID = " + Atom_Price_Item_ID.ToString() + @" and " + scond_ExpiryDate + @" and " + scond_Stock_ID; DataTable dt = new DataTable(); string Err = null; if (DBSync.DBSync.ReadDataTable(ref dt, sql_select_DocInvoice_ShopC_Item_ID, lpar, ref Err)) { if (dt.Rows.Count > 0) { appisd.DocInvoice_ShopC_Item_ID = tf.set_long(dt.Rows[0][DocInvoice+"_ShopC_Item_ID"]); // appisd.dQuantity_all.v = appisd.m_Warehouse.dQuantity_all; appisd.RetailPriceWithDiscount = tf.set_decimal(dt.Rows[0]["RetailPriceWithDiscount"]); appisd.ExtraDiscount = tf.set_decimal(dt.Rows[0]["ExtraDiscount"]); appisd.TaxPrice = tf.set_decimal(dt.Rows[0]["TaxPrice"]); //$$TODO pias.Stock_ID = long_v.Copy(pis.Stock_ID); return true; } else { string sql_insert_DocInvoice_ShopC_Item_ID = @"insert into "+DocInvoice+@"_ShopC_Item ( dQuantity, ExtraDiscount, RetailPriceWithDiscount, TaxPrice, "+DocInvoice+@"_ID, Atom_Price_Item_ID, ExpiryDate, Stock_ID ) values ( " + spar_dQuantity + @", " + spar_ExtraDiscount + @", " + spar_RetailPriceWithDiscount + @", " + spar_TaxPrice + @", " + Doc_ID.ToString() + @", " + Atom_Price_Item_ID.ToString() + @", " + sValue_ExpiryDate + @", " + sValue_Stock_ID + ")"; object objret = null; long DocInvoice_ShopC_Item_ID = -1; if (DBSync.DBSync.ExecuteNonQuerySQLReturnID(sql_insert_DocInvoice_ShopC_Item_ID, lpar, ref DocInvoice_ShopC_Item_ID, ref objret, ref Err, DocInvoice)) { appisd.DocInvoice_ShopC_Item_ID = tf.set_long(DocInvoice_ShopC_Item_ID); if (Stock_ID != null) { stock_data.Remove_from_StockShelf(); } } else { LogFile.Error.Show("ERROR:Get_DocInvoice_ShopC_Item:sql="+ sql_insert_DocInvoice_ShopC_Item_ID + " failed!\r\nErr=" + Err); return false; } } } else { LogFile.Error.Show("ERROR:Get_DocInvoice_ShopC_Item:sql="+ sql_select_DocInvoice_ShopC_Item_ID+" failed!\r\nErr=" + Err); return false; } } // foreach return true; } else { return false; } }
bool Get_Atom_Warranty(short_v Warranty_WarrantyDurationType, int_v Warranty_WarrantyDuration, string_v Warranty_WarrantyConditions, ref Atom_DocInvoice_ShopC_Item_Price_Stock_Data pias, ref long Atom_Warranty_ID, ref string Err) { string scond_WarrantyDurationType = null; string sv_WarrantyDurationType = null; List<DBConnectionControl40.SQL_Parameter> lpar = new List<DBConnectionControl40.SQL_Parameter>(); if (Warranty_WarrantyDurationType != null) { string spar_WarrantyDurationType = "@par_WarrantyDurationType"; DBConnectionControl40.SQL_Parameter par_WarrantyDurationType = new DBConnectionControl40.SQL_Parameter(spar_WarrantyDurationType, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Smallint, false, Warranty_WarrantyDurationType.v); lpar.Add(par_WarrantyDurationType); scond_WarrantyDurationType = "(WarrantyDurationType = " + spar_WarrantyDurationType + ")"; sv_WarrantyDurationType = spar_WarrantyDurationType; } else { scond_WarrantyDurationType = "(WarrantyDurationType is null)"; sv_WarrantyDurationType = "null"; } string scond_WarrantyDuration = null; string sv_WarrantyDuration = null; if (Warranty_WarrantyDuration != null) { string spar_WarrantyDuration = "@par_WarrantyDuration"; DBConnectionControl40.SQL_Parameter par_WarrantyDuration = new DBConnectionControl40.SQL_Parameter(spar_WarrantyDuration, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Int, false, Warranty_WarrantyDuration.v); lpar.Add(par_WarrantyDuration); scond_WarrantyDuration = "(WarrantyDuration = " + spar_WarrantyDuration + ")"; sv_WarrantyDuration = spar_WarrantyDuration; } else { scond_WarrantyDuration = "(WarrantyDuration is null)"; sv_WarrantyDuration = "null"; } string scond_WarrantyConditions = null; string sv_WarrantyConditions = null; if (Warranty_WarrantyConditions != null) { string spar_WarrantyConditions = "@par_WarrantyConditions"; DBConnectionControl40.SQL_Parameter par_WarrantyConditions = new DBConnectionControl40.SQL_Parameter(spar_WarrantyConditions, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Varchar, false, Warranty_WarrantyConditions.v); lpar.Add(par_WarrantyConditions); scond_WarrantyConditions = "(WarrantyConditions = " + spar_WarrantyConditions + ")"; sv_WarrantyConditions = spar_WarrantyConditions; } else { scond_WarrantyConditions = "(WarrantyConditions is null)"; sv_WarrantyConditions = "null"; } string sql_select_Atom_Warranty_ID = @"select ID as Atom_Warranty_ID from Atom_Warranty where " + scond_WarrantyDurationType + " and " + scond_WarrantyDuration + " and " + scond_WarrantyConditions; DataTable dt = new DataTable(); if (DBSync.DBSync.ReadDataTable(ref dt, sql_select_Atom_Warranty_ID, lpar, ref Err)) { if (dt.Rows.Count > 0) { Atom_Warranty_ID = (long)dt.Rows[0]["Atom_Warranty_ID"]; return true; } else { string sql_Insert_Atom_Warranty = @"insert into Atom_Warranty (WarrantyDurationType, WarrantyDuration, WarrantyConditions)values(" + sv_WarrantyDurationType + "," + sv_WarrantyDuration + "," + sv_WarrantyConditions + ")"; object objret = null; if (DBSync.DBSync.ExecuteNonQuerySQLReturnID(sql_Insert_Atom_Warranty, lpar, ref Atom_Warranty_ID, ref objret, ref Err, DBtcn.stbl_Atom_Warranty_TableName)) { return true; } else { LogFile.Error.Show("ERROR:Get_Atom_Warranty:insert into Atom_Warranty failed!\r\nErr=" + Err); return false; } } } else { LogFile.Error.Show("ERROR:Get_Atom_Warranty:select ID as Atom_Warranty_ID from Atom_Warranty failed!\r\nErr=" + Err); return false; } }
private bool Get_Atom_Unit_ID(Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd, ref long Atom_Unit_ID) { string Err = null; string scond_Unit_Name = null; string sv_Unit_Name = null; List<DBConnectionControl40.SQL_Parameter> lpar = new List<DBConnectionControl40.SQL_Parameter>(); if (appisd.Atom_Unit_Name != null) { string spar_Unit_Name = "@par_Unit_Name"; DBConnectionControl40.SQL_Parameter par_Unit_Name = new DBConnectionControl40.SQL_Parameter(spar_Unit_Name, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Nvarchar, false, appisd.Atom_Unit_Name.v); lpar.Add(par_Unit_Name); scond_Unit_Name = "(Name = " + spar_Unit_Name + ")"; sv_Unit_Name = spar_Unit_Name; } else { scond_Unit_Name = "(Name is null)"; sv_Unit_Name = "null"; } string scond_Unit_Symbol = null; string sv_Unit_Symbol = null; if (appisd.Atom_Unit_Symbol != null) { string spar_Unit_Symbol = "@par_Unit_Symbol"; DBConnectionControl40.SQL_Parameter par_Unit_Symbol = new DBConnectionControl40.SQL_Parameter(spar_Unit_Symbol, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Nvarchar, false, appisd.Atom_Unit_Symbol.v); lpar.Add(par_Unit_Symbol); scond_Unit_Symbol = "(Symbol = " + spar_Unit_Symbol + ")"; sv_Unit_Symbol = spar_Unit_Symbol; } else { scond_Unit_Symbol = "(Symbol is null)"; sv_Unit_Symbol = "null"; } string scond_Unit_DecimalPlaces = null; string sv_Unit_DecimalPlaces = null; if (appisd.Atom_Unit_DecimalPlaces != null) { string spar_Unit_DecimalPlaces = "@par_Unit_DecimalPlaces"; DBConnectionControl40.SQL_Parameter par_DiscardBeforeExpiryDateInDays = new DBConnectionControl40.SQL_Parameter(spar_Unit_DecimalPlaces, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Smallint, false, appisd.Atom_Unit_DecimalPlaces.v); lpar.Add(par_DiscardBeforeExpiryDateInDays); scond_Unit_DecimalPlaces = "(DecimalPlaces = " + spar_Unit_DecimalPlaces + ")"; sv_Unit_DecimalPlaces = spar_Unit_DecimalPlaces; } else { scond_Unit_DecimalPlaces = "(DecimalPlaces is null)"; sv_Unit_DecimalPlaces = "null"; } string scond_Unit_StorageOption = null; string sv_Unit_StorageOption = null; if (appisd.Atom_Unit_StorageOption != null) { string spar_ExpiryDescription = "@par_StorageOption"; DBConnectionControl40.SQL_Parameter par_ExpiryDescription = new DBConnectionControl40.SQL_Parameter(spar_ExpiryDescription, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Bit, false, appisd.Atom_Unit_StorageOption.v); lpar.Add(par_ExpiryDescription); scond_Unit_StorageOption = "(StorageOption = " + spar_ExpiryDescription + ")"; sv_Unit_StorageOption = spar_ExpiryDescription; } else { scond_Unit_StorageOption = "(StorageOption is null)"; sv_Unit_StorageOption = "null"; } string scond_Unit_Description = null; string sv_Unit_Description = null; if (appisd.Atom_Unit_Description != null) { string spar_Unit_Description = "@par_Unit_Description"; DBConnectionControl40.SQL_Parameter par_Unit_Description = new DBConnectionControl40.SQL_Parameter(spar_Unit_Description, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Nvarchar, false, appisd.Atom_Unit_Description.v); lpar.Add(par_Unit_Description); scond_Unit_Description = "(Description = " + spar_Unit_Description + ")"; sv_Unit_Description = spar_Unit_Description; } else { scond_Unit_Description = "(Description is null)"; sv_Unit_Description = "null"; } string sql_select_Atom_Unit_ID = @"select ID as Atom_Unit_ID from Atom_Unit where " + scond_Unit_Name + " and " + scond_Unit_Symbol + " and " + scond_Unit_DecimalPlaces + " and " + scond_Unit_StorageOption + " and " + scond_Unit_Description; DataTable dt = new DataTable(); if (DBSync.DBSync.ReadDataTable(ref dt, sql_select_Atom_Unit_ID, lpar, ref Err)) { if (dt.Rows.Count > 0) { Atom_Unit_ID = (long)dt.Rows[0]["Atom_Unit_ID"]; return true; } else { string sql_Insert_Atom_Unit = @"insert into Atom_Unit (Name, Symbol, DecimalPlaces, StorageOption, Description ) values (" + sv_Unit_Name + "," + sv_Unit_Symbol + "," + sv_Unit_DecimalPlaces + "," + sv_Unit_StorageOption + "," + sv_Unit_Description + ")"; object objret = null; if (DBSync.DBSync.ExecuteNonQuerySQLReturnID(sql_Insert_Atom_Unit, lpar, ref Atom_Unit_ID, ref objret, ref Err, "Atom_Unit")) { return true; } else { LogFile.Error.Show("ERROR:Get_Atom_Unit_ID:insert into Atom_Unit failed!\r\nErr=" + Err); return false; } } } else { LogFile.Error.Show("ERROR:Get_Atom_Unit_ID:select ID as Atom_Unit_ID from Atom_Unit failed!\r\nErr=" + Err); return false; } }
private bool Get_Atom_Price_Item(ref Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd) { long Atom_Taxation_ID = -1; if (Get_Atom_Taxation_ID(appisd.Atom_Taxation_Name, appisd.Atom_Taxation_Rate, ref Atom_Taxation_ID)) { if (Atom_Taxation_ID >= 0) { string scond_Atom_Taxation_ID = " Atom_Taxation_ID = " + Atom_Taxation_ID.ToString(); if (Get_Atom_Item(ref appisd)) { string scond_Atom_Item_ID = " Atom_Item_ID = " + appisd.Atom_Item_ID.v.ToString(); long Atom_PriceList_ID = -1; if (f_Atom_PriceList.Get(ref appisd, ref Atom_PriceList_ID)) { if (Atom_PriceList_ID >= 0) { long Atom_Item_Image_ID = -1; Get_Atom_Item_Image(appisd.Atom_Item_ID.v, appisd.Atom_Item_Image_Hash, appisd.Atom_Item_Image_Data, ref Atom_Item_Image_ID); string scond_Atom_PriceList_ID = " Atom_PriceList_ID = " + Atom_PriceList_ID.ToString(); List<DBConnectionControl40.SQL_Parameter> lpar = new List<DBConnectionControl40.SQL_Parameter>(); string spar_RetailPricePerUnit = "@par_RetailPricePerUnit"; DBConnectionControl40.SQL_Parameter par_RetailPricePerUnit = new DBConnectionControl40.SQL_Parameter(spar_RetailPricePerUnit, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Decimal, false, appisd.RetailPricePerUnit.v); lpar.Add(par_RetailPricePerUnit); string spar_Discount = "@par_Discount"; DBConnectionControl40.SQL_Parameter par_Discount = new DBConnectionControl40.SQL_Parameter(spar_Discount, DBConnectionControl40.SQL_Parameter.eSQL_Parameter.Decimal, false, appisd.Discount.v); lpar.Add(par_Discount); string sql = @"select ID as Atom_Price_Item_ID from Atom_Price_Item where RetailPricePerUnit = " + spar_RetailPricePerUnit + @" and Discount = " + spar_Discount + @" and " + scond_Atom_Taxation_ID + @" and " + scond_Atom_Item_ID + @" and " + scond_Atom_PriceList_ID; DataTable dt = new DataTable(); string Err = null; if (DBSync.DBSync.ReadDataTable(ref dt, sql, lpar, ref Err)) { if (dt.Rows.Count > 0) { appisd.Atom_Price_Item_ID = tf.set_long(dt.Rows[0]["Atom_Price_Item_ID"]); //if (appisd.Discount == null) //{ // appisd.Discount = new decimal_v(); //} return true; } else { sql = @"insert into Atom_Price_Item (RetailPricePerUnit, Discount, Atom_Taxation_ID, Atom_Item_ID, Atom_PriceList_ID ) values(" + spar_RetailPricePerUnit + ",\r\n" + spar_Discount + ",\r\n" + Atom_Taxation_ID.ToString() + ",\r\n" + appisd.Atom_Item_ID.v.ToString() + ",\r\n" + Atom_PriceList_ID.ToString() + ")"; object objret = null; long Atom_Price_Item_ID = -1; if (DBSync.DBSync.ExecuteNonQuerySQLReturnID(sql, lpar, ref Atom_Price_Item_ID, ref objret, ref Err, "Atom_Price_Item")) { appisd.Atom_Price_Item_ID = tf.set_long(Atom_Price_Item_ID); //if (appisd.Discount == null) //{ // appisd.Discount = new decimal_v(); //} //appisd.Discount.v = pis.PriceList_Item_Discount.v; return true; } else { LogFile.Error.Show("ERROR:CurrentInvoice:Get_Atom_Price_Item:sql=" + sql + "\r\nErr=" + Err); return false; } } } else { LogFile.Error.Show("ERROR:CurrentInvoice:Get_Atom_Price_Item:sql=" + sql + "\r\nErr=" + Err); return false; } } else { LogFile.Error.Show("ERROR:CurrentInvoice:Get_Atom_Price_Item:No Atom_PriceList_ID is not defined !"); return false; } } else { return false; } } else { return false; } } else { LogFile.Error.Show("ERROR:CurrentInvoice:Get_Atom_Price_Item:No Atom_Item_Taxation_ID is not defined !"); return false; } } else { return false; } }
public int GetIndex(Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd) { foreach (object o in items) { if (((Item_Data)o).Item_UniqueName.v.Equals(appisd.Atom_Item_UniqueName.v)) { int index = items.IndexOf(o); return index; } } return -1; }
public bool Init(TangentaDB.ShopABC x_InvoiceDB, long x_Atom_Item_ID) { m_InvoiceDB = x_InvoiceDB; m_Atom_Item_ID = x_Atom_Item_ID; String Err = null; string scond = " and "+ m_InvoiceDB.DocInvoice+ "_ShopC_Item.dQuantity > 0"; if (m_InvoiceDB.Read_DocInvoice_Atom_Item_Stock_Table(m_InvoiceDB.m_CurrentInvoice.Doc_ID, m_Atom_Item_ID, ref dt_DocInvoice_Atom_Item_Stock_view, scond,ref Err)) { if (dt_DocInvoice_Atom_Item_Stock_view.Rows.Count > 0) { dgv_DocInvoice_Atom_Item_Stock.DataSource = dt_DocInvoice_Atom_Item_Stock_view; DBSync.DBSync.DB_for_Tangenta.t_DocInvoice_ShopC_Item.SetView_DataGridViewImageColumns_Headers((DataGridView)dgv_DocInvoice_Atom_Item_Stock); foreach (DataGridViewColumn c in dgv_DocInvoice_Atom_Item_Stock.Columns) { c.Visible = false; } dgv_DocInvoice_Atom_Item_Stock.Columns["Stock_ID"].Visible = true; dgv_DocInvoice_Atom_Item_Stock.Columns["Stock_ID"].DisplayIndex = 0; dgv_DocInvoice_Atom_Item_Stock.Columns["Stock_ID"].HeaderText = lngRPM.s_Stock_ID.s; dgv_DocInvoice_Atom_Item_Stock.Columns["dQuantity"].Visible = true; dgv_DocInvoice_Atom_Item_Stock.Columns["dQuantity"].DisplayIndex = 1; dgv_DocInvoice_Atom_Item_Stock.Columns["dQuantity"].HeaderText = lngRPM.s_Quantity.s; dgv_DocInvoice_Atom_Item_Stock.Columns["ExpiryDate"].Visible = true; dgv_DocInvoice_Atom_Item_Stock.Columns["ExpiryDate"].DisplayIndex = 2; dgv_DocInvoice_Atom_Item_Stock.Columns["ExpiryDate"].HeaderText = lngRPM.s_ExpiryDate.s; dgv_DocInvoice_Atom_Item_Stock.Columns["Stock_dQuantity"].Visible = true; dgv_DocInvoice_Atom_Item_Stock.Columns["Stock_dQuantity"].DisplayIndex = 3; dgv_DocInvoice_Atom_Item_Stock.Columns["Stock_dQuantity"].HeaderText = lngRPM.s_Stock_dQuantity.s; dgv_DocInvoice_Atom_Item_Stock.Columns["PurchasePricePerUnit"].Visible = true; dgv_DocInvoice_Atom_Item_Stock.Columns["PurchasePricePerUnit"].DisplayIndex = 4; dgv_DocInvoice_Atom_Item_Stock.Columns["PurchasePricePerUnit"].HeaderText = lngRPM.s_PurchasePricePerUnit.s; dgv_DocInvoice_Atom_Item_Stock.Columns["RetailPricePerUnit"].Visible = true; dgv_DocInvoice_Atom_Item_Stock.Columns["RetailPricePerUnit"].DisplayIndex = 5; dgv_DocInvoice_Atom_Item_Stock.Columns["RetailPricePerUnit"].HeaderText = lngRPM.s_RetailPricePerUnit.s; int iCol_Stock_ExpiryDate =dt_DocInvoice_Atom_Item_Stock_view.Columns.IndexOf("Stock_ExpiryDate"); int iCol_ExpiryDate = dt_DocInvoice_Atom_Item_Stock_view.Columns.IndexOf("ExpiryDate"); int iCount = dt_DocInvoice_Atom_Item_Stock_view.Rows.Count; for (int i =0;i<iCount;i++) { DataRow dria = dt_DocInvoice_Atom_Item_Stock_view.Rows[i]; Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd = new Atom_DocInvoice_ShopC_Item_Price_Stock_Data(); appisd.Set(m_InvoiceDB.DocInvoice, dria,ref appisd_List); if (dria[iCol_Stock_ExpiryDate] is DateTime) { dria[iCol_ExpiryDate] = dria[iCol_Stock_ExpiryDate]; } } Atom_DocInvoice_ShopC_Item_Price_Stock_Data xappisd= (Atom_DocInvoice_ShopC_Item_Price_Stock_Data)appisd_List[0]; this.txt_Atom_Item_Name.Text = xappisd.Atom_Item_Name_Name.v; if (xappisd.Atom_Item_Description_Description != null) { this.txt_V_Atom_Item_Description.Text = xappisd.Atom_Item_Description_Description.v; } else { this.txt_V_Atom_Item_Description.Text = ""; txt_V_Atom_Item_Description.BackColor = Color_null; } decimal FromFactory_Count_sum = 0; decimal FromStock_Count_sum = 0; decimal CountAll = 0; FromFactory_Count_sum = xappisd.m_ShopShelf_Source.dQuantity_from_factory; FromStock_Count_sum = xappisd.m_ShopShelf_Source.dQuantity_from_stock; CountAll = FromFactory_Count_sum + FromStock_Count_sum; this.txt_V_FromFactory.Text = FromFactory_Count_sum.ToString(); this.txt_V_FromStock.Text = FromStock_Count_sum.ToString(); this.lbl_V_Quantity.Text = CountAll.ToString(); if (xappisd.Atom_Expiry_ExpiryDescription != null) { this.txt_V_ExpiryDescription.Text = xappisd.Atom_Expiry_ExpiryDescription.v; } else { this.txt_V_ExpiryDescription.Text = ""; txt_V_ExpiryDescription.BackColor = Color_null; } if (xappisd.Atom_Warranty_WarrantyConditions != null) { this.txt_V_WarrantyConditions.Text = xappisd.Atom_Warranty_WarrantyConditions.v; } else { this.txt_V_WarrantyConditions.Text = ""; txt_V_WarrantyConditions.BackColor = Color_null; } if (xappisd.Atom_Expiry_ID != null) { chk_V_NeverExpires.Checked = true; chk_V_NeverExpires.Enabled = true; } else { chk_V_NeverExpires.BackColor = Color_null; chk_V_NeverExpires.Checked = false; chk_V_NeverExpires.Enabled = false; } if (xappisd.Atom_Warranty_ID != null) { chk_V_Warranty.Enabled = true; chk_V_Warranty.Checked = true; } else { chk_V_Warranty.BackColor = Color_null; chk_V_Warranty.Enabled = false; chk_V_Warranty.Checked = false; } if ((xappisd.Atom_Warranty_WarrantyDurationType != null) && (xappisd.Atom_Warranty_WarrantyDuration != null)) { this.lbl_V_WarantyDuration.Text = m_InvoiceDB.SetWarrantyDurationText(xappisd.Atom_Warranty_WarrantyDurationType.v, xappisd.Atom_Warranty_WarrantyDuration.v); } else { this.lbl_V_WarantyDuration.Text = ""; lbl_V_WarantyDuration.BackColor = Color_null; } if (xappisd.Atom_Expiry_ExpectedShelfLifeInDays != null) { this.lbl_V_ExpectedShelfLifeInDays.Text = xappisd.Atom_Expiry_ExpectedShelfLifeInDays.v.ToString(); } else { this.lbl_V_ExpectedShelfLifeInDays.Text = ""; lbl_V_ExpectedShelfLifeInDays.BackColor = Color_null; } if (xappisd.Atom_Expiry_SaleBeforeExpiryDateInDays != null) { this.lbl_V_SaleBeforeExpiryDateInDays.Text = xappisd.Atom_Expiry_SaleBeforeExpiryDateInDays.v.ToString(); } else { this.lbl_V_SaleBeforeExpiryDateInDays.Text = ""; lbl_V_SaleBeforeExpiryDateInDays.BackColor = Color_null; } if (xappisd.Atom_Expiry_DiscardBeforeExpiryDateInDays != null) { this.lbl_V_DiscardBeforeExpiryDateInDays.Text = xappisd.Atom_Expiry_DiscardBeforeExpiryDateInDays.v.ToString(); } else { this.lbl_V_DiscardBeforeExpiryDateInDays.Text = ""; lbl_V_DiscardBeforeExpiryDateInDays.BackColor = Color_null; } if (xappisd.Atom_Taxation_Name != null) { this.lbl_V_Taxation_Name.Text = xappisd.Atom_Taxation_Name.v; } else { this.lbl_V_Taxation_Name.Text = ""; lbl_V_Taxation_Name.BackColor = Color_null; } if (xappisd.Atom_Taxation_Rate != null) { this.lbl_V_Taxation_Rate.Text = (xappisd.Atom_Taxation_Rate.v * 100).ToString() + "%"; } else { this.lbl_V_Taxation_Rate.Text = ""; lbl_V_Taxation_Rate.BackColor = Color_null; } if (xappisd.Atom_Item_barcode_barcode != null) { this.txt_barcode_value.Text = xappisd.Atom_Item_barcode_barcode.v; } else { this.txt_barcode_value.Text = ""; this.txt_barcode_value.BackColor = Color_null; } //Price decimal RetailPricePerUnit = -1; if (xappisd.RetailPricePerUnit != null) { lbl_V_RetailPricePerUnit.Text = xappisd.RetailPricePerUnit.v.ToString(); RetailPricePerUnit = xappisd.RetailPricePerUnit.v; } else { lbl_V_RetailPricePerUnit.Text = ""; lbl_V_RetailPricePerUnit.BackColor = Color_null; } decimal RetailPrice = -1; if (RetailPricePerUnit>=0) { RetailPrice = RetailPricePerUnit*CountAll; } decimal discount = 0; if (xappisd.Discount != null) { discount = xappisd.Discount.v; lbl_V_Discount.Text = (discount * 100).ToString() + "%"; } else { lbl_V_Discount.Text = ""; lbl_V_Discount.BackColor = Color_null; } decimal RetailPriceWithDiscount = -1; if (RetailPrice >= 0) { RetailPriceWithDiscount = RetailPrice * (1- discount); lbl_V_RetailPriceWithDiscount.Text = RetailPriceWithDiscount.ToString(); } else { lbl_V_RetailPriceWithDiscount.Text = ""; lbl_V_RetailPriceWithDiscount.BackColor = Color_null; } decimal TaxPrice = -1; decimal TaxPricePerUnit = -1; if (xappisd.TaxPrice != null) { TaxPricePerUnit = xappisd.TaxPrice.v; } if (TaxPricePerUnit >= 0) { TaxPrice = TaxPricePerUnit * CountAll; lbl_V_TaxPrice.Text = TaxPrice.ToString(); } else { lbl_V_TaxPrice.Text = ""; lbl_V_TaxPrice.BackColor = Color_null; } decimal NetPrice = -1; if ((RetailPriceWithDiscount >= 0) && (TaxPrice >= 0)) { NetPrice = RetailPriceWithDiscount - TaxPrice; lbl_V_NetPrice.Text = NetPrice.ToString(); } else { lbl_V_NetPrice.Text = ""; lbl_V_NetPrice.BackColor = Color_null; } string sql_get_image = "select Atom_Item_ImageLib.Image_Data from Atom_Item_ImageLib inner join Atom_Item_Image on Atom_Item_Image.Atom_Item_ImageLib_ID = Atom_Item_ImageLib.ID where Atom_Item_Image.Atom_Item_ID = " + xappisd.Atom_Item_ID.v.ToString(); DataTable dt = new DataTable(); if (DBSync.DBSync.ReadDataTable(ref dt, sql_get_image, null, ref Err)) { if (dt.Rows.Count > 0) { ImageConverter ic = new ImageConverter(); byte[] image_bytes = (byte[])dt.Rows[0]["Image_Data"]; this.pic_Atom_Item.Image = (Image)ic.ConvertFrom(image_bytes); } } return true; } else { LogFile.Error.Show("ERROR:usrc_Atom_Item_View:Init:No Atom_Item data for Atom_Item_ID = " + m_Atom_Item_ID.ToString()); return false; } } else { LogFile.Error.Show("ERROR:Atom_Item_ViewForm_Load:Err=" + Err); return false; } }
private void RemoveStock_from_list(Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd) { List<Stock_Data> Stock_Data_to_remove_List = new List<Stock_Data>(); foreach (Stock_Data sd in appisd.m_ShopShelf_Source.Stock_Data_List) { if (sd.Stock_ID != null) { Stock_Data_to_remove_List.Add(sd); } } foreach (Stock_Data sd in Stock_Data_to_remove_List) { appisd.m_ShopShelf_Source.Stock_Data_List.Remove(sd); } if (appisd.m_ShopShelf_Source.Stock_Data_List.Count == 0) { this.m_DocInvoice_ShopC_Item_Data_LIST.Remove(appisd); } }
public bool Remove_and_put_back_to_ShopShelf(string DocInvoice,Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd, ShopShelf shopShelf) { if (DocInvoice==null) { LogFile.Error.Show("ERROR:TangentaDB:Basket.cs:Basket:Remove_and_put_back_to_ShopShelf: DocInvoice==null."); return false; } string sql = @"select appis.ID, s.ID as Stock_ID, appis.dQuantity, s.dQuantity as Stock_dQuantity from "+DocInvoice+@"_ShopC_Item appis inner join Stock s on appis.Stock_ID = s.ID inner join Atom_price_item api on api.ID = appis.Atom_price_item_ID inner join Atom_Item ai on ai.ID = api.Atom_Item_ID inner join Item i on i.UniqueName = ai.UniqueName where ("+DocInvoice+@"_ID = " + appisd.DocInvoice_ID.v.ToString() + ") and (i.ID=" + appisd.Item_ID.v.ToString() + ")"; DataTable dt1 = new DataTable(); string Err = null; if (DBSync.DBSync.ReadDataTable(ref dt1, sql, ref Err)) { string s_in_ID_list = null; if (dt1.Rows.Count > 0) { List<SQL_Parameter> lpar = new List<SQL_Parameter>(); List<Return_to_shop_shelf_data> Return_to_basket_data_List = new List<Return_to_shop_shelf_data>(); int i = 0; foreach (DataRow dr in dt1.Rows) { decimal dQuantity_stock = (decimal)dr["Stock_dQuantity"]; decimal dQuantity_New_InStock = (decimal)dr["dQuantity"] + dQuantity_stock; decimal dQuantity_diff = dQuantity_New_InStock - dQuantity_stock; string spar_dQuantity_New_InStock = "@par_dQuantity_New_InStock" + i.ToString(); long stock_id = (long)dr["Stock_ID"]; SQL_Parameter par_dQuantity_New_InStock = new SQL_Parameter(spar_dQuantity_New_InStock, SQL_Parameter.eSQL_Parameter.Decimal, false, dQuantity_New_InStock); lpar.Add(par_dQuantity_New_InStock); Return_to_shop_shelf_data rtb = new Return_to_shop_shelf_data("update stock set dQuantity = " + spar_dQuantity_New_InStock + " where ID = " + stock_id.ToString(), stock_id, dQuantity_diff); Return_to_basket_data_List.Add(rtb); long id = (long)dr["ID"]; if (s_in_ID_list == null) { s_in_ID_list += "(" + id.ToString(); } else { s_in_ID_list += "," + id.ToString(); } i++; shopShelf.Set_dQuantity_New_InStock(stock_id, dQuantity_New_InStock); } s_in_ID_list += ")"; object objret = null; if (UpdateStock(Return_to_basket_data_List, lpar)) { string sql_Delete_DocInvoice_Atom_Item_Stock = "delete from "+DocInvoice+@"_ShopC_Item where Stock_ID is not null and ("+DocInvoice+@"_ID = " + appisd.DocInvoice_ID.v.ToString() + ") and "+DocInvoice+@"_ShopC_Item.ID in " + s_in_ID_list; if (DBSync.DBSync.ExecuteNonQuerySQL(sql_Delete_DocInvoice_Atom_Item_Stock, null, ref objret, ref Err)) { string sql_Delete_Atom_Price_Item = "delete from Atom_Price_Item where ID not in (select Atom_Price_Item_ID from DocInvoice_ShopC_Item UNION select Atom_Price_Item_ID from DocProformaInvoice_ShopC_Item)"; if (DBSync.DBSync.ExecuteNonQuerySQL(sql_Delete_Atom_Price_Item, null, ref objret, ref Err)) { string sql_Delete_Atom_Item_Image = "delete from Atom_Item_Image where Atom_Item_Image.Atom_Item_ID not in (select Atom_Item_ID from Atom_Price_Item)"; if (DBSync.DBSync.ExecuteNonQuerySQL(sql_Delete_Atom_Item_Image, null, ref objret, ref Err)) { string sql_Delete_Atom_Item_ImageLib = "delete from Atom_Item_ImageLib where ID not in (select Atom_Item_ImageLib_ID from Atom_Item_Image)"; if (DBSync.DBSync.ExecuteNonQuerySQL(sql_Delete_Atom_Item_ImageLib, null, ref objret, ref Err)) { RemoveStock_from_list(appisd); return true; } else { LogFile.Error.Show("ERROR:Basket:sql=" + sql_Delete_Atom_Item_ImageLib + "\r\nErr=" + Err); return false; } } else { LogFile.Error.Show("ERROR:Basket:delete from Atom_Item:Err=" + Err); return false; } } else { LogFile.Error.Show("ERROR:Basket:sql=" + sql_Delete_Atom_Price_Item + "\r\nErr=" + Err); return false; } } else { LogFile.Error.Show("ERROR:Basket:delete from "+DocInvoice+"_ShopC_Item:Err=" + Err); return false; } } else { return false; } } else { LogFile.Error.Show("ERROR:Basket:dt1.Rows.Count == 0 !"); return false; } } else { LogFile.Error.Show("ERROR:Basket:sql=" + sql + "\r\nErr=" + Err); return false; } }
public bool RemoveFactory(string DocInvoice,Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd) { string sql = null; if (DocInvoice==null) { LogFile.Error.Show("ERROR:Basket.cs:Basket:RemoveFactory:DocInvoice= null not implemented."); return false; } else if (DocInvoice.Equals("DocInvoice")) { sql = @"select appis.ID from DocInvoice_ShopC_Item appis inner join Atom_price_item api on api.ID = appis.Atom_price_item_ID inner join Atom_Item ai on ai.ID = api.Atom_Item_ID inner join Item i on i.UniqueName = ai.UniqueName where (DocInvoice_ID = " + appisd.DocInvoice_ID.v.ToString() + ") and (i.ID=" + appisd.Item_ID.v.ToString() + ") and Stock_ID is null"; } else if (DocInvoice.Equals("DocProformaInvoice")) { sql = @"select appis.ID from DocProformaInvoice_ShopC_Item appis inner join Atom_price_item api on api.ID = appis.Atom_price_item_ID inner join Atom_Item ai on ai.ID = api.Atom_Item_ID inner join Item i on i.UniqueName = ai.UniqueName where (DocProformaInvoice_ID = " + appisd.DocInvoice_ID.v.ToString() + ") and (i.ID=" + appisd.Item_ID.v.ToString() + ") and Stock_ID is null"; } else { LogFile.Error.Show("ERROR:Basket.cs:Basket:RemoveFactory:DocInvoice=" + DocInvoice + " not implemented."); return false; } DataTable dt1 = new DataTable(); string Err = null; if (DBSync.DBSync.ReadDataTable(ref dt1, sql, ref Err)) { string s_in_ID_list = null; if (dt1.Rows.Count > 0) { foreach (DataRow dr in dt1.Rows) { long id = (long)dr["ID"]; if (s_in_ID_list == null) { s_in_ID_list += "(" + id.ToString(); } else { s_in_ID_list += "," + id.ToString(); } s_in_ID_list += ")"; } string sql_Delete_DocInvoice_Atom_Item_Stock = null; if (DocInvoice.Equals("DocInvoice")) { sql_Delete_DocInvoice_Atom_Item_Stock = "delete from DocInvoice_ShopC_Item where Stock_ID is null and (DocInvoice_ID = " + appisd.DocInvoice_ID.v.ToString() + ") and DocInvoice_ShopC_Item.ID in " + s_in_ID_list; } else if (DocInvoice.Equals("DocProformaInvoice")) { sql_Delete_DocInvoice_Atom_Item_Stock = "delete from DocProformaInvoice_ShopC_Item where Stock_ID is null and (DocProformaInvoice_ID = " + appisd.DocInvoice_ID.v.ToString() + ") and DocProformaInvoice_ShopC_Item.ID in " + s_in_ID_list; } else { LogFile.Error.Show("ERROR:Basket.cs:Basket:RemoveFactory:DocInvoice=" + DocInvoice + " not implemented."); return false; } object objret = null; if (DBSync.DBSync.ExecuteNonQuerySQL(sql_Delete_DocInvoice_Atom_Item_Stock, null, ref objret, ref Err)) { string sql_Delete_Atom_Price_Item = "delete from Atom_Price_Item where ID not in (select Atom_Price_Item_ID from DocInvoice_ShopC_Item UNION select Atom_Price_Item_ID from DocProformaInvoice_ShopC_Item)"; if (DBSync.DBSync.ExecuteNonQuerySQL(sql_Delete_Atom_Price_Item, null, ref objret, ref Err)) { string sql_Delete_Atom_Item_Image = "delete from Atom_Item_Image where Atom_Item_Image.Atom_Item_ID not in (select Atom_Item_ID from Atom_Price_Item)"; if (DBSync.DBSync.ExecuteNonQuerySQL(sql_Delete_Atom_Item_Image, null, ref objret, ref Err)) { string sql_Delete_Atom_Item_ImageLib = "delete from Atom_Item_ImageLib where ID not in (select Atom_Item_ImageLib_ID from Atom_Item_Image)"; if (DBSync.DBSync.ExecuteNonQuerySQL(sql_Delete_Atom_Item_ImageLib, null, ref objret, ref Err)) { RemoveFactory_from_list(appisd); return true; } else { LogFile.Error.Show("ERROR:Basket:sql=" + sql_Delete_Atom_Item_ImageLib + "\r\nErr=" + Err); return false; } } else { LogFile.Error.Show("ERROR:Basket:delete from Atom_Item:Err=" + Err); return false; } } else { LogFile.Error.Show("ERROR:Basket:sql=" + sql_Delete_Atom_Price_Item + "\r\nErr=" + Err); return false; } } else { LogFile.Error.Show("ERROR:Basket:delete from DocInvoice_ShopC_Item:Err=" + Err); return false; } } else { LogFile.Error.Show("ERROR:Basket:dt1.Rows.Count == 0 !"); return false; } } else { LogFile.Error.Show("ERROR:Basket:sql=" + sql + "\r\nErr=" + Err); return false; } }
public void Parse_Atom_DocInvoice_Item_Stock(string DocInvoice,DataTable xdtDraft_DocInvoice_Atom_Item_Stock, ref List<object> xDocInvoice_ShopC_Item_Data_LIST) { int i = 0; int iCount = xdtDraft_DocInvoice_Atom_Item_Stock.Rows.Count; for (i = 0; i < iCount; i++) { Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd = new Atom_DocInvoice_ShopC_Item_Price_Stock_Data(); appisd.Set(DocInvoice, xdtDraft_DocInvoice_Atom_Item_Stock.Rows[i],ref xDocInvoice_ShopC_Item_Data_LIST); } }
public static bool Get(ref Atom_DocInvoice_ShopC_Item_Price_Stock_Data appisd, ref long Atom_PriceList_ID) { string Err = null; if (appisd.Atom_PriceList_Name != null) { List<SQL_Parameter> lpar = new List<SQL_Parameter>(); string spar_Atom_PriceList_Name = "@par_Atom_PriceList_Name"; SQL_Parameter par_Atom_PriceList_Name = new SQL_Parameter(spar_Atom_PriceList_Name, SQL_Parameter.eSQL_Parameter.Nvarchar, false, appisd.Atom_PriceList_Name.v); lpar.Add(par_Atom_PriceList_Name); string spar_Atom_Currency_Abbreviation = "@par_Atom_Currency_Abbreviation"; SQL_Parameter par_Atom_Currency_Abbreviation = new SQL_Parameter(spar_Atom_Currency_Abbreviation, SQL_Parameter.eSQL_Parameter.Nvarchar, false, appisd.Atom_Currency_Abbreviation.v); lpar.Add(par_Atom_Currency_Abbreviation); string spar_Atom_Currency_Name = "@par_Atom_Currency_Name"; SQL_Parameter par_Atom_Currency_Name = new SQL_Parameter(spar_Atom_Currency_Name, SQL_Parameter.eSQL_Parameter.Nvarchar, false, appisd.Atom_Currency_Name.v); lpar.Add(par_Atom_Currency_Name); DataTable dt = new DataTable(); string sql = @"select Atom_PriceList.ID from Atom_PriceList inner join Atom_Currency on Atom_PriceList.Atom_Currency_ID = Atom_Currency.ID where Atom_PriceList.Name = " + spar_Atom_PriceList_Name + " and Atom_Currency.Name = " + spar_Atom_Currency_Name + " and Atom_Currency.Abbreviation = " + spar_Atom_Currency_Abbreviation; if (DBSync.DBSync.ReadDataTable(ref dt, sql, lpar, ref Err)) { if (dt.Rows.Count > 0) { Atom_PriceList_ID = (long)dt.Rows[0]["ID"]; return true; } else { sql = @"select PriceList.ID from PriceList inner join Currency on PriceList.Currency_ID = Currency.ID where PriceList.Name = " + spar_Atom_PriceList_Name + " and Currency.Name = " + spar_Atom_Currency_Name + " and Currency.Abbreviation = " + spar_Atom_Currency_Abbreviation; dt.Clear(); dt.Rows.Clear(); dt.Columns.Clear(); if (DBSync.DBSync.ReadDataTable(ref dt, sql, lpar, ref Err)) { if (dt.Rows.Count > 0) { long PriceList_ID = (long)dt.Rows[0]["ID"]; xPriceList m_xPriceList = new xPriceList(); sql = "select Currency_ID from PriceList where PriceList.ID = " + PriceList_ID.ToString(); dt.Clear(); if (DBSync.DBSync.ReadDataTable(ref dt, sql, null, ref Err)) { if (dt.Rows.Count > 0) { long Currency_ID = (long)dt.Rows[0]["Currency_ID"]; long Atom_Currency_ID = -1; if (f_Atom_Currency.Get(Currency_ID, ref Atom_Currency_ID)) { sql = "insert into Atom_PriceList (Name,Valid,ValidFrom,ValidTo,Description,Atom_Currency_ID) select Name,Valid,ValidFrom,ValidTo,Description," + Atom_Currency_ID.ToString() + " from PriceList where ID = " + PriceList_ID.ToString(); object objretx = null; if (DBSync.DBSync.ExecuteNonQuerySQLReturnID(sql, null, ref Atom_PriceList_ID, ref objretx, ref Err, "Atom_PriceList")) { return true; } else { LogFile.Error.Show("ERROR:f_Atom_PriceList:Get:" + sql + "\r\nErr=" + Err); return false; } } else { return false; } } else { LogFile.Error.Show("ERROR:f_Atom_PriceList:PriceList has no Currency!\r\nsql=" + sql); return false; } } else { LogFile.Error.Show("ERROR:f_Atom_PriceList:Get:" + sql + "\r\nErr=" + Err); return false; } } else { LogFile.Error.Show("ERROR:f_Atom_PriceList:PriceList has no data!\r\nsql=" + sql); return false; } } else { LogFile.Error.Show("ERROR:f_Atom_PriceList:Get:" + sql + "\r\nErr=" + Err); return false; } } } else { LogFile.Error.Show("ERROR:f_Atom_PriceList:Get:" + sql + "\r\nErr=" + Err); return false; } } else { LogFile.Error.Show("ERROR:f_Atom_PriceList:Get:appisd.Atom_PriceList_Name==null"); return false; } }