乐趣区

S/4HANA服务订单Service Order的批量创建

我工作中接到一个任务,需要在性能测试系统里创建一亿条服务订单 service order 来做性能测试。
这么大规模的数据量,当然只能用代码来创建了。
本文提到的所有 ABAP 代码,我均已上传到我的 Github 上了:
https://github.com/i042416/KnowlegeRepository/tree/master/ABAP/S4
This document provides guide about how to generate a large volume of service order (confirmation) and service request test data in S4CRM performance test system for performance measurement purpose.
The data is generated based on a series of ABAP reports.

ZCRMS4_CREATE_MATERIAL_OPT

Pattern for material number: prefix for generated material ID. Take above screenshot for example, once executed, you will get a series of materials with the following material ID:

Pattern for short text: for example if you specify “Android phone S”, you will get the following description pattern:

ZCRMS4_HOME_CREATE_BPS

ZCRMS4_HOME_CREATE_ORDER_LOOP
This report is used to create a large number of Service Orders.

Order description: define the description pattern of created service orders.
For example, the input parameter in the above screenshot will lead to the created orders with the following description patterns:

Max number of created items: if you specify an integer N, a random number among 1 ~ N of line items will be created for each Service order.
Max item quantity value: if you specify an integer N, the line item quantity value will be assigned with a random integer among 1 ~ N.

Material Number Range:
Let’s say you have first created 10000 materials with ID prefix as “ANDROID”, which means now in table MARA you already have 10000 records with ID starting from ANDROID00000000001 and ending with ANDROID00000010000.
Now in this report, you specify Material Number Range as ANDROID00000000001 and ANDROID00000010000, so that when this report create a new line item, it will randomly pick up a material among this material repository and assigned to created line item.
Sold-to party range: behaves the same as Material Number Range. You have to first create a series of business partners and write down their ID prefix, for example you create 100 BP with prefix BCP. Then maintain Sold-to party range as BCP0000000001 to BCP0000000100. This report will randomly pick one among the 100 BP and assigned it as the Sold to party in Service Order’s header level.
ZCRMS4_HOME_CREATE_SR_LOOP
Used for Service Request mass data generation. The input parameter behaves the same as ZCRMS4_HOME_CREATE_ORDER_LOOP.
During the period that those reports are running, you can use report ZTABLESIZE to check the number of created records currently. This report will list table name, table record number and table storage size accordingly.

You are supposed to run these reports via background job to avoid TIME OUT issue.
Please do not occupy ALL Background work processors so that the normal system operation like TR import are not hindered.

要获取更多 Jerry 的原创文章,请关注公众号 ” 汪子熙 ”:

退出移动版