private void EasyAddSaveRecord() { ProductVariationDetails clsDetails = new ProductVariationDetails(); clsDetails.ProductID = Convert.ToInt64(lblProductID.Text); clsDetails.VariationID = Convert.ToInt32(cboVariationType.SelectedItem.Value); clsDetails.VariationType = cboVariationType.SelectedItem.Text; ProductVariations clsProductVariations = new ProductVariations(); int id = clsProductVariations.Insert(clsDetails); clsProductVariations.CommitAndDispose(); }
private void SaveVariation(long ProductID, int VariationID, string VariationType) { ProductVariationDetails clsDetails = new ProductVariationDetails(); clsDetails.ProductID = ProductID; clsDetails.VariationID = VariationID; clsDetails.VariationType = VariationType; ProductVariations clsProdVariation = new ProductVariations(); int id = clsProdVariation.Insert(clsDetails); clsProdVariation.CommitAndDispose(); }
private void Import() { if (txtPath.HasFile) { string fn = System.IO.Path.GetFileName(txtPath.PostedFile.FileName); if (fn.Contains("_" + Constants.PURCHASE_ORDER_CODE) == false) { string stScript = "<Script>"; stScript += "window.alert('Please select a VALID Transfer In file to upload.')"; stScript += "</Script>"; Response.Write(stScript); return; } string SaveLocation = "/RetailPlus/temp/uploaded_" + fn; txtPath.PostedFile.SaveAs(SaveLocation); XmlTextReader xmlReader = new XmlTextReader(SaveLocation); xmlReader.WhitespaceHandling = WhitespaceHandling.None; TransferOut clsTransferOut = new TransferOut(); clsTransferOut.GetConnection(); TransferOutDetails clsTransferOutDetails = new TransferOutDetails(); TransferOutItem clsTransferOutItem = new TransferOutItem(clsTransferOut.Connection, clsTransferOut.Transaction); TransferOutItemDetails clsTransferOutItemDetails; Contacts clsContact = new Contacts(clsTransferOut.Connection, clsTransferOut.Transaction); ContactDetails clsContactDetails; ContactGroups clsContactGroup = new ContactGroups(clsTransferOut.Connection, clsTransferOut.Transaction); ContactGroupDetails clsContactGroupDetails; Data.Unit clsUnit = new Data.Unit(clsTransferOut.Connection, clsTransferOut.Transaction); UnitDetails clsUnitDetails; ProductGroup clsProductGroup = new Data.ProductGroup(clsTransferOut.Connection, clsTransferOut.Transaction); ProductGroupDetails clsProductGroupDetails; ProductSubGroup clsProductSubGroup = new Data.ProductSubGroup(clsTransferOut.Connection, clsTransferOut.Transaction); ProductSubGroupDetails clsProductSubGroupDetails; Products clsProduct = new Products(clsTransferOut.Connection, clsTransferOut.Transaction); ProductDetails clsProductDetails; ProductVariations clsProductVariation = new ProductVariations(clsTransferOut.Connection, clsTransferOut.Transaction); ProductVariationDetails clsProductVariationDetails; Branch clsBranch = new Branch(clsTransferOut.Connection, clsTransferOut.Transaction); BranchDetails clsBranchDetails; long lngProductID = 0; long lngProductCtr = 0; while (xmlReader.Read()) { switch (xmlReader.NodeType) { case XmlNodeType.Element: if (xmlReader.Name == "TransferOutDetails") { clsTransferOutDetails.TransferOutNo = lnkTransferOutNo.Text; clsTransferOutDetails.TransferOutDate = DateTime.Parse(lblTransferOutDate.Text); clsTransferOutDetails.SupplierCode = xmlReader.GetAttribute("SupplierCode").ToString(); clsTransferOutDetails.SupplierContact = xmlReader.GetAttribute("SupplierContact").ToString(); clsTransferOutDetails.SupplierAddress = xmlReader.GetAttribute("SupplierAddress").ToString(); clsTransferOutDetails.SupplierTelephoneNo = xmlReader.GetAttribute("SupplierTelephoneNo").ToString(); clsTransferOutDetails.SupplierModeOfTerms = int.Parse(xmlReader.GetAttribute("SupplierModeOfTerms").ToString()); clsTransferOutDetails.SupplierTerms = int.Parse(xmlReader.GetAttribute("SupplierTerms").ToString()); clsTransferOutDetails.SupplierID = clsContact.Details(xmlReader.GetAttribute("SupplierCode").ToString()).ContactID; if (clsTransferOutDetails.SupplierID == 0) { clsContactDetails = new ContactDetails(); clsContactDetails.ContactCode = clsTransferOutDetails.SupplierCode; clsContactDetails.ContactName = xmlReader.GetAttribute("SupplierName").ToString(); clsContactDetails.BusinessName = clsTransferOutDetails.SupplierContact; clsContactDetails.Address = clsTransferOutDetails.SupplierAddress; clsContactDetails.TelephoneNo = clsTransferOutDetails.SupplierTelephoneNo; clsContactDetails.ModeOfTerms = (ModeOfTerms)Enum.Parse(typeof(ModeOfTerms), clsTransferOutDetails.SupplierModeOfTerms.ToString()); clsContactDetails.Terms = clsTransferOutDetails.SupplierTerms; clsContactDetails.Remarks = "Added in from Imported TransferOut #"; clsContactDetails.ContactGroupID = int.Parse(Contacts.DEFAULT_SUPPLIER_ID.ToString("d")); clsContactDetails.DateCreated = DateTime.Now; clsTransferOutDetails.SupplierID = clsContact.Insert(clsContactDetails); } clsTransferOutDetails.RequiredDeliveryDate = DateTime.Parse(xmlReader.GetAttribute("RequiredDeliveryDate").ToString()); clsTransferOutDetails.BranchID = clsBranch.Details(xmlReader.GetAttribute("BranchCode")).BranchID; if (clsTransferOutDetails.BranchID == 0) { clsBranchDetails = new BranchDetails(); clsBranchDetails.BranchCode = xmlReader.GetAttribute("BranchCode"); clsBranchDetails.BranchName = xmlReader.GetAttribute("BranchName"); clsBranchDetails.Address = xmlReader.GetAttribute("BranchAddress"); clsBranchDetails.DBIP = xmlReader.GetAttribute("BranchDBIP"); clsBranchDetails.DBPort = xmlReader.GetAttribute("BranchDBPort"); clsBranchDetails.Remarks = xmlReader.GetAttribute("BranchRemarks"); clsTransferOutDetails.BranchID = clsBranch.Insert(clsBranchDetails); } clsTransferOutDetails.TransferrerID = long.Parse(xmlReader.GetAttribute("TransferrerID")); clsTransferOutDetails.TransferrerName = xmlReader.GetAttribute("TransferrerName"); clsTransferOutDetails.SubTotal = decimal.Parse(xmlReader.GetAttribute("SubTotal")); clsTransferOutDetails.Discount = decimal.Parse(xmlReader.GetAttribute("Discount")); clsTransferOutDetails.DiscountApplied = decimal.Parse(xmlReader.GetAttribute("DiscountApplied")); clsTransferOutDetails.DiscountType = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), xmlReader.GetAttribute("DiscountType")); clsTransferOutDetails.VAT = decimal.Parse(xmlReader.GetAttribute("VAT")); clsTransferOutDetails.VatableAmount = decimal.Parse(xmlReader.GetAttribute("VatableAmount")); clsTransferOutDetails.EVAT = decimal.Parse(xmlReader.GetAttribute("EVAT")); clsTransferOutDetails.EVatableAmount = decimal.Parse(xmlReader.GetAttribute("EVatableAmount")); clsTransferOutDetails.LocalTax = decimal.Parse(xmlReader.GetAttribute("LocalTax")); clsTransferOutDetails.Freight = decimal.Parse(xmlReader.GetAttribute("Freight")); clsTransferOutDetails.Deposit = decimal.Parse(xmlReader.GetAttribute("Deposit")); clsTransferOutDetails.UnpaidAmount = decimal.Parse(xmlReader.GetAttribute("UnpaidAmount")); clsTransferOutDetails.PaidAmount = decimal.Parse(xmlReader.GetAttribute("PaidAmount")); clsTransferOutDetails.TotalItemDiscount = decimal.Parse(xmlReader.GetAttribute("TotalItemDiscount")); clsTransferOutDetails.Status = (TransferOutStatus)Enum.Parse(typeof(TransferOutStatus), xmlReader.GetAttribute("Status")); clsTransferOutDetails.Remarks = xmlReader.GetAttribute("Remarks"); clsTransferOutDetails.SupplierDRNo = xmlReader.GetAttribute("SupplierDRNo"); clsTransferOutDetails.DeliveryDate = DateTime.Parse(xmlReader.GetAttribute("DeliveryDate")); clsTransferOutDetails.CancelledDate = DateTime.Parse(xmlReader.GetAttribute("CancelledDate")); clsTransferOutDetails.Remarks = xmlReader.GetAttribute("Remarks"); clsTransferOutDetails.CancelledRemarks = xmlReader.GetAttribute("CancelledRemarks"); clsTransferOutDetails.CancelledByID = long.Parse(xmlReader.GetAttribute("CancelledByID")); clsTransferOut.Update(clsTransferOutDetails); } else if (xmlReader.Name == "TransferOutItem") { clsTransferOutItemDetails = new TransferOutItemDetails(); clsTransferOutItemDetails.TransferOutID = long.Parse(lblTransferOutID.Text); clsTransferOutItemDetails.ProductCode = xmlReader.GetAttribute("ProductCode"); clsTransferOutItemDetails.BarCode = xmlReader.GetAttribute("BarCode"); clsTransferOutItemDetails.Description = xmlReader.GetAttribute("ProductDesc"); clsTransferOutItemDetails.ProductSubGroup = xmlReader.GetAttribute("ItemProductSubGroup"); clsTransferOutItemDetails.ProductGroup = xmlReader.GetAttribute("ItemProductGroup"); clsTransferOutItemDetails.ProductUnitID = Convert.ToInt32(xmlReader.GetAttribute("ItemProductUnitID")); clsTransferOutItemDetails.ProductUnitCode = xmlReader.GetAttribute("ItemProductUnitCode"); clsTransferOutItemDetails.Quantity = Convert.ToDecimal(xmlReader.GetAttribute("ItemQuantity")); clsTransferOutItemDetails.UnitCost = Convert.ToDecimal(xmlReader.GetAttribute("ItemUnitCost")); clsTransferOutItemDetails.Discount = Convert.ToDecimal(xmlReader.GetAttribute("ItemDiscount")); clsTransferOutItemDetails.DiscountApplied = Convert.ToDecimal(xmlReader.GetAttribute("ItemDiscountApplied")); clsTransferOutItemDetails.DiscountType = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), xmlReader.GetAttribute("ItemDiscountType")); clsTransferOutItemDetails.Amount = Convert.ToDecimal(xmlReader.GetAttribute("ItemAmount")); clsTransferOutItemDetails.IsVatable = Convert.ToBoolean(Convert.ToInt16(xmlReader.GetAttribute("ItemIsVatable"))); clsTransferOutItemDetails.VatableAmount = Convert.ToDecimal(xmlReader.GetAttribute("ItemVatableAmount")); clsTransferOutItemDetails.EVatableAmount = Convert.ToDecimal(xmlReader.GetAttribute("ItemEVatableAmount")); clsTransferOutItemDetails.LocalTax = Convert.ToDecimal(xmlReader.GetAttribute("ItemLocalTax")); clsTransferOutItemDetails.VAT = Convert.ToDecimal(xmlReader.GetAttribute("ItemVAT")); clsTransferOutItemDetails.EVAT = Convert.ToDecimal(xmlReader.GetAttribute("ItemEVAT")); clsTransferOutItemDetails.LocalTax = Convert.ToDecimal(xmlReader.GetAttribute("ItemLocalTax")); clsTransferOutItemDetails.isVATInclusive = Convert.ToBoolean(Convert.ToInt16(xmlReader.GetAttribute("ItemisVATInclusive"))); clsTransferOutItemDetails.IsVatable = Convert.ToBoolean(Convert.ToInt16(xmlReader.GetAttribute("ItemIsVatable"))); clsTransferOutItemDetails.TransferOutItemStatus = (TransferOutItemStatus)Enum.Parse(typeof(TransferOutItemStatus), xmlReader.GetAttribute("ItemTransferOutItemStatus")); clsTransferOutItemDetails.VariationMatrixID = Convert.ToInt64(xmlReader.GetAttribute("ItemVariationMatrixID")); clsTransferOutItemDetails.MatrixDescription = xmlReader.GetAttribute("ItemBaseVariationDescription"); clsTransferOutItemDetails.ProductGroup = xmlReader.GetAttribute("ProductGroup"); clsTransferOutItemDetails.ProductSubGroup = xmlReader.GetAttribute("ProductSubGroup"); clsTransferOutItemDetails.Remarks = xmlReader.GetAttribute("ItemRemarks"); clsTransferOutItemDetails.SellingPrice = Convert.ToDecimal(xmlReader.GetAttribute("ItemSellingPrice")); clsTransferOutItemDetails.SellingVAT = Convert.ToDecimal(xmlReader.GetAttribute("ItemSellingVAT")); clsTransferOutItemDetails.SellingEVAT = Convert.ToDecimal(xmlReader.GetAttribute("ItemSellingEVAT")); clsTransferOutItemDetails.SellingLocalTax = Convert.ToDecimal(xmlReader.GetAttribute("ItemSellingLocalTax")); clsTransferOutItemDetails.OldSellingPrice = Convert.ToDecimal(xmlReader.GetAttribute("ItemOldSellingPrice")); clsTransferOutItemDetails.ProductID = clsProduct.Details(clsTransferOutItemDetails.BarCode).ProductID; lngProductID = clsTransferOutItemDetails.ProductID; if (clsTransferOutItemDetails.ProductID == 0) { clsTransferOutItemDetails.ProductID = clsProduct.Details(clsTransferOutItemDetails.ProductCode).ProductID; if (clsTransferOutItemDetails.ProductID == 0) { //insert new product clsProductDetails = new ProductDetails(); clsProductDetails.BarCode = clsTransferOutItemDetails.BarCode; clsProductDetails.ProductCode = clsTransferOutItemDetails.ProductCode; clsProductDetails.ProductDesc = clsTransferOutItemDetails.Description; clsProductDetails.ProductGroupCode = xmlReader.GetAttribute("ProductGroupCode"); clsProductDetails.ProductGroupName = xmlReader.GetAttribute("ProductGroupName"); clsProductDetails.ProductSubGroupCode = xmlReader.GetAttribute("ProductSubGroupCode"); clsProductDetails.ProductSubGroupName = xmlReader.GetAttribute("ProductSubGroupName"); clsProductDetails.BaseUnitCode = xmlReader.GetAttribute("BaseUnitCode"); clsProductDetails.BaseUnitName = xmlReader.GetAttribute("BaseUnitName"); clsProductDetails.DateCreated = DateTime.Now; clsProductDetails.Price = Convert.ToDecimal(xmlReader.GetAttribute("Price")); clsProductDetails.PurchasePrice = Convert.ToDecimal(xmlReader.GetAttribute("PurchasePrice")); clsProductDetails.IncludeInSubtotalDiscount = Convert.ToBoolean(xmlReader.GetAttribute("IncludeInSubtotalDiscount")); clsProductDetails.VAT = Convert.ToDecimal(xmlReader.GetAttribute("VAT")); clsProductDetails.EVAT = Convert.ToDecimal(xmlReader.GetAttribute("EVAT")); clsProductDetails.LocalTax = Convert.ToDecimal(xmlReader.GetAttribute("LocalTax")); clsProductDetails.Quantity = 0; clsProductDetails.MinThreshold = Convert.ToDecimal(xmlReader.GetAttribute("MinThreshold")); clsProductDetails.MaxThreshold = Convert.ToDecimal(xmlReader.GetAttribute("MaxThreshold")); clsProductDetails.ChartOfAccountIDPurchase = int.Parse(xmlReader.GetAttribute("ChartOfAccountIDPurchase")); clsProductDetails.ChartOfAccountIDSold = int.Parse(xmlReader.GetAttribute("ChartOfAccountIDSold")); clsProductDetails.ChartOfAccountIDInventory = int.Parse(xmlReader.GetAttribute("ChartOfAccountIDInventory")); clsProductDetails.ChartOfAccountIDTaxPurchase = int.Parse(xmlReader.GetAttribute("ChartOfAccountIDTaxPurchase")); clsProductDetails.ChartOfAccountIDTaxSold = int.Parse(xmlReader.GetAttribute("ChartOfAccountIDTaxSold")); clsProductDetails.IsItemSold = Convert.ToBoolean(xmlReader.GetAttribute("IsItemSold")); clsProductDetails.WillPrintProductComposition = Convert.ToBoolean(xmlReader.GetAttribute("WillPrintProductComposition")); clsProductDetails.UpdatedBy = long.Parse(xmlReader.GetAttribute("UpdatedBy")); clsProductDetails.UpdatedOn = Convert.ToDateTime(xmlReader.GetAttribute("UpdatedOn")); clsProductDetails.PercentageCommision = decimal.Parse(xmlReader.GetAttribute("PercentageCommision")); clsProductDetails.QuantityIN = clsProductDetails.Quantity; clsProductDetails.QuantityOUT = 0; clsProductDetails.SupplierCode = clsTransferOutDetails.SupplierCode; clsProductDetails.SupplierID = clsContact.Details(clsProductDetails.SupplierCode).ContactID; if (clsProductDetails.SupplierID == 0) { clsContactDetails = new ContactDetails(); clsContactDetails.ContactGroupID = clsContactGroup.Details(int.Parse(ContactGroupCategory.SUPPLIER.ToString("d"))).ContactGroupID; if (clsContactDetails.ContactGroupID == 0) { clsContactGroupDetails = new ContactGroupDetails(); clsContactGroupDetails.ContactGroupCode = xmlReader.GetAttribute("SUP"); clsContactGroupDetails.ContactGroupName = xmlReader.GetAttribute("Default Supplier Group"); clsContactGroupDetails.ContactGroupCategory = ContactGroupCategory.SUPPLIER; clsContactDetails.ContactGroupID = clsContactGroup.Insert(clsContactGroupDetails); } clsContactDetails.ContactCode = clsTransferOutDetails.SupplierCode; clsContactDetails.ContactName = clsTransferOutDetails.SupplierContact; clsContactDetails.ModeOfTerms = (ModeOfTerms)Enum.Parse(typeof(ModeOfTerms), clsTransferOutDetails.SupplierModeOfTerms.ToString()); clsContactDetails.Terms = clsTransferOutDetails.SupplierTerms; clsContactDetails.Address = clsTransferOutDetails.SupplierAddress; clsContactDetails.BusinessName = clsTransferOutDetails.SupplierContact; clsContactDetails.TelephoneNo = clsTransferOutDetails.SupplierTelephoneNo; clsContactDetails.Remarks = "Added in XML import"; clsContactDetails.Debit = 0; clsContactDetails.Credit = 0; clsContactDetails.IsCreditAllowed = false; clsContactDetails.CreditLimit = 0; clsProductDetails.SupplierID = clsContact.Insert(clsContactDetails); } clsProductDetails.BaseUnitID = clsUnit.Details(clsProductDetails.BaseUnitCode).UnitID; if (clsProductDetails.BaseUnitID == 0) { clsUnitDetails = new UnitDetails(); clsUnitDetails.UnitCode = clsProductDetails.BaseUnitCode; clsUnitDetails.UnitName = clsProductDetails.BaseUnitName; clsProductDetails.BaseUnitID = clsUnit.Insert(clsUnitDetails); } clsProductDetails.ProductGroupID = clsProductGroup.Details(clsProductDetails.ProductGroupCode).ProductGroupID; if (clsProductDetails.ProductGroupID == 0) { clsProductGroupDetails = new ProductGroupDetails(); clsProductGroupDetails.ProductGroupCode = clsProductDetails.ProductGroupCode; clsProductGroupDetails.ProductGroupName = clsProductDetails.ProductGroupName; clsProductGroupDetails.UnitDetails = new UnitDetails { UnitID = clsProductDetails.BaseUnitID }; clsProductGroupDetails.Price = clsProductDetails.Price; clsProductGroupDetails.PurchasePrice = clsProductDetails.PurchasePrice; clsProductGroupDetails.IncludeInSubtotalDiscount = clsProductDetails.IncludeInSubtotalDiscount; clsProductGroupDetails.VAT = clsProductDetails.VAT; clsProductGroupDetails.EVAT = clsProductDetails.EVAT; clsProductGroupDetails.LocalTax = clsProductDetails.LocalTax; clsProductDetails.ProductGroupID = clsProductGroup.Insert(clsProductGroupDetails); } clsProductDetails.ProductSubGroupID = clsProductSubGroup.Details(clsProductDetails.ProductSubGroupCode).ProductSubGroupID; if (clsProductDetails.ProductSubGroupID == 0) { clsProductSubGroupDetails = new ProductSubGroupDetails(); clsProductSubGroupDetails.ProductGroupID = clsProductDetails.ProductGroupID; clsProductSubGroupDetails.ProductSubGroupCode = clsProductDetails.ProductSubGroupCode; clsProductSubGroupDetails.ProductSubGroupName = clsProductDetails.ProductSubGroupName; clsProductSubGroupDetails.BaseUnitID = clsProductDetails.BaseUnitID; clsProductSubGroupDetails.Price = clsProductDetails.Price; clsProductSubGroupDetails.PurchasePrice = clsProductDetails.PurchasePrice; clsProductSubGroupDetails.IncludeInSubtotalDiscount = clsProductDetails.IncludeInSubtotalDiscount; clsProductSubGroupDetails.VAT = clsProductDetails.VAT; clsProductSubGroupDetails.EVAT = clsProductDetails.EVAT; clsProductSubGroupDetails.LocalTax = clsProductDetails.LocalTax; clsProductDetails.ProductSubGroupID = clsProductSubGroup.Insert(clsProductSubGroupDetails); } clsTransferOutItemDetails.ProductID = clsProduct.Insert(clsProductDetails); } else { //product code already exist but not the same barcode clsProduct.UpdateBarcode(clsTransferOutItemDetails.ProductID, clsTransferOutItemDetails.BarCode); } lngProductID = clsTransferOutItemDetails.ProductID; } clsTransferOutItem.Insert(clsTransferOutItemDetails); clsTransferOutDetails = new TransferOutDetails(); clsTransferOutDetails.TransferOutID = clsTransferOutItemDetails.TransferOutID; clsTransferOutDetails.DiscountApplied = Convert.ToDecimal(txtTransferOutDiscountApplied.Text); clsTransferOutDetails.DiscountType = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), cboTransferOutDiscountType.SelectedItem.Value); clsTransferOutDetails.Discount2Applied = Convert.ToDecimal(txtTransferOutDiscount2Applied.Text); clsTransferOutDetails.Discount2Type = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), cboTransferOutDiscount2Type.SelectedItem.Value); clsTransferOutDetails.Discount3Applied = Convert.ToDecimal(txtTransferOutDiscount2Applied.Text); clsTransferOutDetails.Discount3Type = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), cboTransferOutDiscount3Type.SelectedItem.Value); clsTransferOut = new TransferOut(clsTransferOutItem.Connection, clsTransferOutItem.Transaction); clsTransferOut.UpdateDiscount(clsTransferOutItemDetails.TransferOutID, clsTransferOutDetails.DiscountApplied, clsTransferOutDetails.DiscountType, clsTransferOutDetails.Discount2Applied, clsTransferOutDetails.Discount2Type, clsTransferOutDetails.Discount3Applied, clsTransferOutDetails.Discount3Type); clsTransferOutDetails = clsTransferOut.Details(clsTransferOutItemDetails.TransferOutID); UpdateFooter(clsTransferOutDetails); lngProductCtr++; } else if (xmlReader.Name == "Variation") { if (lngProductID != 0) { clsProductVariationDetails = new ProductVariationDetails(); clsProductVariationDetails.VariationID = clsProductVariation.Details(lngProductID, xmlReader.GetAttribute("VariationCode")).VariationID; if (clsProductVariationDetails.VariationID == 0) { clsProductVariationDetails.ProductID = lngProductID; clsProductVariationDetails.VariationCode = xmlReader.GetAttribute("VariationCode"); clsProductVariationDetails.VariationType = xmlReader.GetAttribute("VariationType"); clsProductVariation.Insert(clsProductVariationDetails); } } } else { //lblError.Text += "<b>" + xmlReader.Name + ":</b>" + xmlReader.Value + "<br />"; } break; case XmlNodeType.Text: //lblError.Text += "<b>" + xmlReader.LocalName + ":</b>" + xmlReader.Value + "<br />"; break; } } xmlReader.Close(); clsTransferOut.CommitAndDispose(); LoadRecord(); LoadItems(); } else { string stScript = "<Script>"; stScript += "window.alert('Please select Transfer In file to upload.')"; stScript += "</Script>"; Response.Write(stScript); } }
private void Upload() { if( ( txtPath.PostedFile != null ) && ( txtPath.PostedFile.ContentLength > 0 ) ) { string fn = System.IO.Path.GetFileName(txtPath.PostedFile.FileName); string SaveLocation = "/RetailPlus/temp/uploaded_" + fn; txtPath.PostedFile.SaveAs(SaveLocation); XmlTextReader reader = new XmlTextReader(SaveLocation); reader.WhitespaceHandling = WhitespaceHandling.None; Stock clsStock = new Stock(); clsStock.GetConnection(); string strStockTransactionNo = null; long StockID = 0; long ContactID = 0; int UnitID = 0; long ProductGroupID = 0; long ProductSubGroupID = 0; long ProductID = 0; long ProductBaseMatrixID = 0; VariationDetails clsVariationDetails; int VariationID = 0; StockItemDetails clsStockItemDetails = new StockItemDetails(); while (reader.Read()) { switch (reader.NodeType) { case XmlNodeType.Element: if (reader.Name == "Stock") { strStockTransactionNo = reader.GetAttribute("TransactionNo"); StockID = clsStock.Details(reader.GetAttribute("TransactionNo")).StockID; if (StockID > 0) { clsStock.CommitAndDispose(); Label1.Text = "<b>This file has already been added to inventory.<br />"; Label1.Text += "Please refer to transaction No: " + strStockTransactionNo + ".</b>"; reader.Close(); return; } Contacts clsContact = new Contacts(clsStock.Connection, clsStock.Transaction); ContactID = clsContact.Details(reader.GetAttribute("ContactCode")).ContactID; if (ContactID == 0) { ContactDetails clsContactDetails = new ContactDetails(); clsContactDetails.ContactCode = reader.GetAttribute("ContactCode"); clsContactDetails.ContactName = reader.GetAttribute("ContactName"); clsContactDetails.ContactGroupID = Convert.ToInt32(reader.GetAttribute("ContactGroupID")); clsContactDetails.ModeOfTerms = (ModeOfTerms)Enum.Parse(typeof(ModeOfTerms), reader.GetAttribute("ModeOfTerms")); clsContactDetails.Terms = Convert.ToInt32(reader.GetAttribute("Terms")); clsContactDetails.Address = reader.GetAttribute("Address"); clsContactDetails.BusinessName = reader.GetAttribute("BusinessName"); clsContactDetails.TelephoneNo = reader.GetAttribute("TelephoneNo"); clsContactDetails.Remarks = reader.GetAttribute("Remarks"); clsContactDetails.Debit = Convert.ToDecimal(reader.GetAttribute("Debit")); clsContactDetails.Credit = Convert.ToDecimal(reader.GetAttribute("Credit")); clsContactDetails.IsCreditAllowed = Convert.ToBoolean(reader.GetAttribute("IsCreditAllowed")); clsContactDetails.CreditLimit = Convert.ToDecimal(reader.GetAttribute("CreditLimit")); ContactID = clsContact.Insert(clsContactDetails); } StockDetails clsStockDetails = new StockDetails(); clsStockDetails.TransactionNo = reader.GetAttribute("TransactionNo"); clsStockDetails.StockTypeID = Convert.ToInt16(Constants.STOCK_TYPE_TRANSFER_FROM_BRANCH_ID); clsStockDetails.StockDate = DateTime.Now; clsStockDetails.SupplierID = ContactID; clsStockDetails.Remarks = reader.GetAttribute("StockRemarks") + Environment.NewLine + "Original Stock Date: " + reader.GetAttribute("StockDate"); StockItemDetails[] itemDetails = new StockItemDetails[0]; clsStockDetails.StockItems = itemDetails; StockID = clsStock.Insert(clsStockDetails); } else if (reader.Name == "Item") { Data.Unit clsUnit = new Data.Unit(clsStock.Connection, clsStock.Transaction); UnitID = clsUnit.Details(reader.GetAttribute("ProductUnitCode")).UnitID; if (UnitID == 0) { UnitDetails clsUnitDetails = new UnitDetails(); clsUnitDetails.UnitCode = reader.GetAttribute("ProductUnitCode"); clsUnitDetails.UnitName = reader.GetAttribute("ProductUnitName"); UnitID = clsUnit.Insert(clsUnitDetails); } ProductGroup clsProductGroup = new ProductGroup(clsStock.Connection, clsStock.Transaction); ProductGroupID = clsProductGroup.Details(reader.GetAttribute("ProductGroupCode")).ProductGroupID; if (ProductGroupID == 0) { Label1.Text += "inserting product group...."; ProductGroupDetails clsProductGroupDetails = new ProductGroupDetails(); clsProductGroupDetails.ProductGroupCode = reader.GetAttribute("ProductGroupCode"); clsProductGroupDetails.ProductGroupName = reader.GetAttribute("ProductGroupName"); clsProductGroupDetails.UnitDetails = new UnitDetails { UnitID = UnitID }; clsProductGroupDetails.Price = Convert.ToDecimal(reader.GetAttribute("Price")); clsProductGroupDetails.PurchasePrice = Convert.ToDecimal(reader.GetAttribute("PurchasePrice")); clsProductGroupDetails.IncludeInSubtotalDiscount = Convert.ToBoolean(reader.GetAttribute("IncludeInSubtotalDiscount")); clsProductGroupDetails.VAT = Convert.ToDecimal(reader.GetAttribute("VAT")); clsProductGroupDetails.EVAT = Convert.ToDecimal(reader.GetAttribute("EVAT")); clsProductGroupDetails.LocalTax = Convert.ToDecimal(reader.GetAttribute("LocalTax")); ProductGroupID = clsProductGroup.Insert(clsProductGroupDetails); } ProductSubGroup clsProductSubGroup = new ProductSubGroup(clsStock.Connection, clsStock.Transaction); ProductSubGroupID = clsProductSubGroup.Details(reader.GetAttribute("ProductSubGroupCode")).ProductSubGroupID; if (ProductSubGroupID == 0) { Label1.Text += "inserting product sub-group...."; ProductSubGroupDetails clsProductSubGroupDetails = new ProductSubGroupDetails(); clsProductSubGroupDetails.ProductGroupID = ProductGroupID; clsProductSubGroupDetails.ProductSubGroupCode = reader.GetAttribute("ProductSubGroupCode"); clsProductSubGroupDetails.ProductSubGroupName = reader.GetAttribute("ProductSubGroupName"); clsProductSubGroupDetails.BaseUnitID = UnitID; clsProductSubGroupDetails.Price = Convert.ToDecimal(reader.GetAttribute("Price")); clsProductSubGroupDetails.PurchasePrice = Convert.ToDecimal(reader.GetAttribute("PurchasePrice")); clsProductSubGroupDetails.IncludeInSubtotalDiscount = Convert.ToBoolean(reader.GetAttribute("IncludeInSubtotalDiscount")); clsProductSubGroupDetails.VAT = Convert.ToDecimal(reader.GetAttribute("VAT")); clsProductSubGroupDetails.EVAT = Convert.ToDecimal(reader.GetAttribute("EVAT")); clsProductSubGroupDetails.LocalTax = Convert.ToDecimal(reader.GetAttribute("LocalTax")); ProductSubGroupID = clsProductSubGroup.Insert(clsProductSubGroupDetails); } Products clsProduct = new Products(clsStock.Connection, clsStock.Transaction); ProductID = clsProduct.Details(reader.GetAttribute("BarCode")).ProductID; if (ProductID == 0) { Label1.Text += "inserting product...."; ProductDetails clsProductDetails = new ProductDetails(); clsProductDetails.ProductCode = reader.GetAttribute("ProductCode"); clsProductDetails.BarCode = reader.GetAttribute("BarCode"); clsProductDetails.ProductDesc = reader.GetAttribute("ProductDesc"); clsProductDetails.ProductGroupID = ProductGroupID; clsProductDetails.ProductSubGroupID = ProductSubGroupID; clsProductDetails.ProductDesc = reader.GetAttribute("ProductDesc"); clsProductDetails.BaseUnitID = UnitID; clsProductDetails.Price = Convert.ToDecimal(reader.GetAttribute("Price")); clsProductDetails.PurchasePrice = Convert.ToDecimal(reader.GetAttribute("PurchasePrice")); clsProductDetails.IncludeInSubtotalDiscount = Convert.ToBoolean(reader.GetAttribute("IncludeInSubtotalDiscount")); clsProductDetails.VAT = Convert.ToDecimal(reader.GetAttribute("VAT")); clsProductDetails.EVAT = Convert.ToDecimal(reader.GetAttribute("EVAT")); clsProductDetails.LocalTax = Convert.ToDecimal(reader.GetAttribute("LocalTax")); clsProductDetails.Quantity = 0; clsProductDetails.MinThreshold = Convert.ToDecimal(reader.GetAttribute("MinThreshold")); clsProductDetails.MaxThreshold = Convert.ToDecimal(reader.GetAttribute("MaxThreshold")); clsProductDetails.SupplierID = Contacts.DEFAULT_SUPPLIER_ID; ProductID = clsProduct.Insert(clsProductDetails); } //ProductVariationsMatrix clsProductVariationsMatrix = new ProductVariationsMatrix(clsStock.Connection, clsStock.Transaction); //ProductBaseMatrixID = clsProductVariationsMatrix.BaseDetails(0, 0, ProductID, reader["ItemBaseVariationDescription"].ToString()).MatrixID; //if (ProductBaseMatrixID == 0) //{ // ProductBaseMatrixDetails clsBaseDetails = new ProductBaseMatrixDetails(); // clsBaseDetails.ProductID = ProductID; // clsBaseDetails.Description = reader.GetAttribute("ItemBaseVariationDescription"); // clsBaseDetails.UnitID = UnitID; // clsBaseDetails.Price = Convert.ToDecimal(reader.GetAttribute("Price")); // clsBaseDetails.PurchasePrice = Convert.ToDecimal(reader.GetAttribute("PurchasePrice")); // clsBaseDetails.IncludeInSubtotalDiscount = Convert.ToBoolean(reader.GetAttribute("IncludeInSubtotalDiscount")); // clsBaseDetails.Quantity = 0; // clsBaseDetails.VAT = Convert.ToDecimal(reader.GetAttribute("VAT")); // clsBaseDetails.EVAT = Convert.ToDecimal(reader.GetAttribute("EVAT")); // clsBaseDetails.LocalTax = Convert.ToDecimal(reader.GetAttribute("LocalTax")); // clsBaseDetails.MinThreshold = Convert.ToDecimal(reader.GetAttribute("MinThreshold")); // clsBaseDetails.MaxThreshold = Convert.ToDecimal(reader.GetAttribute("MaxThreshold")); // ProductBaseMatrixID = clsProductVariationsMatrix.InsertBaseVariation(clsBaseDetails); // clsBaseDetails.MatrixID = ProductBaseMatrixID; //} clsStockItemDetails = new StockItemDetails(); clsStockItemDetails.StockID = StockID; clsStockItemDetails.ProductID = ProductID; clsStockItemDetails.VariationMatrixID = ProductBaseMatrixID; clsStockItemDetails.ProductUnitID = UnitID; clsStockItemDetails.StockTypeID = Convert.ToInt16(Constants.STOCK_TYPE_TRANSFER_FROM_BRANCH_ID); clsStockItemDetails.StockDate = DateTime.Now; clsStockItemDetails.Quantity = Convert.ToDecimal(reader.GetAttribute("ItemQuantity")); clsStockItemDetails.Remarks = reader.GetAttribute("ItemRemarks"); Security.AccessUserDetails clsAccessUserDetails = (Security.AccessUserDetails)Session["AccessUserDetails"]; clsStock.AddItem(Constants.BRANCH_ID_MAIN, strStockTransactionNo, clsAccessUserDetails.Name, clsStockItemDetails, StockDirections.Increment); } else if (reader.Name == "Variation" && reader.GetAttribute("VariationCode") != null) { Variation clsVariation = new Variation(clsStock.Connection, clsStock.Transaction); VariationID = clsVariation.Details(reader.GetAttribute("VariationCode")).VariationID; if (VariationID == 0 ) { clsVariationDetails = new VariationDetails(); clsVariationDetails.VariationCode = reader.GetAttribute("VariationCode"); clsVariationDetails.VariationType = reader.GetAttribute("VariationType"); VariationID = clsVariation.Insert(clsVariationDetails); } ProductVariationDetails clsProductVariationDetails = new ProductVariationDetails(); clsProductVariationDetails.ProductID = ProductID; clsProductVariationDetails.VariationID = VariationID; ProductVariations clsProductVariation = new ProductVariations(clsStock.Connection, clsStock.Transaction); if (clsProductVariation.isExist(clsProductVariationDetails) == false) { long ProductVariationID = clsProductVariation.Insert(clsProductVariationDetails); } } else if (reader.Name == "VariationMatrix" && reader.GetAttribute("VariationCode") != null) { Variation clsVariation = new Variation(clsStock.Connection, clsStock.Transaction); VariationID = clsVariation.Details(reader.GetAttribute("VariationCode")).VariationID; if (VariationID == 0) { clsVariationDetails = new VariationDetails(); clsVariationDetails.VariationCode = reader.GetAttribute("VariationCode"); clsVariationDetails.VariationType = reader.GetAttribute("VariationType"); VariationID = clsVariation.Insert(clsVariationDetails); } ProductVariationsMatrix clsProductVariationsMatrix = new ProductVariationsMatrix(clsStock.Connection, clsStock.Transaction); if (clsProductVariationsMatrix.isExist(ProductBaseMatrixID, VariationID) == false) { ProductVariationsMatrixDetails clsProductVariationsMatrixDetails = new ProductVariationsMatrixDetails(); clsProductVariationsMatrixDetails.ProductID = ProductID; clsProductVariationsMatrixDetails.MatrixID = ProductBaseMatrixID; clsProductVariationsMatrixDetails.VariationID = VariationID; clsProductVariationsMatrixDetails.Description = reader.GetAttribute("Description"); clsProductVariationsMatrix.SaveVariation(clsProductVariationsMatrixDetails); } } else { Label1.Text = "<b>Reader Name:<b>" + reader.Name + "<br />"; } break; case XmlNodeType.Text: Label1.Text = "<b>" + reader.LocalName + ":<b>" + reader.Value + "<br />"; break; } } reader.Close(); clsStock.CommitAndDispose(); Label1.Text = "<b>Transaction No.: " + strStockTransactionNo + " has been successfully transferred.<br />"; } else { Response.Write("Please select a file to upload."); } }
private void Upload1() { //string fn = System.IO.Path.GetFileName(TextBox1.Text); //string SaveLocation = "/RetailPlus/temp/uploaded_" + fn; //System.IO.File.Copy(TextBox1.Text, SaveLocation); //txtPath.PostedFile.SaveAs(SaveLocation); XmlTextReader xmlReader = new XmlTextReader(TextBox1.Text); xmlReader.WhitespaceHandling = WhitespaceHandling.None; Branch clsBranch = new Branch(); BranchDetails clsBranchDetails = clsBranch.Details(Convert.ToInt16(cboBranchUpload.SelectedItem.Value.ToString())); clsBranch.CommitAndDispose(); RemoteBranchInventory clsBranchInventory = new RemoteBranchInventory(); clsBranchInventory.GetConnectionToBranch(clsBranchDetails.DBIP); Contacts clsBranchContact = new Contacts(clsBranchInventory.Connection, clsBranchInventory.Transaction); ContactDetails clsBranchContactDetails; ContactGroups clsBranchContactGroup = new ContactGroups(clsBranchInventory.Connection, clsBranchInventory.Transaction); ContactGroupDetails clsContactGroupDetails; Data.Unit clsBranchUnit = new Data.Unit(clsBranchInventory.Connection, clsBranchInventory.Transaction); UnitDetails clsUnitDetails; ProductGroup clsBranchProductGroup = new Data.ProductGroup(clsBranchInventory.Connection, clsBranchInventory.Transaction); ProductGroupDetails clsBranchProductGroupDetails; ProductSubGroup clsBranchProductSubGroup = new Data.ProductSubGroup(clsBranchInventory.Connection, clsBranchInventory.Transaction); ProductSubGroupDetails clsBranchProductSubGroupDetails; //Data.Variation clsBranchVariation = new Variation(clsBranchInventory.Connection, clsBranchInventory.Transaction); Products clsBranchProduct = new Products(clsBranchInventory.Connection, clsBranchInventory.Transaction); ProductDetails clsBranchProductDetails; ProductVariations clsBranchProductVariation = new ProductVariations(clsBranchInventory.Connection, clsBranchInventory.Transaction); ProductVariationDetails clsBranchProductVariationDetails; long lngBranchProductID = 0; long lngProductCtr = 0; long lngProductInserted = 0; while (xmlReader.Read()) { switch (xmlReader.NodeType) { case XmlNodeType.Element: if (xmlReader.Name == "Item") { lngProductCtr++; clsBranchProductDetails = new ProductDetails(); clsBranchProductDetails.BarCode = xmlReader.GetAttribute("BarCode"); clsBranchProductDetails.ProductCode = xmlReader.GetAttribute("ProductCode"); lblError.Text += "Checking <b>" + clsBranchProductDetails.ProductCode + "</b> if exist... "; //check product by barcode clsBranchProductDetails.ProductID = clsBranchProduct.Details(Constants.BRANCH_ID_MAIN, clsBranchProductDetails.BarCode).ProductID; lngBranchProductID = clsBranchProductDetails.ProductID; if (clsBranchProductDetails.ProductID != 0) { lblError.Text += " [Y] barcode exist... next item...<br />"; break; } //check product by product code clsBranchProductDetails.ProductID = clsBranchProduct.Details(Constants.BRANCH_ID_MAIN, clsBranchProductDetails.ProductCode).ProductID; lngBranchProductID = clsBranchProductDetails.ProductID; if (clsBranchProductDetails.ProductID != 0) { clsBranchProduct.UpdateBarcode(clsBranchProductDetails.ProductID, clsBranchProductDetails.BarCode); lblError.Text += " [Y] barcode not exist, product code exist. barcode updated. next item...<br />"; break; } lblError.Text += " [N] inserting product... "; clsBranchProductDetails.BarCode = xmlReader.GetAttribute("BarCode"); clsBranchProductDetails.ProductDesc = xmlReader.GetAttribute("ProductDesc"); clsBranchProductDetails.ProductGroupCode = xmlReader.GetAttribute("ProductGroupCode"); clsBranchProductDetails.ProductGroupName = xmlReader.GetAttribute("ProductGroupName"); clsBranchProductDetails.ProductSubGroupCode = xmlReader.GetAttribute("ProductSubGroupCode"); clsBranchProductDetails.ProductSubGroupName = xmlReader.GetAttribute("ProductSubGroupName"); clsBranchProductDetails.BaseUnitCode = xmlReader.GetAttribute("BaseUnitCode"); clsBranchProductDetails.BaseUnitName = xmlReader.GetAttribute("BaseUnitName"); clsBranchProductDetails.DateCreated = DateTime.Now; clsBranchProductDetails.Price = Convert.ToDecimal(xmlReader.GetAttribute("Price")); clsBranchProductDetails.PurchasePrice = Convert.ToDecimal(xmlReader.GetAttribute("PurchasePrice")); clsBranchProductDetails.IncludeInSubtotalDiscount = Convert.ToBoolean(xmlReader.GetAttribute("IncludeInSubtotalDiscount")); clsBranchProductDetails.VAT = Convert.ToDecimal(xmlReader.GetAttribute("VAT")); clsBranchProductDetails.EVAT = Convert.ToDecimal(xmlReader.GetAttribute("EVAT")); clsBranchProductDetails.LocalTax = Convert.ToDecimal(xmlReader.GetAttribute("LocalTax")); clsBranchProductDetails.Quantity = 0; clsBranchProductDetails.MinThreshold = Convert.ToDecimal(xmlReader.GetAttribute("MinThreshold")); clsBranchProductDetails.MaxThreshold = Convert.ToDecimal(xmlReader.GetAttribute("MaxThreshold")); clsBranchProductDetails.ChartOfAccountIDPurchase = int.Parse(xmlReader.GetAttribute("ChartOfAccountIDPurchase")); clsBranchProductDetails.ChartOfAccountIDSold = int.Parse(xmlReader.GetAttribute("ChartOfAccountIDSold")); clsBranchProductDetails.ChartOfAccountIDInventory = int.Parse(xmlReader.GetAttribute("ChartOfAccountIDInventory")); clsBranchProductDetails.ChartOfAccountIDTaxPurchase = int.Parse(xmlReader.GetAttribute("ChartOfAccountIDTaxPurchase")); clsBranchProductDetails.ChartOfAccountIDTaxSold = int.Parse(xmlReader.GetAttribute("ChartOfAccountIDTaxSold")); clsBranchProductDetails.IsItemSold = Convert.ToBoolean(xmlReader.GetAttribute("IsItemSold")); clsBranchProductDetails.WillPrintProductComposition = Convert.ToBoolean(xmlReader.GetAttribute("WillPrintProductComposition")); clsBranchProductDetails.UpdatedBy = long.Parse(xmlReader.GetAttribute("UpdatedBy")); clsBranchProductDetails.UpdatedOn = Convert.ToDateTime(xmlReader.GetAttribute("UpdatedOn")); clsBranchProductDetails.PercentageCommision = decimal.Parse(xmlReader.GetAttribute("PercentageCommision")); clsBranchProductDetails.QuantityIN = decimal.Parse(xmlReader.GetAttribute("QuantityIN")); clsBranchProductDetails.QuantityOUT = decimal.Parse(xmlReader.GetAttribute("QuantityOUT")); clsBranchProductDetails.SupplierCode = xmlReader.GetAttribute("ContactCode"); clsBranchProductDetails.SupplierID = clsBranchContact.Details(clsBranchProductDetails.SupplierCode).ContactID; if (clsBranchProductDetails.SupplierID == 0) { clsBranchContactDetails = new ContactDetails(); clsBranchContactDetails.ContactGroupID = clsBranchContactGroup.Details(xmlReader.GetAttribute("ContactGroupCode")).ContactGroupID; if (clsBranchContactDetails.ContactGroupID == 0) { clsContactGroupDetails = new ContactGroupDetails(); clsContactGroupDetails.ContactGroupCode = xmlReader.GetAttribute("ContactCode"); clsContactGroupDetails.ContactGroupName = xmlReader.GetAttribute("ContactCode"); clsContactGroupDetails.ContactGroupCategory = (ContactGroupCategory)Enum.Parse(typeof(ContactGroupCategory), xmlReader.GetAttribute("ContactGroupCategory")); clsBranchContactDetails.ContactGroupID = clsBranchContactGroup.Insert(clsContactGroupDetails); } clsBranchContactDetails.ContactCode = xmlReader.GetAttribute("ContactCode"); clsBranchContactDetails.ContactName = xmlReader.GetAttribute("ContactName"); clsBranchContactDetails.ModeOfTerms = (ModeOfTerms)Enum.Parse(typeof(ModeOfTerms), xmlReader.GetAttribute("ModeOfTerms")); clsBranchContactDetails.Terms = Convert.ToInt32(xmlReader.GetAttribute("Terms")); clsBranchContactDetails.Address = xmlReader.GetAttribute("Address"); clsBranchContactDetails.BusinessName = xmlReader.GetAttribute("BusinessName"); clsBranchContactDetails.TelephoneNo = xmlReader.GetAttribute("TelephoneNo"); clsBranchContactDetails.Remarks = xmlReader.GetAttribute("Remarks"); clsBranchContactDetails.Debit = Convert.ToDecimal(xmlReader.GetAttribute("Debit")); clsBranchContactDetails.Credit = Convert.ToDecimal(xmlReader.GetAttribute("Credit")); clsBranchContactDetails.IsCreditAllowed = Convert.ToBoolean(xmlReader.GetAttribute("IsCreditAllowed")); clsBranchContactDetails.CreditLimit = Convert.ToDecimal(xmlReader.GetAttribute("CreditLimit")); clsBranchContactDetails.ContactID = clsBranchContact.Insert(clsBranchContactDetails); } clsBranchProductDetails.BaseUnitCode = xmlReader.GetAttribute("BaseUnitCode"); clsBranchProductDetails.BaseUnitID = clsBranchUnit.Details(clsBranchProductDetails.BaseUnitCode).UnitID; if (clsBranchProductDetails.BaseUnitID == 0) { clsUnitDetails = new UnitDetails(); clsUnitDetails.UnitCode = xmlReader.GetAttribute("BaseUnitCode"); clsUnitDetails.UnitName = xmlReader.GetAttribute("BaseUnitName"); clsBranchProductDetails.BaseUnitID = clsBranchUnit.Insert(clsUnitDetails); } clsBranchProductDetails.ProductGroupCode = xmlReader.GetAttribute("ProductGroupCode"); clsBranchProductDetails.ProductGroupID = clsBranchProductGroup.Details(clsBranchProductDetails.ProductGroupCode).ProductGroupID; if (clsBranchProductDetails.ProductGroupID == 0) { lblError.Text += "inserting product group...."; clsBranchProductGroupDetails = new ProductGroupDetails(); clsBranchProductGroupDetails.ProductGroupCode = xmlReader.GetAttribute("ProductGroupCode"); clsBranchProductGroupDetails.ProductGroupName = xmlReader.GetAttribute("ProductGroupName"); clsBranchProductGroupDetails.UnitDetails = new UnitDetails { UnitID = clsBranchProductDetails.BaseUnitID }; clsBranchProductGroupDetails.Price = clsBranchProductDetails.Price; clsBranchProductGroupDetails.PurchasePrice = clsBranchProductDetails.PurchasePrice; clsBranchProductGroupDetails.IncludeInSubtotalDiscount = clsBranchProductDetails.IncludeInSubtotalDiscount; clsBranchProductGroupDetails.VAT = clsBranchProductDetails.VAT; clsBranchProductGroupDetails.EVAT = clsBranchProductDetails.EVAT; clsBranchProductGroupDetails.LocalTax = clsBranchProductDetails.LocalTax; clsBranchProductDetails.ProductGroupID = clsBranchProductGroup.Insert(clsBranchProductGroupDetails); } clsBranchProductDetails.ProductSubGroupCode = xmlReader.GetAttribute("ProductSubGroupCode"); clsBranchProductDetails.ProductSubGroupID = clsBranchProductSubGroup.Details(clsBranchProductDetails.ProductSubGroupCode).ProductSubGroupID; if (clsBranchProductDetails.ProductSubGroupID == 0) { lblError.Text += "inserting product sub-group...."; clsBranchProductSubGroupDetails = new ProductSubGroupDetails(); clsBranchProductSubGroupDetails.ProductGroupID = clsBranchProductDetails.ProductGroupID; clsBranchProductSubGroupDetails.ProductSubGroupCode = xmlReader.GetAttribute("ProductSubGroupCode"); clsBranchProductSubGroupDetails.ProductSubGroupName = xmlReader.GetAttribute("ProductSubGroupName"); clsBranchProductSubGroupDetails.BaseUnitID = clsBranchProductDetails.BaseUnitID; clsBranchProductSubGroupDetails.Price = clsBranchProductDetails.Price; clsBranchProductSubGroupDetails.PurchasePrice = clsBranchProductDetails.PurchasePrice; clsBranchProductSubGroupDetails.IncludeInSubtotalDiscount = clsBranchProductDetails.IncludeInSubtotalDiscount; clsBranchProductSubGroupDetails.VAT = clsBranchProductDetails.VAT; clsBranchProductSubGroupDetails.EVAT = clsBranchProductDetails.EVAT; clsBranchProductSubGroupDetails.LocalTax = clsBranchProductDetails.LocalTax; clsBranchProductDetails.ProductSubGroupID = clsBranchProductSubGroup.Insert(clsBranchProductSubGroupDetails); } clsBranchProductDetails.ProductID = clsBranchProduct.Insert(clsBranchProductDetails); lngBranchProductID = clsBranchProductDetails.ProductID; lngProductInserted++; lblError.Text += " [done]. next item...<br />"; } else if (xmlReader.Name == "Variation") { if (lngBranchProductID != 0) { clsBranchProductVariationDetails = new ProductVariationDetails(); clsBranchProductVariationDetails.VariationID = clsBranchProductVariation.Details(lngBranchProductID, xmlReader.GetAttribute("VariationCode")).VariationID; if (clsBranchProductVariationDetails.VariationID == 0) { clsBranchProductVariationDetails.ProductID = lngBranchProductID; clsBranchProductVariationDetails.VariationCode = xmlReader.GetAttribute("VariationCode"); clsBranchProductVariationDetails.VariationType = xmlReader.GetAttribute("VariationType"); clsBranchProductVariation.Insert(clsBranchProductVariationDetails); } } } else { lblError.Text += "<b>" + xmlReader.Name + ":</b>" + xmlReader.Value + "<br />"; } break; case XmlNodeType.Text: lblError.Text += "<b>" + xmlReader.LocalName + ":</b>" + xmlReader.Value + "<br />"; break; } } xmlReader.Close(); clsBranchInventory.CommitAndDispose(); lblError.Text = "<b>" + lngProductInserted.ToString() + " out of " + lngProductCtr.ToString() + " has been successfully transferred.</b><br /><br />" + lblError.Text; }