Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

sap script help

Former Member
0 Likes
613

hallow

i doing sap script in first time and after i finsh to buield it in se71 i take a program radey program to call to the form bbut i have problem that when i run the program

and i do print preview the program is stop go to the selection screen

what i forgat?

Regards

CALL FUNCTION 'OPEN_FORM'

EXPORTING

  • APPLICATION = 'TX'

  • ARCHIVE_INDEX =

  • ARCHIVE_PARAMS =

  • DEVICE = 'PRINTER'

DIALOG = 'X'

FORM = <b>'Z_EXAMPLE2'</b>

LANGUAGE = SY-LANGU

  • OPTIONS =

  • MAIL_SENDER =

  • MAIL_RECIPIENT =

  • MAIL_APPL_OBJECT =

  • RAW_DATA_INTERFACE = '*'

  • 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

OTHERS = 11

*----


CALL FUNCTION 'START_FORM'

EXPORTING

  • ARCHIVE_INDEX =

FORM = <b>'Z_EXAMPLE2'</b>

  • LANGUAGE = ' '

  • STARTPAGE = ' '

  • PROGRAM = ' '

  • MAIL_APPL_OBJECT =

  • IMPORTING

  • LANGUAGE =

EXCEPTIONS

FORM = 1

FORMAT = 2

UNENDED = 3

UNOPENED = 4

UNUSED = 5

SPOOL_ERROR = 6

OTHERS = 7

.

msy_subrc = SY-SUBRC .

.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
591

hi,

try like this

CALL FUNCTION 'WRITE_FORM'

EXPORTING

<b>ELEMENT = 'MELEMENT'

FUNCTION = 'MFUNCTION'</b>

TYPE = 'BODY'

WINDOW = MWINDOW

  • IMPORTING

  • PENDING_LINES =

EXCEPTIONS

ELEMENT = 1

FUNCTION = 2

TYPE = 3

UNOPENED = 4

UNSTARTED = 5

WINDOW = 6

BAD_PAGEFORMAT_FOR_PRINT = 7

SPOOL_ERROR = 8

OTHERS = 9

thanks & regards,

venkatesh

5 REPLIES 5
Read only

Former Member
0 Likes
591

Hi,

i think you have forgotten to use the function module

open_form

start_form

<b>write_form</b>

end_form

Close_form

reward points if helpful

thanks & regards,

venkatesh

Read only

0 Likes
591

hi venkatesh

thankes

i have this function in program and i dont change it .

what i have to change here?

Regards

CALL FUNCTION 'WRITE_FORM'

EXPORTING

ELEMENT = MELEMENT

FUNCTION = MFUNCTION

TYPE = 'BODY'

WINDOW = MWINDOW

  • IMPORTING

  • PENDING_LINES =

EXCEPTIONS

ELEMENT = 1

FUNCTION = 2

TYPE = 3

UNOPENED = 4

UNSTARTED = 5

WINDOW = 6

BAD_PAGEFORMAT_FOR_PRINT = 7

SPOOL_ERROR = 8

OTHERS = 9

.

msy_subrc = SY-SUBRC .

Read only

Former Member
0 Likes
591

Hi

See the sample code and

Write this sample program in SE38

and design the Script layout in SE71 with name 'ZSCRIPT_1'

and use the data from i_lfa1,i_ekko and i_ekpo

&----


*& Report ZTEST12121

*& SAPScripts Example 1

&----


REPORT ztest12121.

*DATABASE TABLES

TABLES: ekko,ekpo,lfa1.

*INTERNAL TABLES AND STRUCTURES

DATA i_ekko LIKE ekko.

DATA i_ekpo LIKE ekpo OCCURS 0 WITH HEADER LINE.

DATA i_lfa1 LIKE lfa1.

*PARAMETERS

PARAMETERS: p_ebeln LIKE ekko-ebeln.

*VARIABLES

DATA MAT TYPE STRING VALUE 'MAT NO'.

DATA iTe TYPE STRING VALUE 'ITEM NO'.

DATA QTY TYPE STRING VALUE 'QTY'.

DATA UOM TYPE STRING VALUE 'UOM'.

DATA NET TYPE STRING VALUE 'NET PRICE'.

Data var type integer value 0.

*DATABASE SELECTS

*Header data

SELECT SINGLE * FROM ekko INTO i_ekko WHERE ekko~ebeln = p_ebeln.

IF sy-subrc = 0.

*Item Data

SELECT * FROM ekpo INTO TABLE i_ekpo WHERE ekpo~ebeln = p_ebeln.

IF sy-subrc NE 0.

WRITE 'PURCHASE DOCUMENT ITEM DATA ERROR'.

ELSE.

*Vendor Details

SELECT SINGLE * FROM lfa1 INTO i_lfa1 WHERE lfa1~lifnr = i_ekko-lifnr.

IF sy-subrc NE 0.

WRITE 'VENDOR DOCUMENT ITEM DATA ERROR'.

ENDIF.

ENDIF.

ELSE.

WRITE 'THIS PURCHASE DOCUMENT NUMBER DOESNOT EXISTS'.

ENDIF.

CALL FUNCTION 'OPEN_FORM'

EXPORTING

  • APPLICATION = 'TX'

  • ARCHIVE_INDEX =

  • ARCHIVE_PARAMS =

  • DEVICE = 'PRINTER'

  • DIALOG = 'X'

form = 'ZSCRIPT_1'

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.

CALL FUNCTION 'WRITE_FORM'

EXPORTING

ELEMENT = 'OFFICEAD'

FUNCTION = 'SET'

TYPE = 'BODY'

WINDOW = 'OFFICEAD'

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

CALL FUNCTION 'WRITE_FORM'

EXPORTING

ELEMENT = 'PODET'

FUNCTION = 'SET'

TYPE = 'BODY'

WINDOW = 'PODET'

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

CALL FUNCTION 'WRITE_FORM'

EXPORTING

ELEMENT = 'TOP'

FUNCTION = 'SET'

TYPE = 'TOP'

WINDOW = 'MAIN'

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

LOOP AT I_EKPO.

var = i_ekpo-netpr * i_ekpo-menge.

CALL FUNCTION 'WRITE_FORM'

EXPORTING

ELEMENT = 'BODY'

FUNCTION = 'SET'

TYPE = 'BODY'

WINDOW = 'MAIN'

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDLOOP.

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.

<b>Reward points for useful Answers</b>

Regards

Anji

Read only

0 Likes
591

hi anji

thankes

i try like u say but when i run the program and when i push on print preview i have

pop up that say window officeid is not defiend for form zscript_1

what is wrong?

Read only

Former Member
0 Likes
592

hi,

try like this

CALL FUNCTION 'WRITE_FORM'

EXPORTING

<b>ELEMENT = 'MELEMENT'

FUNCTION = 'MFUNCTION'</b>

TYPE = 'BODY'

WINDOW = MWINDOW

  • IMPORTING

  • PENDING_LINES =

EXCEPTIONS

ELEMENT = 1

FUNCTION = 2

TYPE = 3

UNOPENED = 4

UNSTARTED = 5

WINDOW = 6

BAD_PAGEFORMAT_FOR_PRINT = 7

SPOOL_ERROR = 8

OTHERS = 9

thanks & regards,

venkatesh