Example #1
0
        private void LoadOptions()
        {
            DataClass clsDataClass = new DataClass();

            lblSubGroupID.Text = Common.Decrypt((string)Request.QueryString["subgroupid"], Session.SessionID);

            ProductSubGroupVariations clsProductSubGroupVariation = new ProductSubGroupVariations();

            lstItem.DataSource = clsDataClass.DataReaderToDataTable(clsProductSubGroupVariation.List(Convert.ToInt32(lblSubGroupID.Text), "VariationType", SortOption.Ascending)).DefaultView;
            lstItem.DataBind();
            clsProductSubGroupVariation.CommitAndDispose();

            Data.Unit clsUnit = new Data.Unit();
            cboUnit.DataTextField  = "UnitName";
            cboUnit.DataValueField = "UnitID";
            cboUnit.DataSource     = clsUnit.ListAsDataTable(SortField: "UnitName").DefaultView;
            cboUnit.DataBind();
            cboUnit.SelectedIndex = cboUnit.Items.Count - 1;
            clsUnit.CommitAndDispose();

            ProductSubGroup        clsProductSubGroup        = new ProductSubGroup();
            ProductSubGroupDetails clsProductSubGroupDetails = clsProductSubGroup.Details(Convert.ToInt32(lblSubGroupID.Text));

            clsProductSubGroup.CommitAndDispose();

            cboUnit.SelectedIndex = cboUnit.Items.IndexOf(cboUnit.Items.FindByValue(clsProductSubGroupDetails.BaseUnitID.ToString()));
            txtProductPrice.Text  = clsProductSubGroupDetails.Price.ToString("#,##0.#0");
            txtProductPrice.Text  = clsProductSubGroupDetails.Price.ToString("#,##0.#0");
            txtPurchasePrice.Text = clsProductSubGroupDetails.PurchasePrice.ToString("#,##0.#0");
            chkIncludeInSubtotalDiscount.Checked = clsProductSubGroupDetails.IncludeInSubtotalDiscount;
            txtVAT.Text      = clsProductSubGroupDetails.VAT.ToString("#,##0.#0");
            txtEVAT.Text     = clsProductSubGroupDetails.EVAT.ToString("#,##0.#0");
            txtLocalTax.Text = clsProductSubGroupDetails.LocalTax.ToString("#,##0.#0");
        }
Example #2
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            const string defaultHeading = "Master Files";
            string       stHeading      = defaultHeading;

            const string defaultTitle = "List of Product SubGroup Variation Types";

            SiteTitle.Title = defaultTitle;

            const SearchCategoryID defaultSearchIndex = SearchCategoryID.ProductSubGroups;
            SearchCategoryID       SearchIndex        = defaultSearchIndex;

            HorizontalNavBar.PageNavigatorid = HorizontalNavID.MasterFiles;

            if (Request.QueryString["task"] != null)
            {
                ProductSubGroup        clsProductSubGroup = new ProductSubGroup();
                ProductSubGroupDetails clsDetails         = new ProductSubGroupDetails();

                int id = Convert.ToInt32(Common.Decrypt(Request.QueryString["subgroupid"].ToString(), Session.SessionID));
                clsDetails = clsProductSubGroup.Details(id);

                clsProductSubGroup.CommitAndDispose();

                string groupCode = " for SubGroup : " + clsDetails.ProductSubGroupName;

                string task = Common.Decrypt(Request.QueryString["task"].ToString(), Session.SessionID);
                switch (task)
                {
                case "add":
                    stHeading          = "Register New Variation";
                    SearchIndex        = SearchCategoryID.ProductVariations;
                    ctrlInsert.Visible = true;
                    break;

                case "edit":
                    stHeading          = "Modify Variation";
                    SearchIndex        = SearchCategoryID.ProductVariations;
                    ctrlUpdate.Visible = true;
                    break;

                case "list":
                    stHeading        = "Variations List";
                    SearchIndex      = SearchCategoryID.ProductVariations;
                    ctrlList.Visible = true;
                    break;

                default:
                    break;
                }

                LargeHeading.Text = stHeading + groupCode;
                RightBodySectionSearch.SearchIDSelectedItem = SearchIndex;
            }
        }
Example #3
0
 protected void cboProductSubGroup_SelectedIndexChanged(object sender, System.EventArgs e)
 {
     if (cboProductSubGroup.Items.Count != 0)
     {
         ProductSubGroup        clsProductSubGroup        = new ProductSubGroup();
         ProductSubGroupDetails clsProductSubGroupDetails = clsProductSubGroup.Details(Convert.ToInt32(cboProductSubGroup.SelectedItem.Value));
         cboProductUnit.SelectedIndex = cboProductUnit.Items.IndexOf(cboProductUnit.Items.FindByValue(clsProductSubGroupDetails.BaseUnitID.ToString()));
         txtProductPrice.Text         = clsProductSubGroupDetails.Price.ToString("#,##0.#0");
         clsProductSubGroup.CommitAndDispose();
     }
 }
