Пример #1
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)
            {
                Security.AccessUserDetails clsAccessUserDetails       = (Security.AccessUserDetails)Session["AccessUserDetails"];
                ProductVariationsMatrix    clsProductVariationsMatrix = new ProductVariationsMatrix();
                clsProductVariationsMatrix.GetConnection();

                Products clsProducts = new Products(clsProductVariationsMatrix.Connection, clsProductVariationsMatrix.Transaction);

                long ProductID = Int64.Parse(lblProductID.Text);

                string[] strIDs = stIDs.Substring(0, stIDs.Length - 1).Split(',');
                foreach (string ID in strIDs)
                {
                    long           MatrixID   = long.Parse(ID);
                    ProductDetails clsDetails = clsProducts.Details(ProductID: ProductID, MatrixID: MatrixID);

                    InvAdjustmentDetails clsInvAdjustmentDetails = new InvAdjustmentDetails();
                    clsInvAdjustmentDetails.UID = clsAccessUserDetails.UID;
                    clsInvAdjustmentDetails.InvAdjustmentDate  = DateTime.Now;
                    clsInvAdjustmentDetails.ProductID          = clsDetails.ProductID;
                    clsInvAdjustmentDetails.ProductCode        = clsDetails.ProductCode;
                    clsInvAdjustmentDetails.Description        = clsDetails.ProductDesc;
                    clsInvAdjustmentDetails.VariationMatrixID  = clsDetails.MatrixID;
                    clsInvAdjustmentDetails.MatrixDescription  = clsDetails.MatrixDescription;
                    clsInvAdjustmentDetails.UnitID             = clsDetails.BaseUnitID;
                    clsInvAdjustmentDetails.UnitCode           = clsDetails.BaseUnitCode;
                    clsInvAdjustmentDetails.QuantityBefore     = clsDetails.Quantity;
                    clsInvAdjustmentDetails.QuantityNow        = 0;
                    clsInvAdjustmentDetails.MinThresholdBefore = clsDetails.MinThreshold;
                    clsInvAdjustmentDetails.MinThresholdNow    = 0;
                    clsInvAdjustmentDetails.MaxThresholdBefore = clsDetails.MaxThreshold;
                    clsInvAdjustmentDetails.MaxThresholdNow    = 0;
                    clsInvAdjustmentDetails.Remarks            = "deleted item.";

                    InvAdjustment clsInvAdjustment = new InvAdjustment(clsProducts.Connection, clsProducts.Transaction);
                    clsInvAdjustment.Insert(clsInvAdjustmentDetails);

                    // Aug 1, 2011 : Lemu
                    // Replaced clsProductVariationsMatrix.SynchronizeQuantity(Convert.ToInt64(lblProductID.Text));
                    clsProductVariationsMatrix.Delete(long.Parse(ID));
                }

                // Aug 1, 2011 : Lemu
                // Deleted and replaced by subtracting each matrix in the product to include in the ProductMovement report
                // clsProduct.SubtractQuantity(clsProductDetails.ProductID, 0, clsBaseDetails.Quantity, Product.getPRODUCT_INVENTORY_MOVEMENT_VALUE(PRODUCT_INVENTORY_MOVEMENT.DEDUCT_PRODUCT_VARIATION_DELETE) + " : " + clsBaseDetails.Description, clsInvAdjustmentDetails.InvAdjustmentDate, "SYS-VARDEL" + clsInvAdjustmentDetails.InvAdjustmentDate.ToString(""), clsAccessUserDetails.Name);
                // clsProductVariationsMatrix.SynchronizeQuantity(Convert.ToInt64(lblProductID.Text));

                clsProductVariationsMatrix.CommitAndDispose();
            }

            return(boRetValue);
        }
