cancel
Showing results for 
Search instead for 
Did you mean: 

JBBD Sender - Problem with Adapter Engine - Message status Delivering -

Former Member
0 Kudos

Hi all,

I've a rare problem. My scenario is JDBC (EO) to IDOC. If the SELECT query from SQL database arrows 8000 lines, the message was sent from PI to R/3 succesfully and Idocs was generated.

But if the query is larger than 10.000 lines, the message was stopped in the sender queue in AE with status "Delivering". In SXMB_MONI I can't see the message, only in RW in Message Monitoring or Component Monitoring in Engine Status.

I've applied note Note 937159 - XI Adapter Engine is stuck, and follow this blog

/people/kenny.scott/blog/2007/08/20/messaging-system-queue-properties-after-xi-30-sp19-xi-70sp11

Using Configtool I modified these parameters (MaxConsumers). But message still puts in sender queue.

I have in PI 7.1 SPs 0004.

Any suggestions??

Edited by: Pablete on Sep 13, 2010 8:41 PM

Accepted Solutions (0)

Answers (1)

Answers (1)

stefan_grube
Active Contributor
0 Kudos

split the message into chunks.

with ms sql you could for example do

select top 1000 * from table

Former Member
0 Kudos

I can't bacause I generate 1 idoc by change of primary key and send a FIDCC1 to R3. If I cut the message, BSEG segments could be inconsistent.

If I do SELECT UP TO 1000 my UPDATE must be the same, and positions of one document could be lost...

stefan_grube
Active Contributor
0 Kudos

I have the same requirement and for solving this, I have to apply a very complex select statement.

But it works perfekt for MS SQL:

select * from table where order_no in (SELECT distinct top(1000) order_no FROM table where any_clause) and any_clause order by order_no

update table where invoice_no in (SELECT distinct top(1000) invoice_no FROM table where any_clause) and any_clause

I create an IDoc for each order_no, so I have to make sure, that all lines belonging to one invoice are in the same select.

My select statement has 463 characters

Former Member
0 Kudos

Hi Stefan,

Why your SELECT clause have the order number and UPDATE have the invoice?? In my case, the legacy doesnt have any number of document, I have a PK branch+date. If brach or date have changed, I must be generated 1 idoc.

stefan_grube
Active Contributor
0 Kudos

this is a typo. In my real life scenario the key value is cryptic, so I changed it.

You can select for branch or date.

Maybe you you have a tool to access the database and play a little bit with it?