Foxtable(狐表)用户栏目专家坐堂 → 关于高效流水帐表达式问题


  共有2786人关注过本帖平板打印复制链接

主题:关于高效流水帐表达式问题

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


加好友 发短信
等级:婴狐 帖子:9 积分:192 威望:0 精华:0 注册:2021/4/6 11:20:00
关于高效流水帐表达式问题  发帖心情 Post By:2021/5/26 10:08:00 [只看该作者]

老师好
   按物料编码+批号设置的流水帐,计算结果没有把批号区分出来,不知道表达式哪里错误了,麻烦老师帮助一下

Select Case e.DataCol.Name
    Case "物料编码","入库数量","实发数量","批号"
        Dim dr As DataRow
        Dim mr As DataRow = e.DataRow
        Dim drs As List(of DataRow)
        dr = e.DataTable.Find("[_SortKey] < " & mr("_SortKey") & " And [物料编码] = '" & mr("物料编码") & "' And [批号] = '" & mr("批号") & "'", "[_SortKey] Desc")
           
        If dr Is Nothing Then
            mr("Kuc") = mr("入库数量") - mr("实发数量")
            dr = mr
        End If
          drs = e.DataTable.Select("[_SortKey] < " & dr("_SortKey") & " And [物料编码] = '" & dr("物料编码") & "' And [批号] = '" & dr("批号") & "'","[_SortKey] ")
        For i As Integer = 1 To drs.Count - 1
            drs(i)("Kuc") = drs(i-1)("Kuc") + drs(i)("入库数量") - drs(i)("实发数量")
        Next
        If e.DataCol.Name = "物料编码" AndAlso e.OldValue IsNot Nothing AndAlso e.OldValue <> e.NewValue Then
            dr = e.DataTable.Find("[_SortKey] < " & mr("_SortKey") & " And [物料编码] and [批号] = '" & e.OldValue & "'", "[_SortKey] Desc")
              If dr Is Nothing Then
               dr = e.DataTable.Find("[物料编码] and [批号] = '" & e.OldValue & "'", "[_SortKey]")
                If dr IsNot Nothing Then
                    dr("Kuc") = dr("入库数量") - dr("实发数量")
                End If
            End If
            If dr IsNot Nothing Then
              drs = e.DataTable.Select("[_SortKey] < " & dr("_SortKey") & " And [物料编码] = '" & dr("物料编码") & "' And [批号] = '" & dr("批号") & "' ","[_SortKey] ")
                For i As Integer = 1 To drs.Count - 1
                    drs(i)("Kuc") = drs(i-1)("Kuc") + drs(i)("入库数量") - drs(i)("实发数量")
                Next
            End If
        End If
End Select

 回到顶部
总数 13 1 2 下一页