protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            #region 清空Message

            this.ErrorMsgLabel.Text = string.Empty;
            this.RightMsgLabel.Text = string.Empty;

            #endregion

            if (!IsPostBack)
            {
                #region Attributes

                this.but_Close.Attributes["onclick"] += "window.close();";

                #endregion

                #region 取得異常資料

                #region 傳入參數

                ParameterList.Clear();
                ParameterList.Add(Session["UID"].ToString());

                #endregion

                #region 連結資料庫

                BCO.ITM07_BCO bco = new BCO.ITM07_BCO(ConntionDB);
                DataTable dt_Return = bco.QUERYERRORBYFIND(ParameterList);

                #endregion

                #region 檢查回傳資料

                if (dt_Return.Rows.Count == 0)
                {
                    this.ErrorMsgLabel.Text = "查無資料";
                    return;
                }
                else
                {
                    this.gv_Result.DataSource = dt_Return;
                    this.gv_Result.DataBind();
                }

                #endregion

                #endregion
            }
        }
        catch (Exception ex)
        {
            WaringLogProcess(ex.Message);
            this.ErrorMsgLabel.Text = ex.Message;
        }
        finally { }
    }
Exemple #2
0
    private bool CheckDup(string strITEM, string strPERIOD)
    {
        //品號期別是否已存在DB中
        bool bResult = false;
        ParameterList.Clear();
        ParameterList.Add(strITEM);
        ParameterList.Add("");
        ParameterList.Add(strPERIOD);
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("=");
        ParameterList.Add("");
        ParameterList.Add("");
        ParameterList.Add("1");

        ITM07_BCO BCO = new ITM07_BCO(ConntionDB);

        DataTable dtResult = BCO.QueryByFind(ParameterList);
        if (dtResult.Rows.Count > 0)
        {
            bResult = true;
        }
        return bResult;
    }
Exemple #3
0
    private bool CheckPeriodExist(string strITEM, string strPERIOD)
    {
        //品號期別是否存在
        bool bResult = false;
        ParameterList.Clear();
        ParameterList.Add(strITEM);
        ParameterList.Add(strPERIOD);

        ITM07_BCO BCO = new ITM07_BCO(ConntionDB);

        DataTable dtResult = BCO.QueryITEM_PERIOD(ParameterList);
        if (dtResult.Rows.Count > 0)
        {
            bResult = true;
        }
        return bResult;
    }
Exemple #4
0
 private void SaveDetail()
 {
     ITM07_BCO BCO = new ITM07_BCO(ConntionDB);
     DataTable dtCache = ((DataTable)Session["ITM072_" + PageTimeStamp.Value]);
     BCO.SaveDetail(dtCache, txtITEM.Text.Trim(), SLP_ItemPeriod.Text.Trim(), Session["UID"].ToString(), DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"));
     ViewState["ITEM"] = txtITEM.Text.Trim();
     ViewState["PERIOD"] = SLP_ItemPeriod.Text.Trim();
 }
Exemple #5
0
    private int DeleteDetail()
    {
        int iDelRow = 0;
        ITM07_BCO BCO = new ITM07_BCO(ConntionDB);
        string strITEM = txtITEM.Text.Trim();
        string strPERIOD = SLP_ItemPeriod.Text.Trim();

        DataTable dtCache = ((DataTable)Session["ITM072_" + PageTimeStamp.Value]);


        for (int i = 0; i < Repeater1.Items.Count; i++)
        {
            if (((CheckBox)Repeater1.Items[i].FindControl("chkSelect")).Checked == true)
            {
                string strCHAN_NO = ((Label)Repeater1.Items[i].FindControl("lblCHAN_NO")).Text;
                //把目前Session的資料更新為刪除,讓接下去的儲存動作做準備
                DataRow[] FindRows = dtCache.Select("CHAN_NO='" + strCHAN_NO + "' And ENABLE=1");
                FindRows[0]["EDIT_MODE"] = "3";
                iDelRow++;
            }
        }

        return iDelRow;
    }
Exemple #6
0
    private void GetData(string strITEM, string strPERIOD)
    {
        ParameterList.Clear();
        ParameterList.Add(strITEM);
        ParameterList.Add(strPERIOD);

        ITM07_BCO BCO = new ITM07_BCO(ConntionDB);

        DataTable dtResult = null;

        dtResult = BCO.QueryByDetail(ParameterList);
        Session["ITM072_" + PageTimeStamp.Value] = dtResult;

    }
Exemple #7
0
    /// <summary>
    /// BUTTON [載入檔案]鈕
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void but_LoadFile_Click(object sender, EventArgs e)
    {
        try
        {
            #region 將Client端的檔案上傳至AP端

            #region 宣告變數

            string s_UploadPath = string.Empty;
            ArrayList arl_Return = new ArrayList();

            #endregion

            #region 將Client端的檔案上傳至AP端

            s_UploadPath = Server.MapPath("..\\") + System.Configuration.ConfigurationManager.AppSettings["UploadPath"] + "ITM\\";

            ITM07_BCO bco = new ITM07_BCO(ConntionDB);
            arl_Return = bco.FileUpload(s_UploadPath, this.fileupload_Path, Session["UID"].ToString());

            #endregion

            #region 檢查回傳結果

            if (arl_Return[0].ToString() == "FALSE")
            {
                #region 清空上傳匯入結果

                this.UploadStatusPanel1.UploadSum = 0;//上傳結果總筆數
                this.UploadStatusPanel1.UploadOK = 0;//上傳結果正常筆數
                this.UploadStatusPanel1.UploadNG = 0;//上傳結果錯誤筆數
                this.UploadStatusPanel1.ImportSum = 0;//匯入結果總筆數
                this.UploadStatusPanel1.ImportOK = 0;//匯入結果正常筆數
                this.UploadStatusPanel1.ImportNG = 0;//匯入結果錯誤筆數

                #endregion

                #region 設定控制項

                this.but_Import.Enabled = false;//確定匯入
                this.but_Error.Enabled = false;//檢視異常

                #endregion

                this.ErrorMsgLabel.Text = arl_Return[1].ToString();
                return;
            }

            #endregion

            #endregion

            #region 依據AP端檔案資料匯入TmpTable

            #region 取得 TempTable VDS_ITM_CHAN_TMP 的 SCHEMA

            ITMCommon ITMComm = new ITMCommon();
            DataTable dt_Temp = new DataTable();

            ParameterList.Clear();
            ParameterList.Add(ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false));//V_LOG_UID
            dt_Temp = bco.GET_VDS_ITM_CHAN_TMP_SCHEMA(ParameterList);

            #endregion

            #region 將資料寫入 TempTable

            DateTime d_Now = DateTime.Now;

            #region 讀取 Excel 資料

            OleDbConnection oleConnection = null;
            DataSet ds_Excel = new DataSet();

            try
            {
                //HDR=YES是表示Excel中的第一列為欄名。
                //IMEX=1是表示儲存格內容若是文字和數字混合的內容, 要當做文字處理。
                String connString = "Provider=Microsoft.JET.OLEDB.4.0;Data Source =" + arl_Return[1].ToString() + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1';";
                oleConnection = new OleDbConnection(connString);
                oleConnection.Open();
                OleDbCommand oleCommand = new OleDbCommand("SELECT * FROM [Sheet1$]", oleConnection);
                OleDbDataAdapter oleAdapter = new OleDbDataAdapter(oleCommand);
                oleAdapter.Fill(ds_Excel);

                #region 請注意如果EXCEL檔欄位有值,但到DB卻沒有資料
                //請修改,機碼 HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\4.0\Engines\Excel\TypeGuessRows 值
                //預設是 8, 表示會先讀取前 8 列來決定每一個欄位的型態, 所以如果前 8 列的資料都是數字, 到了第 9 列以後出現的文字資料都會變成 null
                //如果要解決這個問題, 只要把 TypeGuessRows 機碼值改成 0
                #endregion
            }
            catch (Exception ex)
            { throw new Exception("讀取 Excel 資料失敗:" + ex.Message); }
            finally
            {
                if (oleConnection != null)
                {
                    oleConnection.Close();
                    oleConnection.Dispose();
                }
            }

            #endregion

            foreach (DataRow dr in ds_Excel.Tables[0].Rows)
            {
                #region 檢查條件

                ArrayList arl_ConditionReturn = Check_Condition_DataLine(dr);

                #endregion

                #region 檢查正確

                if (arl_ConditionReturn[1].ToString() == string.Empty)
                {
                    DataRow dr_Temp = dt_Temp.NewRow();

                    dr_Temp["ID"] = ITMComm.GetValueSetParameter(dr["序號"].ToString(), "int", false);//ID
                    dr_Temp["STATUS"] = ITMComm.GetValueSetParameter("1", "int", false);//處理狀態(1:正常資料;2:錯誤資料)
                    dr_Temp["DATASOURCE"] = ITMComm.GetValueSetParameter(arl_Return[3].ToString(), "string", false);//匯入檔案
                    dr_Temp["DATATYPE"] = ITMComm.GetValueSetParameter("1", "int", false);//資料類別(1:FILE TO TMP;2:TMP TO DB)
                    dr_Temp["MEMO"] = ITMComm.GetValueSetParameter(string.Empty, "string", false);//說明
                    dr_Temp["CHAN_NO"] = ITMComm.GetValueSetParameter(dr["通路代號"].ToString(), "string", false);//通路代號
                    dr_Temp["ITEM_MAP"] = ITMComm.GetValueSetParameter(dr["對照號"].ToString(), "string", false);//對照號
                    dr_Temp["ITEM"] = ITMComm.GetValueSetParameter(dr["品號"].ToString(), "string", false);//品號
                    dr_Temp["PERIOD"] = ITMComm.GetValueSetParameter(dr["期別"].ToString(), "string", false);//期別
                    dr_Temp["CREATEUID"] = ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false);//建立人員
                    dr_Temp["CREATEDATE"] = ITMComm.GetValueSetParameter(d_Now.ToString(), "datetime", false);//建立日期
                    dr_Temp["UPDATEUID"] = ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false);//異動人員
                    dr_Temp["UPDATEDATE"] = ITMComm.GetValueSetParameter(d_Now.ToString(), "datetime", false);//異動日期

                    dt_Temp.Rows.Add(dr_Temp);
                }

                #endregion

                #region 檢查不正確

                else
                {
                    DataRow dr_Temp = dt_Temp.NewRow();

                    string s_ErrorMsg = string.Empty;
                    s_ErrorMsg = arl_ConditionReturn[1].ToString().Replace("<br/>", ",");
                    s_ErrorMsg = ITMComm.Get_Byte_Length(s_ErrorMsg) > 500 ? s_ErrorMsg.Substring(0, 250) : s_ErrorMsg;//MEMO欄位=VARCHAR2(500)

                    dr_Temp["ID"] = ITMComm.GetValueSetParameter((arl_ConditionReturn[1].ToString().IndexOf("欄位[ID]數字格式錯誤") == -1) ? dr["序號"].ToString() : string.Empty, "int", false);
                    dr_Temp["STATUS"] = ITMComm.GetValueSetParameter("2", "int", false);//處理狀態(1:正常資料;2:錯誤資料)
                    dr_Temp["DATASOURCE"] = ITMComm.GetValueSetParameter(arl_Return[3].ToString(), "string", false);//匯入檔案
                    dr_Temp["DATATYPE"] = ITMComm.GetValueSetParameter("1", "int", false);//資料類別(1:FILE TO TMP;2:TMP TO DB)
                    dr_Temp["MEMO"] = s_ErrorMsg;//說明
                    dr_Temp["CREATEUID"] = ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false);
                    dr_Temp["CREATEDATE"] = ITMComm.GetValueSetParameter(d_Now.ToString(), "datetime", false);
                    dr_Temp["UPDATEUID"] = ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false);
                    dr_Temp["UPDATEDATE"] = ITMComm.GetValueSetParameter(d_Now.ToString(), "datetime", false);

                    dt_Temp.Rows.Add(dr_Temp);
                }

                #endregion
            }

            #endregion

            #region 連結資料庫

            if (dt_Temp.Rows.Count == 0)
            {
                this.ErrorMsgLabel.Text = "無匯入資料";
                return;
            }
            else
            {
                #region 將資料寫入TempTable

                DataTable dt_Return = bco.FileToTmp(null, Session["UID"].ToString(), dt_Temp);

                #endregion

                #region 計算[總筆數][正常筆數][錯誤筆數]

                int i_Total_Count = 0;//總筆數
                int i_Success_Count = 0;//正常筆數
                int i_Failure_Count = 0;//錯誤筆數

                string s_FilterExpression = string.Empty;

                s_FilterExpression = "STATUS ='1'";//1:正常資料;
                DataRow[] dr_Success = dt_Return.Select(s_FilterExpression);
                if (dr_Success.Length == 1)
                { i_Success_Count = int.Parse(dr_Success[0]["count"].ToString()); }

                s_FilterExpression = "STATUS ='2'";//2:錯誤資料;
                DataRow[] dr_Failure = dt_Return.Select(s_FilterExpression);
                if (dr_Failure.Length == 1)
                { i_Failure_Count = int.Parse(dr_Failure[0]["count"].ToString()); }

                i_Total_Count = i_Success_Count + i_Failure_Count;

                this.UploadStatusPanel1.UploadSum = i_Total_Count;//上傳結果總筆數
                this.UploadStatusPanel1.UploadOK = i_Success_Count;//上傳結果正常筆數
                this.UploadStatusPanel1.UploadNG = i_Failure_Count;//上傳結果錯誤筆數
                this.UploadStatusPanel1.ImportSum = 0;//匯入結果總筆數
                this.UploadStatusPanel1.ImportOK = 0;//匯入結果正常筆數
                this.UploadStatusPanel1.ImportNG = 0;//匯入結果錯誤筆數

                #endregion

                #region 設定控制項

                if ((i_Total_Count == i_Success_Count) &&
                   (i_Failure_Count == 0))
                {
                    this.but_Import.Enabled = true;//確定匯入
                    this.but_Error.Enabled = false;//檢視異常
                }

                if (i_Failure_Count > 0)
                {
                    this.but_Import.Enabled = false;//確定匯入
                    this.but_Error.Enabled = true;//檢視異常
                }

                #endregion
            }

            #endregion

            #endregion
        }
        catch (Exception ex)
        {
            WaringLogProcess(ex.Message);
            this.ErrorMsgLabel.Text = ex.Message;
        }
        finally
        {
            //#region 設定 TabContainer 的 ActiveTabIndex

            //this.TabContainer1.ActiveTabIndex = 1;

            //#endregion
        }
    }
