Пример #1
0
 public Inv_Utilization GetInv_UtilizationFromReader(IDataReader reader)
 {
     try
     {
         Inv_Utilization inv_Utilization = new Inv_Utilization
                                           (
             (int)reader["Inv_UtilizationID"],
             (DateTime)reader["UtilizationDate"],
             reader["IssueIDs"].ToString(),
             (int)reader["WorkSatationID"],
             reader["ExtraField1"].ToString(),
             reader["ExtraField2"].ToString(),
             reader["ExtraField3"].ToString(),
             reader["ExtraField4"].ToString(),
             reader["ExtraField5"].ToString(),
             (int)reader["AddedBy"],
             (DateTime)reader["AddedDate"],
             (int)reader["UpdatedBy"],
             (DateTime)reader["UpdatedDate"],
             (int)reader["RowStatusID"]
                                           );
         return(inv_Utilization);
     }
     catch (Exception ex)
     {
         return(null);
     }
 }
Пример #2
0
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        Inv_Utilization inv_Utilization = new Inv_Utilization();

        inv_Utilization = Inv_UtilizationManager.GetInv_UtilizationByID(Int32.Parse(Request.QueryString["inv_UtilizationID"]));
        Inv_Utilization tempInv_Utilization = new Inv_Utilization();

        tempInv_Utilization.Inv_UtilizationID = inv_Utilization.Inv_UtilizationID;

        tempInv_Utilization.UtilizationDate = txtUtilizationDate.Text;
        tempInv_Utilization.IssueIDs        = Int32.Parse(ddlIssue.SelectedValue);
        tempInv_Utilization.WorkSatationID  = Int32.Parse(ddlWorkSatation.SelectedValue);
        tempInv_Utilization.ExtraField1     = txtExtraField1.Text;
        tempInv_Utilization.ExtraField2     = txtExtraField2.Text;
        tempInv_Utilization.ExtraField3     = txtExtraField3.Text;
        tempInv_Utilization.ExtraField4     = txtExtraField4.Text;
        tempInv_Utilization.ExtraField5     = txtExtraField5.Text;
        tempInv_Utilization.AddedBy         = Int32.Parse(txtAddedBy.Text);
        tempInv_Utilization.AddedDate       = DateTime.Now;
        tempInv_Utilization.UpdatedBy       = Int32.Parse(txtUpdatedBy.Text);
        tempInv_Utilization.UpdatedDate     = txtUpdatedDate.Text;
        tempInv_Utilization.RowStatusID     = Int32.Parse(ddlRowStatus.SelectedValue);
        bool result = Inv_UtilizationManager.UpdateInv_Utilization(tempInv_Utilization);

        Response.Redirect("AdminInv_UtilizationDisplay.aspx");
    }
Пример #3
0
    private void showInv_IssueDetailGrid()
    {
        Inv_Utilization issueMaster = Inv_UtilizationManager.GetInv_UtilizationByID(int.Parse(Request.QueryString["UtilizationID"]));

        lblLastIssueID.Text = Request.QueryString["UtilizationID"];
        txtIssueDate.Text   = issueMaster.UtilizationDate.ToString("dd MMM yyyy");
    }
Пример #4
0
    public bool UpdateInv_Utilization(Inv_Utilization inv_Utilization)
    {
        using (SqlConnection connection = new SqlConnection(this.ConnectionString))
        {
            SqlCommand cmd = new SqlCommand("GP_UpdateInv_Utilization", connection);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add("@Inv_UtilizationID", SqlDbType.Int).Value    = inv_Utilization.Inv_UtilizationID;
            cmd.Parameters.Add("@UtilizationDate", SqlDbType.DateTime).Value = inv_Utilization.UtilizationDate;
            cmd.Parameters.Add("@IssueIDs", SqlDbType.NVarChar).Value        = inv_Utilization.IssueIDs;
            cmd.Parameters.Add("@WorkSatationID", SqlDbType.Int).Value       = inv_Utilization.WorkSatationID;
            cmd.Parameters.Add("@ExtraField1", SqlDbType.NVarChar).Value     = inv_Utilization.ExtraField1;
            cmd.Parameters.Add("@ExtraField2", SqlDbType.NVarChar).Value     = inv_Utilization.ExtraField2;
            cmd.Parameters.Add("@ExtraField3", SqlDbType.NVarChar).Value     = inv_Utilization.ExtraField3;
            cmd.Parameters.Add("@ExtraField4", SqlDbType.NVarChar).Value     = inv_Utilization.ExtraField4;
            cmd.Parameters.Add("@ExtraField5", SqlDbType.NVarChar).Value     = inv_Utilization.ExtraField5;
            cmd.Parameters.Add("@AddedBy", SqlDbType.Int).Value          = inv_Utilization.AddedBy;
            cmd.Parameters.Add("@AddedDate", SqlDbType.DateTime).Value   = inv_Utilization.AddedDate;
            cmd.Parameters.Add("@UpdatedBy", SqlDbType.Int).Value        = inv_Utilization.UpdatedBy;
            cmd.Parameters.Add("@UpdatedDate", SqlDbType.DateTime).Value = inv_Utilization.UpdatedDate;
            cmd.Parameters.Add("@RowStatusID", SqlDbType.Int).Value      = inv_Utilization.RowStatusID;
            connection.Open();

            int result = cmd.ExecuteNonQuery();
            return(result == 1);
        }
    }
