Esempio n. 1
0
    /// <summary>
    /// 繫結資料到控制項
    /// </summary>
    /// <param name="vdb"></param>
    private void QueryData()
    {
        #region
        try
        {
            string SessionIDName_FEE = string.Format("{0}_{1}_FEE", PAGE_DT_01, PageTimeStamp.Value);

            TRNModel.VDS_TRN16_BCO BCO = new TRNModel.VDS_TRN16_BCO(ConnectionDB);
            DataTable dt_FEE = null;
            dt_FEE = BCO.QUERY_TRN_DRIVER_FEE(GetQueryParams());

            if (dt_FEE != null)
                dtFee = dt_FEE.Copy();

            bAfterQueryDataBinding = true;

            #region FEE

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

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

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

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

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

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

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

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

            #endregion

            if (dt_FEE == null || dt_FEE.Rows.Count <= 0)
            {
                if (CurrentPageMode != PageCurrentMode.Insert)
                {
                    ErrorMsgLabel.Text = "查無資料";
                }
            }
            else
            {
                Panel_FEE.Visible = true;

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

                #region
                hidden_RowID_MaxID_FEE.Value = dt_FEE == null ? "-1" : (dt_FEE.Rows.Count - 1).ToString();//記錄最大ROWID
                hidden_RowID_Selected_FEE.Value = "";//清空已選ROWID_FEE

                Session[SessionIDName_FEE] = dt_FEE;
                SetRowIDToDataTable(false, EditingGridview.FEE);//設定ROWID_FEE

                gv_Fee.DataSource = dt_FEE;
                gv_Fee.PageIndex = 0;
                gv_Fee.DataBind();
                gv_Fee.SelectedIndex = -1;
                #endregion
            }

            bAfterQueryDataBinding = false;

        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message;
        }
        #endregion
    }
Esempio n. 2
0
    private DataTable GetDriverName()
    {
        #region
        try
        {
            TRNModel.VDS_TRN16_BCO BCO = new TRNModel.VDS_TRN16_BCO(ConnectionDB);
            return BCO.QUERY_DRIVER_NAME();
        }
        catch (Exception ex)
        {
            throw ex;
        }

        #endregion
    }
