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

Submit program

Former Member
0 Likes
718

Hi all

I am creating a Report program for which I need to execute another program first. That program has a output.When ever I run my program in the foreground the output of the other program shows in the screen. Then I need to go back(f3) and then rest of the program executes and my output gets displayed.

How do i supress the output of the other program I am submitting.

Regards

5 REPLIES 5
Read only

Former Member
0 Likes
675

Hi,

Please use addition: EXPORTING LIST TO MEMORY with SUBMIT... AND RETURN statement.

Note that you have to use implicitly import the data should you require.

Kind Regards

Eswar

Read only

S0025444845
Active Participant
0 Likes
675

Hi,

Use

submit <prog name> exporting list to memory and return.

regards,

sudha

Read only

Former Member
0 Likes
675

Hi,

use submit to spool and then read the spool to chk results.

Check this sample code.

  • ASSIGN A NAME TO A JOB

CONCATENATE sy-uname sy-datum sy-uzeit INTO w_jobname .

  • OPEN THE JOB & GET THE JOBCOUNT

CALL FUNCTION 'JOB_OPEN'

EXPORTING

  • DELANFREP = ' '

  • JOBGROUP = ' '

jobname = w_jobname

  • SDLSTRTDT = NO_DATE

  • SDLSTRTTM = NO_TIME

  • JOBCLASS =

IMPORTING

jobcount = w_jobcount

  • CHANGING

  • RET =

EXCEPTIONS

cant_create_job = 1

invalid_job_data = 2

jobname_missing = 3

OTHERS = 4

.

IF sy-subrc <> 0.

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

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

ENDIF.

CLEAR : wa_seltab.

  • PARAMETER 'COMPANY CODE'

wa_seltab-selname = 'KD_BUKRS'.

wa_seltab-sign = 'I'.

wa_seltab-option = 'EQ'.

wa_seltab-kind = c_s.

wa_seltab-low = po_code.

wa_seltab-high = space.

APPEND wa_seltab TO i_seltab.

CLEAR wa_seltab.

  • RADIO BUTTON 'OPEN ITEMS'

  • IF NOT po_opsel IS INITIAL.

wa_seltab-selname = 'X_OPSEL'.

wa_seltab-sign = 'I'.

wa_seltab-option = 'EQ'.

wa_seltab-kind = c_p.

wa_seltab-low = po_opsel.

APPEND wa_seltab TO i_seltab.

  • ENDIF.

CLEAR wa_seltab.

  • PARAMETER 'OPEN AT KEY DATE'

IF NOT po_stida IS INITIAL.

wa_seltab-selname = 'PA_STIDA'.

wa_seltab-sign = 'I'.

wa_seltab-option = 'EQ'.

wa_seltab-kind = c_p.

wa_seltab-low = po_stida.

  • ELSE.

  • wa_seltab-low = space.

  • ENDIF.

APPEND wa_seltab TO i_seltab.

ENDIF.

CLEAR wa_seltab.

  • RADIO BUTTON 'CLEARED ITEMS'

  • IF NOT po_clsel IS INITIAL.

wa_seltab-selname = 'X_CLSEL'.

wa_seltab-sign = 'I'.

wa_seltab-option = 'EQ'.

wa_seltab-kind = c_p.

wa_seltab-low = po_clsel.

APPEND wa_seltab TO i_seltab.

  • ENDIF.

CLEAR wa_seltab.

  • SELECT OPTIONS 'CLEARING DATE' - LOW & HIGH

wa_seltab-selname = 'SO_AUGDT'.

wa_seltab-kind = c_s.

IF NOT so_augdt-low IS INITIAL AND NOT so_augdt-high IS INITIAL.

wa_seltab-option = 'BT'.

wa_seltab-sign = 'I'.

wa_seltab-low = so_augdt-low.

wa_seltab-high = so_augdt-high.

ELSEIF so_augdt-low IS INITIAL AND NOT so_augdt-high IS INITIAL.

wa_seltab-option = 'BT'.

wa_seltab-sign = 'I'.

wa_seltab-low = '00000000'.

wa_seltab-high = so_augdt-high.

ELSEIF NOT so_augdt-low IS INITIAL AND so_augdt-high IS INITIAL.

wa_seltab-option = 'EQ'.

wa_seltab-sign = 'I'.

wa_seltab-low = so_augdt-low.

wa_seltab-high = '00000000'.

