예제 #1
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)
            {
                SOReturnItems clsSOReturnItems = new SOReturnItems();
                clsSOReturnItems.Delete(stIDs.Substring(0, stIDs.Length - 1));

                SOReturns clsSOReturns = new SOReturns(clsSOReturnItems.Connection, clsSOReturnItems.Transaction);
                clsSOReturns.SynchronizeAmount(Convert.ToInt64(lblCreditMemoID.Text));

                SOReturnDetails clsSOReturnDetails = clsSOReturns.Details(Convert.ToInt64(lblCreditMemoID.Text));
                clsSOReturnItems.CommitAndDispose();

                UpdateFooter(clsSOReturnDetails);
            }

            return(boRetValue);
        }
예제 #2
0
        private void Post()
        {
            DateTime DeliveryDate = Convert.ToDateTime(txtPostDate.Text);

            ERPConfig        clsERPConfig        = new ERPConfig();
            ERPConfigDetails clsERPConfigDetails = clsERPConfig.Details();

            clsERPConfig.CommitAndDispose();

            if (clsERPConfigDetails.PostingDateFrom <= DeliveryDate && clsERPConfigDetails.PostingDateTo >= DeliveryDate)
            {
                long   CreditMemoID  = Convert.ToInt64(lblCreditMemoID.Text);
                string CustomerDocNo = txtCustomerDocNo.Text;

                SOReturns clsSOReturns = new SOReturns();
                clsSOReturns.Post(CreditMemoID, CustomerDocNo, DeliveryDate);
                clsSOReturns.CommitAndDispose();

                Common Common  = new Common();
                string stParam = "?task=" + Common.Encrypt("list", Session.SessionID) + "&retid=" + Common.Encrypt(CreditMemoID.ToString(), Session.SessionID);
                Response.Redirect("Default.aspx" + stParam);
            }
            else
            {
                string stScript = "<Script>";
                stScript += "window.alert('Sorry you cannot post using the delivery date: " + txtPostDate.Text + ". Please enter an allowable posting date.')";
                stScript += "</Script>";
                Response.Write(stScript);
            }
        }
예제 #3
0
        private void SetDataSource(ReportDocument Report)
        {
            long iID = 0;

            try
            {
                if (Request.QueryString["task"].ToString().ToLower() == "reportfromposted" && Request.QueryString["retid"].ToString() != null)
                {
                    iID = Convert.ToInt64(Request.QueryString["retid"].ToString());
                }
                else
                {
                    iID = Convert.ToInt64(Common.Decrypt(Request.QueryString["retid"].ToString(), Session.SessionID));
                }
                lblReferrer.ToolTip = iID.ToString();
            }
            catch { iID = long.Parse(lblReferrer.ToolTip); }

            ReportDataset rptds = new ReportDataset();

            SOReturns       clsSOReturns = new SOReturns();
            MySqlDataReader myreader     = clsSOReturns.List(iID, "CreditMemoID", SortOption.Ascending);

            while (myreader.Read())
            {
                DataRow drNew = rptds.SOReturns.NewRow();

                foreach (DataColumn dc in rptds.SOReturns.Columns)
                {
                    drNew[dc] = "" + myreader[dc.ColumnName];
                }

                rptds.SOReturns.Rows.Add(drNew);
            }
            myreader.Close();


            SOReturnItems clsSOReturnItems = new SOReturnItems(clsSOReturns.Connection, clsSOReturns.Transaction);

            System.Data.DataTable dt = clsSOReturnItems.ListAsDataTable(iID);
            foreach (System.Data.DataRow dr in dt.Rows)
            {
                DataRow drNew = rptds.SOReturnItems.NewRow();

                foreach (DataColumn dc in rptds.SOReturnItems.Columns)
                {
                    drNew[dc] = "" + dr[dc.ColumnName];
                }

                rptds.SOReturnItems.Rows.Add(drNew);
            }
            clsSOReturns.CommitAndDispose();

            Report.SetDataSource(rptds);
            SetParameters(Report);
        }
예제 #4
0
		private void CancelSOReturn()
		{
			long CreditMemoID = Convert.ToInt64(lblCreditMemoID.Text);
			string Remarks = txtRemarks.Text;

            SOReturns clsSOReturns = new SOReturns();
            clsSOReturns.Cancel(CreditMemoID, DateTime.Now, Remarks, Convert.ToInt64(Session["UID"].ToString()));
            clsSOReturns.CommitAndDispose();

			Common Common = new Common();
			Response.Redirect("Default.aspx?task=" + Common.Encrypt("list",Session.SessionID));		
		}
