}//Page_Load

    private void QueryData()
    {
        #region
        DataTable dt = null;
        string SessionIDName = string.Format("{0}_{1}", strPrefixed, PageTimeStamp.Value);

        if (dtTransPayRoute != null)
        {
            DataView dv = dtTransPayRoute.DefaultView;
            dv.RowFilter = string.Format("TRANS_NO = '{0}' and PAY_NO ='{1}'", s_TRANS_NO, s_PAY_NO);
            dt = dv.ToTable();
        }

        if (dt == null)
        {
            TRNModel.VDS_TRN13_BCO BCO = new TRNModel.VDS_TRN13_BCO(ConnectionDB);
            ArrayList ParameterList = new ArrayList();
            ParameterList.Clear();
            ParameterList.Add(s_TRANS_NO);
            ParameterList.Add(s_PAY_NO);
            dt = BCO.QUERY_TRANS_PAY_ROUTE(ParameterList);
        }

        bAfterQueryDataBinding = true;

        if (!dt.Columns.Contains("CHECKED"))//增加欄位以方便判別是否可
            dt.Columns.Add("CHECKED");

        if (!dt.Columns.Contains("ROWID"))//增加欄位以判別勾選與否
            dt.Columns.Add("ROWID");

        if (!dt.Columns.Contains("CODE"))//增加欄位以判別勾選與否
            dt.Columns.Add("CODE");

        if (!dt.Columns.Contains("ROWNUM"))//增加欄位以判別勾選與否
            dt.Columns.Add("ROWNUM");


        hidden_RowID_MaxID.Value = dt == null ? "-1" : (dt.Rows.Count - 1).ToString();//記錄最大ROWID
        hidden_RowID_Selected.Value = "";//清空已選ROWID

        Session[SessionIDName] = dt;


        SetRowIDToDataTable(true);//設定ROWID

        GridView1.DataSource = dt;
        GridView1.PageSize = 20;
        GridView1.DataBind();
        GridView1.SelectedIndex = -1;
        
        bAfterQueryDataBinding = false;

        if (dt == null || (dt != null && dt.Rows.Count <= 0))
        {
            ErrorMsgLabel.Text = "查無資料";
        }
        #endregion
    }