ENDIF.

APPEND wa_seltab TO i_seltab.

CLEAR wa_seltab.

SUBMIT (c_fbl1n)

    • VIA SELECTION-SCREEN*

TO SAP-SPOOL

VIA

JOB w_jobname " JOBNAME

NUMBER w_jobcount " UNIQUE ID OF JOB

DESTINATION c_print

IMMEDIATELY ' '

KEEP IN SPOOL c_prt_kspool

LAYOUT c_layout

WITHOUT SPOOL DYNPRO "SKIP PRINT DIALOG SCREEN

WITH SELECTION-TABLE i_seltab " USER INPUT

AND RETURN.

COMMIT WORK.

  • CLOSE THE JOB

CALL FUNCTION 'JOB_CLOSE'

EXPORTING

  • AT_OPMODE = ' '

  • AT_OPMODE_PERIODIC = ' '

  • CALENDAR_ID = ' '

  • EVENT_ID = ' '

  • EVENT_PARAM = ' '

  • EVENT_PERIODIC = ' '

jobcount = w_jobcount

jobname = w_jobname

  • LASTSTRTDT = NO_DATE

  • LASTSTRTTM = NO_TIME

  • PRDDAYS = 0

  • PRDHOURS = 0

  • PRDMINS = 0

  • PRDMONTHS = 0

  • PRDWEEKS = 0

  • PREDJOB_CHECKSTAT = ' '

  • PRED_JOBCOUNT = ' '

  • PRED_JOBNAME = ' '

  • SDLSTRTDT = NO_DATE

  • SDLSTRTTM = NO_TIME

  • STARTDATE_RESTRICTION = BTC_PROCESS_ALWAYS

strtimmed = 'X'

  • TARGETSYSTEM = ' '

  • START_ON_WORKDAY_NOT_BEFORE = SY-DATUM

  • START_ON_WORKDAY_NR = 0

  • WORKDAY_COUNT_DIRECTION = 0

  • RECIPIENT_OBJ =

  • TARGETSERVER = ' '

  • DONT_RELEASE = ' '

  • TARGETGROUP = ' '

  • DIRECT_START =

  • IMPORTING

  • JOB_WAS_RELEASED =

  • CHANGING

  • RET =

EXCEPTIONS

cant_start_immediate = 1

invalid_startdate = 2

jobname_missing = 3

job_close_failed = 4

job_nosteps = 5

job_notex = 6

lock_failed = 7

invalid_target = 8

OTHERS = 9

.

IF sy-subrc <> 0.

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

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

ENDIF.

CLEAR : w_spool_number.

REFRESH : i_jobsteplist.

  • CHECK WHETHER STATUS OF JOB IS COMPLETED OR CANCELLED

WHILE 1 = 1.

  • GET THE JOB STEPLIST WHICH HAS THE SPOOL NUMBER

CALL FUNCTION 'BP_JOB_READ'

EXPORTING

job_read_jobcount = w_jobcount

job_read_jobname = w_jobname

job_read_opcode = '35'

  • JOB_STEP_NUMBER =

IMPORTING

job_read_jobhead = wa_jobhead

TABLES

job_read_steplist = i_jobsteplist

  • CHANGING

  • RET =

EXCEPTIONS

invalid_opcode = 1

job_doesnt_exist = 2

job_doesnt_have_steps = 3

OTHERS = 4

.

IF sy-subrc <> 0.

  • MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

  • WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

  • IF STATUS OF JOB IS COMPLETED(F) OR CANCELLED(A)

  • READ THE JOBSTEPLIST & GET THE SPOOL NUMBER

IF wa_jobhead-status = c_a OR wa_jobhead-status = c_f.

READ TABLE i_jobsteplist INTO wa_jobsteplist INDEX 1.

CHECK wa_jobsteplist-listident <> space.

w_spool_number = wa_jobsteplist-listident.

EXIT.

ENDIF.

ENDWHILE.

Regards,

Pankaj

Read only

Former Member
0 Likes
675

Check the use of statement "SUBMIT... AND RETURN EXPORTING LIST TO MEMORY."

http://help.sap.com/saphelp_nw70/helpdata/en/9f/dba50d35c111d1829f0000e829fbfe/content.htm

Read only

Former Member
0 Likes
675

Hi,

Are you working in ECC 6.0? In that case implicit enhancement option can be used and in that program you can add your code.

Thanks and regards,

Atanu