Пример #5
0
 public static Inv_Utilization GetInv_UtilizationByID(int id)
 {
     Inv_Utilization inv_Utilization = new Inv_Utilization();
     SqlInv_UtilizationProvider sqlInv_UtilizationProvider = new SqlInv_UtilizationProvider();
     inv_Utilization = sqlInv_UtilizationProvider.GetInv_UtilizationByID(id);
     return inv_Utilization;
 }
Пример #6
0
    public static Inv_Utilization GetInv_UtilizationByID(int id)
    {
        Inv_Utilization            inv_Utilization            = new Inv_Utilization();
        SqlInv_UtilizationProvider sqlInv_UtilizationProvider = new SqlInv_UtilizationProvider();

        inv_Utilization = sqlInv_UtilizationProvider.GetInv_UtilizationByID(id);
        return(inv_Utilization);
    }
Пример #7
0
    private void showInv_UtilizationData()
    {
        Inv_Utilization inv_Utilization = new Inv_Utilization();

        inv_Utilization = Inv_UtilizationManager.GetInv_UtilizationByID(Int32.Parse(Request.QueryString["inv_UtilizationID"]));

        txtUtilizationDate.Text       = inv_Utilization.UtilizationDate;
        ddlIssue.SelectedValue        = inv_Utilization.IssueIDs.ToString();
        ddlWorkSatation.SelectedValue = inv_Utilization.WorkSatationID.ToString();
        txtExtraField1.Text           = inv_Utilization.ExtraField1;
        txtExtraField2.Text           = inv_Utilization.ExtraField2;
        txtExtraField3.Text           = inv_Utilization.ExtraField3;
        txtExtraField4.Text           = inv_Utilization.ExtraField4;
        txtExtraField5.Text           = inv_Utilization.ExtraField5;
        txtAddedBy.Text            = inv_Utilization.AddedBy.ToString();
        txtUpdatedBy.Text          = inv_Utilization.UpdatedBy.ToString();
        txtUpdatedDate.Text        = inv_Utilization.UpdatedDate;
        ddlRowStatus.SelectedValue = inv_Utilization.RowStatusID.ToString();
    }
    protected void btnAdd_Click(object sender, EventArgs e)
    {
        Inv_Utilization inv_Utilization = new Inv_Utilization();

        inv_Utilization.UtilizationDate = txtUtilizationDate.Text;
        inv_Utilization.IssueIDs = Int32.Parse(ddlIssue.SelectedValue);
        inv_Utilization.WorkSatationID = Int32.Parse(ddlWorkSatation.SelectedValue);
        inv_Utilization.ExtraField1 = txtExtraField1.Text;
        inv_Utilization.ExtraField2 = txtExtraField2.Text;
        inv_Utilization.ExtraField3 = txtExtraField3.Text;
        inv_Utilization.ExtraField4 = txtExtraField4.Text;
        inv_Utilization.ExtraField5 = txtExtraField5.Text;
        inv_Utilization.AddedBy = Int32.Parse(txtAddedBy.Text);
        inv_Utilization.AddedDate = DateTime.Now;
        inv_Utilization.UpdatedBy = Int32.Parse(txtUpdatedBy.Text);
        inv_Utilization.UpdatedDate = txtUpdatedDate.Text;
        inv_Utilization.RowStatusID = Int32.Parse(ddlRowStatus.SelectedValue);
        int resutl = Inv_UtilizationManager.InsertInv_Utilization(inv_Utilization);
        Response.Redirect("AdminInv_UtilizationDisplay.aspx");
    }
Пример #9
0
    protected void btnAdd_Click(object sender, EventArgs e)
    {
        Inv_Utilization inv_Utilization = new Inv_Utilization();

        inv_Utilization.UtilizationDate = txtUtilizationDate.Text;
        inv_Utilization.IssueIDs        = Int32.Parse(ddlIssue.SelectedValue);
        inv_Utilization.WorkSatationID  = Int32.Parse(ddlWorkSatation.SelectedValue);
        inv_Utilization.ExtraField1     = txtExtraField1.Text;
        inv_Utilization.ExtraField2     = txtExtraField2.Text;
        inv_Utilization.ExtraField3     = txtExtraField3.Text;
        inv_Utilization.ExtraField4     = txtExtraField4.Text;
        inv_Utilization.ExtraField5     = txtExtraField5.Text;
        inv_Utilization.AddedBy         = Int32.Parse(txtAddedBy.Text);
        inv_Utilization.AddedDate       = DateTime.Now;
        inv_Utilization.UpdatedBy       = Int32.Parse(txtUpdatedBy.Text);
        inv_Utilization.UpdatedDate     = txtUpdatedDate.Text;
        inv_Utilization.RowStatusID     = Int32.Parse(ddlRowStatus.SelectedValue);
        int resutl = Inv_UtilizationManager.InsertInv_Utilization(inv_Utilization);

        Response.Redirect("AdminInv_UtilizationDisplay.aspx");
    }
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        Inv_Utilization inv_Utilization = new Inv_Utilization();
        inv_Utilization = Inv_UtilizationManager.GetInv_UtilizationByID(Int32.Parse(Request.QueryString["inv_UtilizationID"]));
        Inv_Utilization tempInv_Utilization = new Inv_Utilization();
        tempInv_Utilization.Inv_UtilizationID = inv_Utilization.Inv_UtilizationID;

        tempInv_Utilization.UtilizationDate = txtUtilizationDate.Text;
        tempInv_Utilization.IssueIDs = Int32.Parse(ddlIssue.SelectedValue);
        tempInv_Utilization.WorkSatationID = Int32.Parse(ddlWorkSatation.SelectedValue);
        tempInv_Utilization.ExtraField1 = txtExtraField1.Text;
        tempInv_Utilization.ExtraField2 = txtExtraField2.Text;
        tempInv_Utilization.ExtraField3 = txtExtraField3.Text;
        tempInv_Utilization.ExtraField4 = txtExtraField4.Text;
        tempInv_Utilization.ExtraField5 = txtExtraField5.Text;
        tempInv_Utilization.AddedBy = Int32.Parse(txtAddedBy.Text);
        tempInv_Utilization.AddedDate = DateTime.Now;
        tempInv_Utilization.UpdatedBy = Int32.Parse(txtUpdatedBy.Text);
        tempInv_Utilization.UpdatedDate = txtUpdatedDate.Text;
        tempInv_Utilization.RowStatusID = Int32.Parse(ddlRowStatus.SelectedValue);
        bool result = Inv_UtilizationManager.UpdateInv_Utilization(tempInv_Utilization);
        Response.Redirect("AdminInv_UtilizationDisplay.aspx");
    }
