‎2008 Jul 07 11:38 AM
Hi all,
Please give me the sample program Based on the Open Dataset file for input and Read dataset to download a file in the application server (that si into the mapped drive)
Regards
Ajay
‎2008 Jul 07 11:41 AM
HI
Parameters to enter the path
PARAMETERS FILENAME(128) DEFAULT '/usr/tmp/testfile.dat'
LOWER CASE.
Table Declaration
TABLES VBAK.
Data Declaration
DATA D_MSG_TEXT(50).
Get data for file transfer
DATA INT_VBAK LIKE VBAK OCCURS 100
WITH HEADER LINE.
SELECT * FROM VBAK INTO TABLE INT_VBAK.
SORT INT_VBAK BY VBELN.
LOOP AT INT_VBAK.
WRITE: / INT_VBAK-VBELN,
INT_VBAK-KUNNR.
ENDLOOP.
Opening the File
OPEN DATASET FILENAME FOR OUTPUT IN TEXT MODE
MESSAGE D_MSG_TEXT.
IF SY-SUBRC NE 0.
WRITE: 'File cannot be opened. Reason:', D_MSG_TEXT.
EXIT.
ENDIF.
Transferring Data
LOOP AT INT_VBAK.
TRANSFER INT_VBAK-VBELN TO FILENAME.
ENDLOOP.
Closing the File
CLOSE DATASET FILENAME.
READ DATA SET
FORM COLLECT_DATA.
OPEN DATASET PARCOM1 FOR INPUT IN TEXT MODE.
DO.
READ DATASET PARCOM1 INTO TAB1.
IF SY-SUBRC NE 0.
EXIT.
ENDIF.
APPEND TAB1.
ENDDO.
CLOSE DATASET PARCOM1.
OPEN DATASET PARCOM2 FOR INPUT IN TEXT MODE.
DO.
READ DATASET PARCOM2 INTO TAB2.
IF SY-SUBRC NE 0.
EXIT.
ENDIF.
APPEND TAB2.
ENDDO.
CLOSE DATASET PARCOM2.
ENDFORM.
Regards
Pavan
‎2008 Jul 07 11:41 AM
hiii
see folowing code
DATA:
t_bkpf TYPE
STANDARD TABLE
OF type_s_bkpf.
*"--------------------------------------------------------------------*
* Work variable to hold Accounting Document Header data *
*"--------------------------------------------------------------------*
DATA:
fs_bkpf LIKE
LINE OF t_bkpf,
no_data TYPE c,
w_file(50) TYPE c VALUE 'myfile123.txt'.
" File Value
FORM display_detail .
OPEN DATASET w_file FOR INPUT IN TEXT MODE ENCODING DEFAULT.
DO.
READ DATASET w_file INTO fs_bkpf.
IF sy-subrc EQ 0.
WRITE: fs_bkpf.
APPEND fs_bkpf TO t_bkpf.
ELSE.
EXIT.
ENDIF. " IF sy-subrc EQ 0
ENDDO.
CLOSE DATASET w_file.
ENDFORM. " display_detailregards
twinkal
‎2008 Jul 07 11:42 AM
Hi,
Check this links:
http://help.sap.com/saphelp_nw04/helpdata/EN/fc/eb3d42358411d1829f0000e829fbfe/content.htm
http://help.sap.com/saphelp_nw04/helpdata/EN/fc/eb3ca6358411d1829f0000e829fbfe/content.htm
http://help.sap.com/saphelp_40b/helpdata/ru/34/55cad198482bc0e10000009b38f91f/content.htm
Regards
Adil
‎2008 Jul 07 11:43 AM
hi,
Check out the below sample code
http://www.sapdev.co.uk/file/file_uploadsap.htm
Also check out CG3Y & CG3Z transactions
‎2008 Jul 07 11:47 AM
Hi Ajay,
refer to code below:
data:
w_fname(60) value '.\file',
w_string type string.
open dataset w_fname for input in text mode encoding default.
do.
read dataset w_fname into w_string.
if sy-subrc <> 0.
exit.
endif.
enddo.
close dataset w_fname.With luck,
Pitam.
‎2008 Jul 07 11:47 AM
hi ajay ,
check this subroutine
&----
*& Form f690_download_on_application
&----
For downloading a file on application server
----
No interface parameter needed.
----
FORM f690_download_on_application .
DATA :wl_file TYPE localfile .
wl_file = p_filea3.
OPEN DATASET wl_file " Opening the file
FOR OUTPUT IN TEXT MODE
ENCODING DEFAULT.
IF sy-subrc NE 0.
MESSAGE s058(xw) WITH wl_file sy-subrc.
EXIT.
ENDIF.
LOOP AT i_final_promotion INTO wa_final_promotion.
TRANSFER wa_final_promotion TO wl_file.
ENDLOOP.
CLOSE DATASET wl_file. " Closing the file
MESSAGE s628(gr) WITH wl_file sy-subrc.
ENDFORM. " f690_download_on_application
regards ,
sandeep
‎2008 Jul 07 11:48 AM
HI Ajay,
Check this following code:
*"Table declarations...................................................
TABLES:
bkpf.
*"Selection screen elements............................................
SELECT-OPTIONS:
p_bukrs FOR bkpf-bukrs,
p_bldat FOR bkpf-bldat.
PARAMETERS:
w_char TYPE c.
DATA:
BEGIN OF fs_bkpf,
bukrs LIKE bkpf-bukrs,
gjahr LIKE bkpf-gjahr,
blart LIKE bkpf-blart,
bldat LIKE bkpf-bldat,
budat LIKE bkpf-budat,
monat LIKE bkpf-monat,
cpudt LIKE bkpf-cpudt,
END OF fs_bkpf.
DATA:
t_bkpf LIKE
STANDARD TABLE
OF fs_bkpf.
DATA:
f_name TYPE string,
w_lines TYPE i,
w_data TYPE string,
w_data1 TYPE string,
w_index TYPE i,
file_path TYPE ibipparms-path,
file_path1 TYPE string.
SELECT bukrs
gjahr
blart
bldat
budat
monat
cpudt
FROM bkpf
INTO TABLE t_bkpf
WHERE bukrs IN p_bukrs
AND bldat IN p_bldat.
************************************************************************
******************Writing into Application Server***********************
************************************************************************
f_name = '.\my_bkpf.txt'.
OPEN DATASET f_name FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
DESCRIBE TABLE t_bkpf LINES w_lines.
DO w_lines TIMES.
READ TABLE t_bkpf INTO fs_bkpf INDEX w_index.
CONCATENATE fs_bkpf-bukrs
fs_bkpf-gjahr
fs_bkpf-blart
fs_bkpf-bldat
fs_bkpf-budat
fs_bkpf-monat
fs_bkpf-cpudt
INTO w_data
SEPARATED BY w_char.
TRANSFER w_data TO f_name.
ADD 1 TO w_index.
ENDDO.
CLOSE DATASET f_name.
CLEAR t_bkpf.
OPEN DATASET f_name FOR INPUT IN TEXT MODE ENCODING DEFAULT.
DO.
READ DATASET f_name INTO w_data1.
IF sy-subrc NE 0.
EXIT.
ENDIF.
SPLIT w_data1 AT w_char INTO fs_bkpf-bukrs
fs_bkpf-gjahr
fs_bkpf-blart
fs_bkpf-bldat
fs_bkpf-budat
fs_bkpf-monat
fs_bkpf-cpudt.
APPEND fs_bkpf TO t_bkpf.
ENDDO.
CLOSE DATASET f_name.
************************************************************************
******************Writing into Presentation Server**********************
************************************************************************
CALL FUNCTION 'F4_FILENAME'
* EXPORTING
* PROGRAM_NAME = SYST-CPROG
* DYNPRO_NUMBER = SYST-DYNNR
* FIELD_NAME = ' '
IMPORTING
file_name = file_path.
file_path1 = file_path.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
filename = file_path1
filetype = 'BIN'
* write_field_separator = 'X'
TABLES
data_tab = t_bkpf
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.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
MESSAGE 'File Downloaded Successfully' TYPE 'I'.
ENDIF.Hope this helps you.
Regards,
Chandra Sekhar