Ejemplo n.º 1
0
        private void LoadOptions()
        {
            DataClass clsDataClass = new DataClass();

            lblProductID.Text = Common.Decrypt((string)Request.QueryString["prodid"], Session.SessionID);
            lblMatrixID.Text  = Common.Decrypt(Request.QueryString["id"], Session.SessionID);

            ProductVariations clsProductVariation = new ProductVariations();

            lstItem.DataSource = clsProductVariation.ListAsDataTable(Convert.ToInt64(lblProductID.Text)).DefaultView;
            lstItem.DataBind();
            clsProductVariation.CommitAndDispose();

            ProductUnitsMatrix clsProductUnitsMatrix = new ProductUnitsMatrix();

            cboUnit.DataTextField  = "BottomUnitName";
            cboUnit.DataValueField = "BottomUnitID";
            cboUnit.DataSource     = clsProductUnitsMatrix.ListAsDataTable(Convert.ToInt64(lblProductID.Text)).DefaultView;
            cboUnit.DataBind();
            cboUnit.SelectedIndex = cboUnit.Items.Count - 1;
            clsProductUnitsMatrix.CommitAndDispose();

            Products       clsProduct = new Products();
            ProductDetails clsDetails = clsProduct.Details(Convert.ToInt64(lblProductID.Text));

            cboUnit.Items.Add(new ListItem(clsDetails.BaseUnitName, clsDetails.BaseUnitID.ToString()));
            clsProduct.CommitAndDispose();
            cboUnit.SelectedIndex = cboUnit.Items.Count - 1;

            lblProductSubGroupID.Text = clsDetails.ProductSubGroupID.ToString();

            string stParam = "?task=" + Common.Encrypt("list", Session.SessionID) + "&prodid=" + Common.Encrypt(lblProductID.Text, Session.SessionID);

            lnkVariations.NavigateUrl = Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/_Variations/Default.aspx" + stParam;
        }
Ejemplo n.º 2
0
        private bool Delete()
        {
            bool   boRetValue = false;
            string stIDs      = "";

            foreach (DataListItem item in lstItem.Items)
            {
                HtmlInputCheckBox chkList = (HtmlInputCheckBox)item.FindControl("chkList");
                if (chkList != null)
                {
                    if (chkList.Checked == true)
                    {
                        stIDs     += chkList.Value + ",";
                        boRetValue = true;
                    }
                }
            }
            if (boRetValue)
            {
                ProductVariations clsProductVariation = new ProductVariations();
                clsProductVariation.Delete(Convert.ToInt16(lblProductID.Text), stIDs.Substring(0, stIDs.Length - 1));
                clsProductVariation.CommitAndDispose();
            }

            return(boRetValue);
        }
Ejemplo n.º 3
0
        private void LoadOptions()
        {
            lblProductID.Text = Common.Decrypt((string)Request.QueryString["prodid"], Session.SessionID);
            lblMatrixID.Text  = Common.Decrypt(Request.QueryString["id"], Session.SessionID);

            ProductVariations clsProductVariation = new ProductVariations();

            lstItem.DataSource = clsProductVariation.ListAsDataTable(Convert.ToInt64(lblProductID.Text)).DefaultView;
            lstItem.DataBind();

            ProductUnitsMatrix clsUnit = new ProductUnitsMatrix(clsProductVariation.Connection, clsProductVariation.Transaction);

            cboUnit.DataTextField  = "BottomUnitName";
            cboUnit.DataValueField = "BottomUnitID";
            cboUnit.DataSource     = clsUnit.ListAsDataTable(Convert.ToInt64(lblProductID.Text)).DefaultView;
            cboUnit.DataBind();

            Products       clsProduct = new Products(clsProductVariation.Connection, clsProductVariation.Transaction);
            ProductDetails clsDetails = clsProduct.Details(Convert.ToInt64(lblProductID.Text));

            cboUnit.Items.Add(new ListItem(clsDetails.BaseUnitName, clsDetails.BaseUnitID.ToString()));
            clsProductVariation.CommitAndDispose();

            cboUnit.SelectedIndex = cboUnit.Items.Count - 1;
        }
