Document History
Version | Changes | Effective Date |
1.0 | First approved version | 01-Feb-2024 |
2.0 | Updated with Release 2024_02 | 01-May-2024 |
3.0 | Updated with Release 2024_03 | 01-Aug-2024 |
4.0 | Updated with Release 2024_04 | 01-Nov-2024 |
5.0 | Updated with Release 2025_01 | 01-Feb-2025 |
Table of Contents |
---|
About This Guide
...
Industry Identifier | RU System | RU System Revision | REST Operation | REST Path | ||||
20 | NTF (Notification System) | 600 | EDO_CREATE_DOC | /apiUot/api/v1/private/create-doc | ||||
20 | NTF (Notification System) | 600 | EDO_DATA_FOR_SIGN | /apiUot/api/v1/private/getDataForSign | ||||
20 | NTF (Notification System) | 600 | EDO_DELETE_DRAFT | /apiUot/api/v1/private/draft/{docID} | ||||
20 | NTF (Notification System) | 600 | EDO_DOC_ACCEPT | /apiUot/api/v1/private/document/accept | ||||
20 | NTF (Notification System) | 600 | EDO_DOC_LIST | /apiUot/api/v1/private/doc-list | ||||
20 | NTF (Notification System) | 600 | EDO_DOC_REJECT | /apiUot/api/v1/private/document/reject | ||||
20 | NTF (Notification System) | 600 | EDO_EDIT_AGGREGATE | /apiUot/api/v1/private/aggregate/edit | ||||
20 | NTF (Notification System) | 600 | EDO_GET_AGGREGATE | /apiUot/api/v1/private/aggregate/{code} | ||||
20 | NTF (Notification System) | 600 | EDO_GET_DOC_ | GTINCODES | /apiUot/api/ | v1v2/private/document/ | gtincodes/{ | docIddocID} |
20 | NTF (Notification System) | 600 | EDO_GET_DOC_ | TOKENERRORS | /apiUot/api/v1v2/private/get-tokenmarks-error/{docID} | |||
20 | NTF (Notification System) | 600 | EDO_GET_DOC_GTIN | /apiUot/api/v1/private/document/gtin/{docId} | ||||
20 | NTF (Notification System) | 600 | EDO_GET_TOKEN | /apiUot/api/v1/private/get-token | ||||
20 | NTF (Notification System) | 600 | EDO_INFO_KM | /apiUot/api/v1/private/info-km | ||||
20 | NTF (Notification System) | 600 | EDO_PROF_DOC | /apiUot/api/v2/private/profile-doc | ||||
20 | NTF (Notification System) | 600 | EDO_PROF_OUT_DOC | /apiUot/api/v1/private/profile-out-doc | ||||
20 | NTF (Notification System) | 600 | EDO_SEND_SIGNED | /apiUot/api/v1/private/sendSigned | ||||
20 | NTF (Notification System) | 600 | EDO_UPD_DOC_GTIN | /apiUot/api/v1/private/document/gtin/{docId} |
...
Property | Description | Mandatory? |
ZR_KZ_PRM_DOC_NUM | Document number | YN |
ZR_KZ_PRM_DOC_DATE | Document date | YN |
ZR_KZ_SUPPL_ID | Sender Bin | N |
ZR_KZ_CONS_ID | Receiver Bin | N |
...
Property | Description | Mandatory? |
ZR_KZ_PRM_DOC_NUM | Document number | YN |
ZR_KZ_PRM_DOC_DATE | Document date | YN |
ZR_KZ_SUPPL_ID | Sender Bin | N |
ZR_KZ_CONS_ID | Receiver Bin | N |
...
Property | Description | Mandatory? |
ZR_KZ_PACKAGE_TYPE | Package Type | N |
Customizing the solution
In general, customizing is performed with following transactions:
/K3TKZ/EDO_PARAM - Reporting parameters
/K3TKZ/EDO_CUST - Reporting customizing
/K3TKZ/EDO_CONF - Reporting configuration
/K3TKZ/EDO_ATTR_MAP - Reporting attributes mapping
General Customizing
The transaction /K3TKZ/EDO_PARAM contains parameters to influence the 3Keys Kazakhstan CEDM. The settings will require a customizing transport.
...
Name
...
Description, Values
...
DOC_TYPE_CUSTOM
...
Default Customs Document type for notification “Import from 3rd countries”
Example: DECLARATION
...
DOC_TYPE_0003
...
Default Document type for notification “Import from 3rd countries”
...
DECISION_CODE
...
Customs decision code for notification “Import from 3rd countries”
Example: 10
...
EDO_SYSTEM
...
ATTP System name (with assigned RFC with path /app/edo/api )
Example: CEDM
...
EDO_SYSTEM_API
...
ATTP System name for internal Connector calls (with assigned RFC without path /app/edo/api )
Example: CEDM_API
...
MON_CHANGE_DOC_INACTIVE
...
Deactivate Change Log functionality
X – deactivate
...
MON_HDR_AREA
...
Set header area size for transaction /K3TKZ/EDO_MONITOR
...
SEQ_MAX_LOG_ROWS
...
Maximum entries for sequence check result screen
...
SINGLE_DISTR_BIN
...
Single distributor Bin
...
OMS_STATUS_CHECK_DELAY
...
Delay in seconds before first CEDM status check after sending usage report to OMS system
Example 300
...
PRICE_RELEV_0001
...
Enable pricing information for Act of acceptance Single distributor (type 0001)
...
PRICE_RELEV_0002
...
Enable pricing information for Introduce from EAEU (type 0002)
...
PRICE_RELEV_0003
...
Enable pricing information for Import from 3rd countries (type 0003)
...
PRICE_RELEV_0004
...
Enable pricing information for Write off notification (type 0004)
...
PRICE_RELEV_0005
...
Enable pricing information for Return into circulation (type 0005)
...
PRICE_RELEV_0010
...
Enable pricing information for Act of acceptance (type 0010)
Following the recommended minimum set of parameters
...
Name
...
Value
...
EDO_SYSTEM
...
Example: CEDM
...
EDO_SYSTEM_API
...
Example: CEDM_API
...
SINGLE_DISTR_BIN
...
090340007747
Customizing for Reports
Relevant industry
Maintain relevant industry in the transaction /K3TKZ/EDO_CUST under “Relevant industry”.
These settings are also used for assignment of customer specific industries to product groups
...
Field
...
Description, Values
...
Industry
...
Industry relevant for connector operations
...
Product group
...
Product group at CEDM system
...
Text
...
Free text used to describe industry
...
Inbound document active
...
Flag to activate inbound document processing (for future releases)
This mapping will be used to identify correct product group (Commodity group) on execution CEDM API request.
Example:
...
Industry
...
Product group
...
Text
...
20
...
Pharma
...
Pharmaceuticals
Document type description
Maintain document type description in the transaction /K3TKZ/EDO_CUST under “Document Type”
...
Field
...
Description, Values
...
Doc Type
...
Internal document type (values are predefined).
1 Act of acceptance Single distributor
2 Introduce from EAEU
3 Import from 3rd country
4 Withdrawal Notification
5 Return into circulation Notification
6 Act internal transfer
7 Act internal transfer Single distributor
10 Act of acceptance
11 Codes transfer from non-resident
91 OMS Report
92 Aggregation Edit (API)
6000 New aggregation out of production
...
Document Type Description
...
Text to be displayed at Report Monitor for document type
...
CEDM Document Type
...
CEDM API document type
Mapping attributes
Mapping attributes in the transaction /K3TKZ/EDO_CUST under “Mapping attributes” contains attributes for each report used on notification creation. 3Keys Kazakhstan CEDM connector already contains predefined mapping attributes for delivered rule types:
...
Field
...
Description, Values
...
Rule Type
...
Rule execution type
...
Notification Type
...
Notification type, for example Z3KZED11
...
NS
...
AIF namespace.
Value is common for 3Keys CEDM connector: /STTC3
...
Interface Name
...
AIF interface.
Unique for each rule type, example: ZKZEDO_011
...
Interface Version
...
AIF interface version.
3Keys Kazakhstan CEDM connector value: 1
...
Raw Data Structure
...
AIF request/response structure for notification data
Example: /K3TKZ/S_EDO_IMPNRES_AIF
...
SAP Data Structure
...
SAP structure for notification data
Example: /K3TKZ/S_EDO_IMPNRES_MSG
...
CEDM Document Type
...
Internal document type
Example: 11
...
Mapper class
...
Mapper class to fill notification with data
Example: /K3TKZ/CL_EDO_0011_MAPPER
Product Group
Product group in the transaction /K3TKZ/EDO_CUST under “Product group” contains possible values for product groups at CEDM system. 3Keys Kazakhstan CEDM already contains product groups, maintain additional values in case new product group added:
...
Field
...
Description, Values
...
Product group
...
Product group from CEDM API documentation
Example: pharma
...
Text
...
Description (used at search help)
Example: Pharma
CEDM Status send from, CEDM Status send to
CEDM status customizing in the transaction /K3TKZ/EDO_CUST under “CEDM Status send from” contains possible status values for message sequence check before sending to CEDM system. Node “CEDM Status change to” contains new status value to be set after receiving successful response for notification. 3Keys Kazakhstan CEDM already contains CEDM status, maintain values in case other status processing logic is required
Reporting message attributes
Participant tax code fields could be filled with value from source or destination fields of the EPCIS event or business transaction in the transaction /K3TKZ/EDO_ATTR_MAP .
The following location data source is supported:
BIZTRANS-SHIPFROM - event business transaction document ship from party
BIZTRANS-SHIPTO - event business transaction document ship to
BIZTRANS-SOLDFROM - event business transaction document sold from party
BIZTRANS-SOLDTO - event business transaction document sold to party
EVT-BIZLOC - event business location
EVT-DST-LOC - event destination location
EVT-DST-OWNR - event destination owning party
EVT-READPOINT - event read point
EVT-SRC-LOC - event source location
EVT-SRC-OWNR - event source owning party
The following fields are available for mapping:
SENDERBIN - Report from non-resident
RECEIVERBIN - Report from non-resident
The list is not final and planned to be enhanced for the future developed reporting message types
Rule processing
The common rule processing scheme:
...
The rule type Z3KKZ_EDO shall be assigned in the transaction /STTP/CUST_RULES to business steps / location groups related for the CEDM Kazakhstan reporting
The rule type Z3KKZ_EDO allows to use additional customizing parameters to determine the rule to be executed, determine the approval parameters, and helps with sequence check. In case event triggered rule contains more than one industry rule type Z3KKZ_EDO split objects into several reporting events group by industry.
Maintain the rules in the transaction /K3TKZ/EDO_CONF under “Rule Configuration”
...
Field
...
Description, Values
...
Scenario
...
Free text used to describe the scenario and group multiple rules to be triggered for the same event
...
Rule processing sequence
...
Sequence of rule triggering for the same Scenario
...
Industry identifier
...
Industry for which rule will trigger
For empty industry the following logic used:
For each relevant industry from system (transaction /K3TKZ/EDO_CUST, node “Relevant Industry”) check event contains at least one object with this industry;
Start rule from rule configuration
...
CEDM Document type
...
CEDM Document type
...
Rule type
...
The ATTP standard rule type or customer developed
...
Rule is active
...
Set check box to activate the rule
...
Rule Condition Cust
...
Rule condition
...
Business Step
...
Business step
...
Disposition
...
Disposition code (optional)
...
Location Group
...
Business location group (optional)
...
BizLocation GLN
...
Business location GLN (optional)
...
BizLoc. GLN Ext
...
Business location extension (optional)
...
Bus. Transact. Type
...
Business transaction type (optional)
...
Description
...
Description
Maintain additional parameters in the transaction /K3TKZ/EDO_CONF under “Rule Configuration” if required skip specific rules using SAP ATTP rule conditions or class-based rule conditions
...
Field
...
Description, Values
...
Scenario
...
Free text used to describe the scenario and group multiple rules to be triggered for the same event
...
Rule processing sequence
...
Sequence of rule triggering for the same Scenario
...
Rule Condition Cust
...
Rule condition
SAP ATTP rule condition is based on BADI /STTP/BADI_RULE_CONDITIONS with filter = rule condition (Rule processing will stop check if result is skip rule).
Class-based rule condition is maintained via transaction /K3TKZ/EDO_CUST node “Rule condition” and based on class method /K3TKZ/CL_EDO_RULES=>GET_RULE_CONDITION_CLASS. Method is used to get class name from table /K3TKZ/C_EDOCOND, custom class could be assigned as condition processor. Class method /K3TKZ/IF_EDO_3K_RULE_COND~EXECUTE is called. (Rule processing will stop check if result is skip rule).
Message approval
...
Product / GTIN properties
The following product / GTIN properties can be maintained for trade items.
Property | Value |
| Description |
---|---|---|---|
ZKZ_PRICE | Numeric value Example: 1000 | Optional | Notification price in currency KZT common for all notifications (optional parameter) |
ZKZ_PRICE_0001 | Numeric value Example: 1000 | Optional | Notification price in currency KZT for Act of acceptance Single Distributor (optional parameter) |
ZKZ_PRICE_0002 | Numeric value Example: 1000 | Optional | Notification price in currency KZT for Import from EAEU (optional parameter) |
ZKZ_PRICE_0003 | Numeric value Example: 1000 | Optional | Notification price in currency KZT for Import from 3rd countries (optional parameter) |
ZKZ_PRICE_0004 | Numeric value Example: 1000 | Optional | Notification price in currency KZT for Write Off (optional parameter) |
ZKZ_PRICE_0005 | Numeric value Example: 1000 | Optional | Notification price in currency KZT for Return into circulation (optional parameter) |
ZKZ_PRICE_0010 | Numeric value Example: 1000 | Optional | Notification price in currency KZT for Act of acceptance (optional parameter) |
Business partner company registrations
The following company registrations can be maintained for the business partners.
Property | Description | Value |
ZKZ_PARTIC | Ident. Number of Taxpayer KZ | Example: 850702450693 |
ZKZ_SDISTR | Single Distributor indicator | X (optional parameter) |
ZKZ_PAR_T | Indicator to define business partner or location name to be shown in CEDM monitor transaction if the same BIN number is maintained on multiple business partners or locations | X (optional parameter) |
Customizing the solution
In general, customizing is performed with following transactions:
/K3TKZ/EDO_PARAM - Reporting parameters
/K3TKZ/EDO_CUST - Reporting customizing
/K3TKZ/EDO_CONF - Reporting configuration
/K3TKZ/EDO_ATTR_MAP - Reporting attributes mapping
General Customizing
The transaction /K3TKZ/EDO_PARAM contains parameters to influence the 3Keys Kazakhstan CEDM. The settings will require a customizing transport.
Name | Description, Values |
DOC_TYPE_CUSTOM | Default Customs Document type for notification “Import from 3rd countries”. Optional value Example: DECLARATION |
DOC_TYPE_0003 | Default Document type for notification “Import from 3rd countries”. Optional value Example: сертификат соответствия |
DECISION_CODE | Customs decision code for notification “Import from 3rd countries”. Optional value Example: 10 |
DOC_INB_DELAY | Delay in seconds to debug inbound message processing via SM50. Optional value Example: 30 |
DOC_INB_LIST_LIMIT | Limit value for inbound document list request. Optional value, if value is not maintained default value 1000 used Example: 200 |
EDO_SYSTEM | ATTP System name (with assigned RFC with path /app/edo/api ) Example: CEDM |
EDO_SYSTEM_API | ATTP System name for internal Connector calls (with assigned RFC without path /app/edo/api ) Example: CEDM_API |
EDO_TIMEZONE | CEDM system timezone to request inbound document. Optional value, if value is not maintained default value UTC+5 used Example: UTC+5 |
MAX_LOG_OBJID_ERR_ROWS | Maximum entries for inbound objects processing error log. Optional value, if value is not maintained default value 999999 used Example: 100 |
MON_CHANGE_DOC_INACTIVE | Deactivate Change Log functionality. Optional value X – deactivate |
MON_HDR_AREA | Set header area size (percentage) for transaction /K3TKZ/EDO_MONITOR. Optional value, if value is not maintained default value 70 used Example: 50 |
SEQ_MAX_LOG_ROWS | Maximum entries for sequence check result screen. Optional value, if value is not maintained default value 50 used Example: 20 |
SEQ_EXEC_ONLCHK_0001 | Execute online check for SSCC pallets from notification at CEDM system for Act of acceptance Single distributor (type 0001). Expected result: object exists with child objects prefix “00”. Optional value. Example: X |
SEQ_EXEC_ONLCHK_0002 | Execute online check for SSCC pallets from notification at CEDM system for Introduce from EAEU (type 0002). Expected result: object exists with child objects prefix “00”. Optional value. Example: X |
SEQ_EXEC_ONLCHK_0003 | Execute online check for SSCC pallets from notification at CEDM system for Import from 3rd countries (type 0003). Expected result: object exists with child objects prefix “00”. Optional value. Example: X |
SEQ_EXEC_ONLCHK_0010 | Execute online check for SSCC pallets from notification at CEDM system for Act of acceptance (type 0010). Expected result: object exists with child objects prefix “00”. Optional value. Example: X |
SEQ_EXEC_ONLCHK_0011 | Execute online check for SSCC pallets from notification at CEDM system for Report from non-resident (type 0011). Expected result: object exists with child objects prefix “00”. Optional value. Example: X |
SINGLE_DISTR_BIN | Single distributor Bin. Mandatory value Example: 090340007747 |
OMS_STATUS_CHECK_DELAY | Delay in seconds before first CEDM status check after sending usage report to OMS system Example 300 |
PRICE_RELEV_0001 | Enable pricing information for Act of acceptance Single distributor (type 0001). Mandatory value Example: X |
PRICE_RELEV_0002 | Enable pricing information for Introduce from EAEU (type 0002). Mandatory value Example: X |
PRICE_RELEV_0003 | Enable pricing information for Import from 3rd countries (type 0003). Mandatory value Example: X |
PRICE_RELEV_0004 | Enable pricing information for Write off notification (type 0004). Mandatory value Example: X |
PRICE_RELEV_0005 | Enable pricing information for Return into circulation (type 0005). Mandatory value Example: X |
PRICE_RELEV_0010 | Enable pricing information for Act of acceptance (type 0010). Mandatory value Example: X |
SPLIT_MAXOCC_0001 | Maximum objects for Act of acceptance Single distributor (type 0001). Optional value, if value is not maintained default value 5000 used Example: 500 |
SPLIT_MAXOCC_0002 | Maximum objects for Introduce from EAEU (type 0002). Optional value, if value is not maintained default value 5000 used Example: 500 |
SPLIT_MAXOCC_0003 | Maximum objects for Import from 3rd countries (type 0003). Optional value, if value is not maintained default value 5000 used Example: 500 |
SPLIT_MAXOCC_0004 | Maximum objects for Write off notification (type 0004). Optional value, if value is not maintained default value 5000 used Example: 500 |
SPLIT_MAXOCC_0005 | Maximum objects for Return into circulation (type 0005). Optional value, if value is not maintained default value 5000 used Example: 500 |
SPLIT_MAXOCC_0010 | Maximum objects for Act of acceptance (type 0010). Optional value, if value is not maintained default value 5000 used Example: 500 |
SPLIT_MAXOCC_0011 | Maximum objects for Report from non-resident (type 0011). Optional value, if value is not maintained default value 5000 used Example: 500 |
SPLIT_MAXOCC_INFO | Maximum objects for single code information API request from CEDM system. Optional value, if value is not maintained default value 5000 used Example: 500 |
Following the recommended minimum set of parameters
Name | Value |
EDO_SYSTEM | Example: CEDM |
EDO_SYSTEM_API | Example: CEDM_API |
SINGLE_DISTR_BIN | 090340007747 |
PRICE_RELEV_0001 | X |
PRICE_RELEV_0002 | X |
PRICE_RELEV_0003 | X |
PRICE_RELEV_0004 | X |
PRICE_RELEV_0005 | X |
PRICE_RELEV_0010 | X |
Customizing for Reports
Relevant industry
Maintain relevant industry in the transaction /K3TKZ/EDO_CUST under “Relevant industry”.
These settings are also used for assignment of customer specific industries to product groups
Field | Description, Values |
Industry | Industry relevant for connector operations |
Product group | Product group at CEDM system |
Text | Free text used to describe industry |
Inbound document active | Flag to activate inbound document processing |
This mapping will be used to identify correct product group (Commodity group) on execution CEDM API request.
Example:
Industry | Product group | Text |
20 | Pharma | Pharmaceuticals |
Document type description
Maintain document type description in the transaction /K3TKZ/EDO_CUST under “Document Type”
Field | Description, Values |
Doc Type | Internal document type (values are predefined).
|
Document Type Description | Text to be displayed at Report Monitor for document type |
CEDM Document Type | CEDM API document type |
Mapping attributes
Mapping attributes in the transaction /K3TKZ/EDO_CUST under “Mapping attributes” contains attributes for each report used on notification creation. 3Keys Kazakhstan CEDM connector already contains predefined mapping attributes for delivered rule types:
Field | Description, Values |
Rule Type | Rule execution type |
Notification Type | Notification type, for example Z3KZED11 |
NS | AIF namespace. Value is common for 3Keys CEDM connector: /STTC3 |
Interface Name | AIF interface. Unique for each rule type, example: ZKZEDO_011 |
Interface Version | AIF interface version. 3Keys Kazakhstan CEDM connector value: 1 |
Raw Data Structure | AIF request/response structure for notification data Example: /K3TKZ/S_EDO_IMPNRES_AIF |
SAP Data Structure | SAP structure for notification data Example: /K3TKZ/S_EDO_IMPNRES_MSG |
CEDM Document Type | Internal document type Example: 11 |
Mapper class | Mapper class to fill notification with data Example: /K3TKZ/CL_EDO_0011_MAPPER |
Product Group
Product group in the transaction /K3TKZ/EDO_CUST under “Product group” contains possible values for product groups at CEDM system. 3Keys Kazakhstan CEDM already contains product groups, maintain additional values in case new product group added:
Field | Description, Values |
Product group | Product group from CEDM API documentation Example: pharma |
Text | Description (used at search help) Example: Pharma |
CEDM Status send from, CEDM Status send to
CEDM status customizing in the transaction /K3TKZ/EDO_CUST under “CEDM Status send from” contains possible status values for message sequence check before sending to CEDM system. Node “CEDM Status change to” contains new status value to be set after receiving successful response for notification. 3Keys Kazakhstan CEDM already contains CEDM status, maintain values in case other status processing logic is required
Reporting message attributes
Participant tax code fields could be filled with value from source or destination fields of the EPCIS event or business transaction in the transaction /K3TKZ/EDO_ATTR_MAP .
The following location data source is supported:
BIZTRANS-SHIPFROM - event business transaction document ship from party
BIZTRANS-SHIPTO - event business transaction document ship to
BIZTRANS-SOLDFROM - event business transaction document sold from party
BIZTRANS-SOLDTO - event business transaction document sold to party
EVT-BIZLOC - event business location
EVT-DST-LOC - event destination location
EVT-DST-OWNR - event destination owning party
EVT-READPOINT - event read point
EVT-SRC-LOC - event source location
EVT-SRC-OWNR - event source owning party
The following fields are available for mapping:
SENDERBIN - Report from non-resident
RECEIVERBIN - Report from non-resident
The list is not final and planned to be enhanced for the future developed reporting message types
Rule processing
The common rule processing scheme:
...
The rule type Z3KKZ_EDO shall be assigned in the transaction /STTP/CUST_RULES to business steps / location groups related for the CEDM Kazakhstan reporting
The rule type Z3KKZ_EDO allows to use additional customizing parameters to determine the rule to be executed, determine the approval parameters, and helps with sequence check. In case event triggered rule contains more than one industry rule type Z3KKZ_EDO split objects into several reporting events group by industry.
Maintain the rules in the transaction /K3TKZ/EDO_CONF under “Rule Configuration”
Field | Description, Values |
Scenario | Free text used to describe the scenario and group multiple rules to be triggered for the same event |
Rule processing sequence | Sequence of rule triggering for the same Scenario |
Industry identifier | Industry for which rule will trigger For empty industry the following logic used:
|
CEDM Document type | CEDM Document type |
Rule type | The ATTP standard rule type or customer developed |
Rule is active | Set check box to activate the rule |
Rule Condition Cust | Rule condition |
Business Step | Business step |
Disposition | Disposition code (optional) |
Location Group | Business location group (optional) |
BizLocation GLN | Business location GLN (optional) |
BizLoc. GLN Ext | Business location extension (optional) |
Bus. Transact. Type | Business transaction type (optional) |
Description | Description |
Maintain additional parameters in the transaction /K3TKZ/EDO_CONF under “Rule Configuration” if required skip specific rules using SAP ATTP rule conditions or class-based rule conditions
Field | Description, Values |
Scenario | Free text used to describe the scenario and group multiple rules to be triggered for the same event |
Rule processing sequence | Sequence of rule triggering for the same Scenario |
Rule Condition Cust | Rule condition |
SAP ATTP rule condition is based on BADI /STTP/BADI_RULE_CONDITIONS with filter = rule condition (Rule processing will stop check if result is skip rule).
Class-based rule condition is maintained via transaction /K3TKZ/EDO_CUST node “Rule condition” and based on class method /K3TKZ/CL_EDO_RULES=>GET_RULE_CONDITION_CLASS. Method is used to get class name from table /K3TKZ/C_EDOCOND, custom class could be assigned as condition processor. Class method /K3TKZ/IF_EDO_3K_RULE_COND~EXECUTE is called. (Rule processing will stop check if result is skip rule).
Message approval
By default every report is ready for sending. If the explicit waiting of user approval is required activate User Approval check box in the transaction /K3TKZ/EDO_CONF under “Configuration ID”
Field | Description, Values |
Configuration ID | Free text used to describe the Configuration ID |
User Apprvl | Wait explicit user approval (optional) |
Sequence check
The sequence check is active for all outbound notification to CEDM system. The sequence check is triggered during the message approval, check sequence function, sending notification to CEDM via report /K3TKZ/EDO_DISPATCHER.
Background job needs to be planned for the report /K3TKZ/EDO_DISPATCHER. The sequence check results are stored as application log transaction SLG1, Object /STTP/, Sub object REP, External ID /K3TKZ/EDO_SEND
The logic of the sequence check:
Call BADI /K3TKZ/BADI_EDO_SEQ_CHECK method BEFORE_CHECK
Check objects CEDM status (status found). The CEDM status tracked for every SGTIN in the table /K3TKZ/EDO_STA. The SSCC CEDM status determined based on the first found SGTIN in the current hierarchy
Processing status: there is no report with the same objects in status “Send”
Check predecessor: there is no report with the same objects earlier than the current message
Call BADI /K3TKZ/BADI_EDO_SEQ_CHECK method AFTER_CHECK
The CEDM status could be updated with transaction /K3TKZ/EDO_SN_INFO or program /K3TKZ/EDO_OMS_REP (if SGTIN was send to OMS with BR_CRYPTO_COMM event).
The sequence check can be skipped/ignored by user in the transaction /K3TKZ/EDO_MONITOR with button Approval
Configuration ID determination
The Configuration ID represents the user / certificate for login to the CEDM system and electronic signature of the message in the connector Java part configuration file.
Multiple Configuration ID are supported.
Maintain Configuration ID in the transaction /K3TKZ/EDO_CONF under “Configuration ID”
Field | Description, Values |
Configuration ID | Free text used to describe the Configuration ID |
Config description | Description |
Delay Response | Delay in seconds before first response for notification |
Max error | Maximum error counter before set notification status “No response” |
User Apprvl | Wait explicit user approval (optional) |
Sequence check
The sequence check is active for all outbound notification to CEDM system. The sequence check is triggered during the message approval, check sequence function, sending notification to CEDM via report Maintain Participant Tax code in the transaction /K3TKZ/EDO_DISPATCHER.
Background job needs to be planned for the report /K3TKZ/EDO_DISPATCHER. The sequence check results are stored as application log transaction SLG1, Object /STTP/, Sub object REP, External ID /K3TKZ/EDO_SEND
The logic of the sequence check:
...
Call BADI /K3TKZ/BADI_EDO_SEQ_CHECK method BEFORE_CHECK
...
Check objects CEDM status (status found). The CEDM status tracked for every SGTIN in the table /K3TKZ/EDO_STA. The SSCC CEDM status determined based on the first found SGTIN in the current hierarchy
...
Processing status: there is no report with the same objects in status “Send”
...
Check predecessor: there is no report with the same objects earlier than the current message
...
CONF under “Participant Tax code”
Field | Description, Values |
Participant tax code | Participant Tax code from notification |
Configuration ID | Free text used to describe the Configuration ID |
CEDM SSO UUID | GUID from CEDM system (obsolete after Nov 2023) |
Price determination
According to the CEDM system documentation some document types need to maintain price data as separate step of the document sending process.
Price data is determined on the document mapping logic as GTIN attribute ZKZ_PRICE by default and document type specific GTIN attribute ZKZ_PRICE_00XX (for example GTIN attribute ZKZ_PRICE_0003 for “Import from 3rd countries” notification) and store as GTIN/Lot quantity data.
Transaction /K3TKZ/EDO_MONITOR function “Maintain missing data” could be used to set price data manually by user.
If required it is possible to redefine price data using BADI /K3TKZ/BADI_EDO_
...
CHG_
...
AFTER_
...
The CEDM status could be updated with transaction MAP or /K3TKZ/BADI_EDO_CHG_SN_INFO or program AFTER_CHK.
Price data is relevant for reporting notifications Act of acceptance, Act of acceptance Single distributor, Import from EAES, Import from third countries, Return into circlulation, Write Off.
Price information for reporting notification is optional. Reporting notification is created without price specification steps by default and could be activated using parameter via transaction /K3TKZ/EDO_OMS_REP (if SGTIN was send to OMS with BR_CRYPTO_COMM event).
The sequence check can be skipped/ignored by user in the transaction /K3TKZ/EDO_MONITOR with button Approval
Configuration ID determination
The Configuration ID represents the user / certificate for login to the CEDM system and electronic signature of the message in the connector Java part configuration file.
Multiple Configuration ID are supported.
Maintain Configuration ID in the transaction /K3TKZ/EDO_CONF under “Configuration ID”
...
Field
...
Description, Values
...
Configuration ID
...
Free text used to describe the Configuration ID
...
Config description
...
Description
...
Delay Response
...
Delay in seconds before first response for notification
...
Max error
...
Maximum error counter before set notification status “No response”
...
User Apprvl
...
Wait explicit user approval (optional)
Maintain Participant Tax code in the transaction /K3TKZ/EDO_CONF under “Participant Tax code”
...
Field
...
Description, Values
...
Participant tax code
...
Participant Tax code from notification
...
Configuration ID
...
Free text used to describe the Configuration ID
...
CEDM SSO UUID
...
GUID from CEDM system (obsolete after Nov 2023)
Price determination
According to the CEDM system documentation some document types need to maintain price data as separate step of the document sending process.
Price data is determined on the document mapping logic as GTIN attribute ZKZ_PRICE and store as GTIN/Lot quantity data.
Transaction /K3TKZ/EDO_MONITOR function “Maintain missing data” could be used to set price data manually by user.
If required it is possible to redefine price data using BADI /K3TKZ/BADI_EDO_CHG_AFTER_MAP or /K3TKZ/BADI_EDO_CHG_AFTER_CHK.
Price data is relevant for reporting notifications Act of acceptance, Act of acceptance Single distributor, Import from EAES, Import from third countries, Return into circlulation, Write Off.
Price information for reporting notification is optional. Reporting notification is created without price specification steps by default and could be activated using parameter via transaction /K3TKZ/EDO_PARAM value X (for example parameter PRICE_RELEV_0001)
Background jobs for report processing
Report sending
The report /K3TKZ/EDO_DISPATCHER PARAM value X (for example parameter PRICE_RELEV_0001)
Background jobs for report processing
Report sending
The report /K3TKZ/EDO_DISPATCHER (could be planned as background job or run manually via transaction /K3TKZ/EDO_DISP) collects created reports with status “Sequence check” and “Ready for sending”, perform sequence check and send report to CEDM system and update data:
Report header / item
Reporting event
Program works as single instance for each selected configuration (based on logical lock).
In case sending failed program updates field “Error text” and leave processing status without change to send report with next run.
The report run results are stored as application log transaction SLG1, Object /STTP/, Sub object REP, External ID /K3TKZ/EDO_SEND
Response processing
The report /K3TKZ/EDO_RESPONSE (could be planned as background job or run manually via transaction /K3TKZ/EDO_RESPONSE) collects send reports with status “Send”, receives report status from CEDM system and updates data:
Report header / item
Program works as single instance for each selected configuration (based on logical lock).
First response for report is requested after delay set in the configuration transaction /K3TKZ/EDO_CONF.
In case no positive response (response http code 200) received for report, program updates:
field “Error text” with error from JSON
field “Response code”
field “Response error counter” - increase value by 1. When response error counter value become more than maximum error counter set in the configuration customizing (table /K3TKZ/C_EDOCNF) report processing status is set to “No response”
analyze if received HTTP error code is server error (selection screen parameter) during this report run and stop processing if value of screen parameter “Stop after error number” exceeded
for document types Act or Act Single distributor waiting for accept from other participant analyze wait time from sending date. When waiting time is more than sending time + field “Act Response Wait Time (Days)” report processing status is set to “No response”
The report run results are stored as application log transaction SLG1, Object /STTP/, Sub object REP, External ID /K3TKZ/EDO_RESPONSE
OMS report processing
The report /K3TKZ/EDO_OMS_REP (could be planned as background job or run manually via transaction /K3TKZ/EDO_DISP) collects created reports with status “Sequence check” and “Ready for sending”, perform sequence check and send report to CEDM system and update events with processed BR_CRYPTO_COMM reporting events, checks status at CEDM system for specific number (subset) of SGTINs and updates data:
Report monitor header / item
Reporting event
Program works as single instance for each selected configuration (based on logical lock).
...
Report monitor item
SGTIN status (APPLIED) for sequence check
The following diagram described program work:
...
The report run results are stored as application log transaction SLG1, Object /STTP/, Sub object REP, External ID /K3TKZ/EDO_SEND
Response processing
The report /K3TKZ/EDO_RESPONSE (could be planned as background job or run manually REP, External ID /K3TKZ/EDO_OMS_REPORT
Inbound document processing
The report /K3TKZ/EDO_DOC_IN (could be planned as background job or run manually via program /K3TKZ/EDO_DOC_IN) downloads inbound documents from CEDM system and transfer to SAP ATTP using following steps:
Download new inbound documents from CEDM system
Run inbound document processing at SAP ATTP
The message processing executed with AIF functions and visible in the transaction /AIF/ERR. To receive Inbound document from CEDM system program use date time filter calculated as range [ Last Run Date - <overlap in seconds> ; current date time ]. To set <overlap in seconds> maintain Configuration ID via transaction /K3TKZ/EDO_RESPONSE) collects send reports with status “Send”, receives report status from CEDM system and updates data:
Report header / item
Program works as single instance for each selected configuration (based on logical lock).
First response for report is requested after delay set in the configuration CONF under “Inbound Filter”
Field | Description, Values |
Configuration ID | Configuration ID for CEDM |
Industry | Industry relevant for connector operations |
Document interval, seconds | Value in seconds to check Inbound documents, if Last Run Date + <interval> is less than current date time then program Run will be skipped |
Document overlap, seconds | Value in seconds to get filter value for Inbound documents request. Date from field is calculated as Last Run Date - <overlap> |
To define SAP AIF processing logic maintain processing function module in the transaction /K3TKZ/EDO_CONF .
In case no positive response (response http code 200) received for report, program updates:
field “Error text” with error from JSON
field “Response code”
field “Response error counter” - increase value by 1. When response error counter value become more than maximum error counter set in the configuration customizing (table /K3TKZ/C_EDOCNF) report processing status is set to “No response”
analyze if received HTTP error code is server error (selection screen parameter) during this report run and stop processing if value of screen parameter “Stop after error number” exceeded
The report run results are stored as application log transaction SLG1, Object /STTP/, Sub object REP, External ID /K3TKZ/EDO_RESPONSE
OMS report processing
The report /K3TKZ/EDO_OMS_REP (could be planned as background job or run manually) collects events with processed BR_CRYPTO_COMM reporting events, checks status at CEDM system for specific number (subset) of SGTINs and updates data:
Report monitor header
Report monitor item
SGTIN status (APPLIED) for sequence check
The following diagram described program work:
...
The report run results are stored as application log transaction SLG1, Object /STTP/, Sub object REP, External ID /K3TKZ/EDO_OMS_REPORTunder “Inbound Document processing”
Field | Description, Values |
Document Type | CEDM Document type |
Sender BIN | Sender tax code from inbound document |
Receiver BIN | Receiver tax code from inbound document |
Sequence | Sequence number if more than 1 Function Module assigned |
Function Module | Function Module Name |
Location | External GLN to perform Return EPCIS processing, example 1234568888889 |
Alert category | Alert category to use at email notification |
Text | Description |
In 3Keys Kazakhstan CEDM, provides the list of function modules for processing of inbound documents:
Function module | Description |
/K3TKZ/AIF_EDO_IN_ACCEPT | Inbound Doc: Accept document at CEDM, set status Confirmed |
/K3TKZ/AIF_EDO_IN_CEDM_STATUS | Inbound Doc: Set status based on CEDM status |
/K3TKZ/AIF_EDO_IN_NO_REACTION | Inbound Doc: No reaction, set status Confirmed |
/K3TKZ/AIF_EDO_IN_REP | Inbound Doc: Post reporting event |
/K3TKZ/AIF_EDO_IN_RETURN | Inbound Doc: Return processing |
The following diagram described program work:
...
Enhancements of the Solution
...