这个函数用于物料分类账批量查询期初/期末/收货/消耗数量及标准价/实际价等。客户的需求是统计物料分类账进销存的报表,其中要体现CKM3中期初期末的相关数据。仅供参考
SE37:
CALL FUNCTION 'CKMS_PERIOD_READ_WITH_ITAB'
EXPORTING
i_use_buffer = 'X'
i_bdatj_1 = p_bdatj "年份
i_poper_1 = p_poper "月份
i_enhance_categories = 'X'
TABLES
t_kalnr = t_mat
t_ckmlpp = t_ckmlpp "物料分类帐期间汇总记录数量
t_ckmlcr = t_ckmlcr "物料分类帐:期间汇总记录值
t_value_vn = ml_data "汇总数据
EXCEPTIONS
no_data_found = 1
input_data_inconsistent = 2
buffer_inconsistent = 3
OTHERS = 4.
ENDFORM.
1、t_ckmlpp "物料分类帐期间汇总记录数量
*t_ckmlpp-abkumo "期初存货数量
*t_ckmlpp-zukumo " 收货数量
*t_ckmlpp-VNKUMO "消耗数量
*t_ckmlpp-LBKUM “已评价库存 期末库存
*t_ckmlcr-SALK3 " 已评价库存 期末金额
2、t_ckmlcr "物料分类帐:期间汇总记录值
*t_ckmlcr-SALKV "已平均库存 期末实际价格
*t_ckmlcr-ZUPRD_O "收据:单层价格差异
*t_ckmlcr-ZUKDM_O 收货:单层汇率差异
*t_ckmlcr-VNPRD_EA 价差的单层耗用调整
*t_ckmlcr-VNKDM_EA 来自汇率差异的单一层次调整耗用
*t_ckmlcr-EBPRD_EA 价格差异导致的期末存货单层调整
*t_ckmlcr-EBKDM_EA 汇率差异导致的期末存货单层调整
3、ml_data 说明:
abkumo. "期初库存数量
absalk3. "期初库存标准成本
abprd_o. "期初差异金额
abkdm_o. "期初差异汇率
zukumo. "收货数量
SELECT SUM( stval ) INTO ( sh_stval) FROM "没有取到, 收货标准成本单独取值 mldoc WHERE kalnr = lt_itabco-kalnr AND categ = 'ZU' AND jahrper = p_jahrper.
zuprd_o. " 收货差异
zukdm_o. "收货差异汇率
vnkumo. "消耗数量
stval."消耗标准成本
vnprd_ea. "耗用单层价格差异
vnkdm_ea. "耗用单层汇率差异
lbkum."期末库存数量
salk3. "期末库存标准成本
ebprd_ea. "单层价格差异
ebkdm_ea."单层汇率差异
期初实际价格= 期初标准成本+期初价格差异
期末实际价格= 期末标准成本 +期末价格差异
收货实际值=收货标准价+收货价格差异+收货汇率差异
消耗实际值=消耗标准价+消耗价格差异+消耗汇率差异