第一辑 文件
1.顺序文件 Sequential Files
数据传输中的一个重要介质;
file transfer的两种方式:
本地-->SAP DB:GUI_UPLOAD(UPLOAD)/GUI_DOWNLOAD(DOWNLOAD)函数;
应用服务器-->SAP DB:READ DATASET/TRANSFER自由ABAP语法;
File Monitor(t-code:AL11):
查看应用层服务器的文件,与平台无关;
目录都是DIR开头的;
当需要生成复杂的office报表,例如excel或者word文件时,可以在ABAP程序中调用
excel或word的VBA宏,也可以将excel或word的模板放到应用层服务器上,然后ABAP
程序执行时调用模板填充数据,然后返回给用户;
处理文件(文件放在应用层服务器的情况)
OPEN(OPEN DATASET) 路径
for output覆盖
for appending添加
for input读取
in text mode文本模式打开(默认是binary mode)
二进制输入时不会输换行符;
MESSAGE message打开时的消息
PROCESS(READ DATASET/TRANSFER DATASET)
循环读取
DO.
READ DATESET xx INTO xx LENGTH xx.
ENDDO.
删除文件
DELETE DATASET xx
获取文件属性
GET DATASET xx
设置文件属性
SET DATASET xx
CLOSE(CLOSE DATASET)
2.ABAP转换程序ABAP Conversion Program
要使用SAP标准的batch input程序,就需要将文件转换成相应的格式;
把客户(外部系统)的文件转换成符合应用服务器规格的文件;
步骤:
读取文件
转换格式为标准格式
(0-session ,
1-transaction,
2-screen)
传值
写目标文件
DX workbench
t-code:sxda_tools
3.本地顺序文件Local Sequential Files
GUI_UPLOAD:本地--〉内表
GUI_DOWNLOAD:内表--〉本地
选择文件名和路径方法:
使用function:WS_FILFENAME_GET
调用类的方法
CALL METHOD cl_gui_frontend_services=>file_open_diaog
EXPORTING
window_title = ''
multiselection = ''
default_filename = '.'
initial_directory = ' '
CHANGING
file_table = filetable
rc = rc.
CAll METHOD cl_gui_cfw=>flush.
LOOP AT filetable.
....
ENDLOOP.
4.逻辑文件Logical File Names
可移植性:程序中使用逻辑文件,逻辑文件和物理文件映射,当物理文件变化时,
不需要更改程序,只需要更改物理文件和逻辑文件的对应关系;
t-code:file
a>.定义逻辑路径;
b>.关联逻辑路径和物理路径;eg: D:\<filename> 必须以<filename>结束;
c>.定义逻辑文件;
在程序中要使用逻辑文件时,使用function:file_get_name;
1.顺序文件 Sequential Files
数据传输中的一个重要介质;
file transfer的两种方式:
本地-->SAP DB:GUI_UPLOAD(UPLOAD)/GUI_DOWNLOAD(DOWNLOAD)函数;
应用服务器-->SAP DB:READ DATASET/TRANSFER自由ABAP语法;
File Monitor(t-code:AL11):
查看应用层服务器的文件,与平台无关;
目录都是DIR开头的;
当需要生成复杂的office报表,例如excel或者word文件时,可以在ABAP程序中调用
excel或word的VBA宏,也可以将excel或word的模板放到应用层服务器上,然后ABAP
程序执行时调用模板填充数据,然后返回给用户;
处理文件(文件放在应用层服务器的情况)
OPEN(OPEN DATASET) 路径
for output覆盖
for appending添加
for input读取
in text mode文本模式打开(默认是binary mode)
二进制输入时不会输换行符;
MESSAGE message打开时的消息
PROCESS(READ DATASET/TRANSFER DATASET)
循环读取
DO.
READ DATESET xx INTO xx LENGTH xx.
ENDDO.
删除文件
DELETE DATASET xx
获取文件属性
GET DATASET xx
设置文件属性
SET DATASET xx
CLOSE(CLOSE DATASET)
2.ABAP转换程序ABAP Conversion Program
要使用SAP标准的batch input程序,就需要将文件转换成相应的格式;
把客户(外部系统)的文件转换成符合应用服务器规格的文件;
步骤:
读取文件
转换格式为标准格式
(0-session ,
1-transaction,
2-screen)
传值
写目标文件
DX workbench
t-code:sxda_tools
3.本地顺序文件Local Sequential Files
GUI_UPLOAD:本地--〉内表
GUI_DOWNLOAD:内表--〉本地
选择文件名和路径方法:
使用function:WS_FILFENAME_GET
调用类的方法
CALL METHOD cl_gui_frontend_services=>file_open_diaog
EXPORTING
window_title = ''
multiselection = ''
default_filename = '.'
initial_directory = ' '
CHANGING
file_table = filetable
rc = rc.
CAll METHOD cl_gui_cfw=>flush.
LOOP AT filetable.
....
ENDLOOP.
4.逻辑文件Logical File Names
可移植性:程序中使用逻辑文件,逻辑文件和物理文件映射,当物理文件变化时,
不需要更改程序,只需要更改物理文件和逻辑文件的对应关系;
t-code:file
a>.定义逻辑路径;
b>.关联逻辑路径和物理路径;eg: D:\<filename> 必须以<filename>结束;
c>.定义逻辑文件;
在程序中要使用逻辑文件时,使用function:file_get_name;