jueves, 22 de marzo de 2012

TRANSFER, GUI_DOWNLOAD Grabar Archivo Directorio


Nota: los archivos grabados con la sentencia OPEN DATASET , TRANSFER , no se visualizan bien en el programa Notepad de Windows debido a que se aprecian todos los datos juntos como si fuera una sola línea, pero si se abren con WordPad, Excel u otra herramienta estos datos se aprecian bien organizados.


EJEMPLO GRABAR ARCHIVO A RUTA EN UN SERVIDOR.

REPORT ZTMP_PRUEBA.

TYPES BEGIN OF ST_DEMO,
        REG_NO
(10TYPE C,
        NAME
(20TYPE C,
        ADDR
(20TYPE C,
        
END OF ST_DEMO.

DATA WA_DEMO TYPE ST_DEMO,
       IT_DEMO 
TYPE TABLE OF ST_DEMO,
       L_FNAME 
TYPE STRING .

PARAMETERSP_FNAME(128TYPE C DEFAULT '/usr/sap/SRI/SYS/src/DOWN.TXT' OBLIGATORY.

L_FNAME 
P_FNAME.

WA_DEMO
-REG_NO '100001'.
WA_DEMO
-NAME 'ANAND'.
WA_DEMO
-ADDR 'NAGARKOVIL'.
 
APPEND WA_DEMO TO IT_DEMO.

WA_DEMO
-REG_NO '100002'.
WA_DEMO
-NAME 'VIKRAM'.
WA_DEMO
-ADDR 'CHENNAI'.
APPEND WA_DEMO TO IT_DEMO.


 
OPEN DATASET L_FNAME FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.

 
WRITE :'REG NUM',16 'NAME',37 'ADDRESS' .

  
LOOP AT IT_DEMO INTO WA_DEMO.
    
IF SY-SUBRC 0.
      
TRANSFER WA_DEMO TO L_FNAME.
      
WRITE :/5 WA_DEMO-REG_NO,16 WA_DEMO-NAME,37 WA_DEMO-ADDR.
    
ENDIF.
  
ENDLOOP.

http://help.sap.com/saphelp_40b/helpdata/en/34/55cad198482bc0e10000009b38f91f/content.htm
http://help.sap.com/saphelp_40b/helpdata/en/34/8e73b06df74873e10000009b38f9b8/content.htm


EJEMPLO GRABAR  ARCHIVO A RUTA EN UN SERVIDOR.



REPORT ZTMP_PRUEBA2.

DATABEGIN OF t_itab OCCURS 0,
              
line(2500),
END OF t_itab.

DATA RUTA_ARC TYPE STRING.

RUTA_ARC 
'/CVPL/PRUEBA.TXT'.

OPEN DATASET RUTA_ARC FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.

LOOP AT t_itab.
     
TRANSFER t_itab TO RUTA_ARC.
ENDLOOP.

PARA GRABAR ARCHIVOS A RUTAS de PCs CLIENTES
DATA RUTA_ARC TYPE STRING.

RUTA_ARC 'C:\TEMPORAL\PRUEBA.TXT'.

CALL FUNCTION 'GUI_DOWNLOAD'
    
EXPORTING
*   BIN_FILESIZE                    =
      filename                      
RUTA_ARC
      filetype                      
'ASC'
      trunc_trailing_blanks_eol     
space
    
TABLES
      data_tab                      
=  t_itab
 
EXCEPTIONS
   file_write_error                
1
   no_batch                        
2
   gui_refuse_filetransfer         
3
   invalid_type                    
4
   no_authority                    
5
   unknown_error                   
6
   header_not_allowed              
7
   separator_not_allowed           
8
   filesize_not_allowed            
9
   header_too_long                 
10
   dp_error_create                 
11
   dp_error_send                   
12
   dp_error_write                  
13
   unknown_dp_error                
14
   access_denied                   
15
   dp_out_of_memory                
16
   disk_full                       
17
   dp_timeout                      
18
   file_not_found                  
19
   dataprovider_exception          
20
   control_flush_error             
21
   
OTHERS                          22
            
.