Пример #11
0
    private void loadData()
    {
        int             adjustmentID       = int.Parse(Request.QueryString["UtilizationID"]);
        Inv_Utilization purchaseAdjustment = Inv_UtilizationManager.GetInv_UtilizationByID(adjustmentID);

        //purchase info
        lblPurchaseDate.Text     = purchaseAdjustment.UtilizationDate.ToString("dd-MMM-yyyy");
        lblPurchaseReturnID.Text = purchaseAdjustment.Inv_UtilizationID.ToString();
        //lblRefPurchaseNo.Text = purchaseAdjustment.PurchaseIDs;
        //lblSupplierName.Text = purchaseAdjustment.ExtraField1;
        lblParticulars.Text = purchaseAdjustment.ExtraField2;

        //Item Info
        List <Inv_Item> items = new List <Inv_Item>();

        items = Inv_ItemManager.GetAllInv_ItemsByUtilizationID(adjustmentID);

        string  htmlTable         = @" <table id='itemList_tbl' style='border:1px solid black;width:100%;' cellpadding='0' cellspacing='0'>
                        <tr id='tableHeader'>
                            <td  style='border-left:0px;'>S/L</td>
                            <td>Product Code</td>
                            <td>Product Name</td>
                            <td>Quantity</td>
                            <td>Unit</td>
                            <td>Price</td>
                            <td>Amount</td>
                            <td>Apx Qty</td>
                            <td>Prod Qty</td>
                        </tr>";
        int     lastRawMaterialID = 0;
        decimal Total             = 0;
        decimal Subtotal          = 0;
        decimal TotalAmount       = 0;
        decimal SubtotalAmount    = 0;

        decimal approximateQuantityTotal    = 0;
        decimal approximateQuantitySubTotla = 0;
        decimal ProductionQuantityTotal     = 0;
        decimal ProductionQuantitySubTotla  = 0;

        int serialNo = 1;

        foreach (Inv_Item item in items)
        {
            if (lastRawMaterialID != 0 && lastRawMaterialID != item.RawMaterialID)
            {
                htmlTable += @"<tr class='subtotalRow'>
                            <td>&nbsp;</td>
                            <td>&nbsp;</td>
                            <td>Sub Total</td>
                            <td>" + Subtotal.ToString("0,0.00") + @"</td>
                            <td>&nbsp;</td>
                            <td>&nbsp;</td>
                            <td>" + SubtotalAmount.ToString("0,0.00") + @"</td>
                            <td>" + approximateQuantitySubTotla.ToString("0,0.00") + @"</td>
                            <td>" + ProductionQuantitySubTotla.ToString("0,0.00") + @"</td>
                        </tr>";

                Subtotal       = 0;
                SubtotalAmount = 0;
                approximateQuantitySubTotla = 0;
                ProductionQuantitySubTotla  = 0;
            }

            if (lastRawMaterialID != item.RawMaterialID)
            {
                lastRawMaterialID = item.RawMaterialID;
                htmlTable        += @"<tr>
                            <td colspan='9' style='padding-left:50px; border-top:1px solid black;border-bottom:1px solid black;font-weight:bold;'>
                                Item: " + item.RawMaterialName + @"
                            </td>
                        </tr>";
            }

            htmlTable += @"<tr class='itemCss'>
                            <td  style='border-left:0px;'>" + (serialNo++).ToString() + @"</td>
                            <td>" + item.ItemCode + @"</td>
                            <td>" + item.ItemName + @"</td>
                            <td style='text-align:right;'>" + item.PurchasedQuantity.ToString("0,0.00") + @"</td>
                            <td >" + item.QuantityUnitName + @"</td>
                            <td style='text-align:right;'>" + item.PricePerUnit.ToString("0,0.00") + @"</td>
                            <td style='text-align:right;'>" + item.PurchasedQuantityPrice.ToString("0,0.00") + @"</td>
                            <td style='text-align:right;'>" + decimal.Parse(item.ExtraField4).ToString("0,0.00") + @"</td>
                            <td style='text-align:right;'>" + decimal.Parse(item.ExtraField3).ToString("0,0.00") + @"</td>
                        </tr>";

            Subtotal       += item.PurchasedQuantity;
            SubtotalAmount += item.PurchasedQuantityPrice;

            Total       += item.PurchasedQuantity;
            TotalAmount += item.PurchasedQuantityPrice;



            approximateQuantitySubTotla += decimal.Parse(item.ExtraField4);
            ProductionQuantitySubTotla  += decimal.Parse(item.ExtraField3);

            approximateQuantityTotal += decimal.Parse(item.ExtraField4);
            ProductionQuantityTotal  += decimal.Parse(item.ExtraField3);
        }

        htmlTable += @"<tr class='subtotalRow'>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>Sub Total</td>
                        <td>" + Subtotal.ToString("0,0.00") + @"</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>" + SubtotalAmount.ToString("0,0.00") + @"</td>
                            <td>" + approximateQuantitySubTotla.ToString("0,0.00") + @"</td>
                            <td>" + ProductionQuantitySubTotla.ToString("0,0.00") + @"</td>
                    </tr>";

        htmlTable += @"<tr id='lastRow'>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>Grand Total</td>
                        <td>" + Total.ToString("0,0.00") + @"</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>" + TotalAmount.ToString("0,0.00") + @"</td>
                        <td>" + approximateQuantityTotal.ToString("0,0.00") + @"</td>
                        <td>" + ProductionQuantityTotal.ToString("0,0.00") + @"</td>
                    </tr></table>";

        lblItemList.Text = htmlTable;
    }