예제 #5
0
        private void UpdateDeposit()
        {
            SOReturnDetails clsSOReturnDetails = new SOReturnDetails();

            clsSOReturnDetails.CreditMemoID = Convert.ToInt64(lblCreditMemoID.Text);
            clsSOReturnDetails.Deposit      = Convert.ToDecimal(txtSODeposit.Text);

            SOReturns clsSOReturns = new SOReturns();

            clsSOReturns.UpdateDeposit(clsSOReturnDetails.CreditMemoID, clsSOReturnDetails.Deposit);
            clsSOReturns.SynchronizeAmount(clsSOReturnDetails.CreditMemoID);
            clsSOReturnDetails = clsSOReturns.Details(clsSOReturnDetails.CreditMemoID);
            clsSOReturns.CommitAndDispose();

            UpdateFooter(clsSOReturnDetails);
        }
예제 #6
0
        private void UpdateSODiscount()
        {
            SOReturnDetails clsSOReturnDetails = new SOReturnDetails();

            clsSOReturnDetails.CreditMemoID    = Convert.ToInt64(lblCreditMemoID.Text);
            clsSOReturnDetails.DiscountApplied = Convert.ToDecimal(txtSODiscountApplied.Text);
            clsSOReturnDetails.DiscountType    = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), cboSODiscountType.SelectedItem.Value);

            SOReturns clsSOReturns = new SOReturns();

            clsSOReturns.UpdateDiscount(clsSOReturnDetails.CreditMemoID, clsSOReturnDetails.DiscountApplied, clsSOReturnDetails.DiscountType);
            clsSOReturns.SynchronizeAmount(Convert.ToInt64(lblCreditMemoID.Text));
            clsSOReturnDetails = clsSOReturns.Details(Convert.ToInt64(lblCreditMemoID.Text));
            clsSOReturns.CommitAndDispose();

            UpdateFooter(clsSOReturnDetails);
        }
예제 #7
0
        private void LoadRecord()
        {
            Common          Common       = new Common();
            Int64           iID          = Convert.ToInt64(Common.Decrypt(Request.QueryString["retid"], Session.SessionID));
            SOReturns       clsSOReturns = new SOReturns();
            SOReturnDetails clsDetails   = clsSOReturns.Details(iID);

            clsSOReturns.CommitAndDispose();

            lblCreditMemoID.Text       = clsDetails.CreditMemoID.ToString();
            lblReturnNo.Text           = clsDetails.CNNo;
            lblReturnDate.Text         = clsDetails.CNDate.ToString("yyyy-MM-dd HH:mm:ss");
            lblRequiredReturnDate.Text = clsDetails.RequiredPostingDate.ToString("yyyy-MM-dd");
            lblCustomerID.Text         = clsDetails.CustomerID.ToString();

            lblCustomerCode.Text = clsDetails.CustomerCode.ToString();
            string stParam = "?task=" + Common.Encrypt("details", Session.SessionID) + "&id=" + Common.Encrypt(clsDetails.CustomerID.ToString(), Session.SessionID);

            lblCustomerCode.NavigateUrl = Constants.ROOT_DIRECTORY + "/SalesAndReceivables/_Customer/Default.aspx" + stParam;

            lblCustomerContact.Text     = clsDetails.CustomerContact;
            lblCustomerTelephoneNo.Text = clsDetails.CustomerTelephoneNo;
            lblTerms.Text = clsDetails.CustomerTerms.ToString("##0");
            switch (clsDetails.CustomerModeOfTerms)
            {
            case 0:
                lblModeOfterms.Text = "Days";
                break;

            case 1:
                lblModeOfterms.Text = "Months";
                break;

            case 2:
                lblModeOfterms.Text = "Years";
                break;
            }
            lblCustomerAddress.Text = clsDetails.CustomerAddress;
            lblBranchID.Text        = clsDetails.BranchID.ToString();
            lblBranchCode.Text      = clsDetails.BranchCode;
            lblBranchAddress.Text   = clsDetails.BranchAddress;
            lblReturnRemarks.Text   = clsDetails.Remarks;

            UpdateFooter(clsDetails);
        }