Example #4
0
 protected void cboProductSubGroup_SelectedIndexChanged(object sender, System.EventArgs e)
 {
     if (cboProductSubGroup.Items.Count != 0)
     {
         ProductSubGroup        clsProductSubGroup        = new ProductSubGroup();
         ProductSubGroupDetails clsProductSubGroupDetails = clsProductSubGroup.Details(Convert.ToInt32(cboProductSubGroup.SelectedItem.Value));
         cboProductUnit.SelectedIndex = cboProductUnit.Items.IndexOf(cboProductUnit.Items.FindByValue(clsProductSubGroupDetails.BaseUnitID.ToString()));
         txtProductPrice.Text         = clsProductSubGroupDetails.Price.ToString("#,##0.#0");
         txtWSPrice.Text       = clsProductSubGroupDetails.Price.ToString("#,##0.#0");
         txtPurchasePrice.Text = clsProductSubGroupDetails.PurchasePrice.ToString("#,##0.#0");
         chkIncludeInSubtotalDiscount.Checked = clsProductSubGroupDetails.IncludeInSubtotalDiscount;
         txtVAT.Text      = clsProductSubGroupDetails.VAT.ToString("#,##0.#0");
         txtEVAT.Text     = clsProductSubGroupDetails.EVAT.ToString("#,##0.#0");
         txtLocalTax.Text = clsProductSubGroupDetails.LocalTax.ToString("#,##0.#0");
         clsProductSubGroup.CommitAndDispose();
     }
 }
Example #5
0
        private void LoadRecord()
        {
            Int32                  iID = Convert.ToInt32(Common.Decrypt(Request.QueryString["id"], Session.SessionID));
            ProductSubGroup        clsProductSubGroup = new ProductSubGroup();
            ProductSubGroupDetails clsDetails         = clsProductSubGroup.Details(iID);

            clsProductSubGroup.CommitAndDispose();

            lblProductSubGroupID.Text            = clsDetails.ProductSubGroupID.ToString();
            cboGroup.SelectedIndex               = cboGroup.Items.IndexOf(cboGroup.Items.FindByValue(clsDetails.ProductGroupID.ToString()));
            txtProductSubGroupCode.Text          = clsDetails.ProductSubGroupCode;
            txtProductSubGroupName.Text          = clsDetails.ProductSubGroupName;
            cboProductSubGroupUnit.SelectedIndex = cboProductSubGroupUnit.Items.IndexOf(cboProductSubGroupUnit.Items.FindByValue(clsDetails.BaseUnitID.ToString()));
            txtProductPrice.Text  = clsDetails.Price.ToString("#,##0.#0");
            txtPurchasePrice.Text = clsDetails.PurchasePrice.ToString("#,##0.#0");
            chkIncludeInSubtotalDiscount.Checked = clsDetails.IncludeInSubtotalDiscount;
            txtVAT.Text      = clsDetails.VAT.ToString("#,##0.#0");
            txtEVAT.Text     = clsDetails.EVAT.ToString("#,##0.#0");
            txtLocalTax.Text = clsDetails.LocalTax.ToString("#,##0.#0");
        }
