public static bool SaveMaagIssueHead(ATTMaagIssueHead objMaagIssueHead)
 {
     try
     {
         if (DLLMaagIssueHead.SaveMaagIssueHead(objMaagIssueHead))
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        public static bool SaveMaagIssueHead(ATTMaagIssueHead objMaagIssueHead)
        {
            GetConnection     GetConn = new GetConnection();
            OracleConnection  DBConn  = GetConn.GetDbConn(Module.OAS);
            OracleTransaction Tran    = DBConn.BeginTransaction();
            string            strSQL  = "";

            List <OracleParameter> paramArray = new List <OracleParameter>();

            paramArray.Add(Utilities.GetOraParam(":P_ORG_ID", objMaagIssueHead.OrgID, OracleDbType.Int64, ParameterDirection.Input));
            paramArray.Add(Utilities.GetOraParam(":P_UNIT_ID", objMaagIssueHead.UnitID, OracleDbType.Int64, ParameterDirection.Input));
            paramArray.Add(Utilities.GetOraParam(":P_REQ_NO", objMaagIssueHead.ReqNo, OracleDbType.Double, ParameterDirection.Input));
            paramArray.Add(Utilities.GetOraParam(":P_ISSUE_SEQ", objMaagIssueHead.IssueSeq, OracleDbType.Int64, ParameterDirection.InputOutput));
            if (objMaagIssueHead.Action == "D")
            {
                strSQL = "SP_INV_DEL_MAAG_ISSUE_HEAD";
            }
            else
            {
                paramArray.Add(Utilities.GetOraParam(":P_ISSUE_DATE", objMaagIssueHead.IssueDate, OracleDbType.Varchar2, ParameterDirection.Input));
                paramArray.Add(Utilities.GetOraParam(":P_ISSUE_BY", objMaagIssueHead.IssueBy, OracleDbType.Double, ParameterDirection.Input));
                paramArray.Add(Utilities.GetOraParam(":P_RCVD_BY", objMaagIssueHead.RcvdBy, OracleDbType.Double, ParameterDirection.Input));
                paramArray.Add(Utilities.GetOraParam(":P_REMARKS", objMaagIssueHead.Remarks, OracleDbType.Varchar2, ParameterDirection.Input));
                paramArray.Add(Utilities.GetOraParam(":P_ENTRY_BY", objMaagIssueHead.EntryBy, OracleDbType.Varchar2, ParameterDirection.Input));
                if (objMaagIssueHead.Action == "A")
                {
                    strSQL = "SP_INV_ADD_MAAG_ISSUE_HEAD";
                }
                else if (objMaagIssueHead.Action == "E")
                {
                    strSQL = "SP_INV_EDIT_MAAG_ISSUE_HEAD";
                }
            }

            try
            {
                SqlHelper.ExecuteNonQuery(Tran, CommandType.StoredProcedure, strSQL, paramArray.ToArray());
                objMaagIssueHead.IssueSeq = int.Parse(paramArray[3].Value.ToString());
                paramArray.Clear();
                if (objMaagIssueHead.LstMaagIssueDetail.Count > 0)
                {
                    DLLMaagIssueDetail.SaveMaagIssueDetail(objMaagIssueHead.LstMaagIssueDetail, objMaagIssueHead.IssueSeq, Tran);
                }
                Tran.Commit();
                return(true);
            }
            catch (OracleException oex)
            {
                Tran.Rollback();
                PCS.COREDL.OracleError oe = new PCS.COREDL.OracleError();
                throw new ArgumentException(oe.GetOraError(oex.Number, oex.Message));
            }
            catch (Exception ex)
            {
                Tran.Rollback();
                throw (ex);
            }
            finally
            {
                GetConn.CloseDbConn();
            }
        }
    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        ATTMaagIssueHead objMaagIssueHead = new ATTMaagIssueHead
                                            (
            int.Parse(this.grdIssueMaagDetails.Rows[0].Cells[1].Text),
            int.Parse(this.grdIssueMaagDetails.Rows[0].Cells[2].Text),
            double.Parse(this.grdIssueMaagDetails.Rows[0].Cells[3].Text),
            0,
            this.txtIssueDate_DT.Text.Trim() == "" ? null : this.txtIssueDate_DT.Text.Trim(),
            ((ATTUserLogin)Session["Login_User_Detail"]).PID,
            double.Parse(hdnRcvdBy.Value.ToString())
                                            );

        objMaagIssueHead.EntryBy = ((ATTUserLogin)Session["Login_User_Detail"]).UserName;
        objMaagIssueHead.Action  = "A";

        List <ATTMaagIssueDetail> lstMaagIssueDet = new List <ATTMaagIssueDetail>();

        foreach (GridViewRow row in this.grdIssueMaagDetails.Rows)
        {
            int     deliverQty = 0;
            TextBox txt        = (TextBox)(row.FindControl("txtDelQty"));
            try
            {
                deliverQty = int.Parse(txt.Text);
            }
            catch (Exception)
            {
            }

            if ((deliverQty + int.Parse(row.Cells[12].Text)) > int.Parse(row.Cells[11].Text))
            {
                this.lblStatusMessage.Text = "आदेश परिमाण भन्दा निकासा परिमाण धेरै हुन सक्दैन";
                this.programmaticModalPopup.Show();
                return;
            }

            if (deliverQty > 0)
            {
                ATTMaagIssueDetail objMaagIssueDet = new ATTMaagIssueDetail
                                                     (
                    int.Parse(row.Cells[1].Text),
                    int.Parse(row.Cells[2].Text),
                    double.Parse(row.Cells[3].Text),
                    0,
                    int.Parse(row.Cells[4].Text),
                    int.Parse(row.Cells[6].Text),
                    int.Parse(row.Cells[8].Text),
                    deliverQty
                                                     );
                objMaagIssueDet.Action = "A";
                lstMaagIssueDet.Add(objMaagIssueDet);
            }
        }

        if (lstMaagIssueDet.Count == 0)
        {
            this.lblStatusMessage.Text = "No Changes Have Been Made.";
            this.programmaticModalPopup.Show();
        }
        else
        {
            try
            {
                objMaagIssueHead.LstMaagIssueDetail = lstMaagIssueDet;
                BLLMaagIssueHead.SaveMaagIssueHead(objMaagIssueHead);
                this.lblStatusMessage.Text = "Items Successfully Issued.";
                this.programmaticModalPopup.Show();
                WebForm1_BubbleClickBtn(sender, e);
            }
            catch (Exception ex)
            {
                this.lblStatusMessage.Text = ex.Message;
                this.programmaticModalPopup.Show();
            }
        }
    }