以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]如何把子表同一列的字符串连接起来 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=104791) |
-- 作者:zyl19810322 -- 发布时间:2017/8/5 7:44:00 -- [求助]如何把子表同一列的字符串连接起来 比如主表A列一个空格=对应子表B列所有字符串连接起来,并用逗号隔开? 或者在输出到word的时候能够按字样的方式输出子表的B列所有字符串也行(更好)
|
-- 作者:有点蓝 -- 发布时间:2017/8/5 8:58:00 -- 没看懂你的问题,请截图说明 |
-- 作者:zyl19810322 -- 发布时间:2017/8/5 9:41:00 -- 表A为父表,表B为子表,关联列为编号 表A中“汇总A”和表B中“分项A”为逻辑类型,希望实现所有编号为1的分项A进行逻辑“或”,在汇总A中返回结果 表A中“字符串连接“和表B中”字符串分项”为备注类型,希望实现所有编号为1的“字符串分项”连接在一起,用逗号分开,在父表表A中的“字符串连接”中显示。
|
-- 作者:有点蓝 -- 发布时间:2017/8/5 9:58:00 -- 参考:http://www.foxtable.com/webhelp/scr/1472.htm |
-- 作者:zyl19810322 -- 发布时间:2017/8/5 11:09:00 -- 不能有逗号分隔吗? |
-- 作者:有点蓝 -- 发布时间:2017/8/5 11:25:00 -- 替换一下就行了 dim s as string = "a|b|c" Output.Show(s.Replace("|",","))
|
-- 作者:zyl19810322 -- 发布时间:2017/8/5 11:34:00 -- 好复杂,有没有更简单的,还是我想复杂了?我最终的想法其实是在word模板中套用,由于子表的引用只能按列和行号来,所有才想到这个笨办法,但是这么看来也太复杂了 还是刚在的那个表,我在生成word模板的时候,可以用什么方法,在word里生产将“字符串分项”连起来的办法吗?字符串分项的数量是不定的,所以没办法确定行号
|
-- 作者:有点蓝 -- 发布时间:2017/8/5 11:51:00 -- 不复杂,也就10句左右代码的事,动手做吧。光想是没有用的。 表B,datacolchanged Select Case e.DataCol.Name Case "编号","分项A","字符串分项" Dim dr As DataRow = DataTables("表A").Find("编号 = \'" & e.DataRow("编号") & "\'") If dr IsNot Nothing Then dr("字符串连接") = e.DataTable.GetComboListString("字符串分项","编号 = \'" & e.DataRow("编号") & "\'").Replace("|",",") dr("汇总A") = e.DataTable.Compute("Count(编号)"," 编号= \'" & e.DataRow("编号") & "\' and 分项A = true") > 0 End If End Select |