Example #6
0
 protected void cboProductSubGroup_SelectedIndexChanged(object sender, System.EventArgs e)
 {
     try
     {
         LoadProduct();
         if (cboProductSubGroup.SelectedItem.Value != Constants.ZERO_STRING)
         {
             ProductSubGroup        clsProductSubGroup        = new ProductSubGroup();
             ProductSubGroupDetails clsProductSubGroupDetails = clsProductSubGroup.Details(long.Parse(cboProductSubGroup.SelectedItem.Value));
             clsProductSubGroup.CommitAndDispose();
             txtVAT.Text      = clsProductSubGroupDetails.VAT.ToString("#,##0.#0");
             txtEVAT.Text     = clsProductSubGroupDetails.EVAT.ToString("#,##0.#0");
             txtLocalTax.Text = clsProductSubGroupDetails.LocalTax.ToString("#,##0.#0");
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Example #7
0
        private void LoadOptions()
        {
            DataClass clsDataClass = new DataClass();
            int       subgroupid   = Convert.ToInt32(Common.Decrypt(Request.QueryString["subgroupid"].ToString(), Session.SessionID));

            lblSubGroupID.Text = Convert.ToString(subgroupid);

            ProductSubGroupUnitsMatrix        clsUnitMatrix  = new ProductSubGroupUnitsMatrix();
            ProductSubGroupUnitsMatrixDetails clsUnitDetails = clsUnitMatrix.LastDetails(subgroupid);

            if (clsUnitDetails.BottomUnitName == null)
            {
                ProductSubGroup        clsProductSubGroup = new ProductSubGroup();
                ProductSubGroupDetails clsDetails         = clsProductSubGroup.Details(subgroupid);
                clsProductSubGroup.CommitAndDispose();

                txtBaseUnit.Text   = clsDetails.BaseUnitName;
                lblBaseUnitID.Text = Convert.ToString(clsDetails.BaseUnitID);
            }
            else
            {
                txtBaseUnit.Text   = clsUnitDetails.BottomUnitName;
                lblBaseUnitID.Text = Convert.ToString(clsUnitDetails.BottomUnitID);
            }

            cboBottomUnit.DataTextField  = "UnitName";
            cboBottomUnit.DataValueField = "UnitID";
            cboBottomUnit.DataSource     = clsDataClass.DataReaderToDataTable(clsUnitMatrix.AvailableUnitsForProduct(subgroupid, "UnitName", SortOption.Ascending)).DefaultView;
            cboBottomUnit.DataBind();
            if (cboBottomUnit.Items.Contains(new ListItem(txtBaseUnit.Text, lblBaseUnitID.Text)))
            {
                cboBottomUnit.Items.RemoveAt(cboBottomUnit.Items.IndexOf(cboBottomUnit.Items.FindByValue(lblBaseUnitID.Text)));
            }
            cboBottomUnit.SelectedIndex = cboBottomUnit.Items.Count - 1;

            clsUnitMatrix.CommitAndDispose();
        }
Example #8
0
        private void LoadList()
        {
            string SortField = "ProductCode";

            if (Request.QueryString["sortfield"] != null)
            {
                SortField = Common.Decrypt(Request.QueryString["sortfield"].ToString(), Session.SessionID);
            }

            SortOption sortoption = SortOption.Ascending;

            if (Request.QueryString["sortoption"] != null)
            {
                sortoption = (SortOption)Enum.Parse(typeof(SortOption), Common.Decrypt(Request.QueryString["sortoption"], Session.SessionID), true);
            }

            Int64 lngProductSubGroupID = Convert.ToInt64(cboProductSubGroup.SelectedItem.Value);

            ProductInventories clsProductInventories = new ProductInventories();

            System.Data.DataTable dt = clsProductInventories.ListAsDataTable(BranchID: int.Parse(cboBranch.SelectedItem.Value), ProductSubGroupID: lngProductSubGroupID, clsProductListFilterType: ProductListFilterType.ShowActiveOnly, SortField: "ProductCode ASC, MatrixDescription ASC, BarCode1", SortOrder: SortOption.Desscending);

            ProductSubGroup        clsProductSubGroup        = new ProductSubGroup(clsProductInventories.Connection, clsProductInventories.Transaction);
            ProductSubGroupDetails clsProductSubGroupDetails = clsProductSubGroup.Details(lngProductSubGroupID);

            clsProductInventories.CommitAndDispose();

            PageData.DataSource = dt.DefaultView;

            if (!clsProductSubGroupDetails.isLock)
            {
                cmdLockUnlockProduct.Text    = "Lock Product Group [<label class='ms-error'>Note:</label>Products under this group are <u>CURRENTLY ALLOWED</u> for Selling]";
                cmdLockUnlockProduct.ToolTip = "unlock";
            }
            else
            {
                cmdLockUnlockProduct.Text    = "UnLock Product Group [<label class='ms-error'>Note:</label>Products under this group are <u>CURRENTLY NOT ALLOWED</u> for Selling]";
                cmdLockUnlockProduct.ToolTip = "lock";
            }

            int iPageSize = Convert.ToInt16(Session["PageSize"]);

            PageData.AllowPaging = true;
            PageData.PageSize    = 5000;
            try
            {
                PageData.CurrentPageIndex = Convert.ToInt16(cboCurrentPage.SelectedItem.Value) - 1;
                lstItem.DataSource        = PageData;
                lstItem.DataBind();
            }
            catch
            {
                PageData.CurrentPageIndex = 1;
                lstItem.DataSource        = PageData;
                lstItem.DataBind();
            }

            cboCurrentPage.Items.Clear();
            for (int iRow = 0; iRow < PageData.PageCount; iRow++)
            {
                int iValue = iRow + 1;
                cboCurrentPage.Items.Add(new ListItem(iValue.ToString(), iValue.ToString()));
                if (PageData.CurrentPageIndex == iRow)
                {
                    cboCurrentPage.Items[iRow].Selected = true;
                }
                else
                {
                    cboCurrentPage.Items[iRow].Selected = false;
                }
            }
            lblDataCount.Text = " of " + " " + PageData.PageCount;
        }
Example #9
0
        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.");
            }
        }