以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 动态合并数据的表达式如何设置 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=180825) |
-- 作者:xlrboy -- 发布时间:2022/10/17 12:32:00 -- 动态合并数据的表达式如何设置 在同一行中把第一列和第二列的内容合并显示到第三列里面的表达式如何设置,看帮助上是用Add或or 但是在里面没有找到,(1列 13 2列 52 3列显示 13-52) 勾选销售确认后把进货表里面这行复制到销货表里面去 现在是勾了没反应 去掉勾反而复制了,代码哪里错了 If e.DataCol.Name = "销售确认" AndAlso e.DataRow("销售确认") = True Then Dim nma() As String = {"产品编号"} \'A表数据来源列 Dim nmb() As String = {"产品编号"} \'B表数据接收列 Dim dr As DataRow = DataTables("销货表").AddNew For i As Integer = 0 To nma.Length - 1 dr(nmb(i)) = e.DataRow(nma(i)) Next End If [此贴子已经被作者于2022/10/17 13:22:07编辑过]
|
-- 作者:有点蓝 -- 发布时间:2022/10/17 13:31:00 -- 1、如果使用表达式:第一列+\'-\'+第二列 如果是代码:e.DataRow("第三列") = e.DataRow("第一列") & "-" & e.DataRow("第二列")2、 If e.DataCol.Name = "销售确认" if e.DataRow("销售确认") = True Then Dim nma() As String = {"产品编号"} \'A表数据来源列 Dim nmb() As String = {"产品编号"} \'B表数据接收列 Dim dr As DataRow = DataTables("销货表").AddNew For i As Integer = 0 To nma.Length - 1 dr(nmb(i)) = e.DataRow(nma(i)) Next endif End If |
-- 作者:xlrboy -- 发布时间:2022/10/17 13:34:00 -- 不行,报错 还是一样的,勾选不复制,去掉勾的时候就复制过去了
[此贴子已经被作者于2022/10/17 13:41:16编辑过]
|
-- 作者:有点蓝 -- 发布时间:2022/10/17 13:48:00 -- 如果某个列不是字符型列,需转换一下 convert(第一列,\'System.String\') +\'-\'+第二列 |
-- 作者:xlrboy -- 发布时间:2022/10/17 14:21:00 -- 通过代码实现了,但是第三列上面会有-,如何实现第一和第二列上没有数据时第三列上面为空 |
-- 作者:有点蓝 -- 发布时间:2022/10/17 14:33:00 -- 判断一下第一和第二列:http://www.foxtable.com/webhelp/topics/0426.htm 示例二 列与列之间的计算,我们通常用表达式列来实现,但不是所有的计算都可以通过表达式来完成的。 If e.DataCol.Name = "身份证号码" Then \'如果更改的是身份证号码列 |
-- 作者:xlrboy -- 发布时间:2022/10/17 14:48:00 -- 测试成功了,但是这里需要修改的有两列,用AND链接吗 |
-- 作者:有点蓝 -- 发布时间:2022/10/17 14:55:00 -- http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=150626 |