Document History
Version | Changes | Effective Date |
1.0 | First approved version 3Keys MDLP Add-On Note 2022_01_2 | 19-Nov-2021 |
1. Overview
This document describes changes in the 3Keys MDLP connector ABAP part.
2. Description
Runtime error on transaction /K3T/RU_MAR_SCD_SH if Serialized Container only specified on selection screen without Serialized Trade item.
Transaction /K3T/RU_MAR_MONITOR corrections:
Field “Error text” is empty task processing result is “FAILED” at transaction /K3T/RU_MAR_MONITOR. After correction field “Error text” contains error from JSON response field “Reason”.
Additional toolbar button “Delete MDLP task” added to delete task with MDLP id and Configuration ID specified using Popup window. Authority object /K3T/RU005 field /K3T/RU005 value “09” is need for this function.
Implementation error.
Program /K3T/RU_MAR_TASK_PROC corrections:
New selection screen field “Retry after FAILED” added to repeat processing after first FAILED response from MDLP system
New selection screen field “Delete unknown MDLP tasks” added to delete tasks from MDLP system queue (if task from MDLP queue with MDLP id and status “Send to MDLP” is not found):
o before first task processing to delete existing entries in queue
o after all task processing to delete entries after MDLP side server errors
o on receiving server error series
New feature.
If task was created successfully but no response received from MDLP system on interval [ task creation time ; task creation time + max response time (selection screen field)] then status “Error” set with error text “Maximum response time reached. Setting error status”. Task deletion in MDLP system added.
Implementation error.
Program /K3T/RU_MAR_TASK_EXEC corrections:
Selection screen field “Task ID” added to task selection
Second run of program /K3T/RU_MAR_TASK_EXEC is not allowed due to lock if log is opened after program execution in dialog mode. Correction: lock is released after processing log finish but before open log for display.
Function module /K3T/RU_MAR_EXEC_DB_DISTR logic was corrected:
o Error on SQL processing is saved to task field “error text”
o In case data is found for this task data is deleted from Database and inserted again
o Field “Update data” is added for report “Medical disposal”
Implementation error.
Transaction /K3T/RU_MAR_SCD_SH corrections:
New input format (GS1 with brackets, example (01)04030539060080(21)8882269155XXX, (00)451754044000000XXX) support added for Serialized Trade items/ Serialized Container selection screen fields. Input value is converted into format without prefix (required by MDLP system) before JSON request saving.
New feature.
3. Solution
Import related to the transport request.
3.1 Correction instruction FP04
Transport request | Description / Dependencies |
AT1K900872 | 3Keys MDLP Add-On FP04 Note 2022_01_02 Required transport AT1K900841 |
3.2 Correction instruction FP05
Transport request | Description / Dependencies |
D1AK900380 | 3Keys MDLP Add-On FP05 Note 2022_01_02 Required transport D1AK900364 |
3.3 Correction instruction ATTP 3.0
Transport request | Description / Dependencies |
A1DK900240 | 3Keys MDLP Add-On 3.0 Note 2022_01_02 Required transport A1DK900230 |
3.4 Correction instruction ATTP 3.1
Transport request | Description / Dependencies |
A2DK900048 | 3Keys MDLP Add-On 3.1 Note 2022_01_02 |
4. Recommendation
Recreate external database structure if FM /K3T/RU_MAR_EXEC_DB_DISTR used as new field UPDATE_DATE added.
5. Source code objects
Short description | Program | Object type | Object name |
Translation for: Domain Definition | LANG | DOMD | /K3T/RU_NOTE2022_01_02V1 |
Translation for: Data Element Definition | LANG | DTED | /K3T/D_MR_RETRY_FAILED |
Class Definition (ABAP Objects) | LIMU | CLSD | /K3T/CL_MR_ADBC |
Class Definition (ABAP Objects) | LIMU | CLSD | /K3T/CL_MR_CONSTANTS |
Class Definition (ABAP Objects) | LIMU | CLSD | /K3T/CL_MR_UTILS |
Private Header (ABAP Objects) | LIMU | CPRI | /K3T/CL_MR_UTILS |
Public Header (ABAP Objects) | LIMU | CPUB | /K3T/CL_MR_ADBC |
Public Header (ABAP Objects) | LIMU | CPUB | /K3T/CL_MR_CONSTANTS |
Public Header (ABAP Objects) | LIMU | CPUB | /K3T/CL_MR_UTILS |
Documentation | LIMU | DOCU | NA/K3T/REP_RU_MR032 |
Documentation | LIMU | DOCU | NA/K3T/REP_RU_MR033 |
Documentation | LIMU | DOCU | NA/K3T/REP_RU_MR034 |
Documentation | LIMU | DOCU | NA/K3T/REP_RU_MR035 |
Documentation | LIMU | DOCU | NA/K3T/REP_RU_MR036 |
Domain Definition | LIMU | DOMD | /K3T/D_MR_ACTION |
Function Module | LIMU | FUNC | /K3T/RU_MAR_EXEC_DB_DISTR |
Function Module | LIMU | FUNC | /K3T/RU_MAR_EXEC_SAVE |
Single Message | LIMU | MESS | /K3T/REP_RU_MR032 |
Single Message | LIMU | MESS | /K3T/REP_RU_MR033 |
Single Message | LIMU | MESS | /K3T/REP_RU_MR034 |
Single Message | LIMU | MESS | /K3T/REP_RU_MR035 |
Single Message | LIMU | MESS | /K3T/REP_RU_MR036 |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_DEL EXECUTE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_FLTR COMPOSE_MESSAGE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_FLTR EXECUTE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_HRY COMPOSE_MESSAGE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_HRY EXECUTE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_HRY PARSE_REQUEST |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_MDP COMPOSE_MESSAGE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_MDP EXECUTE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_MDP PARSE_REQUEST |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_REM COMPOSE_MESSAGE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_REM EXECUTE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_REM PARSE_REQUEST |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_RSLT EXECUTE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MDLP_API_TSK_STNG EXECUTE |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC CHECK_DISPOSAL_EXISTS |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC CHECK_REMAINS_EXISTS |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC COUNT_DISPOSAL |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC COUNT_REMAINS |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC COUNT_REQUEST |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC DELETE_DISPOSAL |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC DELETE_REMAINS |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC DISCONNECT |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC INSERT_DISPOSAL |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC INSERT_REMAINS |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC INSERT_REQUEST |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_ADBC SELECT_REQUEST |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_UTILS CONVERT_TSTMP_TO_TIME |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_UTILS CONVERT_XSTRING_TO_STRING |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_UTILS CONV_XSTRING_TO_STRING |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_UTILS DECODE_RESPONSE_ZIP |
Method (ABAP Objects) | LIMU | METH | /K3T/CL_MR_UTILS MAP_AND_SAVE |
Report Source Code | LIMU | REPS | /K3T/RU_MAR_MONITOR_C01 |
Report Source Code | LIMU | REPS | /K3T/RU_MAR_SCD_SH_C01 |
Report Source Code | LIMU | REPS | /K3T/RU_MAR_TASK_EXEC_C01 |
Report Source Code | LIMU | REPS | /K3T/RU_MAR_TASK_EXEC_SSC |