SQL与会计
时 间:2018-04-04 23:15:26
作 者:DSN_LESS ID:66752 城市:大理
摘 要:SQL与会计
正 文:
--清明时节,忆旧事。
--还记得老早的家,在你和你妈的鼓舞下,
--买下一台刚上市的蓝星电脑,
--思想是行为的种子,谢谢你们!
--缅怀不减,立志更坚。
--还有去年偶遇一友人,从侧面看神似你。
go
USE fbf;
Create TABLE clzl(
步骤 VARCHAR(5),
期初 FLOAT,
本期投入 FLOAT,
完工数量 FLOAT,
期末 FLOAT,
投料程度 FLOAT,
加工程度 FLOAT
);
Insert INTO clzl(步骤,期初,本期投入,完工数量,投料程度,加工程度)VALUES('A',200,250,220,0.8,0.6)
Insert INTO clzl(步骤,期初,本期投入,完工数量,投料程度,加工程度)VALUES('B',200,250,220,0.8,0.6)
Update clzl
SET
期末=期初+本期投入-完工数量;
Create TABLE cbjs(
步骤 VARCHAR(5),
成本项目 VARCHAR(12),
上期结转 FLOAT,
本期发生 FLOAT,
合计 FLOAT,
约当量 FLOAT,
分配率 FLOAT,
期末在产品 FLOAT,
完工产品 FLOAT,
单位成本 FLOAT
);
Insert INTO cbjs(步骤,成本项目,上期结转,本期发生)VALUES('A','直接材料',5900,30900)
Insert INTO cbjs(步骤,成本项目,上期结转,本期发生)VALUES('A','直接人工',11485,44000)
Insert INTO cbjs(步骤,成本项目,上期结转,本期发生)VALUES('A','制造费用',16145,64000)
Insert INTO cbjs(步骤,成本项目,上期结转,本期发生)VALUES('A','合计',null,null)
Insert INTO cbjs(步骤,成本项目,上期结转,本期发生)VALUES('B','自制半成品',14220,null)
Insert INTO cbjs(步骤,成本项目,上期结转,本期发生)VALUES('B','直接材料',2540,12360)
Insert INTO cbjs(步骤,成本项目,上期结转,本期发生)VALUES('B','直接人工',4508,22000)
Insert INTO cbjs(步骤,成本项目,上期结转,本期发生)VALUES('B','制造费用',6916,32000)
Insert INTO cbjs(步骤,成本项目,上期结转,本期发生)VALUES('B','合计',null,null)
Update cbjs
SET
约当量= (Select 完工数量+期末*投料程度 FROM clzl Where 步骤='A') Where 成本项目='直接材料' AND 步骤='A';
Update cbjs
SET
约当量= (Select 完工数量+期末*加工程度 FROM clzl Where 步骤='A') Where (成本项目='直接人工' or 成本项目='制造费用') AND 步骤='A';
Update cbjs
SET
合计= 上期结转+本期发生
Where 步骤='A';
Update cbjs
SET
分配率= 合计/约当量
Where 步骤='A';
Update cbjs
SET
完工产品= 分配率*(Select 完工数量 FROM clzl Where 步骤='A')
Where 步骤='A';
Update cbjs
SET
期末在产品= 合计-完工产品
Where 步骤='A';
Update cbjs
SET
单位成本= 完工产品/(Select 完工数量 FROM clzl Where 步骤='A')
Where 步骤='A';
Declare @sum_sq FLOAT
Declare @sum_bq FLOAT
Declare @sum_hj FLOAT
Declare @sum_qm FLOAT
Declare @sum_wg FLOAT
Declare @sum_dw FLOAT
Select
@sum_sq = SUM(isnull(上期结转,0)),
@sum_bq = SUM(isnull(本期发生,0)),
@sum_hj = SUM(isnull(合计,0)),
@sum_qm = SUM(isnull(期末在产品,0)),
@sum_wg = SUM(isnull(完工产品,0)),
@sum_dw = SUM(isnull(单位成本,0))
FROM cbjs Where 步骤='A';
Update cbjs
SET
上期结转= @sum_sq,
本期发生= @sum_bq,
合计= @sum_hj,
期末在产品= @sum_qm,
完工产品= @sum_wg,
单位成本= @sum_dw
Where 步骤='A' AND 成本项目='合计';
Update cbjs
SET
本期发生= @sum_wg
Where 成本项目 = '自制半成品';
Update cbjs
SET
约当量= (Select 完工数量+期末*投料程度 FROM clzl Where 步骤='B') Where 成本项目='直接材料' AND 步骤='B';
Update cbjs
SET
约当量= (Select 完工数量+期末*加工程度 FROM clzl Where 步骤='B') Where (成本项目='直接人工' or 成本项目='制造费用') AND 步骤='B';
Update cbjs
SET
约当量= (Select 完工数量+期末 FROM clzl Where 步骤='B')
Where 成本项目='自制半成品' AND 步骤='B';
Update cbjs
SET
合计= 上期结转+本期发生
Where 步骤='B';
Update cbjs
SET
分配率= 合计/约当量
Where 步骤='B';
Update cbjs
SET
完工产品= 分配率*(Select 完工数量 FROM clzl Where 步骤='B')
Where 步骤='B';
Update cbjs
SET
期末在产品= 合计-完工产品
Where 步骤='B';
Update cbjs
SET
单位成本= 完工产品/(Select 完工数量 FROM clzl Where 步骤='B')
Where 步骤='B';
Select
@sum_sq = SUM(isnull(上期结转,0)),
@sum_bq = SUM(isnull(本期发生,0)),
@sum_hj = SUM(isnull(合计,0)),
@sum_qm = SUM(isnull(期末在产品,0)),
@sum_wg = SUM(isnull(完工产品,0)),
@sum_dw = SUM(isnull(单位成本,0))
FROM cbjs Where 步骤='B';
Update cbjs
SET
上期结转= @sum_sq,
本期发生= @sum_bq,
合计= @sum_hj,
期末在产品= @sum_qm,
完工产品= @sum_wg,
单位成本= @sum_dw
Where 步骤='B' AND 成本项目='合计';
Select * FROM cbjs;
Access软件网官方交流QQ群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- Access对子窗体数据进行批...(10.30)
- 最精简的组合框行来源数据快速输...(10.25)
- Access仿平台的多值选择器...(10.24)
- 【Access日期区间段查询】...(10.22)
- 【Access源码示例】VBA...(10.12)
- Access累乘示例,Acce...(10.09)
- 数值8.88,把整数8去掉,转...(10.08)
- 【Access自定义函数】一个...(09.30)
- 【Access选项卡示例】Ac...(09.09)
学习心得
最新文章
- Access系统自带的日期选择器不...(11.08)
- 分享一下Access工程中的acw...(11.07)
- Access快速开发平台--让有权...(11.04)
- Access快速开发平台--审批选...(11.01)
- ACCESS两张表先各自排序,然后...(10.31)
- Access对子窗体数据进行批量+...(10.30)
- SqlServer中如何用SQL命...(10.29)
- Access报表中的分组功能用代码...(10.28)
- 用Access计算库存结余的一个方...(10.26)
- 最精简的组合框行来源数据快速输入(...(10.25)