Beispiel #2
0
    /// <summary>
    /// 繫結資料到控制項
    /// </summary>
    /// <param name="vdb"></param>
    private void QueryData()
    {
        #region
        try
        {
            string SessionIDName_ROUTE = string.Format("{0}_{1}_ROUTE", PAGE_DT_01, PageTimeStamp.Value);
            string SessionIDName_PAY = string.Format("{0}_{1}_PAY", PAGE_DT_01, PageTimeStamp.Value);

            TRNModel.VDS_TRN13_BCO BCO = new TRNModel.VDS_TRN13_BCO(ConnectionDB);
            DataSet ds = null;
            DataTable dt_ROUTE = null, dt_PAY = null;
            ds = BCO.QUERY_TRANS_ROUTE_MAIN(GetQueryParams());

            dt_ROUTE = ds.Tables[0].Copy();
            dt_PAY = ds.Tables[1].Copy();

            dtRoute = ds.Tables[0].Copy();
            dtPay = ds.Tables[1].Copy();

            bAfterQueryDataBinding = true;

            #region ROUTE

            #region original
            if (!dt_ROUTE.Columns.Contains("CHECKED"))//增加欄位以方便判別是否可
                dt_ROUTE.Columns.Add("CHECKED");

            if (!dt_ROUTE.Columns.Contains("ROWID"))//增加欄位以判別勾選與否
                dt_ROUTE.Columns.Add("ROWID");

            if (!dt_ROUTE.Columns.Contains("CODE"))//增加欄位以判別勾選與否
                dt_ROUTE.Columns.Add("CODE");

            if (!dt_ROUTE.Columns.Contains("ROWNUM"))//增加欄位以判別勾選與否
                dt_ROUTE.Columns.Add("ROWNUM");
            #endregion

            #region editing
            if (!dtRoute.Columns.Contains("CHECKED"))//增加欄位以方便判別是否可
                dtRoute.Columns.Add("CHECKED");

            if (!dtRoute.Columns.Contains("ROWID"))//增加欄位以判別勾選與否
                dtRoute.Columns.Add("ROWID");

            if (!dtRoute.Columns.Contains("CODE"))//增加欄位以判別勾選與否
                dtRoute.Columns.Add("CODE");

            if (!dtRoute.Columns.Contains("ROWNUM"))//增加欄位以判別勾選與否
                dtRoute.Columns.Add("ROWNUM");
            #endregion

            #endregion

            #region PAY

            #region original
            if (!dt_PAY.Columns.Contains("CHECKED"))//增加欄位以方便判別是否可
                dt_PAY.Columns.Add("CHECKED");

            if (!dt_PAY.Columns.Contains("ROWID"))//增加欄位以判別勾選與否
                dt_PAY.Columns.Add("ROWID");

            if (!dt_PAY.Columns.Contains("CODE"))//增加欄位以判別勾選與否
                dt_PAY.Columns.Add("CODE");

            if (!dt_PAY.Columns.Contains("ROWNUM"))//增加欄位以判別勾選與否
                dt_PAY.Columns.Add("ROWNUM");
            #endregion

            #region editing
            if (!dtPay.Columns.Contains("CHECKED"))//增加欄位以方便判別是否可
                dtPay.Columns.Add("CHECKED");

            if (!dtPay.Columns.Contains("ROWID"))//增加欄位以判別勾選與否
                dtPay.Columns.Add("ROWID");

            if (!dtPay.Columns.Contains("CODE"))//增加欄位以判別勾選與否
                dtPay.Columns.Add("CODE");

            if (!dtPay.Columns.Contains("ROWNUM"))//增加欄位以判別勾選與否
                dtPay.Columns.Add("ROWNUM");
            #endregion

            #endregion

            #region PAY ROUTE
            ArrayList ParameterList = new ArrayList();
            ParameterList.Add(SLP_TRN_TransNo1.Text);
            ParameterList.Add(null);
            dtTransPayRoute = BCO.QUERY_TRANS_PAY_ROUTE(ParameterList);
            #endregion

            if (ds == null || ds.Tables.Count <= 0 || (ds.Tables[0].Rows.Count <= 0 && ds.Tables[1].Rows.Count <= 0))
            {
                gv_Route.DataBind();
                gv_Pay.DataBind();
                Panel_ROUTE.Visible = false;
                Panel_PAY.Visible = false;

                if (CurrentPageMode != PageCurrentMode.Insert)
                {
                    ErrorMsgLabel.Text = "查無資料";
                }
            }
            else
            {
                Panel_ROUTE.Visible = true;
                Panel_PAY.Visible = true;

                if (CurrentPageMode == PageCurrentMode.Insert)
                {
                    CurrentPageMode = PageCurrentMode.Edit;
                }
                else
                {
                    CurrentPageMode = PageCurrentMode.Readonly;
                    SetControlsByCurrentPageMode();
                }


                #region
                //ROUTE
                hidden_RowID_MaxID_ROUTE.Value = dt_ROUTE == null ? "-1" : (dt_ROUTE.Rows.Count - 1).ToString();//記錄最大ROWID
                hidden_RowID_Selected_ROUTE.Value = "";//清空已選ROWID_ROUTE
                hidden_RowID_Selected_STATUS.Value = "";//清空已選ROWID_STATUS

                Session[SessionIDName_ROUTE] = dt_ROUTE;
                SetRowIDToDataTable(false, EditingGridview.ROUTE);//設定ROWID_ROUTE

                gv_Route.DataSource = dt_ROUTE;
                gv_Route.PageIndex = 0;
                gv_Route.DataBind();
                gv_Route.SelectedIndex = -1;


                //PAY
                hidden_RowID_MaxID_PAY.Value = dt_PAY == null ? "-1" : (dt_PAY.Rows.Count - 1).ToString();//記錄最大ROWID
                hidden_RowID_Selected_PAY.Value = "";//清空已選ROWID_PAY

                Session[SessionIDName_PAY] = dt_PAY;
                SetRowIDToDataTable(false, EditingGridview.PAY);//設定ROWID_PAY

                gv_Pay.DataSource = dt_PAY;
                gv_Pay.PageIndex = 0;
                gv_Pay.DataBind();
                gv_Pay.SelectedIndex = -1;

                #endregion
            }

            bAfterQueryDataBinding = false;

        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message;
        }
        #endregion
    }