SAP_MM_实现当期研发费用统计方案

2023-12-05 12:36

本文主要是介绍SAP_MM_实现当期研发费用统计方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

SAP ABAP 顾问(开发工程师)能力模型_Terry谈企业数字化的博客-CSDN博客文章浏览阅读533次。目标:基于对SAP abap 顾问能力模型的梳理,给一年左右经验的abaper 快速成长为三年经验提供超级燃料!https://blog.csdn.net/java_zhong1990/article/details/132469977


背景说明:归集一个期间的研发(物料)费用。


实现原理:在物料凭证上找了个空闲的字段  ,用来标识该类型的业务;市面上成熟的做法是Z一个移动类型出来,该移动类型表示研发领料业务


        

 1.1 在当前期间 找到 该类型的 物料凭证

SELECTmseg~MBLNR,mseg~ZEILE,mseg~matnr,mseg~werks,mseg~ablad,mseg~mat_pspnr,mseg~menge,mseg~aufnr,mseg~dmbtrINTO CORRESPONDING FIELDS OF TABLE @lt1 FROM mseg FOR ALL ENTRIES IN @gt_alvWHERE mseg~ablad = @gt_alv-pspnr_char25AND mseg~aufnr <> ''and mseg~ablad <> ''.

1.2 判断物料是否是V价格(移动平均价类型的物料)

MBEW ,vprsv = 'V' ,如果是V价 ,那么物料凭证的价格就是移动平均后的价格,直接取物料凭证上的价格即可 。

1.3 判断物料是否是S价格,如果是标准价,那么价格来自于物料分类账:

CKMLHD - 物料分类帐:标题记录

CKMLCR - 物料分类帐:期间汇总记录值 

即:合计每笔交易的物料 ( 单价 = 周期单位价格 / 价格单位 )*  消耗的数量;ckmlcr~pvprs ,ckmlcr~peinh 

关联条件:年度,估价范围,期间,物料号 ,wbs要素

LOOP AT lt1 ASSIGNING FIELD-SYMBOL(<fs1>) WHERE ablad = <fs_alv>-pspnr_char25.SELECT SINGLE mbew~vprsv,mbew~matnr,mbew~bwkey INTO @DATA(ls_w1)FROM mbew WHERE mbew~bwkey = @<fs1>-werks AND mbew~matnr = @<fs1>-matnr.IF ls_w1-vprsv = 'V'.<fs_alv>-zyftz = <fs_alv>-zyftz + <fs1>-dmbtr.ELSE.SELECT ckmlcr~pvprs ,ckmlcr~peinh INTO TABLE @DATA(lt_d1)FROM ckmlhd LEFT JOIN ckmlcr ON ckmlcr~kalnr = ckmlhd~kalnr  WHEREckmlhd~matnr     = @ls_w1-matnrAND ckmlhd~bwkey = @ls_w1-bwkeyAND ckmlhd~pspnr = @<fs1>-mat_pspnrAND ckmlcr~poper IN @s_rpmaxAND ckmlcr~bdatj IN @s_ryear.LOOP AT lt_d1 INTO DATA(ls_d1).<fs_alv>-zyftz = <fs_alv>-zyftz + ( ls_d1-pvprs / ls_d1-peinh * <fs1>-menge ).ENDLOOP.ENDIF.ENDLOOP.

这篇关于SAP_MM_实现当期研发费用统计方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/457590

相关文章

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

MyBatis Plus实现时间字段自动填充的完整方案

《MyBatisPlus实现时间字段自动填充的完整方案》在日常开发中,我们经常需要记录数据的创建时间和更新时间,传统的做法是在每次插入或更新操作时手动设置这些时间字段,这种方式不仅繁琐,还容易遗漏,... 目录前言解决目标技术栈实现步骤1. 实体类注解配置2. 创建元数据处理器3. 服务层代码优化填充机制详

Python实现Excel批量样式修改器(附完整代码)

《Python实现Excel批量样式修改器(附完整代码)》这篇文章主要为大家详细介绍了如何使用Python实现一个Excel批量样式修改器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录前言功能特性核心功能界面特性系统要求安装说明使用指南基本操作流程高级功能技术实现核心技术栈关键函

Java实现字节字符转bcd编码

《Java实现字节字符转bcd编码》BCD是一种将十进制数字编码为二进制的表示方式,常用于数字显示和存储,本文将介绍如何在Java中实现字节字符转BCD码的过程,需要的小伙伴可以了解下... 目录前言BCD码是什么Java实现字节转bcd编码方法补充总结前言BCD码(Binary-Coded Decima

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

SpringBoot全局域名替换的实现

《SpringBoot全局域名替换的实现》本文主要介绍了SpringBoot全局域名替换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录 项目结构⚙️ 配置文件application.yml️ 配置类AppProperties.Ja

Python实现批量CSV转Excel的高性能处理方案

《Python实现批量CSV转Excel的高性能处理方案》在日常办公中,我们经常需要将CSV格式的数据转换为Excel文件,本文将介绍一个基于Python的高性能解决方案,感兴趣的小伙伴可以跟随小编一... 目录一、场景需求二、技术方案三、核心代码四、批量处理方案五、性能优化六、使用示例完整代码七、小结一、

Java实现将HTML文件与字符串转换为图片

《Java实现将HTML文件与字符串转换为图片》在Java开发中,我们经常会遇到将HTML内容转换为图片的需求,本文小编就来和大家详细讲讲如何使用FreeSpire.DocforJava库来实现这一功... 目录前言核心实现:html 转图片完整代码场景 1:转换本地 HTML 文件为图片场景 2:转换 H

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法