Пример #12
0
 public Inv_Utilization GetInv_UtilizationFromReader(IDataReader reader)
 {
     try
     {
         Inv_Utilization inv_Utilization = new Inv_Utilization
             (
                 (int)reader["Inv_UtilizationID"],
                 (DateTime)reader["UtilizationDate"],
                 reader["IssueIDs"].ToString(),
                 (int)reader["WorkSatationID"],
                 reader["ExtraField1"].ToString(),
                 reader["ExtraField2"].ToString(),
                 reader["ExtraField3"].ToString(),
                 reader["ExtraField4"].ToString(),
                 reader["ExtraField5"].ToString(),
                 (int)reader["AddedBy"],
                 (DateTime)reader["AddedDate"],
                 (int)reader["UpdatedBy"],
                 (DateTime)reader["UpdatedDate"],
                 (int)reader["RowStatusID"]
             );
          return inv_Utilization;
     }
     catch(Exception ex)
     {
         return null;
     }
 }
Пример #13
0
    public bool UpdateInv_Utilization(Inv_Utilization inv_Utilization)
    {
        using (SqlConnection connection = new SqlConnection(this.ConnectionString))
        {
            SqlCommand cmd = new SqlCommand("GP_UpdateInv_Utilization", connection);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add("@Inv_UtilizationID", SqlDbType.Int).Value = inv_Utilization.Inv_UtilizationID;
            cmd.Parameters.Add("@UtilizationDate", SqlDbType.DateTime).Value = inv_Utilization.UtilizationDate;
            cmd.Parameters.Add("@IssueIDs", SqlDbType.NVarChar).Value = inv_Utilization.IssueIDs;
            cmd.Parameters.Add("@WorkSatationID", SqlDbType.Int).Value = inv_Utilization.WorkSatationID;
            cmd.Parameters.Add("@ExtraField1", SqlDbType.NVarChar).Value = inv_Utilization.ExtraField1;
            cmd.Parameters.Add("@ExtraField2", SqlDbType.NVarChar).Value = inv_Utilization.ExtraField2;
            cmd.Parameters.Add("@ExtraField3", SqlDbType.NVarChar).Value = inv_Utilization.ExtraField3;
            cmd.Parameters.Add("@ExtraField4", SqlDbType.NVarChar).Value = inv_Utilization.ExtraField4;
            cmd.Parameters.Add("@ExtraField5", SqlDbType.NVarChar).Value = inv_Utilization.ExtraField5;
            cmd.Parameters.Add("@AddedBy", SqlDbType.Int).Value = inv_Utilization.AddedBy;
            cmd.Parameters.Add("@AddedDate", SqlDbType.DateTime).Value = inv_Utilization.AddedDate;
            cmd.Parameters.Add("@UpdatedBy", SqlDbType.Int).Value = inv_Utilization.UpdatedBy;
            cmd.Parameters.Add("@UpdatedDate", SqlDbType.DateTime).Value = inv_Utilization.UpdatedDate;
            cmd.Parameters.Add("@RowStatusID", SqlDbType.Int).Value = inv_Utilization.RowStatusID;
            connection.Open();

            int result = cmd.ExecuteNonQuery();
            return result == 1;
        }
    }
Пример #14
0
 public static bool UpdateInv_Utilization(Inv_Utilization inv_Utilization)
 {
     SqlInv_UtilizationProvider sqlInv_UtilizationProvider = new SqlInv_UtilizationProvider();
     return sqlInv_UtilizationProvider.UpdateInv_Utilization(inv_Utilization);
 }
Пример #15
0
 public static int InsertInv_Utilization(Inv_Utilization inv_Utilization)
 {
     SqlInv_UtilizationProvider sqlInv_UtilizationProvider = new SqlInv_UtilizationProvider();
     return sqlInv_UtilizationProvider.InsertInv_Utilization(inv_Utilization);
 }
