on 07-25-2007 12:36 AM
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
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi, we asked the customer to adjust file, thanks eveyrbody.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Matias,
actually the records are like this:
that's the reason why I can't use the 'nl' value.
Regards,
Julio
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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.
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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>
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
94 | |
11 | |
11 | |
10 | |
9 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.