13
13.3 应用举例:库存明细帐
为什么要让两个不同的模版对应到同一个数据表上呢?没有硬性规定一定要这样做。事实上,您在《成品入库单》模版上定义数据库“入库单”,在《发货单》模版上定义数据表“出库单”,它们互不相关,也完全可以。让不同模版对应到相同的数据表,只是一种设计上的选择。某些情况下这样做会带来便利。看下面一个例子:
假设我们要定义一个模版,显示某种产品从任意时间开始直到目前为止的出入库明细帐,格式如下:

这是一份时序帐,需要把某段时间内所有的出、入库操作按发生的顺序从上到下依次显示。我们可以定义表间公式,把《成品入库单》和《发货单》的信息提取过来。假如入库单和发货单存放在不同的数据表中,我们只好定义两条表间公式,一条用来提取入库单的数据,一条用来提取出库单的数据。两条公式连续应用,可以做到把一段时间内所有的入库、出库数据全部查询出来,但只能是先显示若干条入库信息,接着(往下)显示若干条出库信息,结果就是(例如):
1月1日入库
5
1月5日入库
10
1月8日入库
3
1月2日出库
2
1月5日出库
8
…
无法让入库和出库“混杂”在一起。也就不成其为“时序帐”,“结存”也变得无意义。
如果入库信息和出库信息存放在同一个数据表中,情况就不同了。我们可以用一条表间公式,一次查出所有的入库和出库信息,并且按时间顺序显示。
下文具体讲解《库存明细账》模版的设计。
创建《库存明细账》模版
新建模版《库存明细账》,信息如下:
|
项目 |
内容 |
|
报表编号 |
|
|
报表名称 |
库存明细账 |
|
初始填报权限 |
部门:阳光乳业、储运部
角色:Administrators、仓库保管员 |
|
最终查阅权限 |
部门:无
角色:无
(注,因为此模版的主要用途是查询,不需要把已有的数据重复保存一边,所定义的数据表也不创建,所以不需要任何人有查阅权限) |
|
其它 |
接受默认值 |
|
表样: |
|
如上图所示 |
|
Excel公式: |
|
单元地址 |
公式 |
|
E2 |
=H2-DAY(H2)+1
使起始日期等于截止日期所在月份的第一天。 |
|
D6 |
=IF(L6=1,M6,0),并复制到D7:D25 |
|
E6 |
=IF(L6=1,N6,0),并复制到E7:E25 |
|
F6 |
=IF(L6=1,O6,0),并复制到F7:F25 |
|
G6 |
=IF(L6=-1,M6,0),并复制到G7:G25 |
|
H6 |
=IF(L6=-1,N6,0),并复制到H7:H25 |
|
I6 |
=IF(L6=-1,O6,0),并复制到I7:I26 |
|
J6 |
=J5+D6-G6,并复制到J7:J25 |
|
K6 |
=K5+F6-I6,并复制到K7:K25 |
定义数据表
|
表名 |
库存明细帐_主表 |
所在工作表 |
Sheet1 |
|
样式 |
单一数据项 |
是否创建 |
否 |
|
主键 |
区域 |
字段名 |
数据类型 |
必填 |
填写规范 |
其它 |
|
|
C2 |
物料名称 |
名称或地址 |
|
产品列表 |
|
|
|
E2:F2 |
起始日期 |
日期 |
|
|
|
|
|
J5 |
期初数量 |
小数 |
|
|
|
|
|
K5 |
期初金额 |
金额 |
|
|
|
|
|
H2:I2 |
截止日期 |
日期 |
|
当前日期 |
|
|
表名 |
库存明细帐_明细 |
所在工作表 |
Sheet1 |
|
样式 |
重复数据项,按行,可扩展 |
是否创建 |
否 |
|
主键 |
区域 |
字段名 |
数据类型 |
必填 |
填写规范 |
其它 |
|
|
B6:B25 |
日期 |
日期 |
|
|
|
|
|
C6:C25 |
摘要 |
文字(100字以内) |
|
|
|
|
|
L6:L25 |
出入标志 |
整数 |
|
|
|
|
|
M6:M25 |
数量 |
小数 |
|
|
|
|
|
N6:N25 |
单价 |
价格 |
|
|
|
|
|
O6:O25 |
金额 |
金额 |
|
|
|
定义表间公式
公式名称:期初库存
应用方式:筛选条件改变后自动执行
公式内容:
提取<出入库单_明细,出入库单_主表>中满足下列条件的数据:
<数据筛选:
出入库单_主表.日期
< 本报表.Sheet1:起始日期
并且
出入库单_明细.物料名称
= 本报表.Sheet1:物料名称>
按以下方式填入<库存明细帐_主表>:
合计(出入库单_主表.出入标志
*出入库单_明细.数量
) --->(填入值)
期初数量
合计(出入库单_主表.出入标志
*出入库单_明细.金额
) --->(填入值)
期初金额
公式名称:出入库明细
应用方式:筛选条件改变后自动执行
公式内容:
提取<出入库单_主表,出入库单_明细>中满足下列条件的数据:
<数据筛选:
出入库单_主表.日期
>= 本报表.Sheet1:起始日期
并且
出入库单_主表.日期
<= 本报表.Sheet1:截止日期
并且
出入库单_明细.物料名称
= 本报表.Sheet1:物料名称>
按以下方式填入<库存明细帐_明细>:
出入库单_主表.日期
--->(填入值)
日期
出入库单_主表.单据类型
& '--' & 出入库单_主表.来源去向
--->(填入值)
摘要
出入库单_主表.出入标志
--->(填入值)
出入标志
出入库单_明细.数量
--->(填入值)
数量
出入库单_明细.单价
--->(填入值)
单价
出入库单_明细.金额
--->(填入值)
金额
查询库存明细账
填报《库存明细账》,可看到截止日期默认为当前日期,起始日期默认为截止日期所在月份的第一天。修改截止日期,从下拉列表中选择一种产品名称,自动查询出该产品指定时段的出入库明细账,如下图示例:

Excel服务器学习和下载
|