Foxtable(狐表)用户栏目专家坐堂 → 在入库表中添加新产品时,库存表也能及时添加?


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

主题:在入库表中添加新产品时,库存表也能及时添加?

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


加好友 发短信
等级:幼狐 帖子:153 积分:1138 威望:0 精华:0 注册:2016/5/15 21:50:00
在入库表中添加新产品时,库存表也能及时添加?  发帖心情 Post By:2016/8/6 16:37:00 [显示全部帖子]

我按教程试着做了入库、出库、库存三张表,入库表与库存表建立了关联,库存表为父表,入库表为子表,产品为关联列,并选择同时更新,但当入库表中添加新产品时,库存表的产品列不能自动添加,需人工添加。能不能自动添加?

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


加好友 发短信
等级:幼狐 帖子:153 积分:1138 威望:0 精华:0 注册:2016/5/15 21:50:00
  发帖心情 Post By:2016/8/8 13:08:00 [显示全部帖子]

入库表datacolchanged事件代码: if e.datacol.name = "品名" then dim s as string = e.newvalue dim dr as datarow = datables("库存").find("[品名] = ' "& s & " ' " if dr is nothing then datables("库存").addnew dr("品名”)= e.newvalue end if end if 实际上,在入库表品名列输入完新值时,系统提示调用目标发生异常,未将对象引用到实例。错误出在:dr("品名”)= e.newvalue。不知怎么改进?

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


加好友 发短信
等级:幼狐 帖子:153 积分:1138 威望:0 精华:0 注册:2016/5/15 21:50:00
  发帖心情 Post By:2016/8/8 13:12:00 [显示全部帖子]

入库表datacolchanged事件代码: if e.datacol.name = "品名" then
     dim s as string = e.newvalue 
      dim dr as datarow = datables("库存").find("[品名] = ' "& s & " ' "
       if dr is nothing then datables("库存").addnew 
      dr("品名”)= e.newvalue
    end if 
 end if 
实际上,在入库表品名列输入完新值时,系统提示调用目标发生异常,未将对象引用到实例。错误出在:dr("品名”)= e.newvalue。不知怎么改进?

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


加好友 发短信
等级:幼狐 帖子:153 积分:1138 威望:0 精华:0 注册:2016/5/15 21:50:00
  发帖心情 Post By:2016/8/8 13:21:00 [显示全部帖子]

入库表datacolchanged事件代码:
 if e.datacol.name = "品名" then
     dim s as string = e.newvalue 
      dim dr as datarow = datables("库存").find("[品名] = ' "& s & " ' "
       if dr is nothing then 
        datables("库存").addnew 
      dr("品名”)= e.newvalue
    end if 
 end if 
实际上,在入库表品名列输入完新值时,系统提示调用目标发生异常,未将对象引用到实例。
库存表能自动增加行,但品名列不能自动输入新值。
错误出在:dr("品名”)= e.newvalue。不知怎么改进?


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


加好友 发短信
等级:幼狐 帖子:153 积分:1138 威望:0 精华:0 注册:2016/5/15 21:50:00
回复:(大红袍)If e.DataCol.name = "品名" Then&nb...  发帖心情 Post By:2016/8/8 15:55:00 [显示全部帖子]

谢谢答复,但问题依旧。在入库表品名列输入新值后,系统还是指出引用实例错误。库存表能自动增加行,但品名列不能自动输入入库表中的新值。

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


加好友 发短信
等级:幼狐 帖子:153 积分:1138 威望:0 精华:0 注册:2016/5/15 21:50:00
回复:(大红袍)代码没问题,你看看你库存表是不是写...  发帖心情 Post By:2016/8/8 16:29:00 [显示全部帖子]

库存表里无代码,项目事件里也无代码,入库表里只有datacolchanged事件代码。
只是将入库表与库存表进行了关联,库存表为父表,入库表为子表。
如将dr("品名") = s 删除,没有错误提示。

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


加好友 发短信
等级:幼狐 帖子:153 积分:1138 威望:0 精华:0 注册:2016/5/15 21:50:00
回复:(大红袍)不可能,我测试,没问题。 ...  发帖心情 Post By:2016/8/8 18:53:00 [显示全部帖子]

因办公电脑不能导出,只能拍几张照片。请多多指教。

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


加好友 发短信
等级:幼狐 帖子:153 积分:1138 威望:0 精华:0 注册:2016/5/15 21:50:00
回复:(大红袍)不可能,我测试,没问题。 ...  发帖心情 Post By:2016/8/9 12:42:00 [显示全部帖子]

我在家里重新做了个项目,在入库表datacolcnanged事件里代码改为:
  If e.DataCol.name = "品名" Then
    Dim s As String = e.newvalue
    Dim dr As DataRow = DataTables("库存").find("[品名] = '" & s & "'")
    If dr Is Nothing Then dr = DataTables("库存").addnew
    dr("品名") = e.DataRow("品名")
    dr("规格") = e.DataRow("规格")
    dr("单位") = e.DataRow("单位")
End If
库存表能自动增加行,并自动输入品名,但规格和单位不能自动输入,
且入库数量不能自动计算。库存表入库数量表达式为:Sum(Child(库存_入库).数量)
在办公电脑上入库数量是可以自动计算的。不明白是什么原因?请老师指教。

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


加好友 发短信
等级:幼狐 帖子:153 积分:1138 威望:0 精华:0 注册:2016/5/15 21:50:00
回复:(Hyphen) If e.DataCol.name = "品名" T...  发帖心情 Post By:2016/8/9 15:04:00 [显示全部帖子]

谢谢老师指点。原因我已找到了。因为品名、规格、单位三列,品名列最靠左,先填品名,填完品名时,datacolchanged事件已发生,而规格和单位两例尚未输入内容,因而库存表新填行只能自动填写品名,规格和单位两例仍是空格。因库存表和入库表的规格和单位两例是关联的,只有库存表的规格和单位有内容时,入库数量才会自动计算。我这样理解,对吗?
如先填规格、单位,再填品名,库存表相关列就能自动更新、添加,但这违背了平常人的习惯。有没有更好的解决办法?

 回到顶部