FTP to FTP text file
I am interested in using an ftp to ftp adapter without converting to XML. Mainly, I want to pass a text file through XI without it being converted to XML or if it is converted to XML, I would like to be converted back to its original state.
The file I am moving contains text in it, and if I do not place the XML-env in the file with the text I get a mapping error...
Is there a way to move the file, so the inbound file is not in XML format?
Thanks
Skip Ford
Hi Michal,
I'm sorry to use other's thread but it showing some similar problem.
I'm having mix of txt file and XMl files in the same source folder, jms adapter need to access this folder and send to targte system.
do we can use this method for this suggested blog?
I'm having security requiremnts , i need to apply on message level may be some decryption and encryption needed, in that case can i do it adapter level later can be used the same method?
Thanks,
srini.
Similar Messages
-
FTP of text file in unix to windows OS
Hello,
While doing FTP of the text file generated from XI(outbound/filename.txt) to windows, some new character([]-rectangle) is getting added to the new line character in the text file. This character is not seen if the same text file is viewed in unix directory. Is there any precaution to be taken in XI or in unix. Pls advise.
Regards,
ManojHi Manoj,
I think you are facing this problem because it is not recognising the newline. Hence, giving you a rectangle([])instead of showing the data in a newline.
Check the parameter that you have given for endseparator in content conversion.
All normal Java related settings should work, for ex:- \t (for tab), \n (for newline) etc...
Sometimes, normal editors like notepad may not show the newlines. you can check with something like textpad, ultraedit, edit plus etc.
You can also try hexadecimal values in the endseparator:
*new line (line feed) -> hex byte: 0x0A
*return -> hex byte: 0x0D
Go through the follwing thread which discuss exactly the same issue!:-
Re: New line character in File adapter
Regards,
Sushumna -
Retrieve text file from ftp server every 15 mins
Hi guys,
We are able to connect to an FTP server with 5 text files. Every 15 minutes, we need to retrieve each of the 5 files. Please assist me with the coding logic to retrieve the file into the SAP Directory. Any suggestions would be greatly appreciated.
Regards,
SidSid
Try searching on SCN, there are plenty of materials you can find without even asking a question in the forum.
How to use SCN search
For example, if you search with keywords "FTP ABAP", immediately the first two Wiki entries would give you the details you are looking for.
Rgds
Eng Swee -
Uploading a text file to FTP Loc
Hi,
Please guide me in the following query:
While uploading a text file to FTP Loc by using FM 'FTP_R3_TO_CLIENT', all the data is coming in one line. Please guide me how can i insert the new line character after the end of each line.
Please guide.
Thanks and RegardsHi,
When i make the character_mode = 'X', then no data is getting uploaded to FTP Loc, only a blank file is being created. Please guide.
Thanks and Regards
Edited by: MP Vashishth on Jan 12, 2010 10:34 AM -
Use FTP Transport Protocol (XI) to send text file created from R3
I've configured a Port in IDoc Processing (WE21) to create an output file from a Bank Partner Profile (WE20) where my Message Type is PAYEXT and IDoc Type PEXR2002.
I need to take this Text File and send it to the Bank;s FTP site using the Integration Server (XI).
How can I take this text file and simply send it to the Bank without going through File Content Conversion in order to convert it to XML as the Sender and then uncovert it during the Receiver to FTP the file to the Bank?
If that is not possible, would anyone know how to configure the RecordSet Structure and parameters for both the Sender and Receiver?Hi,
Let me re-phrase your scenario:
ECC is required to send PAYEXT IDOC to XI which needs to be send to the bank in IDOC text file format to the bank. If this is the case we can achieve this by doing the following:
1.Rather than using TRFC port used by the IDOC as the method of communication, you can leverage using file port. The configurations to the file port are simple. You need to select a place where you can drop the IDOC file created by the ECC system and XI would pick up the file.
2. Poll for the file using NFS from that particular location where ECC drops the file. (If it is being staged on the ECC system, then XI service user SAPservice<SID> must have access permission on that folder like \usr\sap\put\interfaces.
3. Configure receiver FTP adapter to send the file to the bank.
Hope this helps.
Indranil
Award points if helpful -
How to copy/send text file from FTPS to SAP ECC File Port
Hi Frdns,
I am working on one design, actually my requirement as follows
I am receiving financial information document from Banks, which is in the form of BIA2 message format, it looks like text file. This information needs to be sending to SAP ECC system.
I identified some approaches to full fill the requirement
1)Using Conversion agent/or third party tools to convert BIA2 message in to XML, then using PI I will pick up the XML message, convert it in to IDoc.
2)Without any conversion I will copy the same file (original BIA2 message) in to SAP ECC file port, in this case no conversion required, calling some program I will schedule it.
I am looking forward t implement the second approach because it saves lot of money to my client.
Now I am wondering using File adapter can i copy to SAP ECC File Port or I required ABAP proxy?
What is the best approach to copy the BIA message text file from FTPS to SAP ECC File Port.??
Regards,
RajHi Raja,
>>Now I am wondering using File adapter can i copy to SAP ECC File Port or I required ABAP proxy?
Yes you can do this copy, the only restriction that can happen is the file size.. If you are sure that the fiel will be of few MB at the max then you can use the Configuration part alone and copy it to ECC folder. For doing this you need the following:
1. Sender agreement (mention the sender interface as anything XYZ)
2. Sender communication channel. Pick the file in binary mode
3. Receiver determination (keep both the sender and receiver service as same)
4. Interface Detemiantion (dont specify any mapping and keep the receiver interface name as XYZ)
5. Create receiver agreement (with same service and interface)
6. Use file adapter here
Regards
Suraj -
How to read the whole text file lines using FTP adapter
Hi all,
How to read the whole text file lines when error occured middle of the text file reading.
after it is not reading the remaining lines . how to read the whole text file using FTP adapter
pls can you help meYes there is you need to use the uniqueMessageSeparator property. Have a look at the following link for its implementation.
http://download-west.oracle.com/docs/cd/B31017_01/integrate.1013/b28994/adptr_file.htm#CIACDAAC
cheers
James -
Downloading text file to ftp location
Hi Everyone,
Could you please guide me for the following query:
I am trying to send the output of a sap program in a text file to ftp location. In that, while passing the following parameter the program is allowing me to download the file to ftp location:
CALL FUNCTION 'FTP_CONNECT'
EXPORTING
user = userid
password = password
host = 'IPADDRESS'
rfc_destination = 'SAPFTP'
IMPORTING
handle = mi_handle
EXCEPTIONS
not_connected = 1
OTHERS = 2.
Through this way i am able to download the file to ftp location(as per ipaddress).
But when trying to download the file in a folder on the same ftp location it is not doing that.
The parameters, which i am passing are described below:
CALL FUNCTION 'FTP_CONNECT'
EXPORTING
user = userid
password = password
host = 'IPADDRESS/Folder_Name'
rfc_destination = 'SAPFTP'
IMPORTING
handle = mi_handle
EXCEPTIONS
not_connected = 1
OTHERS = 2.
Please guide.
Thanks and RegardsHi,
While using CONNECT, we do not have to give the folder. It should only be the server / ip address.
While using FTP_COPY, we can give the folder name in parameter FILE_DESTINATION.
regards,
amit m. -
Convert file format into UTF-8 while generating text file on FTP server
Hi Expert,
I have the requirement to generate text file store it in FTP server and file format should be in UTF-8.
ABAP Development is completed but text file format generate in ANSI which not acceptable by client.For generating text file and store it on FTP server by using standard function module FTP_R3_TO_SERVER ,but in this function module there is no any parameter option like CODEPAGE for file format conversion. Is there any method or any function module to convert file format to UTF-8 and directly transfer or store it on FTP server.
<<removed_by_moderator>>
Thanks ,
Edited by: Vijay Babu Dudla on Jan 28, 2009 12:48 AMI have come across the same issue. Try calling the FTP_COMMAND function module to make it go into ASCII mode before your FTP the file, like this:
data: result type table of text with header line.
call function 'FTP_COMMAND'
exporting
handle = hdl
command = 'ascii'
tables
data = result
exceptions
tcpip_error = 1
command_error = 2
data_error = 3.
call function 'FTP_R3_TO_SERVER'
exporting
handle = hdl
fname = docid
character_mode = 'X'
tables
text = gt_your_table . -
OSB error while generating business service for FTP adapter Sync Get File
Hi All
I am trying to generate a business service from SOA Suite JCA FTP adapter Sync Get File, but i am getting this exception for no reasons (Rest operations list file, get file and put file are working)
Invalid JCA transport endpoint configuration, exception: java.lang.NullPointerException Unknown ALSB Conflict.
Is this a bug in eclipse, can any body help me. Thanks
Sorry Forgot to mention eclipse version...
Eclipse Platform
Version: 3.6.2
Build id: M20110210-1200Ok,
bcoz of this issue, i had to code the entire interface in OSB console. It runs fine in OSB console (i was able to test it successfully).
Is this a bug in eclipse or only i am facing this issue? Has anybody tried to create a business service from JCA FTP Get Synchronous jca file?
<adapter-config name="FTPReadMOMFileOnRMSDB" adapter="FTP Adapter"
wsdlLocation="../wsdl/FTPReadMOMFileOnRMSDB.wsdl"
xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
<connection-factory location="eis/ftp/RMSDBFtpAdapter" />
<endpoint-interaction portType="SynchRead_ptt"
operation="SynchRead">
<interaction-spec
className="oracle.tip.adapter.ftp.outbound.FTPReadInteractionSpec">
<property name="DeleteFile" value="true" />
<property name="PhysicalDirectory" value="/MOMFiles/output" />
<property name="FileName" value="*" />
<property name="FileType" value="binary" />
</interaction-spec>
</endpoint-interaction>
</adapter-config>
One more doubt? The PhysicalArchiveDirectory path can be on the FTP server something like: /MOMFiles/archive. Or do i have to use the Put operation to move it to /MOMFiles/archive directory. Currently OSB console and eclipse do not accept FTP path for this parameter and want me to specify a local directory on server. Thanks -
Sender FTP Adapter - Archive faulty files not working
Hello,
We are on SAP PI 7.11 SP 06
We have a scenario where we are reading CSV files from a FTP location.
File Sender Adapter is polling the FTP location for CSV files, if there
is any error during FCC we need to move the faulty file under a
particular directory on FTP server.
Archive faulty files tick is click under the communication channel and
also the required directory is specified, but the functionality is not
working.
If there is a faulty file it is just adding a rejected prefix to the
file and keeping the file in the polling directory. It is not moving
the file in the rejected directory specified in the communication
channel.
Thanks & Regards,
Rahul NawaleAre you trying to archive the file on the same FTP server or a different FTP server? Archiving the faulty file on the FTP server might not have expected results. And if you are trying to archive the file on a separate FTP server, it wouldn't probably be achieved using the simple file adapter functionalities.
The best way would be to archive the faulty files to an NFS location on your PI server (this will certainly work, even if it's FTP mode) and then use a separate script or PI interface (file tunneling) to move these files from PI server File System to FTP archive location.
Regards,
Suddhasatta -
I would a dynamic source filename and I my goal is to have that name be exactly the same on my target system.
So mainly I have FTP to FTP adapter, and I want the filenames to be the same on both ends, I have tried several things, but I am not having much success, can someone give me the details on how to configure this?
Thanks
Skip FordHi Skip,
Please check these threads too...
Dynamic Filename in File adapter
Problem: The same filename from a sender to a receiver file adapter - SP14
cheers,
Prashanth
P.S Please mark helpful answers -
FTP Server to Server file transfter
I am using Apache common.net package 2.0 for my FTP file transfer from one server to another server. And i'm using eclipse 3.3.2 IDE for my code execution.
Following is the function i'm using for ftp to ftp file transfer.
public void severtoservercopyfile()
FTPClient ftpClient1 = new FTPClient();
FTPClient ftpClient2 = new FTPClient();
ProtocolCommandListener listener;
try
listener = new PrintCommandListener(new PrintWriter(System.out));
ftpClient1.addProtocolCommandListener(listener);
ftpClient2.addProtocolCommandListener(listener);
System.out.println("Connecting FTP1 ");
ftpClient1.connect("ftp.xxxx.com");
ftpClient1.login("demo", "demo");
if (!FTPReply.isPositiveCompletion(ftpClient1.getReplyCode())) {
String errMsg = "User : ftp1 server could not connect. FTP server refused connection.";
System.out.println(errMsg);
System.out.println("Connecting FTP2 ");
ftpClient2.connect("xx.xx.xxx.xx");
ftpClient2.login("username", "password");
if (!FTPReply.isPositiveCompletion(ftpClient2.getReplyCode())) {
String errMsg = "User : could not connect. FTP2 server refused connection.";
System.out.println(errMsg);
String fromPath = "/PPP/Test/";
String toPath = "/testprojects/PPP/Test/";
String file1 = "2009121.xml";
String file2 = "2009121.xml";
int replyCode = ftpClient1.cwd(fromPath);
System.out.println("replyCode 1 : "+replyCode);
if (!FTPReply.isPositiveCompletion(replyCode)) {
String errMsg = "Could not change to directory : "
+ fromPath;
System.out.println(errMsg);
int replyCode2 = ftpClient2.cwd(toPath);
System.out.println("replyCode 2 : "+replyCode2);
if (!FTPReply.isPositiveCompletion(replyCode2)) {
String errMsg = "Could not change to directory : "
+ toPath;
System.out.println(errMsg);
//_main:
try{
boolean isPassive = ftpClient2.enterRemotePassiveMode();
boolean isActive = false;
if(isPassive){
System.out.println("FtpClient2 is in Passive mode");
System.out.println("FtpClient2 Host : "+ftpClient2.getPassiveHost());
System.out.println("FtpClient2 Port : "+ftpClient2.getPassivePort());
System.out.println("FtpClient1 is entering RemoteActive Port : ");
isActive = ftpClient1.enterRemoteActiveMode(InetAddress.getByName(ftpClient2.getPassiveHost()), ftpClient2.getPassivePort());
if(isActive)
System.out.println("FtpClient1 is in Active mode");
else
System.out.println("FtpClient1 is NOT in Active mode");
System.out.println(" FtpClient1 Remote verification : "+ftpClient1.isRemoteVerificationEnabled());
System.out.println(" FtpClient2 Remote verification : "+ftpClient2.isRemoteVerificationEnabled());
else
System.out.println("FtpClient2 is NOT in Passive mode");
/*boolean remoteRet = ftpClient1.remoteRetrieve(file1);
boolean remoteStore = ftpClient2.remoteStoreUnique(file2);
ftpClient1.completePendingCommand();
ftpClient2.completePendingCommand();
System.out.println("FtpClient1 remote Retrive "+remoteRet);
System.out.println("FtpClient2 remote Store "+remoteStore);*/
if (ftpClient1.remoteRetrieve(file1) && ftpClient2.remoteStoreUnique(file2))
System.out.println("File Transferring ...");
//if(ftp1.remoteRetrieve(file1) && ftp2.remoteStore(file2)) {
// We have to fetch the positive completion reply.
ftpClient1.completePendingCommand();
ftpClient2.completePendingCommand();
else
System.out.println("Couldn't initiate transfer. Check that filenames are valid.");
//break _main;
} catch(Exception e){
System.out.println(replyCode);
System.out.println("Disconnecting FTP1");
ftpClient1.disconnect();
System.out.println("Disconnecting FTP2");
ftpClient2.disconnect();
System.out.println("Finished FTP");
} catch(Exception e){
System.out.println("Exception Occured");
if (ftpClient1.isConnected())
try
ftpClient1.disconnect();
catch (IOException f)
// do nothing
if (ftpClient2.isConnected())
try
ftpClient2.disconnect();
catch (IOException f)
// do nothing
System.out.println("Error : "+e);
}I'm getting the error "425: Can't build data connection" and part of my console display is
FtpClient1 is in Active mode
FtpClient1 Remote verification : true
FtpClient2 Remote verification : true
RETR 2009121.xml
150 Opening BINARY mode data connection for 2009121.xml (543 bytes).
STOU 2009121.xml
425: Can't build data connection.
Couldn't initiate transfer. Check that filenames are valid.
250
Can anybody tell me how to overcome this error and make this code to run successfully.Seems to me to be a firewall issue. See if you can connect via a command line tool and do the transfer in passive mode. (Get from one server and put on the other). If that works, then duplicate what you did in Java. If it is a firewall issue, your command line usage will fail as well. My strong suspicion is that you do not want to use active mode.
http://slacksite.com/other/ftp.html
- Saish -
FTP-Sender Adapter ignores files with "known filenames"
Hello experts,
the scenario is FTP -> XI -> IDOC and we have problems with the polling of the files. In communication channel monitoring everything is working fine, but in the FTP folder some files are ignored, although the communication channel is set up for all *.txt-files.
My question is, is it possible that the FTP sender adapter ignores files, if it already has processed a file with the same filename? After renaming the files they all were picked up and archived into another folder. How can I configure the communication channel to pick up ALL *.txt-files in the out-folder?
Best regards
DavidHi David,
What I have observed is, XI always reads files in a certain order (possibly alphabetical or reverse alphabetical). If it finds a file in the source directory that already exists in the archive directory, it will not attempt to read/process the next file (even if the next filename is completely new).
So, if any of the files in the source directory exist in the archive directory, there is a possibility that certain files may get processed and certain wont.
Make sure that none of the files that you put in source directory exist in the archive directory (i.e. all the files are new) and see the output. Let me know if this helps.
PS: I used FTP protocol
Regards,
Riyaz -
When I try to upload files in my ftp, the ftp sends an error
Since the last Firefox update, I´ve been unable to upload files to my www.floraciarlo/ftp. Explorer uploads files ok. I use Windows XP 64bit
== This happened ==
Every time Firefox opened
== The last firefox update!!! Explorer can upload the files to my ftp ==
== User Agent ==
Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.9.2.3) Gecko/20100405 Namoroka/3.6.3Firefox doesn't have the ability to upload files on FTP. Are you thinking of another program? See [[Accessing FTP servers]]
Maybe you are looking for
-
SIGABRT error when choosing a row of a tableview
Hello, I am creating an iPhone app and I keep getting a "SIGABRT" error. I have a tableview where I want a separate webpage pushed for each rows. Currently, what happens is that the table displays; however, when I pick a row it gives me a SIGABRT err
-
Windows 7 Clean Install on T500 with Vista
So my thinkpad t500 was infected (the entire recover area was also infected). It came with Vista and I just got the recovery media CDs for Vista. But I don't want to install Vista. I have a legitimate copy of Windows 7 that I purchased and completely
-
I restarted my computer. After it rebooted I was asked to update firefox I did and it updated to 3.0 or something and it said update complete but it is out of date would you like to update to 6.0.2. I did and it updated again. When I got back online,
-
IMac to iMac connection cable?
Hello nice smart people, Which cable would I need to connect my mid 2010 iMac to my new 2012 iMac to use as a 2nd monitor? Apologies for the simpleton question....
-
How to make a "SSWA JSP Function" as query Only in Oracle 11i or R12
Please someone help me in making a SSWA JSP Page as read only.. For "forms" we use a parameter QUERY_ONLY="YES",what is the procedure for making a JSP as read only?