创建修改主数据时,MARA-EAN11国际商品条码字段前导0会被省略问题。
零售进口商品条码是0开头的, 国际商品条码/商品通码通过BAPI写入或者MM41\MM42创建时发现,前台输入前导0的条码回车后前面的0会自动呗忽略掉,后台表修改也无法写入前导0。
解决方法:
1、MARA-EAN11字段的例程
CONVERSION_EXIT_EAN11_INPUT 带有前导0的条码经过转换之后会把前面的0忽略掉,选择在转换例程之前增加隐式增强,判断INPUT第一位为0时 OUTPUT =INPUT EXIT例程。
此步骤解决了MM41\MM42屏幕输入的国际条码回车之后0会自动忽略掉问题。
实际保存之后发现,EAN11的值后面还会被改掉,接下来执行第二步。
2、Function moudle : MARA_EAN11
这个函数有针对条码的检查,类似唯一值检查等等,这里的传入参数P_EAN11 第一步改过例程之后是带0的 执行过这个函数之后输出的P_EAN11的前导0会被clear掉。 这里我们需要在此函数的开始和截至位置增加隐式增强,判断前导0的条码传入之后,在执行完毕之后将传入前导0的条码再覆盖一次。
PS:前台创建修改和BAPI操作都会触发。