Zilliant CPQ can retrieve product sales text, known as material sales text in SAP ERP, as part of the product synchronization process. In SAP, sales text is maintained per sales organization and distribution channel and can have translations in several languages. However, during synchronization, only the languages maintained in Zilliant CPQ are retrieved.
This topic explains:
Synchronize product sales text
To automatically synchronize products with sales text:
In Zilliant CPQ, enable the SettingProductSyncDownloadProductSalesText setting.
In SAP ERP, enable the RFC_READ_TEXT BAPI. This BAPI is used to read the text content directly from SAP ERP during synchronization. For details, read Enable BAPIs
Lookup tables for sales text synchronization
Two Zilliant CPQ lookup tables support the sales text synchronization:
MVKE table
This table links a product (material in SAP ERP) with the relevant sales organization and distribution channel. It ensures that Zilliant CPQ can locate the correct sales text entry in SAP.
The MVKE table contains the following columns:
MATNR—Product ERP ID (material number in SAP ERP)
VKORG—Sales organization ERP ID
VTWEG—Distribution channel ERP ID
You can populate this table in either of the following ways:
Direct sync from SAP’s MVKE table. To limit the number of records, create a filtered database view in SAP ERP and sync that view instead.
Manual data entry in CPQ.
LANGUAGEKEYS table
This table maps SAP language keys to the 2-character ISO language codes used in Zilliant CPQ. The data source for this table is SAP’s T002 table.
The LANGUAGEKEYS table contains the following columns:
SPRAS—Language key
LAISO—2-character SAP language code
Groovy script for language mapping
By default, Zilliant CPQ uses the current user’s locale language to determine which sales text to display for a product. However, you can override this behavior by uploading a Groovy script for the predefined extension point. This is to support cases where the sales text was used for another purpose. In this script, define custom mapping logic between the user's language and the desired SAP sales text language.
Write the script
The following binding variables are available for the script:
Variable name | Description |
---|---|
| The 2-character ISO code of the current user’s language, for example, |
| Type of text being requested, for example, |
Sample script:
/* This script determines the sales text language to use when
* retrieving product sales text from SAP ERP.
*/
if (textType.equals("SALES_TEXT")) {
return "en_sg";
}
return userLanguage;
Upload the script to CPQ
Upload the script for UserLangToTextLangMappingScript. For details about uploading and configuring Groovy scripts, read Upload a Groovy script.
This script runs automatically when Zilliant CPQ retrieves sales text from SAP ERP.