Skip to Main Content

Integration

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Array of data in Insert Activity in OSB

ShoaibMAug 16 2012 — edited Aug 17 2012
Hi!

my scenario is as follows:

-- Input is coming from MFL( can be one or more record), then i am transforming it to std format using EBO( MFL-EBO ) then from EBO to Database Tables(one or more records at a time can be inserted).

-- I have 3 Proxy services for each of the operations mentioned above.

In the first service I am using a for each loop in that by identifying number of records in the input, I am trying to generate unique sequence_no for one of the database column.
I am able to generate unique sequence_no for each record but when when I try to insert each sequence number into each unique record I am getting the following output.


<ReceiptAdviceRoot>
<ReceiptAdvGrp>
<sequence_no>1259.0</sequence_no>
<sequence_no>1260.0</sequence_no>
<sequence_no>1261.0</sequence_no>
<SYSHAN>1111</SYSHAN>
<SYEKCO>1234</SYEKCO>
<SYEDCT>22222</SYEDCT>
<SYDEL1>555</SYDEL1>
<SYDEL2>888</SYDEL2>
</ReceiptAdvGrp>
<ReceiptAdvGrp>
<sequence_no>1259.0</sequence_no>
<sequence_no>1260.0</sequence_no>
<sequence_no>1261.0</sequence_no>
<SYSHAN>2222</SYSHAN>
<SYEKCO>1111</SYEKCO>
<SYEDCT>22322</SYEDCT>
<SYDEL1>535</SYDEL1>
<SYDEL2>828</SYDEL2>
</ReceiptAdvGrp>
<ReceiptAdvGrp>
<sequence_no>1259.0</sequence_no>
<sequence_no>1260.0</sequence_no>
<sequence_no>1261.0</sequence_no>
<SYSHAN>3333</SYSHAN>
<SYEKCO>1111</SYEKCO>
<SYEDCT>22522</SYEDCT>
<SYDEL1>545</SYDEL1>
<SYDEL2>838</SYDEL2>
</ReceiptAdvGrp>
</ReceiptAdviceRoot>



-What my required Output is.....


<ReceiptAdviceRoot>
<ReceiptAdvGrp>
<sequence_no>1259.0</sequence_no>
<SYSHAN>1111</SYSHAN>
<SYEKCO>1234</SYEKCO>
<SYEDCT>22222</SYEDCT>
<SYDEL1>555</SYDEL1>
<SYDEL2>888</SYDEL2>
</ReceiptAdvGrp>
<ReceiptAdvGrp>
<sequence_no>1260.0</sequence_no>
<SYSHAN>2222</SYSHAN>
<SYEKCO>1111</SYEKCO>
<SYEDCT>22322</SYEDCT>
<SYDEL1>535</SYDEL1>
<SYDEL2>828</SYDEL2>
</ReceiptAdvGrp>
<ReceiptAdvGrp>
<sequence_no>1261.0</sequence_no>
<SYSHAN>3333</SYSHAN>
<SYEKCO>1111</SYEKCO>
<SYEDCT>22522</SYEDCT>
<SYDEL1>545</SYDEL1>
<SYDEL2>838</SYDEL2>
</ReceiptAdvGrp>
</ReceiptAdviceRoot>


I have tried using ForEach Index value in Expression of Insert activity it also gives me some error of undefined $index variable.

So can I target one of my *“Multiple Occurring”* element in Insert Activity.

My for each structure is like this:

for Each [recAdvVar] in [ ./ReceiptAdviceRoot/ReceiptAdvGrp] of [ body ]
Indexed by [ index ] with total count in [ recAdvCount ]
Do (
assign [fn-bea:execute-sql('jdbc/soaosbDatabase','collection', 'select recadv_seq.nextval from dual')] to [seq_no]
Insert [ <sequence_no>{data($seq_no)}</sequence_no> ] [ before ] [./ReceiptAdviceRoot/ReceiptAdvGrp/SYSHAN ] in [ body ]

)

Regards
ShoaibM
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Sep 14 2012
Added on Aug 16 2012
6 comments
1,317 views