Foxtable(狐表)用户栏目专家坐堂 → 关于跨表多行合并代码问题


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

主题:关于跨表多行合并代码问题

帅哥哟,离线,有人找我吗?
jhxb8821
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:849 积分:5867 威望:0 精华:0 注册:2016/4/15 22:24:00
关于跨表多行合并代码问题  发帖心情 Post By:2023/4/13 8:18:00 [只看该作者]

有两个表“订单表”、“订单明细表”,比如:“订单明细表”中订单编号为101#,“产品名称”列分别为ABC,“数量”列分别是51020;希望在“订单表”中增加“订单详情”列,订单编号101#自动统计为“A5),B10),C20)”,请教老师,这个代码怎么写?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/13 8:49:00 [只看该作者]

产品少可以这样,如果有几十上百个,这个功能不是合理的用法。作为一个数据库软件,也不应该这样存储数据,这样出报表倒是可以理解。但是数据存储和数据展示是2种不同的概念,尽量分开处理

如果要做,大概:订单表datacolchanged事件

select case e.datacol.name
case "编号"
dim s as string
for each dr as datarow = datatables("订单明细").select("编号='" & e.datarow("编号") & "'")
s = s & "," & dr("产品名称")  & “(” & dr("数量") & “)”
next
e.datarow("订单详情") = s
end select


 回到顶部
帅哥哟,离线,有人找我吗?
jhxb8821
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:849 积分:5867 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2023/4/13 9:06:00 [只看该作者]

老师,提示有语法错误

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/13 9:18:00 [只看该作者]

for each dr as datarow in datatables("订单明细").......

 回到顶部
帅哥哟,离线,有人找我吗?
jhxb8821
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:849 积分:5867 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2023/4/13 9:29:00 [只看该作者]

,A(5),B(10),C(15)
蓝老师,怎么多了一个逗号

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/13 9:30:00 [只看该作者]

e.datarow("订单详情") = s.trim(",")

 回到顶部
帅哥哟,离线,有人找我吗?
jhxb8821
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:849 积分:5867 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2023/4/13 9:35:00 [只看该作者]

好了,非常感谢蓝老师

 回到顶部
帅哥哟,离线,有人找我吗?
jhxb8821
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:849 积分:5867 威望:0 精华:0 注册:2016/4/15 22:24:00
代码  发帖心情 Post By:2023/4/21 10:46:00 [只看该作者]

老师,下列代码为什么已打开,软件就关闭

Dim tmp As String = ProjectPath & "Attachments\资料卡2.doc" 

Dim rep As String = ProjectPath & "Reports\资料卡2.doc" 

Dim mht As String = ProjectPath & "Reports\资料卡2.mhtml"

Dim wrt As New WordReport(Tables("事件登记"), tmp, rep)

wrt.Build() 

wrt.SaveToMHT(mht)

wrt.Quit

e.Form.Controls("WebBrowser1").Address = mht



 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/21 10:51:00 [只看该作者]

如果有安装wps,参考:http://www.foxtable.com/webhelp/topics/3735.htm

 回到顶部
帅哥哟,离线,有人找我吗?
jhxb8821
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:849 积分:5867 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2023/4/21 11:05:00 [只看该作者]

我查看了一下电脑,没有安装过WPS文件


 回到顶部
总数 35 1 2 3 4 下一页