cancel
Showing results for 
Search instead for 
Did you mean: 

Error while Testing......But generating correctly in Queue

Former Member
0 Kudos

Hi ,

i am working on IDOC 2 File whrough BPM.

I have used one UDF while Mapping to Main nodes of Source and Target.

I get my result when i check in Queue but when i test it it is not generating desired O/P as in Queue.

Please Help.......

Accepted Solutions (0)

Answers (2)

Answers (2)

Shabarish_Nair
Active Contributor
0 Kudos

Check for the context. Maybe you have not changed the context.

Try these;

1. Change the context of the source field to the topmost element.

2. Add a splitbyvalue before the target field is mapped.

In case this doesnt help, let us know the problem in detail.

Former Member
0 Kudos

i have done both the things already as you mentioned Shabarish ....

Still same problem

justin_santhanam
Active Contributor
0 Kudos

Dinesh,

Could you please explain the problem. Also wht sort of error its throwing?

Best regards,

raj.

Former Member
0 Kudos

Hi,

It is not throwing any Error.

But i am not getting desired Target.

My Scnerio is like this

Have to collect Idoc in BPM for 10 mins and generate 1 XML output.

If in Source E1DB02-FIIKWAER Which is currency feild is changed in different collect Idcos i need meesge node to be reapted in Target .

target is Like this

<Message_list>

<Message>

</Message>

</Message_list

If i collect 2 different types of Idoc with respect to E1DB02-FIIKWAER.

I nedd target this way

<Message_list>

<Message>

</Message>----


Currecy 1

<Message>

</Message>----


Currency 2

</Message_list

Please help ..

Its Really urgent Raj .

prabhu_s2
Active Contributor
0 Kudos

check the occurence of <Message> and how <Message> is mapped with the source?

Former Member
0 Kudos

Occurence is 1- Unbounded

mapping is this way

E1dbo2-FIIKWIER -


Remove context -


Sort---UDFSplitby Value(Value changed)---Message

UDF used is Below one

int counter = 0;

int ii = a.length - 1;

String temp = a[0];

for (int i = 0; i<a.length; i++){

if(temp.equals(a<i>)){counter++; }

if(! temp.equals(a<i>)){

result.addValue(new Integer(counter).toString());

temp = a<i>;

i--;

counter = 0;

}

if(i == ii){result.addValue(new Integer(counter).toString());}

}

Please help me on this one

prabhu_s2
Active Contributor
0 Kudos

what is the purpose of the udf?

Former Member
0 Kudos

If i Get <b>Curr1</b> in E1DB02-FIIKWAER i want 1 message.

if i get <b>Curr2</b> in E1DB02-FIIKWAER i want 2 messages.

Again if i get same currency i need only 1 message for both of those same currecy Idocs.

So for that purpose UDF is done.

Message was edited by:

dinesh veguru

prabhu_s2
Active Contributor
0 Kudos

i think the udf needs change in the logic .....did u test ur udf as a separate java program and check out the result?

Former Member
0 Kudos

have nt tested like sperate java program , but seems to be working fine in Display Queue.

If possible can you help me with UDF please Prabhu.

is it ok if i call you Prabhu.

need to finish this Obj asap.

prabhu_s2
Active Contributor
0 Kudos

i'm not a java expert but i can help u on this. sure u can mail me or call me.

Former Member
0 Kudos

Prabhu did u got any thing for my Problem.

prabhu_s2
Active Contributor
0 Kudos

hi dinesh

havent tried it on as my i test sys is down. will let u know once done.

Former Member
0 Kudos

Thanks Prabhu.

please Make note of my problem

Dont forget.

Former Member
0 Kudos

dinesh,

you wont get the result in Main nodes of target . to get values in the Queue you need assisng it to subnodes where it excepts value. Main nodes does not except values.

Regards

Sreeram.G.Reddy