Пример #16
0
    public static bool UpdateInv_Utilization(Inv_Utilization inv_Utilization)
    {
        SqlInv_UtilizationProvider sqlInv_UtilizationProvider = new SqlInv_UtilizationProvider();

        return(sqlInv_UtilizationProvider.UpdateInv_Utilization(inv_Utilization));
    }
Пример #17
0
    public static int InsertInv_Utilization(Inv_Utilization inv_Utilization)
    {
        SqlInv_UtilizationProvider sqlInv_UtilizationProvider = new SqlInv_UtilizationProvider();

        return(sqlInv_UtilizationProvider.InsertInv_Utilization(inv_Utilization));
    }
    private void showInv_UtilizationData()
    {
        Inv_Utilization inv_Utilization = new Inv_Utilization();
        inv_Utilization = Inv_UtilizationManager.GetInv_UtilizationByID(Int32.Parse(Request.QueryString["inv_UtilizationID"]));

        txtUtilizationDate.Text = inv_Utilization.UtilizationDate;
        ddlIssue.SelectedValue = inv_Utilization.IssueIDs.ToString();
        ddlWorkSatation.SelectedValue = inv_Utilization.WorkSatationID.ToString();
        txtExtraField1.Text = inv_Utilization.ExtraField1;
        txtExtraField2.Text = inv_Utilization.ExtraField2;
        txtExtraField3.Text = inv_Utilization.ExtraField3;
        txtExtraField4.Text = inv_Utilization.ExtraField4;
        txtExtraField5.Text = inv_Utilization.ExtraField5;
        txtAddedBy.Text = inv_Utilization.AddedBy.ToString();
        txtUpdatedBy.Text = inv_Utilization.UpdatedBy.ToString();
        txtUpdatedDate.Text = inv_Utilization.UpdatedDate;
        ddlRowStatus.SelectedValue = inv_Utilization.RowStatusID.ToString();
    }
