/
MDLP Note 2022_01_2

MDLP Note 2022_01_2

Document History

Version

Changes

Effective Date

2.0

Updated version

3Keys MDLP Add-On Note 2022_01_2

24-Jan-2022

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):

    • before first task processing to delete existing entries in queue

    • after all task processing to delete entries after MDLP side server errors

    • 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:

    • Error on SQL processing is saved to task field “error text”

    • In case data is found for this task data is deleted from Database and inserted again

    • 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.

Note version 2.0 contains in additional corrections below.

Missed translation to Russian language for UI elements added.

Transaction /K3T/RU_MAR_SCD_MD selection screen field “Split period by days” added.

Selection screen field “Exclude expired Batch” processing logic changed to exclude batch with expiry date less than start date.

Transaction /K3T/RU_MAR_SCD_RM selection screen field “Split period by days” added.

Program /K3T/RU_MAR_TASK_PROC corrections:

  • In case MDLP queue has some tasks before program run and program tries to delete this tasks error with call interval occurs. Delay has been implemented after API delete operation call.

  • New selection screen field added to use retry calls after receiving negative response or no response on API call:

    • “Retry after failure times” defines how much tries needs to be done after each failure

    • “Delay after failure (sec)” sets the initial delay in seconds after first negative response. Value must be greater than 0

    • “Backoff” sets the factor by which the delay should be increased after each failure. Value must be greater than 1

  • New selection screen “Max runtime program (minutes)” to set maximum program processing time before stop with error

  • Database access has been optimized

3.    Solution

Import related to the transport request.

3.1    Correction instruction FP04

Transport request

Description / Dependencies

AT1K900907

3Keys MDLP Add-On FP04 Note 2022_01_02

Required transport AT1K900841

3.2    Correction instruction FP05

Transport request

Description / Dependencies

D1AK900414

3Keys MDLP Add-On FP05 Note 2022_01_02

Required transport D1AK900364

3.3    Correction instruction ATTP 3.0

Transport request

Description / Dependencies

A1DK900250

3Keys MDLP Add-On 3.0 Note 2022_01_02

Required transport A1DK900230

3.4    Correction instruction ATTP 3.1

Transport request

Description / Dependencies

A2DK900107

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_BETWEEN_RESP_WAIT

Translation for: Data Element Definition

LANG

DTED

/K3T/D_MR_MAX_RESP_WAIT

Translation for: Data Element Definition

LANG

DTED

/K3T/D_MR_PROC_RUNTIME

Translation for: Data Element Definition

LANG

DTED

/K3T/D_MR_RETRY_FAILED

Translation for: Data Element Definition

LANG

DTED

/K3T/D_RU_MR_FIELDNAME

Translation for: Data Element Definition

LANG

DTED

/K3T/D_RU_SEQUENCE

Translation for: Report Source Code

LANG

REPS

/K3T/RU_MAR_SCD_MD

Translation for: Report Source Code

LANG

REPS

/K3T/RU_MAR_SCD_RM

Translation for: Report Source Code

LANG

REPS

/K3T/RU_MAR_TASK_PROC

Translation for: Report Texts

LANG

REPT

/K3T/RU_MAR_SCD_MD

Translation for: Report Texts

LANG

REPT

/K3T/RU_MAR_SCD_RM

Translation for: Report Texts

LANG

REPT

/K3T/RU_MAR_TASK_PROC

Class Definition (ABAP Objects)

LIMU

CLSD

/K3T/CL_MDLP_API_TSK_INFO

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

Protected Header (ABAP Objects)

LIMU

CPRO

/K3T/CL_MDLP_API_REQ

Protected Header (ABAP Objects)

LIMU

CPRO

/K3T/CL_MDLP_API_TSK_INFO

Public Header (ABAP Objects)

LIMU

CPUB

/K3T/CL_MDLP_API_TSK_INFO

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_INFO     CONSTRUCTOR