Ejemplo n.º 4
0
        private void LoadOptions()
        {
            lblProductID.Text = Common.Decrypt((string)Request.QueryString["prodid"], Session.SessionID);

            ProductVariations clsProductVariation = new ProductVariations();

            lstItem.DataSource = clsProductVariation.ListAsDataTable(Convert.ToInt64(lblProductID.Text)).DefaultView;
            lstItem.DataBind();
            clsProductVariation.CommitAndDispose();

            ProductUnitsMatrix clsUnit = new ProductUnitsMatrix();

            cboUnit.DataTextField  = "BottomUnitName";
            cboUnit.DataValueField = "BottomUnitID";
            cboUnit.DataSource     = clsUnit.ListAsDataTable(Convert.ToInt64(lblProductID.Text)).DefaultView;
            cboUnit.DataBind();
            cboUnit.SelectedIndex = cboUnit.Items.Count - 1;
            clsUnit.CommitAndDispose();

            Products       clsProduct        = new Products();
            ProductDetails clsProductDetails = clsProduct.Details(Convert.ToInt64(lblProductID.Text));

            lblProductSubGroupID.Text = clsProductDetails.ProductSubGroupID.ToString();

            cboUnit.Items.Add(new ListItem(clsProductDetails.BaseUnitName, clsProductDetails.BaseUnitID.ToString()));
            cboUnit.SelectedIndex = cboUnit.Items.IndexOf(cboUnit.Items.FindByValue(clsProductDetails.BaseUnitID.ToString()));
            txtProductPrice.Text  = clsProductDetails.Price.ToString("#,##0.#0");
            txtPrice1.Text        = clsProductDetails.Price1.ToString("#,##0.#0");
            txtPrice2.Text        = clsProductDetails.Price2.ToString("#,##0.#0");
            txtPrice3.Text        = clsProductDetails.Price3.ToString("#,##0.#0");
            txtPrice4.Text        = clsProductDetails.Price4.ToString("#,##0.#0");
            txtPrice5.Text        = clsProductDetails.Price5.ToString("#,##0.#0");
            txtWSPrice.Text       = clsProductDetails.WSPrice.ToString("#,##0.#0");
            txtPurchasePrice.Text = clsProductDetails.PurchasePrice.ToString("#,##0.#0");
            decimal decMargin = clsProductDetails.Price - clsProductDetails.PurchasePrice;

            try { decMargin = decMargin / clsProductDetails.PurchasePrice; }
            catch { decMargin = 1; }
            decMargin      = decMargin * 100;
            txtMargin.Text = decMargin.ToString("#,##0.##0");

            decMargin = clsProductDetails.WSPrice - clsProductDetails.PurchasePrice;
            try { decMargin = decMargin / clsProductDetails.PurchasePrice; }
            catch { decMargin = 1; }
            decMargin             = decMargin * 100;
            txtWSPriceMarkUp.Text = decMargin.ToString("#,##0.##0");

            chkIncludeInSubtotalDiscount.Checked = clsProductDetails.IncludeInSubtotalDiscount;
            txtVAT.Text  = clsProductDetails.VAT.ToString("#,##0.#0");
            txtEVAT.Text = clsProductDetails.EVAT.ToString("#,##0.#0");
            clsProduct.CommitAndDispose();

            string stParam = "?task=" + Common.Encrypt("list", Session.SessionID) + "&prodid=" + Common.Encrypt(lblProductID.Text, Session.SessionID);

            lnkVariations.NavigateUrl = Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/_Variations/Default.aspx" + stParam;
        }
Ejemplo n.º 5
0
        private void SaveRecord()
        {
            ProductVariations       clsProductVariation = new ProductVariations();
            ProductVariationDetails clsDetails          = new ProductVariationDetails();

            clsDetails.ProductID   = Convert.ToInt32(lblProductID.Text);
            clsDetails.VariationID = Convert.ToInt32(cboVariationType.SelectedItem.Value);

            clsProductVariation.Update(clsDetails, Convert.ToInt32(lblProductVariationID.Text));

            clsProductVariation.CommitAndDispose();
        }