Пример #2
0
        private void SaveRecord()
        {
            Security.AccessUserDetails clsDetails = (Security.AccessUserDetails)Session["AccessUserDetails"];
            DateTime dteChangeDate = DateTime.Now;

            Products clsProduct = new Products();

            clsProduct.GetConnection();

            InvAdjustment        clsInvAdjustment = new InvAdjustment(clsProduct.Connection, clsProduct.Transaction);
            InvAdjustmentDetails clsInvAdjustmentDetails;

            long lngProductID = long.Parse(cboProductCode.SelectedValue);

            if (lstVariationMatrix.Items.Count > 0)
            {
                ProductVariationsMatrix clsProductVariationsMatrix = new ProductVariationsMatrix(clsProduct.Connection, clsProduct.Transaction);
                foreach (DataListItem e in lstVariationMatrix.Items)
                {
                    HtmlInputCheckBox chkMatrixID             = (HtmlInputCheckBox)e.FindControl("chkMatrixID");
                    Label             lblVariationDesc        = (Label)e.FindControl("lblVariationDesc");
                    Label             lblUnitNameMatrix       = (Label)e.FindControl("lblUnitCode");
                    TextBox           txtQuantityBeforeMatrix = (TextBox)e.FindControl("txtQuantityBefore");
                    //TextBox txtDifferenceMatrix = (TextBox)e.FindControl("txtDifference");
                    TextBox txtQuantityNowMatrix  = (TextBox)e.FindControl("txtQuantityNow");
                    TextBox txtMinThresholdMatrix = (TextBox)e.FindControl("txtMinThreshold");
                    TextBox txtMaxThresholdMatrix = (TextBox)e.FindControl("txtMaxThreshold");

                    decimal decQuantityBeforeMatrix = decimal.Parse(txtQuantityBeforeMatrix.Text);
                    //decimal decDifferenceMatrix = decimal.Parse(txtDifference.Text);
                    decimal decQuantityNowMatrix        = decimal.Parse(txtQuantityNowMatrix.Text);
                    decimal decMinThresholdMatrixBefore = decimal.Parse(txtMinThresholdMatrix.ToolTip);
                    decimal decMinThresholdMatrixNow    = decimal.Parse(txtMinThresholdMatrix.Text);
                    decimal decMaxThresholdMatrixBefore = decimal.Parse(txtMaxThresholdMatrix.ToolTip);
                    decimal decMaxThresholdMatrixNow    = decimal.Parse(txtMaxThresholdMatrix.Text);

                    if (decQuantityBeforeMatrix != decQuantityNowMatrix || decMinThresholdMatrixBefore != decMinThresholdMatrixNow || decMaxThresholdMatrixBefore != decMaxThresholdMatrixNow)
                    {
                        clsInvAdjustmentDetails     = new InvAdjustmentDetails();
                        clsInvAdjustmentDetails.UID = clsDetails.UID;
                        clsInvAdjustmentDetails.InvAdjustmentDate  = dteChangeDate;
                        clsInvAdjustmentDetails.ProductID          = long.Parse(cboProductCode.SelectedValue);
                        clsInvAdjustmentDetails.ProductCode        = cboProductCode.SelectedItem.Text;
                        clsInvAdjustmentDetails.Description        = cboProductCode.SelectedItem.Text;
                        clsInvAdjustmentDetails.VariationMatrixID  = long.Parse(chkMatrixID.Value);
                        clsInvAdjustmentDetails.MatrixDescription  = lblVariationDesc.Text;
                        clsInvAdjustmentDetails.UnitID             = int.Parse(lblUnitNameMatrix.ToolTip);
                        clsInvAdjustmentDetails.UnitCode           = lblUnitNameMatrix.Text;
                        clsInvAdjustmentDetails.QuantityBefore     = decQuantityBeforeMatrix;
                        clsInvAdjustmentDetails.QuantityNow        = decQuantityNowMatrix;
                        clsInvAdjustmentDetails.MinThresholdBefore = decMinThresholdMatrixBefore;
                        clsInvAdjustmentDetails.MinThresholdNow    = decMinThresholdMatrixNow;
                        clsInvAdjustmentDetails.MaxThresholdBefore = decMaxThresholdMatrixBefore;
                        clsInvAdjustmentDetails.MaxThresholdNow    = decMaxThresholdMatrixNow;
                        clsInvAdjustmentDetails.Remarks            = txtRemarks.Text;
                        clsInvAdjustment.Insert(clsInvAdjustmentDetails);

                        if (decQuantityBeforeMatrix > decQuantityNowMatrix)
                        {
                            clsProduct.UpdateInvDetails(int.Parse(cboBranch.SelectedItem.Value), lngProductID, long.Parse(chkMatrixID.Value), decQuantityNowMatrix, decMinThresholdMatrixNow, decMaxThresholdMatrixNow, Products.getPRODUCT_INVENTORY_MOVEMENT_VALUE(PRODUCT_INVENTORY_MOVEMENT.DEDUCT_INVENTORY_ADJUSTMENT), dteChangeDate, "SYS-ADJ" + dteChangeDate.ToString("yyyyMMddHHmmss"), clsDetails.Name);
                        }
                        else if (decQuantityBeforeMatrix < decQuantityNowMatrix)
                        {
                            clsProduct.UpdateInvDetails(int.Parse(cboBranch.SelectedItem.Value), lngProductID, long.Parse(chkMatrixID.Value), decQuantityNowMatrix, decMinThresholdMatrixNow, decMaxThresholdMatrixNow, Products.getPRODUCT_INVENTORY_MOVEMENT_VALUE(PRODUCT_INVENTORY_MOVEMENT.ADD_INVENTORY_ADJUSTMENT), dteChangeDate, "SYS-ADJ" + dteChangeDate.ToString("yyyyMMddHHmmss"), clsDetails.Name);
                        }
                    }
                }
            }
            clsProduct.CommitAndDispose();
        }
