Foxtable(狐表)用户栏目专家坐堂 → 合成语句为什么执行不了


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

主题:合成语句为什么执行不了

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


加好友 发短信
等级:九尾狐 帖子:2234 积分:15284 威望:0 精华:0 注册:2015/7/18 10:10:00
合成语句为什么执行不了  发帖心情 Post By:2019/3/30 11:02:00 [只看该作者]

为什么例子中执行黄色部分语句的结果一直接为零,不知道是什么原因,但是用红色部分去试验的时候没有问题,这是什么原因?

Select Case e.DataCol.name
    Case "科目编号"
        Dim biaoshezidrs As List (of DataRow) = DataTables("表设置").Select("表名  = '科目余额汇总'and 公司名称 = '"& e.DataRow("公司名称") & "' and 列标题 is not null and 列名称 is not null")
        For Each biaoshezidr As DataRow In biaoshezidrs
            If biaoshezidr("列名称").Contains("借方金额") = True Then
                msgbox("公司名称 =  '"& e.DataRow("公司名称") & "' and 科目编号 =  '"& e.DataRow("科目编号") & "'and  年度 =  '"& biaoshezidr("列标题").SubString(0,4) & "'")
                'msgbox("""" & biaoshezidr("列名称") &"""")
                'e.DataRow("自定义1_借方金额")  = DataTables("科目余额").Compute("sum(本期发生额_借方金额)","公司名称 =  '"& e.DataRow("公司名称") & "' and 科目编号 =  '"& e.DataRow("科目编号") & "'and  年度 =  '"& biaoshezidr("列标题").SubString(1,4) & "'")
               
                e.DataRow("" & biaoshezidr("列名称") &"")  = DataTables("科目余额").Compute("sum(本期发生额_借方金额)","公司名称 =  '"& e.DataRow("公司名称") & "' and 科目编号 =  '"& e.DataRow("科目编号") & "'and  年度 =  '"& biaoshezidr("列标题").SubString(1,4) & "'")
                msgbox(e.DataRow("" & biaoshezidr("列名称") &""))
                'msgbox(e.DataRow("自定义1_借方金额"))
            End If
        Next
        e.DataRow("自定义1_借方金额")  = DataTables("科目余额").Compute("sum(本期发生额_借方金额)","公司名称 =  '"& e.DataRow("公司名称") & "' and 科目编号 =  '"& e.DataRow("科目编号") & "'and  年度 =  '2009'")
       
End Select

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目41.foxdb


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


加好友 发短信
等级:超级版主 帖子:107754 积分:548109 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/30 11:26:00 [只看该作者]

e.DataRow(biaoshezidr("列名称"))  = DataTables("科目余额").Compute("sum(本期发生额_借方金额)","公司名称 =  '" & e.DataRow("公司名称") & "' and 科目编号 =  '" & e.DataRow("科目编号") & "'and  年度 =  '" & biaoshezidr("列标题").SubString(0,4) & "'")

数据库sql或者表达式的SubString才是从1开始。

代码里的字符串是从0开始的额

 回到顶部