Abap 针对业务合作伙伴的集中大规模归档更改

Abap 针对业务合作伙伴的集中大规模归档更改,abap,jobs,sap-erp,Abap,Jobs,Sap Erp,我认为这是一个远大的目标,但我的问题是: 我想在后台工作中同时标记许多业务合作伙伴进行归档 有BAPI_BUPA_CENTRAL_CHANGE和BUPA_CENTRAL_CHANGE,但它们都将单个业务伙伴作为其导入参数。我认为循环和调用这个函数没有意义,因为我只有50000个后台工作。我想要一份背景工作,所有的商业伙伴都给我。传递标准表而不是结构会转储函数。有没有办法将更多的数据放入结构中,或者完全用另一种方法 ls_central-centralarchivingflag = 'X'

我认为这是一个远大的目标,但我的问题是:

我想在后台工作中同时标记许多业务合作伙伴进行归档

有BAPI_BUPA_CENTRAL_CHANGE和BUPA_CENTRAL_CHANGE,但它们都将单个业务伙伴作为其导入参数。我认为循环和调用这个函数没有意义,因为我只有50000个后台工作。我想要一份背景工作,所有的商业伙伴都给我。传递标准表而不是结构会转储函数。有没有办法将更多的数据放入结构中,或者完全用另一种方法

    ls_central-centralarchivingflag = 'X'.
    ls_central_x-centralarchivingflag = 'X'.
   CALL FUNCTION 'BAPI_BUPA_CENTRAL_CHANGE' IN BACKGROUND TASK
    EXPORTING
    businesspartner                   = ls_partner_bapi   (Here, many bpartners)
    centraldata                       = ls_central
    centraldata_x                     = ls_central_x
    TABLES
    return                            = lt_return.
改用批量维护工具(tcode
Mass
MASSD
)。它可以用于批量更改任何对象,包括业务合作伙伴

以下是使用批量维护工具(tcode
MASS
MASSD
)执行后台更改任务的方法。它可以用于批量更改任何对象,包括业务合作伙伴


下面是使用
MASS

进行后台更改任务的方法。为什么您会假设您将有50k个后台作业,而不是单个后台作业中的一个循环?为什么首先要在后台任务中调用函数模块?(注意:task!=job!)一个后台任务中的循环是我想要的,但它没有执行。我让一个函数模块在后台运行,传递表,然后在FM内部循环,在循环中使用BUPA调用-但是SM37或SM58中没有出现任何问题,即使使用提交/提交函数也没有对DB进行任何更改。并且没有更多关于返回值的详细信息,没有人会知道为什么……我知道的还不够多,无法给出返回值,甚至无法看到它们。它没有归还任何东西。我没有隐瞒信息:)但是!我的解决方案是将所有合作伙伴从分析程序写入一个DB表,然后有第二个程序,我可以在后台运行,直接从该DB中选择,并将这些合作伙伴标记为存档。因为两者都需要一段时间来运行,所以我可以(最好)分别运行它们。在前台一次完成所有这些操作首先会导致转储—在该系统上有太多的内容无法以这种方式更改。使用标准功能总是比使用一堆Z构造更好。为什么您会假设您将有50k个后台作业,而不是单个后台作业中的一个循环?为什么首先要在后台任务中调用函数模块?(注意:task!=job!)一个后台任务中的循环是我想要的,但它没有执行。我让一个函数模块在后台运行,传递表,然后在FM内部循环,在循环中使用BUPA调用-但是SM37或SM58中没有出现任何问题,即使使用提交/提交函数也没有对DB进行任何更改。并且没有更多关于返回值的详细信息,没有人会知道为什么……我知道的还不够多,无法给出返回值,甚至无法看到它们。它没有归还任何东西。我没有隐瞒信息:)但是!我的解决方案是将所有合作伙伴从分析程序写入一个DB表,然后有第二个程序,我可以在后台运行,直接从该DB中选择,并将这些合作伙伴标记为存档。因为两者都需要一段时间来运行,所以我可以(最好)分别运行它们。在前台一次完成所有这些操作首先会导致转储—在该系统上有太多的内容无法以这种方式更改。使用标准功能总是比使用大量Z结构更好。正因为如此,我找到了一个可以使用的解决方案。(在我对原始问题的评论中):)感谢这一点,我找到了一个可以使用的解决方案。(在我对原问题的评论中):)