Beispiel #1
0
		private void LoadItems()
		{
			BranchTransferItem clsBranchTransferItem = new BranchTransferItem();
			lstItem.DataSource = clsBranchTransferItem.ListAsDataTable(Convert.ToInt64(lblBranchTransferID.Text), "BranchTransferItemID",SortOption.Ascending).DefaultView;
			lstItem.DataBind();
			clsBranchTransferItem.CommitAndDispose();
		}
Beispiel #2
0
		private void SetDataSource(ReportDocument Report)
		{
            Int64 iID = 0;
            try
            {
                if (Request.QueryString["task"].ToString().ToLower() == "reportfromposted" && Request.QueryString["branchtransferid"].ToString() != null)
                { iID = Convert.ToInt64(Request.QueryString["branchtransferid"].ToString()); }
                else
                { iID = Convert.ToInt64(Common.Decrypt(Request.QueryString["branchtransferid"].ToString(), Session.SessionID)); }
            }
            catch { iID = Convert.ToInt64(Common.Decrypt(lblReferrer.Text.Substring(lblReferrer.Text.IndexOf("branchtransferid") + 13), Session.SessionID)); }

			ReportDataset rptds = new ReportDataset();

            BranchTransfer clsBranchTransfer = new BranchTransfer();
			System.Data.DataTable dt = clsBranchTransfer.ListAsDataTable(iID);
            BranchTransferItem clsBranchTransferItem = new BranchTransferItem(clsBranchTransfer.Connection, clsBranchTransfer.Transaction);
            System.Data.DataTable dtitems = clsBranchTransferItem.ListAsDataTable(iID);
            clsBranchTransfer.CommitAndDispose();

            foreach (System.Data.DataRow dr in dt.Rows)
			{
				DataRow drNew = rptds.BranchTransfer.NewRow();

                foreach (DataColumn dc in rptds.BranchTransfer.Columns)
					drNew[dc] = dr[dc.ColumnName];

                rptds.BranchTransfer.Rows.Add(drNew);
			}

            foreach (System.Data.DataRow dr in dtitems.Rows)
			{
				DataRow drNew = rptds.BranchTransferItems.NewRow();

                foreach (DataColumn dc in rptds.BranchTransferItems.Columns)
					drNew[dc] = dr[dc.ColumnName];

                rptds.BranchTransferItems.Rows.Add(drNew);
			}
            
			Report.SetDataSource(rptds); 
			SetParameters(Report);
		}
