public void AccDelete()
        {
            OpenAccDAL objOpenStock = new OpenAccDAL();
            Int64      intStck = 0; string strMsg = string.Empty;
            DataTable  DT = (DataTable)ViewState["dt"];

            if (ViewState["dtDelete"] != null)
            {
                dtDelete = (DataTable)ViewState["dtDelete"];
            }
            if (dtDelete != null && dtDelete.Rows.Count > 0)
            {
                using (TransactionScope Tran = new TransactionScope(TransactionScopeOption.Required))
                {
                    intStck      = objOpenStock.Delete(dtDelete);
                    objOpenStock = null;
                    if (intStck > 0)
                    {
                        Tran.Complete();
                        strMsg = "Record updated successfully.";
                    }
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "alertstrMsg", "PassMessage('" + strMsg + "')", true);
                }
            }
        }
        private void FetchRecords()
        {
            Int64      YearIdno = Convert.ToInt64(ddlDateRange.SelectedValue);
            Int64      LocIdno  = ddlLocation.SelectedIndex == 0 ? 0 : Convert.ToInt64(ddlLocation.SelectedValue);
            Int64      ItemIdno = ddlItemName.SelectedIndex == 0 ? 0 : Convert.ToInt64(ddlItemName.SelectedValue);
            OpenAccDAL objMast  = new OpenAccDAL();
            var        Mast     = objMast.SelectStckMast(YearIdno, LocIdno, ItemIdno);

            if (Mast != null && Mast.Count > 0)
            {
                dtTemp = (DataTable)ViewState["dt"];
                if (dtTemp.Rows.Count > 0)
                {
                    dtTemp          = null;
                    dtTemp          = CreateDt();
                    ViewState["dt"] = dtTemp;
                }
                for (int i = 0; i < Mast.Count; i++)
                {
                    ApplicationFunction.DatatableAddRow(dtTemp, i + 1, Convert.ToString(DataBinder.Eval(Mast[i], "YearIdno")), Convert.ToString(DataBinder.Eval(Mast[i], "LocIdno")), Convert.ToString(DataBinder.Eval(Mast[i], "LocName")), Convert.ToString(DataBinder.Eval(Mast[i], "ItemIdno")), Convert.ToString(DataBinder.Eval(Mast[i], "ItemName")), string.IsNullOrEmpty(Convert.ToString(DataBinder.Eval(Mast[i], "Qty"))) == true ? "0" : Convert.ToString(DataBinder.Eval(Mast[i], "Qty")), string.IsNullOrEmpty(Convert.ToString(DataBinder.Eval(Mast[i], "Rate"))) == true ? "0.00" : Convert.ToString(DataBinder.Eval(Mast[i], "Rate")));
                }
                ViewState["dt"] = dtTemp;

                dtTemp = (DataTable)ViewState["dt"];
                this.BindGridT();
            }
            else
            {
                dtTemp             = null;
                dtTemp             = CreateDt();
                ViewState["dt"]    = dtTemp;
                grdMain.DataSource = dtTemp;
                grdMain.DataBind();
            }
        }
        private void BindGrid()
        {
            OpenAccDAL objDAL      = new OpenAccDAL();
            var        lstGridData = objDAL.SelectStckMastList(Convert.ToInt32(ddlDateRange.SelectedValue), Convert.ToInt64(ddlLocation.SelectedIndex) == 0 ? 0 : Convert.ToInt32(ddlLocation.SelectedValue));

            objDAL = null;
            if (lstGridData != null && lstGridData.Count > 0)
            {
                grdMain.DataSource = lstGridData;
                grdMain.DataBind();
                lblTotalRecord.Text = "T. Record (s): " + lstGridData.Count;

                int startRowOnPage = (grdMain.PageIndex * grdMain.PageSize) + 1;
                int lastRowOnPage  = startRowOnPage + grdMain.Rows.Count - 1;
                lblcontant.Text    = "Showing " + startRowOnPage.ToString() + " - " + lastRowOnPage.ToString() + " of " + lstGridData.Count.ToString();
                lblcontant.Visible = true;
                divpaging.Visible  = true;

                imgBtnExcel.Visible = true;
            }
            else
            {
                grdMain.DataSource = null;
                grdMain.DataBind();
                lblTotalRecord.Text = "T. Record (s): " + "0";
                lblcontant.Visible  = false;
                divpaging.Visible   = false;
                imgBtnExcel.Visible = false;
            }
        }
        protected void lnkbtnSave_OnClick(object sender, EventArgs e)
        {
            string     strMsg       = string.Empty;
            OpenAccDAL objOpenStock = new OpenAccDAL();
            Int64      intStck      = 0;

            DataTable DT = (DataTable)ViewState["dt"];

            if (ViewState["dtDelete"] != null)
            {
                dtDelete = (DataTable)ViewState["dtDelete"];
            }
            if (DT != null && DT.Rows.Count > 0)
            {
                using (TransactionScope Tran = new TransactionScope(TransactionScopeOption.Required))
                {
                    //if (string.IsNullOrEmpty(hidstckidno.Value) == true)
                    //{
                    intStck = objOpenStock.Insert(DT, dtDelete);

                    //}
                    //else
                    //{
                    //    intStck = objOpenStock.Update(DT, Convert.ToInt64(hidstckidno.Value));
                    //}
                    objOpenStock = null;

                    if (intStck > 0)
                    {
                        if (string.IsNullOrEmpty(hidstckidno.Value) == false)
                        {
                            Tran.Complete();
                            strMsg = "Record updated successfully.";
                        }
                        else
                        {
                            Tran.Complete();
                            strMsg = "Record saved successfully.";
                        }
                        ClearControls();
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(hidstckidno.Value) == false)
                        {
                            Tran.Dispose();
                            strMsg = "Record not updated.";
                        }
                        else
                        {
                            Tran.Dispose();
                            strMsg = "Record not saved.";
                        }
                    }
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "alertstrMsg", "PassMessage('" + strMsg + "')", true);
                    ddlLocation.Focus();
                }
            }
        }
        private void BindCity()
        {
            OpenAccDAL objTollMastDAL = new OpenAccDAL();
            var        lst            = objTollMastDAL.BindCityAll();

            ddlLocation.DataSource     = lst;
            ddlLocation.DataTextField  = "City_Name";
            ddlLocation.DataValueField = "City_Idno";
            ddlLocation.DataBind();
            ddlLocation.Items.Insert(0, new System.Web.UI.WebControls.ListItem("< Choose Location >", "0"));
        }
        private void BindDropdown()
        {
            OpenAccDAL obj      = new OpenAccDAL();
            var        itemname = obj.BindPurchaseItemName();

            obj = null;
            ddlItemName.DataSource     = itemname;
            ddlItemName.DataTextField  = "Item_Name";
            ddlItemName.DataValueField = "Item_idno";
            ddlItemName.DataBind();
            ddlItemName.Items.Insert(0, new System.Web.UI.WebControls.ListItem("< Select >", "0"));
        }
        private void RecordCount()
        {
            OpenAccDAL objDAL      = new OpenAccDAL();
            Int64      lstGridData = objDAL.Count(Convert.ToInt64(ddlDateRange.SelectedValue));

            objDAL = null;
            if (lstGridData != null && lstGridData > 0)
            {
                lblTotalRecord.Text = "T. Record (s): " + lstGridData;
                imgBtnExcel.Visible = false;
            }
            else
            {
                lblTotalRecord.Text = "T. Record (s): 0 ";
            }
        }
        private void BindGridDB()
        {
            OpenAccDAL objOpeningStock = new OpenAccDAL();

            DataTable dtItem = objOpeningStock.SelectPartFromExcel(ApplicationFunction.ConnectionString());

            if (dtItem.Rows.Count > 0)
            {
                for (int i = 0; i < dtItem.Rows.Count; i++)
                {
                    dtTemp = (DataTable)ViewState["dt"];
                    if ((dtTemp != null) && (dtTemp.Rows.Count > 0))
                    {
                        foreach (DataRow row in dtTemp.Rows)
                        {
                            if (Convert.ToString(row["ItemIdno"]) == dtItem.Rows[i]["Item_Idno"].ToString() && Convert.ToString(row["LocIdno"]) == Convert.ToString(ddlLocation.SelectedValue))
                            {
                                string msg = "Item Already Exist For Same Location";
                                ddlItemName.Focus();
                                ShowMessageErr(msg);
                                return;
                            }
                        }
                    }
                    Int32  ROWCount    = Convert.ToInt32(dtTemp.Rows.Count) - 1;
                    int    id          = dtTemp.Rows.Count == 0 ? 1 : (Convert.ToInt32(dtTemp.Rows[ROWCount]["id"])) + 1;
                    string strYearIdno = string.IsNullOrEmpty(ddlDateRange.SelectedValue) ? "0" : (ddlDateRange.SelectedValue);
                    string strItemName = dtItem.Rows[i]["Item_Name"].ToString();
                    string strItemIdno = string.IsNullOrEmpty(dtItem.Rows[i]["Item_Idno"].ToString()) ? "0" : (dtItem.Rows[i]["Item_Idno"].ToString());
                    string strLocName  = ddlLocation.SelectedItem.Text.Trim();
                    string strLocIdno  = string.IsNullOrEmpty(ddlLocation.SelectedValue) ? "0" : (ddlLocation.SelectedValue);
                    string strQty      = string.IsNullOrEmpty(dtItem.Rows[i]["Item_Qty"].ToString()) ? "0" : (dtItem.Rows[i]["Item_Qty"].ToString());
                    string strRate     = string.IsNullOrEmpty(dtItem.Rows[i]["Item_Rate"].ToString()) ? "0" : (dtItem.Rows[i]["Item_Rate"].ToString());
                    ApplicationFunction.DatatableAddRow(dtTemp, id, strYearIdno, strLocIdno, strLocName, strItemIdno, strItemName, strQty, strRate);
                }
            }

            ViewState["dt"] = dtTemp;
            this.BindGridT();
            txtQty.Text               = "";
            txtOpenRate.Text          = "";
            ddlItemName.SelectedValue = "0";
            ddlLocation.SelectedValue = "0";
        }
        protected void grdMain_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "GetExcel")
            {
                DataTable   DtCsv          = CreateDt();
                Int32       RowId          = Convert.ToInt32(e.CommandArgument);
                GridViewRow CurRow         = (GridViewRow)grdMain.Rows[RowId];
                HiddenField hidLocId       = (HiddenField)CurRow.FindControl("hidLocId");
                HiddenField hidYearId      = (HiddenField)CurRow.FindControl("hidYearId");
                OpenAccDAL  objItemMastDAL = new OpenAccDAL();
                var         lst            = objItemMastDAL.GetExcel(Convert.ToInt64(hidLocId.Value), Convert.ToInt64(hidYearId.Value));

                if (lst != null && lst.Count > 0)
                {
                    for (int i = 0; i < lst.Count; i++)
                    {
                        ApplicationFunction.DatatableAddRow(DtCsv, Convert.ToString(DataBinder.Eval(lst[i], "LocName")), Convert.ToString(DataBinder.Eval(lst[i], "ItemName")),
                                                            Convert.ToString(DataBinder.Eval(lst[i], "Qty")), Convert.ToString(DataBinder.Eval(lst[i], "Rate")),
                                                            Convert.ToString(DataBinder.Eval(lst[i], "Amount")));
                    }
                    if ((DtCsv != null) && (DtCsv.Rows.Count != 0))
                    {
                        DtCsv.Columns["LocName"].Caption     = "Location";
                        DtCsv.Columns["ItemName"].ColumnName = "TyreName";
                        DtCsv.Columns["Qty"].Caption         = "Qty";
                        DtCsv.Columns["Rate"].Caption        = "Rate";
                        DtCsv.Columns["Amount"].Caption      = "Amount";
                        DtCsv.Columns["LocName"].SetOrdinal(0);
                        DtCsv.Columns["TyreName"].SetOrdinal(1);
                        DtCsv.Columns["Qty"].SetOrdinal(2);
                        DtCsv.Columns["Rate"].SetOrdinal(3);
                        DtCsv.Columns["Amount"].SetOrdinal(4);
                        DtCsv.AcceptChanges();
                        ExportDataTableToCSV(DtCsv, Convert.ToString("OpeningItemDetails"));
                        Response.Redirect("ManageOpenStockAccessories.aspx");
                    }
                }
            }
        }
        protected void grdMain_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.Header)
            {
                Count = 0;
            }
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                dTotQty  += Convert.ToDouble(DataBinder.Eval(e.Row.DataItem, "Qty"));
                dTotRate += Convert.ToDouble(DataBinder.Eval(e.Row.DataItem, "Rate"));
                Count++;

                // Used to hide Delete button if ItemgrpId exists in Rate Master,Goods Received, Quotation,GR Preparation,Commission Master
                LinkButton lnkbtnDelete = (LinkButton)e.Row.FindControl("lnkbtnDelete");
                string     LocIdno      = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "LocIdno"));
                string     ItemIdno     = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "ItemIdno"));
                if (ItemIdno != "")
                {
                    OpenAccDAL obj       = new OpenAccDAL();
                    var        ItemExist = obj.CheckItemExistInOtherMaster(Convert.ToInt32(ItemIdno), Convert.ToInt32(LocIdno));
                    if (ItemExist != null && ItemExist.Count > 0)
                    {
                        lnkbtnDelete.Visible = false;
                    }
                    else
                    {
                        lnkbtnDelete.Visible = true;
                    }
                }
                // end----
            }
            if (e.Row.RowType == DataControlRowType.Footer)
            {
                Label lblQuantity = (Label)e.Row.FindControl("lblRecordCount");
                lblQuantity.Text = Count.ToString();
            }
        }
        protected void lnkbtnUpload_OnClick(object sender, EventArgs e)
        {
            string msg = string.Empty;

            if (!FileUpload.HasFile)
            {
                FileUpload.Focus();
                msg = "Please Select Excel file!";
                ShowMessageErr(msg);
                return;
            }
            if (ddlDateRange.SelectedValue == "0")
            {
                ddlDateRange.Focus();
                msg = "Please Select Date Range!";
                ShowMessageErr(msg);
                return;
            }
            if (ddlLocation.SelectedValue == "0")
            {
                ddlLocation.Focus();
                msg = "Please Select Location!";
                ShowMessageErr(msg);
                return;
            }

            OpenAccDAL objOpenStockAccess = new OpenAccDAL();
            string     excelfilename      = string.Empty;

            try
            {
                using (TransactionScope Tran = new TransactionScope(TransactionScopeOption.Required))
                {
                    excelfilename = ApplicationFunction.UploadFileServerControl(FileUpload, "ExcelAccessories", "OpeningStockAccessories");
                    if ((System.IO.Path.GetExtension(excelfilename) == ".xls") || (System.IO.Path.GetExtension(excelfilename) == ".xlsx"))
                    {
                        DataTable  dt          = ReadExcelFile("~/ExcelAccessories/" + excelfilename);
                        Int64      value       = 0;
                        OpenAccDAL clsOpngStck = new OpenAccDAL();
                        DataTable  DtnotUpload = dt.Clone();

                        OpenAccDAL objItem = new OpenAccDAL();
                        for (int count = 0; count < dt.Rows.Count; count++)
                        {
                            var lst = objItem.GetItemDetailsExl(Convert.ToString(dt.Rows[i]["Item"]).Trim());
                            if (lst.Count <= 0)
                            {
                                ShowMessageErr(Convert.ToString(dt.Rows[i]["Item"].ToString()).Trim() + " Item Does Not Exist!");
                                return;
                            }
                        }

                        int dttruncate = objOpenStockAccess.TurncatePartsAccessoriesFromExcel(ApplicationFunction.ConnectionString());
                        value = clsOpngStck.InsertPartsByExcel(dt, ApplicationFunction.ConnectionString());

                        BindGridDB();
                    }
                    else
                    {
                        msg = "Excel File Format Not Supported!";
                        ShowMessageErr(msg);
                        return;
                    }
                }
            }
            catch (Exception Ex)
            {
            }
        }