Foxtable(狐表)用户栏目专家坐堂 → 外部数据表的流水账问题


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

主题:外部数据表的流水账问题

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/8/15 21:50:00 [只看该作者]

cmd.C  后面漏掉了   请补上去

 

我测试正常.

 


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


加好友 发短信
等级:四尾狐 帖子:781 积分:9870 威望:0 精华:0 注册:2008/9/1 13:47:00
  发帖心情 Post By:2010/8/15 21:51:00 [只看该作者]

用户已被锁定

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/8/15 22:02:00 [只看该作者]

我的代码试告诉你数据源中"物品入库" 表和 "物品出库" 表中,当前行该物品名称的累计入库和出库的总计是多少. 当前行没有物品名称的话当然就出错了,可以加个判断条件,If Tables("物品入库").current.IsNull("物品名称") = False ...End If  

你现在要增加入库和出库, 怎样计算现在的库存余数应该没有问题了吧............


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


加好友 发短信
等级:一尾狐 帖子:492 积分:4243 威望:0 精华:0 注册:2008/9/1 20:47:00
  发帖心情 Post By:2010/8/15 22:24:00 [只看该作者]

我弱智,请问入库和出库两张表的总计相减得出余额,还能称作流水账吗?

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


加好友 发短信
等级:四尾狐 帖子:781 积分:9870 威望:0 精华:0 注册:2008/9/1 13:47:00
外网访问速度怎么样,什么样的模式访问??  发帖心情 Post By:2010/8/15 22:45:00 [只看该作者]

用户已被锁定

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/8/15 22:49:00 [只看该作者]

没有规定入库和出库都在一张表上才算流水账吧。 再说合并两张表再简单不过了。。。 呵呵

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/8/15 22:56:00 [只看该作者]

以下是引用liuruihua在2010-8-15 22:45:00的发言:

感谢mr725的帮助,在下还是有点愚钝,这个库存似乎是一次性的,出库后好象不能即时更新,能否把此命令直接写入一楼例子“物品出库”表的datacolchanged事件中?

自己做啊,有问题再问大家吧。  想要现成,不如下载一个免费的软件使用就是了,这里是交流的地方,大家可以互相解决学习中碰到的问题。


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


加好友 发短信
等级:四尾狐 帖子:781 积分:9870 威望:0 精华:0 注册:2008/9/1 13:47:00
  发帖心情 Post By:2010/8/16 22:27:00 [只看该作者]

用户已被锁定

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/8/17 1:41:00 [只看该作者]

以下是引用liuruihua在2010-8-15 14:42:00的发言:
一楼的代码在“物品入库”和“物品出库”两表都完全加载的情况下,则一楼的代码能得到正确的库存值,即dr("库存") = Val1 - Val2  能得到正确的结果,但,如果不加载,则库存值不正确。现在是想在两表数据不加载的情况下,每出库一物品,即能得到其正确的库存量。

 

你的要求好象不太现实,如果不加载数据就意味着从后台直接调取数据来计算出每个产品的库存量,但如果从后台直接调取数据,当进行出库输入出库数量时,此时后台数据并未生成,怎么来调取数据?难不成每输入一个出库数量就保存一次?

 

下面的代码只做为参考.

 

出库表DataColChanged事件代码:

 

Dim r As DataRow = e.DataRow
If e.DataCol.name =  "出库数量" Then
    If r.isnull("日期") = False And r.isnull("物品名称") = False Then
        DataTables("物品出库").Save()
        Dim Filter As String
        Dim Val As Double
        For Each dr As DataRow In DataTables("物品出库").DataRows
            Filter = "物品名称 = '" & dr("物品名称") & "' And [_SortKey] <= " & dr("_SortKey")
            Dim cmd As New SQLCommand
            cmd.ConnectionName  = "wp"

            cmd.CommandText = "SELECT SUM(入库数量) FROM {物品入库} WHERE [物品名称]= '" & dr("物品名称") & "'"
            Val = cmd.ExecuteScalar()
            cmd.CommandText = "SELECT SUM(出库数量) FROM {物品出库} WHERE " & Filter
            dr("库存") = Val - cmd.ExecuteScalar()
        Next
    End If
End If

 

加载出库表代码:

 

DataTables("物品出库").LoadFilter = "[日期] > #2010-07-01#"
DataTables("物品出库").Load

For Each dr As DataRow In DataTables("物品出库").DataRows
    Dim Filter As String = "物品名称 = '" & dr("物品名称") & "' And [_SortKey] <= " & dr("_SortKey")
    Dim cmd As New SQLCommand
    cmd.ConnectionName  = "wp"

    cmd.CommandText = "SELECT SUM(入库数量) FROM {物品入库} WHERE [物品名称]= '" & dr("物品名称") & "'"
    Dim Val As Double = cmd.ExecuteScalar()
    cmd.CommandText = "SELECT SUM(出库数量) FROM {物品出库} WHERE " & Filter
    dr("库存") = Val - cmd.ExecuteScalar()
Next

[此贴子已经被作者于2010-8-17 1:42:46编辑过]

 回到顶部
总数 19 上一页 1 2