我在查询窗口中用combobox和目录树配合,当第一次选择所有数据时,执行结果没有问题,显示所有列,当选择其他选项后,再重新选择所有数据,结果显示的还是之前的数据,没有恢复到所有数据
Dim Filter As String
Dim txt As WinForm.ComboBox = e.Form.Controls("ComboBox1")
If Tables("对账单主界面_Table1").Rows.Count>0 Then
Dim dr As DataRow = e.Node.DataRow \'获取生成此节点的行
If txt.Value="所有数据" Then
If e.Node.Text <> "显示所有列" Then
Sel ect Case e.Node.Level
Case 0
Filter = "[年度] = \'" & dr("年度") & "\'"
Tables("对账单主界面_Table1").Filter = Filter
Tables("对账单主界面_Table1").SetColVisibleWidth("月份|40|订单编号|110|箱型|60|箱号|60|承运方|60|铁路运费|60|报关行|60|报关费|60|车队|60|拖车费|60|装箱货场|60|装箱费|60|加固队|60|加固费|60|代码公司|60|境外运费USD|60|单据费|60|单证公司|60|单证费|60|口岸代理|60|查验费|60|滞留费|60|放射放行费|60|退运运费|60|落地交付费|60|人民币杂费|60|美元杂费|60|卖箱公司|60|买箱款|60|备注|60")
Case 1
Filter = "[月份] = \'" & dr("月份") & "\' and [年度] = \'" & dr("年度") & "\'"
Tables("对账单主界面_Table1").Filter = Filter
Tables("对账单主界面_Table1").SetColVisibleWidth("订单编号|110|箱型|60|箱号|60|承运方|60|铁路运费|60|报关行|60|报关费|60|车队|60|拖车费|60|装箱货场|60|装箱费|60|加固队|60|加固费|60|代码公司|60|境外运费USD|60|单据费|60|单证公司|60|单证费|60|口岸代理|60|查验费|60|滞留费|60|放射放行费|60|退运运费|60|落地交付费|60|人民币杂费|60|美元杂费|60|卖箱公司|60|买箱款|60|备注|60")
Case 2
Filter = "[订单编号] = \'" & dr("订单编号") & "\' and [年度] = \'" & dr("年度") & "\' And [月份] = \'" & dr("月份") & "\' "
Tables("对账单主界面_Table1").Filter = Filter
Tables("对账单主界面_Table1").SetColVisibleWidth("箱型|60|箱号|60|承运方|60|铁路运费|60|报关行|60|报关费|60|车队|60|拖车费|60|装箱货场|60|装箱费|60|加固队|60|加固费|60|代码公司|60|境外运费USD|60|单据费|60|单证公司|60|单证费|60|口岸代理|60|查验费|60|滞留费|60|放射放行费|60|退运运费|60|落地交付费|60|人民币杂费|60|美元杂费|60|卖箱公司|60|买箱款|60|备注|60")
End Select
Else
Filter = ""
Tables("对账单主界面_Table1").Filter = Filter
Tables("对账单主界面_Table1").SetColVisibleWidth("年度|60|月份|40|订单编号|110|箱型|60|箱号|60|承运方|60|铁路运费|60|报关行|60|报关费|60|车队|60|拖车费|60|装箱货场|60|装箱费|60|加固队|60|加固费|60|代码公司|60|境外运费USD|60|单据费|60|单证公司|60|单证费|60|口岸代理|60|查验费|60|滞留费|60|放射放行费|60|退运运费|60|落地交付费|60|人民币杂费|60|美元杂费|60|卖箱公司|60|买箱款|60|备注|60")
End If
End If
If txt.Value="承运方" Then
If e.Node.Text <> "显示所有列" Then
Select Case e.Node.Level
Case 0
Filter = "[年度] = \'" & dr("年度") & "\'"
Tables("对账单主界面_Table1").Filter = Filter
Tables("对账单主界面_Table1").SetColVisibleWidth("月份|40|订单编号|110|箱号|98|箱型|98|承运方|98|铁路运费|98")
Case 1
Filter = "[月份] = \'" & dr("月份") & "\' and [年度] = \'" & dr("年度") & "\'"
Tables("对账单主界面_Table1").Filter = Filter
Tables("对账单主界面_Table1").SetColVisibleWidth("订单编号|110|箱号|98|箱型|98|承运方|98|铁路运费|98")
Case 2
Filter = "[承运方] = \'" & dr("承运方") & "\' and [年度] = \'" & dr("年度") & "\' And [月份] = \'" & dr("月份") & "\' "
Tables("对账单主界面_Table1").Filter = Filter
Tables("对账单主界面_Table1").SetColVisibleWidth("订单编号|110|箱号|98|箱型|98|铁路运费|98")
Case 3
Filter = "[承运方] = \'" & dr("承运方") & "\' and [年度] = \'" & dr("年度") & "\' And [月份] = \'" & dr("月份") & "\' and [订单编号] = \'" & dr("订单编号") & "\' "
Tables("对账单主界面_Table1").Filter = Filter
Tables("对账单主界面_Table1").SetColVisibleWidth("箱号|98|箱型|98|铁路运费|98")
End Select
Else
Filter = ""
Tables("对账单主界面_Table1").Filter = Filter
Tables("对账单主界面_Table1").SetColVisibleWidth("年度|40|月份|40|订单编号|110|箱号|98|箱型|98|承运方|98|铁路运费|98")
End If
End If