예제 #8
0
        private long SaveRecord()
        {
            SOReturns clsSOReturns = new SOReturns();

            clsSOReturns.GetConnection();
            lblReturnNo.Text = Constants.SALES_RETURN_CODE + CompanyDetails.BECompanyCode + DateTime.Now.Year.ToString() + clsSOReturns.LastTransactionNo();

            SOReturnDetails clsDetails = new SOReturnDetails();

            clsDetails.CNNo                = lblReturnNo.Text;
            clsDetails.CNDate              = Convert.ToDateTime(lblReturnDate.Text);
            clsDetails.CustomerID          = Convert.ToInt64(cboCustomer.SelectedItem.Value);
            clsDetails.CustomerCode        = cboCustomer.SelectedItem.Text;
            clsDetails.CustomerContact     = txtCustomerContact.Text;
            clsDetails.CustomerAddress     = txtCustomerAddress.Text;
            clsDetails.CustomerTelephoneNo = txtCustomerTelephoneNo.Text;
            clsDetails.CustomerTerms       = Convert.ToInt32(lblTerms.Text);
            switch (lblModeOfterms.Text)
            {
            case "Days":
                clsDetails.CustomerModeOfTerms = 0;
                break;

            case "Months":
                clsDetails.CustomerModeOfTerms = 1;
                break;

            case "Years":
                clsDetails.CustomerModeOfTerms = 2;
                break;
            }
            clsDetails.RequiredPostingDate = Convert.ToDateTime(txtRequiredReturnDate.Text);
            clsDetails.BranchID            = Convert.ToInt16(cboBranch.SelectedItem.Value);
            clsDetails.SellerID            = Convert.ToInt64(Session["UID"].ToString());
            clsDetails.SellerName          = Session["Name"].ToString();
            clsDetails.ReturnStatus        = SOReturnStatus.Open;
            clsDetails.Remarks             = txtRemarks.Text;

            long id = clsSOReturns.Insert(clsDetails);

            clsSOReturns.CommitAndDispose();

            return(id);
        }
예제 #9
0
        private void SaveRecord()
        {
            SOReturnDetails clsDetails = new SOReturnDetails();

            clsDetails.CreditMemoID        = Convert.ToInt64(lblCreditMemoID.Text);
            clsDetails.CNNo                = lnkReturnNo.Text;
            clsDetails.CNDate              = Convert.ToDateTime(lblReturnDate.Text);
            clsDetails.CustomerID          = Convert.ToInt64(cboCustomer.SelectedItem.Value);
            clsDetails.CustomerCode        = cboCustomer.SelectedItem.Text;
            clsDetails.CustomerContact     = txtCustomerContact.Text;
            clsDetails.CustomerAddress     = txtCustomerAddress.Text;
            clsDetails.CustomerTelephoneNo = txtCustomerTelephoneNo.Text;
            switch (lblModeOfterms.Text)
            {
            case "Days":
                clsDetails.CustomerModeOfTerms = 0;
                break;

            case "Months":
                clsDetails.CustomerModeOfTerms = 1;
                break;

            case "Years":
                clsDetails.CustomerModeOfTerms = 2;
                break;
            }
            clsDetails.RequiredPostingDate = Convert.ToDateTime(txtRequiredReturnDate.Text);
            clsDetails.BranchID            = Convert.ToInt16(cboBranch.SelectedItem.Value);
            clsDetails.SellerID            = Convert.ToInt64(Session["UID"].ToString());
            clsDetails.SellerName          = Session["Name"].ToString();
            clsDetails.ReturnStatus        = SOReturnStatus.Open;
            clsDetails.Remarks             = txtRemarks.Text;

            SOReturns clsSOReturns = new SOReturns();

            clsSOReturns.Update(clsDetails);
            clsSOReturns.CommitAndDispose();
        }