Ejemplo n.º 6
0
        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();
        }
Ejemplo n.º 7
0
        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();
        }
Ejemplo n.º 8
0
        public void LoadOptions()
        {
            DataClass clsDataClass = new DataClass();
            //lblProductID.Text = "0"; // Common.Decrypt((string)Request.QueryString["prodid"], Session.SessionID);

            ProductVariations clsVariation = new ProductVariations();

            cboVariationType.DataTextField  = "VariationType";
            cboVariationType.DataValueField = "VariationID";
            cboVariationType.DataSource     = clsDataClass.DataReaderToDataTable(clsVariation.AvailableVariations(Convert.ToInt32(lblProductID.Text), "VariationType", SortOption.Ascending)).DefaultView;
            cboVariationType.DataBind();
            cboVariationType.SelectedIndex = cboVariationType.Items.Count - 1;

            clsVariation.CommitAndDispose();
        }
Ejemplo n.º 9
0
        private void SaveRecord()
        {
            long   lngProductGroupID    = long.Parse(cboProductGroup.SelectedItem.Value);
            long   lngProductSubGroupID = long.Parse(cboProductSubGroup.SelectedItem.Value);
            long   lngProductID         = long.Parse(cboProductCode.SelectedItem.Value);
            long   lngVariationID       = long.Parse(cboVariationType.SelectedItem.Value);
            string javaScript           = "";

            if (lngVariationID == 0)
            {
                javaScript = "window.alert('Please select at least one variation to add.')";
                System.Web.UI.ScriptManager.RegisterClientScriptBlock(this.updSave, this.updSave.GetType(), "openwindow", javaScript, true);
            }
            else
            {
                ProductVariations clsProductVariation = new ProductVariations();
                clsProductVariation.AddEasyVariation(lngProductGroupID, lngProductSubGroupID, lngProductID, lngVariationID, Convert.ToString(Session["Name"]));
                clsProductVariation.CommitAndDispose();

                javaScript = "window.alert('Variation has been saved.')";
                System.Web.UI.ScriptManager.RegisterClientScriptBlock(this.updSave, this.updSave.GetType(), "openwindow", javaScript, true);
            }
        }
Ejemplo n.º 10
0
        private void LoadOptions()
        {
            DataClass clsDataClass = new DataClass();

            lblProductID.Text          = Common.Decrypt((string)Request.QueryString["prodid"], Session.SessionID);
            lblProductVariationID.Text = Common.Decrypt(Request.QueryString["id"], Session.SessionID);

            Variation clsVariation  = new Variation();
            string    VariationType = clsVariation.Details(Convert.ToInt32(lblProductVariationID.Text)).VariationType;

            clsVariation.CommitAndDispose();

            ProductVariations clsProductVariation = new ProductVariations();

            cboVariationType.DataTextField  = "VariationType";
            cboVariationType.DataValueField = "VariationID";
            cboVariationType.DataSource     = clsDataClass.DataReaderToDataTable(clsProductVariation.AvailableVariations(Convert.ToInt16(lblProductID.Text), "VariationType", SortOption.Ascending)).DefaultView;
            cboVariationType.DataBind();
            cboVariationType.Items.Add(new ListItem(VariationType, lblProductVariationID.Text));
            cboVariationType.SelectedIndex = cboVariationType.Items.Count - 1;

            clsProductVariation.CommitAndDispose();
        }
