示例#1
0
        private void Save_InsertMasterDetail(SqlTransaction Trans, ref bool Check)
        {
            //Trans = null;
            //Check = false;

            string StrIssueDate = "";

            try
            {
                //if (GvMain.Rows.Count == 0)
                //{
                //    ObjGeneral.UserMsg(LbErr, Color.Red, "At least one part must be add...", txtPartItem);
                //    return;
                //}
                //else
                //{
                //    LbErr.Text = "";
                //}
                StrIssueDate = txtIssueDate.Text;

                int IssueDate = Convert.ToInt32(txtIssueDate.Text.Substring(6, 4) + txtIssueDate.Text.Substring(3, 2) + txtIssueDate.Text.Substring(0, 2));
                int SIRDate   = Convert.ToInt32(txtSIRDate.Text.Substring(6, 4) + txtSIRDate.Text.Substring(3, 2) + txtSIRDate.Text.Substring(0, 2));

                if (txtSource.Text == "J")
                {
                    if (IssueDate < SIRDate)
                    {
                        SysFunc.UserMsg(LbErr, Color.Red, "Issuance date should not be less than jobcard date...", txtIssueDate);
                        return;
                    }
                    else
                    {
                        LbErr.Text = "";
                    }
                }
                if (txtSource.Text == "C")
                {
                    if (IssueDate < SIRDate)
                    {
                        SysFunc.UserMsg(LbErr, Color.Red, "Issuance date should not be less than counter sale date...", txtIssueDate);
                        return;
                    }
                    else
                    {
                        LbErr.Text = "";
                    }
                }

                //if (ObjTrans.BeginTransaction(ref Trans) == false)
                //{
                //    return;
                //}

                //if (ObjGeneral.IsPosted("StockIssue", "IssueNo", txtIssueNo.Text) == true)
                //{
                //    ObjGeneral.UserMsg(LbErr, Color.Red, "The Issuance is already posted; now you could not change/delete/Post the record...", txtIssueNo);
                //    return;
                //}
                //else
                //{
                //    LbErr.Text = "";
                //}

                SqlParameter[] param =
                {
                    new SqlParameter("@DealerCode", SqlDbType.Char),             //0
                    new SqlParameter("@IssueNo", SqlDbType.Char),                //1
                    new SqlParameter("@IssueDate", SqlDbType.DateTime),          //2
                    new SqlParameter("@SIRNo", SqlDbType.Char),                  //3
                    new SqlParameter("@ReqSource", SqlDbType.VarChar),           //4
                    new SqlParameter("@JobCardNO", SqlDbType.Char),              //5
                    new SqlParameter("@InvoiceNo", SqlDbType.Char),              //6
                    new SqlParameter("@Remarks", SqlDbType.VarChar),             //7
                    new SqlParameter("@UpdUser", SqlDbType.VarChar),             //8
                    //new SqlParameter("@UpdDate",SqlDbType.DateTime),//9
                    //new SqlParameter("@UpdTime",SqlDbType.DateTime),//10
                    new SqlParameter("@UpdTerm", SqlDbType.VarChar),                  //11
                };
                param[0].Value = Session["DealerCode"].ToString();
                strIssueNo     = SysFunc.AutoGen("StockIssue", "IssueNo", txtIssueDate.Text.Trim());
                param[1].Value = strIssueNo;
                param[2].Value = SysFunc.SaveDate(txtIssueDate.Text);;
                param[3].Value = ddlSirNo.SelectedValue.ToString().Trim();
                param[4].Value = txtSource.Text;
                if (txtSource.Text == "J")
                {
                    param[5].Value = txtJC_CS_No.Text;
                    param[6].Value = (Object)DBNull.Value;
                }
                else if (txtSource.Text == "C")
                {
                    param[5].Value = (Object)DBNull.Value;
                    param[6].Value = txtJC_CS_No.Text;
                }

                param[7].Value = txtRemarks.Text.Replace("'", " ");
                param[8].Value = Session["UserName"].ToString();
                //param[9].Value = ObjGeneral.SaveDate(DateTime.Now.ToString("dd/MM/yyyy"));
                //param[10].Value = ObjGeneral.SaveDate(DateTime.Now.ToString("dd/MM/yyyy"));
                param[9].Value = GlobalVar.mUserIPAddress;

                if (SysFunc.SP_Parts_Insert_StockIssue(Trans, param))
                {
                    foreach (GridViewRow gvr in GvMain.Rows)
                    {
                        CheckBox chkSelect = (CheckBox)gvr.Cells[0].FindControl("ChkSelect");
                        if (chkSelect.Checked)
                        {
                            SqlParameter[] param1 =
                            {
                                new SqlParameter("@DealerCode", SqlDbType.Char),        //0
                                new SqlParameter("@IssueNo", SqlDbType.Char),           //1
                                new SqlParameter("@ItemCode", SqlDbType.Char),          //2
                                new SqlParameter("@SIRNo", SqlDbType.Char),             //3
                                new SqlParameter("@PartsTransLocCode", SqlDbType.Char), //4
                                new SqlParameter("@IssueQty", SqlDbType.Float),         //5
                                new SqlParameter("@Rate", SqlDbType.Float),             //6
                                new SqlParameter("@Amount", SqlDbType.Float)            //7
                            };

                            //Label LbItemCode = (Label)GvMain.Rows[i].FindControl("LbItemCode");
                            DropDownList ddlLocation = (DropDownList)gvr.FindControl("ddlLocation");
                            //HiddenField HDPartsTransLocCode = (HiddenField)GvMain.Rows[i].FindControl("HDPartsTransLocCode");

                            TextBox txtIssueQty = (TextBox)gvr.FindControl("txtIssueQty");
                            Label   lblAvgCost  = (Label)gvr.FindControl("lblAvgCost");
                            Label   LbAmount    = (Label)gvr.FindControl("LbAmount");



                            param1[0].Value = Session["DealerCode"].ToString();
                            param1[1].Value = strIssueNo;
                            param1[2].Value = gvr.Cells[1].Text.Trim();
                            param1[3].Value = ddlSirNo.SelectedValue.ToString();
                            param1[4].Value = ddlLocation.SelectedValue.ToString();
                            param1[5].Value = txtIssueQty.Text.Trim();
                            param1[6].Value = lblAvgCost.Text;
                            param1[7].Value = LbAmount.Text;

                            if (SysFunc.Sp_Parts_Insert_StockIssueDetail(Trans, param1))
                            {
                                Check = true;
                            }
                            else
                            {
                                Check = false;
                                break;
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                //ObjTrans.RollBackTransaction(ref Trans);
                SysFunc.UserMsg(LbErr, Color.Red, ex.Message);
            }
        }