Skip to Content
-1

Short Dump MESSAGE_TYPE_X on CO15 after Save.User exit gets hit on Enter and Save.Module PP.

Aug 24, 2017 at 06:14 AM

130

avatar image
Former Member

Short Dump occurs on T-Code CO15 after Save.User exit gets hit on Enter and Save.

After Save it triggers " MESSAGE (type X) dump. CO 888. Error reading order header with index."

Steps : 1) Co15-> enter Order Number.

2) User exit processes a standard BAPI BAPI_PRODORD_COSTING on "Enter" and populates data on next screen.

3) Press Save.On Save a short dump gets triggered.

Dump:

A termination with short dump has therefore been triggered by the key word MESSAGE (type X).

Short text of the error message: Internal: Error reading order header with index.

Long text of the error message:Technical information about the message:

Message class.......CO

Number.............. 888

Variable 1.......... Error reading order header with index.

"MESSAGE_TYPE_X"

"SAPLCOBH" bzw. LCOBHIC2

"CAUFV_UPD".

Information on where terminated The termination occurred in ABAP program "SAPLCOBH", in "CAUFV_UPD". The main program was "SAPLCORU". In the source code, the termination point is in line 37 of (Include) program "LCOBHIC2".

SAP 740 release.

Include LCOBHIC2 Active

Line Number 44 MESSAGE x888 WITH text-kop.

ENHANCEMENT 1  /SAPMP/ATRKZ_CONTROL_LCOBHIC2.    "active version
* MILL: flag needed for ATRKZ control
  DATA: lv_head_pos_quan TYPE /sapmp/atrkz_par-head_pos_quan.
  DATA  l_mill_cuobj LIKE caufv-cuobj.                     "1643163
ENDENHANCEMENT.

*$*$-End:   LCOBHIC2_02-------------------------------------------------------------------------$*$*
* Nachlesen
  READ TABLE caufv_bt INDEX caufvd_upd-indbt.
  IF sy-subrc <> 0.
    MESSAGE x888 WITH text-kop.
  ENDIF.
10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

Best Answer
Caetano Almeida
Aug 24, 2017 at 03:37 PM
1

Hello

The dump happens because the BAPI uses the same internal tables that are used within the transaction. It means that you should not call this BAPI within the same context, as this short dump, or even data inconsistency may be triggered.

You can try to use the BAPI using call function XXX in background task as separate unit. Using a separate unit, the global data should be separated and the dump may not happen.

Regards,

Caetano

Show 1 Share
10 |10000 characters needed characters left characters exceeded
Former Member

Hey Caetano Almeida,

Thanks a Ton. Your solution is absolutely correct. I was looking into this since a week and you are the only one who's given the right solution.

Simply putting in this way:

CALL FUNCTION 'BAPI_PRODORD_COSTING'
     in BACKGROUND TASK AS SEPARATE UNIT


 EXPORTING
        work_process_group = 'COWORK_BAPI'
        work_process_max   = 99
*      IMPORTING             //" Importing not allowed when using in BACKGROUND TASK AS SEPARATE UNIT
*        return             = wa_return
      TABLES
        orders             = it_orders
        detail_return      = it_details
        application_log    = it_app_log.


    IF sy-subrc EQ 0.
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
*          EXPORTING
*            WAIT          =
*          IMPORTING
*            RETURN        =       .
    ENDIF.

Kudos!!

0