以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 求助,代码冲突! (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=115529) |
-- 作者:hyr88 -- 发布时间:2018/3/8 15:50:00 -- 求助,代码冲突! \'【单号】生成 If e.DataCol.Name = "name" Then If e.DataRow.IsNull("name") Then e.DataRow("order_number") = 0 Else Dim ond As Date = Date.Now Dim ondt As String = cstr(Format(ond,"yyMMddHHmmss")) e.DataRow("order_number") = ondt End If End If \'【产品费用】统计=明细总金额{跨表统计} Select Case e.DataCol.Name Case "order_number" If e.DataRow("order_number") IsNot Nothing Then Dim Filter As String = "order_number = " & e.DataRow("order_number") e.DataRow("income") = DataTables("crm").Compute("Sum(income)", Filter) End If End Select ---------------------------------------------- 这2段代码,在同个表。 1、第一段代码:如果删除名字,就会清空单号。 2、总统计是根据单号来统计明细表的总金额。 如果写入了名字,后来又删除名字。同时也会删除单号。(明细表里肯定是还没有相挂钩数据的) 软件就会提示错误: .NET Framework 版本:2.0.50727.8762 Foxtable 版本:2018.3.9.1 错误所在事件:表,clm,DataColChanged 详细错误信息: 调用的目标发生了异常。 语法错误:“=”运算符后缺少操作数。 有没可解决的方法呢?
[此贴子已经被作者于2018/3/8 15:51:06编辑过]
|
-- 作者:有点甜 -- 发布时间:2018/3/8 15:55:00 -- If e.DataCol.Name = "name" Then
|
-- 作者:hyr88 -- 发布时间:2018/3/8 16:07:00 -- 这样单号 生成有问题。 第一次这行从来没有填写过数据的,是可以生成单号的。 但是这行内容删了,再次写入,单号就生成不了了。永远只能是为0了。
|
-- 作者:有点甜 -- 发布时间:2018/3/8 17:18:00 -- If e.DataCol.Name = "name" Then
|
-- 作者:有点甜 -- 发布时间:2018/3/8 17:19:00 -- 如果还有问题,做个foxtable实例上传上来测试。 |
-- 作者:hyr88 -- 发布时间:2018/3/8 17:32:00 -- 多谢! 基本OK了。内容清空后,单号就变0了。这样用也可以。
|