`
逆风的香1314
  • 浏览: 1416151 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

根据产品损耗率计算产品实际数量

阅读更多

原帖地址:

http://community.csdn.net/Expert/topic/3236/3236660.xml?temp=.9309046

表T1(记录的是产品加工步骤的损耗情况)
Cp_No(产品编码)   Cp_Step(加工步骤)         Cp_Shl(损耗率)
001                    1                       0.1
001                    2                       0.15
001                    3                       0.2
002                    1                       0.3
002                    2                       0.15
003                   ...                      ...

表T2(记录产品经过加工步骤的最终数量)
Cp_No(产品编码)       finally_Sl(最终数量)
 001                      5
 002                      7
 ...                     ...
要求:
根据T2表提供的最终数量以及T1表提供的损耗率,算出每个加工步骤的实际数量得到表T3
Cp_No(产品编码)      Cp_Step(加工步骤)    Real_Sl(实际数量)
001                    1                  7.35/(1-0.1) =8.17
001                    2                  6.25/(1-0.15)=7.35
001                    3                  5/(1-0.2)    =6.25
002                    1                  8.24/(1-0.3) =11.77
002                    2                  7/(1-0.15)   =8.24

Cp_No是Varchar,Cp_Step是int,Cp_Shl是Numeric(18,4),Finally_Sl,Real_Sl是Numeric(18,4)
T2中的Finally_Sl 是经过T1中的所有加工步骤最终要得到的数量,比如001产品经过1,2,3三个步骤的最终数量是5。T3中的Real_Sl是由Finally_Sl根据每个加工步骤的损耗率得到,比如001由最终数量5可以得到步骤3的实际数量:5/(1-0.2)=6.25,然后根据6.25得到步骤2的实际数量6.25/(1-0.15)=7.35 

-----------------------------------------------------------------------------------------


--测试

--测试数据
create table T1(Cp_No varchar(10),Cp_Step int,Cp_Shl numeric(18,4))
insert T1 select '001',1,0.1
union all select '001',2,0.15
union all select '001',3,0.2
union all select '002',1,0.3
union all select '002',2,0.15

create table T2(Cp_No varchar(10),finally_Sl int)
insert T2 select '001',5
union all select '002',7
go

--方法1,直接计算(用辅助表)
select a.Cp_No,a.Cp_Step
 ,Cp_Shl=1-a.Cp_Shl,b.finally_Sl
 ,Real_Sl=cast(null as numeric(18,2))
into T3
from T1 a,T2 b
where a.Cp_No=b.Cp_No
order by a.Cp_No,a.Cp_Step desc

--计算 Real_Sl 列
declare @id varchar(10),@sl numeric(18,4)
update T3 set @sl=case @id when Cp_no then @sl else finally_Sl end/Cp_Shl
 ,Real_Sl=@sl,@id=Cp_no

--显示处理结果
select Cp_No,Cp_Step,Real_Sl
from T3
order by Cp_No,Cp_Step
go

/*--测试结果

Cp_No      Cp_Step     Real_Sl  
---------- ----------- ----------
001        1           8.17
001        2           7.35
001        3           6.25
002        1           11.76
002        2           8.24

(所影响的行数为 5 行)
--*/


--方法2,写自定义计算函数,实现直接出结果
--计算 Cp_Shl 的函数
create function f_calc(
@Cp_No varchar(10),
@Cp_Step int,
@finally_Sl int
)returns numeric(18,2)
as
begin
 declare @r numeric(18,2)
 set @r=@finally_Sl
 select @r=@r/(1-Cp_Shl) from T1
 where Cp_No=@Cp_No
  and Cp_Step>=@Cp_Step
 order by Cp_Step desc 
 return(@r)
end
go

--调用函数实现查询
select a.Cp_No,a.Cp_Step
 ,Real_Sl=dbo.f_calc(a.Cp_No,a.Cp_Step,b.finally_Sl)
from T1 a,T2 b
where a.Cp_No=b.Cp_No
go

/*--测试结果

Cp_No      Cp_Step     Real_Sl  
---------- ----------- ----------
001        1           8.17
001        2           7.35
001        3           6.25
002        1           11.76
002        2           8.24

(所影响的行数为 5 行)
--*/

--删除测试
drop table T1,T2,T3
drop function f_calc


 

分享到:
评论

相关推荐

    建筑工程量计算损耗率.pdf

    建筑工程量计算损耗率是建筑工程预算中的重要环节,它涉及到材料的采购、施工成本以及最终的工程造价。在本文档中,主要讨论了钢筋、混凝土、...通过合理的损耗率计算,可以优化资源配置,降低工程成本,提高施工效率。

    料品损耗计算器

    1. **数据输入与处理**:程序需要接收用户输入的生产需求量、预期损耗率等参数,并进行相应的数学计算,以确定实际需要的物料数量。 2. **面向对象编程**:JAVA的核心就是面向对象,因此程序可能会定义多个类,如`...

    粮食损失损耗管理办法.doc

    运输损耗定额=发运数量×运输损耗率定额 四、粮食运输损耗计算 计算粮食运输损耗数量,必须以每一张发货明细表为一个计算单位,超过粮食运输损耗定额的减量,应视为粮食运输事故——亏量。接收单位实际收到的粮食...

    金蝶K3简述K3在制品扣减的计算原理

    - 当发生物料报废或损耗时,系统也会根据标准用量来计算实际应扣除的在制品数量,从而保持在制品数据的准确性。 ### 3. 计算原理详解 #### 案例分析 假设物料A由B和C组成,其中B和C的用量比例为1:2,损耗率为1%。...

    中式烹调师考试-问答_2(精选试题).doc

    11. 损耗率计算:如第12题,损耗率 = (原料重量 - 净料重量) / 原料重量 * 100%。 12. 原料的净料单位成本:在第13题中,净料单位成本 = 原料总价款 / 净料总重量。 13. 加工后的原料成本:如第14题,去皮栗子的...

    注册会计师财务成本管理(产品成本计算、标准成本法)历年真题试卷汇编2.docx

    在产品约当产量是衡量在产品进度的一种方式,通过计算在产品的完工程度来估算其相当于完工产品的数量,便于成本分配。 2. **标准成本法**:标准成本法是一种成本控制方法,预先设定标准成本,然后对比实际成本,找...

    初学者非常实用的建筑工程量计算方法

    计算时要根据装饰材料的种类、面积、损耗率来估算。 八、软件辅助计算 现代工程中,许多计算工作可以通过专业软件(如广联达、鲁班等)来完成,这些软件可以快速准确地生成工程量清单,大大提高效率。 九、注意...

    路灯设计计算书_道路照度计算_路灯设计计算_计算书_

    设计计算书中可能还会包含电气图纸、计算过程、案例分析等内容,为实际工程提供详细的参考。 综上所述,《路灯设计计算书》提供了全面的道路照明设计知识,包括照度计算方法、路灯设计原则、变压器选型策略等,对于...

    相干光通信路径损耗仿真,根据理论计算,利用光导纤维的通信,matlab

    在实际计算时,还需要考虑接头、耦合器等器件带来的额外损耗。 MATLAB作为一个强大的数学和工程计算工具,可以方便地进行相干光通信路径损耗的仿真。在提供的"TRANS_17.m"文件中,我们可以预期它包含了用于模拟路径...

    建筑工程量计算公式及计算方法大全.pdf

    - 装饰工程:如抹灰、油漆、壁纸等的面积计算,一般按照实际施工面积乘以损耗率来计算。 4. 工程量计算的注意事项: - 在进行工程量计算时,要准确解读施工图纸,确保计算尺寸的准确性。 - 工程量计算要考虑施工...

    2019_2020学年六年级数学上册专项复习六常见的百分率及其计算方法试题含解析新人教版202004061107

    【知识点详解】 ...以上就是关于百分率及其计算方法的相关知识点,涵盖了出勤率、成活率、含糖率、含盐率、合格率、缺勤率、中奖率、命中率、正点率、发芽率、近视率、损耗率和正确率的定义、计算方法和应用。

    瓷砖计算器

    2. **自动损耗计算**:内置损耗率参数,可根据实际需求调整,避免因估算不足导致的额外采购。 3. **多种规格支持**:支持不同尺寸和形状的瓷砖,包括正方形、长方形、六边形等。 4. **实时调整**:用户可以实时...

    金蝶erp计划原理.docx

    在计算时,系统会根据设定的损耗率和成品率调整需求量,以确保生产顺利进行。 最后,系统还提供了考虑现有库存的选项。这使得计划员可以灵活地根据实际情况选择是否考虑库存状况,以适应不同企业的运营需求。 综上...

    建筑工程定额习题.doc

    我们不仅需要根据地面砖的尺寸和损耗率计算总面积,还要考虑房间的门洞开口、附墙柱和独立柱对面积的影响,以及施工过程中消耗的人工和砂浆。 总结这些案例,建筑工程定额习题涵盖了以下几个关键知识点: 1. 人工...

    瓷砖铺设计算软件.rar

    - 预计的损耗率(根据施工难度和工艺要求可调) - 单价和数量,以便进行成本分析 实际操作中,用户可以根据软件提示逐步输入参数,软件会实时更新计算结果。对于复杂形状的区域,可能需要进行分割处理,软件也会...

    钢筋工程计量规则和工程量计算方法和计算公式

    最后,"土建定额说明.chm"这个文件可能是关于土建工程定额的详细说明,它包含了各项工程的单价、工料机消耗量、损耗率等参数,是计算工程造价的重要参考依据。定额是在一定条件下,完成单位合格产品所需的人工、材料...

    BOM计计算方法

    损耗率可以根据历史数据或行业标准设定。 6. **更新和维护**:BOM和成本计算不是一次性的任务,随着设计更改、供应商价格变动等因素,需要定期更新BOM和重新计算成本。 7. **软件支持**:现代企业通常会使用ERP...

    “定额工程量计算依据”

    同时,它还会列明各种材料的损耗率、人工工日单价、机械台班费用等关键参数,这些都是进行工程量计算时必须考虑的因素。 而《软件说明.txt》文件可能提供了使用特定工程量计算软件的操作指南和注意事项。在现代工程...

    转建筑工程预算常用换算方法.pdf

    例如,在1:1砂石垫层的实例中,石子和黄砂的用量需要根据配合比、压实系数、容重和损耗率进行详细计算。 其次,砖砌体材料的换算方法是计算每立方米墙体所需砖和砂浆的理论用量。公式为:A = × K,其中A表示砖理论...

Global site tag (gtag.js) - Google Analytics