Foxtable(狐表)用户栏目专家坐堂 → 关于库存问题遇到的难题


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

主题:关于库存问题遇到的难题

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


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
关于库存问题遇到的难题  发帖心情 Post By:2012/11/26 17:30:00 [只看该作者]

碰到个库存的难题,大伙帮忙看看

1个出库单,一个库存表

 

设计要求:

1.出库单保存后减库存表库存

2.出库单删除后回复库存表库存

代码如下:

减库存

Dim dr As DataRow
Dim cr As Row = Tables("出库单主表.出库单明细").Current
dr = DataTables("物料品牌明细").Find("料号 = '" & cr("料号") &  "'")
If dr IsNot Nothing Then
    dr("当前库存") = dr("当前库存") - cr("数量_本次交")
End If

恢复库存

Dim dr As DataRow
Dim cr As Row = Tables("出库单主表.出库单明细").Current
dr = DataTables("物料品牌明细").Find("料号 = '" & cr("料号") &  "'")
If dr IsNot Nothing Then
    dr("当前库存") = dr("当前库存") + cr("数量_本次交")
End If

 

我现在碰到个恶心的问题是

我在BEFORESAVEDATROW事件里加以“减库存”的代码,在DATAROWDELETING里放“恢复库存”的代码,当我在新增一条明细,删除后,直接就给我加上刚刚我删除的库存数去了(这种情况在实际操作中很常见,比如选错了物料的情况),刚才试了下,放在DATAROWDELETED的里呢,直接又报错。。

恢复库存的代码到底应该放在哪个事件中呢?


 回到顶部
美女呀,离线,留言给我吧!
38585830
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:206 积分:1782 威望:0 精华:1 注册:2012/8/20 14:23:00
  发帖心情 Post By:2012/11/26 17:32:00 [只看该作者]

发个项目文件

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


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2012/11/26 17:39:00 [只看该作者]

以下是引用38585830在2012-11-26 17:32:00的发言:
发个项目文件

。。其实问题很简单,就是2个无关联的表,字段一样,做数据同步。。。

我一是不想有太多关联,二是如果把库存表的库存字段设为表达式的话,初始库存填不进去,所以想用代码来做而已。。

模拟很简单的

一张库存表

字段是 品名 库存量

一张出库单

字段是 品名 数量

 

[此贴子已经被作者于2012-11-26 17:42:49编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/26 17:47:00 [只看该作者]

 呃,这个问题,判断一下行的类型就行了。

 If cr.DataRow.DataRowState = DataRowState.Added Then Return

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


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2012/11/26 18:00:00 [只看该作者]

以下是引用lin_hailun在2012-11-26 17:47:00的发言:
 呃,这个问题,判断一下行的类型就行了。

 If cr.DataRow.DataRowState = DataRowState.Added Then Return

....我想这一点了,郁闷,刚才自己把自己绕晕了,我担心保存后来删出问题。。看来还是得静心想想,谢谢小林


 回到顶部