Skip to Content

Archived discussions are read-only. Learn more about SAP Q&A

Mapping Problem

Hi,

I have a problem in Mapping between DELVRY idoc and EDI file.

In this i had to map between E1EDL24 and G_SHL segement.

After completion of mapping i have done testing for the same by duplicating the E1EDL24 Segement by 3 times, and got the output. But output doesn't contain the total values as per conditions it has some missing sub segments of G_SHL. These were mapped on certain condition with E1EDL24.

I have used one UDF for the same. Its was working fine in other mapping with same conditions,same inputs. but in this it doesn't.

UDF has logic to create Contexts based on input values.

I have checked the queues in that one value was missing. it was giving SUPPRESS value rahter than actual value. but it was working fine in other mapping with same inputs..

so can anybody tell me why it is happening..?

this is the UDF

MappingTrace mt = container.getTrace();

int cc , ipcc, start , j,iplen;

ipcc = 0;

j = 0;

start = 0;

String s;

iplen = IP.length;

ipcc = 0;

int context = -1;

int change ;

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

{

if ( IP<i>.equals("I") )

{

context = context + 1;

if ( IPID<i>.equals("true"))

{

change = 0;

ipcc = 0;

for (j = 0; j < IDZI19.length ; j++)

{

if (! IDZI19[j].equals(ResultList.CC))

ipcc = ipcc + 1;

if ( context > 0 && change != context )

{

if ( IDZI19[j].equals(ResultList.CC))

{

change = change + 1;

continue;

}

else continue;

}

if ( IDZI19[j].equals("true"))

{

cc = 1;

for ( int k = 0 ; k < TDLINE.length ; k++)

{

if ( ipcc == cc )

{

if (TDLINEk].equalsResultList.SUPPRESS))

break;

result.addValue(TDLINE[k]) ;

break;

}

else if ( TDLINE[k].equals(ResultList.CC) )

cc = cc + 1;

}

break;

}

}

}

else result.addValue(ResultList.SUPPRESS);

}

else result.addValue(ResultList.SUPPRESS);

}

Regards,

Sandeep

Former Member
Former Member replied

Check the context for the segments from which you are getting SUPPRESS value. Right click on it and check what context level it is in and test.

0 View this answer in context
Not what you were looking for? View more on this topic or Ask a question