Exemple #8
0
    private DataTable GetChanData(string strITEM, string strPERIOD)
    {
        ParameterList.Clear();
        ParameterList.Add(strITEM);
        ParameterList.Add(strPERIOD);

        ITM07_BCO BCO = new ITM07_BCO(ConntionDB);

        DataTable dtResult = null;

        dtResult = BCO.QueryByDetail(ParameterList);
        return dtResult;

    }
Exemple #9
0
    private void CopySave()
    {
        string strErr = CheckCopy(SLP_SKU1.Text.Trim(), SLP_ItemPeriod1.Text.Trim(), 0);
        lblErrMsg.Text = "";
        if (strErr != "")
        {
            lblErrMsg.Text = strErr;
        }
        else
        {
            strErr = CheckCopy(SLP_SKU2.Text.Trim(), SLP_ItemPeriod2.Text.Trim(), 1);
            if (strErr != "")
            {
                lblErrMsg.Text = strErr;
            }
            else
            {
                if ((SLP_SKU1.Text.Trim() == SLP_SKU2.Text.Trim()) && (SLP_ItemPeriod1.Text.Trim() == SLP_ItemPeriod2.Text.Trim()))
                {
                    lblErrMsg.Text = "來源和新增的品號期別不可相同";
                }
                else
                {
                    DataTable dt1 = GetChanData(SLP_SKU1.Text.Trim(), SLP_ItemPeriod1.Text.Trim());
                    DataTable dt2 = GetChanData(SLP_SKU2.Text.Trim(), SLP_ItemPeriod2.Text.Trim());
                    DataTable dtNew = dt1.Clone();
                    ITM07_BCO BCO = new ITM07_BCO(ConntionDB);
                    for (int i = 0; i < dt1.Rows.Count; i++)
                    {
                        DataRow[] FindRows = dt2.Select("CHAN_NO='" + dt1.Rows[i]["CHAN_NO"].ToString() + "'");
                        if (FindRows.Length == 0)
                        {
                            dt1.Rows[i]["EDIT_NO"] = "0";
                            dt1.Rows[i]["STATE"] = "2";
                            dtNew.ImportRow(dt1.Rows[i]);
                        }
                    }
                    if (dtNew.Rows.Count > 0)
                        BCO.CopyNew(dtNew, SLP_SKU2.Text.Trim(), SLP_ItemPeriod2.Text.Trim(), Session["UID"].ToString(), DateTime.Now.ToString("yyyy/MM/dd"));

                    panCopy.Visible = false;
                    panMask.Visible = false;
                    Alert("複製新增完成");
                }
            }
        }
    }
