RSDMD_WRITE_ATTRIBUTES_TEXTS and 0PROG_POS conversion exit error


Ccreating MD values for 0PROG_POS via an ABAP program (for example within an BI IP application) causes an error in the display of the external format of 0PROG_POS until the next logoff. This is due to a caching error caused by a call to  conversion exit PSOBW, from within the MD creation function module.


The internal format for 0PROG_POS is for example I1234567 and the extrnal format is I-12.34.567.

The internal format is the key of the infoobject (/BI0/PROGPOS) while the external format is stored in the attribute 0PROG_PO_EX.

The external format is derived from this attribute via the conversion exit PSOBW (FM: CONVERSION_EXIT_PSOBW_OUTPUT).

When RSDMD_WRITE_ATTRIBUTES_TEXTS is called to create the master data value and its attributes for a not yet existing 0PROG_POS value, the conversion exit routine is called somewhere within RSDMD_WRITE_ATTRIBUTES_TEXTS, but before the attributes have been saved. As the conversion exit does not find the 0PROG_POS record in table /BI0/MPROG_POS, it decides to use the internal format as the external format. This is stored in the static buffer of  CONVERSION_EXIT_PSOBW_OUTPUT.

As the conversion exit works with a static buffer. This error persists until logoff.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.