Beispiel #3
0
		private void AddItemToInventory(long BranchTransferID)
		{

			BranchTransferDetails clsBranchTransferDetails = Details(BranchTransferID);
            ERPConfig clsERPConfig = new ERPConfig(base.Connection, base.Transaction);
			ERPConfigDetails clsERPConfigDetails = clsERPConfig.Details();

			BranchTransferItem clsBranchTransferItem = new BranchTransferItem(base.Connection, base.Transaction);
            ProductUnit clsProductUnit = new ProductUnit(base.Connection, base.Transaction);
            Products clsProduct = new Products(base.Connection, base.Transaction);

            Inventory clsInventory = new Inventory(base.Connection, base.Transaction);
            InventoryDetails clsInventoryDetails;

			System.Data.DataTable dt = clsBranchTransferItem.ListAsDataTable(BranchTransferID, "BranchTransferItemID", SortOption.Ascending);

            foreach (System.Data.DataRow dr in dt.Rows)
			{
				long lngProductID = Int64.Parse(dr["ProductID"].ToString());
				int intProductUnitID = Int16.Parse(dr["ProductUnitID"].ToString());

				decimal decItemQuantity = decimal.Parse(dr["Quantity"].ToString());
                decimal decQuantity = clsProductUnit.GetBaseUnitValue(lngProductID, intProductUnitID, decItemQuantity);
				
				long lngVariationMatrixID = Int64.Parse(dr["VariationMatrixID"].ToString());
				string strMatrixDescription = "" + dr["MatrixDescription"].ToString();
				string strProductCode = "" + dr["ProductCode"].ToString();
                string strProductUnitCode = "" + dr["ProductUnitCode"].ToString();
				decimal decUnitCost = decimal.Parse(dr["UnitCost"].ToString());
				decimal decItemCost = decimal.Parse(dr["Amount"].ToString());
                decimal decVAT = decimal.Parse(dr["VAT"].ToString());

				/*******************************************
				 * Subtract BranchIDFrom then Add to BranchIDTo -- Inventory
				 * ****************************************/
                clsProduct.SubtractQuantity(clsBranchTransferDetails.BranchIDFrom, lngProductID, lngVariationMatrixID, decQuantity, Products.getPRODUCT_INVENTORY_MOVEMENT_VALUE(PRODUCT_INVENTORY_MOVEMENT.DEDUCT_BRANCH_TRANSFER_FROM) + " " + clsBranchTransferDetails.BranchCodeFrom + " @ " + decUnitCost.ToString("#,##0.#0") + "/" + strProductUnitCode, DateTime.Now, clsBranchTransferDetails.BranchTransferNo, clsBranchTransferDetails.TransferrerName);
                clsProduct.AddQuantity(clsBranchTransferDetails.BranchIDTo, lngProductID, lngVariationMatrixID, decQuantity, Products.getPRODUCT_INVENTORY_MOVEMENT_VALUE(PRODUCT_INVENTORY_MOVEMENT.ADD_BRANCH_TRANSFER_TO) + " " + clsBranchTransferDetails.BranchCodeTo + " @ " + decUnitCost.ToString("#,##0.#0") + "/" + strProductUnitCode, DateTime.Now, clsBranchTransferDetails.BranchTransferNo, clsBranchTransferDetails.TransferrerName);

				/*******************************************
				 * Add to Inventory Analysis
				 * ****************************************/
				clsInventoryDetails = new InventoryDetails();
				clsInventoryDetails.PostingDateFrom = clsERPConfigDetails.PostingDateFrom;
				clsInventoryDetails.PostingDateTo = clsERPConfigDetails.PostingDateTo;
				clsInventoryDetails.PostingDate = clsBranchTransferDetails.DeliveryDate;
				clsInventoryDetails.ReferenceNo = clsBranchTransferDetails.BranchTransferNo;
				clsInventoryDetails.ContactID = Constants.C_RETAILPLUS_SUPPLIERID;
                clsInventoryDetails.ContactCode = Constants.C_RETAILPLUS_SUPPLIER;
                clsInventoryDetails.ProductID = lngProductID;
                clsInventoryDetails.ProductCode = strProductCode;
                clsInventoryDetails.VariationMatrixID = lngVariationMatrixID;
                clsInventoryDetails.MatrixDescription = strMatrixDescription;
				
                clsInventoryDetails.PurchaseCost = decItemCost - decVAT;
                clsInventoryDetails.PurchaseVAT = decItemCost;	// Purchase Cost with VAT

                // insert into branchid from with minus quantity
                clsInventoryDetails.BranchID = clsBranchTransferDetails.BranchIDFrom;
                clsInventoryDetails.PurchaseQuantity = -decQuantity;
                clsInventory.Insert(clsInventoryDetails);

                // insert into branchid to with add quantity
                clsInventoryDetails.BranchID = clsBranchTransferDetails.BranchIDTo;
                clsInventoryDetails.PurchaseQuantity = decQuantity;
                clsInventory.Insert(clsInventoryDetails);

			}

		}
Beispiel #4
0
		public void Cancel(long BranchTransferID, DateTime CancelledDate, string Remarks, long CancelledByID)
		{
			try 
			{
                MySqlCommand cmd = new MySqlCommand();
                cmd.CommandType = System.Data.CommandType.Text;

				string SQL=	"UPDATE tblBranchTransfer SET " + 
								"CancelledDate			=	@CancelledDate, " +
								"CancelledRemarks		=	@CancelledRemarks, " +
								"CancelledByID			=	@CancelledByID, " +
								"Status				    =	@Status " +
							"WHERE BranchTransferID = @BranchTransferID;";

                cmd.Parameters.AddWithValue("@CancelledDate", CancelledDate.ToString("yyyy-MM-dd HH:mm:ss"));
                cmd.Parameters.AddWithValue("@CancelledRemarks", Remarks);
                cmd.Parameters.AddWithValue("@CancelledByID", CancelledByID);
                cmd.Parameters.AddWithValue("@Status", BranchTransferStatus.Cancelled.ToString("d"));
                cmd.Parameters.AddWithValue("@BranchTransferID", BranchTransferID);

                cmd.CommandText = SQL;
				base.ExecuteNonQuery(cmd);

				/*******************************************
				 * Update the status of items
				 * ****************************************/
				BranchTransferItem clsBranchTransferItem = new BranchTransferItem(base.Connection, base.Transaction);
				clsBranchTransferItem.Cancel(BranchTransferID);

			}

			catch (Exception ex)
			{
				throw base.ThrowException(ex);
			}	
		}
