Esempio n. 1
0
    private void Query_Data()
    {
        //0.@結帳年月
        //1.@店號
        //2.@結帳統編
        //3.@統一編號
        //4.@原開立日期
        //5.@原發票金額_OP 0:> 1:= 2:<
        //6.@原發票金額
        //7.@商品群分類
        //8.@稅別
        //9.@發票性質
        //10.@發票號碼            
        CAAModel.ProcessInvoiceChange BCO = new CAAModel.ProcessInvoiceChange(ConntionDB);
        ArrayList ParameterList = new ArrayList(); //因為原來的ParameterList是全域變數放到Viewstate後會跟著變動,所以自己在宣告一個
        ParameterList.Clear();
        if (ViewState["Para_Query"] == null)
        {
            ParameterList.Add(SLP_YearMonth1.Text);
            ParameterList.Add(SLP_Store1.Text);
            ParameterList.Add(txtPAY_RFNO.Text);
            ParameterList.Add(txtVOUCH_RFNO.Text);
            ParameterList.Add(SLP_SLPDate1.Text);
            ParameterList.Add(SLP_SLPNumber1.Operator);
            ParameterList.Add(SLP_SLPNumber1.Text);
            ParameterList.Add(SLP_RootNo1.Text);
            ParameterList.Add(rblTaxType.SelectedValue);
            ParameterList.Add(SLP_INVOICE_TYPE.Text);
            ParameterList.Add(txtINV_NO.Text.Trim());
            Int32 iTopRownum;
            Int32.TryParse(TextBoxRowCountLimit.Text.Trim(), out iTopRownum);
            ParameterList.Add(iTopRownum.ToString());
            ViewState["Para_Query"] = ParameterList;
        }
        else
        {
            ParameterList = (ArrayList)ViewState["Para_Query"];
        }

        DataTable dt = BCO.QueryInvoiceByChange(ParameterList);

        string SessionName_DT = "CAA22DT_" + PageTimeStamp.Value;

        Session[SessionName_DT] = dt;

        if (dt.Rows.Count > 0)
        {
            hdfType.Value = SLP_EnumBase1.Text;
            switch (SLP_EnumBase1.Text.Trim())
            {
                case "1": //"一對多換開"                    
                    Bind_OneToMore(dt);
                    break;
                case "2": //"金額換開":
                case "3": //"統編換開":
                case "4": //"品名換開":
                case "5": //"發票作廢":      
                    GridView1.PageSize = (TextBoxPagesize.Text == "") ? 20 : (int.Parse(TextBoxPagesize.Text) < 0) ? 20 : int.Parse(TextBoxPagesize.Text);
                    GridView1.PageIndex = 0;
                    Bind_Data();
                    break;
            }
        }
        else
        {
            GridView1.DataSource = null;
            GridView1.DataBind();
            ErrorMsgLabel.Text = "查無資料";
        }
        up_ErrorMsg.Update();
        UpdatePanelCommit.Update();
    }