Regarding SUBMIT Statement
Hi,
I am calling a batch job (B) (in back groung) using SUBMIT statement, from a report program (Say A). But I have to Pass some internal tables and few variable to the Batch job (B).
Can someone tell me how I can pass the Internal tables and variables ? Is it possible to pass through SUBMIT statement only? Is there some other than the use of Import-Export statement?
Thanks and regards,
Pankaj Bist.
Hi pankaj,
SUBMIT <PROGRAM NAE> = ds_name " Creating batch input session
WITH fl_check = fl_check
WITH os_xon = os_xon
WITH xnonunic = xnonunic
WITH callmode = callmode
WITH max_comm = max_comm
WITH pa_xprot = pa_xprot
WITH anz_mode = anz_mode
WITH update = update
WITH xpop = xpop
WITH xlog = xlog
WITH xinf = xinf AND RETURN.
u can pass the variables like this.
the variables which i have pass to the program all are the selection screen aprameteers of the program .
I hope this will work for you.
Thanks,
Similar Messages
-
Regarding SUBMIT statement - to process a program in background
Hi All,
I have issue of submitting a program in background and also i need to process the no of records come from program by splitting them by 1000(n).
First of all i have program whose code is like following:
<b>REPORT z_update_material_master.</b>
TYPES: BEGIN OF t_marc,
matnr LIKE marc-matnr, "Material Number
werks LIKE marc-werks, "Plant
beskz LIKE marc-beskz, "Procurement Type
sobsl LIKE marc-sobsl, "Special procurement type
fhori LIKE marc-fhori, "Scheduling Margin Key for Floats
dzeit LIKE marc-dzeit, "In-house production time
plifz LIKE marc-plifz, "Planned delivery time in days
webaz LIKE marc-webaz, "Goods rcpt processing time
pwwrk LIKE t460a-wrk02, "Production plant in planned order
erhor LIKE t436a-erhor, "Opening periodr
zlt TYPE p DECIMALS 3, "Total replenishment lead time
ztlt TYPE p DECIMALS 3, "Total replenishment lead time
wzeit TYPE p DECIMALS 3, "Total replenishment lead time
upd(1) TYPE c, "UPDATE INDICATER
ind TYPE c,
END OF t_marc.
DATA: i_marc TYPE SORTED TABLE OF t_marc INITIAL SIZE 0
WITH HEADER LINE
WITH NON-UNIQUE KEY matnr werks,
i_marc_rpt LIKE i_marc OCCURS 0 WITH HEADER LINE.
DATA: l_plantdata LIKE bapi_marc,
l_headdata LIKE bapimathead,
l_plantdatax LIKE bapi_marcx,
l_tabix LIKE sy-tabix.
CONSTANTS: c_s TYPE c VALUE 'S',
c_x TYPE c VALUE 'X'.
DATA i_temp_bapi_return LIKE bapi_matreturn2
OCCURS 0 WITH HEADER LINE.
DATA BEGIN OF i_temp_zppe0091_01 OCCURS 0.
INCLUDE STRUCTURE zppe0091_01.
DATA: END OF i_temp_zppe0091_01.
DATA: l_tab_nam LIKE rstable-tabname VALUE 'ZPPE0091_01'.
SELECT * FROM zppe0091_01
INTO CORRESPONDING FIELDS OF TABLE i_temp_zppe0091_01.
IF sy-subrc EQ 0.
LOOP AT i_temp_zppe0091_01 WHERE upd = c_x.
l_tabix = sy-tabix.
l_headdata-material = i_temp_zppe0091_01-matnr.
l_plantdata-plant = i_temp_zppe0091_01-werks.
l_plantdata-replentime = i_temp_zppe0091_01-wzeit.
l_plantdatax-replentime = c_x.
CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
EXPORTING
headdata = l_headdata
plantdata = l_plantdata
plantdatax = l_plantdatax
TABLES
returnmessages = i_temp_bapi_return.
IF NOT i_temp_bapi_return[] IS INITIAL.
READ TABLE i_temp_bapi_return WITH KEY type = c_s.
IF sy-subrc EQ 0.
i_marc_rpt-matnr = i_temp_zppe0091_01-matnr.
i_marc_rpt-werks = i_temp_zppe0091_01-werks.
APPEND i_marc_rpt. CLEAR i_marc_rpt.
ELSE.
i_temp_zppe0091_01-upd = space.
MODIFY i_temp_zppe0091_01 INDEX l_tabix TRANSPORTING upd.
ENDIF.
ENDIF.
ENDLOOP.
ENDIF.
Now i want to call this program from another program that is already exists by using <b>SUBMIT</b>
statement in background and i need to process this program by dividing records by <b>1000</b> into seperate session.
how can i do it. Can any body tell me the solution with syntax.
I might get lot of records from above program so i want to split them into diffrent sessions based on number of records(1000).
can any body give me the solution.
Thanks in advance.
Thanks & Regards,
Rayeez.Try implementing the following code. Use the code accordingly...
MOVE 100 TO c_recs_b4_split.
IF num_src_trans > c_recs_b4_split.
target_break = num_src_trans / p_thread.
ELSE.
target_break = num_src_trans + 1.
ENDIF.
wa_subbch = 1.
last_index = 1.
No batch split required if total recrods less than 100
IF num_src_trans < c_recs_b4_split.
CLEAR : range_btch.
REFRESH: range_btch.
IF wa_subbch = p_thread.
target_break = num_src_trans.
ENDIF.
MOVE 'S_SRCTRN' TO range_wa-selname.
MOVE 'S' TO range_wa-kind .
MOVE 'I' TO range_wa-sign .
MOVE 'EQ' TO range_wa-option .
LOOP AT itab_src_trans INTO st_src_trans.
MOVE st_src_trans-src_tran_id TO range_wa-low.
APPEND range_wa TO range_btch.
ENDLOOP.
Step 3 Submit the batch.
v_job_no = v_job_no + 1.
PERFORM submit_tp_jobs.
ELSE.
DO.
Step 1 Collect data for the target count
CLEAR : range_btch.
REFRESH: range_btch.
IF wa_subbch = p_thread.
target_break = num_src_trans.
ENDIF.
MOVE 'S_SRCTRN' TO range_wa-selname.
MOVE 'S' TO range_wa-kind .
MOVE 'I' TO range_wa-sign .
MOVE 'EQ' TO range_wa-option .
IF wa_subbch = p_thread.
target_break = num_src_trans - v_cnt .
ENDIF.
LOOP AT itab_src_trans INTO st_src_trans FROM last_index.
last_index = sy-tabix.
batch_total = batch_total + 1.
IF batch_total <= target_break.
MOVE st_src_trans-src_tran_id TO range_wa-low.
APPEND range_wa TO range_btch.
ELSE.
EXIT.
ENDIF.
v_cnt = v_cnt + 1.
ENDLOOP.
CLEAR batch_total.
Step 2 Submit the batch.
v_job_no = v_job_no + 1.
PERFORM submit_tp_jobs.
ADD 1 TO wa_subbch.
IF wa_subbch > p_thread.
EXIT.
ENDIF.
ENDDO.
ENDIF.
FORM submit_tp_jobs .
DATA : l_jobcount LIKE tbtcjob-jobcount,
l_jobrelease LIKE btch0000-char1,
w_job_flag VALUE 'X',
w_process_mode,
w_user_print_params LIKE pri_params.
l_jobname = p_batch.
CONCATENATE 'TP_' l_jobname '_' v_job_no INTO l_jobname.
CONDENSE l_jobname NO-GAPS.
w_process_mode = ' '.
IF NOT range_btch[] IS INITIAL.
PERFORM create_post_ctrl.
CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = l_jobname
IMPORTING
jobcount = l_jobcount.
SUBMIT zfi_pc_tran_proc
AND RETURN
WITH p_batch = p_batch
WITH p_jobid = p_jobid
WITH p_mode = w_process_mode
WITH p_subbch = wa_subbch
WITH p_jobq = p_jobid
WITH p_cntlmt = p_cntlmt
WITH p_tpiop = p_iop
WITH SELECTION-TABLE range_btch
USER sy-uname
VIA JOB l_jobname NUMBER l_jobcount
TO SAP-SPOOL
SPOOL PARAMETERS w_user_print_params
WITHOUT SPOOL DYNPRO.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
jobcount = l_jobcount
jobname = l_jobname
strtimmed = 'X'
IMPORTING
job_was_released = l_jobrelease
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.
ENDIF.
ENDFORM. " submit_tp_jobs
Pl. add the points.... -
Regarding for Submit statement
Hi,
am Using below statement in my called program .i should use this statement in my called program it's must. if we use this statement am not able to come back to called program.
how to returm from calling program to called program by using the below statement.
SUBMIT rqmell10 WITH FREE SELECTIONS
it_texpr .Hi,
<li>Your wording seems to be not correct.
<li>Lets say we have two programs A and B. If we call program B in program A. We call A as Calling program and B as called program.
<li>Try this way to use SUBMIT statement.
REPORT zcalling_program.
DATA: it_rsparams TYPE STANDARD TABLE OF rsparams,
wa_rsparams LIKE LINE OF it_rsparams.
wa_rsparams-selname = 'S_MATNR'. "Screen field name of called program
wa_rsparams-kind = 'S'. "S=Select-options P=Parameters
wa_rsparams-sign = 'I'.
wa_rsparams-option = 'EQ'.
wa_rsparams-low = '11010'.
wa_rsparams-high = space.
SUBMIT zcalled_program VIA SELECTION-SCREEN WITH SELECTION-TABLE it_rsparams AND RETURN.
Thanks
Venkat.O -
How to skip the alv list when submit a report by SUBMIT statement?
Dear Experts,
I have to submit a report(RMVKON00) for a special request in my add-on program, I use the following statment:
SUBMIT RMVKON00
AND RETURN EXPORTING LIST TO MEMORY.
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
LISTOBJECT = ABAPLIST_TAB
EXCEPTIONS
NOT_FOUND = 1
OTHERS = 2.
CALL FUNCTION 'LIST_TO_ASCI'
* EXPORTING
* LIST_INDEX = -1
* WITH_LINE_BREAK = ' '
TABLES
LISTASCI = LISTASCI_TAB[]
LISTOBJECT = ABAPLIST_TAB
EXCEPTIONS
EMPTY_LIST = 1
LIST_INDEX_INVALID = 2
OTHERS = 3
But it still display the alv list , and I must click button 'BACK' ,then it return my add on program.
I hope to skip the alv list (does not display the alv list ) .
Would you like to help me?
Thanks and Best Regards,
Colin.
Edited by: Colin on Jan 8, 2010 10:09 AMHi Colin,
I dont think you would be able to skip the ALV output using SUBMIT. However try changing the value of sy-lsind after the submit statement.
SUBMIT RMVKON00
AND RETURN EXPORTING LIST TO MEMORY.
sy-lsind = sy-lsind - 1.
If that doesnt work then try using JOB_START JOB_SUBMIT, JOB_CLOSE...
Thanks,
Best regards,
Prashant -
How to send report output from SUBMIT statement
Hi,
I need to develop one report whcih can be use to send any report output in mail as attachment in txt of execl format. So i will be using SUBMIT statement to execute the report in my new report and i need to convert the reportout in txt or excel format and need to send as attachment in mail. This new report can be use to execute any report which may have ALV GRid, Normal outout screen. So what could be the best way to develop this kind of report.
Br,
Piyush>
piyush mathur wrote:
> Hi Suhas,
>
> LIST_TO_ASCI will give me data in lines. and its difficult to separate the columns in another internal table for attachment file. As this report is going to use to send any report output so i can not fixed the delimiter. So i am looking some function which can split the data in columns when I am reading from List.
> Br,
> Piyush
No need to seperate nothing additionally, this will come automatically in the attached file. Draft below
DATA list_tab TYPE TABLE OF abaplist.
SUBMIT your_report EXPORTING LIST TO MEMORY
AND RETURN.
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
listobject = list_tab
EXCEPTIONS
not_found = 1
OTHERS = 2.
DATA string_tab TYPE list_string_table.
"use table type appropriate for attchement
DATA ascii_tab TYPE soli_tab.
CALL FUNCTION 'LIST_TO_ASCI'
TABLES
listasci = ascii_tab
listobject = list_tab.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
filename = 'C:\test.txt'
filetype = 'ASC'
TABLES
data_tab = ascii_tab.
DATA go_email_doc TYPE REF TO cl_document_bcs.
go_email_doc = cl_document_bcs=>create_document(
i_type = 'TXT'
go_email_doc->add_attachment( i_attachment_type = 'TXT'
i_attachment_subject = 'My Attachment'
i_att_content_text = ascii_tab ).
Regards
Marcin -
Submit statement in ABAP program
Hi All,
I am using two submit statements in my program for two different reports. When i run the program i get the output screens of the two reports at the ouptut. Is there any way i can hide the user seeing the output screens of the two programs and display only the output screen of my program. If you have any clues please post it.
Thanks & Regards,
Rahul RathiYou can call executable programs from other ABAP programs using the following statement:
SUBMIT <rep>|(<field>) [AND RETURN] [<options>].
You can either specify the name of the program you want to call statically by entering the program name in the code of the calling program, or dynamically by specifying the name of a field (in parentheses) containing the name of the program. If the system cannot find the specified executable program when trying to execute the SUBMIT statement, a runtime error occurs.
If you omit the AND RETURN addition, all data and list levels of the calling program (the entire internal session) are deleted. After the called executable program has finished, control returns to the level from which you started the calling program.
If you use AND RETURN, the system stores the data of the calling executable program and returns to the calling after processing the called program. The system resumes executing the calling program at the statement following the call.
The SUBMIT statement has a set of additions <options> for passing data to the called program and specifying various other processing options. Some of them are described in the following sections:
Have a look at below link. It will help you.
http://www.sapdevelopment.co.uk/reporting/rep_submit.htm
http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9dd035c111d1829f0000e829fbfe/content.htm
Best Regards,
Vibha
*Please mark all the helpful answers -
How to pass radiobuttons using a submit statements.
Hi All,
Can anyone tell me how to pass radiobuttons using Submit statement.
My problem is that I am able to pass one select option and one parameter using the statement:
submit (v_repid) to sap-spool without spool dynpro
spool parameters s_print_parms
using selection-screen '1000' WITH SELECTION-TABLE t_rspar_tab
and return.
This selection screens got to check selections based on 2 radio buttons available in the selection screen which also i need to pass through SUBMIT.Please let me know how do i pass this to the Submit statement.
Thankx in advance...
Helpful answers will be rewarded fully...Hi Susanth,
Create Variant for the calling program, Give that variant( here in the below program variant for calling program that I created is VAR1) in the calling program in SUBMIT Statement.
<b>
CALLING PROGRAM:
</b>
data:
w_variant(5) TYPE c VALUE 'VAR1'.
SUBMIT YH625_CALLED_PROGRAM USING SELECTION-SET w_variant.
<b>CALLING PROGRAM:</b>
TABLES spfli.
parameters:
w_radio1 RADIOBUTTON GROUP g1,
w_radio2 RADIOBUTTON GROUP g1.
SELECT-OPTIONS s_table FOR spfli-carrid.
WRITE '*************** This is Called program output **********************'.
Hope this solves your problem.
If you any query you are welcome.
Regards,
V.Raghavender. -
Using a layout in SUBMIT statement
Hi,
I am calling a program from another program using a SUBMIT statement. I'm also using a layout to do so.
SUBMIT rffmepgax
WITH s_fonds = s_fund-low
WITH s_fictr = s_fc-low
WITH s_hkont = c_gl
WITH p_per_fr = s_poper-low
WITH p_per_to = s_poper-high
WITH p_fyr_fr = s_year-low
WITH p_fyr_to = s_year-low
WITH s_fipex = c_citem
>>> WITH p_disvar = '/ZTRAVEL'
WITH p_maxsel = c_max
WITH s_wrttp = c_vt1
WITH s_wrttp = c_vt2
WITH FREE SELECTIONS texpr
AND RETURN
EXPORTING LIST TO MEMORY.
The problem is that /ZTRAVEL is a public layout that anyone can change. I can rewrite the code to use a user-specific layout, but then only I can run the program. If anyone else tries, it stops and says the layout doesn't exist.
Is it possible to create a public layout that cannot be changed by anyone? What is the t-code for this?
thanks,
KevinHi
USING SELECTION-SET <var>
This addition tells the system to start the called program with the variant var
You specify the variant in the quotes.
Check the below links
http://help.sap.com/saphelp_nw04s/helpdata/en/9f/dba51a35c111d1829f0000e829fbfe/frameset.htm
regarding calling another program from current report
Hope this helps
Regards
Shilpa -
How to use Submit Statement for mutiple Spools.
Hi Gurus,
I have a requirement wherein I need to Submit a Report Program to SAP-SPOOL which generates output for multiple Idocs.
For each Idoc I need to attach the spool to a particular object_id.
As of now I am doing this by putting the Submit statement in a loop.
I want to meet the same functionality without using a loop for different Idocs.
Ex.
LOOP AT IDOCS.
CALL FUNCTION 'GET_PRINT_PARAMETERS'
CALL FUNCTION 'JOB_OPEN'
IF sy-subrc = 0.
SUBMIT YFAPINV_IDOC_RPTS TO SAP-SPOOL "USING SELECTION-SCREEN '1000'
WITHOUT SPOOL DYNPRO
SPOOL PARAMETERS print_parameters
WITH CREDATE IN CREDATE
WITH CRETIME IN CRETIME
WITH DOCNUM IN DOCNUM
WITH VENDOR IN VENDOR
WITH V_INVOIC IN V_INVOIC
WITH MESCODE IN MESCODE
WITH DOCSTAT IN DOCSTAT
WITH DC_NBR IN DC_NBR
WITH DOC_TYPE IN DOC_TYPE
WITH S_BSART IN S_BSART
WITH ap1_flag eq 'X'
AND RETURN.
IF sy-subrc EQ 0.
CALL FUNCTION 'JOB_CLOSE'
ENDIF.
ENDIF.
SELECT rqident rqcretime FROM tsp01
INTO (rqident,rqcretime)
WHERE rqowner = sy-uname
ORDER BY rqcretime DESCENDING.
EXIT.
ENDSELECT.
IF rqident IS NOT INITIAL.
CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
DATA l_line TYPE docs-lines.
LOOP AT l_tline.
CLEAR l_line.
MOVE l_tline-tdline TO l_line.
l_docs-lines = l_line.
APPEND l_docs.
ENDLOOP.
ENDIF.Hi,
Each submit will create only one spool. So I dont think this is possible. Yes what you can do though is that submit the program for all the IDocs at once ( provided your program YFAPINV can handle this) and then process the spool and separate the output for each IDoc after you retrieve the data from spool.
To retrieve the data from the spool, you can use the function 'RSPO_RETURN_ABAP_SPOOLJOB' pass the spool request number and it will return you a internal table with the spool data.
regards,
Advait -
Create spool for background jobs which uses submit statement
Hi Gurus,
I have a quick question regarding the backgroud jobs. When we run a program in the background , it should create a spool for us, but, the problem comes when I am running a program in the background, its not creating the spool. This program uses SUBMIT statement. This program collects the data and it will submit to the other program and then retuen. In this case, its not creating a spool. Its very important for us to look at the spool for this program. Does anybody cam across this kind of problem? I need ur inputs.
Thanks in advance, <REMOVED BY MODERATOR>
Regards,
Srinivas.
Edited by: Alvaro Tejada Galindo on Mar 18, 2008 4:31 PMhi check this link ...
Scheduling a submitable program as a background task with the number number in a background request name. After scheduling, the background task is completed by function module JOB_CLOSE and released immediately.
DATA: number TYPE tbtcjob-jobcount,
name TYPE tbtcjob-jobname VALUE 'JOB_TEST',
print_parameters TYPE pri_params.
CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = name
IMPORTING
jobcount = number
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.
IF sy-subrc = 0.
SUBMIT submitable TO SAP-SPOOL
SPOOL PARAMETERS print_parameters
WITHOUT SPOOL DYNPRO
VIA JOB name NUMBER number
AND RETURN.
IF sy-subrc = 0.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
jobcount = number
jobname = name
strtimmed = 'X'
EXCEPTIONS
cant_start_immediate = 1
invalid_startdate = 2
jobname_missing = 3
job_close_failed = 4
job_nosteps = 5
job_notex = 6
lock_failed = 7
OTHERS = 8.
IF sy-subrc <> 0.
ENDIF.
ENDIF.
ENDIF.
https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=backgroundsubmit&adv=false&sortby=cm_rnd_rankvalue
sy-subrc Meaning
0 Background task scheduled successfully.
4 Scheduling cancelled by user on the selection screen.
8 Error during scheduling, i.e. when accessing JOB_SUBMIT internally.
12 Error in internal number assignment.
regards,
venkat.
Edited by: venkat appikonda on Mar 18, 2008 6:32 PM -
Problem in spool generation using SUBMIT statement
Hi Experts,
I am facing a problem in getting the spool no using the SUBMIT statemet.I am exporting an internal table with some data and then importing the same in another dummy program to get the ALV list output.This dummy program is called using the SUBMIT TO SAP-SPOOL statement.
The code is as follows:
Moderator message - Please respect the 2,500 character maximum when posting. Post only the relevant portions of code
The trouble is the submit statement is not calling the dummy program in this case.What can be the problem here and how can it be resolved.In my dummy program I am simply using the exported table to convert into list display so as to get a spool no. for it.
My objective is to get the spool no. for this sothat I can convert this spool to PDF.
Thanks and Regards
Abhishek
Edited by: abhishek singh on Oct 27, 2009 9:26 PM
Edited by: abhishek singh on Oct 27, 2009 9:27 PM
Edited by: abhishek singh on Oct 27, 2009 9:29 PM
Edited by: Rob Burbank on Oct 27, 2009 4:41 PMHi Experts ,
I am posting the code again:
CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = lv_name
IMPORTING
jobcount = lv_number
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.
IF sy-subrc = 0.
CALL FUNCTION 'GET_PRINT_PARAMETERS'
EXPORTING
archive_mode = gc_spool_print "For print = '1'
no_dialog = abap_true
IMPORTING
out_parameters = lv_print_parameters
valid = lv_valid_flag
EXPORT fui_fin_split TO MEMORY ID 'CUSTOMER'.
SUBMIT zvrr9333_dummy TO SAP-SPOOL
SPOOL PARAMETERS lv_print_parameters
WITHOUT SPOOL DYNPRO
VIA JOB lv_name NUMBER lv_number
AND RETURN.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
jobcount = lv_number
jobname = lv_name
strtimmed = abap_true "Immediate Start
MESSAGE 'Spool not created'(e15) TYPE gc_success.
ENDIF.
SELECT jobname
jobcount
stepcount
listident
FROM tbtcp
INTO TABLE gi_spool
WHERE jobname EQ fuv_name
AND jobcount EQ fuv_number.
IF sy-subrc EQ 0.
READ TABLE gi_spool INTO lw_spool INDEX 1.
fcv_spoolno = lw_spool-listident.
ENDIF.
SELECT jobname
jobcount
stepcount
listident
FROM tbtcp
INTO TABLE gi_spool
WHERE jobname EQ fuv_name
AND jobcount EQ fuv_number.
IF sy-subrc EQ 0.
READ TABLE gi_spool INTO lw_spool INDEX 1.
fcv_spoolno = lw_spool-listident.
ENDIF. -
A question About SUBMIT statement
Hi,
By SUBMIT statement, i can trigger another report. If the called report runs into dump, how can i detech/catch the dump in the calling report? I tested. It seems impossible to catch the dump. The calling report will also dump.
My question is, if the called report runs into dump, how to detect the dump and avoid dump in calling report?
Thanks in advance,
Best Regards, Johnney.hi
you can catch this kind of error or exeption from the respective report
then pass this error or exeception to the calling report
go through the example I am giving , ti have done it like this only
SUBMIT zgurep03 AND RETURN WITH SELECTION-TABLE li_seltab .
then in the called reprot
*Check ledger
SELECT SINGLE * FROM t881 WHERE rldnr = p_rldnr.
IF sy-subrc NE 0.
SET CURSOR FIELD 'P_RLDNR'.
MESSAGE e448 WITH p_rldnr
MESSAGE e446 INTO lv_text .
lv_type = 'E'.
Capturing the error messages.
EXPORT lv_text TO MEMORY ID 'TX'(004).
EXPORT lv_type TO MEMORY ID 'TP'(005).
in calling report
IMPORT gv_type1 TO gv_type FROM MEMORY ID 'TP'.
IMPORT gv_text1 TO gv_text FROM MEMORY ID 'TX'.
preparing error message in the callge report for the calling report
PERFORM prepare_message
USING sy-msgid
lv_msgno
lv_msgv1
lv_msgv2
lv_msgv3
lv_msgv4
CHANGING gv_text.
preparing error message
FORM prepare_message USING p_sy_msgid
p_sy_msgno
p_sy_msgv1
p_sy_msgv2
p_sy_msgv3
p_sy_msgv4
CHANGING p_gv_text.
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
id = p_sy_msgid
lang = 'EN'
no = p_sy_msgno
v1 = p_sy_msgv1
v2 = p_sy_msgv2
v3 = p_sy_msgv3
v4 = p_sy_msgv4
IMPORTING
msg = gv_text
EXCEPTIONS
not_found = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
I guess this will solve your problem
Regards
Prashant -
Avoid ALV output screen in submit statement
hello,
I have created one FM.in that FM i am calling one zreport using submit statement as i want to access that zreport's internal table.so i have done that using IMPORT and EXPORT statement and i am getting values in my FM.
but my problem is when i execute that FM it stops and display the ALV output of zreport and then when i press back button it gives me FM's output.i dont want that ALV output.can anybody help me that how to omit this output screen?
regards
soniya s.Hi,
Use option EXPORTING LIST TO MEMORY with statement SUBMIT.
Regards,
Nikhil
Edited by: Nikhil Kayal on May 13, 2009 1:32 PM -
SUBMIT statement using variant
Hi Gurus,
i am trying to use execute a variant , and that variant has to be submitted in memory.(i.e i have three variants A,B,C whenever i run the report using variant A then that fields only has to be passed to memory) , but instead of that , even if i am using varinat B , but by defaul it is taking another variant which contains all the fields.I think my issue is clear.i am using this submit statement.
SUBMIT (sy-repid)
AND RETURN
EXPORTING LIST TO MEMORY
WITH SELECTION-TABLE i_selscr.
pleasehelp me regarding this ASAP.
Thanks and regards,
RajeshwarHi Rajeshwar
You can submit it by using variant name also:
Submit <Report> USING SELECTION-SET variant .
Check this link:
http://sapdevelopment.co.uk/reporting/rep_submit.htm
http://help.sap.com/abapdocu/en/ABAPSUBMIT_SELSCREEN_PARAMETERS.htm
http://help.sap.com/abapdocu/en/ABAPSUBMIT_SELSCREEN_PARAMETERS.htm
Need information about SUBMIT statement
Regards
Neha
Edited by: Neha Shukla on Nov 30, 2008 12:46 PM
Edited by: Neha Shukla on Nov 30, 2008 3:22 PM -
hi
I want to execute program RIMODGEN ( CFM1 transaction ) with some values filled in MA_MATNR
But this program is not able to execute the program with SUBMIT statement and return & close the job, please tell me whats the problem with this....
Points for all helpful answers
* Job open
call function 'JOB_OPEN'
exporting
delanfrep = ' '
jobgroup = ' '
jobname = jobname
sdlstrtdt = sy-datum
sdlstrttm = sy-uzeit
importing
jobcount = jobcount
exceptions
cant_create_job = 01
invalid_job_data = 02
jobname_missing = 03.
if sy-subrc ne 0.
"error processing
endif.
* Insert process into job
* CALL TRANSACTION
SUBMIT cfm1 with MA_MATNR in MA_MATNR
WITH I_MODID = 'TEST_RAJ'
WITH I_LOGSYS = 'D41030'
with I_APPL = 'TEST_RAJ'
user sy-uname
via job jobname
number jobcount
and RETURN.
if sy-subrc > 0.
message e200(zz) with 'RIMODGEN call failed'. "error processing
endif.
* Close job
starttime-sdlstrtdt = sy-datum + 1.
starttime-sdlstrttm = '220000'.
call function 'JOB_CLOSE'
exporting
event_id = starttime-eventid
event_param = starttime-eventparm
event_periodic = starttime-periodic
jobcount = jobcount
jobname = jobname
laststrtdt = starttime-laststrtdt
laststrttm = starttime-laststrttm
prddays = 1
prdhours = 0
prdmins = 0
prdmonths = 0
prdweeks = 0
sdlstrtdt = starttime-sdlstrtdt
sdlstrttm = starttime-sdlstrttm
strtimmed = starttimeimmediate
targetsystem = host
exceptions
cant_start_immediate = 01
invalid_startdate = 02
jobname_missing = 03
job_close_failed = 04
job_nosteps = 05
job_notex = 06
lock_failed = 07
others = 99.
if sy-subrc eq 0.
MESSAGE i200(zz) with 'Done !!'. "error processing
stop.
endif.Rob and I were pointing out that you have the transaction name in the SUBMIT statement in your code that you posted above, so if you are not currently using the program name in your program, make sure that you are. Also, you may want to use the extension " to sap-spool without spool dynpro" of the SUBMIT statement, the ouput will then go to the spool. Here is an example program where I am creating a background job .
report zrich_0004 .
data: sdate type sy-datum,
stime type sy-uzeit,
l_valid,
ls_params like pri_params,
l_jobcount like tbtcjob-jobcount,
l_jobname like tbtcjob-jobname.
start-of-selection.
* Get Print Parameters
call function 'GET_PRINT_PARAMETERS'
exporting
no_dialog = 'X'
importing
valid = l_valid
out_parameters = ls_params.
* Open Job
l_jobname = 'ZRICH_0005'.
call function 'JOB_OPEN'
exporting
jobname = l_jobname
importing
jobcount = l_jobcount.
* Submit report to job
submit zrich_0005
via job l_jobname
number l_jobcount
to sap-spool without spool dynpro
spool parameters ls_params
and return.
* Kick job off 30 seconds from now.
sdate = sy-datum.
stime = sy-uzeit + 30.
* Schedule and close job.
call function 'JOB_CLOSE'
exporting
jobcount = l_jobcount
jobname = l_jobname
sdlstrtdt = sdate
sdlstrttm = stime
* strtimmed = 'X'
Regards,
Rich Heilman .
Maybe you are looking for
-
Re-ordering of SQL-script when exporting/importing a BA
Our Discoverer environment is divided up in multiple business areas (development, test and live). To move reports and business areas between these areas, we've been using import/export business areas. Recently, I made a business area in development w
-
Error: Failed to open the connection
Hi all, I have use Crystal Report 2008 to construct a report which access mySQL via ODBC. HOwever, I am fail to publish it to InfoView. It always display the following error: ERROR [PublishingService:HandlerPool-14] BusinessObjects_PublicationAdminEr
-
Error in Solution Manager 4.0 Installation u0096 Step 32 Create JAVE users
Hi All, I am installing Solution Manager 4.0 on WIN server 2003 & Oracle10g. The installation has been successful so far but at Step 32 (Create JAVA users) the installation errors and the error log is as follows: ERROR 2016-09-10 06:39:28 CJS-30197
-
Can I install Readar on D: drive instead of C: ?
Trying to clean out C: drive, but can't seem to get Reader 8.1 to install anywhere but C: drive. My prior Reader 7 was installed on D:, but I don't get the option to choose destination folder when installing 8. Anyone know a way around this?
-
How to create a folder in cocoa?
I Want to create a folder un the documents folder with objectif c. I want that the folder is called "App".