cancel
Showing results for 
Search instead for 
Did you mean: 

Exception condition "INVALID_POS" raised

former_member84834
Active Participant
0 Kudos

I have thousands of entries stuck in the outbound queue of my ERP system everyday. This is due to a failed transaction. SAP Support told me there is a problem with the P.O. associated with this transaction and that it is OK to delete the offending entry. Once that is done the remaining entries in the queue process until the queue is empty. My question is: "How do I identify the PO transaction that is not working correctly so I can fix the root cause of this problem? Can I correlate the TID from the SMQ1 tcode to a PO number in SRM?

The entry below shows the error from SQM1 in the ERP system.

Client  User    Queue     Destination    Date             Time        Status                                                             TID                                              

123      Batch   QUEUE1 TARGET1       04/10/2015   18:05:19   Exception condition "INVALID_POS" raised. A20915474B805528491F978BD

Host           Program

ADBD123   RSM13000

Next is the partial contents of the corresponding short dump in the SRM system

Category                ABAP Programming Error
Runtime Errors         RAISE_EXCEPTION
ABAP Program           SAPLSXAB
Application Component  BC-MID-RFC

Short text
    Exception condition "INVALID_POS" raised.

Information on where terminated
    Termination occurred in the ABAP program "SAPLBBP_PDH_NOTIFY_FOLLOWON" -
     "BBP_NOTIFY_FOLLOWON_INBOUND".
    The main program was "SAPMSSY1 ".

    In the source code you have the termination point in line 66
    of the (Include) program "LBBP_PDH_NOTIFY_FOLLOWONU01".

Source Code Extract

Line  SourceCde

   36         i_with_itemdata = ' '
   37       IMPORTING
   38         e_header        = ls_po_header.
   39 *   check for existence and type of PO (extended)
   40     IF ls_po_header IS INITIAL
   41       OR ls_po_header-be_log_system IS INITIAL.
   42       DELETE lt_purch_orders.
   43       lv_invalid_pos = gc_yes.
   44       CONTINUE.
   45     ENDIF.
   46
   47     ls_document_tab-reqno     = <fs_purch_orders>-po_
   48     ls_document_tab-logsys    = ls_po_header-be_log_s
   49     ls_document_tab-core_key  = lv_tst.
   50     ls_document_tab-doc_type  = gc_doc_be_po_call_off
   51     ls_document_tab-guid      = ls_po_header-guid.
   52     ls_document_tab-entrydate = sy-datum.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Timithy,

We too faced similar issue and are still facing it.

When an OSS incident was raised for the same, SAP was not helpful in fixing the issue.

During my analysis I found that ERP system ID in the field "LOG_SYS" was missing due to which this dump was coming.

To do further analysis from your side, instead of deleting the erroneous entry, please save itand process the remaining entries in SMQ1.

Saved entries can be accessed from the MEQ3 transaction.


Br,

Raghu.

Answers (1)

Answers (1)

Former Member
0 Kudos

Hello Timothy,

I am dealing with the same issue as I reply to your query using a workaround we got from SAP.

In addition to what Raghu has added, I want to share that apart from stuck outbound queue in ECC, we also see consistent periodic ABAP dumps in SRM for program SAPLBBP_PDH_NOTIFY_FOLLOWON.

When I do a search in the ST22 ABAP dump in SRM system, I can find the PO number under the "Chosen Variable" section under the ABAP Developer view. 

When I display the SRM PO in BBP_PD transaction, I see that field BE_LOG_SYSTEM - Table  BBP_PDBEH is blank and does not have the ECC system value.

Executing function module BBP_PD_PO_TRANSFER_EXEC by entering SRM PO Header GUID not only updates the missing value in following fields in table BBP_PDBEH

  • BE_LOG_SYSTEM
  • BE_OBJECT_TYPE
  • BE_OBJECT_ID

but also starts to clear the stuck out bound queue in ECC.

I am still not sure about the root cause but I know that the problem is because the BE_LOG_SYSTEM field value in SRM table BBP_PDBEH is not updated.

Regards,

Mehul