Esempio n. 3
0
    }//btn_Add_Click

    protected void btn_Save_Click(object sender, EventArgs e)
    {
        #region
        try
        {
            #region

            SaveCurrentGridviewValue();

            if (CheckDetailIsExisted())
            {
                //if (CheckDetailIsDuplicated())
                //{
                #region Variables
                TRNModel.VDS_TRN16_BCO BCO = new TRNModel.VDS_TRN16_BCO(ConnectionDB);
                string strErrMsg = "";
                string strPK = "";
                DataRow[] drAry = null;
                bool bResult = false;
                Int32 i32ID, i32ID_C;
                ArrayList ParameterList = new ArrayList();
                TRNModel.TRNCommon BCOCommon = new TRNModel.TRNCommon();
                System.Data.Common.DbTransaction DBT = BCOCommon.OpenAndGetConnection(ConnectionDB).BeginTransaction();
                #endregion

                if (CurrentPageMode == PageCurrentMode.Insert)
                {
                    #region
                    try
                    {
                        #region 新增
                        for (Int32 i = 0; i <= dtFee.Rows.Count - 1; i++)
                        {
                            if (dtFee.Rows[i].RowState != DataRowState.Deleted)
                            {
                                if (strErrMsg == "")
                                {
                                    //TRN_DRIVER_FEE
                                    ParameterList.Clear();
                                    ParameterList.Add(dtFee.Rows[i]["CAL_MONTH"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["TYPE_NO"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["TRANS_NO"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["DRIVER_NAME"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["ST_ACCEPT_DATE"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["STORE"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["ITEM"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["PERIOD"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["PRICE"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["DIFF_QTY"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["MEMO"].ToString());
                                    ParameterList.Add(Session["UID"].ToString());
                                    bResult = BCO.ADD_TRN_DRIVER_FEE(ParameterList, DBT, out i32ID, out strErrMsg);
                                }
                                else
                                {
                                    break;
                                    DBT.Rollback();//交易失敗
                                }
                            }
                        }
                        #endregion

                        DBT.Commit();//交易成功
                    }
                    catch (Exception ex)
                    {
                        DBT.Rollback();//交易失敗
                        throw ex;
                    }


                    if (bResult && strErrMsg == "")
                    {
                        CurrentPageMode = PageCurrentMode.Readonly;
                        SetControlsByCurrentPageMode();
                        QueryData();
                        ErrorMsgLabel.Text = "新增成功";
                    }
                    else
                    {
                        ErrorMsgLabel.Text = strErrMsg;
                    }
                    #endregion
                }
                else if (CurrentPageMode == PageCurrentMode.Edit)
                {
                    #region
                    try
                    {

                        bResult = true;

                        #region 刪除
                        DataTable dtDeleted_FEE = dtFee.GetChanges(DataRowState.Deleted); ;
                        if (dtDeleted_FEE != null)
                        {
                            for (Int32 j = 0; j <= dtDeleted_FEE.Rows.Count - 1; j++)
                            {
                                if (bResult)
                                {
                                    ParameterList.Clear();
                                    ParameterList.Add(dtDeleted_FEE.Rows[j]["CAL_MONTH", DataRowVersion.Original].ToString());
                                    ParameterList.Add(dtDeleted_FEE.Rows[j]["TYPE_NO", DataRowVersion.Original].ToString());
                                    ParameterList.Add(dtDeleted_FEE.Rows[j]["TRANS_NO", DataRowVersion.Original].ToString());
                                    ParameterList.Add(dtDeleted_FEE.Rows[j]["DRIVER_NAME", DataRowVersion.Original].ToString());
                                    ParameterList.Add(dtDeleted_FEE.Rows[j]["ST_ACCEPT_DATE", DataRowVersion.Original].ToString());

                                    ParameterList.Add(dtDeleted_FEE.Rows[j]["STORE", DataRowVersion.Original].ToString());
                                    ParameterList.Add(dtDeleted_FEE.Rows[j]["ITEM", DataRowVersion.Original].ToString());
                                    ParameterList.Add(dtDeleted_FEE.Rows[j]["PERIOD", DataRowVersion.Original].ToString());
                                    ParameterList.Add(Session["UID"].ToString());
                                    BCO.DEL_TRN_DRIVER_FEE(ParameterList, DBT);
                                }
                                else
                                {
                                    break;
                                    DBT.Rollback();//交易失敗
                                }
                            }
                        }
                        #endregion

                        #region 修改
                        for (Int32 i = 0; i <= dtFee.Rows.Count - 1; i++)
                        {
                            if (dtFee.Rows[i].RowState != DataRowState.Deleted)
                            {
                                if (strErrMsg == "")
                                {
                                    //TRN_DRIVER_FEE
                                    ParameterList.Clear();
                                    ParameterList.Add(dtFee.Rows[i]["CAL_MONTH"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["TYPE_NO"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["TRANS_NO"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["DRIVER_NAME"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["ST_ACCEPT_DATE"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["STORE"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["ITEM"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["PERIOD"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["PRICE"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["DIFF_QTY"].ToString());
                                    ParameterList.Add(dtFee.Rows[i]["MEMO"].ToString());
                                    ParameterList.Add(Session["UID"].ToString());
                                    bResult = BCO.ADD_TRN_DRIVER_FEE(ParameterList, DBT, out i32ID, out strErrMsg);
                                }
                                else
                                {
                                    break;
                                    DBT.Rollback();//交易失敗
                                }
                            }
                        }
                        #endregion

                        DBT.Commit();//交易成功

                    }
                    catch (Exception ex)
                    {
                        DBT.Rollback();//交易失敗
                        throw ex;
                    }


                    if (bResult && strErrMsg == "")
                    {
                        CurrentPageMode = PageCurrentMode.Readonly;
                        SetControlsByCurrentPageMode();
                        QueryData();
                        ErrorMsgLabel.Text = "更新成功";
                    }
                    else
                    {
                        ErrorMsgLabel.Text = strErrMsg;
                    }
                    #endregion
                }
                //}
            }
            #endregion
        }
        catch (Exception ex)
        {
            gv_Fee.DataSource = dtFee;
            gv_Fee.DataBind();
            ErrorMsgLabel.Text = ex.Message;
            UpdatePanel_ALL.Update();
        }
        #endregion
    }//btn_Save_Click