private SqlCommand SaveGRNDetails(mdlGRN obj_mdlGRN, SqlTransaction transaction, SqlCommand cmd) { //Deleting Order Details if (obj_mdlGRN.dtGRN.Rows.Count > 0) { cmd = new SqlCommand("Delete from D_GRN where GRNId ='" + obj_mdlGRN.PK_GRNID + "'", con, transaction); cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } //Inserting Order Details if (obj_mdlGRN.dtGRN.Rows.Count > 0) { cmd = new SqlCommand("stp_ERP_GRN_Detail", con, transaction); cmd.CommandType = CommandType.StoredProcedure; for (int i = 0; i <= obj_mdlGRN.dtGRN.Rows.Count - 1; i++) { if (obj_mdlGRN.dtGRN.Rows[i].RowState != DataRowState.Deleted) { cmd.Parameters.Clear(); cmd.Parameters.Add("@Pk_GRNID", SqlDbType.VarChar, 9).Value = obj_mdlGRN.PK_GRNID; cmd.Parameters.Add("@ProductID", SqlDbType.VarChar, 6).Value = obj_mdlGRN.dtGRN.Rows[i]["ID"].ToString().Replace("-", ""); cmd.Parameters.Add("@StockType", SqlDbType.VarChar, 50).Value = obj_mdlGRN.dtGRN.Rows[i]["Type"].ToString(); cmd.Parameters.Add("@BatchNo", SqlDbType.VarChar, 15).Value = obj_mdlGRN.dtGRN.Rows[i]["Batch No"].ToString(); cmd.Parameters.Add("@ExpiryDate", SqlDbType.VarChar, 20).Value = obj_mdlGRN.dtGRN.Rows[i]["Exp. Date"].ToString(); cmd.Parameters.Add("@MfgDate", SqlDbType.VarChar, 20).Value = obj_mdlGRN.dtGRN.Rows[i]["Mfg. Date"].ToString(); cmd.Parameters.Add("@TP", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["FlatRate"].ToString(); cmd.Parameters.Add("@STaxValue", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["STaxValue"].ToString(); cmd.Parameters.Add("@Quantity", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["Qty"].ToString(); cmd.Parameters.Add("@DiscountPer", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["Disc %"].ToString(); cmd.Parameters.Add("@Discount", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["Discount"].ToString(); cmd.Parameters.Add("@SaleTaxPer", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["SaleTaxPer"].ToString(); cmd.Parameters.Add("@Saletax", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["Sale Tax"].ToString(); cmd.Parameters.Add("@GrossValue", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["GrossValue"].ToString(); cmd.Parameters.Add("@Net", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["Net"].ToString(); cmd.Parameters.Add("@CostRate", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["CostRate"].ToString(); cmd.Parameters.Add("@FlatRate", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["TP"].ToString(); cmd.Parameters.Add("@AvgRate", SqlDbType.Decimal).Value = obj_mdlGRN.dtGRN.Rows[i]["AvgRate"].ToString(); cmd.Parameters.Add("@Operation", SqlDbType.VarChar, 12).Value = "Save"; cmd.ExecuteNonQuery(); } cmd.Parameters.Clear(); } } return cmd; }
public bool SaveGRN(mdlGRN obj_mdlGRN, string Operation) { bool IsSaved = false; if (con.State == ConnectionState.Open) { con.Close(); } con.Open(); SqlTransaction transaction = con.BeginTransaction(); SqlCommand cmd = new SqlCommand("stp_ERP_GRN_Master", con, transaction); try { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@Pk_GRNID", SqlDbType.VarChar, 9).Value = obj_mdlGRN.PK_GRNID; cmd.Parameters.Add("@GRNDate", SqlDbType.VarChar, 20).Value = obj_mdlGRN.GRNDate; cmd.Parameters.Add("@POID", SqlDbType.VarChar, 9).Value = obj_mdlGRN.POID; cmd.Parameters.Add("@SupplierID", SqlDbType.VarChar, 3).Value = obj_mdlGRN.SupplierID; cmd.Parameters.Add("@CompanyInvID", SqlDbType.VarChar, 50).Value = obj_mdlGRN.CompanyInvID; cmd.Parameters.Add("@CompanyInvDate", SqlDbType.VarChar, 20).Value = obj_mdlGRN.CompanyInvDate; cmd.Parameters.Add("@DueDate", SqlDbType.VarChar, 20).Value = obj_mdlGRN.DueDate; cmd.Parameters.Add("@Status", SqlDbType.VarChar, 20).Value = obj_mdlGRN.Status; cmd.Parameters.Add("@GrossAmount", SqlDbType.Decimal).Value = obj_mdlGRN.GrossAmount; cmd.Parameters.Add("@Discount", SqlDbType.Decimal).Value = obj_mdlGRN.Discount; cmd.Parameters.Add("@Saletax", SqlDbType.Decimal).Value = obj_mdlGRN.SaleTax; cmd.Parameters.Add("@NetAmnount", SqlDbType.Decimal).Value = obj_mdlGRN.NetAmount; cmd.Parameters.Add("@CustomerID", SqlDbType.VarChar, 6).Value = obj_mdlGRN.CustomerID; cmd.Parameters.Add("@AddUser", SqlDbType.VarChar, 16).Value = obj_mdlGRN.AddUser; cmd.Parameters.Add("@PostUser", SqlDbType.VarChar, 16).Value = obj_mdlGRN.Postuser; cmd.Parameters.Add("@PostDate", SqlDbType.VarChar, 20).Value = obj_mdlGRN.PostDate; cmd.Parameters.Add("@PostTime", SqlDbType.VarChar, 20).Value = obj_mdlGRN.PostTime; cmd.Parameters.Add("@GRNType", SqlDbType.VarChar, 20).Value = obj_mdlGRN.GRNType; cmd.Parameters.Add("@CustOrderNo", SqlDbType.VarChar, 20).Value = obj_mdlGRN.CustOrderNo; cmd.Parameters.Add("@BMCOrderNo", SqlDbType.VarChar, 20).Value = obj_mdlGRN.BMCOrderNo; if (Operation == "Save") { cmd.Parameters.Add("@Operation", SqlDbType.VarChar, 12).Value = "Save"; } else if (Operation == "Update") { cmd.Parameters.Add("@Operation", SqlDbType.VarChar, 12).Value = "Update"; } cmd.ExecuteNonQuery(); //Inserting Purchase Order Details cmd = SaveGRNDetails(obj_mdlGRN, transaction, cmd); transaction.Commit(); IsSaved = true; if (con.State == ConnectionState.Open) { con.Close(); } } catch (Exception ex) { transaction.Rollback(); if (con.State == ConnectionState.Open) { con.Close(); } MessageBox.Show(ex.Message, "ERP - Babar Medicine Company Lahore", MessageBoxButtons.OK, MessageBoxIcon.Error); IsSaved = false; } return IsSaved; }