SAP PP BAPI_MATERIAL_SAVEDATA 保存时碰到的一个坑

2023-10-30 10:44

本文主要是介绍SAP PP BAPI_MATERIAL_SAVEDATA 保存时碰到的一个坑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 今早碰到一个奇怪的现象。

调用 BAPI_MATERIAL_SAVEDATA  批量修改物料主数据。

发现

1、批量传入单条时,是正常的,即mm03查看已经修改了。

2、传入多条时,第一条正常修改,后面的都没有成功,也没有报错。

经过调试发现 ,两个extension(ct_extensionin 和ct_extensioninX) 没有clear。

猜想机制,相同的extension 结构,不同数据,且与指定抬头物料不相同 ,也没有报错 。这个extension的增强应该没有做物料的校验 。

ls_te_mara-zyxwlz01  = ls_zsmara-zyxwlz01.  "品牌ls_te_mara-zyxwlz02  = ls_zsmara-zyxwlz02.  "产业ls_te_mara-zyxwlz03  = ls_zsmara-zyxwlz03.  "产品线ls_te_mara-zyxwlz04  = ls_zsmara-zyxwlz04.  "产品档次ls_te_mara-zyxwlz05  = ls_zsmara-zyxwlz05.  "产品系列ls_te_mara-zyxwlz06  = ls_zsmara-zyxwlz06.  "型号组合ls_te_mara-zyxwlz07  = ls_zsmara-zyxwlz07.  "旋梭种类ls_te_mara-zyxwlz08  = ls_zsmara-zyxwlz08.  "电控种类ls_te_mara-zyxwlz09  = ls_zsmara-zyxwlz09.  "物联网ls_te_mara-zyxwlz10  = ls_zsmara-zyxwlz10.  "业务曲线ls_te_mara-zyxwlz11  = ls_zsmara-zyxwlz11.  "成品营销物料组11ls_te_mara-zyxwlz12  = ls_zsmara-zyxwlz12.  "成品营销物料组12ls_te_mara-zyxwlz13  = ls_zsmara-zyxwlz13.  "成品营销物料组13ls_te_mara-zyxwlz14  = ls_zsmara-zyxwlz14.  "成品营销物料组14ls_te_mara-zyxwlz15  = ls_zsmara-zyxwlz15.  "成品营销物料组15ls_te_mara-zyxwlz16  = ls_zsmara-zyxwlz16.  "成品营销物料组16ls_te_mara-zyxwlz17  = ls_zsmara-zyxwlz17.  "成品营销物料组17ls_te_mara-zyxwlz18  = ls_zsmara-zyxwlz18.  "成品营销物料组18ls_te_mara-zyxwlz19  = ls_zsmara-zyxwlz19.  "成品营销物料组19ls_te_mara-zyxwlz20  = ls_zsmara-zyxwlz20.  "成品营销物料组20ls_te_mara-material  = ls_material.lv_valuepart         = ls_te_mara.ls_extensionin-structure  = 'BAPI_TE_MARA'.ls_extensionin-valuepart1 = lv_valuepart(240).ls_extensionin-valuepart2 = lv_valuepart+240(240).ls_extensionin-valuepart3 = lv_valuepart+480(240).ls_extensionin-valuepart4 = lv_valuepart+720(240).APPEND ls_extensionin TO ct_extensionin.ls_te_marax-material  = ls_material.ls_te_marax-zyxwlz01  = 'X'.ls_te_marax-zyxwlz02  = 'X'.ls_te_marax-zyxwlz03  = 'X'.ls_te_marax-zyxwlz04  = 'X'.ls_te_marax-zyxwlz05  = 'X'.ls_te_marax-zyxwlz06  = 'X'.ls_te_marax-zyxwlz07  = 'X'.ls_te_marax-zyxwlz08  = 'X'.ls_te_marax-zyxwlz09  = 'X'.ls_te_marax-zyxwlz10  = 'X'.ls_te_marax-zyxwlz11  = 'X'.ls_te_marax-zyxwlz12  = 'X'.ls_te_marax-zyxwlz13  = 'X'.ls_te_marax-zyxwlz14  = 'X'.ls_te_marax-zyxwlz15  = 'X'.ls_te_marax-zyxwlz16  = 'X'.ls_te_marax-zyxwlz17  = 'X'.ls_te_marax-zyxwlz18  = 'X'.ls_te_marax-zyxwlz19  = 'X'.ls_te_marax-zyxwlz20  = 'X'.lv_valuepartx         = ls_te_marax.ls_extensioninx-structure  = 'BAPI_TE_MARAX'.ls_extensioninx-valuepart1 = lv_valuepartx(240).ls_extensioninx-valuepart2 = lv_valuepartx+240(240).ls_extensioninx-valuepart3 = lv_valuepartx+480(240).ls_extensioninx-valuepart4 = lv_valuepartx+720(240).APPEND ls_extensioninx TO ct_extensioninx.CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'EXPORTINGheaddata     = ls_headdataIMPORTINGreturn       = ls_returnTABLESextensionin  = ct_extensioninextensioninx = ct_extensioninx.

