private void LoadItems() { DataClass clsDataClass = new DataClass(); TransferOutItem clsTransferOutItem = new TransferOutItem(); lstItem.DataSource = clsTransferOutItem.ListAsDataTable(Convert.ToInt64(lblTransferOutID.Text)).DefaultView; lstItem.DataBind(); clsTransferOutItem.CommitAndDispose(); lstItemFixCssClass(); }
private void SubtractItemFromInventory(long TransferOutID) { TransferOutDetails clsTransferOutDetails = Details(TransferOutID); ERPConfig clsERPConfig = new ERPConfig(base.Connection, base.Transaction); ERPConfigDetails clsERPConfigDetails = clsERPConfig.Details(); TransferOutItem clsTransferOutItem = new TransferOutItem(base.Connection, base.Transaction); ProductUnit clsProductUnit = new ProductUnit(base.Connection, base.Transaction); Products clsProduct = new Products(base.Connection, base.Transaction); ProductVariationsMatrix clsProductVariationsMatrix = new ProductVariationsMatrix(base.Connection, base.Transaction); ProductPackage clsProductPackage = new ProductPackage(base.Connection, base.Transaction); MatrixPackage clsMatrixPackage = new MatrixPackage(base.Connection, base.Transaction); Inventory clsInventory = new Inventory(base.Connection, base.Transaction); InventoryDetails clsInventoryDetails; //MatrixPackagePriceHistoryDetails clsMatrixPackagePriceHistoryDetails; //ProductPackagePriceHistoryDetails clsProductPackagePriceHistoryDetails; System.Data.DataTable dt = clsTransferOutItem.ListAsDataTable(TransferOutID, "TransferOutItemID", SortOption.Ascending); foreach (System.Data.DataRow dr in dt.Rows) { long lngProductID = long.Parse(dr["ProductID"].ToString()); int intProductUnitID = int.Parse(dr["ProductUnitID"].ToString()); decimal decItemQuantity = decimal.Parse(dr["Quantity"].ToString()); decimal decQuantity = clsProductUnit.GetBaseUnitValue(lngProductID, intProductUnitID, decItemQuantity); long lngVariationMatrixID = long.Parse(dr["VariationMatrixID"].ToString()); string strMatrixDescription = "" + dr["MatrixDescription"].ToString(); string strProductCode = "" + dr["ProductCode"].ToString(); decimal decUnitCost = decimal.Parse(dr["UnitCost"].ToString()); decimal decItemCost = decimal.Parse(dr["Amount"].ToString()); decimal decVAT = decimal.Parse(dr["VAT"].ToString()); ///******************************************* // * Add in the Purchase Price History // * ****************************************/ //if (lngVariationMatrixID != 0) //{ // // Update MatrixPackagePriceHistory first to get the history // clsMatrixPackagePriceHistoryDetails = new MatrixPackagePriceHistoryDetails(); // clsMatrixPackagePriceHistoryDetails.UID = clsTransferOutDetails.TransferrerID; // clsMatrixPackagePriceHistoryDetails.PackageID = clsMatrixPackage.GetPackageID(lngVariationMatrixID, intProductUnitID); // clsMatrixPackagePriceHistoryDetails.ChangeDate = DateTime.Now; // clsMatrixPackagePriceHistoryDetails.PurchasePrice = (decItemQuantity * decUnitCost) / decQuantity; // clsMatrixPackagePriceHistoryDetails.Price = -1; // clsMatrixPackagePriceHistoryDetails.VAT = -1; // clsMatrixPackagePriceHistoryDetails.EVAT = -1; // clsMatrixPackagePriceHistoryDetails.LocalTax = -1; // clsMatrixPackagePriceHistoryDetails.Remarks = "Based on TransferOut #: " + clsTransferOutDetails.TransferOutNo; // MatrixPackagePriceHistory clsMatrixPackagePriceHistory = new MatrixPackagePriceHistory(base.Connection, base.Transaction); // clsMatrixPackagePriceHistory.Insert(clsMatrixPackagePriceHistoryDetails); //} //else //{ // // Update ProductPackagePriceHistory first to get the history // clsProductPackagePriceHistoryDetails = new ProductPackagePriceHistoryDetails(); // clsProductPackagePriceHistoryDetails.UID = clsTransferOutDetails.TransferrerID; // clsProductPackagePriceHistoryDetails.PackageID = clsProductPackage.GetPackageID(lngProductID, intProductUnitID); // clsProductPackagePriceHistoryDetails.ChangeDate = DateTime.Now; // clsProductPackagePriceHistoryDetails.PurchasePrice = (decItemQuantity * decUnitCost) / decQuantity; // clsProductPackagePriceHistoryDetails.Price = -1; // clsProductPackagePriceHistoryDetails.VAT = -1; // clsProductPackagePriceHistoryDetails.EVAT = -1; // clsProductPackagePriceHistoryDetails.LocalTax = -1; // clsProductPackagePriceHistoryDetails.Remarks = "Based on TransferOut #: " + clsTransferOutDetails.TransferOutNo; // ProductPackagePriceHistory clsProductPackagePriceHistory = new ProductPackagePriceHistory(base.Connection, base.Transaction); // clsProductPackagePriceHistory.Insert(clsProductPackagePriceHistoryDetails); //} /******************************************* * Add to Inventory * ****************************************/ //clsProduct.AddQuantity(lngProductID, decQuantity); //if (lngVariationMatrixID != 0) //{ // clsProductVariationsMatrix.AddQuantity(lngVariationMatrixID, decQuantity); //} // July 26, 2011: change the above codes to the following clsProduct.SubtractQuantity(clsTransferOutDetails.BranchID, lngProductID, lngVariationMatrixID, decQuantity, Products.getPRODUCT_INVENTORY_MOVEMENT_VALUE(PRODUCT_INVENTORY_MOVEMENT.DEDUCT_TRANSFER_OUT), DateTime.Now, clsTransferOutDetails.TransferOutNo, clsTransferOutDetails.TransferrerName); ///******************************************* // * Update Purchasing Information // * ****************************************/ //clsProduct.UpdatePurchasing(lngProductID, clsTransferOutDetails.SupplierID, intProductUnitID, (decItemQuantity * decUnitCost) / decQuantity); //if (lngVariationMatrixID != 0) //{ // clsProductVariationsMatrix.UpdatePurchasing(lngVariationMatrixID, clsTransferOutDetails.SupplierID, intProductUnitID, (decItemQuantity * decUnitCost) / decQuantity); //} /******************************************* * Add to Inventory Analysis * ****************************************/ clsInventoryDetails = new InventoryDetails(); clsInventoryDetails.PostingDateFrom = clsERPConfigDetails.PostingDateFrom; clsInventoryDetails.PostingDateTo = clsERPConfigDetails.PostingDateTo; clsInventoryDetails.PostingDate = clsTransferOutDetails.DeliveryDate; clsInventoryDetails.ReferenceNo = clsTransferOutDetails.TransferOutNo; clsInventoryDetails.ContactID = clsTransferOutDetails.SupplierID; clsInventoryDetails.ContactCode = clsTransferOutDetails.SupplierCode; clsInventoryDetails.ProductID = lngProductID; clsInventoryDetails.ProductCode = strProductCode; clsInventoryDetails.VariationMatrixID = lngVariationMatrixID; clsInventoryDetails.MatrixDescription = strMatrixDescription; clsInventoryDetails.TransferOutQuantity = decQuantity; clsInventoryDetails.TransferOutCost = decItemCost - decVAT; clsInventoryDetails.TransferOutVAT = decItemCost; // TransferOut Cost with VAT clsInventory.Insert(clsInventoryDetails); /******************************************* * Added April 28, 2010 4:20PM * Update Selling Information when TransferOut is posted * ****************************************/ //clsProduct.UpdateSellingIncludingAllMatrixWithSameQuantityAndUnit(lngProductID, clsTransferOutDetails.SupplierID, intProductUnitID, decimal.Parse(myReader["SellingPrice"); //if (lngVariationMatrixID != 0) //{ // clsProductVariationsMatrix.UpdateSellingWithSameQuantityAndUnit(lngVariationMatrixID, clsPODetails.SupplierID, intProductUnitID, decimal.Parse(myReader["SellingPrice"); //} /******************************************* * Added April 28, 2010 4:20PM * Update the purchase price history to check who has the lowest price. * ****************************************/ //ProductPurchasePriceHistoryDetails clsProductPurchasePriceHistoryDetails = new ProductPurchasePriceHistoryDetails(); //clsProductPurchasePriceHistoryDetails.ProductID = lngProductID; //clsProductPurchasePriceHistoryDetails.MatrixID = lngVariationMatrixID; //clsProductPurchasePriceHistoryDetails.SupplierID = clsTransferOutDetails.SupplierID; //clsProductPurchasePriceHistoryDetails.PurchasePrice = decUnitCost; //clsProductPurchasePriceHistoryDetails.PurchaseDate = clsTransferOutDetails.TransferOutDate; //clsProductPurchasePriceHistoryDetails.Remarks = clsTransferOutDetails.TransferOutNo; //ProductPurchasePriceHistory clsProductPurchasePriceHistory = new ProductPurchasePriceHistory(base.Connection, base.Transaction); //clsProductPurchasePriceHistory.AddToList(clsProductPurchasePriceHistoryDetails); } }
private void ExportToFile() { TransferOut clsTransferOut = new TransferOut(); TransferOutDetails clsTransferOutDetails = clsTransferOut.Details(long.Parse(lblTransferOutID.Text)); TransferOutItem clsTransferOutItem = new TransferOutItem(clsTransferOut.Connection, clsTransferOut.Transaction); DataTable dtaTransferOutItems = clsTransferOutItem.ListAsDataTable(clsTransferOutDetails.TransferOutID, null, SortOption.Ascending); Branch clsBranch = new Branch(clsTransferOut.Connection, clsTransferOut.Transaction); BranchDetails clsBranchDetails; Contacts clsContact = new Contacts(clsTransferOut.Connection, clsTransferOut.Transaction); ContactDetails clsContactDetails; Products clsProduct = new Products(clsTransferOut.Connection, clsTransferOut.Transaction); ProductDetails clsProductDetails; ProductVariations clsProductVariation = new ProductVariations(clsTransferOut.Connection, clsTransferOut.Transaction); DataTable dtaProductVariation; ProductVariationsMatrix clsProductVariationsMatrix = new ProductVariationsMatrix(clsTransferOut.Connection, clsTransferOut.Transaction); DataTable dtaProductVariationsMatrix; string xmlFileName = Server.MapPath(@"\RetailPlus\temp\" + lblBranchCode.Text.Replace(" ", "").Trim() + "_" + clsTransferOutDetails.TransferOutNo + "_" + clsTransferOutDetails.TransferOutDate.ToString("yyyyMMddHHmmssffff") + ".xml"); XmlTextWriter writer = new XmlTextWriter(xmlFileName, System.Text.Encoding.UTF8); writer.Formatting = Formatting.Indented; writer.WriteStartDocument(); writer.WriteComment("This file represents the TransferOut Details of TransferOut No: '" + clsTransferOutDetails.TransferOutNo + "' for " + lblBranchCode.Text + " branch."); writer.WriteComment("Save this in your local file. Goto 'File', click 'Save As', select the location in your local directory, click 'Save'."); writer.WriteStartElement("TransferOutDetails"); writer.WriteAttributeString("TransferOutID", XmlConvert.ToString(clsTransferOutDetails.TransferOutID)); writer.WriteAttributeString("TransferOutNo", clsTransferOutDetails.TransferOutNo); writer.WriteAttributeString("TransferOutDate", clsTransferOutDetails.TransferOutDate.ToString("MM/dd/yyyy HH:mm:ss")); /******Supplier information******/ clsContactDetails = clsContact.Details(clsTransferOutDetails.SupplierID); writer.WriteAttributeString("SupplierID", XmlConvert.ToString(clsContactDetails.ContactID)); writer.WriteAttributeString("SupplierCode", clsContactDetails.ContactCode); writer.WriteAttributeString("SupplierName", clsContactDetails.ContactName); writer.WriteAttributeString("SupplierContact", clsContactDetails.BusinessName); writer.WriteAttributeString("SupplierAddress", clsTransferOutDetails.SupplierAddress); writer.WriteAttributeString("SupplierTelephoneNo", clsTransferOutDetails.SupplierTelephoneNo); writer.WriteAttributeString("SupplierModeOfTerms", XmlConvert.ToString(clsTransferOutDetails.SupplierModeOfTerms)); writer.WriteAttributeString("SupplierTerms", XmlConvert.ToString(clsTransferOutDetails.SupplierTerms)); writer.WriteAttributeString("SupplierContactGroupName", clsContactDetails.ContactGroupName); /******End Of Supplier Information******/ writer.WriteAttributeString("RequiredDeliveryDate", clsTransferOutDetails.RequiredDeliveryDate.ToString("MM/dd/yyyy HH:mm:ss")); /******Branch & Transferrer Information******/ clsBranchDetails = clsBranch.Details(short.Parse(clsTransferOutDetails.BranchID.ToString())); writer.WriteAttributeString("BranchID", XmlConvert.ToString(clsTransferOutDetails.BranchID)); writer.WriteAttributeString("BranchCode", clsTransferOutDetails.BranchCode); writer.WriteAttributeString("BranchName", clsTransferOutDetails.BranchName); writer.WriteAttributeString("BranchAddress", clsTransferOutDetails.BranchAddress); writer.WriteAttributeString("BranchDBIP", clsBranchDetails.DBIP); writer.WriteAttributeString("BranchDBPort", clsBranchDetails.DBPort); writer.WriteAttributeString("BranchRemarks", clsBranchDetails.Remarks); writer.WriteAttributeString("TransferrerID", clsTransferOutDetails.TransferrerID.ToString()); writer.WriteAttributeString("TransferrerName", clsTransferOutDetails.TransferrerName); /******End Of Branch & Transferrer Information******/ /******Amount Information******/ writer.WriteAttributeString("SubTotal", XmlConvert.ToString(clsTransferOutDetails.SubTotal)); writer.WriteAttributeString("Discount", XmlConvert.ToString(clsTransferOutDetails.Discount)); writer.WriteAttributeString("DiscountApplied", XmlConvert.ToString(clsTransferOutDetails.DiscountApplied)); writer.WriteAttributeString("DiscountType", clsTransferOutDetails.DiscountType.ToString("d")); writer.WriteAttributeString("VAT", XmlConvert.ToString(clsTransferOutDetails.VAT)); writer.WriteAttributeString("VatableAmount", XmlConvert.ToString(clsTransferOutDetails.VatableAmount)); writer.WriteAttributeString("EVAT", XmlConvert.ToString(clsTransferOutDetails.EVAT)); writer.WriteAttributeString("EVatableAmount", XmlConvert.ToString(clsTransferOutDetails.EVatableAmount)); writer.WriteAttributeString("LocalTax", XmlConvert.ToString(clsTransferOutDetails.LocalTax)); writer.WriteAttributeString("Freight", XmlConvert.ToString(clsTransferOutDetails.Freight)); writer.WriteAttributeString("Deposit", XmlConvert.ToString(clsTransferOutDetails.Deposit)); writer.WriteAttributeString("UnpaidAmount", XmlConvert.ToString(clsTransferOutDetails.UnpaidAmount)); writer.WriteAttributeString("PaidAmount", XmlConvert.ToString(clsTransferOutDetails.PaidAmount)); writer.WriteAttributeString("TotalItemDiscount", XmlConvert.ToString(clsTransferOutDetails.TotalItemDiscount)); writer.WriteAttributeString("Status", clsTransferOutDetails.Status.ToString("d")); writer.WriteAttributeString("Remarks", clsTransferOutDetails.Remarks); writer.WriteAttributeString("SupplierDRNo", clsTransferOutDetails.SupplierDRNo); writer.WriteAttributeString("DeliveryDate", clsTransferOutDetails.DeliveryDate.ToString("MM/dd/yyyy HH:mm:ss")); writer.WriteAttributeString("CancelledDate", clsTransferOutDetails.CancelledDate.ToString("MM/dd/yyyy HH:mm:ss")); writer.WriteAttributeString("CancelledRemarks", clsTransferOutDetails.CancelledRemarks); writer.WriteAttributeString("CancelledByID", XmlConvert.ToString(clsTransferOutDetails.CancelledByID)); /******End Of Branch Information******/ foreach (DataRow row in dtaTransferOutItems.Rows) { clsProductDetails = new ProductDetails(); clsProductDetails = clsProduct.Details(Convert.ToInt64(row["ProductID"].ToString())); writer.WriteStartElement("TransferOutItem"); writer.WriteAttributeString("TransferOutItemID", row["TransferOutItemID"].ToString()); writer.WriteAttributeString("TransferOutID", row["TransferOutID"].ToString()); writer.WriteAttributeString("ProductID", row["ProductID"].ToString()); /*****Product Information*****/ writer.WriteAttributeString("ProductCode", clsProductDetails.ProductCode); writer.WriteAttributeString("BarCode", clsProductDetails.BarCode); writer.WriteAttributeString("ProductDesc", clsProductDetails.ProductDesc); writer.WriteAttributeString("MatrixDescription", row["MatrixDescription"].ToString()); writer.WriteAttributeString("ProductSubGroupID", clsProductDetails.ProductSubGroupID.ToString()); writer.WriteAttributeString("ProductSubGroupCode", clsProductDetails.ProductSubGroupCode); writer.WriteAttributeString("ProductSubGroupName", clsProductDetails.ProductSubGroupName); writer.WriteAttributeString("ProductGroupID", clsProductDetails.ProductGroupID.ToString()); writer.WriteAttributeString("ProductGroupCode", clsProductDetails.ProductGroupCode); writer.WriteAttributeString("ProductGroupName", clsProductDetails.ProductGroupName); writer.WriteAttributeString("BaseUnitID", clsProductDetails.BaseUnitID.ToString()); writer.WriteAttributeString("BaseUnitCode", clsProductDetails.BaseUnitCode); writer.WriteAttributeString("BaseUnitName", clsProductDetails.BaseUnitName); writer.WriteAttributeString("DateCreated", clsProductDetails.DateCreated.ToString("MM/dd/yy HH:mm:ss")); writer.WriteAttributeString("Deleted", clsProductDetails.Deleted.ToString()); writer.WriteAttributeString("Price", clsProductDetails.Price.ToString()); writer.WriteAttributeString("PurchasePrice", clsProductDetails.PurchasePrice.ToString()); writer.WriteAttributeString("IncludeInSubtotalDiscount", clsProductDetails.IncludeInSubtotalDiscount.ToString()); writer.WriteAttributeString("VAT", clsProductDetails.VAT.ToString()); writer.WriteAttributeString("EVAT", clsProductDetails.EVAT.ToString()); writer.WriteAttributeString("LocalTax", clsProductDetails.LocalTax.ToString()); writer.WriteAttributeString("Quantity", clsProductDetails.Quantity.ToString()); writer.WriteAttributeString("MinThreshold", clsProductDetails.MinThreshold.ToString()); writer.WriteAttributeString("MaxThreshold", clsProductDetails.MaxThreshold.ToString()); writer.WriteAttributeString("ChartOfAccountIDPurchase", clsProductDetails.ChartOfAccountIDPurchase.ToString()); writer.WriteAttributeString("ChartOfAccountIDSold", clsProductDetails.ChartOfAccountIDSold.ToString()); writer.WriteAttributeString("ChartOfAccountIDInventory", clsProductDetails.ChartOfAccountIDInventory.ToString()); writer.WriteAttributeString("ChartOfAccountIDTaxPurchase", clsProductDetails.ChartOfAccountIDTaxPurchase.ToString()); writer.WriteAttributeString("ChartOfAccountIDTaxSold", clsProductDetails.ChartOfAccountIDTaxSold.ToString()); writer.WriteAttributeString("IsItemSold", clsProductDetails.IsItemSold.ToString()); writer.WriteAttributeString("WillPrintProductComposition", clsProductDetails.WillPrintProductComposition.ToString()); writer.WriteAttributeString("UpdatedBy", clsProductDetails.UpdatedBy.ToString()); writer.WriteAttributeString("UpdatedOn", clsProductDetails.UpdatedOn.ToString("MM/dd/yyyy HH:mm")); writer.WriteAttributeString("PercentageCommision", clsProductDetails.PercentageCommision.ToString()); writer.WriteAttributeString("Active", clsProductDetails.Active.ToString()); /*****End Of Product Information*****/ writer.WriteAttributeString("ItemProductGroup", row["ProductGroup"].ToString()); writer.WriteAttributeString("ItemProductSubGroup", row["ProductSubGroup"].ToString()); writer.WriteAttributeString("ItemVariationMatrixID", row["VariationMatrixID"].ToString()); writer.WriteAttributeString("ItemBaseVariationDescription", row["MatrixDescription"].ToString()); writer.WriteAttributeString("ItemProductUnitID", row["ProductUnitID"].ToString()); writer.WriteAttributeString("ItemProductUnitCode", row["ProductUnitCode"].ToString()); writer.WriteAttributeString("ItemQuantity", row["Quantity"].ToString()); writer.WriteAttributeString("ItemUnitCost", row["UnitCost"].ToString()); writer.WriteAttributeString("ItemDiscount", row["Discount"].ToString()); writer.WriteAttributeString("ItemDiscountApplied", row["DiscountApplied"].ToString()); writer.WriteAttributeString("ItemDiscountType", row["DiscountType"].ToString()); writer.WriteAttributeString("ItemAmount", row["Amount"].ToString()); writer.WriteAttributeString("ItemVAT", row["VAT"].ToString()); writer.WriteAttributeString("ItemVatableAmount", row["VatableAmount"].ToString()); writer.WriteAttributeString("ItemEVAT", row["EVAT"].ToString()); writer.WriteAttributeString("ItemEVatableAmount", row["EVatableAmount"].ToString()); writer.WriteAttributeString("ItemLocalTax", row["LocalTax"].ToString()); writer.WriteAttributeString("ItemisVATInclusive", row["isVATInclusive"].ToString()); writer.WriteAttributeString("ItemTransferOutItemStatus", row["TransferOutItemStatus"].ToString()); writer.WriteAttributeString("ItemIsVatable", row["IsVatable"].ToString()); writer.WriteAttributeString("ItemSellingPrice", row["SellingPrice"].ToString()); writer.WriteAttributeString("ItemSellingVAT", row["SellingVAT"].ToString()); writer.WriteAttributeString("ItemSellingEVAT", row["SellingEVAT"].ToString()); writer.WriteAttributeString("ItemSellingLocalTax", row["SellingLocalTax"].ToString()); writer.WriteAttributeString("ItemOldSellingPrice", row["OldSellingPrice"].ToString()); writer.WriteAttributeString("ItemRemarks", row["Remarks"].ToString()); dtaProductVariation = clsProductVariation.ListAsDataTable(clsProductDetails.ProductID, null, System.Data.SqlClient.SortOrder.Ascending); foreach (DataRow rowVariation in dtaProductVariation.Rows) { writer.WriteStartElement("Variation", null); writer.WriteAttributeString("VariationCode", rowVariation["VariationCode"].ToString()); writer.WriteAttributeString("VariationType", rowVariation["VariationType"].ToString()); writer.WriteEndElement(); } dtaProductVariationsMatrix = clsProductVariationsMatrix.ProductVariationsMatrixListAsDataTable(long.Parse(row["VariationMatrixID"].ToString()), null, System.Data.SqlClient.SortOrder.Ascending); foreach (DataRow rowVariationsMatrix in dtaProductVariationsMatrix.Rows) { writer.WriteStartElement("VariationMatrix", null); writer.WriteAttributeString("MatriXID", rowVariationsMatrix["MatriXID"].ToString()); writer.WriteAttributeString("VariationID", rowVariationsMatrix["VariationID"].ToString()); writer.WriteAttributeString("Description", rowVariationsMatrix["Description"].ToString()); writer.WriteAttributeString("VariationCode", rowVariationsMatrix["VariationCode"].ToString()); writer.WriteAttributeString("VariationType", rowVariationsMatrix["VariationType"].ToString()); writer.WriteEndElement(); } writer.WriteEndElement(); } writer.WriteEndElement(); //Write the XML to file and close the writer writer.Flush(); writer.Close(); clsTransferOut.CommitAndDispose(); string stScript = "<Script>"; stScript += "window.open('/RetailPlus/temp/" + lblBranchCode.Text.Replace(" ", "").Trim() + "_" + clsTransferOutDetails.TransferOutNo + "_" + clsTransferOutDetails.TransferOutDate.ToString("yyyyMMddHHmmssffff") + ".xml')"; stScript += "</Script>"; Response.Write(stScript); }
private void UpdateAccounts(long TransferOutID) { try { TransferOutDetails clsTransferOutDetails = Details(TransferOutID); ChartOfAccounts clsChartOfAccount = new ChartOfAccounts(base.Connection, base.Transaction); // update ChartOfAccountIDAPTracking as credit clsChartOfAccount.UpdateCredit(clsTransferOutDetails.ChartOfAccountIDAPTracking, clsTransferOutDetails.SubTotal); // update Deposit & APContra clsChartOfAccount.UpdateCredit(clsTransferOutDetails.ChartOfAccountIDAPContra, clsTransferOutDetails.Discount); // update Freight & APTracking clsChartOfAccount.UpdateCredit(clsTransferOutDetails.ChartOfAccountIDAPTracking, clsTransferOutDetails.Freight); clsChartOfAccount.UpdateDebit(clsTransferOutDetails.ChartOfAccountIDAPFreight, clsTransferOutDetails.Freight); // update Deposit & APTracking clsChartOfAccount.UpdateCredit(clsTransferOutDetails.ChartOfAccountIDAPTracking, clsTransferOutDetails.Deposit); clsChartOfAccount.UpdateDebit(clsTransferOutDetails.ChartOfAccountIDAPVDeposit, clsTransferOutDetails.Deposit); TransferOutItem clsTransferOutItem = new TransferOutItem(base.Connection, base.Transaction); System.Data.DataTable dt = clsTransferOutItem.ListAsDataTable(TransferOutID, "TransferOutItemID", SortOption.Ascending); foreach (System.Data.DataRow dr in dt.Rows) { int iChartOfAccountIDTransferOut = Int16.Parse(dr["ChartOfAccountIDTransferOut"].ToString()); int iChartOfAccountIDTaxTransferOut = Int16.Parse(dr["ChartOfAccountIDTaxTransferOut"].ToString()); decimal decVAT = decimal.Parse(dr["VAT"].ToString()); decimal decVATABLEAmount = decimal.Parse(dr["Amount"].ToString()) - decVAT; // update purchase as debit clsChartOfAccount.UpdateDebit(iChartOfAccountIDTransferOut, decVATABLEAmount); // update tax as debit clsChartOfAccount.UpdateDebit(iChartOfAccountIDTaxTransferOut, decVAT); } } catch (Exception ex) { throw base.ThrowException(ex); } }