Ejemplo n.º 11
0
        private void LoadList()
        {
            ProductVariations clsProductVariation = new ProductVariations();
            DataClass         clsDataClass        = new DataClass();

            string SortField = "a.VariationID";

            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);
            }

            if (Request.QueryString["Search"] == null)
            {
                PageData.DataSource = clsProductVariation.ListAsDataTable(Convert.ToInt64(lblProductID.Text), SortField, sortoption == SortOption.Ascending ? System.Data.SqlClient.SortOrder.Ascending : System.Data.SqlClient.SortOrder.Descending).DefaultView;
            }
            else
            {
                string SearchKey = Common.Decrypt((string)Request.QueryString["search"], Session.SessionID);
                PageData.DataSource = clsDataClass.DataReaderToDataTable(clsProductVariation.Search(Convert.ToInt64(lblProductID.Text), SearchKey, SortField, sortoption)).DefaultView;
            }

            clsProductVariation.CommitAndDispose();

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

            PageData.AllowPaging = true;
            PageData.PageSize    = iPageSize;
            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 i = 0; i < PageData.PageCount; i++)
            {
                int iValue = i + 1;
                cboCurrentPage.Items.Add(new ListItem(iValue.ToString(), iValue.ToString()));
                if (PageData.CurrentPageIndex == i)
                {
                    cboCurrentPage.Items[i].Selected = true;
                }
                else
                {
                    cboCurrentPage.Items[i].Selected = false;
                }
            }
            lblDataCount.Text = " of " + " " + PageData.PageCount;
        }
