当前位置: 首页 > wzjs >正文

网站301在哪做手机制作网页

网站301在哪做,手机制作网页,网站建设绵阳,高端的网站建设公司哪家好SAP存储生产订单成本的主要底表包括: COBK: CO凭证表头COEP: CO凭证行项目COSS: 来自CO内部的汇总数据COSP: 来自CO外部部的汇总数据 先说结论:SAP 对生产订单的目标成本是没有保存到底表的。那么如何通过代码的方式获取呢? K_KKB_KKBCS_O…

SAP存储生产订单成本的主要底表包括:

  • COBK: CO凭证表头
  • COEP: CO凭证行项目
  • COSS: 来自CO内部的汇总数据
  • COSP: 来自CO外部部的汇总数据

先说结论:SAP 对生产订单的目标成本是没有保存到底表的。那么如何通过代码的方式获取呢?

K_KKB_KKBCS_ORDER_REPORT 函数

这个函数类似调用事务码 KKBC_ORD,对这个函数调用,只需要提供 order number,但函数自动通过 ALV 来展示数据,这就带来了调用函数的不便。

对函数的源码进行分析,可以看出,函数的主要过程为

  • 调用 K_KKB_KKBCS_CO_OBJECT_READ 函数,获取生产订单的成本数据。
  • 调用 K_KKB_2XHEADER_GET 获取表头的数据,如订单号、订单类型、工厂、物料。
  • 调用 K_KKB_CO_OBJECT_DISPLAY 函数显示生产订单数据

主体的逻辑在 K_KKB_KKBCS_CO_OBJECT_READ 函数中。函数调用后返回 4 个表参数:

G_T_COSLA 表参数:能够获取期间产出数量。我们和 KKBC_ORD 事务码界面进行对比:

G_T_COSPA 表参数,对应 COSP 表的存储数据:

G_T_COSSA 表参数,对应 COSS 表的存储数据。

既然函数的主体是调用 K_KKB_KKBCS_CO_OBJECT_READ 函数,那么我们直接调用这个函数不就可以了吗?我们来测试一下。调用这个函数,需要填写 OBART 和 AUFNR 两个参数。

运行函数之后,可以看到,函数能获取到数据。如下图所示:

但我们对数据进行查看,可以发现缺少目标成本的数据 (WRTYP = 5)。也就是说,如果我们调用 K_KKB_KKBCS_ORDER_REPORT 函数,能获取到目标成本的数据,但系统会自动以 ALV 显示出来,这个不是我们想要的。如果调用 K_KKB_KKBCS_CO_OBJECT_READ 函数,表参数只有实际成本和计划成本,但没有目标成本。

什么原因呢?怎么解决呢?解决方案还需要从源码入手。我们用 SE37 进入 K_KKB_KKBCS_ORDER_REPORT 的源码一看究竟。这个函数的代码不是那么简单,我们略过不相关的部分。先找到与计算目标成本相关的部分:

进入子例程 get_target:

这才是真正用于计算目标成本的函数。基于调试方式很容易得到这个函数的参数的用法。在这里设置断点,然后通过 K_KKB_KKBCS_ORDER_REPORT 函数进入:

这个函数提供了获取目标成本的第一种方法,调用 K_TARGETCOSTS_OBJECT_RECALC 函数,函数调用需要通过前面的函数抓取到产出数量、产出物料的计量单位等信息。以下是使用 SE37 事务码对该函数的测试:

数据已经能够正确获取:

第二个问题,为什么调用 K_KKB_KKBCS_ORDER_REPORT 函数能获取到目标成本,调用 K_KKB_KKBCS_CO_OBJECT_READ 函数不能获取目标成本?基于分析,SAP 在函数组中,有一个 g_object 参数,在调用函数之前,需要对该函数赋值 ,然后检查 g_object 是否等于 obj-auf。对代码细节有兴趣的小伙伴可以自行调试来验证。关键点贴图如下:

知道了原因,也就有了第二种解决方案:拷贝 K_KKB_KKBCS_CO_OBJECT_READ 函数为 ZK_KKB_KKBCS_CO_OBJECT_READ,并对拷贝出的 Z 函数代码进行微调。我们知道,函数必须位于函数组中,所以拷贝函数需要拷贝函数组。实际操作的步骤如下:

1、拷贝函数组 KKBC 到 ZKKBC
2、拷贝函数 K_KKB_KKBCS_CO_OBJECT_READ 到 ZK_KKB_KKBCS_CO_OBJECT_READ
3、将 ZK_KKB_KKBCS_CO_OBJECT_READ 的属性改为远程启用的模块,从而支持 RFC 外部调用
4、将函数的参数变更为值传递,这是远程调用模块的要求:

在代码中加上两行:

g_object = obj-auf.  
move-corresponding i_hcstruktur to g_global_object.

本文结论

1、SAP对生产订单的目标成本目标在底表中存储,而是基于计算获得。
2、如果需要通过代码获取生产订单的目标成本,有两种解决方案,第一种方案是调用 K_TARGETCOSTS_OBJECT_RECALC 函数,但需要提供如生产数量、计量单位等信息,也需要先调用其他函数;第二种方案是基于 K_KKB_KKBCS_CO_OBJECT_READ 函数拷贝一个新的函数,并对代码进行微调。

http://www.dtcms.com/wzjs/401190.html

相关文章:

  • 温州网站排名优化谷歌在线搜索
  • 揭阳做网站seo资源网站排名
  • 部队网站制作站长网站查询
  • 北京兄弟搬家公司seo百度推广
  • 网络做网站如何盈利网站提交收录入口链接
  • 动态网站开发工作什么是百度竞价
  • 服务器怎么直接用ip做网站百度推广竞价排名技巧
  • python 做网站 用哪个框架好高端网站设计定制
  • 做网站时空间的选择中国职业技能培训中心官网
  • 建设网站一般过程seo外推软件
  • 做软件跟网站哪个难宁波seo营销
  • 网站一年维护费用优化大师手机版
  • 网站建设 生产seo搜索工具栏
  • 中山 网站建设一条龙全包南昌seo搜索排名
  • 专业网站建设公司推荐如何刷app推广次数
  • 南宁保洁网站建设奶茶的营销推广软文
  • 台州响应式建站谷歌浏览器下载手机版app
  • 昆明做网站建设的公司google官网登录入口
  • 24小时网站开发 pdf站长工具seo查询
  • 微网站和wap网店推广方案
  • 优秀网站设计要素百度网站官网入口
  • 如何做网站banner电商培训班一般多少钱一个月
  • 企业建设网站的案例深圳平台推广
  • 网站建设步骤 教 程seo优化好做吗
  • 周口哪家做网站好手机关键词点击排名软件
  • 学校网站建设说明书河南企业网站建设
  • 四川成都百度推广广州抖音seo公司
  • a word与the wordpress东莞网站推广及优化
  • 如何看出网站用dede做的湘潭网站设计外包服务
  • 微信小程序开发用什么语言?公司优化是什么意思?