Foxtable(狐表)用户栏目专家坐堂 → 求助


  共有3123人关注过本帖树形打印复制链接

主题:求助

美女呀,离线,留言给我吧!
cjl333333333
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:1706 威望:0 精华:0 注册:2015/2/3 17:04:00
求助  发帖心情 Post By:2021/6/28 15:10:00 [显示全部帖子]

老师,我想做一个窗口,库存表的查询窗口,然后窗口里用目录树的形式查询库存查询表的记录.
我希望打开时加载最后10记录就可以,然后窗口里的表只是查询表不要原始表.
然后里面要按年,月,还有类型这样做节点查询
下面是我写的代码,但执行总会出错




 回到顶部
美女呀,离线,留言给我吧!
cjl333333333
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:1706 威望:0 精华:0 注册:2015/2/3 17:04:00
  发帖心情 Post By:2021/6/28 15:10:00 [显示全部帖子]

Dim dr As DataRow = e.Node.DataRow '获取生成此节点的行

Dim Year As Integer = dr("年") 
Dim Month As Integer = dr("月")

Dim nms As String() = {"年","月","出入库类型","出入库存单位名称","类型","材质"} '指定生成目录树的各列 
Dim qts As String() = {"'","'","'","'","'","'"} '指定将各列的值括起来的符号,这里都是字符型,所以都是单引号 
Dim trv As WinForm.TreeView = e.Sender 
Dim flt As String 
Dim nd As WinForm.TreeNode 
For Each nd In e.node.allNodes '清除子节点的选中标记 
    nd.Checked = False 
Next 
nd = e.Node.ParentNode 
Do While nd IsNot Nothing '清除父节点的选中标记 
    nd.Checked = False 
    nd = nd.ParentNode 
Loop 
For Each nd In trv.AllNodes 
    If nd.Checked  Then 
        Dim rts() As String = nd.FullPath.Split("\") 
        Dim val As String = ""
        For i As Integer = 0 To rts.length - 1
            If val > "" Then
                val = val & " And "
            End If
            val = val & nms(i) & " = " & qts(i) & rts(i) & qts(i)
        Next
        If flt > "" Then
            flt = flt & " Or (" & val & ")"
        Else
            flt = val
        End If
    End If
Next

Tables("库存表查询").Filter = flt

 回到顶部
美女呀,离线,留言给我吧!
cjl333333333
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:1706 威望:0 精华:0 注册:2015/2/3 17:04:00
  发帖心情 Post By:2021/6/28 15:11:00 [显示全部帖子]

这个是目录树节点代码


 回到顶部
美女呀,离线,留言给我吧!
cjl333333333
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:1706 威望:0 精华:0 注册:2015/2/3 17:04:00
  发帖心情 Post By:2021/6/28 15:14:00 [显示全部帖子]


还有一段窗口打开前代码总是发表不上来


 回到顶部
美女呀,离线,留言给我吧!
cjl333333333
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:1706 威望:0 精华:0 注册:2015/2/3 17:04:00
  发帖心情 Post By:2021/6/28 15:16:00 [显示全部帖子]

其实我想一个的查询表内容窗口不知结构怎么做更好

 回到顶部
美女呀,离线,留言给我吧!
cjl333333333
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:1706 威望:0 精华:0 注册:2015/2/3 17:04:00
  发帖心情 Post By:2021/6/28 15:17:00 [显示全部帖子]


Dim jb As New SQLJoinTableBuilder("库存表查询","库存表主表")
jb.C
jb.AddTable("库存表主表","单据编号","库存表","单据编号")
jb.AddCols("{库存表主表}.日期","{库存表主表}.单据编号","{库存表主表}.出入库存单位名称","{库存表主表}.承运人","{库存表主表}.出入库类型","{库存表主表}.出入库类型编号","{库存表主表}.简称","名称","编号","规格","类型","入库数量","出库数量","库存数量","单位","库存件数","重量","库存重量","备注","附件","生产单号","采购明细单号","订单编号","客户单号","包装","存放区","产品名称","入库件数","出库件数","结构","材质")
jb.AddExp("年","Year({库存表主表}.日期)",True)
jb.AddExp("月","month({库存表主表}.日期)",True)
jb.Build()




 回到顶部
美女呀,离线,留言给我吧!
cjl333333333
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:1706 威望:0 精华:0 注册:2015/2/3 17:04:00
  发帖心情 Post By:2021/6/28 15:21:00 [显示全部帖子]

Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.C
cmd.CommandText = "SELECT DISTINCT Year(日期) As 年, Month(日期) As 月,出入库类型,出入库存单位名称,类型,材质 Fr om {库存表}"
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"年|月|出入库类型|出入库存单位名称|类型|材质")

Dim jb As New SQLJoinTableBuilder("库存表查询","库存表主表")
jb.C
jb.AddTable("库存表主表","单据编号","库存表","单据编号")
jb.AddCols("{库存表主表}.日期","{库存表主表}.单据编号","{库存表主表}.出入库存单位名称","{库存表主表}.承运人","{库存表主表}.出入库类型","{库存表主表}.出入库类型编号","{库存表主表}.简称","名称","编号","规格","类型","入库数量","出库数量","库存数量","单位","库存件数","重量","库存重量","备注","附件","生产单号","采购明细单号","订单编号","客户单号","包装","存放区","产品名称","入库件数","出库件数","结构","材质")
jb.AddExp("年","Year({库存表主表}.日期)",True)
jb.AddExp("月","month({库存表主表}.日期)",True)
jb.Build()

e.form.controls("Table1").Select

e.form.controls("Table1").Table.focus


 回到顶部
美女呀,离线,留言给我吧!
cjl333333333
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:1706 威望:0 精华:0 注册:2015/2/3 17:04:00
  发帖心情 Post By:2021/6/28 15:25:00 [显示全部帖子]

窗口一开就出现"选择列表中的列 '库存表主表.日期' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中。" 这个错误对话框

 回到顶部