Exemple #10
0
    protected void btnBathUpdate_Click(object sender, EventArgs e)
    {
        string strErrMsg = "";

        if (txtITEM.Text.Trim() == "")
        {
            //1.檢查品號有無輸入
            ErrorMsgLabel.Text = "[品號]欄位未輸入";

        }

        else if (SLP_ItemPeriod.Text.Trim() == "")
        {
            //2.檢查期別有無輸入
            ErrorMsgLabel.Text = "[期別]欄位未輸入";
        }
        else if ((txtNOTICE_RETURN_DATE.Text.Trim() == "") &&
                 (txtCHAN_END_DATE.Text.Trim() == "") &&
                 (txtPLAN_RETURN_DATE.Text.Trim() == "") &&
                 (txtRTN_DDL.Text.Trim() == "") &&
                 (txtEFFECTIVE_DATE.Text.Trim() == "") &&
                 (txtITEM_MAP.Text.Trim() == "")
                )
        {
            ErrorMsgLabel.Text = "未輸入標示 ※ 的欄位";
        }
        else
        {
            try
            {
                ITM07_BCO BCO = new ITM07_BCO(ConntionDB);
                ParameterList.Clear();
                ParameterList.Add(txtITEM.Text.Trim());
                ParameterList.Add(SLP_ItemPeriod.Text.Trim());
                ParameterList.Add(txtCHAN_END_DATE.Text.Trim());
                ParameterList.Add(txtNOTICE_RETURN_DATE.Text.Trim());
                ParameterList.Add(txtPLAN_RETURN_DATE.Text.Trim());
                ParameterList.Add(txtRTN_DDL.Text.Trim());
                ParameterList.Add(txtEFFECTIVE_DATE.Text.Trim());
                ParameterList.Add(txtITEM_MAP.Text.Trim());
                ParameterList.Add(DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"));
                ParameterList.Add(Session["UID"].ToString());
                BCO.UpdateBath(ParameterList);
                Alert("更新完成");
            }
            catch (Exception ex)
            {
                ErrorMsgLabel.Text = ex.Message;
            }
        }

    }
Exemple #11
0
    /// <summary>
    /// 查詢DB資料
    /// </summary>
    /// <param name="src">0:限制筆數,1:所有筆數</param>
    private DataTable Get_Data(char src)
    {
        string V_ITEM;//品號  
        string V_ITEM_NAME;//品名  
        string V_PERIOD;//期別  
        string V_CHAN_NO;//通路	
        string V_ITEM_MAP;//通路對照號	
        string V_TRUN_OUT;//出貨方式	
        string V_EFFECTIVE_DATE;//通路生效日	
        string V_CHAN_END_DATE;//通路結束日	
        string V_FREQUENCY_TYPE;//EOS處理頻率	
        string V_STATE;//資料狀態	
        string V_CHAN_DIS_NO;//配本序號	
        string V_NOTICE_RETURN_DATE;//退貨通知日	
        string V_BACKWARD_DATE;//轉退貨單日	
        string V_CHAN_ISS_DATE;//通路發行日	
        string V_RETURN_TYPE;//退貨方式	
        string V_PLAN_RETURN_DATE;//首次預定退貨日	
        string V_NEXT_PLAN_RETURN_DATE;//下次預定退貨日	
        string V_DISPLAY_DAY_OP;//陳列天數OP	
        string V_DISPLAY_DAY;//陳列天數	
        string V_RTN_DDL;//退書截止日	                        
        string N_ROWNUM;

        V_ITEM = txtITEM.Text.Trim();
        V_ITEM_NAME = (CheckBoxLikeSearch.Checked == false ? txtITEM_NAME.Text.Trim() : "%" + txtITEM_NAME.Text.Trim() + "%");
        V_PERIOD = SLP_ItemPeriod.Text.Trim();
        V_CHAN_NO = txtCHAN_NO.Text.Trim();
        V_ITEM_MAP = (CheckBoxLikeSearch.Checked == false ? txtITEM_MAP.Text.Trim() : "%" + txtITEM_MAP.Text.Trim() + "%");
        V_TRUN_OUT = (ddlTRUN_OUT.SelectedValue.Trim() == "全部") ? string.Empty : ddlTRUN_OUT.SelectedValue.Trim();
        V_EFFECTIVE_DATE = txtEFFECTIVE_DATE.Text.Trim();
        V_CHAN_END_DATE = txtCHAN_END_DATE.Text.Trim();
        V_FREQUENCY_TYPE = (CheckBoxLikeSearch.Checked == false ? txtFREQUENCY_TYPE.Text.Trim() : "%" + txtFREQUENCY_TYPE.Text.Trim() + "%");
        V_STATE = (txtSTATE.Text.Trim() == "全部") ? string.Empty : txtSTATE.Text.Trim();
        V_CHAN_DIS_NO = (CheckBoxLikeSearch.Checked == false ? txtCHAN_DIS_NO.Text.Trim() : "%" + txtCHAN_DIS_NO.Text.Trim() + "%");
        V_NOTICE_RETURN_DATE = txtNOTICE_RETURN_DATE.Text.Trim();
        V_BACKWARD_DATE = txtBACKWARD_DATE.Text.Trim();
        V_CHAN_ISS_DATE = txtCHAN_ISS_DATE.Text.Trim();
        V_RETURN_TYPE = (ddlRETURN_TYPE.SelectedValue.Trim() == "全部") ? string.Empty : ddlRETURN_TYPE.SelectedValue.Trim();
        V_PLAN_RETURN_DATE = txtPLAN_RETURN_DATE.Text.Trim();
        V_NEXT_PLAN_RETURN_DATE = txtNEXT_PLAN_RETURN_DATE.Text.Trim();

        V_DISPLAY_DAY_OP = (txtDISPLAY_DAY.Operator == "0" ? "<" : ((txtDISPLAY_DAY.Operator == "1") ? "=" : ">"));
        V_DISPLAY_DAY = txtDISPLAY_DAY.Text.Trim();

        V_RTN_DDL = txtRTN_DDL.Text.Trim();
        N_ROWNUM = TextBoxRowCountLimit.Text.Trim();

        ParameterList.Clear();
        ParameterList.Add(V_ITEM);
        ParameterList.Add(V_ITEM_NAME);
        ParameterList.Add(V_PERIOD);
        ParameterList.Add(V_CHAN_NO);
        ParameterList.Add(V_ITEM_MAP);
        ParameterList.Add(V_TRUN_OUT);
        ParameterList.Add(V_EFFECTIVE_DATE);
        ParameterList.Add(V_CHAN_END_DATE);
        ParameterList.Add(V_FREQUENCY_TYPE);
        ParameterList.Add(V_STATE);
        ParameterList.Add(V_CHAN_DIS_NO);
        ParameterList.Add(V_NOTICE_RETURN_DATE);
        ParameterList.Add(V_BACKWARD_DATE);
        ParameterList.Add(V_CHAN_ISS_DATE);
        ParameterList.Add(V_RETURN_TYPE);
        ParameterList.Add(V_PLAN_RETURN_DATE);
        ParameterList.Add(V_NEXT_PLAN_RETURN_DATE);
        ParameterList.Add(V_DISPLAY_DAY_OP);
        ParameterList.Add(V_DISPLAY_DAY);
        ParameterList.Add(V_RTN_DDL);
        ParameterList.Add(N_ROWNUM);

        ITM07_BCO BCO = new ITM07_BCO(ConntionDB);

        DataTable dtResult = null;
        //匯出和畫面顯示的條件都一樣,匯出部分少使用一個筆數限制的條件
        //以及取得的資料欄位數有差
        if (src == '0') //畫面顯示
            dtResult = BCO.QueryByFind(ParameterList);
        if (src == '1') //匯出報表
            dtResult = BCO.QueryByExport(ParameterList);

        return dtResult;
    }
Exemple #12
0
    /// <summary>
    /// BUTTON [確定匯入]鈕
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void but_Import_Click(object sender, EventArgs e)
    {
        try
        {
            #region 檢查條件

            ArrayList arl_Check_Condition = Check_Condition("BUTTON [確定匯入]");

            #region 如果檢查有誤,則Return

            if (arl_Check_Condition[1].ToString() != string.Empty)
            {
                #region 錯誤訊息

                this.ErrorMsgLabel.Text = arl_Check_Condition[1].ToString();

                #endregion

                return;
            }

            #endregion

            #endregion

            #region 將TempTable的資料寫入正式Table

            #region 傳入參數

            string s_SourcePath = Server.MapPath("..\\") + System.Configuration.ConfigurationManager.AppSettings["UploadPath"] + "ITM\\";
            string s_DestinationPath = Server.MapPath("..\\") + System.Configuration.ConfigurationManager.AppSettings["BackPath"] + "ITM\\";

            ParameterList.Clear();
            ParameterList.Add(Session["UID"].ToString());
            ParameterList.Add(DateTime.Now);
            ParameterList.Add(s_SourcePath);//來源資料路徑
            ParameterList.Add(s_DestinationPath);//目的地資料路徑

            #endregion

            #region 連結資料庫

            ITM07_BCO bco = new ITM07_BCO(ConntionDB);
            DataTable dt_Return = bco.TmpToDB(null, ParameterList);

            #endregion

            #region 計算[總筆數][正常筆數][錯誤筆數]

            int i_Total_Count = 0;//總筆數
            int i_Success_Count = 0;//正常筆數
            int i_Failure_Count = 0;//錯誤筆數

            string s_FilterExpression = string.Empty;

            s_FilterExpression = "STATUS ='1'";//1:正常資料;
            DataRow[] dr_Success = dt_Return.Select(s_FilterExpression);
            if (dr_Success.Length == 1)
            { i_Success_Count = int.Parse(dr_Success[0]["count"].ToString()); }

            s_FilterExpression = "STATUS ='2'";//2:錯誤資料;
            DataRow[] dr_Failure = dt_Return.Select(s_FilterExpression);
            if (dr_Failure.Length == 1)
            { i_Failure_Count = int.Parse(dr_Failure[0]["count"].ToString()); }

            i_Total_Count = i_Success_Count + i_Failure_Count;

            this.UploadStatusPanel1.ImportSum = i_Total_Count;//匯入結果總筆數
            this.UploadStatusPanel1.ImportOK = i_Success_Count;//匯入結果正常筆數
            this.UploadStatusPanel1.ImportNG = i_Failure_Count;//匯入結果錯誤筆數

            #endregion

            #region 設定控制項

            if ((i_Total_Count == i_Success_Count) &&
               (i_Failure_Count == 0))
            {
                this.but_Import.Enabled = false;//確定匯入
                this.but_Error.Enabled = false;//檢視異常
            }

            if (i_Failure_Count > 0)
            {
                this.but_Import.Enabled = false;//確定匯入
                this.but_Error.Enabled = true;//檢視異常
            }

            #endregion

            #endregion
        }
        catch (Exception ex)
        {
            WaringLogProcess(ex.Message);
            this.ErrorMsgLabel.Text = ex.Message;
        }
    }
Exemple #13
0
    /// <summary>
    /// BUTTON [整批修改]鈕
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void but_Save_Click(object sender, EventArgs e)
    {
        try
        {
            #region 檢查條件

            BCO.ITMCommon ITMComm = new BCO.ITMCommon();

            ArrayList arl_Check_Condition = Check_Condition();

            #region 如果檢查有誤,則Return

            if (arl_Check_Condition[1].ToString() != string.Empty)
            {
                #region 錯誤訊息

                this.ErrorMsgLabel.Text = arl_Check_Condition[1].ToString();

                #endregion

                #region Focus欄位

                if (arl_Check_Condition[0].ToString() != string.Empty)
                {
                    string s_ScriptManager_Script = ITMComm.ToMakeUp_SetFocus_Script(arl_Check_Condition[0].ToString(), true);
                    ScriptManager.RegisterStartupScript(this.up_Msg, typeof(UpdatePanel), "ITM075", s_ScriptManager_Script, true);
                }

                #endregion

                return;
            }

            #endregion

            #endregion

            #region 傳入參數

            #region 設定TempTable的框架

            DataTable dt_Temp = new DataTable();

            dt_Temp.Columns.Add("ITEM", typeof(string));//[品號]
            dt_Temp.Columns.Add("PERIOD_B", typeof(string));//[期別(起)]
            dt_Temp.Columns.Add("PERIOD_E", typeof(string));//[期別(迄)]
            dt_Temp.Columns.Add("ITEM_NAME", typeof(string));//[品名]
            dt_Temp.Columns.Add("MDC_END_DATE", typeof(DateTime));//[DC結束日]
            dt_Temp.Columns.Add("PERIOD_END_DATE", typeof(DateTime));//[期別結束日]
            dt_Temp.Columns.Add("EFFECTIVE_DATE", typeof(DateTime));//[通路生效日]
            dt_Temp.Columns.Add("CHAN_END_DATE", typeof(DateTime));//[通路結束日]
            dt_Temp.Columns.Add("NOTICE_RETURN_DATE", typeof(DateTime));//[退貨通知日]
            dt_Temp.Columns.Add("PLAN_RETURN_DATE", typeof(DateTime));//[首次預退日]
            dt_Temp.Columns.Add("RTN_DDL", typeof(DateTime));//[退書截止日]
            dt_Temp.Columns.Add("EDIT_REASON", typeof(string));//[異動原因]
            dt_Temp.Columns.Add("UPDATEUID", typeof(string));//[異動人員]
            dt_Temp.Columns.Add("UPDATEDATE", typeof(DateTime));//[異動時間]

            #endregion

            #region 將參數寫入TempTable

            #region 設定變數

            string s_ITEM_FileName = string.Empty;
            string s_PERIOD_B_FileName = string.Empty;
            string s_PERIOD_E_FileName = string.Empty;
            DateTime d_Now = DateTime.Now;

            #endregion

            for (int i = 1; i <= 10; i++)
            {
                s_ITEM_FileName = "slp_ITEM_" + i.ToString();
                s_PERIOD_B_FileName = "slp_PERIOD_B_" + i.ToString();
                s_PERIOD_E_FileName = "slp_PERIOD_E_" + i.ToString();

                if (((ASP.itm_slp_slp_sku_ascx)this.table1.FindControl(s_ITEM_FileName)).Text.Trim() != string.Empty)
                {
                    DataRow dr = dt_Temp.NewRow();
                    dr["ITEM"] = ITMComm.GetValueSetParameter(((ASP.itm_slp_slp_sku_ascx)this.table1.FindControl(s_ITEM_FileName)).Text, "string", false);//[品號]
                    dr["PERIOD_B"] = ITMComm.GetValueSetParameter(((ASP.itm_slp_slp_itemperiod_ascx)this.table1.FindControl(s_PERIOD_B_FileName)).Text, "string", false);//[期別(起)]
                    dr["PERIOD_E"] = ITMComm.GetValueSetParameter(((ASP.itm_slp_slp_itemperiod_ascx)this.table1.FindControl(s_PERIOD_E_FileName)).Text, "string", false);//[期別(迄)]
                    dr["ITEM_NAME"] = ITMComm.GetValueSetParameter(this.txt_ITEM_NAME.Text, "string", false);//[品名]
                    dr["MDC_END_DATE"] = ITMComm.GetValueSetParameter(this.slp_MDC_END_DATE.Text, "date", false);//[DC結束日]
                    dr["PERIOD_END_DATE"] = ITMComm.GetValueSetParameter(this.slp_PERIOD_END_DATE.Text, "date", false);//[期別結束日]
                    dr["EFFECTIVE_DATE"] = ITMComm.GetValueSetParameter(this.slp_EFFECTIVE_DATE.Text, "date", false);//[通路生效日]
                    dr["CHAN_END_DATE"] = ITMComm.GetValueSetParameter(this.slp_CHAN_END_DATE.Text, "date", false);//[通路結束日]
                    dr["NOTICE_RETURN_DATE"] = ITMComm.GetValueSetParameter(this.slp_NOTICE_RETURN_DATE.Text, "date", false);//[退貨通知日]
                    dr["PLAN_RETURN_DATE"] = ITMComm.GetValueSetParameter(this.slp_PLAN_RETURN_DATE.Text, "date", false);//[首次預退日]
                    dr["RTN_DDL"] = ITMComm.GetValueSetParameter(this.slp_RTN_DDL.Text, "date", false);//[退書截止日]
                    dr["EDIT_REASON"] = ITMComm.GetValueSetParameter(this.txt_EDIT_REASON.Text, "string", false);//[異動原因]
                    dr["UPDATEUID"] = ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false);//[異動人員]
                    dr["UPDATEDATE"] = ITMComm.GetValueSetParameter(d_Now.ToString(), "datetime", false);//[異動時間]

                    dt_Temp.Rows.Add(dr);
                }
            }

            #endregion

            #endregion

            #region 連結資料庫

            BCO.ITM07_BCO bco = new BCO.ITM07_BCO(ConntionDB);
            bco.UPDATE_ITM075_BULK(null, dt_Temp);

            #endregion

            #region 整批修改成功,將欄位清空

            this.ErrorMsgLabel.Text = "整批修改成功!";

            this.txt_ITEM_NAME.Text = string.Empty;//品名
            this.slp_MDC_END_DATE.Text = string.Empty;//DC結束日
            this.slp_PERIOD_END_DATE.Text = string.Empty;//期別結束日

            this.slp_EFFECTIVE_DATE.Text = string.Empty;//通路生效日
            this.slp_CHAN_END_DATE.Text = string.Empty;//通路結束日
            this.slp_NOTICE_RETURN_DATE.Text = string.Empty;//退貨通知日
            this.slp_PLAN_RETURN_DATE.Text = string.Empty;//首次預退日
            this.slp_RTN_DDL.Text = string.Empty;//退書截止日
            this.txt_EDIT_REASON.Text = string.Empty;//異動原因

            this.slp_ITEM_1.Text = string.Empty;//品號_1
            this.slp_PERIOD_B_1.Text = string.Empty;//期別(起)_1
            this.slp_PERIOD_E_1.Text = string.Empty;//期別(迄)_1
            this.slp_ITEM_2.Text = string.Empty;//品號_2
            this.slp_PERIOD_B_2.Text = string.Empty;//期別(起)_2
            this.slp_PERIOD_E_2.Text = string.Empty;//期別(迄)_2
            this.slp_ITEM_3.Text = string.Empty;//品號_3
            this.slp_PERIOD_B_3.Text = string.Empty;//期別(起)_3
            this.slp_PERIOD_E_3.Text = string.Empty;//期別(迄)_3
            this.slp_ITEM_4.Text = string.Empty;//品號_4
            this.slp_PERIOD_B_4.Text = string.Empty;//期別(起)_4
            this.slp_PERIOD_E_4.Text = string.Empty;//期別(迄)_4
            this.slp_ITEM_5.Text = string.Empty;//品號_5
            this.slp_PERIOD_B_5.Text = string.Empty;//期別(起)_5
            this.slp_PERIOD_E_5.Text = string.Empty;//期別(迄)_5
            this.slp_ITEM_6.Text = string.Empty;//品號_6
            this.slp_PERIOD_B_6.Text = string.Empty;//期別(起)_6
            this.slp_PERIOD_E_6.Text = string.Empty;//期別(迄)_6
            this.slp_ITEM_7.Text = string.Empty;//品號_7
            this.slp_PERIOD_B_7.Text = string.Empty;//期別(起)_7
            this.slp_PERIOD_E_7.Text = string.Empty;//期別(迄)_7
            this.slp_ITEM_8.Text = string.Empty;//品號_8
            this.slp_PERIOD_B_8.Text = string.Empty;//期別(起)_8
            this.slp_PERIOD_E_8.Text = string.Empty;//期別(迄)_8
            this.slp_ITEM_9.Text = string.Empty;//品號_9
            this.slp_PERIOD_B_9.Text = string.Empty;//期別(起)_9
            this.slp_PERIOD_E_9.Text = string.Empty;//期別(迄)_9
            this.slp_ITEM_10.Text = string.Empty;//品號_10
            this.slp_PERIOD_B_10.Text = string.Empty;//期別(起)_10
            this.slp_PERIOD_E_10.Text = string.Empty;//期別(迄)_10

            this.up_All.Update();

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