Welcome! My friends!

BC420--ABAP数据传输(1)文件

上一篇 / 下一篇  2008-01-03 15:14:19 / 个人分类:SAP ABAP

第一辑 文件ITPUB个人空间(h(Z0iQ ?&r(snC
1.顺序文件 Sequential Files
j%J w!H+v+K(s0  数据传输中的一个重要介质;
%Z4VF)DG/DjX0  file transfer的两种方式:
#v-B[:Y V^l0    本地-->SAP DB:GUI_UPLOAD(UPLOAD)/GUI_DOWNLOAD(DOWNLOAD)函数;
2@ hyQ'|&A{0    应用服务器-->SAP DB:READ DATASET/TRANSFER自由ABAP语法;
0n Sk U vP6]0  File Monitor(t-code:AL11):
$J/h'e x2^0    查看应用层服务器的文件,与平台无关;ITPUB个人空间k+Rd,nwW!P
    目录都是DIR开头的;ITPUB个人空间#m3kEWf

pe)o0D5jaR T0    当需要生成复杂的office报表,例如excel或者word文件时,可以在ABAP程序中调用ITPUB个人空间\cRta"N7En~,F
    excel或word的VBA宏,也可以将excel或word的模板放到应用层服务器上,然后ABAP
pQ{ ~.t0    程序执行时调用模板填充数据,然后返回给用户;ITPUB个人空间H0tN {9J,@_U h\zKh7X
ITPUB个人空间%t:j2k d"b
  处理文件(文件放在应用层服务器的情况)
Bn3Om'o*i,Ry0    OPEN(OPEN DATASET) 路径
Y`.k%AfIW Km?W0       for output覆盖ITPUB个人空间 `b;Ba!sf,q
       for appending添加
x _irwyaY0       for input读取
as.b+?'zcxX\,Y7j0       in text mode文本模式打开(默认是binary mode)
&K0[ ]+Ho~Ua0          二进制输入时不会输换行符;ITPUB个人空间`zB2?q
       MESSAGE message打开时的消息ITPUB个人空间F/S B*L\;l4G*v&z
    PROCESS(READ DATASET/TRANSFER DATASET)
-p8f-ftH(?,CA0       循环读取
%}qZ9Y:T3XCY#V P0         DO.
BR&i['q+m$Q+]0         READ DATESET xx INTO xx LENGTH xx.
}mbeL5e7?0         ENDDO.ITPUB个人空间B{z$a @ GY4_2q-I;K
       删除文件ITPUB个人空间.q wc5Qiy2R
         DELETE DATASET xx
!Sz^6p8u-d3t,y k0       获取文件属性
,ZC0t k ~/Rh E2B0         GET DATASET xx
lC YpF0       设置文件属性ITPUB个人空间hlr3gW
         SET DATASET xxITPUB个人空间6g oIWZa7J4I*i
    CLOSE(CLOSE DATASET)
nmhN3?9TXi0     
*[ edIP}x:x h02.ABAP转换程序ABAP Conversion ProgramITPUB个人空间7{2@6Ou'{*H8W
  要使用SAP标准的batch input程序,就需要将文件转换成相应的格式;
,SaK H R't&XnP0  把客户(外部系统)的文件转换成符合应用服务器规格的文件;ITPUB个人空间 p}|},F
  步骤:ITPUB个人空间8Z4l*yL V
      读取文件ITPUB个人空间9G DG `p
      转换格式为标准格式ITPUB个人空间(Y M#H(}4?)x*y
       (0-session ,ITPUB个人空间3\C9uw+J7S2| Y~
         1-transaction,
x p[PA@yl4_0         2-screen)
+n^#hw?Au0      传值
7C twPR5eW3~0      写目标文件ITPUB个人空间L;~G nDf(X*^2{hF

5sw2ll6\k1X-O!Hn0  DX workbenchITPUB个人空间 t5jzH%xL,S
  t-code:sxda_tools
6?w#z.I&E"r @lM6G0
g ],KO4J/L n%{4LAL03.本地顺序文件Local Sequential Files
V1_K'r0]GL"q:L0    GUI_UPLOAD:本地--〉内表
kQ+jA(@R3B"T0    GUI_DOWNLOAD:内表--〉本地
+h8lFz*Eh;B0    选择文件名和路径方法:
;R)s'e3x/`x0       使用function:WS_FILFENAME_GETITPUB个人空间 n;bZ%DO W.p
       调用类的方法
2V'G0U aY)Wi ij0          CALL METHOD cl_gui_frontend_services=>file_open_diaog
"YE@ Ff u0                       EXPORTINGITPUB个人空间2Hw-RK4UB FJ
                         window_title = ''ITPUB个人空间6HZpU6e]u
                         multiselection = ''
`_~WAH0                         default_filename = '.'ITPUB个人空间ge&};\,R&Gh)l%{
                         initial_directory = ' '
VC)v4~U+W(Y-L0                       CHANGING
xLgi&~)Q"O/~3N!x~0                         file_table  = filetable
k u,k ^k0                         rc          = rc.ITPUB个人空间9p%^zm'gv H~0T mU
           CAll METHOD cl_gui_cfw=>flush.
#?"m4GN SX&|&^0           LOOP AT filetable.
5E'm4zc'jDq`1Z0                   ....ITPUB个人空间|*x b!y},a
           ENDLOOP.
%I6k4_ J/k E-C(V0ITPUB个人空间Gk)]L!p$?lWNd
4.逻辑文件Logical File NamesITPUB个人空间@&^HMuM*d
  可移植性:程序中使用逻辑文件,逻辑文件和物理文件映射,当物理文件变化时,
+sNlG0TC0   不需要更改程序,只需要更改物理文件和逻辑文件的对应关系;ITPUB个人空间P s bO1mm
  t-code:fileITPUB个人空间f9R$` s6GIgd\
  a>.定义逻辑路径;ITPUB个人空间o9k8IY!J vY[
  b>.关联逻辑路径和物理路径;eg: D:\<filename> 必须以<filename>结束;ITPUB个人空间9O"f6UH'?
  c>.定义逻辑文件;ITPUB个人空间 ?)|3d^^
  在程序中要使用逻辑文件时,使用function:file_get_name;ITPUB个人空间2hTa,BCc

TAG:

引用 删除 Guest   /   2010-03-03 16:42:03
5
SAP学习园地 引用 删除 SAP骑士   /   2009-07-02 09:29:40
3
引用 删除 Guest   /   2009-05-06 16:00:24
5
引用 删除 Nancy42306   /   2009-03-09 11:14:56
请问调用GUI_DOWNLOAD 的话 如果在后台运行的话 文件可以Download到本机吗?如过不可以的话,要怎么处理呢?谢谢!
引用 删除 simpleboy   /   2008-08-28 13:58:35
这是全文吗??你写的东西我怎么都觉得还没结尾啊!
引用 删除 Guest   /   2008-08-28 13:57:42
5
引用 删除 Guest   /   2008-07-30 10:53:08
1
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2012-02-10  
   1234
567891011
12131415161718
19202122232425
26272829   

数据统计

  • 访问量: 142172
  • 日志数: 317
  • 图片数: 2
  • 影音数: 5
  • 文件数: 9
  • 建立时间: 2007-11-28
  • 更新时间: 2008-12-03

RSS订阅

Open Toolbar