Пример #19
0
    protected void btnAdd_Click(object sender, EventArgs e)
    {
        String sql = "";
        int utilizationID = 0;
        int JournalMasterID = 0;
        int wastageID = 0;
        if (txtUtilizationID.Text == "0")
        {

            Inv_Wastage inv_Wastage = new Inv_Wastage();

            inv_Wastage.WastageDate = DateTime.Parse(txtDate.Text);
            inv_Wastage.IssueIDs = "";
            inv_Wastage.WorkSatationID = Int32.Parse(ddlWorkSatation.SelectedValue);
            inv_Wastage.ExtraField1 = "";
            inv_Wastage.ExtraField2 = "";
            inv_Wastage.ExtraField3 = "";
            inv_Wastage.ExtraField4 = "";
            inv_Wastage.ExtraField5 = "";
            inv_Wastage.AddedBy = getLogin().LoginID;
            inv_Wastage.AddedDate = DateTime.Now;
            inv_Wastage.UpdatedBy = getLogin().LoginID;
            inv_Wastage.UpdatedDate = DateTime.Now;
            inv_Wastage.RowStatusID = 1;
            bool isWasted = false;
            /*
            foreach (GridViewRow gvr in gvInv_IssueDetail.Rows)
            {
                CheckBox chkSelect = (CheckBox)gvr.FindControl("chkSelect");
                TextBox txtWasted = (TextBox)gvr.FindControl("txtWasted");
                if (chkSelect.Checked && txtWasted.Text != "0")
                {
                    isWasted = true;
                }
            }
            */
            if (isWasted)
            {
                wastageID = Inv_WastageManager.InsertInv_Wastage(inv_Wastage);
                hlnkWastagePrint.NavigateUrl = "WastagePrint.aspx?WastageID="+wastageID;
                hlnkWastagePrint.Visible = true;
            }

            ACC_JournalMaster aCC_JournalMaster = new ACC_JournalMaster();

            aCC_JournalMaster.JournalMasterName = "3";//Voucher Type
            aCC_JournalMaster.ExtraField1 = "";
            aCC_JournalMaster.ExtraField2 = "";
            aCC_JournalMaster.ExtraField3 = "";
            aCC_JournalMaster.Note = txtParticulars.Text;
            aCC_JournalMaster.JournalDate = DateTime.Parse(txtDate.Text);
            aCC_JournalMaster.AddedBy = getLogin().LoginID;
            aCC_JournalMaster.AddedDate = DateTime.Now;
            aCC_JournalMaster.UpdatedBy = getLogin().LoginID;
            aCC_JournalMaster.UpdatedDate = DateTime.Now;
            aCC_JournalMaster.RowStatusID = 1;
            JournalMasterID = ACC_JournalMasterManager.InsertACC_JournalMaster(aCC_JournalMaster);

            Inv_Utilization inv_Utilization = new Inv_Utilization();

            inv_Utilization.UtilizationDate = DateTime.Parse(txtDate.Text);
            inv_Utilization.IssueIDs = "";
            inv_Utilization.WorkSatationID = Int32.Parse(ddlWorkSatation.SelectedValue);
            inv_Utilization.ExtraField1 = JournalMasterID.ToString();
            inv_Utilization.ExtraField2 = wastageID.ToString();
            inv_Utilization.ExtraField3 = "";
            inv_Utilization.ExtraField4 = "";
            inv_Utilization.ExtraField5 = "";
            inv_Utilization.AddedBy = getLogin().LoginID;
            inv_Utilization.AddedDate = DateTime.Now;
            inv_Utilization.UpdatedBy = getLogin().LoginID;
            inv_Utilization.UpdatedDate = DateTime.Now;
            inv_Utilization.RowStatusID = 1;
            utilizationID = Inv_UtilizationManager.InsertInv_Utilization(inv_Utilization);
            txtUtilizationID.Text = utilizationID.ToString();
            hlnkUtilizationPrint.NavigateUrl = "UtilizationPrint.aspx?UtilizationID="+utilizationID.ToString();
            hlnkUtilizationPrint.Visible = true;

            sql += "Update ACC_JournalMaster set Note='Utilization ID = " + utilizationID.ToString() + "' where ACC_JournalMasterID="+JournalMasterID.ToString()+";";
        }
        else
        {
            utilizationID = int.Parse(txtUtilizationID.Text);
            DataSet ds = CommonManager.SQLExec("select ExtraField1,ExtraField2 from Inv_Utilization where Inv_UtilizationID="+txtUtilizationID.Text);
            if (ds.Tables[0].Rows.Count == 0)
            {
                showAlartMessage("Wrong old utilization ID");
                return;
            }
            JournalMasterID = int.Parse(ds.Tables[0].Rows[0]["ExtraField1"].ToString());
            wastageID = int.Parse(ds.Tables[0].Rows[0]["ExtraField2"].ToString());
        }

        string inv_itemID="";
        //update item
        foreach (GridViewRow gvr in gvInv_IssueDetail.Rows)
        {
            TextBox txtUtilization = (TextBox)gvr.FindControl("txtUtilization");
            TextBox txtWasted = (TextBox)gvr.FindControl("txtWasted");
            TextBox txtProductionQuantity = (TextBox)gvr.FindControl("txtProductionQuantity");
            TextBox txtProductionQuantityFresh = (TextBox)gvr.FindControl("txtProductionQuantityFresh");
            TextBox txtProductionQuantityReject = (TextBox)gvr.FindControl("txtProductionQuantityReject");
            Label lblApproximateQuantity = (Label)gvr.FindControl("lblApproximateQuantity");
            Label lblExtraField1 = (Label)gvr.FindControl("lblExtraField1");
            Label lblItemCode = (Label)gvr.FindControl("lblItemCode");
            Label lblPricePerUnit = (Label)gvr.FindControl("lblPricePerUnit");
            Label lblProductName = (Label)gvr.FindControl("lblProductName");
            CheckBox chkSelect = (CheckBox)gvr.FindControl("chkSelect");
            CheckBox chkMain = (CheckBox)gvr.FindControl("chkMain");

            HiddenField hfItemID = (HiddenField)gvr.FindControl("hfItemID");
            HiddenField hfRawMaterialID = (HiddenField)gvr.FindControl("hfRawMaterialID");
            HiddenField hfInv_IssueDetailID = (HiddenField)gvr.FindControl("hfInv_IssueDetailID");
            HiddenField hfACC_HeadTypeID = (HiddenField)gvr.FindControl("hfACC_HeadTypeID");
            txtWasted.Text = "0";
            decimal totalmoney = (decimal.Parse(txtUtilization.Text) + decimal.Parse(txtWasted.Text));

            if (chkSelect.Checked && decimal.Parse(txtUtilization.Text)!=0)
            {

                if (decimal.Parse(lblExtraField1.Text) < (decimal.Parse(txtUtilization.Text) + decimal.Parse(txtWasted.Text)))
                {
                    showAlartMessage("Stock can not be less than utilization and wastage for " + lblItemCode.Text);
                    return;
                }

                if (chkMain.Checked)
                {
                    inv_itemID=hfItemID.Value;
                }

                //update Inv_IssueDetail
                sql += "Update Inv_IssueDetail set ExtraField1 =(cast ((cast(ExtraField1 as decimal(18,2))-" + txtUtilization.Text + ") as nvarchar)) " +
                        @", ExtraField3 =(cast ((cast(ExtraField3 as decimal(18,2))+" + txtUtilization.Text + ") as nvarchar)) "
                        + (txtWasted.Text == "0" ? "" : ", ExtraField4 =(cast ((cast(ExtraField4 as decimal(18,2))+" + txtWasted.Text + ") as nvarchar)) ")
                        + (lblProductName.Text == "N/A" ? "" : ", AdditionalWithIssueDetailID+=" + txtProductionQuantity.Text )
                        +"  where Inv_IssueDetailID=" + hfInv_IssueDetailID.Value + ";";

                //update Inv_Item
                sql += "Update Inv_Item set UtilizedQuantity+= "+txtUtilization.Text
                        + (txtWasted.Text == "0" ? "" : ", ExtraFieldQuantity4 +=" + txtWasted.Text + " ")
                    + "  where Inv_ItemID=" + hfItemID.Value + ";";

                //Inv_ItemTransaction
                sql += @"INSERT INTO [Inv_ItemTransaction]
                       ([ItemID]
                       ,[Quantity]
                       ,[ItemTrasactionTypeID]
                       ,[ReferenceID]
                       ,[ExtraField1]
                       ,[ExtraField2]
                       ,[ExtraField3]
                       ,[ExtraField4]
                       ,[ExtraField5]
                       ,[AddedBy]
                       ,[AddedDate]
                       ,[UpdatedBy]
                       ,[UpdatedDate]
                       ,[RowStatusID])
                        VALUES (" + hfItemID.Value + "," + txtUtilization.Text + ",4," + utilizationID
                                  + ",'" + (chkMain.Checked ? txtProductionQuantity.Text : "0") + @"','" + (chkMain.Checked ? lblApproximateQuantity.Text : "0") + @"','" + hfInv_IssueDetailID.Value + @"','" + (chkMain.Checked ? txtProductionQuantityFresh.Text : "0") + @"','" + (chkMain.Checked ? txtProductionQuantityReject.Text : "0") + @"'," + getLogin().LoginID + ",GETDATE()," + getLogin().LoginID + ",'" + DateTime.Parse(txtDate.Text).ToString("yyyy-MM-dd") + "',1);";

                sql += @"INSERT INTO [ACC_JournalDetail]
                               ([JournalMasterID]
                               ,[ACC_ChartOfAccountLabel4ID]
                               ,[ACC_ChartOfAccountLabel3ID]
                               ,[WorkStation]
                               ,[Debit]
                               ,[Credit]
                               ,[ExtraField3]
                               ,[ExtraField2]
                               ,[ExtraField1]
                               ,[AddedBy]
                               ,[AddedDate]
                               ,[UpdatedBy]
                               ,[UpdatedDate]
                               ,[RowStatusID])
                         VALUES("
                    + JournalMasterID + ","
                    + ddlFinalProduct.SelectedValue + ","
                    + "9" + ","
                    + ddlWorkSatation.SelectedValue + ","
                    + (totalmoney * decimal.Parse(lblPricePerUnit.Text)).ToString("0.00") + ","
                    + "0" + ","
                    + "''" + ","
                    + "''" + ","
                    + "'" + hfItemID.Value + "'" + ","
                    + getLogin().LoginID + ","
                             + "GETDATE()" + ","
                             + getLogin().LoginID + ","
                             + "GETDATE()" + ","
                             + "1);"
                             ;

                sql += @"INSERT INTO [ACC_JournalDetail]
                               ([JournalMasterID]
                               ,[ACC_ChartOfAccountLabel4ID]
                               ,[ACC_ChartOfAccountLabel3ID]
                               ,[WorkStation]
                               ,[Debit]
                               ,[Credit]
                               ,[ExtraField3]
                               ,[ExtraField2]
                               ,[ExtraField1]
                               ,[AddedBy]
                               ,[AddedDate]
                               ,[UpdatedBy]
                               ,[UpdatedDate]
                               ,[RowStatusID])
                         VALUES("
                    + JournalMasterID + ","
                    + hfRawMaterialID.Value + ","
                    + (hfACC_HeadTypeID.Value=="2"? "5":"7") + ","
                    + ddlWorkSatation.SelectedValue + ","
                    + "0" + ","
                    + (totalmoney * decimal.Parse(lblPricePerUnit.Text)).ToString("0.00") + ","
                    + "''" + ","
                    + "''" + ","
                    + "'" + hfItemID.Value + "'" + ","
                    + getLogin().LoginID + ","
                             + "GETDATE()" + ","
                             + getLogin().LoginID + ","
                             + "GETDATE()" + ","
                             + "1);"
                             ;

                /*
                if (txtWasted.Text != "0")
                {
                    sql += @"INSERT INTO [Inv_ItemTransaction]
                       ([ItemID]
                       ,[Quantity]
                       ,[ItemTrasactionTypeID]
                       ,[ReferenceID]
                       ,[ExtraField1]
                       ,[ExtraField2]
                       ,[ExtraField3]
                       ,[ExtraField4]
                       ,[ExtraField5]
                       ,[AddedBy]
                       ,[AddedDate]
                       ,[UpdatedBy]
                       ,[UpdatedDate]
                       ,[RowStatusID])
                        VALUES (" + hfItemID.Value + "," + txtWasted.Text + ",6," + wastageID
                                  + ",'','','','',''," + getLogin().LoginID + ",GETDATE()," + getLogin().LoginID + ",'" + DateTime.Parse(txtDate.Text).ToString("yyyy-MM-dd") + "',1);";

                    sql += @"INSERT INTO [ACC_JournalDetail]
                               ([JournalMasterID]
                               ,[ACC_ChartOfAccountLabel4ID]
                               ,[ACC_ChartOfAccountLabel3ID]
                               ,[WorkStation]
                               ,[Debit]
                               ,[Credit]
                               ,[ExtraField3]
                               ,[ExtraField2]
                               ,[ExtraField1]
                               ,[AddedBy]
                               ,[AddedDate]
                               ,[UpdatedBy]
                               ,[UpdatedDate]
                               ,[RowStatusID])
                         VALUES("
                        + JournalMasterID + ","
                        + ddlFinalProduct.SelectedValue + ","
                        + "9" + ","
                        + ddlWorkSatation.SelectedValue + ","
                        + (totalmoney * decimal.Parse(lblPricePerUnit.Text)).ToString("0.00") + ","
                        + "0" + ","
                        + "''" + ","
                        + "''" + ","
                        + "'" + hfItemID.Value + "'" + ","
                        + getLogin().LoginID + ","
                                 + "GETDATE()" + ","
                                 + getLogin().LoginID + ","
                                 + "GETDATE()" + ","
                                 + "1);"
                                 ;

                    sql += @"INSERT INTO [ACC_JournalDetail]
                               ([JournalMasterID]
                               ,[ACC_ChartOfAccountLabel4ID]
                               ,[ACC_ChartOfAccountLabel3ID]
                               ,[WorkStation]
                               ,[Debit]
                               ,[Credit]
                               ,[ExtraField3]
                               ,[ExtraField2]
                               ,[ExtraField1]
                               ,[AddedBy]
                               ,[AddedDate]
                               ,[UpdatedBy]
                               ,[UpdatedDate]
                               ,[RowStatusID])
                         VALUES("
                        + JournalMasterID + ","
                        + hfRawMaterialID.Value + ","
                        +  "7" + ","
                        + ddlWorkSatation.SelectedValue + ","
                        + "0" + ","
                        + (totalmoney * decimal.Parse(lblPricePerUnit.Text)).ToString("0.00") + ","
                        + "''" + ","
                        + "''" + ","
                        + "'" + hfItemID.Value + "'" + ","
                        + getLogin().LoginID + ","
                                 + "GETDATE()" + ","
                                 + getLogin().LoginID + ","
                                 + "GETDATE()" + ","
                                 + "1);"
                                 ;

                }
                */
            }
        }

        foreach (DataListItem item in dlSize.Items)
        {
            TextBox txtQty = (TextBox)item.FindControl("txtQty");
            if (txtQty.Text != "")
            {
                sql += @"INSERT INTO [Inv_UtilizationDetails]
                           ([Pos_SizeID]
                           ,[ProductID]
                           ,[Inv_ItemID]
                           ,[Inv_UtilizationID]
                           ,[Inv_ItemTransactionID]
                           ,[FabricsCost]
                           ,[AccesoriesCost]
                           ,[Overhead]
                           ,[OthersCost]
                           ,[ProductionQuantity]
                           ,[ProcessedQuantity]
                           ,[IsReject]
                           ,[ExtraField1]
                           ,[ExtraField2]
                           ,[ExtraField3]
                           ,[ExtraField4]
                           ,[ExtraField5]
                           ,[AddedBy]
                           ,[AddedDate]
                           ,[UpdatedBy]
                           ,[UpdatedDate]
                           ,[RowStatusID])
                     VALUES
                           ("+txtQty.ValidationGroup+","
                             +ddlFinalProduct.SelectedValue+","
                             + inv_itemID + ","
                             + utilizationID + ","
                             + "0" + ","
                             + txtFabricsCost.Text + ","
                             + txtAccessoriesCost.Text + ","
                             + txtOverheadCost.Text + ","
                             + txtLabourCost.Text + ","
                             + txtQty.Text + ","
                             + "0" + ","
                             + "0" + ","
                             + ddlPos_Color.SelectedValue + ","
                             + "''" + ","
                             + "''" + ","
                             + "''" + ","
                             + "''" + ","
                             + getLogin().LoginID + ","
                             +"GETDATE()"+","
                             + getLogin().LoginID + ","
                             + "GETDATE()" + ","
                             +"1);"
                             ;
            }
        }

        foreach (DataListItem item in dlSizeRejected.Items)
        {
            TextBox txtQty = (TextBox)item.FindControl("txtQty");
            if (txtQty.Text != "")
            {
                sql += @"INSERT INTO [Inv_UtilizationDetails]
                           ([Pos_SizeID]
                           ,[ProductID]
                           ,[Inv_ItemID]
                           ,[Inv_UtilizationID]
                           ,[Inv_ItemTransactionID]
                           ,[FabricsCost]
                           ,[AccesoriesCost]
                           ,[Overhead]
                           ,[OthersCost]
                           ,[ProductionQuantity]
                           ,[ProcessedQuantity]
                           ,[IsReject]
                           ,[ExtraField1]
                           ,[ExtraField2]
                           ,[ExtraField3]
                           ,[ExtraField4]
                           ,[ExtraField5]
                           ,[AddedBy]
                           ,[AddedDate]
                           ,[UpdatedBy]
                           ,[UpdatedDate]
                           ,[RowStatusID])
                     VALUES
                           (" + txtQty.ValidationGroup + ","
                             + ddlFinalProduct.SelectedValue + ","
                             + inv_itemID + ","
                              + utilizationID + ","
                             + "0" + ","
                             + txtFabricsCost.Text + ","
                             + txtAccessoriesCost.Text + ","
                             + txtOverheadCost.Text + ","
                             + txtLabourCost.Text + ","
                             + txtQty.Text + ","
                             + "0" + ","
                             + "1" + ","
                             + ddlPos_Color.SelectedValue + ","
                             + "''" + ","
                             + "''" + ","
                             + "''" + ","
                             + "''" + ","
                             + getLogin().LoginID + ","
                             + "GETDATE()" + ","
                             + getLogin().LoginID + ","
                             + "GETDATE()" + ","
                             + "1);"
                             ;
            }
        }
        try
        {
            if (CommonManager.SQLExec(sql + "select 1;").Tables[0].Rows[0][0].ToString() == "1")
            {
                showAlartMessage("Successfully added the products");
                cearlAlltheControl();
                //btnSearch_Click(this, new EventArgs());
            }
        }
        catch (Exception ex)
        {
            showAlartMessage("Someting wrong");
        }
    }