2006 May 08 9:39 AM
Dear Friends,
How to upload file from Application Server?
Plz. with example...
Regards,
Dharmesh
Dear Friends,
How to upload file from Application Server?
Plz. with example...
Regards,
Dharmesh
2006 May 08 9:40 AM
Use
CG3Y and CG3Z transaction
USe AL11 to view file
Reading and Writing a text file from and to the application server
sy-subrc = 0 Record read from file
sy-subrc = 4 End of file reached
data: w_dataset1(27) value '/var/textfile.txt',
w_dataset2(27) value '/var/outfile.txt'.
data:begin of itab1 occurs 0, "Text file format
matnr(18), "MATERIAL NUMBER
bwkrs(4), "PLANT
end of itab1.
*Uploading of text file from Application server.
open dataset w_dataset1 for input in text mode.
do.
if sy-subrc <> 0.
exit.
endif.
read dataset w_dataset1 into itab1.
append itab1.
clear itab1.
enddo.
close dataset w_dataset1.
*Downloading of text file to Application server.
open dataset w_dataset2 for output in text mode.
loop at itable.
transfer itable to w_dataset2.
endloop.
close dataset w_dataset2.
regards
vinod
2006 May 08 9:41 AM
hi use the below logic...
OPEN DATASET <filename> FOR INPUT IN TEXT MODE.
DO .
READ DATASET <filename> INTO <ur structure>.
IF SY-SUBRC NE 0.
EXIT.
ENDIF.
APPEND <ur structure> TO <itab>.
ENDDO.
Cheers,
Abdul
2006 May 08 9:45 AM
Hi,
check these Programs..
RPCIFU03 Download Unix File to PC
RPCIFU04 Upload PC File to Unix File
Regards
vijay
2006 May 08 9:45 AM
Hi Dharmesh.
To read the file from the application server.
CONCATENATE path filename INTO file.
TRANSLATE file TO LOWER CASE.
MOVE: default_filename TO in_trailer-file_name,
interface_id TO in_trailer-interface_id.
OPEN DATASET file FOR INPUT IN TEXT MODE.
IF sy-subrc NE 0.
PERFORM process_msg USING '101' file '' ''.
MOVE: true TO abend_job.
ELSE.
DO.
READ DATASET file INTO infile.
IF sy-subrc NE 0.
total_recs = sy-index - 3.
EXIT.
ENDIF.
APPEND infile.
ENDDO.
CLOSE DATASET file.
ENDIF.
You will have the file contents in the table infile.
Thanks,
Susmitha
2006 May 08 3:11 PM
Dharmesh,
If you want to upload file using abap code, see below for code
IF NOT tab[] IS INITIAL.
PERFORM open_dataset USING w_bkpf_pfilename.
PERFORM process_data.
PERFORM close_dataset USING w_bkpf_pfilename.
ENDIF.
&----
*& Form OPEN_DATASET
&----
Open dataset for appending in text mode
----
FORM open_dataset USING p_w_pfilename.
open file for appending in text mode
OPEN DATASET p_w_pfilename FOR APPENDING IN TEXT MODE.
IF sy-subrc NE 0.
MESSAGE e006 WITH p_w_pfilename 'file could not be open/close.'(101).
EXIT.
ENDIF.
ENDFORM. "OPEN_DATASET
&----
*& Form WRITE_FILE
&----
Create document header file
----
FORM write_file .
SORT tab BY XXXXX.
transfer data to file
LOOP AT tab INTO wa_tab.
MOVE-CORRESPONDING wa_tab TO st_file.
TRANSFER st_file TO w_pfilename.
ENDLOOP.
ENDFORM. " WRITE_BKPF_FILE
&----
*& Form close_dataset
&----
Close dataset
----
-->P_W_BKPF_PFILENAME text
----
FORM close_dataset USING p_w_pfilename.
CLOSE DATASET p_w_pfilename .
IF sy-subrc NE 0.
MESSAGE e006 WITH p_w_pfilename 'file could not be open/close.'(101).
ENDIF.
ENDFORM. " close_dataset
If you want to directly upload / download file from application server you can use transaction CG3Z and CG3Y.
Also you can check uploaded file content using transaction AL11.
Cheers,
Nilesh
2006 May 08 4:24 PM
hi,
check the code for upload from application server.
tables: kna1.
types: begin of s_file,
customer type kna1-kunnr,
country type kna1-land1,
name type kna1-name1,
region type kna1-regio,
end of s_file.
*--Internal tables
data: it_file type s_file occurs 0 with header line.
&----
*-- Selection screen
&----
selection-screen: begin of block b1 with frame title text-001.
parameter: p_file type rlgrap-filename default 'C:/customer.txt'
obligatory.
selection-screen: end of block b1.
&----
*-- At selection screen
&----
at selection-screen on value-request for p_file.
perform file_help using p_file.
&----
*-- Process File
&----
start-of-selection.
perform upload_file using p_file.
&----
*-- write File data to o/p
&----
end-of-selection.
perform write_data.
&----
*& Form file_help
----
form file_help using p_p_file.
data: l_filepath type ibipparms-path.
call function 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ' '
importing
file_name = l_filepath
.
p_p_file = l_filepath.
endform. " file_help
&----
*& Form upload_file
&----
form upload_file using p_p_file.
call function 'WS_UPLOAD'
exporting
filename = p_p_file
filetype = 'DAT'
IMPORTING
FILELENGTH =
tables
data_tab = it_file
exceptions
conversion_error = 1
file_open_error = 2
file_read_error = 3
invalid_type = 4
no_batch = 5
unknown_error = 6
invalid_table_width = 7
gui_refuse_filetransfer = 8
customer_error = 9
no_authority = 10
others = 11
.
if sy-subrc <> 0.
message i001.
endif.
endform. " upload_file
&----
*& Form write_data
&----
form write_data .
loop at it_file.
write:/ it_file-customer, it_file-country, it_file-name,
it_file-region.
endloop.
endform.
regards,
keerthi.
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |