ZCL_FTP.md
Introduction
Class: ZCL_FTP
- 整合SAP FTP功能
- 本來想設計成Instance Class,但發現一個FTP連線斷線就會全斷...只好改為Static Class
History
Version | Date | Name | Description |
---|---|---|---|
V001 | 2020/12/1 | Huang Roy | 初版 |
Public Method
CONNECT
- FTP連線
- I_HOST: 不含資料夾,僅FTP IP
- I_US: 帳號
- I_PW: 密碼
- I_RFCDEST: RFC Destination,通常不需修改
Parameter | Level | Pass Value | Optional | Type(Ref To) | Default | Description |
---|---|---|---|---|---|---|
I_HOST | Importing | SCMS_HOST | Host | |||
I_US | Importing | SCMS_FTPUS | User | |||
I_PW | Importing | SCMS_FTPPW | Password | |||
I_RFCDEST | Importing | X | RFCDES-RFCDEST | 'SAPFTPA' | RFC Destination for FTP |
COMMAND
- 執行FTP指令
- I_COMMAND: FTP Command
- RT_TEXT: 回傳結果
Parameter | Level | Pass Value | Optional | Type(Ref To) | Default | Description |
---|---|---|---|---|---|---|
I_COMMAND | Importing | TEXT255 | FTP Command | |||
RT_TEXT | Returning | X | RSDF_T_TEXT256 | Result |
DISCONNECT
- 中斷FTP連線
EXPORT_BIN
- Export Binary File to FTP
- I_FULLPATH: 路徑加檔名(含副檔名),若無額外路徑,可直接放檔名。
- I_BINLEN: Binary Length
- IT_BIN: Binary Table
Parameter | Level | Pass Value | Optional | Type(Ref To) | Default | Description |
---|---|---|---|---|---|---|
I_FULLPATH | Importing | TEXT255 | Path+Filename(with extension) | |||
I_BINLEN | Importing | I | Binary Length | |||
IT_BIN | Importing | SOLIX_TAB | Binary |
IMPORT_BIN
- Import Binary File from FTP
- I_FULLPATH: 路徑加檔名(含副檔名),若無額外路徑,可直接放檔名。
- E_BINLEN: Binary Length。
- ET_BIN: Binary Table。
Parameter | Level | Pass Value | Optional | Type(Ref To) | Default | Description |
---|---|---|---|---|---|---|
I_FULLPATH | Importing | TEXT255 | Path+Filename(with extension) | |||
E_BINLEN | Exporting | I | Binary Length | |||
ET_BIN | Exporting | SOLIX_TAB | Binary |
EXPORT_TXT
- Export text file to FTP(Encoding: UTF-8)
- I_FULLPATH: 路徑加檔名(含副檔名),若無額外路徑,可直接放檔名。
- IT_FSET: 欄位設定,未設定則直接輸出。
- I_WITH_HEADER: 設定是否要header,預設為輸出含header。
- I_SEP: 設定分隔符號,預設是tab。
- IT_OUT: 輸出資料。
Parameter | Level | Pass Value | Optional | Type(Ref To) | Default | Description |
---|---|---|---|---|---|---|
I_FULLPATH | Importing | TEXT255 | Path+Filename(with extension) | |||
IT_FSET | Importing | X | TTY_FSET | Field Setting | ||
I_WITH_HEADER | Importing | X | ABAP_BOOL | ABAP_TRUE | Data with Header | |
I_SEP | Importing | X | ABAP_CHAR1 | C_TAB | Separator | |
IT_OUT | Importing | ANY TABLE | Output data |
IMPORT_TXT
- Import text file from FTP(Default Encoding: UTF-8)
- I_FULLPATH: 路徑加檔名(含副檔名),若無額外路徑,可直接放檔名。
- IT_FSET: 欄位設定,未設定則按順序輸入。
- I_CODEPAGE: 文字檔編碼,參考Table: TCP00。
- I_START_LINE: 從第幾列開始匯入(注意表頭)。
- I_SEP: 設定分隔符號,預設是tab。
- ET_IN: 承接資料。
Parameter | Level | Pass Value | Optional | Type(Ref To) | Default | Description |
---|---|---|---|---|---|---|
I_FULLPATH | Importing | TEXT255 | Path+Filename(with extension) | |||
IT_FSET | Importing | X | TTY_FSET | Field Setting | ||
I_CODEPAGE | Importing | X | CPCODEPAGE | C_UTF8 | SAP Character Set ID | |
I_START_LINE | Importing | X | I | 1 | Start line of Import data | |
I_SEP | Importing | X | ABAP_CHAR1 | C_TAB | Separator | |
ET_IN | Exporting | STANDARD TABLE | Output data |
EXPORT_XLSX
- Export Excel file to FTP(ALV直轉)
- I_FULLPATH: 路徑加檔名(含副檔名),若無額外路徑,可直接放檔名。
- IT_FSET: 欄位設定,未設定則按順序輸入。
- CT_OUT: 資料。
Parameter | Level | Val | Opt | Type(Ref To) | Default | Description |
---|---|---|---|---|---|---|
I_FULLPATH | Importing | TEXT255 | Path+Filename(with extension) | |||
IT_FSET | Importing | TTY_FSET | Field Setting | |||
CT_OUT | Changing | ANY TABLE | Output data |
Sample
Export txt
Click to Expand Code
Import txt
- 承Export txt輸出的檔案
Export Excel
Click to Expand Code
Command - DIR
Click to Expand Code
Appendix
SAP FTP參考程式
Program | Description |
---|---|
RSFTP001 | SAPFTP Version |
RSFTP002 | Execute FTP Command |
RSFTP003 | FTP put / get Test |
RSFTP004 | FTP Copy |
RSFTP005 | SAPFTP check |
RSFTP006 | FTP command list |
RSFTP007 | Test FB:FTP_SERVER_TO_R3 / FTP_R3_TO_SERVER |
RSFTP008 | Test FB:FTP_CLIENT_TO_R3 / FTP_R3_TO_CLIENT |
RSFTP009 | Test FTP put with Verify |
RSFTP011 | FTP Copy |