示例#1
0
    /// <summary>
    /// 取得輔助項目主檔與明細檔
    /// </summary>
    private void GetAssistMainAndDetl()
    {
        #region
        try
        {
            #region
            DataTable dtMain, dtDetl;

            ArrayList ParameterList = new ArrayList();//20091106
            ParameterList.Clear();
            ParameterList.Add(Request.QueryString["DIS_NO"]);
            ParameterList.Add(Request.QueryString["ITEM"]);
            ParameterList.Add(Request.QueryString["PERIOD"]);
            ParameterList.Add(GetChanNo_AssistSetting());

            ALOModel.MaintainDisRecord BCO = new ALOModel.MaintainDisRecord(ConnectionDB);
            BCO.QueryDisAssistInfoByDisNo(ParameterList, out dtMain, out dtDetl);

            string[,] strAryAssistCode = new string[,] { { "01", "chk11" ,"","","","","","","","","","","",""}, 
                                                         { "02", "chk21" ,"","","","","","","","","","","",""}, 
                                                         { "03", "chk31" ,"rbtn311","rbtn312","SLP_SLPNumber1","","","","OP_VALUE_3W","OP_VALUE_3Y","OP_VALUE_3X","OP_VALUE_3Z","hiddenOPValueStatus3","" }, 
                                                         { "04", "chk41" ,"","","","","","","OP_VALUE_4W","OP_VALUE_4Y","OP_VALUE_4X","OP_VALUE_4Z","hiddenOPValueStatus4","" }, 
                                                         { "05", "chk51" ,"rbtn511","rbtn512","","rbtn521","rbtn522","SLP_SLPNumber2","OP_VALUE_5W","OP_VALUE_5Y","OP_VALUE_5X","OP_VALUE_5Z" ,"hiddenOPValueStatus5",""}, 
                                                         { "06", "chk61" ,"","","SLP_SLPNumber3","","","","OP_VALUE_6W","OP_VALUE_6Y","OP_VALUE_6X","OP_VALUE_6Z","hiddenOPValueStatus6","" }, 
                                                         { "07", "chk71" ,"","","SLP_SLPNumber4","rbtn721","rbtn722","SLP_SLPNumber5","OP_VALUE_7W","OP_VALUE_7Y","OP_VALUE_7X","OP_VALUE_7Z","hiddenOPValueStatus7","" }, 
                                                         { "08", "chk81" ,"","","","","","","OP_VALUE_8W","OP_VALUE_8Y","OP_VALUE_8X","OP_VALUE_8Z","hiddenOPValueStatus8",""} };

            Int32 index_OPERATOR1, index_OPERATOR2, index_OP_VALUE1, index_OP_VALUE2, index_CHANGE_TYPE, index_CHANGE_RATE;
            if (dtMain != null && dtMain.Rows.Count > 0)
            {

                for (Int32 k = 0; k <= strAryAssistCode.GetUpperBound(0); k++)
                {
                    ((CheckBox)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, 1])).Checked = false;
                }

                for (Int32 i = 0; i <= dtMain.Rows.Count - 1; i++)
                {

                    for (Int32 k = 0; k <= strAryAssistCode.GetUpperBound(0); k++)
                    {

                        //default index
                        index_OPERATOR1 = 2;//RadioButton
                        index_OP_VALUE1 = 4;//SLP_Number
                        index_OPERATOR2 = 5;//RadioButton
                        index_OP_VALUE2 = 7;//SLP_Number
                        index_CHANGE_TYPE = 8;//RadioButton
                        index_CHANGE_RATE = 10;//SLP_Number

                        if (dtMain.Rows[i]["ASSIST_CODE"].ToString() == strAryAssistCode[k, 0])
                        {
                            ((CheckBox)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, 1])).Checked = true;

                            #region
                            if (dtMain.Rows[i]["OPERATOR1"].ToString().Trim() == "1")// 大於等於(及)
                            {
                                index_OPERATOR1 = 2;
                            }
                            else if (dtMain.Rows[i]["OPERATOR1"].ToString().Trim() == "2")// 小於等於(或)
                            {
                                index_OPERATOR1 = 3;
                            }
                            else
                            {
                                index_OPERATOR1 = 13;//指定到空白控制項     
                            }

                            if (dtMain.Rows[i]["OPERATOR2"].ToString().Trim() == "1")// 大於等於(及)
                            {
                                index_OPERATOR2 = 5;
                            }
                            else if (dtMain.Rows[i]["OPERATOR2"].ToString().Trim() == "2")// 小於等於(或)
                            {
                                index_OPERATOR2 = 6;
                            }
                            else
                            {
                                index_OPERATOR2 = 13;//指定到空白控制項     
                            }


                            if (dtMain.Rows[i]["CHANGE_TYPE"].ToString().Trim() == "0")// 比例
                            {
                                index_CHANGE_TYPE = 8;

                                if (strAryAssistCode[k, 11] != "")
                                    ((Button)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, 11])).Enabled = false;

                                if (strAryAssistCode[k, 12] != "")
                                    ((System.Web.UI.HtmlControls.HtmlInputHidden)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, 12])).Value = "0";

                            }
                            else if (dtMain.Rows[i]["CHANGE_TYPE"].ToString().Trim() == "1")// 數量
                            {
                                index_CHANGE_TYPE = 9;

                                if (strAryAssistCode[k, 10] != "")
                                    ((WUI.SLP.SLPNumber)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, 10])).ReadOnly = true;

                                if (strAryAssistCode[k, 11] != "")
                                    ((Button)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, 11])).Enabled = true;

                                if (strAryAssistCode[k, 12] != "")
                                    ((System.Web.UI.HtmlControls.HtmlInputHidden)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, 12])).Value = "1";

                            }
                            else
                            {
                                index_CHANGE_TYPE = 13;//指定到空白控制項     
                            }

                            #endregion


                            if (strAryAssistCode[k, index_OPERATOR1] != "")
                                ((RadioButton)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, index_OPERATOR1])).Checked = true;

                            if (strAryAssistCode[k, index_OP_VALUE1] != "")
                                ((WUI.SLP.SLPNumber)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, index_OP_VALUE1])).Text = dtMain.Rows[i]["OP_VALUE1"].ToString().Trim();

                            if (strAryAssistCode[k, index_OPERATOR2] != "")
                                ((RadioButton)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, index_OPERATOR2])).Checked = true;

                            if (strAryAssistCode[k, index_OP_VALUE2] != "")
                                ((WUI.SLP.SLPNumber)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, index_OP_VALUE2])).Text = dtMain.Rows[i]["OP_VALUE2"].ToString().Trim();

                            if (strAryAssistCode[k, index_CHANGE_TYPE] != "")
                                ((RadioButton)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, index_CHANGE_TYPE])).Checked = true;

                            if (strAryAssistCode[k, index_CHANGE_RATE] != "")
                                ((WUI.SLP.SLPNumber)this.TabContainer1.Tabs[1].FindControl(strAryAssistCode[k, index_CHANGE_RATE])).Text = dtMain.Rows[i]["CHANGE_RATE"].ToString().Trim();

                            break;
                        }
                    }
                }

            }


            if (dtDetl != null && dtDetl.Rows.Count > 0)
            {
                dtDisAssistDetlAll = dtDetl.Copy();
            }

            #endregion

            #region

            ALOModel.MaintainDisAssist BCO2 = new ALOModel.MaintainDisAssist(ConnectionDB);

            ParameterList.Clear();
            ParameterList.Add(Request.QueryString["DIS_NO"]);
            ParameterList.Add(Request.QueryString["ITEM"]);
            ParameterList.Add(Request.QueryString["PERIOD"]);
            ParameterList.Add(null);
            dtDisAssistMainALO131 = BCO2.QueryDisAssistMain(ParameterList);
            #endregion
        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message;
        }

        #endregion
    }