Beispiel #5
0
		public void IssueGRN(long BranchTransferID, string ReceivedBy, DateTime DeliveryDate)
		{
			try 
			{
                MySqlCommand cmd = new MySqlCommand();
                cmd.CommandType = System.Data.CommandType.Text;

				string SQL=	"UPDATE tblBranchTransfer SET " + 
								"ReceivedBy			    =	@ReceivedBy, " +
								"DeliveryDate			=	@DeliveryDate, " +
								"Status				    =	@Status " +
							"WHERE BranchTransferID = @BranchTransferID;";
				  
                cmd.Parameters.AddWithValue("@ReceivedBy", ReceivedBy);
                cmd.Parameters.AddWithValue("@DeliveryDate", DeliveryDate.ToString("yyyy-MM-dd HH:mm:ss"));
                cmd.Parameters.AddWithValue("@Status", BranchTransferStatus.Posted.ToString("d"));
                cmd.Parameters.AddWithValue("@BranchTransferID", BranchTransferID);

                cmd.CommandText = SQL;
				base.ExecuteNonQuery(cmd);

				/*******************************************
				 * Update the status of items
				 * ****************************************/
				BranchTransferItem clsBranchTransferItem = new BranchTransferItem(base.Connection, base.Transaction);
				clsBranchTransferItem.Post(BranchTransferID);

				/*******************************************
				 * Update Vendor Account
				 * ****************************************/
				AddItemToInventory(BranchTransferID);

                /*******************************************
				 * Update Account Balance
				 * ****************************************/
                UpdateAccounts(BranchTransferID);

                /*******************************************
				 * Update Required Inventory Days (RID)
				 * ****************************************/
                UpdateRID(BranchTransferID);
			}
			catch (Exception ex)
			{
				throw base.ThrowException(ex);
			}	
		}
Beispiel #6
0
		private void LoadItems()
		{
			DataClass clsDataClass = new DataClass();

			BranchTransferItem clsBranchTransferItem = new BranchTransferItem();
            lstItem.DataSource = clsBranchTransferItem.ListAsDataTable(Convert.ToInt64(lblBranchTransferID.Text)).DefaultView;
			lstItem.DataBind();
			clsBranchTransferItem.CommitAndDispose();
		}
Beispiel #7
0
        private void LoadItem(string stID)
        {
            BranchTransferItem clsBranchTransferItem = new BranchTransferItem();
            BranchTransferItemDetails clsBranchTransferItemDetails = clsBranchTransferItem.Details(Convert.ToInt64(stID));
            clsBranchTransferItem.CommitAndDispose();

            cboProductCode.Items.Clear();
            cboVariation.Items.Clear();
            cboProductUnit.Items.Clear();

            txtProductCode.Text = clsBranchTransferItemDetails.BarCode;
            cmdProductCode_Click(null, null);

            cboProductCode.SelectedIndex = cboProductCode.Items.IndexOf(new ListItem(clsBranchTransferItemDetails.ProductCode, clsBranchTransferItemDetails.ProductID.ToString()));

            if (clsBranchTransferItemDetails.VariationMatrixID == 0)
            { cboVariation.Items.Add(new ListItem("No Variation", "0")); cboVariation.SelectedIndex = 0; }
            else
            { cboVariation.SelectedIndex = cboVariation.Items.IndexOf(new ListItem(clsBranchTransferItemDetails.MatrixDescription, clsBranchTransferItemDetails.VariationMatrixID.ToString())); }

            if (clsBranchTransferItemDetails.ProductUnitID == 0)
            { cboProductUnit.Items.Add(new ListItem("No Unit", "0")); cboProductUnit.SelectedIndex = 0; }
            else
            { cboProductUnit.SelectedIndex = cboProductUnit.Items.IndexOf(new ListItem(clsBranchTransferItemDetails.ProductUnitCode, clsBranchTransferItemDetails.ProductUnitID.ToString()));}

            txtQuantity.Text = clsBranchTransferItemDetails.Quantity.ToString("###0.#0");
            txtPrice.Text = clsBranchTransferItemDetails.UnitCost.ToString("###0.#0");
            txtDiscount.Text = clsBranchTransferItemDetails.Discount.ToString("###0.#0");

            if (clsBranchTransferItemDetails.DiscountType == DiscountTypes.Percentage)
                chkInPercent.Checked = true;
            else
            {
                chkInPercent.Checked = false;
            }
            txtAmount.Text = clsBranchTransferItemDetails.Amount.ToString("###0.#0");
            txtRemarks.Text = clsBranchTransferItemDetails.Remarks;
            lblBranchTransferItemID.Text = stID;
            chkIsTaxable.Checked = clsBranchTransferItemDetails.IsVatable;

            //Added Jan 1, 2010 4:20PM : For selling information
            txtSellingQuantity.Text = "1";
            txtMargin.Text = decimal.Parse(Convert.ToString(((clsBranchTransferItemDetails.SellingPrice - clsBranchTransferItemDetails.UnitCost) / clsBranchTransferItemDetails.UnitCost) * 100)).ToString("###0.#0");
            txtSellingPrice.Text = clsBranchTransferItemDetails.SellingPrice.ToString("###0.#0");
            txtVAT.Text = clsBranchTransferItemDetails.SellingVAT.ToString("###0.#0");
            txtEVAT.Text = clsBranchTransferItemDetails.SellingEVAT.ToString("###0.#0");
            txtLocalTax.Text = clsBranchTransferItemDetails.SellingLocalTax.ToString("###0.#0");
            txtOldSellingPrice.Text = clsBranchTransferItemDetails.OldSellingPrice.ToString("###0.#0");

            txtProductCode.Focus();
            ShowCommandButtons(true);
        }