Method (ABAP Objects)

LIMU

METH

/K3T/CL_MDLP_API_TSK_INFO     EXECUTE

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

Method (ABAP Objects)

LIMU

METH

/K3T/CL_MR_UTILS              PARSE_BP

Method (ABAP Objects)

LIMU

METH

/K3T/CL_MR_UTILS              PREPARE_DATA_FOR_EXT_DB

Method (ABAP Objects)

LIMU

METH

/K3T/CL_MR_UTILS              PREPARE_DISP_DB_SAVE

Method (ABAP Objects)

LIMU

METH

/K3T/CL_MR_UTILS              SET_MAPPER

Method (ABAP Objects)

LIMU

METH

/K3T/CL_MR_UTILS              TRANSFORM_ABAP_TO_JSON

Method (ABAP Objects)

LIMU

METH

/K3T/CL_MR_UTILS              TRANSFORM_JSON_TO_ABAP

Report Source Code

LIMU

REPS

/K3T/RU_MAR_MONITOR_C01

Report Source Code

LIMU

REPS

/K3T/RU_MAR_SCD_MD_C01

Report Source Code

LIMU

REPS

/K3T/RU_MAR_SCD_MD_SSC

Report Source Code

LIMU

REPS

/K3T/RU_MAR_SCD_RM_SSC

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

Report Source Code

LIMU

REPS

/K3T/RU_MAR_TASK_PROC_C01

Report Source Code

LIMU

REPS

/K3T/RU_MAR_TASK_PROC_SSC

Report Texts

LIMU

REPT

/K3T/RU_MAR_MONITOR

Report Texts

LIMU

REPT

/K3T/RU_MAR_SCD_MD

Report Texts

LIMU

REPT

/K3T/RU_MAR_SCD_RM

Report Texts

LIMU

REPT

/K3T/RU_MAR_TASK_PROC

View Definition

LIMU

VIED

/K3T/RU_R_MD_V

Domain

R3TR

DOMA

/K3T/RU_NOTE2022_01_02V1

Domain

R3TR

DOMA

/K3T/RU_NOTE2022_01_02V2

Data Element

R3TR

DTEL

/K3T/D_MR_BETWEEN_RESP_WAIT

Data Element

R3TR

DTEL

/K3T/D_MR_DEL_MDLP_TASK

Data Element

R3TR

DTEL

/K3T/D_MR_MAX_RESP_WAIT

Data Element

R3TR

DTEL

/K3T/D_MR_PROC_RUNTIME

Data Element

R3TR

DTEL

/K3T/D_MR_RESP_WAIT

Data Element

R3TR

DTEL

/K3T/D_MR_RETRY_FAILED

Data Element

R3TR

DTEL

/K3T/D_MR_STATUS_TEXT

Table

R3TR

TABL

/K3T/RU_R_BP

Table

R3TR

TABL

/K3T/RU_R_MD

Table

R3TR

TABL

/K3T/RU_R_REQ

Table

R3TR

TABL

/K3T/RU_R_RM

Table

R3TR

TABL

/K3T/RU_R_TSK

Table

R3TR

TABL

/K3T/S_RU_MR_DISP_DAT_DB

Table

R3TR

TABL

/K3T/S_RU_MR_REQ_DB

Definition of a Maintenance and Transport Object

R3TR

TOBJ

/K3T/RU_MR_VCC

View cluster

R3TR

VCLS

/K3T/RU_MR_VC

 

Related content

MDLP Release 2022_01
MDLP Release 2022_01
More like this
MDLP Note 2022_01_5
MDLP Note 2022_01_5
More like this
MDLP Note 2022_03_1
MDLP Note 2022_03_1
More like this
MDLP Note 2022_01_3
MDLP Note 2022_01_3
More like this
MDLP Note 2021_04_4
MDLP Note 2021_04_4
Read with this
MDLP Note 2022_03_5
MDLP Note 2022_03_5
More like this