protected void cmdSearch_Click(object sender, System.Web.UI.ImageClickEventArgs e) { Data.Inventory clsInventory = new Data.Inventory(); cboInventoryNo.DataTextField = "ReferenceNo"; cboInventoryNo.DataValueField = "PostingReference"; cboInventoryNo.DataSource = clsInventory.ClosingInventoryReferenceNos(Convert.ToDateTime(txtStartTransactionDate.Text), Convert.ToDateTime(txtEndTransactionDate.Text)); cboInventoryNo.DataBind(); cboInventoryNo.Items.Insert(0, new ListItem(Constants.PLEASE_SELECT, Constants.PLEASE_SELECT + DateTime.MinValue.ToString("yyyy-MM-dd"))); cboInventoryNo.SelectedIndex = 0; clsInventory.CommitAndDispose(); }
protected void cboInventoryNo_SelectedIndexChanged(object sender, System.EventArgs e) { cboContact.SelectedIndex = 0; cboGroup.SelectedIndex = 0; Data.Inventory clsInventory = new Data.Inventory(); System.Data.DataTable dt = clsInventory.ClosingInventoryContactCodes(cboInventoryNo.SelectedItem.Text); if (dt.Rows.Count == 1) { cboContact.SelectedIndex = cboContact.Items.IndexOf(cboContact.Items.FindByValue(dt.Rows[0]["ContactID"].ToString())); } dt = clsInventory.ClosingInventoryGroupCodes(cboInventoryNo.SelectedItem.Text); if (dt.Rows.Count == 1) { cboGroup.SelectedIndex = cboGroup.Items.IndexOf(cboGroup.Items.FindByValue(dt.Rows[0]["ProductGroupID"].ToString())); } clsInventory.CommitAndDispose(); }
private void SaveToDB() { AceSoft.RetailPlus.Client.MasterDB clsMasterConnection; Data.Products clsProducts; Data.Inventory clsInventory; Data.Database clsDatabase; Data.ERPConfig clsERPConfig = new Data.ERPConfig(); Data.ERPConfigDetails clsERPConfigDetails = clsERPConfig.Details(); string strReferenceNo = Constants.CLOSE_INVENTORY_CODE + CompanyDetails.BECompanyCode + DateTime.Now.Year.ToString() + clsERPConfig.get_LastClosingNo(); clsERPConfig.CommitAndDispose(); Data.ProductDetails clsProductDetails; Data.InventoryDetails clsInventoryDetails; DateTime dtePostingDate = DateTime.Now; if (!Directory.Exists("invfiles/backups/")) Directory.CreateDirectory("invfiles/backups/"); if (File.Exists("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + ".inv")) { if (MessageBox.Show("You have already loaded the inventory for this branch today. Please verify the file you are loading. Would you like to continue?", "RetailPlus", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == System.Windows.Forms.DialogResult.No) { bgwSavetoDB.ReportProgress(100); return; } } else { System.IO.File.Copy("invfiles/" + mclsBranchDetails.BranchCode + ".inv", "invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + ".inv"); } InvExLog clsInvExLog = new InvExLog(); clsInvExLog.BranchDetails = mclsBranchDetails; if (File.Exists("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_exc.inv")) { System.IO.File.Copy("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_exc.inv", "invfiles/backups/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_exc.inv" + "_" + DateTime.Now.ToString("yyyyddMMhhmmss")); System.IO.File.Delete("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_exc.inv"); } InvLoadedLog clsInvLoadedLog = new InvLoadedLog(); clsInvLoadedLog.BranchDetails = mclsBranchDetails; if (File.Exists("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_saved.inv")) { System.IO.File.Copy("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_saved.inv", "invfiles/backups/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_saved.inv" + "_" + DateTime.Now.ToString("yyyyddMMhhmmss")); System.IO.File.Delete("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_saved.inv"); } decimal iCtr = 1, iRows = Decimal.Parse(mdtItems.Rows.Count.ToString()); foreach (System.Data.DataRow dr in mdtItems.Rows) { string strBarCode = dr["BarCode"].ToString(); decimal decQuantity = decimal.Parse(dr["Quantity"].ToString()); string strUnit = dr["Unit"].ToString(); string strDescription = dr["Description"].ToString(); mstStatus = "[" + iCtr.ToString() + "/" + iRows + "]Saving " + strBarCode + strDescription; bgwSavetoDB.ReportProgress(int.Parse(Math.Ceiling(iCtr / iRows * 100).ToString())); iCtr++; back: clsMasterConnection = new AceSoft.RetailPlus.Client.MasterDB(); try { clsMasterConnection.GetConnection(); clsProducts = new Data.Products(clsMasterConnection.Connection, clsMasterConnection.Transaction); clsInventory = new Data.Inventory(clsMasterConnection.Connection, clsMasterConnection.Transaction); clsProductDetails = clsProducts.Details(mclsBranchDetails.BranchID, strBarCode); if (clsProductDetails.ProductID == 0) { clsInvExLog.AddItem(strBarCode, decQuantity, strUnit, strDescription); } else { clsInvLoadedLog.AddItem(strBarCode, decQuantity, strUnit, strDescription); /******************************************* * Add to Inventory * ****************************************/ //clsProduct.AddQuantity(lngProductID, decQuantity); //if (lngVariationMatrixID != 0) { clsProductVariationsMatrix.AddQuantity(lngVariationMatrixID, decQuantity); } // July 26, 2011: change the above codes to the following clsProducts.AddQuantity(mclsBranchDetails.BranchID, clsProductDetails.ProductID, 0, decQuantity, Data.Products.getPRODUCT_INVENTORY_MOVEMENT_VALUE(Data.PRODUCT_INVENTORY_MOVEMENT.ADD_INVENTORY_BY_BRANCH) + " /" + clsProductDetails.BaseUnitCode, DateTime.Now, strReferenceNo, "System"); //-- STEP 1: Insert to tblInventory for reporting purposes /******************************************* * Add to Inventory Analysis * ****************************************/ clsInventoryDetails = new Data.InventoryDetails(); clsInventoryDetails.BranchID = mclsBranchDetails.BranchID; clsInventoryDetails.PostingDateFrom = clsERPConfigDetails.PostingDateFrom; clsInventoryDetails.PostingDateTo = clsERPConfigDetails.PostingDateTo; clsInventoryDetails.PostingDate = dtePostingDate; clsInventoryDetails.ReferenceNo = strReferenceNo; clsInventoryDetails.ContactID = clsProductDetails.SupplierID; clsInventoryDetails.ContactCode = clsProductDetails.SupplierCode; clsInventoryDetails.ProductID = clsProductDetails.ProductID; clsInventoryDetails.ProductCode = clsProductDetails.ProductCode; clsInventoryDetails.VariationMatrixID = 0; clsInventoryDetails.MatrixDescription = ""; clsInventoryDetails.ClosingQuantity = clsProductDetails.Quantity; clsInventoryDetails.ClosingActualQuantity = decQuantity + clsProductDetails.Quantity; clsInventoryDetails.ClosingCost = (decQuantity + clsProductDetails.Quantity) * clsProductDetails.PurchasePrice; clsInventoryDetails.ClosingVAT = (decQuantity + clsProductDetails.Quantity) * clsProductDetails.PurchasePrice * decimal.Parse("0.12"); // Purchase Cost with VAT clsInventoryDetails.PurchasePrice = clsProductDetails.PurchasePrice; clsInventory.Insert(clsInventoryDetails); } clsMasterConnection.CommitAndDispose(); } catch (Exception ex) { if (ex.Message.Contains("Deadlock found when trying to get lock; try restarting transaction")) { try { clsMasterConnection.ThrowException(ex); } catch { } clsDatabase = new Data.Database(); clsDatabase.FlushHosts(); clsDatabase.CommitAndDispose(); goto back; } else if (ex.InnerException.Message.Contains("Deadlock found when trying to get lock; try restarting transaction")) { try { clsMasterConnection.ThrowException(ex); } catch { } clsDatabase = new Data.Database(); clsDatabase.FlushHosts(); clsDatabase.CommitAndDispose(); goto back; } } } bgwSavetoDB.ReportProgress(100); }
public GameClient() { IsAIBot = true; this.socketClient = new ProjectX_V3_Lib.Network.SocketClient(); socketClient.Owner = this; socketClient.Crypto = new ProjectX_V3_Lib.Cryptography.GameCrypto(Program.Config.ReadString("GameKey").GetBytes()); _screen = new ProjectX_V3_Game.Core.Screen(this); _baseentity = new BaseEntity(this); _maxhp = 0; _maxmp = 0; _inventory = new ProjectX_V3_Game.Data.Inventory(this); _equipments = new ProjectX_V3_Game.Data.Equipments(this); _trade = new ProjectX_V3_Game.Data.TradeData(); _spelldata = new ProjectX_V3_Game.Data.SpellData(this); _subclasses = new SubClasses(); Warehouses = new ConcurrentDictionary<ushort, ProjectX_V3_Game.Data.Warehouse>(); foreach (ushort whID in whids) { if (!Warehouses.TryAdd(whID, new Data.Warehouse(this, whID))) throw new Exception("Failed to add Warehouse..."); } TournamentScore = new ProjectX_V3_Game.Tournaments.TournamentScore(); TournamentInfo = new ProjectX_V3_Game.Tournaments.TournamentInfo(this); Arena = new ProjectX_V3_Game.Data.ArenaInfo(this); Pets = new ConcurrentDictionary<int, BattlePet>(); Permission = Enums.PlayerPermission.Normal; }
private void LoadOptions() { txtStartTransactionDate.Text = DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd"); txtEndTransactionDate.Text = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"); Contacts clsContact = new Contacts(); cboContact.DataTextField = "ContactName"; cboContact.DataValueField = "ContactID"; cboContact.DataSource = clsContact.SuppliersAsDataTable(Limit: 100).DefaultView; cboContact.DataBind(); cboContact.Items.Insert(0, new ListItem(Constants.PLEASE_SELECT, Constants.ZERO_STRING)); cboContact.SelectedIndex = 0; ProductGroup clsProductGroup = new ProductGroup(clsContact.Connection, clsContact.Transaction); cboGroup.DataTextField = "ProductGroupName"; cboGroup.DataValueField = "ProductGroupID"; cboGroup.DataSource = clsProductGroup.ListAsDataTable(); cboGroup.DataBind(); cboGroup.Items.Insert(0, new ListItem(Constants.PLEASE_SELECT, Constants.ZERO_STRING)); cboGroup.SelectedIndex = 0; ProductSubGroupColumns clsProductSubGroupColumns = new ProductSubGroupColumns() { ColumnsNameID = true }; ProductSubGroup clsProductSubGroup = new ProductSubGroup(clsContact.Connection, clsContact.Transaction); cboSubGroup.DataTextField = "ProductSubGroupName"; cboSubGroup.DataValueField = "ProductSubGroupID"; cboSubGroup.DataSource = clsProductSubGroup.ListAsDataTable(clsProductSubGroupColumns); cboSubGroup.DataBind(); cboSubGroup.Items.Insert(0, new ListItem(Constants.PLEASE_SELECT, Constants.ZERO_STRING)); cboSubGroup.SelectedIndex = 0; Data.Inventory clsInventory = new Data.Inventory(clsContact.Connection, clsContact.Transaction); cboInventoryNo.DataTextField = "ReferenceNo"; cboInventoryNo.DataValueField = "PostingReference"; cboInventoryNo.DataSource = clsInventory.ClosingInventoryReferenceNos(Convert.ToDateTime(txtStartTransactionDate.Text), Convert.ToDateTime(txtEndTransactionDate.Text)); cboInventoryNo.DataBind(); cboInventoryNo.Items.Insert(0, new ListItem(Constants.PLEASE_SELECT, Constants.PLEASE_SELECT + DateTime.MinValue.ToString("yyyy-MM-dd"))); cboInventoryNo.SelectedIndex = 0; clsContact.CommitAndDispose(); lblType.Text = ""; lblType.ToolTip = ""; if (Request.QueryString["type"] != null) { lblType.Text = Common.Decrypt(Request.QueryString["type"].ToString(), Session.SessionID); } if (Request.QueryString["typedet"] != null) { lblType.ToolTip = Common.Decrypt(Request.QueryString["typedet"].ToString(), Session.SessionID); } lblBranchID.Text = "0"; if (Request.QueryString["branchid"] != null) { lblBranchID.Text = Common.Decrypt(Request.QueryString["branchid"].ToString(), Session.SessionID); } if (Request.QueryString["refno"] != null) { string strRefNo = "refno"; strRefNo = Common.Decrypt(Request.QueryString["refno"].ToString(), Session.SessionID); cboInventoryNo.SelectedIndex = cboInventoryNo.Items.IndexOf(cboInventoryNo.Items.FindByText(strRefNo)); } if (Request.QueryString["prdgrpid"] != null) { string strPrdGrpID = "prdgrpid"; strPrdGrpID = Common.Decrypt(Request.QueryString["prdgrpid"].ToString(), Session.SessionID); cboGroup.SelectedIndex = cboGroup.Items.IndexOf(cboGroup.Items.FindByValue(strPrdGrpID)); } if (Request.QueryString["contactid"] != null) { string strContactID = "contactid"; strContactID = Common.Decrypt(Request.QueryString["contactid"].ToString(), Session.SessionID); cboContact.SelectedIndex = cboContact.Items.IndexOf(cboContact.Items.FindByValue(strContactID)); } }
private void SetDataSource(ReportDocument Report) { ReportDataset rptds = new ReportDataset(); string ContactCode = string.Empty; if (cboContact.SelectedItem.Value != Constants.ZERO_STRING) { ContactCode = cboContact.SelectedItem.Text; } string ProductGroupName = string.Empty; if (cboGroup.SelectedItem.Value != Constants.ZERO_STRING) { ProductGroupName = cboGroup.SelectedItem.Text; } string ProductSubGroupName = string.Empty; if (cboSubGroup.SelectedItem.Value != Constants.ZERO_STRING) { ProductSubGroupName = cboSubGroup.SelectedItem.Text; } System.Data.DataTable dt = null; if (lblType.Text == "invcount") { Int64 lngSupplierID = Convert.ToInt64(cboContact.SelectedItem.Value); Int64 lngProductgroupID = Convert.ToInt64(cboGroup.SelectedItem.Value); Int64 lngProductSubGroupID = Convert.ToInt64(cboSubGroup.SelectedItem.Value); ProductInventories clsProductInventories = new ProductInventories(); dt = clsProductInventories.ListAsDataTable(BranchID: int.Parse(lblBranchID.Text), SupplierID: lngSupplierID, ProductGroupID: lngProductgroupID, ProductSubGroupID: lngProductSubGroupID, clsProductListFilterType: ProductListFilterType.ShowActiveOnly, SortField: "ProductCode ASC, MatrixDescription ASC, BarCode1", SortOrder: SortOption.Desscending); //Contacts clsContacts = new Contacts(clsProductInventories.Connection, clsProductInventories.Transaction); //ContactDetails clsContactDetails = clsContacts.Details(lngSupplierID); clsProductInventories.CommitAndDispose(); foreach (System.Data.DataRow dr in dt.Rows) { DataRow drInventory = rptds.ProductInventory.NewRow(); foreach (DataColumn dc in rptds.ProductInventory.Columns) { drInventory[dc] = dr[dc.ColumnName]; } rptds.ProductInventory.Rows.Add(drInventory); } } else { Data.Inventory clsInventory = new Data.Inventory(); dt = clsInventory.DataList(cboInventoryNo.SelectedItem.Text, chkIncludeShortOverProducts.Checked, long.Parse(cboContact.SelectedItem.Value), long.Parse(cboGroup.SelectedItem.Value), SortField: "InventoryID", SortOrder: SortOption.Ascending); clsInventory.CommitAndDispose(); foreach (System.Data.DataRow dr in dt.Rows) { DataRow drInventory = rptds.Inventory.NewRow(); foreach (DataColumn dc in rptds.Inventory.Columns) { drInventory[dc] = dr[dc.ColumnName]; } rptds.Inventory.Rows.Add(drInventory); } } Report.SetDataSource(rptds); SetParameters(Report); }
private void LoadOptions() { txtStartTransactionDate.Text = DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd"); txtEndTransactionDate.Text = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"); Contacts clsContact = new Contacts(); cboContact.DataTextField = "ContactName"; cboContact.DataValueField = "ContactID"; cboContact.DataSource = clsContact.SuppliersAsDataTable(Limit: 100).DefaultView; cboContact.DataBind(); cboContact.Items.Insert(0, new ListItem(Constants.PLEASE_SELECT, Constants.ZERO_STRING)); cboContact.SelectedIndex = 0; ProductGroup clsProductGroup = new ProductGroup(clsContact.Connection, clsContact.Transaction); cboGroup.DataTextField = "ProductGroupName"; cboGroup.DataValueField = "ProductGroupID"; cboGroup.DataSource = clsProductGroup.ListAsDataTable(); cboGroup.DataBind(); cboGroup.Items.Insert(0, new ListItem(Constants.PLEASE_SELECT,Constants.ZERO_STRING)); cboGroup.SelectedIndex = 0; ProductSubGroupColumns clsProductSubGroupColumns = new ProductSubGroupColumns() { ColumnsNameID = true }; ProductSubGroup clsProductSubGroup = new ProductSubGroup(clsContact.Connection, clsContact.Transaction); cboSubGroup.DataTextField = "ProductSubGroupName"; cboSubGroup.DataValueField = "ProductSubGroupID"; cboSubGroup.DataSource = clsProductSubGroup.ListAsDataTable(clsProductSubGroupColumns); cboSubGroup.DataBind(); cboSubGroup.Items.Insert(0, new ListItem(Constants.PLEASE_SELECT, Constants.ZERO_STRING)); cboSubGroup.SelectedIndex = 0; Data.Inventory clsInventory = new Data.Inventory(clsContact.Connection, clsContact.Transaction); cboInventoryNo.DataTextField = "ReferenceNo"; cboInventoryNo.DataValueField = "PostingReference"; cboInventoryNo.DataSource = clsInventory.ClosingInventoryReferenceNos(Convert.ToDateTime(txtStartTransactionDate.Text), Convert.ToDateTime(txtEndTransactionDate.Text)); cboInventoryNo.DataBind(); cboInventoryNo.Items.Insert(0, new ListItem(Constants.PLEASE_SELECT, Constants.PLEASE_SELECT + DateTime.MinValue.ToString("yyyy-MM-dd"))); cboInventoryNo.SelectedIndex = 0; clsContact.CommitAndDispose(); lblType.Text = ""; lblType.ToolTip = ""; if (Request.QueryString["type"] != null) { lblType.Text = Common.Decrypt(Request.QueryString["type"].ToString(), Session.SessionID); } if (Request.QueryString["typedet"] != null) { lblType.ToolTip = Common.Decrypt(Request.QueryString["typedet"].ToString(), Session.SessionID); } lblBranchID.Text = "0"; if (Request.QueryString["branchid"] != null) { lblBranchID.Text = Common.Decrypt(Request.QueryString["branchid"].ToString(), Session.SessionID); } if (Request.QueryString["refno"] != null) { string strRefNo = "refno"; strRefNo = Common.Decrypt(Request.QueryString["refno"].ToString(), Session.SessionID); cboInventoryNo.SelectedIndex = cboInventoryNo.Items.IndexOf(cboInventoryNo.Items.FindByText(strRefNo)); } if (Request.QueryString["prdgrpid"] != null) { string strPrdGrpID = "prdgrpid"; strPrdGrpID = Common.Decrypt(Request.QueryString["prdgrpid"].ToString(), Session.SessionID); cboGroup.SelectedIndex = cboGroup.Items.IndexOf(cboGroup.Items.FindByValue(strPrdGrpID)); } if (Request.QueryString["contactid"] != null) { string strContactID = "contactid"; strContactID = Common.Decrypt(Request.QueryString["contactid"].ToString(), Session.SessionID); cboContact.SelectedIndex = cboContact.Items.IndexOf(cboContact.Items.FindByValue(strContactID)); } }
private void SetDataSource(ReportDocument Report) { ReportDataset rptds = new ReportDataset(); string ContactCode = string.Empty; if (cboContact.SelectedItem.Value != Constants.ZERO_STRING) ContactCode = cboContact.SelectedItem.Text; string ProductGroupName = string.Empty; if (cboGroup.SelectedItem.Value != Constants.ZERO_STRING) ProductGroupName = cboGroup.SelectedItem.Text; string ProductSubGroupName = string.Empty; if (cboSubGroup.SelectedItem.Value != Constants.ZERO_STRING) ProductSubGroupName = cboSubGroup.SelectedItem.Text; System.Data.DataTable dt = null; if (lblType.Text == "invcount") { Int64 lngSupplierID = Convert.ToInt64(cboContact.SelectedItem.Value); Int64 lngProductgroupID = Convert.ToInt64(cboGroup.SelectedItem.Value); Int64 lngProductSubGroupID = Convert.ToInt64(cboSubGroup.SelectedItem.Value); ProductInventories clsProductInventories = new ProductInventories(); dt = clsProductInventories.ListAsDataTable(BranchID: int.Parse(lblBranchID.Text), SupplierID: lngSupplierID, ProductGroupID: lngProductgroupID, ProductSubGroupID: lngProductSubGroupID, clsProductListFilterType: ProductListFilterType.ShowActiveOnly, SortField: "ProductCode ASC, MatrixDescription ASC, BarCode1", SortOrder: SortOption.Desscending); //Contacts clsContacts = new Contacts(clsProductInventories.Connection, clsProductInventories.Transaction); //ContactDetails clsContactDetails = clsContacts.Details(lngSupplierID); clsProductInventories.CommitAndDispose(); foreach (System.Data.DataRow dr in dt.Rows) { DataRow drInventory = rptds.ProductInventory.NewRow(); foreach (DataColumn dc in rptds.ProductInventory.Columns) drInventory[dc] = dr[dc.ColumnName]; rptds.ProductInventory.Rows.Add(drInventory); } } else { Data.Inventory clsInventory = new Data.Inventory(); dt = clsInventory.DataList(cboInventoryNo.SelectedItem.Text, chkIncludeShortOverProducts.Checked, long.Parse(cboContact.SelectedItem.Value), long.Parse(cboGroup.SelectedItem.Value), SortField: "InventoryID", SortOrder: SortOption.Ascending); clsInventory.CommitAndDispose(); foreach (System.Data.DataRow dr in dt.Rows) { DataRow drInventory = rptds.Inventory.NewRow(); foreach (DataColumn dc in rptds.Inventory.Columns) drInventory[dc] = dr[dc.ColumnName]; rptds.Inventory.Rows.Add(drInventory); } } Report.SetDataSource(rptds); SetParameters(Report); }
private void SaveToDB() { AceSoft.RetailPlus.Client.MasterDB clsMasterConnection; Data.Products clsProducts; Data.Inventory clsInventory; Data.Database clsDatabase; Data.ERPConfig clsERPConfig = new Data.ERPConfig(); Data.ERPConfigDetails clsERPConfigDetails = clsERPConfig.Details(); string strReferenceNo = Constants.CLOSE_INVENTORY_CODE + CompanyDetails.BECompanyCode + DateTime.Now.Year.ToString() + clsERPConfig.get_LastClosingNo(); clsERPConfig.CommitAndDispose(); Data.ProductDetails clsProductDetails; Data.InventoryDetails clsInventoryDetails; DateTime dtePostingDate = DateTime.Now; if (!Directory.Exists("invfiles/backups/")) { Directory.CreateDirectory("invfiles/backups/"); } if (File.Exists("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + ".inv")) { if (MessageBox.Show("You have already loaded the inventory for this branch today. Please verify the file you are loading. Would you like to continue?", "RetailPlus", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == System.Windows.Forms.DialogResult.No) { bgwSavetoDB.ReportProgress(100); return; } } else { System.IO.File.Copy("invfiles/" + mclsBranchDetails.BranchCode + ".inv", "invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + ".inv"); } InvExLog clsInvExLog = new InvExLog(); clsInvExLog.BranchDetails = mclsBranchDetails; if (File.Exists("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_exc.inv")) { System.IO.File.Copy("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_exc.inv", "invfiles/backups/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_exc.inv" + "_" + DateTime.Now.ToString("yyyyddMMhhmmss")); System.IO.File.Delete("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_exc.inv"); } InvLoadedLog clsInvLoadedLog = new InvLoadedLog(); clsInvLoadedLog.BranchDetails = mclsBranchDetails; if (File.Exists("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_saved.inv")) { System.IO.File.Copy("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_saved.inv", "invfiles/backups/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_saved.inv" + "_" + DateTime.Now.ToString("yyyyddMMhhmmss")); System.IO.File.Delete("invfiles/" + mclsBranchDetails.BranchCode + DateTime.Now.ToString("yyyyMMdd") + "_saved.inv"); } decimal iCtr = 1, iRows = Decimal.Parse(mdtItems.Rows.Count.ToString()); foreach (System.Data.DataRow dr in mdtItems.Rows) { string strBarCode = dr["BarCode"].ToString(); decimal decQuantity = decimal.Parse(dr["Quantity"].ToString()); string strUnit = dr["Unit"].ToString(); string strDescription = dr["Description"].ToString(); mstStatus = "[" + iCtr.ToString() + "/" + iRows + "]Saving " + strBarCode + strDescription; bgwSavetoDB.ReportProgress(int.Parse(Math.Ceiling(iCtr / iRows * 100).ToString())); iCtr++; back: clsMasterConnection = new AceSoft.RetailPlus.Client.MasterDB(); try { clsMasterConnection.GetConnection(); clsProducts = new Data.Products(clsMasterConnection.Connection, clsMasterConnection.Transaction); clsInventory = new Data.Inventory(clsMasterConnection.Connection, clsMasterConnection.Transaction); clsProductDetails = clsProducts.Details(mclsBranchDetails.BranchID, strBarCode); if (clsProductDetails.ProductID == 0) { clsInvExLog.AddItem(strBarCode, decQuantity, strUnit, strDescription); } else { clsInvLoadedLog.AddItem(strBarCode, decQuantity, strUnit, strDescription); /******************************************* * Add to Inventory * ****************************************/ //clsProduct.AddQuantity(lngProductID, decQuantity); //if (lngVariationMatrixID != 0) { clsProductVariationsMatrix.AddQuantity(lngVariationMatrixID, decQuantity); } // July 26, 2011: change the above codes to the following clsProducts.AddQuantity(mclsBranchDetails.BranchID, clsProductDetails.ProductID, 0, decQuantity, Data.Products.getPRODUCT_INVENTORY_MOVEMENT_VALUE(Data.PRODUCT_INVENTORY_MOVEMENT.ADD_INVENTORY_BY_BRANCH) + " /" + clsProductDetails.BaseUnitCode, DateTime.Now, strReferenceNo, "System"); //-- STEP 1: Insert to tblInventory for reporting purposes /******************************************* * Add to Inventory Analysis * ****************************************/ clsInventoryDetails = new Data.InventoryDetails(); clsInventoryDetails.BranchID = mclsBranchDetails.BranchID; clsInventoryDetails.PostingDateFrom = clsERPConfigDetails.PostingDateFrom; clsInventoryDetails.PostingDateTo = clsERPConfigDetails.PostingDateTo; clsInventoryDetails.PostingDate = dtePostingDate; clsInventoryDetails.ReferenceNo = strReferenceNo; clsInventoryDetails.ContactID = clsProductDetails.SupplierID; clsInventoryDetails.ContactCode = clsProductDetails.SupplierCode; clsInventoryDetails.ProductID = clsProductDetails.ProductID; clsInventoryDetails.ProductCode = clsProductDetails.ProductCode; clsInventoryDetails.VariationMatrixID = 0; clsInventoryDetails.MatrixDescription = ""; clsInventoryDetails.ClosingQuantity = clsProductDetails.Quantity; clsInventoryDetails.ClosingActualQuantity = decQuantity + clsProductDetails.Quantity; clsInventoryDetails.ClosingCost = (decQuantity + clsProductDetails.Quantity) * clsProductDetails.PurchasePrice; clsInventoryDetails.ClosingVAT = (decQuantity + clsProductDetails.Quantity) * clsProductDetails.PurchasePrice * decimal.Parse("0.12"); // Purchase Cost with VAT clsInventoryDetails.PurchasePrice = clsProductDetails.PurchasePrice; clsInventory.Insert(clsInventoryDetails); } clsMasterConnection.CommitAndDispose(); } catch (Exception ex) { if (ex.Message.Contains("Deadlock found when trying to get lock; try restarting transaction")) { try { clsMasterConnection.ThrowException(ex); } catch { } clsDatabase = new Data.Database(); clsDatabase.FlushHosts(); clsDatabase.CommitAndDispose(); goto back; } else if (ex.InnerException.Message.Contains("Deadlock found when trying to get lock; try restarting transaction")) { try { clsMasterConnection.ThrowException(ex); } catch { } clsDatabase = new Data.Database(); clsDatabase.FlushHosts(); clsDatabase.CommitAndDispose(); goto back; } } } bgwSavetoDB.ReportProgress(100); }