Foxtable(狐表)用户栏目专家坐堂 → 为什么代码不起作用


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

主题:为什么代码不起作用

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


加好友 发短信
等级:幼狐 帖子:139 积分:1110 威望:0 精华:0 注册:2013/10/9 11:32:00
  发帖心情 Post By:2015/6/15 16:07:00 [只看该作者]

Dim dg As DataRow = DataTables("库存材料表").Find("[物料代码] = '" & e.DataRow("物料代码") & "'","_Identify Desc")'获得最后一行
Select Case e.DataCol.name
    Case "出库数量"
        If dg Is Nothing Then '如果找到了同名的物料代码行,也就是dr不是Nothing
            'msgbox("在库存没找到物料")
            'e.Cancel = True
            e.NewValue = Nothing
        Else
            
            If e.newvalue <= 0 Then
                e.newValue = Nothing
            End If
        End If
        Dim dms As List(Of String)
        dms = DataTables("材料发放明细表").GetValues("物料代码")
        For Each dm As String In dms
            If dms("记账") = False Then
                Dim Sun As Double
                Sun =  DataTables("材料发放明细表").Compute("Sum(出库数量)", "[物料代码] = ' & dms & '")
                If sun >= dg("库存数量") Then
                    MsgBox("出库量不能大于库存量!")
                    e.DataRow("出库数量") = Nothing
                    'e.Cancel = True
                End If
            End If
        Next
        
End Select

这段代码中   Dim dms As List(Of String)
        dms = DataTables("材料发放明细表").GetValues("物料代码")
        For Each dm As String In dms
            If dms("记账") = False Then       如何修改?


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/15 16:18:00 [只看该作者]

Dim dms As List(Of String)
dms = DataTables("材料发放明细表").GetValues("物料代码")
For Each dm As String In dms
    If dms("记账") = False Then
        Dim Sun As Double
        Sun =  DataTables("材料发放明细表").Compute("Sum(出库数量)", "[物料代码] = ' & dms & '")
        If sun >= dg("库存数量") Then
            MsgBox("出库量不能大于库存量!")
            e.DataRow("出库数量") = Nothing
            'e.Cancel = True
        End If
    End If
Next

 

改成


If e.DataRow("记账") = False Then
    Dim Sun As Double
    Sun =  DataTables("材料发放明细表").Compute("Sum(出库数量)", "[物料代码] = '" & e.datarow("物料代码") & "'")
    If sun >= dg("库存数量") Then
        MsgBox("出库量不能大于库存量!")
        e.DataRow("出库数量") = Nothing
    End If
End If


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/15 16:19:00 [只看该作者]

 直接说你想做什么,并且上传具体的例子啊。

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


加好友 发短信
等级:幼狐 帖子:139 积分:1110 威望:0 精华:0 注册:2013/10/9 11:32:00
  发帖心情 Post By:2015/6/15 16:25:00 [只看该作者]

新的出库数量与未记账的出库数量之和不能大于库存量,"dms"是物料代码列的集合,是字符串,如何表示相同无聊代码的“记账”列,If dms("记账") = False Then 这个代码有问题

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


加好友 发短信
等级:幼狐 帖子:139 积分:1110 威望:0 精华:0 注册:2013/10/9 11:32:00
  发帖心情 Post By:2015/6/15 17:02:00 [只看该作者]

实例:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:hjkscbhs.rar


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/15 17:04:00 [只看该作者]

Dim dg As DataRow = DataTables("库存材料表").Find("[物料代码] = '" & e.DataRow("物料代码") & "'","_Identify Desc")'获得最后一行
Select Case e.DataCol.name
    Case "出库数量"
        If dg Is Nothing Then '如果找到了同名的物料代码行,也就是dr不是Nothing
            'msgbox("在库存没找到物料")
            'e.Cancel = True
            e.NewValue = Nothing
        Else
           
            If e.newvalue <= 0 Then
                e.newValue = Nothing
            Else
                Dim sum As Double =  DataTables("材料发放明细表").Compute("Sum(出库数量)", "[物料代码] = '" & e.DataRow("物料代码") & "' and 记账 = false")
                If sum + e.newvalue > dg("库存数量") Then
                    MsgBox("出库量不能大于库存量!")
                    e.DataRow("出库数量") = Nothing
                End If
            End If
        End If
       
       
End Select

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


加好友 发短信
等级:幼狐 帖子:139 积分:1110 威望:0 精华:0 注册:2013/10/9 11:32:00
  发帖心情 Post By:2015/6/15 17:15:00 [只看该作者]

谢谢!!!


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


加好友 发短信
等级:幼狐 帖子:139 积分:1110 威望:0 精华:0 注册:2013/10/9 11:32:00
  发帖心情 Post By:2015/6/16 9:37:00 [只看该作者]

求教:锁定行后如何能编辑其中的某一列,写在什么事件中

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/16 9:43:00 [只看该作者]

以下是引用shiliang在2015/6/16 9:37:00的发言:
求教:锁定行后如何能编辑其中的某一列,写在什么事件中

 

锁定行以后,不能编辑某一列。

 

要编辑,就不能锁定行。

 

或者你可以用事件控制 如 http://www.foxtable.com/help/topics/2255.htm

 


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


加好友 发短信
等级:幼狐 帖子:139 积分:1110 威望:0 精华:0 注册:2013/10/9 11:32:00
  发帖心情 Post By:2015/6/16 9:51:00 [只看该作者]

例如:审核后锁定该行,如何取消审核

 回到顶部
总数 24 上一页 1 2 3 下一页