예제 #10
0
        private void LoadRecord()
        {
            Common          Common       = new Common();
            Int64           iID          = Convert.ToInt64(Common.Decrypt(Request.QueryString["retid"], Session.SessionID));
            SOReturns       clsSOReturns = new SOReturns();
            SOReturnDetails clsDetails   = clsSOReturns.Details(iID);

            clsSOReturns.CommitAndDispose();

            lblCreditMemoID.Text    = clsDetails.CreditMemoID.ToString();
            lnkReturnNo.Text        = clsDetails.CNNo;
            lnkReturnNo.NavigateUrl = "Default.aspx?task=" + Common.Encrypt("details", Session.SessionID) + "&retid=" + Common.Encrypt(clsDetails.CreditMemoID.ToString(), Session.SessionID);

            lblReturnDate.Text          = clsDetails.CNDate.ToString("yyyy-MM-dd HH:mm:ss");
            txtRequiredReturnDate.Text  = clsDetails.RequiredPostingDate.ToString("yyyy-MM-dd");
            cboCustomer.SelectedIndex   = cboCustomer.Items.IndexOf(cboCustomer.Items.FindByValue(clsDetails.CustomerID.ToString()));
            txtCustomerContact.Text     = clsDetails.CustomerContact;
            txtCustomerTelephoneNo.Text = clsDetails.CustomerTelephoneNo;
            lblTerms.Text = clsDetails.CustomerTerms.ToString("##0");
            switch (clsDetails.CustomerModeOfTerms)
            {
            case 0:
                lblModeOfterms.Text = "Days";
                break;

            case 1:
                lblModeOfterms.Text = "Months";
                break;

            case 2:
                lblModeOfterms.Text = "Years";
                break;
            }
            txtCustomerAddress.Text = clsDetails.CustomerAddress;
            cboBranch.SelectedIndex = cboBranch.Items.IndexOf(cboBranch.Items.FindByValue(clsDetails.BranchID.ToString()));
            txtBranchAddress.Text   = clsDetails.BranchAddress;
            txtRemarks.Text         = clsDetails.Remarks;
        }
예제 #11
0
        private void SaveRecord()
        {
            SOReturnItemDetails clsDetails = new SOReturnItemDetails();

            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.CreditMemoID    = Convert.ToInt64(lblCreditMemoID.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;

            SOReturnItems clsSOReturnItems = new SOReturnItems();

            if (lblCreditMemoItemID.Text != "0")
            {
                clsDetails.CreditMemoItemID = Convert.ToInt64(lblCreditMemoItemID.Text);
                clsSOReturnItems.Update(clsDetails);
            }
            else
            {
                clsSOReturnItems.Insert(clsDetails);
            }

            SOReturns       clsSOReturns       = new SOReturns(clsSOReturnItems.Connection, clsSOReturnItems.Transaction);
            SOReturnDetails clsSOReturnDetails = clsSOReturns.Details(clsDetails.CreditMemoID);

            clsSOReturnItems.CommitAndDispose();

            UpdateFooter(clsSOReturnDetails);
        }
예제 #12
0
        private void LoadList()
        {
            SOReturns clsSOReturns = new SOReturns();
            DataClass clsDataClass = new DataClass();
            Common    Common       = new Common();

            string SortField = "CreditMemoID";

            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 = clsSOReturns.ListAsDataTable(SOReturnStatus.Open, SortField, sortoption).DefaultView;
            }
            else
            {
                string SearchKey = Common.Decrypt((string)Request.QueryString["search"], Session.SessionID);
                PageData.DataSource = clsSOReturns.SearchAsDataTable(SOReturnStatus.Open, SearchKey, SortField, sortoption).DefaultView;
            }

            clsSOReturns.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;
        }
