LV60AU02自定义开票编号范围未执行USEREXIT_NUMBER_RANGE

2020-08-19 01:22发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


尊敬的专家,

根据我们公司的政策,每个销售组织的SO,DO和开票凭证必须具有不同的格式编号。

对于开票凭证,我们要做的是制作一个自定义ztable,其中包含销售组织和编号范围编号(NRIV-NRRANGENR)列,并将其放入用户出口RV60AFZZ中,正如针对每个标准用户出口所建议的那样 自定义帐单号范围。

由于服务器是新服务器(我们使用ECC 6.0版本),所以目前只有一个销售组织,这是我从tcode VN01中分配的:

NRRANGENR = 45(销售订单)

NRRANGENR = 46交货单

NRRANGENR = 47(用于Biling文档)。

但是,当我进行测试以制作多个开票凭证时,所有文件的格式编号都不正确(以某种方式从销售订单编号中选择了编号)。

这就是我所发现的:

在程序LV60AU02中,执行userexit_number_range之前需要进行如下验证:

如果xvbrk-numki = tvfk-numki。

         使用da_numki执行userexit_number_range。

         如果da_numki NE tvfk-numki。

           使用da_numki执行tvfkd_lesen。

           如果不是tvfkd-fkdat是初始的并且

             xvbrk-fkdat NE tvfkd-fkdat。

             使用xvbrk-fkdat da_numki的消息a145。

           万一。

         万一。

       其他。

 * number_range在用户退出中更改number_range_inv_date

         da_numki = xvbrk-numki。

       万一。
 

在附件

中,XVBRK-NUMKI = 45,而TVFK-NUMKI = 47,因此不会执行userexit_number_range ,导致RV60AFZZ中的ztable无法使用。 调试时,如果将XVBRK-NUMKI的值改为47,则会调用RV60AFZZ,并且保存的开票凭证使用正确的格式编号。

我们有另一台服务器(较旧的服务器,不确定其版本,肯定不是ECC 6.0),并且在此服务器中,XVBRK-NUMKI的值始终与TVFK-NUMKI相同,因此正在执行用户出口RV60AFZZ 正确。

我的问题:

如何填充XVBRK-NUMKI? 进行"帐单类型"配置时是否错过了某些内容?

(92.8 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


尊敬的专家,

根据我们公司的政策,每个销售组织的SO,DO和开票凭证必须具有不同的格式编号。

对于开票凭证,我们要做的是制作一个自定义ztable,其中包含销售组织和编号范围编号(NRIV-NRRANGENR)列,并将其放入用户出口RV60AFZZ中,正如针对每个标准用户出口所建议的那样 自定义帐单号范围。

由于服务器是新服务器(我们使用ECC 6.0版本),所以目前只有一个销售组织,这是我从tcode VN01中分配的:

NRRANGENR = 45(销售订单)

NRRANGENR = 46交货单

NRRANGENR = 47(用于Biling文档)。

但是,当我进行测试以制作多个开票凭证时,所有文件的格式编号都不正确(以某种方式从销售订单编号中选择了编号)。

这就是我所发现的:

在程序LV60AU02中,执行userexit_number_range之前需要进行如下验证:

如果xvbrk-numki = tvfk-numki。

         使用da_numki执行userexit_number_range。

         如果da_numki NE tvfk-numki。

           使用da_numki执行tvfkd_lesen。

           如果不是tvfkd-fkdat是初始的并且

             xvbrk-fkdat NE tvfkd-fkdat。

             使用xvbrk-fkdat da_numki的消息a145。

           万一。

         万一。

       其他。

 * number_range在用户退出中更改number_range_inv_date

         da_numki = xvbrk-numki。

       万一。
 

在附件

中,XVBRK-NUMKI = 45,而TVFK-NUMKI = 47,因此不会执行userexit_number_range ,导致RV60AFZZ中的ztable无法使用。 调试时,如果将XVBRK-NUMKI的值改为47,则会调用RV60AFZZ,并且保存的开票凭证使用正确的格式编号。

我们有另一台服务器(较旧的服务器,不确定其版本,肯定不是ECC 6.0),并且在此服务器中,XVBRK-NUMKI的值始终与TVFK-NUMKI相同,因此正在执行用户出口RV60AFZZ 正确。

我的问题:

如何填充XVBRK-NUMKI? 进行"帐单类型"配置时是否错过了某些内容?

(92.8 kB)
付费偷看设置
发送
2条回答
zhangjiyang1323
1楼-- · 2020-08-19 01:58

这只是一个随机的想法-您在ECC6系统中是否还有其他记帐出口处于活动状态?

您可以通过事务PRCAT或使用程序SNIF轻松检查这一点。

我问的原因是,例如RV60AFZC,USEREXIT_NUMBER_RANGE_INV_DATE的优先级高于RV60AFZZ,USEREXIT_NUMBER_RANGE。

Baoming ROSE
2楼-- · 2020-08-19 01:49

谢谢您的建议。 我确实在RV60AFZC中找到了另一个有关数字范围的用户出口。 但是,即使用户出口不存在,RV60AFZC中的数字范围值也已经错误(在我的情况下已经是45)。 我将删除该用户出口,以查看它是否影响数字范围值。

一周热门 更多>