cancel
Showing results for 
Search instead for 
Did you mean: 

Convert File endSeparator Parameter

Former Member
0 Kudos

Hello everybody,

I'm configuring a scenario like this Txt File->XI->ABAP Proxy, and I'm having trouble to make the endSeparator parameter work, here is the example of txt file record that I'm using:

the payload in the inbound message in SXMB_MONI it's like this:

<?xml version="1.0" encoding="utf-8" ?>

- <ns:MT_TRInsFin_FileBBVA_In xmlns:ns="urn:tesoreria:instrumentosfinancieros">

- <Contratos>

<Seccion>1S</Seccion>

<Cod_Formato>F03</Cod_Formato>

<Num_Mov>535</Num_Mov>

<Fecha_Gen>151005</Fecha_Gen>

<Referencia>1510050000000005</Referencia>

<Contrato>99999999</Contrato>

<Fecha>151005}</Fecha> ****as you can see the } character is present

</Contratos>

</ns:MT_TRInsFin_FileBBVA_In>

the parameters in the configuration channel are like this:

Recordset structure: Contratos,*

Contratos.fieldSeparator = :

Contratos.beginSeparator = {

Contratos.endSeparator = }

Contratos.fieldNames = Seccion,Cod_Formato,Num_Mov,Fecha_Gen,Referencia,Contrato,Fecha

ignoreRecordsetname = True

I think the parameter Contratos.endSeparator = } is correctly called, but It doesn't work, I don't know if using the recordset structure parameter as Contratos,* and using the endseparator like that doesn't work, I would really appreciate any advise from you experts, thanks in advance.

Regards,

Julio

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Ruiz,

Check whether any spaces are there when you have given the endSeparator as } Also try giving like '}'

If the above doesnot work then try giving endSeparators as : '0x7D'

Regards,

---Satish

Answers (6)

Answers (6)

Former Member
0 Kudos

Hi, we asked the customer to adjust file, thanks eveyrbody.

Former Member
0 Kudos

Hi Rajesh and everybody,

beginSeprator is working fine, the problem as you mentioned is only with endSeparator, beginSeprator is equal to {, and I'm trying that endSeparator works with value }, but the } is treated as part of the last column, so I need to make this work because the records are not separated by new line, the actual file looks like this:

so my key filed for the structures are this 1S, 3A, 3CP, so as you can see for every 3A record there is a 3CP record in the same line, but this records need to be treated separately in diferent structures, this records can't be in the same structure, that's why I need to make the } character as my endSeprator for every structure, so right now because the endSeparator is not working I get an error about number of fields for structure because 1S is Contratos, 3A is Emisoras and 3CP is Complementos, my configuration in the sender communication channel goes as follows:

Record Structure: Contratos,1,Emisoras,,Complementos,

Key Field Name: ID

Key Field Type: String(Case-Sensitive)

Parameters for Record Structure:

Contratos.fieldSeparator :

Contratos.beginSeparator {

Contratos.endSeparator }

Contratos.fieldName ID,Cod_Formato,Num_Mov,Fecha_Gen,Referencia,Contrato,Fecha

Contratos.keyFieldValue 1S

Emisoras.fieldSeparator :

Emisoras.beginSeparator {

Emisoras.endSeparator }

Emisoras.fieldNames ID,Tipo_Val,Emisora,Serie,Cupon,Isin,Titulos,Precio

Emisoras.keyFieldValue 3A

Complementos.fieldSeparator :

Complementos.beginSeparator {

Complementos.endSeparator }

Complementos.fieldNames ID,Fecha_Amort,Fecha_Precio,Valuacion

Complementos.keyFieldValue 3CP

ignoreRecordsetName True

so with this parameters the beginSeparator is working fine but not the endSeparator, this the complete scenario but I was testing with only structure Contratos and I was getting no error but the } character was treated as part of the las column, maybe with the complete file you can give me some other advices or tell me what I'm doing wrong, thanks.

Regards,

Julio

Former Member
0 Kudos

Hi Matias,

actually the records are like this:

that's the reason why I can't use the 'nl' value.

Regards,

Julio

Former Member
0 Kudos

Hey,

First as you have mentioned even beginSeparator too so is that working and the only problem is with endSeparator >? Else both begin & end Separator ain't giving the desired result ?

<b>Cheers,

*RAJ*

Former Member
0 Kudos

Yes I did try it too, I mean I can eliminate that character in the mapping but I would like it to work as it should be

Former Member
0 Kudos

Hi Julio !

As far as I understand, the endSeparator is the "records separator" also...I imagine that your file has N records like this:

so, the real endSeparator should be something like '}nl', I mean a '}' plus a 'nl'..I never tried this in FCC, maybe '}nl' or '}''nl' could work...

Regards,

Matias.

Former Member
0 Kudos

Hello guys, first of all thanks for your quick answers,

I tried the options that you both give me and none of it worked, do you have any others suggestions to solve this problem, this never happened to me before so I'm stuck, thanks again.

Regards,

Julio

Former Member
0 Kudos

Ruiz,

Have you tried with endSeparator as '0x7D'

Regards,

---Satish

Former Member
0 Kudos

Hey,

NameA.endSeparator = you enter a character <b>string</b> here, the system adds it to the last column as a closing character.

String = <b>' '</b>.

So specify Contratos.endSeparator = '}'

<b>Cheers,

*RAJ*

*REWARD POINTS IF FOUND USEFULL*</b>