Ejemplo n.º 12
0
        protected void lstItem_ItemCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
        {
            Common            Common         = new Common();
            HtmlInputCheckBox chkList        = (HtmlInputCheckBox)e.Item.FindControl("chkList");
            HyperLink         lnkProductCode = (HyperLink)e.Item.FindControl("lnkProductCode");

            string stParam = "?task=" + Common.Encrypt("list", Session.SessionID) + "&prodid=" + Common.Encrypt(chkList.Value, Session.SessionID);

            switch (e.CommandName)
            {
            case "imgProductTag":
            {
                ImageButton imgProductTag = (ImageButton)e.Item.FindControl("imgProductTag");
                Products    clsProduct    = new Products();

                if (imgProductTag.ToolTip == "Tag this product as INACTIVE.")
                {
                    clsProduct.TagInactive(long.Parse(chkList.Value));
                }
                else
                {
                    clsProduct.TagActive(long.Parse(chkList.Value));
                }

                clsProduct.CommitAndDispose();
                LoadList();
            }
            break;

            case "cmdSaveVariationClick":
            {
                DropDownList cboVariationType = (DropDownList)e.Item.FindControl("cboVariationType");
                SaveVariation(long.Parse(chkList.Value), int.Parse(cboVariationType.SelectedItem.Value), cboVariationType.SelectedItem.Text);
                ProductVariations clsVariation = new ProductVariations();
                cboVariationType.DataTextField  = "VariationType";
                cboVariationType.DataValueField = "VariationID";
                cboVariationType.DataSource     = clsVariation.AvailableVariationsDataTable(long.Parse(chkList.Value), "VariationType", SortOption.Ascending).DefaultView;
                cboVariationType.DataBind();
                cboVariationType.SelectedIndex = cboVariationType.Items.Count - 1;
                clsVariation.CommitAndDispose();
            }
            break;

            case "imgSaveVariationClick":
            {
                DropDownList cboVariationType = (DropDownList)e.Item.FindControl("cboVariationType");
                SaveVariation(long.Parse(chkList.Value), int.Parse(cboVariationType.SelectedItem.Value), cboVariationType.SelectedItem.Text);
                ProductVariations clsVariation = new ProductVariations();
                cboVariationType.DataTextField  = "VariationType";
                cboVariationType.DataValueField = "VariationID";
                cboVariationType.DataSource     = clsVariation.AvailableVariationsDataTable(long.Parse(chkList.Value), "VariationType", SortOption.Ascending).DefaultView;
                cboVariationType.DataBind();
                cboVariationType.SelectedIndex = cboVariationType.Items.Count - 1;
                clsVariation.CommitAndDispose();
            }
            break;

            case "imgVariationsClick":
                stParam = "?task=" + Common.Encrypt("list", Session.SessionID) + "&prodid=" + Common.Encrypt(chkList.Value, Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/_Variations/Default.aspx" + stParam);
                break;

            case "imgVariationsMatrixClick":
                stParam = "?task=" + Common.Encrypt("list", Session.SessionID) + "&prodid=" + Common.Encrypt(chkList.Value, Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/_VariationsMatrix/Default.aspx" + stParam);
                break;

            case "imgUnitsMatrixClick":
                stParam = "?task=" + Common.Encrypt("list", Session.SessionID) + "&prodid=" + Common.Encrypt(chkList.Value, Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/_UnitsMatrix/Default.aspx" + stParam);
                break;

            case "imgVariationsAddClick":
                stParam = "?task=" + Common.Encrypt("add", Session.SessionID) +
                          "&prodid=" + Common.Encrypt(chkList.Value, Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/_Variations/Default.aspx" + stParam);
                break;

            case "imgVariationsMatrixAddClick":
                stParam = "?task=" + Common.Encrypt("add", Session.SessionID) +
                          "&prodid=" + Common.Encrypt(chkList.Value, Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/_VariationsMatrix/Default.aspx" + stParam);
                break;

            case "imgUnitsMatrixAddClick":
                stParam = "?task=" + Common.Encrypt("add", Session.SessionID) +
                          "&prodid=" + Common.Encrypt(chkList.Value, Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/_UnitsMatrix/Default.aspx" + stParam);
                break;

            case "imgPackageMatrixAddClick":
                stParam = "?task=" + Common.Encrypt("add", Session.SessionID) +
                          "&prodid=" + Common.Encrypt(chkList.Value, Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/_Package/Default.aspx" + stParam);
                break;

            case "imgInventoryAdjustmentClick":
                stParam = "?task=" + Common.Encrypt("invadjustment", Session.SessionID) +
                          "&productcode=" + Common.Encrypt(Server.UrlEncode(lnkProductCode.Text), Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/Inventory/Default.aspx" + stParam);
                break;

            case "imgProductHistoryClick":
                stParam = "?task=" + Common.Encrypt("producthistory", Session.SessionID) +
                          "&productcode=" + Common.Encrypt(Server.UrlEncode(lnkProductCode.Text), Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/Reports/Default.aspx" + stParam);
                break;

            case "imgProductPriceHistoryClick":
                stParam = "?task=" + Common.Encrypt("pricehistory", Session.SessionID) +
                          "&productcode=" + Common.Encrypt(Server.UrlEncode(lnkProductCode.Text), Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/Reports/Default.aspx" + stParam);
                break;

            case "imgChangePriceClick":
                stParam = "?task=" + Common.Encrypt("changeprice", Session.SessionID) +
                          "&productcode=" + Common.Encrypt(Server.UrlEncode(lnkProductCode.Text), Session.SessionID);
                Response.Redirect("Default.aspx" + stParam);
                break;

            case "imgFinanceClick":
                stParam = "?task=" + Common.Encrypt("finance", Session.SessionID) +
                          "&prodid=" + Common.Encrypt(chkList.Value, Session.SessionID);
                Response.Redirect(Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/Default.aspx" + stParam);
                break;

            case "imgEditNowClick":
                stParam = "?task=" + Common.Encrypt("edit", Session.SessionID) + "&id=" + Common.Encrypt(chkList.Value, Session.SessionID);
                Response.Redirect("Default.aspx" + stParam);
                break;
            }
        }
Ejemplo n.º 13
0
        protected void lstItem_ItemDataBound(object sender, DataListItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Header)
            {
                LoadSortFieldOptions(e);
            }
            else if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                string      stParam = string.Empty;
                Common      Common  = new Common();
                DataRowView dr      = (DataRowView)e.Item.DataItem;

                HtmlInputCheckBox chkList = (HtmlInputCheckBox)e.Item.FindControl("chkList");
                chkList.Value = dr[ProductColumnNames.ProductID].ToString();

                ImageButton imgProductTag = (ImageButton)e.Item.FindControl("imgProductTag");
                if (Boolean.Parse(dr[ProductColumnNames.Active].ToString()))
                {
                    imgProductTag.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/prodtagact.gif";
                    imgProductTag.ToolTip  = "Tag this product as INACTIVE.";
                }
                else //if (clsProductListFilterType == ProductListFilterType.ShowInactiveOnly)
                {
                    imgProductTag.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/prodtaginact.gif";
                    imgProductTag.ToolTip  = "Tag this product as ACTIVE.";
                }

                //HyperLink lnkVariations = (HyperLink)e.Item.FindControl("lnkVariations");
                stParam = "?task=" + Common.Encrypt("list", Session.SessionID) + "&prodid=" + Common.Encrypt(chkList.Value, Session.SessionID);

                HyperLink lnkPackage = (HyperLink)e.Item.FindControl("lnkPackage");
                lnkPackage.NavigateUrl = Constants.ROOT_DIRECTORY + "/MasterFiles/_Product/_Package/Default.aspx" + stParam;

                HyperLink lnkBarCode = (HyperLink)e.Item.FindControl("lnkBarCode");
                lnkBarCode.Text        = dr[ProductColumnNames.BarCode].ToString();
                lnkBarCode.NavigateUrl = "Default.aspx?task=" + Common.Encrypt("details", Session.SessionID) + "&id=" + Common.Encrypt(chkList.Value, Session.SessionID);

                HyperLink lnkProductCode = (HyperLink)e.Item.FindControl("lnkProductCode");
                lnkProductCode.Text        = dr[ProductColumnNames.ProductCode].ToString();
                lnkProductCode.NavigateUrl = "Default.aspx?task=" + Common.Encrypt("details", Session.SessionID) + "&id=" + Common.Encrypt(chkList.Value, Session.SessionID);

                HyperLink lnkDescription = (HyperLink)e.Item.FindControl("lnkDescription");
                lnkDescription.Text        = dr[ProductColumnNames.ProductDesc].ToString();
                lnkDescription.NavigateUrl = "Default.aspx?task=" + Common.Encrypt("details", Session.SessionID) + "&id=" + Common.Encrypt(dr["ProductID"].ToString(), Session.SessionID);

                HyperLink lnkGroup = (HyperLink)e.Item.FindControl("lnkGroup");
                lnkGroup.Text        = dr[ProductColumnNames.ProductGroupCode].ToString();
                lnkGroup.NavigateUrl = Constants.ROOT_DIRECTORY + "/MasterFiles/_ProductGroup/Default.aspx?task=" + Common.Encrypt("details", Session.SessionID) + "&id=" + Common.Encrypt(dr[ProductColumnNames.ProductGroupID].ToString(), Session.SessionID);;

                HyperLink lnkUnit = (HyperLink)e.Item.FindControl("lnkUnit");
                lnkUnit.Text        = dr[ProductColumnNames.BaseUnitCode].ToString();
                lnkUnit.NavigateUrl = Constants.ROOT_DIRECTORY + "/MasterFiles/_Unit/Default.aspx?task=" + Common.Encrypt("details", Session.SessionID) + "&id=" + Common.Encrypt(dr[ProductColumnNames.BaseUnitID].ToString(), Session.SessionID);;

                Label lblPrice = (Label)e.Item.FindControl("lblPrice");
                lblPrice.Text = Convert.ToDecimal(dr[ProductColumnNames.Price].ToString()).ToString("#,##0.#0");

                Label lblPurchasePrice = (Label)e.Item.FindControl("lblPurchasePrice");
                lblPurchasePrice.Text = Convert.ToDecimal(dr[ProductColumnNames.PurchasePrice].ToString()).ToString("#,##0.#0");

                Label   lblMargin = (Label)e.Item.FindControl("lblMargin");
                decimal decMargin = Convert.ToDecimal(dr[ProductColumnNames.Price].ToString()) - Convert.ToDecimal(dr[ProductColumnNames.PurchasePrice].ToString());
                lblMargin.Text = decMargin.ToString("#,##0.##0");

                try { decMargin = decMargin / Convert.ToDecimal(dr[ProductColumnNames.PurchasePrice].ToString()); }
                catch { decMargin = 1; }
                decMargin       = decMargin * 100;
                lblMargin.Text += " (" + decMargin.ToString("#,##0.##0") + "%)";

                Label lnkSubGroup = (Label)e.Item.FindControl("lnkSubGroup");
                lnkSubGroup.Text = dr[ProductColumnNames.ProductSubGroupCode].ToString();

                Label lblQuantity = (Label)e.Item.FindControl("lblQuantity");
                lblQuantity.Text += dr[ProductColumnNames.ConvertedQuantity].ToString();
                //if (dr[ProductColumnNames.ConvertedMainQuantity].ToString().Split(';').Length > 0)
                //{ lblQuantity.Text += " (" + dr[ProductColumnNames.ConvertedMainQuantity].ToString() + ") "; }
                //else
                //{ lblQuantity.Text = Convert.ToDecimal(dr[ProductColumnNames.MainQuantity].ToString()).ToString("#,##0.#0"); }

                HyperLink lnkSupplierName = (HyperLink)e.Item.FindControl("lnkSupplierName");
                lnkSupplierName.Text        = dr[ProductColumnNames.SupplierName].ToString();
                lnkSupplierName.NavigateUrl = Constants.ROOT_DIRECTORY + "/MasterFiles/_Contact/Default.aspx" + "?task=" + Common.Encrypt("details", Session.SessionID) + "&id=" + Common.Encrypt(dr[ProductColumnNames.SupplierID].ToString(), Session.SessionID);

                CheckBox chkIncludeInSubtotalDiscount = (CheckBox)e.Item.FindControl("chkIncludeInSubtotalDiscount");
                chkIncludeInSubtotalDiscount.Checked = (bool)dr[ProductColumnNames.IncludeInSubtotalDiscount];

                Label lblVAT = (Label)e.Item.FindControl("lblVAT");
                lblVAT.Text = Convert.ToDecimal(dr[ProductColumnNames.VAT].ToString()).ToString("#,##0.#0") + " %";

                Label lblEVAT = (Label)e.Item.FindControl("lblEVAT");
                lblEVAT.Text = Convert.ToDecimal(dr[ProductColumnNames.EVAT].ToString()).ToString("#,##0.#0") + " %";

                Label lblLocalTax = (Label)e.Item.FindControl("lblLocalTax");
                lblLocalTax.Text = Convert.ToDecimal(dr[ProductColumnNames.LocalTax].ToString()).ToString("#,##0.#0") + " %";

                //For anchor
                HtmlGenericControl divInsertVariation = (HtmlGenericControl)e.Item.FindControl("divInsertVariation");
                HtmlAnchor         imgVariationsAdd   = (HtmlAnchor)e.Item.FindControl("imgVariationsAdd");
                imgVariationsAdd.HRef = "javascript:ToggleDiv('" + divInsertVariation.ClientID + "')";

                DropDownList      cboVariationType = (DropDownList)e.Item.FindControl("cboVariationType");
                ProductVariations clsVariation     = new ProductVariations();
                cboVariationType.DataTextField  = "VariationType";
                cboVariationType.DataValueField = "VariationID";
                cboVariationType.DataSource     = clsVariation.AvailableVariationsDataTable(long.Parse(chkList.Value), "VariationType", SortOption.Ascending).DefaultView;
                cboVariationType.DataBind();
                cboVariationType.SelectedIndex = cboVariationType.Items.Count - 1;
                clsVariation.CommitAndDispose();

                imgProductTag.Enabled = cmdEdit.Visible;

                LinkButton cmdSaveVariation = (LinkButton)e.Item.FindControl("cmdSaveVariation");
                cmdSaveVariation.Enabled = Convert.ToBoolean(Convert.ToInt16(lblVariationsAccess.Text));

                ImageButton imgSaveVariation = (ImageButton)e.Item.FindControl("imgSaveVariation");
                imgSaveVariation.Enabled = Convert.ToBoolean(Convert.ToInt16(lblVariationsAccess.Text));
                if (!imgSaveVariation.Enabled)
                {
                    imgSaveVariation.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                ImageButton imgVariations = (ImageButton)e.Item.FindControl("imgVariations");
                imgVariations.Enabled = Convert.ToBoolean(Convert.ToInt16(lblVariationsAccess.Text));
                if (!imgVariations.Enabled)
                {
                    imgVariations.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                ImageButton imgVariationsMatrix = (ImageButton)e.Item.FindControl("imgVariationsMatrix");
                imgVariationsMatrix.Enabled = Convert.ToBoolean(Convert.ToInt16(lblVariationsAccess.Text));
                if (!imgVariationsMatrix.Enabled)
                {
                    imgVariationsMatrix.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                ImageButton imgUnitsMatrix = (ImageButton)e.Item.FindControl("imgUnitsMatrix");
                imgUnitsMatrix.Enabled = Convert.ToBoolean(Convert.ToInt16(lblUnitMatrixAccess.Text));
                if (!imgUnitsMatrix.Enabled)
                {
                    imgUnitsMatrix.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                imgVariationsAdd.Visible = Convert.ToBoolean(Convert.ToInt16(lblVariationsAccess.Text));

                ImageButton imgVariationsMatrixAdd = (ImageButton)e.Item.FindControl("imgVariationsMatrixAdd");
                imgVariationsMatrixAdd.Enabled = Convert.ToBoolean(Convert.ToInt16(lblVariationsAccess.Text));
                if (!imgVariationsMatrixAdd.Enabled)
                {
                    imgVariationsMatrixAdd.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                ImageButton imgUnitsMatrixAdd = (ImageButton)e.Item.FindControl("imgUnitsMatrixAdd");
                imgUnitsMatrixAdd.Enabled = Convert.ToBoolean(Convert.ToInt16(lblUnitMatrixAccess.Text));
                if (!imgUnitsMatrixAdd.Enabled)
                {
                    imgUnitsMatrixAdd.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                lnkPackage.Enabled = Convert.ToBoolean(Convert.ToInt16(lblProductPackageAccess.Text));
                if (!lnkPackage.Enabled)
                {
                    lnkPackage.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                ImageButton imgPackageAdd = (ImageButton)e.Item.FindControl("imgPackageAdd");
                imgPackageAdd.Enabled = Convert.ToBoolean(Convert.ToInt16(lblProductPackageAccess.Text));
                if (!imgPackageAdd.Enabled)
                {
                    imgPackageAdd.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                ImageButton imgInventoryAdjustment = (ImageButton)e.Item.FindControl("imgInventoryAdjustment");
                imgInventoryAdjustment.Enabled = Convert.ToBoolean(Convert.ToInt16(lblInvAdjustmentAccess.Text));
                if (!imgInventoryAdjustment.Enabled)
                {
                    imgInventoryAdjustment.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                ImageButton imgProductHistory = (ImageButton)e.Item.FindControl("imgProductHistory");
                imgProductHistory.Enabled = Convert.ToBoolean(Convert.ToInt16(lblProductsListReportAccess.Text));
                if (!imgProductHistory.Enabled)
                {
                    imgProductHistory.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                ImageButton imgProductPriceHistory = (ImageButton)e.Item.FindControl("imgProductPriceHistory");
                imgProductPriceHistory.Enabled = Convert.ToBoolean(Convert.ToInt16(lblPricesReportAccess.Text));
                if (!imgProductPriceHistory.Enabled)
                {
                    imgProductPriceHistory.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                ImageButton imgChangePrice = (ImageButton)e.Item.FindControl("imgChangePrice");
                imgChangePrice.Enabled = Convert.ToBoolean(Convert.ToInt16(lblChangePriceAccess.Text));
                if (!imgChangePrice.Enabled)
                {
                    imgChangePrice.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }

                ImageButton imgEditNow = (ImageButton)e.Item.FindControl("imgEditNow");
                imgEditNow.Enabled = cmdEdit.Visible;
                if (!imgEditNow.Enabled)
                {
                    imgEditNow.ImageUrl = Constants.ROOT_DIRECTORY + "/_layouts/images/blank.gif";
                }
            }
        }