‎2008 Jan 21 6:35 AM
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
‎2008 Jan 21 6:38 AM
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
‎2008 Jan 21 6:40 AM
Hi,
Use
submit <prog name> exporting list to memory and return.
regards,
sudha
‎2008 Jan 21 6:41 AM
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
‎2008 Jan 21 6:52 AM
Check the use of statement "SUBMIT... AND RETURN EXPORTING LIST TO MEMORY."
http://help.sap.com/saphelp_nw70/helpdata/en/9f/dba50d35c111d1829f0000e829fbfe/content.htm
‎2008 Jan 21 7:03 AM
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