Foxtable(狐表)用户栏目专家坐堂 → 怎样将期初、入库、出库这三张表的数据自动填充到进销存表中并自动计出库存?


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

主题:怎样将期初、入库、出库这三张表的数据自动填充到进销存表中并自动计出库存?

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


加好友 发短信
等级:一尾狐 帖子:405 积分:3645 威望:0 精华:0 注册:2009/12/12 17:04:00
  发帖心情 Post By:2011/6/23 20:53:00 [只看该作者]

不知是不是在表的关联设置中出问题?

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


加好友 发短信
等级:等待验证 帖子:386 积分:2482 威望:0 精华:1 注册:2011/5/10 11:13:00
  发帖心情 Post By:2011/6/23 22:54:00 [只看该作者]

SQLJoinTableBuilder法:

注:
    1.日期列统一列名『日期』;
    2.看代码更改需更改的地方

Dim jb1,jb2,jb3 As  SQLJoinTableBuilder
Dim jb() As SQLJoinTableBuilder = {jb1,jb2,jb3}
Dim bs() As String = {"期初","入库","出库"}
Dim Ls() As String = {"期初数量","期初金额","入库数量","入库金额","出库数量","出库金额","结存数量","结存金额"}

For n As Integer = 0 To 2
    jb(n) = New SQLJoinTableBuilder("查询",bs(n))
    jb(n).AddCols("日期","代码","材料名称","摘要")
    For i As Integer = 0 To 7
        jb(n).AddExp(Ls(i),iif(Ls(i).Contains(bs(n)),Ls(i),bs(n) & "数量" & " = Null"))
    Next
Next
jb(0).Union(jb(1),True) 
jb(0).Union(jb(2),True)

Dim t As Table = Tables("进销存_Table1")
t.DataSource = jb(0).BuildDataSource()

Dim drs As List(of DataRow) =t.DataTable.Select("","代码,日期")
drs(0)("结存数量") = drs(0)("期初数量")
drs(0)("结存金额") = drs(0)("期初金额")
Dim n1,n2 As Double
For i As Integer = 1 To drs.Count - 1  
    n1 = IIF( drs(i)("代码") = drs(i-1)("代码"),drs(i-1)("结存数量"),0)
    n2 = IIF( drs(i)("代码") = drs(i-1)("代码"),drs(i-1)("结存金额"),0)
    drs(i)("结存数量") = drs(i)("期初数量") + n1+ drs(i)("入库数量")- drs(i)("出库数量")
    drs(i)("结存金额") = drs(i)("期初金额") + n2+ drs(i)("入库金额")- drs(i)("出库金额")
Next
t.sort ="日期"
t.AutoSizeCols
e.Form.text ="进销存明细"
t.DataTable.SysStyles("EmptyArea").BackColor = Color.White
[此贴子已经被作者于2011-6-23 22:58:53编辑过]

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57590 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2011/6/24 8:08:00 [只看该作者]

图片点击可在新窗口打开查看fyj0326,你考虑的太复杂了.利用mr725做的关联,其实就可以搞定的.有空我研究一下.

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


加好友 发短信
等级:一尾狐 帖子:405 积分:3645 威望:0 精华:0 注册:2009/12/12 17:04:00
  发帖心情 Post By:2011/6/24 8:34:00 [只看该作者]

 我现在在期初表,入库表和出库表中添加顺序号,这样就解决到同一日入库出库不会出现重复填充的问题了
图片点击可在新窗口打开查看此主题相关图片如下:20110624-截图 1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:20110624-截图 2.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:20110624-截图 3.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:一尾狐 帖子:405 积分:3645 威望:0 精华:0 注册:2009/12/12 17:04:00
  发帖心情 Post By:2011/6/24 8:36:00 [只看该作者]

现在下图为生成的进销存表,解决了若是同一日入库和出库出现重复填充的问题了!

另顺序号是按英文字母顺序来排列的,为了使进销存按期初->入库->b出库的次序来排 所以我在期初表设编号开头为A,入库表开头为B,出库表开头为C,从而可以按按期初->入库->b出库的次序来排了,而且不会出现重复填充的问题了
 

图片点击可在新窗口打开查看此主题相关图片如下:20110624-截图 4.png
图片点击可在新窗口打开查看



[此贴子已经被作者于2011-6-24 8:39:12编辑过]

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


加好友 发短信
等级:一尾狐 帖子:405 积分:3645 威望:0 精华:0 注册:2009/12/12 17:04:00
  发帖心情 Post By:2011/6/24 8:40:00 [只看该作者]

 我试过按62楼的代码录入后出现 e.Form.text ="进销存明细" 代码提示出错

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


加好友 发短信
等级:一尾狐 帖子:405 积分:3645 威望:0 精华:0 注册:2009/12/12 17:04:00
  发帖心情 Post By:2011/6/24 8:41:00 [只看该作者]

期待blackzhu看看还有没有更好的方法

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


加好友 发短信
等级:一尾狐 帖子:405 积分:3645 威望:0 精华:0 注册:2009/12/12 17:04:00
  发帖心情 Post By:2011/6/24 8:53:00 [只看该作者]

 希望下载的朋友们多多测试,及时反映问题

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57590 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2011/6/24 12:16:00 [只看该作者]

其实就是狐爸的流水帐设计,我做你看看满不满意,在期初,入库,出库表里输入东西,在进销存表里自动加载,然后结存.目前我做了三个物料的东西,你在添加其它的试试?把结果告诉我.
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:进销存2.table


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


加好友 发短信
等级:一尾狐 帖子:405 积分:3645 威望:0 精华:0 注册:2009/12/12 17:04:00
  发帖心情 Post By:2011/6/24 12:22:00 [只看该作者]

 好的,测试中

 回到顶部
总数 97 上一页 1 2 3 4 5 6 7 8 9 10 下一页