物料主数据增强字段是一个项目中经常遇到的需求,网上有许多大佬的文档已经概括的很全面了,这里结合实际使用情况做一个总结。
具体的实施过程可以参考文档:
物料主数据增强附加字段以及BAPI写入_小懒的博客-CSDN博客
介绍的相当全面基本上是一步一步手把手教学,文中列例了MARA和MARC两个表的示例,其中在S4 HANA中MARC等一些有CDS替代对象的表做字段增强要注意做Extension View。
关于替代对象的解释可以参考:ABAP CDS 替换对象(Replacement Objects)引起的数据错误 - 氢氦 - 博客园 (cnblogs.com)
还有几个小点需要注意的是:
1.对于通过BAPI:BAPI_MATERIAL_SAVEDATA 生成物料主数据,如果要用到扩展字段需要在BAPI_TE_MARA、BAPI_TE_MARAX中也附加扩展结构;
2..LSMW批导中如果要用到增强字段需要在SMOD:MGA00001 中增强结构 BMMH1-CI_MMH1,SE38执行报表程序:RMDATING获取更新;
3.如果要在MM17中获取到增强字段去执行批量修改,可以参考文档:
SAP ABAP MASS/MM17批量维护增强_Jon的博客-CSDN博客
也是总结的非常详细,底层是IDOC的逻辑,需要做增强赋值。
4.对MARC做增强,屏幕字段操作可以参考MARA;但是赋值就无法在二代增强MGA00001中进行赋值了,因为EXIT_SAPLMGMU_001中CHANGING参数只有CMARA MARA的参考结构。若想实现赋值,在这个函数调用点后创建隐式增强,通过内存传值修改MARC-XXX/CMARC-XXX自定义字段的值实现。
后边如果遇到哪些细节问题还会更新文档...