Ejemplo n.º 1
0
        protected void btnAdd_Click(object sender, EventArgs e)
        {
            bool isSaved = false;
            RequestforEditGRNBLL objOld = (RequestforEditGRNBLL)ViewState["oldObject"];

            if (objOld == null)
            {
                this.lblMessage.Text = "An error has occured please try agin";
                return;
            }
            RequestforEditGRNBLL obj = new RequestforEditGRNBLL();

            obj.Id            = new Guid(hfId.Value.ToString());
            obj.GRNId         = new Guid(hfGRNID.Value.ToString());
            obj.Status        = (RequestforEditGRNStatus)(int.Parse(this.cboStatus.SelectedValue));
            obj.Remark        = this.txtRemark.Text;
            obj.DateRequested = DateTime.Parse(this.txtDateRequested.Text);
            obj.TrackingNo    = hfTrackingNo.Value.ToString();
            obj.GRN_Number    = this.txtGRNNo.Text;

            RequestforEditGRNStatus oldStatus = (RequestforEditGRNStatus)(int.Parse(this.hfOriginalStatus.Value.ToString()));

            isSaved = obj.AllowGRNEdit(oldStatus, objOld);
            if (isSaved == true)
            {
                this.lblMessage.Text = "Data updated Successfully.";
                this.btnEdit.Enabled = false;
                return;
            }
            else
            {
                this.lblMessage.Text = "Unable to Update the record please try again.";
                return;
            }
        }
Ejemplo n.º 2
0
        public bool AllowGRNEdit(RequestforEditGRNStatus oldStatus, RequestforEditGRNBLL old)
        {
            //Update Status accordingly.
            //Set GRN Status to On Edit
            bool           isSaved = false;
            SqlConnection  conn    = null;
            SqlTransaction tran    = null;

            try
            {
                conn    = Connection.getConnection();
                tran    = conn.BeginTransaction();
                isSaved = RequestforEditGRNDAL.Update(tran, this);
                isSaved = GRNDAL.UpdateGRNStatus(this.GRN_Number, GRNStatus.OpenForEdit, tran);
                if (this.Status == RequestforEditGRNStatus.Approved && oldStatus == RequestforEditGRNStatus.Approved)
                {
                    // Update GRN Status to OpenForEdit


                    if (isSaved == true)
                    {
                        int           at    = -1;
                        AuditTrailBLL objat = new AuditTrailBLL();

                        at = objat.saveAuditTrail(old, this, WFStepsName.RequestforEditGRN.ToString(), UserBLL.GetCurrentUser(), "Open GRN for Edit");
                        if (at == 1)
                        {
                            WFTransaction.WorkFlowManager(this.TrackingNo);
                            tran.Commit();
                        }
                        else
                        {
                            tran.Rollback();
                            isSaved = false;
                        }
                    }
                    else
                    {
                        isSaved = false;
                        tran.Rollback();
                    }
                }
                else if (this.Status == RequestforEditGRNStatus.Cancelled)
                {
                    WFTransaction.Close(this.TrackingNo);
                    isSaved = true;
                }
            }
            catch (Exception ex)
            {
                tran.Rollback();
                throw new Exception("Unable to update Data.", ex);
            }
            finally
            {
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
                if (tran != null)
                {
                    tran.Dispose();
                }
            }
            return(isSaved);
        }