天天看點

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.

繼續閱讀