Foxtable(狐表)用户栏目专家坐堂 → 赋值无效


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

主题:赋值无效

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


加好友 发短信
等级:幼狐 帖子:136 积分:1427 威望:0 精华:0 注册:2013/8/7 18:14:00
赋值无效  发帖心情 Post By:2020/9/5 19:53:00 [显示全部帖子]

'代码写在控件中,R05_RetailShipment为外部表(因为某些原因无法在表事件中写代码处理)

Dim dr As DataRow
dr = DataTables("R05_RetailShipment").SQLFind("outboundQuantity > 0  and outboundWagePrice=0")
If dr IsNot Nothing Then '如果找到符合条件的
    MessageBox.Show(1)
    Dim dr1 As DataRow
    dr1 = DataTables("R05_RetailShipment").SQLFind("tableCode='R03_InboundProducts' Or tableCode='R03_Delegation' And (itemID = '" & dr("itemID") & "') and (number> '"&dr("number")&"') ")
    If dr1 IsNot Nothing Then '如果找到符合条件的
        MessageBox.Show(3)
        dr("outboundWagePrice")=dr1("inboundWagePrice")  '此行代码无效,求老师帮看下是什么原因

MessageBox.Show(4)
    End If
Else
    MessageBox.Show(2)
End If

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


加好友 发短信
等级:幼狐 帖子:136 积分:1427 威望:0 精华:0 注册:2013/8/7 18:14:00
  发帖心情 Post By:2020/9/10 17:32:00 [显示全部帖子]

老师,加上了还是不行,是不是因为R05_RetailShipment为外部数据表,会有所不同?

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


加好友 发短信
等级:幼狐 帖子:136 积分:1427 威望:0 精华:0 注册:2013/8/7 18:14:00
  发帖心情 Post By:2020/9/10 17:44:00 [显示全部帖子]

R05_RetailShipment是通过这里添加的
图片点击可在新窗口打开查看此主题相关图片如下:d28l~v3firh2vjd$sgcwxc.png
图片点击可在新窗口打开查看
测了  DataTables("R06_CheckMaterialAmount_Detail").Type = 3 
   

[此贴子已经被作者于2020/9/10 17:58:37编辑过]

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


加好友 发短信
等级:幼狐 帖子:136 积分:1427 威望:0 精华:0 注册:2013/8/7 18:14:00
  发帖心情 Post By:2020/9/10 17:50:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:h3d6)v@f2u9jzp71ctsz`cp.png
图片点击可在新窗口打开查看
Output.Show(dr1("inboundWagePrice"))  没有出现值,但(有刷新看的)表界面有显示数值9.8的

[此贴子已经被作者于2020/9/10 18:05:03编辑过]

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


加好友 发短信
等级:幼狐 帖子:136 积分:1427 威望:0 精华:0 注册:2013/8/7 18:14:00
  发帖心情 Post By:2020/9/15 16:58:00 [显示全部帖子]

MessageBox.Show(4) '这里不能弹出来
代码改成下面,在数据量极少的情况就可以,但数据量(即行数多)的话,就没效果(是因为查询和赋值并存导致的原因吗?是的话,代码具体要怎么优化)
For Each dr As DataRow In DataTables("R06_CheckMaterialAmount_Detail").DataRows
    dr = DataTables("R06_CheckMaterialAmount_Detail").Find("outboundQuantity >0  and outboundWagePrice is null")
    If dr IsNot Nothing Then '如果找到符合条件的
        Dim dr1 As DataRow
        dr1 = DataTables("R06_CheckMaterialAmount_Detail").Find("(tableCode='R03_InboundProducts' Or tableCode='R03_Delegation') And (itemID = '" & dr("itemID") & "') and (number> '"&dr("number")&"')","number",0)
        If dr1 IsNot Nothing Then '如果找到符合条件的
            dr("outboundWagePrice")=dr1("inboundWagePrice")
            dr.save
        End If
    End If
Next
[此贴子已经被作者于2020/9/15 16:59:03编辑过]

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


加好友 发短信
等级:幼狐 帖子:136 积分:1427 威望:0 精华:0 注册:2013/8/7 18:14:00
  发帖心情 Post By:2020/9/15 17:30:00 [显示全部帖子]

是的,谢谢老师

 回到顶部