High- Level Specification
| Parameter | Value |
|---|---|
| Application System | GTS (CN, RoW, US) |
| Business Process Reference | 12.02.01.02. Classify Products via Product/Worklist |
Functional Overview
The enhancement is required in GTS system as part of the Customs Classification products where for any new replicated packaged material from S/4 to GTS, these should inherit the same classification from its "template" product, or known as unpackaged product as per the New Product Introduction process.
Scope and Objectives
The scope of this integration process is to automatize and simplify the existing autoclassification process in GTS when comes to product customs classification.
New products are classified by applying the HTS codes, which are used by customs authorities around the world to identify the duty and rate taxes for specific types of products, as well as to know which products need license to be exported.
The benefits of this enhancement are:
Improving the accuracy of the classification
Decreasing the team’s workload and increasing the operational efficiency
Avoiding repetitive work and standardizing the process to avoid various interpretations.
Allowing traceability of the classification performed, namely by identifying the template product.
Process Flow Diagram
Step | Description | Comment |
|---|---|---|
| 1. | Packaged products are replicated to GTS | |
| 2. | Perform Autoclassification for the packaged products | Enhancement related |
| 3. | Maintain Products Classification manually |
Assumptions
- Master Data System (non SAP)-S/4HANA communication set up accordingly. Master data System being the leading system for handling products (creation/changes/maintenance). Without products in GTS at first place, this enhancement cannot run.
- S/4HANA-GTS communication set up accordingly. Once Master data system sends the master data details to S/4HANA, GTS is being fed by S/4HANA.
Interface settings are essential to have in place and work accordingly.
Dependencies
New Product Introduction process must work properly and create the unpacked and packaged products before being replicate to down systems (S/4HANA - GTS).
Security, Integrity and Controls
This enhancement will be executed in the background during the interface processing from S/4HANA to GTS client as part of the product master synchronization.
Manual classification would be performed by the GTS Trade Classification Master Data Maintainer as part of process Maintain Product Classification outside this build requirement.
To detail the security requirements for processing this enhancement, any data integrity issues associated with the object and the teams that will be responsible for processing the object, i.e. authorization/roles required to who can execute the enhancements, etc.
Configuration Requirements
System and Integration:
- Logical system groups: For materials to transfer from feeder system to GTS, S/4 must be assigned to logical system groups within GTS.
- Feeder system data: The feeder system must be properly configured to send the necessary data, such as product descriptions, units of measure, and weights, which will be copied into GTS.
- Master data integrity: Ensure the master data in both the feeder system and GTS is accurate and up-to-date, including material master data, customer master data, and country master data.
- Communication interfaces: Established communication interfaces, such as RFC connections, are necessary for data to flow between systems.
Classification:
- Classification catalogs: Maintain and update your classification in GTS, which include the relevant import/export control classification numbers for different countries.
- Numbering schemes: Define the numbering schemes for commodity codes or customs tariff numbers within the system.
Custom attributes:
1) Define Product Characteristics from the feeder system → define the attribute technical name.
2) Assign Field attributes to the product characteristics from the feeder system → assign field length to the attributes defined at step 1.
3) Define Attributes of Product Characteristics with Length 01 → define possible values for the attribute.
Below is the list of relevant tables for this functionality:
- /SAPSLL/PRGEN - Product attributes in GTS
- /SAPSLL/TCOATR - Definition of characteristics from feeder system
- /SAPSLL/TCOATC - Generic settings for general attributes maintenance
- /SAPSLL/TCOATA - Control of general attribute maintenance - assignment of attributes
Language Requirements
N/A
Special Requirements
N/A
Design Rationale
Functional Requirements
- Master data system will be the source system to create products; all will then be replicated to the down streams such as S/4 and S/4 to GTS.
- GTS will be the source system to classify all materials.
During the interface synchronization transfer from S/4 to GTS of new products:
Unpacked products-> Trade Classification Specialist will manually classify these products (to be executed outside this build) as a dependency to the auto-classification of packed product.
Packed products (replacing the existing RPA BOT) -> will be linked to the unpacked products (basic material) and within an automatized enhancement at the time of arrival in GTS, it will search for the template product (unpacked product) in order to copy the classification from. This includes an approach at any GBU level and must run in background mode.
- While for existing products, there will be an "Assess Materials stage" conducted by Global Trade Team that by every time a new tariff schedule gets changed will evaluate if any classified product gets impacted by this change and update the classification accordingly for the unpackaged product. Once the unpacked product is manually updated, the autoclassification custom program will run to perform the classification for the linked packaged of the unpacked product.
Proposed Technology to Use
SE37→ FM → EXIT_SAPLSLL_LEG_PRR3_004 : Customer Exit can be used
Import → Parameter Name: IS_MATERIAL_TABLES →Associated type: SLLR3_MATERIAL_OBJ_S (this FM will be validated considering the overall solution captured under "processing logic - agreed with Dhiraj J. Dec 2025).
See Processing GTS Logic section for more details.
Data Source Considerations
N/A
| Table | Field Name | Comments/Calculation/Field Manipulation |
|---|---|---|
Data Validation Considerations
N/A
| Table | Field Name | Comments/Calculation/Field Manipulation |
|---|---|---|
Custom Tables
N/A
Master Data
N/A
| Field | Description | Data Type/Length | Validation rule/ Value Help |
|---|---|---|---|
Configuration Table
N/A
| Field | Description | Data Type/Length | Validation rule/ Value Help |
|---|---|---|---|
Selection Screen Enhancement
N/A
| Field Name | Description | Select: | Data Type/Length | Default Value/ Validation rule/ Value Help | Selection Logic |
|---|---|---|---|---|---|
Processing Logic
The trigger of this logic will be whenever a new packaged product will be replicated from S/4 to GTS. Standard interface.
As per the New Process Introduction (NPI) procedure, the S/4 material types relevant for these products will be knows as:
- Unpackaged product type = ZBAR → will have to be mapped as custom attribute under additional characteristics master data in GTS as ATTR*- technically the FM specified+ configuration in GTS will enhance it.
- Packaged product type = ZDIR → will have to be mapped as custom attribute under additional characteristics master data in GTS as ATTR*- technically the FM specified + configuration in GTS will enhance it
All the (re)packaged products will have to be classified automatically in reference to its unpackaged products at the time of the product transfer to GTS.
Overview process (S/4-GTS)
- Basic material will be the link between unpacked and packaged product in S/4 (MARA-WRKST- reference field where the unpackaged material number will be stored for a packaged material). This link is going to refer once both products are being transferred to GTS via customer exit as attribute (TBC by tech team).
- First, the unpacked product is going to be replicated to GTS - at this stage the trade classification export is going to perform a manual classification in GTS.
- Then, the packed product is going to be replicated to GTS too - at this stage at the time of transfer a tech approach is going to use the input parameter (WRKST) in order to check the basic material link between the unpacked and packed products but also to refer to the GTS classification table in order to copy the classification from the template (unpacked) product and replicate it automatically to the packaged product.
GTS logic:
- /SAPSLL/PNTPR → This table can be used to find the GTS product number from an ECC material number.
- /SAPSLL/PRGEN → This table can be use to identify the material type if unpackaged (ZBAR) or packaged (ZDIR).
- /SAPSLL/PRCLS → This table stores the product classification codes, linking products to their classifications.
- /SAPSLL/CTSNR → This table contains the numbering scheme information, such as the Harmonized System (HS) codes
Logic 1 (find the unpackaged already classified products)
- From /SAPSLL/PNTPR filter by the PRVSY field not equal blank; then take the GUID_PR of the PRVSY entry and pass it to GUID_PR of /SAPSLL/PRGEN. Filter by the ATTR05A* (custom attribute) = ZBAR (unpackaged). With the results, pass the GUID_PR to /SAPSLL/PRCLS. Take the GUID_CTSNR from the execution and pass it to the /SAPSLL/CTSNR table and extract the CCNGN field (classification code) for all the existing STCTS (numbering scheme), and then pass the classification codes to the packaged product (ZDIR) - see Logic 2. If CCNGN is missing all, then stop. The packaged product won't get classified and manual intervention is required by the user in GTS (as captured in the Process Flow diagram section).
Logic 2 (assign the classification from unpackaged to packaged products)
With the list of products identified as classified from logic 1, check now the assignment of unpackaged to the packaged to correctly put the classification codes to the packaged ones. Within Master data of GTS products, the S/4 MARA-WRKST should get as an attribute the reference number into GTS (example given above ATTR05A custom attribute). However, the condition in order to link the products in GTS, should be met as follows:
- Whenever unpackaged product in GTS is classified (logic1) and whenever MARA-WRKST has value (meaning the packaged product has an unpackaged product linked to it) in GTS assign the identified classification code if WRKST has an entry in MARA (S4).
ATTR05A* = tbc if under this attribute or another (depending to the list of attributes existing at the time of this enhancement in GTS master data).
Volumetrics
Roughly estimation:
- Initial volume: 70k- 80k with the expectation that the auto-classification won't be running in a bulk.
- Expected frequency: daily with less number of records compared with initial volume.
Performance Considerations
Since the custom program is executed during interface between S/4 and GTS there is no significant performance consideration.
Error Handling
If program cannot copy the classification from the unpackaged product to the product because for e.g at the time when the program runs the unpackaged was not classified by the user, then the program won't be finding the classification details and will stop. Eventually the user in GTS will have to classify manually for the packaged product for exceptional cases by using Classify Product Fiori App (it can check by the numbering scheme and legal regulation or even date, what is the list of materials unclassified). Notify the user by using this DL address: htsclassification@syensqo.com.
Testing
How to Test
Test Conditions and Expected Results
| ID | Condition | Expected Result |
|---|---|---|
| 1 | Unpackaged Product gets replicated to GTS (MDS-S4-GTS - interface step) | Exists in the Fiori App "Manage Products" and can be identify by the internal number. |
| 2 | Packaged Product gets replicated to GTS (MDS-S4-GTS - interface step) | Exists in the Fiori App "Manage Products" and can be identify by the internal number. |
| 3 | Unpackaged Product gets manually classified in GTS (manual intervention) | Classify Product Fiori App can cover the product-classification assignment |
| 4 | Packaged Product gets automatically classified in GTS by the background custom program (enhancement applies) | The custom program will copy the classification from the unpackaged ZBAR to the packaged ZDIR material. |
| 5 | Packaged Product does not gets automatically classified in GTS by the custom background program (no WKRST condition found) | Classify Product Fiori App can cover the product-classification assignment in a manual step executed by the user (covered in the Process Flow diagram) |
Test Considerations/Dependencies
Other Information
Development Details
Package
| Package Name | Parent Package |
|---|---|
Enhancement Implementation
| Enhancement Type | Standard Definition Name | Custom Implementation Name | Design Rationale Reference |
|---|---|---|---|
Other Development Objects
| Object Type | Object Name | Purpose/High Level Logic | Design Rationale Reference |
|---|---|---|---|
Appendix
Custom Authorization Group Naming Convention
This table is based on the Syensqo development standards document. It provides the naming conventions for authorization groups to associated with custom reports and tables to comply with security requirements.
ABAP | ZFI | ZMM | ZPS | ZCO | ZSD | ZBC | ZFI | ZCA |
|---|---|---|---|---|---|---|---|---|
| TABLES | ZFIT | ZMMT | ZPST | ZCOT | ZSDT | ZBCT | ZFIT | ZCAT |
