Sometimes we have an unexpected behavior during SAPFTP transfer.
Our system is Unicode and everything in SAP Kernel is Unicode too.
For example:
A successful file will look like this:
*$L1$T11$S123456789012345678$U011$U02123grewgrw$
An invalid file will look like this:
* $ L 1 $ T 1 3 $ S T L 1 3 0 6 9 2 $ U 0 1 k
Transfer is successful, but the final result is not what we want.
To solve this problem:
Make sure SAPFTP version is Unicode. For that, run the command bellow.
C:\Program Files (x86)\SAP\FrontEnd\SAPgui>SAPftp.exe -V
SAPFTP Non-Unicode
@(#) $Id: //bas/720_REL/src/krn/ftp/ftpmain.c#7 $ SAP
@(#) $Id: //bas/720_REL/src/krn/ftp/ftp.c#2 $ SAP
@(#) $Id: //bas/720_REL/src/krn/ftp/ftpcmd.c#3 $ SAP
Here I give the example of my SAPFTP.exe in SAP Gui Installation. But the same command can be executed in Server Operating System level.
Make sure the SAPFTP version, by the above command, and SAPFTP / SAPFTPA RFCs are Unicode too.
Go to SM59 -> TCP/IP connections -> SAPFTP -> Unicode tab -> "Communication Type with Target System"
Check if it's set to [x] Unicode or [x] Non-Unicode.
In case SAPftp.exe -V result in Unicode, change "Communication Type with Target System" to [x] Unicode.
In case SAPftp.exe -V result in Non-Unicode, change "Communication Type with Target System" to [x] Non-Unicode.
See more information about SAPFTP on note:
93042 - Problems with SAPFTP