‎2006 Dec 22 10:01 AM
Hi All,
Is there any standard transaction to upload files (from desktop) to the SAP Application server? AL11 provides facilty to view files on Application server. How to put files there, without actually writing a custom code?
Please provide your inputs.
Thanks.
Regards,
Riyaz
‎2006 Dec 22 10:04 AM
standard transactions are cg3y and cg3z
and code is -
&----
*& Report ZGILL_AS *
*& *
&----
*& *
*& *
&----
REPORT ZGILL_AS message-id rp .
tables: pa0001,pa0002.
select-options s_pernr for pa0001-pernr no intervals MODIF ID XYZ.
parameters: p_dwnld AS CHECKBOX MODIF ID ABC USER-COMMAND CH,
p_upld AS CHECKBOX MODIF ID ABD USER-COMMAND CH DEFAULT 'X'.
parameters: p_FILE1 AS CHECKBOX MODIF ID ABE USER-COMMAND CH DEFAULT 'X',
p_FILE2 AS CHECKBOX MODIF ID ABF USER-COMMAND CH.
parameters: P_DSNI(75) TYPE C MODIF ID ABG DEFAULT
'/usr/local/sapdata/amit.dat' LOWER CASE.
data: begin of itab occurs 0,
pernr(8),
sp1(1) value ',',
werks(4),
sp2(1) value ',',
persg(1),
sp3(1) value ',',
persk(2),
end of itab.
data: begin of itab1 occurs 0,
pernr(8),
sp1(1) value ',',
vorna(20),
sp2(1) value ',',
gbdat(8), "yyyymmdd
sp3(1) value ',',
natio(3),
end of itab1.
data: s_eof(3).
Check sy-ucomm = 'CH'.
AT SELECTION-SCREEN OUTPUT.
loop at screen.
if p_upld = 'X'.
if screen-group1 = 'ABC'.
SCREEN-ACTIVE = '0'.
MODIFY SCREEN.
ENDIF.
ELSEIF P_DWNLD = 'X'.
if screen-group1 = 'ABD'.
SCREEN-ACTIVE = '0'.
MODIFY SCREEN.
ENDIF.
if screen-group1 = 'XYZ'.
screen-active = '0'.
MODIFY SCREEN.
endif.
ENDIF.
if p_file1 = 'X'.
if screen-group1 = 'ABF'.
SCREEN-ACTIVE = '0'.
MODIFY SCREEN.
ENDIF.
if screen-group1 = 'ABG'.
P_DSNI = '/usr/local/sapdata/amit.dat'.
MODIFY SCREEN.
ENDIF.
ELSEIF P_file2 = 'X'.
if screen-group1 = 'ABE'.
SCREEN-ACTIVE = '0'.
MODIFY SCREEN.
ENDIF.
if screen-group1 = 'ABG'.
P_DSNI = '/usr/local/sapdata/amit1.dat'.
MODIFY SCREEN.
ENDIF.
ENDIF.
endloop.
start-of-selection.
file 1
IF P_FILE1 = 'X'.
if p_upld = 'X'.
OPEN DATASET P_DSNI FOR OUTPUT IN LEGACY TEXT MODE.
PERFORM FETCH_DATA.
STOP.
elseif p_dwnld = 'X'.
OPEN DATASET P_DSNI FOR INPUT IN LEGACY TEXT MODE.
IF SY-SUBRC NE 0.
MESSAGE E016 WITH
'Error opening seq. file, RC:' SY-SUBRC.
EXIT.
ENDIF.
CLEAR S_EOF.
DO.
PERFORM FETCH_file.
IF S_EOF EQ 'YES'. stop. ENDIF.
ENDDO.
endif.
file 2
ELSEIF P_FILE2 = 'X'.
if p_upld = 'X'.
OPEN DATASET P_DSNI FOR OUTPUT IN LEGACY TEXT MODE.
PERFORM FETCH_DATA1.
STOP.
elseif p_dwnld = 'X'.
OPEN DATASET P_DSNI FOR INPUT IN LEGACY TEXT MODE.
IF SY-SUBRC NE 0.
MESSAGE E016 WITH
'Error opening seq. file, RC:' SY-SUBRC.
EXIT.
ENDIF.
CLEAR S_EOF.
DO.
PERFORM FETCH_file2.
IF S_EOF EQ 'YES'. stop. ENDIF.
ENDDO.
endif.
ENDIF.
END-OF-SELECTION.
if p_file1 = 'X'.
if itab[] is not initial.
perform print_file1 tables itab.
else.
write:/ 'No records exists'.
endif.
elseif p_file2 = 'X'.
if itab1[] is not initial.
perform print_file2 tables itab1.
else.
write:/ 'No records exists'.
endif.
endif.
&----
*& Form FETCH_DATA
&----
text
----
--> p1 text
<-- p2 text
----
FORM FETCH_DATA .
SELECT * FROM PA0001 WHERE PERNR IN S_PERNR.
MOVE-CORRESPONDING PA0001 TO ITAB.
TRANSFER ITAB TO P_DSNI.
APPEND ITAB.
ENDSELECT.
CLOSE DATASET P_DSNI.
ENDFORM. " FETCH_DATA
&----
*& Form FETCH_file
&----
text
----
--> p1 text
<-- p2 text
----
FORM FETCH_file .
READ DATASET P_DSNI INTO itab.
append itab.
clear itab.
IF SY-SUBRC NE 0.
S_EOF = 'YES'. EXIT.
ENDIF.
ENDFORM. " FETCH_file
&----
*& Form print_file1
&----
text
----
-->P_ITAB text
----
FORM print_file1 tables P_ITAB structure itab .
write:/2 'EmpNo',
14 'Personnel Area',
34 'Emp Group',
47 'Emp SubGroup'.
skip 1.
loop at p_itab.
write:2 p_itab-pernr,
14 p_itab-werks,
34 p_itab-persg,
47 p_itab-persk.
skip 1.
endloop.
ENDFORM. " print_file1
&----
*& Form FETCH_DATA1
&----
text
----
--> p1 text
<-- p2 text
----
FORM FETCH_DATA1 .
SELECT * FROM PA0002 WHERE PERNR IN S_PERNR.
MOVE-CORRESPONDING PA0002 TO ITAB1.
TRANSFER ITAB1 TO P_DSNI.
APPEND ITAB1.
ENDSELECT.
CLOSE DATASET P_DSNI.
ENDFORM. " FETCH_DATA1
&----
*& Form FETCH_file2
&----
text
----
--> p1 text
<-- p2 text
----
FORM FETCH_file2 .
READ DATASET P_DSNI INTO itab1.
append itab1.
clear itab1.
IF SY-SUBRC NE 0.
S_EOF = 'YES'. EXIT.
ENDIF.
ENDFORM. " FETCH_file2
&----
*& Form print_file2
&----
text
----
-->P_ITAB1 text
----
FORM print_file2 TABLES P_ITAB1 STRUCTURE itab1.
write:/2 'Emp No',
12 'Name',
35 'Date of Birth',
50 'Nationality'.
skip 1.
loop at p_itab1.
write:2 p_itab1-pernr,
12 p_itab1-vorna,
35 p_itab1-gbdat,
50 p_itab1-natio.
skip 1.
endloop.
ENDFORM. " print_file2
‎2006 Dec 22 10:04 AM
standard transactions are cg3y and cg3z
and code is -
&----
*& Report ZGILL_AS *
*& *
&----
*& *
*& *
&----
REPORT ZGILL_AS message-id rp .
tables: pa0001,pa0002.
select-options s_pernr for pa0001-pernr no intervals MODIF ID XYZ.
parameters: p_dwnld AS CHECKBOX MODIF ID ABC USER-COMMAND CH,
p_upld AS CHECKBOX MODIF ID ABD USER-COMMAND CH DEFAULT 'X'.
parameters: p_FILE1 AS CHECKBOX MODIF ID ABE USER-COMMAND CH DEFAULT 'X',
p_FILE2 AS CHECKBOX MODIF ID ABF USER-COMMAND CH.
parameters: P_DSNI(75) TYPE C MODIF ID ABG DEFAULT
'/usr/local/sapdata/amit.dat' LOWER CASE.
data: begin of itab occurs 0,
pernr(8),
sp1(1) value ',',
werks(4),
sp2(1) value ',',
persg(1),
sp3(1) value ',',
persk(2),
end of itab.
data: begin of itab1 occurs 0,
pernr(8),
sp1(1) value ',',
vorna(20),
sp2(1) value ',',
gbdat(8), "yyyymmdd
sp3(1) value ',',
natio(3),
end of itab1.
data: s_eof(3).
Check sy-ucomm = 'CH'.
AT SELECTION-SCREEN OUTPUT.
loop at screen.
if p_upld = 'X'.
if screen-group1 = 'ABC'.
SCREEN-ACTIVE = '0'.
MODIFY SCREEN.
ENDIF.
ELSEIF P_DWNLD = 'X'.
if screen-group1 = 'ABD'.
SCREEN-ACTIVE = '0'.
MODIFY SCREEN.
ENDIF.
if screen-group1 = 'XYZ'.
screen-active = '0'.
MODIFY SCREEN.
endif.
ENDIF.
if p_file1 = 'X'.
if screen-group1 = 'ABF'.
SCREEN-ACTIVE = '0'.
MODIFY SCREEN.
ENDIF.
if screen-group1 = 'ABG'.
P_DSNI = '/usr/local/sapdata/amit.dat'.
MODIFY SCREEN.
ENDIF.
ELSEIF P_file2 = 'X'.
if screen-group1 = 'ABE'.
SCREEN-ACTIVE = '0'.
MODIFY SCREEN.
ENDIF.
if screen-group1 = 'ABG'.
P_DSNI = '/usr/local/sapdata/amit1.dat'.
MODIFY SCREEN.
ENDIF.
ENDIF.
endloop.
start-of-selection.
file 1
IF P_FILE1 = 'X'.
if p_upld = 'X'.
OPEN DATASET P_DSNI FOR OUTPUT IN LEGACY TEXT MODE.
PERFORM FETCH_DATA.
STOP.
elseif p_dwnld = 'X'.
OPEN DATASET P_DSNI FOR INPUT IN LEGACY TEXT MODE.
IF SY-SUBRC NE 0.
MESSAGE E016 WITH
'Error opening seq. file, RC:' SY-SUBRC.
EXIT.
ENDIF.
CLEAR S_EOF.
DO.
PERFORM FETCH_file.
IF S_EOF EQ 'YES'. stop. ENDIF.
ENDDO.
endif.
file 2
ELSEIF P_FILE2 = 'X'.
if p_upld = 'X'.
OPEN DATASET P_DSNI FOR OUTPUT IN LEGACY TEXT MODE.
PERFORM FETCH_DATA1.
STOP.
elseif p_dwnld = 'X'.
OPEN DATASET P_DSNI FOR INPUT IN LEGACY TEXT MODE.
IF SY-SUBRC NE 0.
MESSAGE E016 WITH
'Error opening seq. file, RC:' SY-SUBRC.
EXIT.
ENDIF.
CLEAR S_EOF.
DO.
PERFORM FETCH_file2.
IF S_EOF EQ 'YES'. stop. ENDIF.
ENDDO.
endif.
ENDIF.
END-OF-SELECTION.
if p_file1 = 'X'.
if itab[] is not initial.
perform print_file1 tables itab.
else.
write:/ 'No records exists'.
endif.
elseif p_file2 = 'X'.
if itab1[] is not initial.
perform print_file2 tables itab1.
else.
write:/ 'No records exists'.
endif.
endif.
&----
*& Form FETCH_DATA
&----
text
----
--> p1 text
<-- p2 text
----
FORM FETCH_DATA .
SELECT * FROM PA0001 WHERE PERNR IN S_PERNR.
MOVE-CORRESPONDING PA0001 TO ITAB.
TRANSFER ITAB TO P_DSNI.
APPEND ITAB.
ENDSELECT.
CLOSE DATASET P_DSNI.
ENDFORM. " FETCH_DATA
&----
*& Form FETCH_file
&----
text
----
--> p1 text
<-- p2 text
----
FORM FETCH_file .
READ DATASET P_DSNI INTO itab.
append itab.
clear itab.
IF SY-SUBRC NE 0.
S_EOF = 'YES'. EXIT.
ENDIF.
ENDFORM. " FETCH_file
&----
*& Form print_file1
&----
text
----
-->P_ITAB text
----
FORM print_file1 tables P_ITAB structure itab .
write:/2 'EmpNo',
14 'Personnel Area',
34 'Emp Group',
47 'Emp SubGroup'.
skip 1.
loop at p_itab.
write:2 p_itab-pernr,
14 p_itab-werks,
34 p_itab-persg,
47 p_itab-persk.
skip 1.
endloop.
ENDFORM. " print_file1
&----
*& Form FETCH_DATA1
&----
text
----
--> p1 text
<-- p2 text
----
FORM FETCH_DATA1 .
SELECT * FROM PA0002 WHERE PERNR IN S_PERNR.
MOVE-CORRESPONDING PA0002 TO ITAB1.
TRANSFER ITAB1 TO P_DSNI.
APPEND ITAB1.
ENDSELECT.
CLOSE DATASET P_DSNI.
ENDFORM. " FETCH_DATA1
&----
*& Form FETCH_file2
&----
text
----
--> p1 text
<-- p2 text
----
FORM FETCH_file2 .
READ DATASET P_DSNI INTO itab1.
append itab1.
clear itab1.
IF SY-SUBRC NE 0.
S_EOF = 'YES'. EXIT.
ENDIF.
ENDFORM. " FETCH_file2
&----
*& Form print_file2
&----
text
----
-->P_ITAB1 text
----
FORM print_file2 TABLES P_ITAB1 STRUCTURE itab1.
write:/2 'Emp No',
12 'Name',
35 'Date of Birth',
50 'Nationality'.
skip 1.
loop at p_itab1.
write:2 p_itab1-pernr,
12 p_itab1-vorna,
35 p_itab1-gbdat,
50 p_itab1-natio.
skip 1.
endloop.
ENDFORM. " print_file2
‎2006 Dec 22 10:05 AM
CG3Z for upload to application server and CG3Y to transfer from appl server to presentation server
Message was edited by:
Ravi Kanth Talagana
‎2006 Dec 22 10:07 AM
hi riyaz,
check the transaction <b>CG3Z</b>
do reward point if it helps,
priya.
‎2006 Dec 22 10:08 AM