예제 #13
0
        public long Insert(SOReturnItemDetails Details)
        {
            try
            {
                string SQL = "INSERT INTO tblSOCreditMemoItems (" +
                             "CreditMemoID, " +
                             "ProductID, " +
                             "ProductCode, " +
                             "BarCode, " +
                             "Description, " +
                             "ProductUnitID, " +
                             "ProductUnitCode, " +
                             "Quantity, " +
                             "UnitCost, " +
                             "Discount, " +
                             "DiscountApplied, " +
                             "DiscountType, " +
                             "Amount, " +
                             "VAT, " +
                             "VatableAmount, " +
                             "EVAT, " +
                             "EVatableAmount, " +
                             "LocalTax, " +
                             "isVATInclusive, " +
                             "VariationMatrixID, " +
                             "MatrixDescription, " +
                             "ProductGroup, " +
                             "ProductSubGroup, " +
                             "ItemStatus, " +
                             "IsVatable, " +
                             "Remarks, " +
                             "ChartOfAccountIDSold, " +
                             "ChartOfAccountIDTaxSold, " +
                             "ChartOfAccountIDInventory" +
                             ") VALUES (" +
                             "@CreditMemoID, " +
                             "@ProductID, " +
                             "@ProductCode, " +
                             "@BarCode, " +
                             "@Description, " +
                             "@ProductUnitID, " +
                             "@ProductUnitCode, " +
                             "@Quantity, " +
                             "@UnitCost, " +
                             "@Discount, " +
                             "@DiscountApplied, " +
                             "@DiscountType, " +
                             "@Amount, " +
                             "@VAT, " +
                             "@VatableAmount, " +
                             "@EVAT, " +
                             "@EVatableAmount, " +
                             "@LocalTax, " +
                             "@isVATInclusive, " +
                             "@VariationMatrixID, " +
                             "@MatrixDescription, " +
                             "@ProductGroup, " +
                             "@ProductSubGroup, " +
                             "@ItemStatus, " +
                             "@IsVatable, " +
                             "@Remarks, " +
                             "(SELECT ChartOfAccountIDSold FROM tblProducts WHERE ProductID = @ProductID), " +
                             "(SELECT ChartOfAccountIDTaxSold FROM tblProducts WHERE ProductID = @ProductID), " +
                             "(SELECT ChartOfAccountIDInventory FROM tblProducts WHERE ProductID = @ProductID) " +
                             ");";



                MySqlCommand cmd = new MySqlCommand();


                cmd.CommandType = System.Data.CommandType.Text;
                cmd.CommandText = SQL;

                MySqlParameter prmReturnID = new MySqlParameter("@CreditMemoID", MySqlDbType.Int64);
                prmReturnID.Value = Details.CreditMemoID;
                cmd.Parameters.Add(prmReturnID);

                MySqlParameter prmProductID = new MySqlParameter("@ProductID", MySqlDbType.Int64);
                prmProductID.Value = Details.ProductID;
                cmd.Parameters.Add(prmProductID);

                MySqlParameter prmProductCode = new MySqlParameter("@ProductCode", MySqlDbType.String);
                prmProductCode.Value = Details.ProductCode;
                cmd.Parameters.Add(prmProductCode);

                MySqlParameter prmBarCode = new MySqlParameter("@BarCode", MySqlDbType.String);
                prmBarCode.Value = Details.BarCode;
                cmd.Parameters.Add(prmBarCode);

                MySqlParameter prmDescription = new MySqlParameter("@Description", MySqlDbType.String);
                prmDescription.Value = Details.Description;
                cmd.Parameters.Add(prmDescription);

                MySqlParameter prmProductUnitID = new MySqlParameter("@ProductUnitID", MySqlDbType.Int16);
                prmProductUnitID.Value = Details.ProductUnitID;
                cmd.Parameters.Add(prmProductUnitID);

                MySqlParameter prmProductUnitCode = new MySqlParameter("@ProductUnitCode", MySqlDbType.String);
                prmProductUnitCode.Value = Details.ProductUnitCode;
                cmd.Parameters.Add(prmProductUnitCode);

                MySqlParameter prmQuantity = new MySqlParameter("@Quantity", MySqlDbType.Decimal);
                prmQuantity.Value = Details.Quantity;
                cmd.Parameters.Add(prmQuantity);

                MySqlParameter prmUnitCost = new MySqlParameter("@UnitCost", MySqlDbType.Decimal);
                prmUnitCost.Value = Details.UnitCost;
                cmd.Parameters.Add(prmUnitCost);

                MySqlParameter prmDiscount = new MySqlParameter("@Discount", MySqlDbType.Decimal);
                prmDiscount.Value = Details.Discount;
                cmd.Parameters.Add(prmDiscount);

                MySqlParameter prmDiscountApplied = new MySqlParameter("@DiscountApplied", MySqlDbType.Decimal);
                prmDiscountApplied.Value = Details.DiscountApplied;
                cmd.Parameters.Add(prmDiscountApplied);

                MySqlParameter prmDiscountType = new MySqlParameter("@DiscountType", MySqlDbType.Int16);
                prmDiscountType.Value = (int)Details.DiscountType;
                cmd.Parameters.Add(prmDiscountType);

                MySqlParameter prmAmount = new MySqlParameter("@Amount", MySqlDbType.Decimal);
                prmAmount.Value = Details.Amount;
                cmd.Parameters.Add(prmAmount);

                MySqlParameter prmVAT = new MySqlParameter("@VAT", MySqlDbType.Decimal);
                prmVAT.Value = Details.VAT;
                cmd.Parameters.Add(prmVAT);

                MySqlParameter prmVatableAmount = new MySqlParameter("@VatableAmount", MySqlDbType.Decimal);
                prmVatableAmount.Value = Details.VatableAmount;
                cmd.Parameters.Add(prmVatableAmount);

                MySqlParameter prmEVAT = new MySqlParameter("@EVAT", MySqlDbType.Decimal);
                prmEVAT.Value = Details.EVAT;
                cmd.Parameters.Add(prmEVAT);

                MySqlParameter prmEVatableAmount = new MySqlParameter("@EVatableAmount", MySqlDbType.Decimal);
                prmEVatableAmount.Value = Details.EVatableAmount;
                cmd.Parameters.Add(prmEVatableAmount);

                MySqlParameter prmLocalTax = new MySqlParameter("@LocalTax", MySqlDbType.Decimal);
                prmLocalTax.Value = Details.LocalTax;
                cmd.Parameters.Add(prmLocalTax);

                MySqlParameter prmisVATInclusive = new MySqlParameter("@isVATInclusive", MySqlDbType.Int16);
                prmisVATInclusive.Value = Convert.ToInt16(Details.isVATInclusive);
                cmd.Parameters.Add(prmisVATInclusive);

                MySqlParameter prmVariationMatrixID = new MySqlParameter("@VariationMatrixID", MySqlDbType.Int64);
                prmVariationMatrixID.Value = Details.VariationMatrixID;
                cmd.Parameters.Add(prmVariationMatrixID);

                MySqlParameter prmMatrixDescription = new MySqlParameter("@MatrixDescription", MySqlDbType.String);
                prmMatrixDescription.Value = Details.MatrixDescription;
                cmd.Parameters.Add(prmMatrixDescription);

                MySqlParameter prmProductGroup = new MySqlParameter("@ProductGroup", MySqlDbType.String);
                prmProductGroup.Value = Details.ProductGroup;
                cmd.Parameters.Add(prmProductGroup);

                MySqlParameter prmProductSubGroup = new MySqlParameter("@ProductSubGroup", MySqlDbType.String);
                prmProductSubGroup.Value = Details.ProductSubGroup;
                cmd.Parameters.Add(prmProductSubGroup);

                MySqlParameter prmSOReturnItemStatus = new MySqlParameter("@ItemStatus", MySqlDbType.Int16);
                prmSOReturnItemStatus.Value = Details.ItemStatus.ToString("d");
                cmd.Parameters.Add(prmSOReturnItemStatus);

                MySqlParameter prmIsVatable = new MySqlParameter("@IsVatable", MySqlDbType.Int16);
                prmIsVatable.Value = Convert.ToInt16(Details.IsVatable);
                cmd.Parameters.Add(prmIsVatable);

                MySqlParameter prmRemarks = new MySqlParameter("@Remarks", MySqlDbType.String);
                prmRemarks.Value = Details.Remarks;
                cmd.Parameters.Add(prmRemarks);

                base.ExecuteNonQuery(cmd);

                SQL = "SELECT LAST_INSERT_ID();";

                cmd.Parameters.Clear();
                cmd.CommandText = SQL;

                MySqlDataReader myReader = base.ExecuteReader(cmd, System.Data.CommandBehavior.SingleResult);

                Int64 iID = 0;

                while (myReader.Read())
                {
                    iID = myReader.GetInt64(0);
                }

                myReader.Close();

                SOReturns clsSOReturns = new SOReturns(base.Connection, base.Transaction);
                clsSOReturns.SynchronizeAmount(Details.CreditMemoID);

                return(iID);
            }

            catch (Exception ex)
            {
                {
                }

                throw base.ThrowException(ex);
            }
        }
