cancel
Showing results for 
Search instead for 
Did you mean: 

Content Conversion in receiver channel

Former Member
0 Kudos

Hi All,

I have proxy to File scenario, I am receiving data in PI7.1 using proxy communication, and creating a CSV file at FTP location. There is no message mapping involved and there are 50 columns in my input data type, I have kept all the columns as optional.

When I receive the data from proxy, in first row I receive all the header names, so in first row, I receive all 50 column values. Suppose in second row, the value does not exist in ECC table for 5th column, so I receive only 49 column values in my 2nd row ( I donu2019t receive receive start and end tag with empty value for fifth column).

Thatu2019s why in my ouput csv, all the data values after 6th column onwards shifts to left by one place, as there is no value present for 5th column even not an empty value.

Please help me on this how can PI insert that empty value where it finds a missing column.

Thanks,

Ruchi

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Ruchi,

In your case, you need to hardcode some default values in proxy to make sure to get data.

Thanks,

Former Member
0 Kudos

HI all,

Suppose I hardcode empty value in ABAP as #, then in PI how will I remove and replace it with space .

In PI, there is no maessage mapping involved for this interface.

Thanks,

Ruchi

former_member854360
Active Contributor
0 Kudos

By Standard Replace function

replace # with Blank.

Former Member
0 Kudos

When there is no mapping involved you cannot replace # with space in the PI.

If you would like to do then you need to use function " ReplaceValue" in the mapping.

Thanks,

Former Member
0 Kudos

In PI, as of now I have not created any MM for this interface.Is teher any way by which I can achieve this without creating MM.

Thanks,

Ruchi

rajasekhar_reddy14
Active Contributor
0 Kudos

You can try with Adapter module to remove #,But go for mapping it is pretty easy OR ask your Third PArty system people to recorgnize # as a Space.

Former Member
0 Kudos

What Raja said is correct.

Even I recommend to do MM. Else write an adapter module to replace #.

Thanks,

former_member854360
Active Contributor
0 Kudos

Create a simple one to one mapping

Former Member
0 Kudos

Thanks to all for response.I will go for mapping.

Ruchi.

former_member854360
Active Contributor
0 Kudos

Hi Ruchi,

For this you need to create a simple one to one Mapping.

And you need to map your 5th field based on condition.

Sourcefield--Count()=50--


then map fifth field from source to fifth field of target.

else if count<50 meqans 49 then map source 5th field to target 6th field and in 5th field map a blank constant

if this value does not exist in ECC table can be for any column position then you need to add it in ECC proxy itself ........there is no way to handle it in PI.

If it fixed like 5th position then you can use the logic mentioned by me.

rajasekhar_reddy14
Active Contributor
0 Kudos

If you have mapping program then you can map MapWith defualt to achive this kind of req, but in your case you have to add some default value in Proxy it self,in PI not posibble.