on 06-07-2007 9:03 AM
hi all
i had just started working on sap scripts n in se 71 i had created a lay out i had created 2 pages n in the pages i had created 3 header windows n footer windows n a main window my task is to print some thing in these so how can i get some data dispaly it on screen how to right the code by using there function call ..open_form, write_form, close_form n display some data in that n link my se38 code to my layout in se71 please reply soon ............i had done all the other seeting like paragraph , character format.................
thanxz
himanshu sharma
Hi,
Check these links..
http://esnips.com/doc/1ff9f8e8-0a4c-42a7-8819-6e3ff9e7ab44/sapscripts.pdf
http://esnips.com/doc/1e487f0c-8009-4ae1-9f9c-c07bd953dbfa/script-command.pdf
http://esnips.com/doc/64d4eccb-e09b-48e1-9be9-e2818d73f074/faqss.pdf
http://esnips.com/doc/cb7e39b4-3161-437f-bfc6-21e6a50e1b39/sscript.pdf
http://esnips.com/doc/fced4d36-ba52-4df9-ab35-b3d194830bbf/symbols-in-scripts.pdf
Regards,
Omkar.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Have a look at this for the code in se38.
*Tables declaration.
TABLES: vbak, vbap, kna1, vbpa.
*Structure declaration.
TYPES: BEGIN OF i_vbak,
vbeln TYPE vbeln_va,
erdat TYPE erdat,
kunnr TYPE kunag,
END OF i_vbak.
TYPES: BEGIN OF i_vbap,
vbeln TYPE vbeln_va,
posnr TYPE posnr_va,
matnr TYPE matnr,
arktx TYPE arktx,
arktx1 TYPE arktx,
kwmeng TYPE kwmeng,
meins TYPE meins,
netpr TYPE netpr,
END OF i_vbap.
TYPES: BEGIN OF i_kna1,
kunnr TYPE kunnr,
adrnr TYPE adrnr,
name1 TYPE name1_gp,
ort01 TYPE ort01_gp,
END OF i_kna1.
TYPES: BEGIN OF i_vbpa,
vbeln TYPE vbeln,
posnr TYPE posnr,
parvw TYPE parvw,
kunnr TYPE kunnr,
kunnr1 TYPE kunnr,
END OF i_vbpa.
TYPES: BEGIN OF i_final,
vbeln TYPE vbeln_va,
erdat TYPE erdat,
kunnr TYPE kunnr,
kunnr1 TYPE kunnr,
posnr TYPE posnr_va,
matnr TYPE matnr,
arktx TYPE arktx,
arktx1 TYPE arktx,
kwmeng TYPE kwmeng,
meins TYPE meins,
netpr TYPE netpr,
adrnr TYPE adrnr,
name1 TYPE name1_gp,
ort01 TYPE ort01_gp,
parvw TYPE parvw,
END OF i_final.
*Internal table declaration
DATA: it_vbak TYPE STANDARD TABLE OF i_vbak.
DATA: it_vbap TYPE STANDARD TABLE OF i_vbap.
DATA: it_kna1 TYPE STANDARD TABLE OF i_kna1.
DATA: it_vbpa TYPE STANDARD TABLE OF i_vbpa.
DATA: it_final TYPE STANDARD TABLE OF i_final.
*work area declaration
DATA: wa_vbak TYPE i_vbak,
wa_vbap TYPE i_vbap,
wa_kna1 TYPE i_kna1,
wa_vbpa TYPE i_vbpa,
wa_final TYPE i_final.
*variables declared with type workarea.
DATA: v_vbeln TYPE vbak-vbeln.
DATA: a_vbeln LIKE wa_final-vbeln,
v_posnr LIKE wa_final-posnr,
v_matnr LIKE wa_final-matnr,
v_arktx LIKE wa_final-arktx,
x_arktx LIKE wa_final-arktx,
v_zmeng LIKE wa_final-kwmeng,
v_meins LIKE wa_final-meins,
v_mwsbp LIKE wa_final-netpr,
v_kunnr LIKE wa_final-kunnr,
v_kunnr1 LIKE wa_final-kunnr1,
v_adrnr LIKE wa_final-adrnr,
v_name1 LIKE wa_final-name1,
v_ort01 LIKE wa_final-ort01,
v_erdat LIKE wa_final-erdat.
*DATA: v_amount TYPE netpr.
DATA: p_netpr LIKE wa_final-netpr.
data: p_kwmeng like wa_final-kwmeng.
*select options
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: s_vbeln FOR v_vbeln.
SELECTION-SCREEN END OF BLOCK blk1.
*at selection screen
AT SELECTION-SCREEN.
*Checks the sales order number exists in database.
SELECT vbeln INTO v_vbeln
UP TO 1 ROWS
FROM vbak
WHERE vbeln IN s_vbeln.
ENDSELECT.
*if no single data exists it displays error msgs.
IF sy-subrc <> 0.
MESSAGE e000.
ENDIF.
*start of selection.
START-OF-SELECTION.
----
PERFORM open_form.
----
SELECT vbeln
erdat
kunnr INTO CORRESPONDING FIELDS OF TABLE it_vbak
FROM vbak
WHERE vbeln IN s_vbeln.
IF sy-subrc = 0.
SORT it_vbak BY vbeln.
SELECT vbeln
posnr
matnr
arktx
kwmeng
meins
netpr INTO CORRESPONDING FIELDS OF TABLE it_vbap
FROM vbap
FOR ALL ENTRIES IN it_vbak
WHERE vbeln = it_vbak-vbeln.
ENDIF.
IF sy-subrc = 0.
SORT it_vbap BY vbeln posnr.
SELECT vbeln
posnr
parvw
kunnr INTO TABLE it_vbpa
FROM vbpa
FOR ALL ENTRIES IN it_vbap
WHERE vbeln = it_vbap-vbeln.
ENDIF.
IF sy-subrc = 0.
SORT it_vbpa BY vbeln.
ENDIF.
*move header data to final table.
LOOP AT it_vbap INTO wa_vbap.
READ TABLE it_vbak INTO wa_vbak WITH KEY vbeln = wa_vbap-vbeln
BINARY SEARCH.
IF sy-subrc = 0.
MOVE: wa_vbak-vbeln TO wa_final-vbeln,
wa_vbak-erdat TO wa_final-erdat,
wa_vbak-kunnr TO wa_final-kunnr.
*Move details data to final table.
MOVE: wa_vbap-posnr TO wa_final-posnr,
wa_vbap-matnr TO wa_final-matnr,
wa_vbap-arktx TO wa_final-arktx,
wa_vbap-kwmeng TO wa_final-kwmeng,
wa_vbap-meins TO wa_final-meins,
wa_vbap-netpr TO wa_final-netpr.
ENDIF.
*selecting the customer data as per kunnr in vbak table.
SELECT kunnr
adrnr
name1
ort01 INTO TABLE it_kna1
FROM kna1
WHERE kunnr = wa_vbak-kunnr.
*Move customer data to final table
READ TABLE it_kna1 INTO wa_kna1 WITH KEY kunnr = wa_vbak-kunnr
BINARY SEARCH.
IF sy-subrc = 0.
MOVE: wa_kna1-kunnr TO wa_final-kunnr,
wa_kna1-adrnr TO wa_final-adrnr,
wa_kna1-name1 TO wa_final-name1,
wa_kna1-ort01 TO wa_final-ort01.
ENDIF.
*Move partner data to final table.
READ TABLE it_vbpa INTO wa_vbpa WITH KEY vbeln = wa_vbap-vbeln
BINARY SEARCH.
IF sy-subrc = 0.
IF wa_vbpa-parvw = 'AG' . "sold to party
MOVE: wa_vbpa-parvw TO wa_final-parvw,
wa_vbpa-kunnr1 TO wa_final-kunnr1.
ELSEIF wa_vbpa-parvw = 'WE'. " ship to party
MOVE: wa_vbpa-parvw TO wa_final-parvw,
wa_vbpa-kunnr TO wa_final-kunnr.
ENDIF.
APPEND wa_final TO it_final.
CLEAR wa_final.
ENDIF.
ENDLOOP.
*End of selection.
END-OF-SELECTION.
*Display the data
----
PERFORM display_data.
PERFORM close_form.
----
&----
*& Form DISPLAY_DATA
&----
FORM display_data .
WRITE:/5 'SALES ORD',
15 'ITEM',
25 'MATERIAL',
40 'DESCRIPTION',
80 'UNIT',
90 'CUST',
96 'CITY',
105 'QUANTITY',
125 'AMOUNT'.
ULINE.
*Looping at final table into work area and moving it all into the variables.
LOOP AT it_final INTO wa_final.
a_vbeln = wa_final-vbeln.
v_posnr = wa_final-posnr.
v_matnr = wa_final-matnr.
v_arktx = wa_final-arktx+0(23).
x_arktx = wa_final-arktx+23(17).
v_zmeng = wa_final-kwmeng.
v_meins = wa_final-meins.
v_mwsbp = wa_final-netpr.
v_kunnr = wa_final-kunnr.
v_kunnr1 = wa_final-kunnr1.
v_adrnr = wa_final-adrnr.
v_name1 = wa_final-name1.
v_ort01 = wa_final-ort01.
v_erdat = wa_final-erdat.
AT NEW vbeln.
----
*Calling function start-form.
----
CALL FUNCTION 'START_FORM'
EXPORTING
form = 'Z8PA_SO'
EXCEPTIONS
form = 1
format = 2
unended = 3
unopened = 4
unused = 5
spool_error = 6
codepage = 7
OTHERS = 8.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
----
*calling function write form for window 3
----
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = ' '
FUNCTION = 'SET'
TYPE = 'BODY'
window = 'WINDOW3'
IMPORTING
PENDING_LINES =
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
----
*calling function write form for window 4
----
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = ' '
FUNCTION = 'SET'
TYPE = 'BODY'
window = 'WINDOW4'
IMPORTING
PENDING_LINES =
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
----
*calling function write form for window 5
----
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = ' '
FUNCTION = 'SET'
TYPE = 'BODY'
window = 'WINDOW5'
IMPORTING
PENDING_LINES =
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDAT.
----
PERFORM z_main.
----
WRITE:/5 a_vbeln,
15 v_posnr,
25 v_matnr,
40 v_arktx,
80 v_meins,
90 v_kunnr,
96 v_ort01,
105 v_zmeng,
125 v_mwsbp.
AT END OF vbeln.
----
PERFORM z_total.
----
AT LAST.
SUM.
WRITE: 'TOTAL',105 wa_final-kwmeng,
125 wa_final-netpr.
p_netpr = wa_final-netpr.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'TOTAL'
function = 'APPEND'
type = 'BOTTOM'
window = 'MAIN'
IMPORTING
PENDING_LINES =
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDAT.
CALL FUNCTION 'END_FORM'
IMPORTING
RESULT =
EXCEPTIONS
unopened = 1
bad_pageformat_for_print = 2
spool_error = 3
codepage = 4
OTHERS = 5
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDAT.
ENDLOOP.
ENDFORM. " DISPLAY_DATA
&----
*& Form open_form
&----
FORM open_form .
CALL FUNCTION 'OPEN_FORM'
EXPORTING
APPLICATION = 'TX'
ARCHIVE_INDEX =
ARCHIVE_PARAMS =
device = 'PRINTER'
DIALOG = 'X'
FORM = ' '
language = sy-langu
OPTIONS =
MAIL_SENDER =
MAIL_RECIPIENT =
MAIL_APPL_OBJECT =
RAW_DATA_INTERFACE = '*'
SPONUMIV =
IMPORTING
LANGUAGE =
NEW_ARCHIVE_PARAMS =
RESULT =
EXCEPTIONS
canceled = 1
device = 2
form = 3
OPTIONS = 4
unclosed = 5
mail_options = 6
archive_error = 7
invalid_fax_number = 8
more_params_needed_in_batch = 9
spool_error = 10
codepage = 11
OTHERS = 12
.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM. " open_form
&----
*& Form close_form
&----
FORM close_form .
CALL FUNCTION 'CLOSE_FORM'
IMPORTING
RESULT =
RDI_RESULT =
TABLES
OTFDATA =
EXCEPTIONS
unopened = 1
bad_pageformat_for_print = 2
send_error = 3
spool_error = 4
codepage = 5
OTHERS = 6
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " close_form
&----
*& Form Z_MAIN
&----
FORM z_main .
*----
calling function write form for main window.
*----
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'COLOUMN HEADINGS'
function = 'SET'
type = 'TOP'
window = 'MAIN'
IMPORTING
PENDING_LINES =
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
----
calling function write form for main window
----
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'DETAILS'
function = 'SET'
type = 'BODY'
window = 'MAIN'
IMPORTING
PENDING_LINES =
EXCEPTIONS
ELEMENT = 1
FUNCTION = 2
TYPE = 3
UNOPENED = 4
UNSTARTED = 5
WINDOW = 6
BAD_PAGEFORMAT_FOR_PRINT = 7
SPOOL_ERROR = 8
CODEPAGE = 9
OTHERS = 10
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " Z_MAIN
&----
*& Form Z_TOTAL
&----
FORM z_total .
ULINE.
SUM.
WRITE: 'SUB TOTAL:',105 wa_final-kwmeng,
125 wa_final-netpr.
ULINE.
SKIP.
p_netpr = wa_final-netpr.
p_kwmeng = wa_final-kwmeng.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'SUBTOTAL'
function = 'SET'
type = 'BOTTOM'
window = 'MAIN'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " Z_TOTAL
for writing code in se71,
select a window and goto the text button.
regards,
pritha
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
CALL FUNCTION 'OPEN_FORM'
EXPORTING
form = 'ZMEDRUCK_127867'.
CALL FUNCTION 'START_FORM'
EXPORTING
form = 'ZMEDRUCK_127867'.
LOOP AT it_ekpo.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'MAIN'
function = 'SET'
type = 'BODY'
window = 'MAIN'.
ENDLOOP.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'ADDRESS'
function = 'SET'
type = 'BODY'
window = 'ADDRESS'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'CONSGNEE'
function = 'SET'
type = 'BODY'
window = 'CONSGNEE'.
LOOP AT it_deldate.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'DELDATE'
function = 'SET'
type = 'BODY'
window = 'DELDATE'.
ENDLOOP.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'FOOTER'
function = 'SET'
type = 'BODY'
window = 'FOOTER'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'HEADER'
function = 'SET'
type = 'BODY'
window = 'HEADER'.
CALL FUNCTION 'END_FORM'.
CALL FUNCTION 'START_FORM'
EXPORTING
form = 'ZMEDRUCK_127867'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'MAIN '
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'MAIN'.
CALL FUNCTION 'END_FORM'.
CALL FUNCTION 'CLOSE_FORM'.
Regards,
Priyanka.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
83 | |
23 | |
11 | |
9 | |
8 | |
5 | |
5 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.