Пример #3
0
        private Int64 SaveRecord()
        {
            ProductDetails clsDetails = new ProductDetails();

            clsDetails.ProductCode               = txtProductCode.Text;
            clsDetails.BarCode                   = txtBarcode.Text;
            clsDetails.BarCode2                  = txtBarcode2.Text;
            clsDetails.BarCode3                  = txtBarcode3.Text;
            clsDetails.ProductDesc               = txtProductDesc.Text;
            clsDetails.ProductGroupID            = Convert.ToInt64(cboProductGroup.SelectedItem.Value);
            clsDetails.ProductSubGroupID         = Convert.ToInt64(cboProductSubGroup.SelectedItem.Value);
            clsDetails.BaseUnitID                = Convert.ToInt32(cboProductUnit.SelectedItem.Value);
            clsDetails.Price                     = Convert.ToDecimal(txtProductPrice.Text);
            clsDetails.WSPrice                   = Convert.ToDecimal(txtWSPrice.Text);
            clsDetails.PurchasePrice             = Convert.ToDecimal(txtPurchasePrice.Text);
            clsDetails.PercentageCommision       = Convert.ToDecimal(txtPercentageCommision.Text);
            clsDetails.IncludeInSubtotalDiscount = chkIncludeInSubtotalDiscount.Checked;
            clsDetails.VAT          = Convert.ToDecimal(txtVAT.Text);
            clsDetails.EVAT         = Convert.ToDecimal(txtEVAT.Text);
            clsDetails.LocalTax     = Convert.ToDecimal(txtLocalTax.Text);
            clsDetails.Quantity     = Convert.ToDecimal(txtQuantity.Text);
            clsDetails.MinThreshold = Convert.ToDecimal(txtMinThreshold.Text);
            clsDetails.MaxThreshold = Convert.ToDecimal(txtMaxThreshold.Text);
            clsDetails.SupplierID   = Convert.ToInt64(cboSupplier.SelectedItem.Value);
            clsDetails.IsItemSold   = Convert.ToBoolean(chkIsItemSold.Checked);
            clsDetails.WillPrintProductComposition = Convert.ToBoolean(chkWillPrintProductComposition.Checked);

            Products clsProduct = new Products();
            Int64    id         = clsProduct.Insert(clsDetails);

            clsDetails.ProductID = id;

            long lngUID = long.Parse(Session["UID"].ToString());
            InvAdjustmentDetails clsInvAdjustmentDetails = new InvAdjustmentDetails();

            clsInvAdjustmentDetails.UID = lngUID;
            clsInvAdjustmentDetails.InvAdjustmentDate  = DateTime.Now;
            clsInvAdjustmentDetails.ProductID          = id;
            clsInvAdjustmentDetails.ProductCode        = clsDetails.ProductCode;
            clsInvAdjustmentDetails.Description        = clsDetails.ProductDesc;
            clsInvAdjustmentDetails.VariationMatrixID  = 0;
            clsInvAdjustmentDetails.MatrixDescription  = null;
            clsInvAdjustmentDetails.UnitID             = clsDetails.BaseUnitID;
            clsInvAdjustmentDetails.UnitCode           = cboProductUnit.SelectedItem.Text;
            clsInvAdjustmentDetails.QuantityBefore     = 0;
            clsInvAdjustmentDetails.QuantityNow        = clsDetails.Quantity;
            clsInvAdjustmentDetails.MinThresholdBefore = 0;
            clsInvAdjustmentDetails.MinThresholdNow    = clsDetails.MinThreshold;
            clsInvAdjustmentDetails.MaxThresholdBefore = 0;
            clsInvAdjustmentDetails.MaxThresholdNow    = clsDetails.MaxThreshold;
            clsInvAdjustmentDetails.Remarks            = "newly added. beginning balance.";

            InvAdjustment clsInvAdjustment = new InvAdjustment(clsProduct.Connection, clsProduct.Transaction);

            clsInvAdjustment.Insert(clsInvAdjustmentDetails);

            if (chkVariations.Checked == true)
            {
                clsProduct.InheritSubGroupVariations(clsDetails.ProductSubGroupID, clsDetails.ProductID);
            }

            if (chkVariationsMatrix.Checked == true)
            {
                if (chkVariations.Checked == false)
                {
                    clsProduct.InheritSubGroupVariations(clsDetails.ProductSubGroupID, clsDetails.ProductID);
                }
                clsProduct.InheritSubGroupVariationsMatrix(clsDetails.ProductSubGroupID, clsDetails.ProductID, clsDetails);
            }
            if (chkUnitMatrix.Checked == true)
            {
                clsProduct.InheritSubGroupUnitMatrix(clsDetails.ProductSubGroupID, clsDetails.ProductID);
            }

            // Aug 26, 2011 : Lemu
            // Update Required Inventory Days (RID)
            clsDetails.RID = Convert.ToInt64(txtRID.Text);
            clsProduct.UpdateRID(clsDetails.ProductID, clsDetails.RID);

            clsProduct.CommitAndDispose();

            return(0);
        }