예제 #14
0
        public void Update(SOReturnItemDetails Details)
        {
            try
            {
                string SQL = "UPDATE tblSOCreditMemoItems SET " +
                             "CreditMemoID		    =	@CreditMemoID, "+
                             "ProductID				=	@ProductID, "+
                             "ProductCode			=	@ProductCode, "+
                             "BarCode				=	@BarCode, "+
                             "Description			=	@Description, "+
                             "ProductUnitID			=	@ProductUnitID, "+
                             "ProductUnitCode		=	@ProductUnitCode, "+
                             "Quantity				=	@Quantity, "+
                             "UnitCost				=	@UnitCost, "+
                             "Discount				=	@Discount, "+
                             "DiscountApplied		=	@DiscountApplied, "+
                             "DiscountType			=	@DiscountType, "+
                             "Amount					=	@Amount, "+
                             "VAT					=	@VAT, "+
                             "VatableAmount			=	@VatableAmount, "+
                             "EVAT					=	@EVAT, "+
                             "EVatableAmount			=	@EVatableAmount, "+
                             "LocalTax				=	@LocalTax, "+
                             "isVATInclusive			=	@isVATInclusive, "+
                             "VariationMatrixID		=	@VariationMatrixID, "+
                             "MatrixDescription		=	@MatrixDescription, "+
                             "ProductGroup			=	@ProductGroup, "+
                             "ProductSubGroup		=	@ProductSubGroup, "+
                             "ItemStatus			    =	@ItemStatus, "+
                             "IsVatable				=	@IsVatable, "+
                             "Remarks				=	@Remarks, "+
                             "ChartOfAccountIDSold       = (SELECT ChartOfAccountIDSold FROM tblProducts WHERE ProductID = @ProductID), " +
                             "ChartOfAccountIDTaxSold    = (SELECT ChartOfAccountIDTaxSold FROM tblProducts WHERE ProductID = @ProductID), " +
                             "ChartOfAccountIDInventory  = (SELECT ChartOfAccountIDInventory FROM tblProducts WHERE ProductID = @ProductID) " +
                             "WHERE CreditMemoItemID = @CreditMemoItemID;";



                MySqlCommand cmd = new MySqlCommand();


                cmd.CommandType = System.Data.CommandType.Text;
                cmd.CommandText = SQL;

                MySqlParameter prmReturnID = new MySqlParameter("@CreditMemoID", MySqlDbType.Int64);
                prmReturnID.Value = Details.CreditMemoID;
                cmd.Parameters.Add(prmReturnID);

                MySqlParameter prmProductID = new MySqlParameter("@ProductID", MySqlDbType.Int64);
                prmProductID.Value = Details.ProductID;
                cmd.Parameters.Add(prmProductID);

                MySqlParameter prmProductCode = new MySqlParameter("@ProductCode", MySqlDbType.String);
                prmProductCode.Value = Details.ProductCode;
                cmd.Parameters.Add(prmProductCode);

                MySqlParameter prmBarCode = new MySqlParameter("@BarCode", MySqlDbType.String);
                prmBarCode.Value = Details.BarCode;
                cmd.Parameters.Add(prmBarCode);

                MySqlParameter prmDescription = new MySqlParameter("@Description", MySqlDbType.String);
                prmDescription.Value = Details.Description;
                cmd.Parameters.Add(prmDescription);

                MySqlParameter prmProductUnitID = new MySqlParameter("@ProductUnitID", MySqlDbType.Int16);
                prmProductUnitID.Value = Details.ProductUnitID;
                cmd.Parameters.Add(prmProductUnitID);

                MySqlParameter prmProductUnitCode = new MySqlParameter("@ProductUnitCode", MySqlDbType.String);
                prmProductUnitCode.Value = Details.ProductUnitCode;
                cmd.Parameters.Add(prmProductUnitCode);

                MySqlParameter prmQuantity = new MySqlParameter("@Quantity", MySqlDbType.Decimal);
                prmQuantity.Value = Details.Quantity;
                cmd.Parameters.Add(prmQuantity);

                MySqlParameter prmUnitCost = new MySqlParameter("@UnitCost", MySqlDbType.Decimal);
                prmUnitCost.Value = Details.UnitCost;
                cmd.Parameters.Add(prmUnitCost);

                MySqlParameter prmDiscount = new MySqlParameter("@Discount", MySqlDbType.Decimal);
                prmDiscount.Value = Details.Discount;
                cmd.Parameters.Add(prmDiscount);

                MySqlParameter prmDiscountApplied = new MySqlParameter("@DiscountApplied", MySqlDbType.Decimal);
                prmDiscountApplied.Value = Details.DiscountApplied;
                cmd.Parameters.Add(prmDiscountApplied);

                MySqlParameter prmDiscountType = new MySqlParameter("@DiscountType", MySqlDbType.Int16);
                prmDiscountType.Value = (int)Details.DiscountType;
                cmd.Parameters.Add(prmDiscountType);

                MySqlParameter prmAmount = new MySqlParameter("@Amount", MySqlDbType.Decimal);
                prmAmount.Value = Details.Amount;
                cmd.Parameters.Add(prmAmount);

                MySqlParameter prmVAT = new MySqlParameter("@VAT", MySqlDbType.Decimal);
                prmVAT.Value = Details.VAT;
                cmd.Parameters.Add(prmVAT);

                MySqlParameter prmVatableAmount = new MySqlParameter("@VatableAmount", MySqlDbType.Decimal);
                prmVatableAmount.Value = Details.VatableAmount;
                cmd.Parameters.Add(prmVatableAmount);

                MySqlParameter prmEVAT = new MySqlParameter("@EVAT", MySqlDbType.Decimal);
                prmEVAT.Value = Details.EVAT;
                cmd.Parameters.Add(prmEVAT);

                MySqlParameter prmEVatableAmount = new MySqlParameter("@EVatableAmount", MySqlDbType.Decimal);
                prmEVatableAmount.Value = Details.EVatableAmount;
                cmd.Parameters.Add(prmEVatableAmount);

                MySqlParameter prmLocalTax = new MySqlParameter("@LocalTax", MySqlDbType.Decimal);
                prmLocalTax.Value = Details.LocalTax;
                cmd.Parameters.Add(prmLocalTax);

                MySqlParameter prmisVATInclusive = new MySqlParameter("@isVATInclusive", MySqlDbType.Int16);
                prmisVATInclusive.Value = Convert.ToInt16(Details.isVATInclusive);
                cmd.Parameters.Add(prmisVATInclusive);

                MySqlParameter prmVariationMatrixID = new MySqlParameter("@VariationMatrixID", MySqlDbType.Int64);
                prmVariationMatrixID.Value = Details.VariationMatrixID;
                cmd.Parameters.Add(prmVariationMatrixID);

                MySqlParameter prmMatrixDescription = new MySqlParameter("@MatrixDescription", MySqlDbType.String);
                prmMatrixDescription.Value = Details.MatrixDescription;
                cmd.Parameters.Add(prmMatrixDescription);

                MySqlParameter prmProductGroup = new MySqlParameter("@ProductGroup", MySqlDbType.String);
                prmProductGroup.Value = Details.ProductGroup;
                cmd.Parameters.Add(prmProductGroup);

                MySqlParameter prmProductSubGroup = new MySqlParameter("@ProductSubGroup", MySqlDbType.String);
                prmProductSubGroup.Value = Details.ProductSubGroup;
                cmd.Parameters.Add(prmProductSubGroup);

                MySqlParameter prmSOReturnItemStatus = new MySqlParameter("@ItemStatus", MySqlDbType.Int16);
                prmSOReturnItemStatus.Value = Details.ItemStatus.ToString("d");
                cmd.Parameters.Add(prmSOReturnItemStatus);

                MySqlParameter prmIsVatable = new MySqlParameter("@IsVatable", MySqlDbType.Int16);
                prmIsVatable.Value = Details.IsVatable;
                cmd.Parameters.Add(prmIsVatable);

                MySqlParameter prmRemarks = new MySqlParameter("@Remarks", MySqlDbType.String);
                prmRemarks.Value = Details.Remarks;
                cmd.Parameters.Add(prmRemarks);

                MySqlParameter prmSOReturnItemID = new MySqlParameter("@CreditMemoItemID", MySqlDbType.Int64);
                prmSOReturnItemID.Value = Details.CreditMemoItemID;
                cmd.Parameters.Add(prmSOReturnItemID);

                base.ExecuteNonQuery(cmd);

                SOReturns clsSOReturns = new SOReturns(base.Connection, base.Transaction);
                clsSOReturns.SynchronizeAmount(Details.CreditMemoID);
            }

            catch (Exception ex)
            {
                {
                }

                throw base.ThrowException(ex);
            }
        }