Beispiel #8
0
		private bool DeleteItems()
		{
			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)
			{
				BranchTransferItem clsBranchTransferItem = new BranchTransferItem();
				clsBranchTransferItem.Delete( stIDs.Substring(0,stIDs.Length-1));

				BranchTransfer clsBranchTransfer = new BranchTransfer(clsBranchTransferItem.Connection, clsBranchTransferItem.Transaction);
				clsBranchTransfer.SynchronizeAmount(Convert.ToInt64(lblBranchTransferID.Text));

				BranchTransferDetails clsBranchTransferDetails = clsBranchTransfer.Details(Convert.ToInt64(lblBranchTransferID.Text));

				clsBranchTransferItem.CommitAndDispose();

                UpdateFooter(clsBranchTransferDetails);
			}

			return boRetValue;
		}
Beispiel #9
0
		private void SaveRecord()
		{
			BranchTransferItemDetails clsDetails = new BranchTransferItemDetails();

			Products clsProducts = new Products();
            ProductDetails clsProductDetails = clsProducts.Details1(Constants.BRANCH_ID_MAIN, Convert.ToInt64(cboProductCode.SelectedItem.Value));
			
			Terminal clsTerminal = new Terminal(clsProducts.Connection, clsProducts.Transaction);
            TerminalDetails clsTerminalDetails = clsTerminal.Details(Int32.Parse(Session["BranchID"].ToString()), Session["TerminalNo"].ToString());
			clsProducts.CommitAndDispose();

			clsDetails.BranchTransferID = Convert.ToInt64(lblBranchTransferID.Text);
			clsDetails.ProductID = Convert.ToInt64(cboProductCode.SelectedItem.Value);
			clsDetails.ProductCode = clsProductDetails.ProductCode;
			clsDetails.BarCode = clsProductDetails.BarCode;
			clsDetails.Description = clsProductDetails.ProductDesc;
			clsDetails.ProductUnitID = Convert.ToInt32(cboProductUnit.SelectedItem.Value);
			clsDetails.ProductUnitCode = cboProductUnit.SelectedItem.Text;
			clsDetails.Quantity = Convert.ToDecimal(txtQuantity.Text);
            clsDetails.UnitCost = Convert.ToDecimal(txtPrice.Text);
            clsDetails.Discount = getItemTotalDiscount();
            clsDetails.DiscountApplied = Convert.ToDecimal(txtDiscount.Text);
            if (clsDetails.DiscountApplied == 0)
            {
                if (chkInPercent.Checked == true)
                    clsDetails.DiscountType = DiscountTypes.Percentage;
                else
                    clsDetails.DiscountType = DiscountTypes.FixedValue;
            }
            else {
                clsDetails.DiscountType = DiscountTypes.NotApplicable;
            }

            clsDetails.IsVatable = chkIsTaxable.Checked;
            clsDetails.Amount = ComputeItemAmount();

            if (clsDetails.IsVatable)
            {
                clsDetails.VatableAmount = clsDetails.Amount;
                clsDetails.EVatableAmount = clsDetails.Amount;
                clsDetails.LocalTax = clsDetails.Amount;

                if (clsTerminalDetails.IsVATInclusive == false)
                {
                    if (clsDetails.VatableAmount < clsDetails.Discount) clsDetails.VatableAmount = 0;
                    if (clsDetails.EVatableAmount < clsDetails.Discount) clsDetails.EVatableAmount = 0;
                    if (clsDetails.LocalTax < clsDetails.Discount) clsDetails.LocalTax = 0;
                }
                else
                {
                    if (clsDetails.VatableAmount >= clsDetails.Discount) clsDetails.VatableAmount = (clsDetails.VatableAmount) / (1 + (clsTerminalDetails.VAT / 100)); else clsDetails.VatableAmount = 0;
                    if (clsDetails.EVatableAmount >= clsDetails.Discount) clsDetails.EVatableAmount = (clsDetails.EVatableAmount) / (1 + (clsTerminalDetails.VAT / 100)); else clsDetails.EVatableAmount = 0;
                    if (clsDetails.LocalTax >= clsDetails.Discount) clsDetails.LocalTax = (clsDetails.LocalTax) / (1 + (clsTerminalDetails.LocalTax / 100)); else clsDetails.LocalTax = 0;
                }

                clsDetails.VAT = clsDetails.VatableAmount * (clsTerminalDetails.VAT / 100);
                clsDetails.EVAT = clsDetails.EVatableAmount * (clsTerminalDetails.EVAT / 100);
                clsDetails.LocalTax = clsDetails.LocalTax * (clsTerminalDetails.LocalTax / 100);
            }
            else
            {
                clsDetails.VAT = 0;
                clsDetails.VatableAmount = 0;
                clsDetails.EVAT = 0;
                clsDetails.EVatableAmount = 0;
                clsDetails.LocalTax = 0;
            }

            clsDetails.isVATInclusive = clsTerminalDetails.IsVATInclusive;
            clsDetails.VariationMatrixID = Convert.ToInt64(cboVariation.SelectedItem.Value);
            if (clsDetails.VariationMatrixID != 0)
                clsDetails.MatrixDescription = cboVariation.SelectedItem.Text;
            clsDetails.ProductGroup = clsProductDetails.ProductGroupCode;
            clsDetails.ProductSubGroup = clsProductDetails.ProductSubGroupCode;
            clsDetails.Remarks = txtRemarks.Text;
            
            clsDetails.SellingPrice = decimal.Parse(txtSellingPrice.Text);
            clsDetails.SellingVAT = decimal.Parse(txtVAT.Text);
            clsDetails.SellingEVAT = decimal.Parse(txtEVAT.Text);
            clsDetails.SellingLocalTax = decimal.Parse(txtLocalTax.Text);
            clsDetails.OldSellingPrice = decimal.Parse(txtOldSellingPrice.Text);

            BranchTransferItem clsBranchTransferItem = new BranchTransferItem();
            if (lblBranchTransferItemID.Text != "0")
            {
                clsDetails.BranchTransferItemID = Convert.ToInt64(lblBranchTransferItemID.Text);
                clsBranchTransferItem.Update(clsDetails);
            }
            else
                clsBranchTransferItem.Insert(clsDetails);

            BranchTransferDetails clsBranchTransferDetails = new BranchTransferDetails();
            clsBranchTransferDetails.BranchTransferID = clsDetails.BranchTransferID;
            clsBranchTransferDetails.DiscountApplied = Convert.ToDecimal(txtBranchTransferDiscountApplied.Text);
            clsBranchTransferDetails.DiscountType = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), cboBranchTransferDiscountType.SelectedItem.Value);

            BranchTransfer clsBranchTransfer = new BranchTransfer(clsBranchTransferItem.Connection, clsBranchTransferItem.Transaction);
            clsBranchTransfer.UpdateDiscount(clsDetails.BranchTransferID, clsBranchTransferDetails.DiscountApplied, clsBranchTransferDetails.DiscountType);
            
            clsBranchTransferDetails = clsBranchTransfer.Details(clsDetails.BranchTransferID);
            clsBranchTransferItem.CommitAndDispose();

            UpdateFooter(clsBranchTransferDetails);
		}