File Sender adapter with File content conversion
Hi
I'm having problems picking up a flat file that has some junk characters in the file.
I'm usign a file sender adapter with file content conversion. The adapters shows the following error-
Conversion of complete file content of to XML format failed around position 0: sun.io.MalformedInputException
this is the sample data with junk char's -
A20099201009999009999060815160505051700130008151vÿÿÿÿ³ r 0OK0476 31N016227241915840IV 00840 ÿÿÿ ÿ ÿÿÿÿÿÿÿÿ ÿ ÿÿÿ
There is not much in the file content conversion. This is a fixed length file, I'm just pickign it up & passing it to an inbound proxy. All my processing is in the proxy.
I'd appreciate any suggestions.
Thanks
Rachana
Hi Rachana,
Do you use a specific "encoding" like UTF-8 or ISO-8859-1 in your Sender CC?
To be simple, Encoding is linked to country, you can find all "iso-nnnn" via google or some of them in sap help.
http://help.sap.com/saphelp_nw2004s/helpdata/en/e3/94007075cae04f930cc4c034e411e1/content.htm
Moreover, with your source file opened thanks to Notepad (for instance), use option "save UNDER", you will the encoding use by your file
Mickael
Similar Messages
-
Error in configuring File Sender Adapter with File Content Conversion
Hi
i am designing a File to File scenario using file content conversion in which the input is comma separated file and output is a XML document.
mentioned below are the configuration information:
Recordset Name: Substr
Substr.fieldSeparator: ,
Substr.endSeparator: 'nl'
Substr.fieldNames: Name, Password
Substr.keyFieldValue: Name
and the error i can see in adapter framework is:
Sender Adapter v0830 for Party '', Service 'FileContentConversion':
Configured at 14:30:45 2005-04-07
Initialization error: Conversion initialization failed with java.lang.Exception: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found:
Mandatory parameter 'Substr.fieldNames': no value found
plz help me ASAP.
thanks and regards,
Varun JoshiHi Varun...
Regarding ur error.....the name and password u send in csv is not getting recognised.. so u have to check the data type structure.
there must be a recordset name and subelement must be recordset structure..the data type must be
<datatypename>
<recordsetname>
<recordsetructurename>
<name>
<password>
please try in this format and ur name and password will get recognised -
File Sender Adapter with FTP protocol
Hi,
I implementet a file sender adapter with FTP protocol. There is a problem: the sender processes the files even if they're in use by another application.
I.E. If another application put files (via ftp) in the sender work directory (that is on ftp), the sender processes those files before their transfer is completed.
I don't want that this sender in a communication channel in PI 7.1, imports files in the system when they aren't completed yet.
There are some ways to block sender before it processes incompleted files (in an ftp)?
Thanks
MatteoHi,
File sender adapter provides a check for NFS mode
+Check this
To specify additional parameters in the adapter configuration, set the Advanced Modeindicator.
● Msecs to Wait Before Modification Check
Enter the number of milliseconds that the adapter must wait before it checks whether the files have been changed.
This parameter is not available if you have selected File Content Conversion as the Message Protocoland then made an entry under Recordsets per Message that splits an input file into several messages.
This parameter is applicable only for the File adapter. If you enter a value in this field when configuring the sender FTP adapter, it will have no effect.+
Other approach can be to apply OS level checks
Regards
Suraj -
Cant do a file get from external server using file sender adapter with ftp
Hi all,
Up until now our company has only used the file sender adapter with ftp protocol to get a file from our XI server for processing and input the file into an integration process
I have a requirement to do an ftp file get from an external server
From our XI development server I can ftp directly to the external server and view the required directory using the command window via a DOS prompt (FTP open ...). So all firewall issues and communications are fine
Unfortunately I cannot currently pull files from the external server using the XI file adapter with ftp protocol from the XI development server AWB017
FTP Connection Parameters: External server name using port 21, Data Connection is Passive, No security, I supply a userid and password
Processing Parameters: Processing Mode is Archive (I tried test but this did not work either)
No messages appear in the RWB
Is there something else that I need to set up in order for the external ftp get to work via the XI file adapter?
Regards,
MikeThanks for your responses.
I have found the error messages in the File Adapter Monitor
Scenario 1
When I prefix the source directory with a forward slash, eg <b>/Folder/Subfolder</b> the error message is as follows
<b>EST: Error: Error connecting to ftp server 'ip address': FTPEx: /Folder/Subfolder: The system cannot find the path specified</b>
Scenario 2
When I DO NOT prefix the source directory with a forward slash, eg <b>Folder/Subfolder</b> a different error message is returned
<b>Error: Retrieving file 'FILENAME.XML' failed unexpectedly: FTPEx: Folder/Subfolder: The system cannot find the path specified</b>
At least in this scenario the adapter has been able to identify the file on the external FTP site but cannot retrieve it
Questions
I thought that the backslash prefix for the source directory was mandatory but I am receiving an error in each scenario
I receive the same error message whether the Processing Mode is 'Archive' or 'Test'
The logs on the external ftp server seem to indicate that I am simply connecting, sending username and password then quiting straight away. I am not issuing any commands that they can see
I thought that being a Sender adapter it would inherently execute a Pull or Get command
To recap, from our XI development server I can ftp directly to the external server and view the required directory using the command window via a DOS prompt (FTP open ...). So all firewall issues, communications, userid and password are fine
Has anyone experienced these issues?
Please advise on next course of action?
Regards,
Mike -
File Sender adapter - source file name - weird
Hi all,
We have a sender file adapter polling an ftp location. The Dynamic config has been enabled to get the source file name.
The actual file name is - "hrmd.xml", but in the dynamic configuration node, in sxmb_moni, the fileName is shown as ./hrmd.xml.
This does not occur with any other file sender adapter comm channels polling ftp locations.
I guess this has something to do with the ftp server. Did anyone face this issue?the fileName is shown as ./hrmd.xml
The file name surely cant have a / in it....such characters are not allowed.
is there any way we can change the fileName message attribute once the file is picked up
Create a UDF for Dynamic Configuration and change the name as per your requirement (in XI)....the source file may be having proper format for name and i assume that you have to change it for receiver file name -
We would like to send "delimited" files to another application (tab-delimited, CSV, ... - the other application does not support XML-based interfaces). Obviously we will have an outbound channel that uses the file/FTP adapter and the data will be subjected to "content conversion".
The data contains names in many languages; not all of this can be represented in ISO Latin-1, much less in US-ASCII. I suppose UTF-8 would work. The question is: how is this handled by the FTP protocol? (considering that the FTP client is part of the SAP PI file/FTP adapter and the FTP server is something on the "other" machine)Hi Peter,
you can maintain the file encoding in the outbound adapter. See [Configuring the Receiver File/FTP Adapter|http://help.sap.com/saphelp_nw2004s/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm]
For your requirements "utf-8" sounds pretty fitting.
Regards,
Udo -
Problem in File Sender Adapter in File with quotes
Hi experts.
We're having a problem in File Sender Adpapter.
We've configured the adapter with FCC. We use the fieldSeparator = ; to convert the file to xml.
The problem arises when between two ; appears a quote. For insantce in this line:
HUMALVAL MASCOTAS S.L.;"AV/DE EUROPA SN;P.IND.ALCORCO;28922;ALCORCON;40.349968;-3.847452;
The adapter shows this error:
More elements in file csv structure than field names specified.
If the line was (without "):
HUMALVAL MASCOTAS S.L.;AV/DE EUROPA SN;P.IND.ALCORCO;28922;ALCORCON;40.349968;-3.847452;
everything would work correctly.
How could we solve this?
Thanks in advance.
Regards.Hi,
Please use xml.enclosureSign=u201C in your sender FCC.
Hopes this helps to you.
Regards,
P.Rajesh -
File sender adapter with nfs as NFS as transport protocol
hi all.
can any abody explain me what is the main difference between FTP and NFS protocols and why there is no need to pass connection parameters for nfr ptotocol.
waiting for excellent reply.
bye.
regards.
seeta ram.Hi,
FTP - It is a file transfer protocol where the source system in this XI has to connect to any other system's particular location it requires connection parameters IP Address, port and you can have authentication in this case also.
Here the system need not be in Network also. You can access the remote system by providing valid userid and password, hence we require conn parameters here.
NFS - This protocol is used to access files which are present accross the network where XI also lies within the same network.
Regards,
Ramesh P -
File-Sender: Verification of file content during file content conversion
Hello,
I have a question regarding file verification when using the file-sender adapter.
I got a flat file (.csv) that I convert into XML with the file-sender adapter and file-content-conversion.
In the file there is a column RecTyp that is my KeyFieldValue. Possible values for RecTyp are B, D, U, T.
So far so good. All this works perfectly.
If (due to an error) there is another value in RecTyp than the 4 mentioned above (B;D;U;T) the file adapter ignores this row today. And here begins my issue:
I want to change this behavior. That means in detail, I want to check if there is another value in my KeyFieldValue RecTyp than specified. If this is the case an exception should be thrown. The whole message should not be delivered.
We had the idea to use the module-processor for this verification .
But may be there are other suggestions. Or may be some one can provide an appropriate module that is already written, etc .
Does anyone have an idea?
Kind regards,
TobiasHi,
It is better to pick the file in generic way i.e Row by Row and then go with the validation with the help of Adapter Modules or in the Mapping.
For more-
/people/sravya.talanki2/blog/2005/08/16/configuring-generic-sender-file-cc-adapter
Thanks,
Moorthy -
File sender adapter and content conversion with polish character
We are loading a csv file with PI 7.0 file sender adapter using "content conversion" - all fields go through EXCEPT a special character hex '208C' (space in front) looks like "Æ" is converted to hex 'C28C'.
We are using code page UTF8
We are using:
enclosuresign "
enclosuresignescape ""
fieldcontentformatting nothing
enclosureconversion NO
Hope some one can helpHi Bohamo,
Hope you have set the following for your file sender adapter :
1. Transfer Mode is set to Binary,
2. File Type Text,
3. Encoding ISO-8859-1( for Western European Latin ).
Inorder to recognize Polish Character, try as follows :
Your sender file after coming into Pi has XML encoding declaration 'UTF-8'.
Write a simple XSLT mapping to change the value of the attribute "encoding" to "ISO-8859-1" in the output XML of message mapping . Include this XSLT map as the second mapping step in your interface mapping.
First step in your interface mapping will be your already existing message mapping.
An example of the XSL code :
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method='xml' encoding='ISO-8859-1' />
<xsl:template match="/">
<xsl:copy-of select="*" />
</xsl:template>
</xsl:stylesheet>
or you can also do java mapping if you are comfortable with java code !
Cheers,
Ram. -
Attachment of original message in file sender adapter content conversion
Hi,
does anybody know how I can configure a file sender communication channel (with content conversion) so that the original file is added to the XI SOAP message as attachment? Maybe this is just a parameter in "Advanced" tab. (The content conversion itself is not an issue.)
The result should be the "Main Document" (XML-message) and the "original document" as two attachments in the SOAP payload.
The reason for this is that the original file should be archived with the XML message as it was before the XML content conversion of the file sender adapter took place.
Thanks,
Philipporiginal file is added to the XI SOAP message as attachment?
The "Advanced" tab -> additional files added in file adapter should act as the attachment to soap receiver adapter if u select the "Keep Attachments" option in soap receiver communication channel.
What do u want to do in FCC is a bit unclear?
Regards,
Prateek -
File sender adapter: Content conversion for very deep nested structure
Hi all
I have a file which looks like this
HDOCKET 9800000660980000061911062009AA123456bbWM100012349800000619
DDOCKET_TEST001 4012YAG1
WZOA00000000010000000001
WZOA00000000020000000002
WZOB00000000030000000003
IAAXX000001
IAAXX000002
C0000000000000000000100000000000000000001000000000000000000020000000000000000000300000000000000000004
T2
and my structure is
Header - 1
Detail - 0....Unbounded
Bag - 0.....Unbounded (sub node of detail)
Track - 0.....Unbounded (sub node of detail)
Customer - 0.....Unbounded (sub node of detail)
Trailer - 1
and in the file sender adapter i mentioned the following content conversion setting
HEADER,1,DETAIL,*,Bag,*,Track,*,Customer,*,TRAILER,*
But when i go and see in the monitoring i received the following conversion
<?xml version="1.0" encoding="utf-8" ?>
<ns:MT_REQ xmlns:ns="http://royalmail.com/dd_c">
<HEADER>
<ID>H</ID>
<INT>DD</INT>
<CAR>9899999660</CAR>
<CUS>9899999619</CUS>
<POST>11062009</POST>
<NUMBER>AA123456bbWM10001234</NUMBER>
<ACC>9899999619</ACC>
</HEADER>
<DETAIL>
<ID>D</ID>
<Bag>DOCKET_TEST001</Bag>
<S>4012</S>
<Code>YAG</Code>
<mat>1</mat>
<count/>
<Mixed />
</DETAIL>
<Bag>
<ID>W</ID>
<Zone>ZOA</Zone>
<Item>0000000001</Item>
<Number>0000000001</Number>
</Bag>
<Bag>
<ID>W</ID>
<Zone>ZOA</Zone>
<Item>0000000001</Item>
<Number>0000000001</Number>
</Bag>
<Bag>
<ID>W</ID>
<Zone>ZOA</Zone>
<Item>0000000001</Item>
<Number>0000000001</Number>
</Bag>
</Bag>
<Track>
<ID>I</ID>
<Item>AAXX000001</Item>
</Track>
<Track>
<ID>I</ID>
<Item>AAXX000001</Item>
</Tracked>
<Customer>
<ID>C</ID>
<OrigCustomer>00000000000000000001</OrigCustomer>
<Field1>00000000000000000001</Field1>
<Field2>00000000000000000002</Field2>
<Field3>00000000000000000003</Field3>
<Field4>00000000000000000004</Field4>
</Customer>
<TRAILER>
<ID>T</ID>
<Count>2</Count>
</TRAILER>
</ns:MT_REQ>
whereas i wanted it like:
<?xml version="1.0" encoding="utf-8" ?>
<ns:MT_REQ xmlns:ns="http://royalmail.com/dd_c">
<HEADER>
<ID>H</ID>
<INT>DD</INT>
<CAR>9899999660</CAR>
<CUS>9899999619</CUS>
<POST>11062009</POST>
<NUMBER>AA123456bbWM10001234</NUMBER>
<ACC>9899999619</ACC>
</HEADER>
<DETAIL>
<ID>D</ID>
<Bag>DD_TEST001</Bag>
<S>4012</S>
<Code>egg</Code>
<mat>1</mat>
<count/>
<Mixed />
<Bag>
<ID>W</ID>
<Zone>zzz</Zone>
<Item>0000000001</Item>
<Number>0000000001</Number>
</Bag>
<Bag>
<ID>W</ID>
<Zone>zzz</Zone>
<Item>0000000001</Item>
<Number>0000000001</Number>
</Bag>
<Bag>
<ID>W</ID>
<Zone>zzz</Zone>
<Item>0000000001</Item>
<Number>0000000001</Number>
</Bag>
</Bag>
<Track>
<ID>I</ID>
<Item>AAXX000001</Item>
</Track>
<Track>
<ID>I</ID>
<Item>AAXX000001</Item>
</Tracked>
<Customer>
<ID>C</ID>
<OrigCustomer>00000000000000000001</OrigCustomer>
<Field1>00000000000000000001</Field1>
<Field2>00000000000000000002</Field2>
<Field3>00000000000000000003</Field3>
<Field4>00000000000000000004</Field4>
</Customer>
</DETAIL>
<DETAIL>
<ID>D</ID>
<Bag>DD_TEST002</Bag>
<S>4012</S>
<Code>egg</Code>
<mat>1</mat>
<count/>
<Mixed />
<Bag>
<ID>W</ID>
<Zone>zzzzzz</Zone>
<Item>0000000001</Item>
<Number>0000000001</Number>
</Bag>
<Bag>
<ID>W</ID>
<Zone>ZOA</Zone>
<Item>0000000001</Item>
<Number>0000000001</Number>
</Bag>
<Bag>
<ID>W</ID>
<Zone>zzz</Zone>
<Item>0000000001</Item>
<Number>0000000001</Number>
</Bag>
</Bag>
<Track>
<ID>I</ID>
<Item>AAXX000001</Item>
</Track>
<Track>
<ID>I</ID>
<Item>AAXX000001</Item>
</Tracked>
<Customer>
<ID>C</ID>
<OrigCustomer>00000000000000000001</OrigCustomer>
<Field1>00000000000000000001</Field1>
<Field2>00000000000000000002</Field2>
<Field3>00000000000000000003</Field3>
<Field4>00000000000000000004</Field4>
</Customer>
</DETAIL>
<TRAILER>
<ID>T</ID>
<Count>2</Count>
</TRAILER>
</ns:MT_REQ>
i.e. i need all Bag ,Track and Customer inside detail tag.
could anyone help me in this..i've already searched SDN and got some link as useful but none of them were totally related.
Regards
NainaNaina
Pls. check my forum link, i had the single level hierarchy XML file which I converted into nested structure & then into flat file.
File Conversion in Rec File Adapter with subnodes
This can give you an idea how to go ahead. Let me know in case you need any more info about this. -
Sender File Adapter with file conversion
Hi guys,
Im using a Sender File adapter with file conversion. The message to be processed has a structure with fixed lengths and in your content are some values that needs to be ignored.
An example:
value1 <b>value2</b> value3
I want to ignore <b>value 2</b> but I cant find a parameter for that! Do I need to define dummy fields on my data type and ignore those fields during mapping? Or there is a specific parameter for that?
Thanks in advance,
Ricardo.hi,
there always is another way:)
you can import the whole line to one field
and cut it inside the adapter module
(then you can define start and stop of the substring that you need to use)
but of course it's not standard even though it's quite easy to achieve in java
Regards,
michal
<a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a> -
Sender File Adapter with file conversion Multimapping
Hello all,
i have to use multimapping with the file sender adapter
XML for multimapping ist like this
ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
<ns0:Message1>
<ns1:KVNR_Senden_MT xmlns:ns1="urn:lsv.de/SENDER">
<Inhalt>
<KE/>
<VF/>
<BBNRAB/>
<BBNREP/>
<VERNR/>
<ED/>
<FEKZ/>
in File adapter
DocumentName Messages
RecordsetName Inhalt
Recorset Struc Inhalt,20
Inhalt.fieldFixedLength 4,5,6.....
Inhalt.fieldNames KE,VF,.....
but were can I generate Message1?????
any Hints?
regards
ralfsorry but the message tags will not be add dynamically
i have change an existing message mapping 1:1 with file content conversion
into a multimapping.
by changing into multimapping the message was surrounded with
<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
<ns0:Message1>.......
no changing in File Adapter an in the IE there was an error
com.sap.aii.utilxi.misc.api.BaseRuntimeException geworfen: RuntimeException in Message-Mapping transformatio~.
if i added the stuct
<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
<ns0:Message1>.......
by hand and it works???
so i think i had to add
<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
<ns0:Message1>.......
to the file content conversion but i don't know how to do it???
Ralf -
File-Sender: Probl. with Content conversion - Read whole line in singleTag
Hello,
I have a flat file that i read with the sender file adapter.
After content conversion I get not the result i wished to have...
The source flat file looks for example like this:
ABC;DEF;GHIJ
KLM;NOP;Q
RSTU;VW
After the Content Conversion I would like to have this result:
<Recordset>
<Data>
<Row>ABC;DEF;GHIJ
<Row>KLM;NOP;Q
<Row>RSTU;VW
< >
What sounds very similar but didnt work for me yesterday .
I defined a data type that looked like this:
DT_TEST (Complex Type)
Recordset (0..unbounded)
Data (1)
Row (type string / 0..unbounded)
During the file content conversion I just did this:
Recordsetname: Recordset
Recordset structure: Data, 1
Data.fieldNames = Row
Data.fieldSeparator = nl
This was also described in blog:
/people/sravya.talanki2/blog/2005/08/16/configuring-generic-sender-file-cc-adapter
But my result is always like this:
<Recordset>
<Data>
<Row>ABC;DEF;GHIJ
</Data>
</Recordset>
<Recordset>
<Data>
<Row> KLM;NOP;Q
</Data>
</Recordset>
<Recordset>
<Data>
<Row> RSTU;VW
</Data>
</Recordset>
.And not like I wished .
Can anybody help me ?
Greetings
TobiasHi,
I just gone thru the blog and as per the structure defined I have no idea how this works this way.
But if you modify the structure to
RecordSet - occurs 0-1
Data - occurs 0-n
Row - occurs 0-1
And in the Content conversion mentions Data,* instead of Data,1.
In this case you will be getting a output like
<Data>
<Row>ddf,sdfsd,sdf</Row>
</Data>
<Data>
<Row>fff,sdfsd,sdf</Row>
</Data>
You can achieve this but I don't have any idea how to generate that kind of output with the Structure and the conversion parameter mentioned in the blog.
Thanks,
Prakash
Maybe you are looking for
-
Memory choices for Xserve 2.8 Quad Xeon
I have a Xserve 2.8 Quad Xeon with 4 of 1 GB 800 MHz DDR2 FB-DIMMs. I want to upgrade its memory to 8 GB and wandering which of the following options I should pick. 1. buy four of 1 GB 800 MHz DDR2 FB-DIMM (4GB Kit FB (4 x 1GB) DDR2-800 (PC2-6400) 12
-
Inspection type 01 - inspection lot creation based on vendor batch number
Hi Guys, this topic has been discussed several times here, but I was not able to find a suitable answer for my question. I am facing the folowing requirement: I have activated inspection type 01 for a raw material. I am receiving a firs goods receipt
-
Problems signing in to PSE/PRE Forum and Customer Service
Hello-I am presently running PSE/PRE8 on a win8 computer with 12GB memory and1TB HDD. I am searching for information on PSE/PRE12. However, I am having problems with my PW/ID. I understand that Photoshop.com has been eliminated and this is the sourc
-
Problem in posting A/R downpayment request
Hi All, When i am trying to add A/R downpayment request, it automatically pop ups into payment means and ask me pay the downpayment amount.But for downpayment request i dont know why it is happening like this ...plz help me on this...
-
i'm using a mbp mid 2009, i'm trying to connect it to my Philips tv using mini display port connection with HDMI cable but no image is reflected in the television. Tv screen is blue with command 'unsupport device". Any kind souls please advice?