Beispiel #1
0
    private bool SaveData()
    {
        bool bResult = false;
        try
        {
            ErrorMsgLabel.Text = "";
            string strErrMsg = CheckData(hdfID.Value); //檢查編輯期間,已經有人編輯或新增的狀況.
            if (strErrMsg != "")
            {
                ErrorMsgLabel.Text = strErrMsg;
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "MSG", "window.setTimeout(function(){alert('" + strErrMsg + "');}, 500);", true);
                return bResult;
            }

            lblLast_Route.Visible = false;
            if (txtLast_Route.Text.Trim() == "")
            {
                lblLast_Route.Visible = true;
                ErrorMsgLabel.Text = "請檢查資料是否全部輸入完成";
                return bResult;
            }

            WriteToCATEGORY01();
            WriteToCATEGORY02();
            DataTable dtBASE = (DataTable)Session["CGD38_CATEGORY01_" + PageTimeStamp.Value];
            DataTable dtAREA = (DataTable)Session["CGD38_CATEGORY02_" + PageTimeStamp.Value];
            if (this.hdfID.Value == "") //Insert
            {
                CGDModel.VDS_CGD38_BCO BCO = new CGDModel.VDS_CGD38_BCO(ConntionDB);

                #region 主檔資料

                string D_PICK_DATE = slpPickDate.Text;
                string V_PICK_BATCH = txtPICK_BATCH.Text;
                string V_GET_TIME = slpGET_TIME.Text;
                string N_SPEC_ITEMNUM = slpSPEC_ITEMNUM.Text;
                string N_CTRL_ITEMNUM = slpCTRL_ITEMNUM.Text;
                string N_PICK_ITEMNUM = slpPICK_ITEMNUM.Text;
                string N_AMT = slpAmt.Text;
                string N_DE_PAPERBOXNUM = slpDE_PAPERBOXNUM.Text;
                string V_LAST_ROUTE = txtLast_Route.Text;
                string N_CHK_ROUTENUM = slpCHK_ROUTENUM.Text;
                string N_CHK_STORENUM = slpCHK_STORENUM.Text;
                string N_ERR_STORENUM = slpERR_STORENUM.Text;
                string V_RTN_TIME = slpRTN_TIME.Text;
                string V_ALO_TIME = slpALO_TIME.Text;
                string V_CGD_TRANSTIME = slpCGD_TRANSTIME.Text;
                string V_CGD_DATATIME = slpCGD_DATATIME.Text;
                string V_CGD_LISTTIME = slpCGD_LISTTIME.Text;
                string D_CREATEDATE = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
                string V_CREATEUID = Session["UID"].ToString();
                string D_UPDATEDATE = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
                string V_UPDATEUID = Session["UID"].ToString();
                string strID = string.Empty;

                ParameterList.Clear();

                ParameterList.Add(DBPara(D_PICK_DATE, ParaType.Date));
                ParameterList.Add(DBPara(V_PICK_BATCH, ParaType.Varchar2));
                ParameterList.Add(DBPara(V_GET_TIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(N_SPEC_ITEMNUM, ParaType.Number));
                ParameterList.Add(DBPara(N_CTRL_ITEMNUM, ParaType.Number));
                ParameterList.Add(DBPara(N_PICK_ITEMNUM, ParaType.Number));
                ParameterList.Add(DBPara(N_AMT, ParaType.Number));
                ParameterList.Add(DBPara(N_DE_PAPERBOXNUM, ParaType.Number));
                ParameterList.Add(DBPara(V_LAST_ROUTE, ParaType.Varchar2));
                ParameterList.Add(DBPara(N_CHK_ROUTENUM, ParaType.Number));
                ParameterList.Add(DBPara(N_CHK_STORENUM, ParaType.Number));
                ParameterList.Add(DBPara(N_ERR_STORENUM, ParaType.Number));
                ParameterList.Add(DBPara(V_RTN_TIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(V_ALO_TIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(V_CGD_TRANSTIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(V_CGD_DATATIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(V_CGD_LISTTIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(D_CREATEDATE, ParaType.Date));
                ParameterList.Add(DBPara(V_CREATEUID, ParaType.Varchar2));
                ParameterList.Add(DBPara(D_UPDATEDATE, ParaType.Date));
                ParameterList.Add(DBPara(V_UPDATEUID, ParaType.Varchar2));

                #endregion 主檔資料

                BCO.InertData(ParameterList, dtBASE, dtAREA, out strID);

                hdfID.Value = strID;

                bResult = true;


            }
            else //Update
            {

                CGDModel.VDS_CGD38_BCO BCO = new CGDModel.VDS_CGD38_BCO(ConntionDB);

                #region 主檔資料
                string D_PICK_DATE = slpPickDate.Text;
                string V_PICK_BATCH = txtPICK_BATCH.Text;
                string V_GET_TIME = slpGET_TIME.Text;
                string N_SPEC_ITEMNUM = slpSPEC_ITEMNUM.Text;
                string N_CTRL_ITEMNUM = slpCTRL_ITEMNUM.Text;
                string N_PICK_ITEMNUM = slpPICK_ITEMNUM.Text;
                string N_AMT = slpAmt.Text;
                string N_DE_PAPERBOXNUM = slpDE_PAPERBOXNUM.Text;
                string V_LAST_ROUTE = txtLast_Route.Text;
                string N_CHK_ROUTENUM = slpCHK_ROUTENUM.Text;
                string N_CHK_STORENUM = slpCHK_STORENUM.Text;
                string N_ERR_STORENUM = slpERR_STORENUM.Text;
                string V_RTN_TIME = slpRTN_TIME.Text;
                string V_ALO_TIME = slpALO_TIME.Text;
                string V_CGD_TRANSTIME = slpCGD_TRANSTIME.Text;
                string V_CGD_DATATIME = slpCGD_DATATIME.Text;
                string V_CGD_LISTTIME = slpCGD_LISTTIME.Text;
                string D_CREATEDATE = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
                string V_CREATEUID = Session["UID"].ToString();
                string D_UPDATEDATE = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
                string V_UPDATEUID = Session["UID"].ToString();
                string strID = this.hdfID.Value;
                string D_OLD_UPDATEDATE = txtUpdateDate.Text;
                string V_OLD_UPDATEUID = SLP_UPDATEUID.Text;

                ParameterList.Clear();

                ParameterList.Add(DBPara(D_PICK_DATE, ParaType.Date));
                ParameterList.Add(DBPara(V_PICK_BATCH, ParaType.Varchar2));
                ParameterList.Add(DBPara(V_GET_TIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(N_SPEC_ITEMNUM, ParaType.Number));
                ParameterList.Add(DBPara(N_CTRL_ITEMNUM, ParaType.Number));
                ParameterList.Add(DBPara(N_PICK_ITEMNUM, ParaType.Number));
                ParameterList.Add(DBPara(N_AMT, ParaType.Number));
                ParameterList.Add(DBPara(N_DE_PAPERBOXNUM, ParaType.Number));
                ParameterList.Add(DBPara(V_LAST_ROUTE, ParaType.Varchar2));
                ParameterList.Add(DBPara(N_CHK_ROUTENUM, ParaType.Number));
                ParameterList.Add(DBPara(N_CHK_STORENUM, ParaType.Number));
                ParameterList.Add(DBPara(N_ERR_STORENUM, ParaType.Number));
                ParameterList.Add(DBPara(V_RTN_TIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(V_ALO_TIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(V_CGD_TRANSTIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(V_CGD_DATATIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(V_CGD_LISTTIME, ParaType.Varchar2));
                ParameterList.Add(DBPara(D_UPDATEDATE, ParaType.Date));
                ParameterList.Add(DBPara(V_UPDATEUID, ParaType.Varchar2));
                ParameterList.Add(DBPara(strID, ParaType.Number));
                ParameterList.Add(DBPara("1", ParaType.Number));
                ParameterList.Add(DBPara(D_OLD_UPDATEDATE, ParaType.Date));
                ParameterList.Add(DBPara(V_OLD_UPDATEUID, ParaType.Varchar2));

                #endregion 主檔資料

                BCO.UpdateData(ParameterList, dtBASE, dtAREA);

                bResult = true;
            }

        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
        finally
        {

        }
        return bResult;
    }