这篇关于SAP PP BAPI_MATERIAL_SAVEDATA 保存时碰到的一个坑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

下载/保存/读取 文件,并转成流输出

最近对文件的操作又熟悉了下;现在记载下来:学习在于 坚持!!!不以细小而不为。 实现的是:文件的下载、文件的保存到SD卡、文件的读取输出String 类型、最后是文件转换成流输出;一整套够用了; 重点: 1:   操作网络要记得开线程; 2:更新网络获取的数据 切记用Handler机制; 3:注意代码的可读性(这里面只是保存到SD卡,在项目中切记要对SD卡的有无做判断,然后再获取路径!)

FFmpeg系列-视频解码后保存帧图片为ppm

在正常开发中遇到花屏时怎么处理呢?可以把解码后的数据直接保存成帧图片保存起来,然后直接看图片有没有花屏来排除是否是显示的问题,如果花屏,则代表显示无问题,如果图片中没有花屏,则可以往显示的方向去排查了。 void saveFrame(AVFrame* pFrame, int width, int height, int iFrame){FILE *pFile;char szFilename[

html记账本改写:数据重新布局,更好用了,没有localStorage保存版本

<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>htm记账本</title><style>table {user-select: none;/* width: 100%; */border-collapse: collapse;}table,th,td {border: 1px solid bla

SAP学习笔记 - 开发02 - BTP实操流程(账号注册,BTP控制台,BTP集成开发环境搭建)

上一章讲了 BAPI的概念,以及如何调用SAP里面的既存BAPI。 SAP学习笔记 - 开发01 - BAPI是什么?通过界面和ABAP代码来调用BAPI-CSDN博客 本章继续讲开发相关的内容,主要就是BTP的实际操作流程,比如账号注册,登录,BTP集成开发环境的搭建这方面。 目录 1,账号注册 2,BTP登录URL 3,如何在BTP上进行开发? 以下是详细内容。 1,账

在项目中,控制权限保存时,如果多次修改权限,该如何写?

在项目中,控制权限保存时,如果多次修改权限,该如何写? 错误代码: package cn.itcast.crm.service.impl;import java.util.List;import javax.annotation.Resource;import org.apache.commons.lang.xwork.StringUtils;import org.springfr

SAP项目中沟通的几点总结

最近参与的公司SAP RISE项目,由于是国际项目,全程远程实施,所以沟通显得尤为重要,有几点总结跟大家分享。   1.     提前沟通 提前沟通比事后沟通效果好太多。作为项目管理者,需要把下一步的计划等信息提前通过一定的形式(会议、邮件、Teams Channel等)传播出去。而不是等着这个事情发生了,项目组成员来询问,一方面这样很浪费时间,也会对项目进队产生影响,所以作为项目管理者永

SMIDI-SAP接口配置手册

目录 一、 SAPERP相关接口配置(必要条件) 1. SAP ERP 配置 1.1 配置

erlang学习:用ETS和DETS存储数据3,保存元组到磁盘

学习内容 ETS表把元组保存在内存里,而DETS提供了把Erlang元组保存到磁盘上的方法。DETS的最大文件大小是2GB。DETS文件必须先打开才能使用,用完后还应该正确关闭。如果没有正确关闭,它们就会在下次打开时自动进行修复。因为修复可能会花很长一段时间,所以先正确关闭它们再结束程序是很重要的。 DETS表有着和ETS表不同的共享属性。DETS表在打开时必须赋予一个全局名称。如果两个或更多

Spark—数据读取和保存

Spark—数据读取和保存

使用Python通过字节串或字节数组加载和保存PDF文档

处理PDF文件的可以直接读取和写入文件系统中的PDF文件,然而,通过字节串(byte string)或字节数组(byte array)来加载和保存PDF文档在某些情况下更高效。这种方法不仅可以提高数据处理的灵活性,允许开发者在内存中直接操作PDF,而且还能增强安全性,同时方便跨应用传输和网络传输。 本文将介绍如何使用Python通过字节串或字节数组来加载和保存PDF文档。 文章目录 创建P