Security Background Jobs
Are there any batch/background jobs that should be scheduled for security purposes? I know of one but this is only if hr structural authorization is implemented but we are not using it.
Thanks in advance!
Hi JC,
don't you think an hourly run of rhautupd_new creates only system load w/o real benefit?
If you have a look at the report - its function is to assign profiles for assigned roles to users.
There is a standard job pfcg_time_dependency to be scheduled once a day (at time of low system load!).(->so once a day is the standard...)
So if you change role assignements which start immediately, you normally will start the usercomparison directly in pfcg (on the user-tab) (SU01 will do that automatically upon saving the user). So from this side rhautupd_new ill not bring any benefit, as you have triggered the same functionality manually already.
The only scenario where I can imagine a benefit is, if hr-org is used and there are frequent changes there. But then I would only use the option hr-org-recocouncilation in a special variant of rhautupd_new.
Another variant would be with the option 'Cleanups' only, as this may cause some performance impact and is necessary maybe once a week only, if auth.-transports have been imported.
So for regular (daily) run I would suggest to create some variants with only the options marked, which are really necessary (in general this will be with option 'profile matchup' and maybe 'Composite role Recouncilation' only).
If I have missed a point, what would make an hourly run necessary, please inform me...thx in advance!
b.rgds, Bernhard
Similar Messages
-
Error while scheduling Background Job for User/Role Full Synchronization
Hi all,
We have installed RAR 5.3 Component and uploaded the authorization data & established the connectors to the backend system.
We have performed all the post installation activities and everything is complete.
When we have scheduled User -Full Synchronization with the Back End system as a part of Post Installation Activity we are receiving the below error message
"Error while executing the Job:Cannot assign an empty string to host variable 2."
Also the VIEW LOG/ Terminate Job buttons are disabled in this screen.
Can somebody please help us in resolving the above issue
Thanks and Best Regards,
Srihari.KHi,
We are copy pasting the error log (Part as it is huge) below here. We could able to do Full Synch for Roles and also for Profiles. Only for User Synch we are getting this error and none of the users are sychronized to RAR
Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
INFO: Update user WILSONA of HL2-QAHR
Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
INFO: Update user WINDC of HL2-QAHR
Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
INFO: Update user WLADICHJ of HL2-QAHR
Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
INFO: Update user WUK of HL2-QAHR
Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
INFO: Update user ZENGS of HL2-QAHR
Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
INFO: Update user ZHENGL of HL2-QAHR
Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
INFO: All System Flag:false=====Last Batch Flag:true
Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.bg.BatchRiskAnalysis loadUserData
INFO: @@@ User sync completed for params true: Syskey List is [HL2-QAHR]
Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.bg.BgJob run
WARNING: *** Job Exception: Cannot assign an empty string to host variable 2.
com.sap.sql.log.OpenSQLException: Cannot assign an empty string to host variable 2.
at com.sap.sql.log.Syslog.createAndLogOpenSQLException(Syslog.java:85)
at com.sap.sql.log.Syslog.createAndLogOpenSQLException(Syslog.java:124)
at com.sap.sql.types.VarcharResultColumn.setString(VarcharResultColumn.java:57)
at com.sap.sql.jdbc.common.CommonPreparedStatement.setString(CommonPreparedStatement.java:511)
at com.sap.engine.services.dbpool.wrappers.PreparedStatementWrapper.setString(PreparedStatementWrapper.java:355)
at com.virsa.cscext.dao.CSCDAO.updateIgnoredUserData(CSCDAO.java:1388)
at com.virsa.cscext.dao.CSCDAO.populateGenObjUser(CSCDAO.java:1169)
at com.virsa.cc.xsys.bg.BatchRiskAnalysis.populateGenObj(BatchRiskAnalysis.java:868)
at com.virsa.cc.xsys.bg.BatchRiskAnalysis.insertBAPIUserData(BatchRiskAnalysis.java:142)
at com.virsa.cc.xsys.bg.BatchRiskAnalysis.loadUserData(BatchRiskAnalysis.java:390)
at com.virsa.cc.xsys.bg.BatchRiskAnalysis.performBatchSyncAndAnalysis(BatchRiskAnalysis.java:1275)
at com.virsa.cc.xsys.bg.BgJob.runJob(BgJob.java:402)
at com.virsa.cc.xsys.bg.BgJob.run(BgJob.java:264)
at com.virsa.cc.xsys.riskanalysis.AnalysisDaemonBgJob.scheduleJob(AnalysisDaemonBgJob.java:240)
at com.virsa.cc.xsys.riskanalysis.AnalysisDaemonBgJob.start(AnalysisDaemonBgJob.java:80)
at com.virsa.cc.comp.BgJobInvokerView.wdDoModifyView(BgJobInvokerView.java:436)
at com.virsa.cc.comp.wdp.InternalBgJobInvokerView.wdDoModifyView(InternalBgJobInvokerView.java:1225)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.doModifyView(DelegatingView.java:78)
at com.sap.tc.webdynpro.progmodel.view.View.modifyView(View.java:337)
at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.doModifyView(ClientComponent.java:481)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doModifyView(WindowPhaseModel.java:551)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:148)
at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:319)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:713)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:666)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:46)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.bg.BgJob setStatus
INFO: Job ID: 13 Status: Error
Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.bg.BgJob updateJobHistory
FINEST: --- @@@@@@@@@@@ Updating the Job History -
2@@Msg is Error while executing the Job:Cannot assign an empty string to host variable 2.
Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.bg.dao.BgJobHistoryDAO insert
INFO: -
Background Job History: job id=13, status=2, message=Error while executing the Job:Cannot assign an empty string to host variable 2.
Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.riskanalysis.AnalysisDaemonBgJob scheduleJob
INFO: -
Complted Job =>13----
Please let us know how to resolve this error
Thanks and Best Regards,
Srihari.K -
How to schedule the background job daily twice?
Hi,
How to schedule the background job daily twice? any conditions?
Regards,
Srihithasee the step by step procedure.
Scheduling Background Jobs:
1. Background jobs are scheduled by Basis administrators using transaction SM36.
2. To run a report in a background, a job needs to be created with a step using the report name
and a variant for selection parameters. It is recommended to create a separate variant for each
scheduled job to produce results for specific dates (e.g. previous month) or organizational units (e.g.
company codes).
3. While defining the step, the spool parameters needs to be specified
(Step-> Print Specifications->Properties) to secure the output of the report and help authorized users
to find the spool request. The following parameters needs to be maintained:
a. Time of printing: set to Send to SAP spooler Only for now
b. Name abbreviated name to identify the job output
c. Title free form description for the report output
d. Authorization a value defined by Security in user profiles to allow those users to access
this spool request (authorization object S_SPO_ACT, value SPOAUTH). Only users with matching
authorization value in their profiles will be able to see the output.
e. Department set to appropriate department/functional area name. This field can be used in
a search later.
f. Retention period set to Do not delete if the report output needs to be retained for more
than 8 days. Once the archiving/document repository solution is in place the spool requests could
be automatically moved to the archive/repository. Storage Mode parameter on the same screen
could be used to immediately send the output to archive instead of creating a spool request.
Configuring user access:
1. To access a report output created by a background job, a user must have at
least access to SP01 (Spool requests) transaction without restriction on the user
name (however by itself it will not let the user to see all spool requests). To have
that access the user must have S_ADMI_FCD authorization object in the profile with
SPOR (or SP01) value of S_ADMI_FCD parameter (maintained by Security).
2. To access a particular jobs output in the spool, the user must have
S_SPO_ACT object in the profile with SPOAUTH parameter matching the value used
in the Print Specifications of the job (see p. 3.d above).
3. Levels of access to the spool (display, print once, reprint, download, etc) are
controlled by SPOACTION parameter of S_SPO_ACT. The user must have at least
BASE access (display).
On-line reports:
1. Exactly the same configuration can be maintained for any output produced
from R/3. If a user clicks Parameters button on a SAP Printer selection dialog, it
allows to specify all the parameters as described in p. 3 of
Scheduling background jobs section. Thus any output created by an online report
can be saved and accessed by any user authorized to access that spool request
(access restriction provided by the Authorization field of the spool request
attributes, see p. 3.d of Scheduling background jobs section).
Access to reports output:
1. A user that had proper access (see Configuring user access above) can
retrieve a job/report output through transaction SP01.
2. The selection screen can be configured by clicking Further selection
criteria button (e.g. to bring Spool request name (suffix 2) field or hide other
fields).
3. The following fields can be used to search for a specific output (Note that
Created By must be blank when searching for scheduled jobs outputs)
a. Spool request name (suffix 2) corresponds to a spool name in p. 3.b in
Scheduling background jobs section above).
b. Date created to find an output of a job that ran within a certain date range.
c. Title corresponds to spool Title in p. 3.c in Scheduling background jobs
section above).
d. Department - corresponds to spool Department in p. 3.e in Scheduling
background jobs section above).
4. Upon entering selection criteria, the user clicks the Execute button to
retrieve the list of matching spool requests.
5. From the spool list the user can use several function such as view the
content of a spool request, print the spool request, view attributed of the spool
request, etc. (some functions may need special authorization, see p.3 in
Configuring user access)
a. Click the Print button to print the spool request with the default attributes
(usually defined with the job definition). It will print it on a printer that was
specified when a job was created.
b. Click the Print with changed attributed button to print the spool request
with the different attributes (e.g. changing the printer name).
c. Click the Display contents button to preview the spool request contents. A
Print and Download functions are available from the preview mode. -
What is the spool, what is its role in background job scheduling
Hi,
I want to know what is meant by Spool request and spool number generated.
Tell about transaction SP01.
How it is linked to Background job scheduling.
thanks.
sam.Hi,
Refer this link.
https://www.sdn.sap.com/irj/sdn/inf?rid=/library/uuid/7a5f4061-0a01-0010-c9bc-a4e4cb100438
About SP01.
Printing does not work in SAP. There is a printer definition for your local printer, but it does not work. Presuming that you use the program SAPLPD on your computer.
Boot your computer and start only the SAPLogon and the SAPLpd program.
Delete all of your old print jobs in the SAP system (Transaction SP01).Generate only one new print job.
Check that there is enough resource in your computer. Check the free memory (Win 3.1x) and the free disk space (The lists are temporarily saved on your disk).
Open the SAPLPD and read the print log in the window. The printer definition must correspond with the parameters shown here.
Check that the standard printer is on the same lpt (Win 3.1: Control panel, Printer) as defined for the printer (usually lpt1).
In Transaction SP01 read the protocol of your print job. Do not generate new print jobs! Wait till the SAP system changes the status of the print job.
If you can not find the print job in SP01 anymore, then the print job was successfully printed out. If it didn't come out on your printer and the SAPLpd didn't indicate an incoming print job, then the connection was realised with another PC. Then SAP printer definition you used, does not correspond with your computer.
Scheduling Background Jobs:
1. Background jobs are scheduled by Basis administrators using transaction SM36.
2. To run a report in a background, a job needs to be created with a step using the report name
and a variant for selection parameters. It is recommended to create a separate variant for each
scheduled job to produce results for specific dates (e.g. previous month) or organizational units (e.g.
company codes).
3. While defining the step, the spool parameters needs to be specified
(Step-> Print Specifications->Properties) to secure the output of the report and help authorized users
to find the spool request. The following parameters needs to be maintained:
a. Time of printing: set to u201CSend to SAP spooler Only for nowu201D
b. Name u2013 abbreviated name to identify the job output
c. Title u2013 free form description for the report output
d. Authorization u2013 a value defined by Security in user profiles to allow those users to access
this spool request (authorization object S_SPO_ACT, value SPOAUTH). Only users with matching
authorization value in their profiles will be able to see the output.
e. Department u2013 set to appropriate department/functional area name. This field can be used in
a search later.
f. Retention period u2013 set to u201CDo not deleteu201D if the report output needs to be retained for more
than 8 days. Once the archiving/document repository solution is in place the spool requests could
be automatically moved to the archive/repository. Storage Mode parameter on the same screen
could be used to immediately send the output to archive instead of creating a spool request.
Configuring user access:
1. To access a report output created by a background job, a user must have at
least access to SP01 (Spool requests) transaction without restriction on the user
name (however by itself it will not let the user to see all spool requests). To have
that access the user must have S_ADMI_FCD authorization object in the profile with
SPOR (or SP01) value of S_ADMI_FCD parameter (maintained by Security).
2. To access a particular jobu2019s output in the spool, the user must have
S_SPO_ACT object in the profile with SPOAUTH parameter matching the value used
in the Print Specifications of the job (see p. 3.d above).
3. Levels of access to the spool (display, print once, reprint, download, etc) are
controlled by SPOACTION parameter of S_SPO_ACT. The user must have at least
BASE access (display).
On-line reports:
1. Exactly the same configuration can be maintained for any output produced
from R/3. If a user clicks u201CParametersu201D button on a SAP Printer selection dialog, it
allows to specify all the parameters as described in p. 3 of
u201CScheduling background jobsu201D section. Thus any output created by an online report
can be saved and accessed by any user authorized to access that spool request
(access restriction provided by the Authorization field of the spool request
attributes, see p. 3.d of u201CScheduling background jobsu201D section).
Access to reportu2019s output:
1. A user that had proper access (see Configuring user access above) can
retrieve a job/report output through transaction SP01.
2. The selection screen can be configured by clicking u201CFurther selection
criteriau2026u201D button (e.g. to bring u201CSpool request name (suffix 2)u201D field or hide other
fields).
3. The following fields can be used to search for a specific output (Note that
Created By must be blank when searching for scheduled jobu2019s outputs)
a. Spool request name (suffix 2) u2013 corresponds to a spool name in p. 3.b in
u201CScheduling background jobsu201D section above).
b. Date created u2013 to find an output of a job that ran within a certain date range.
c. Title u2013 corresponds to spool Title in p. 3.c in u201CScheduling background jobsu201D
section above).
d. Department - corresponds to spool Department in p. 3.e in u201CScheduling
background jobsu201D section above).
4. Upon entering selection criteria, the user clicks the Execute button to
retrieve the list of matching spool requests.
5. From the spool list the user can use several function such as view the
content of a spool request, print the spool request, view attributed of the spool
request, etc. (some functions may need special authorization, see p.3 in
Configuring user access)
a. Click the Print button to print the spool request with the default attributes
(usually defined with the job definition). It will print it on a printer that was
specified when a job was created.
b. Click the u201CPrint with changed attributedu201D button to print the spool request
with the different attributes (e.g. changing the printer name).
c. Click the u201CDisplay contentsu201D button to preview the spool request contents. A
Print and Download functions are available from the preview mode.
Exporting the Contents of a Spool Request
Use
You want to export the contents of a spool request as a text file to the SAP GUI working directory or to a directory of your choice. The content of the spool request is downloaded as plain text without, for example, graphics, images, or specific fonts.
The following procedures are irrelevant for the PDF-based form printing integrated as of SAP Web Application Server 6.40, since the print data can be opened and stored as a PDF. See also Displaying and Printing PDF-Based Forms.
Procedure
Exporting to the SAP GUI Working Directory:
Choose Spool Request ® Forward® Export as Text.
The entire text is stored in your SAP GUI working directory in ASCII format.
A file of this type is named using the following pattern:
.txt
Example: ABC0000004327.txt
You require appropriate authorization for this function.
Exporting to a Directory of Your Choice:
With this method of exporting a spool request, the content of the spool request is first displayed and you then download the screen list as a text file to the directory of your choice.
1. Select the spool request to be exported and choose Display Contents.
2. In the case of SAPScript/Smart Forms documents, activate list display by choosing Goto.
3. Choose System ® List ® Save ® Local File.
4. Choose one of the available formats and confirm your choice.
5. Choose a directory and save the spool request.
By default, only the first 10 pages of a spool request are saved in a file. You can increase the number of pages to be saved by choosing Goto ® Display Requests ® Settings and making the desired entries in the Display Area group box. -
How to save background job in variant
Dear all,
I have scheduled one report programme in background and its moved to quality. But in quality they are not able to see the background job which i scheduled in test server. While saving the job in test server, its not asked for any request. Is this the problem? (or) They have to create the background job in quality server ? (Or) any other problem? Please let me know asap pls.
Regards
SReeRequest security team to give you access to SM36.
I believe you should have your manager approval before.....
Only ABAP Programs along with the variants can be transported between development , testing(quality) and production severs.
You need to create a job in the quality/production by giving the program name.
Also, you can execute the program in background by going to se38->Execute in background.
Hope it helps -
CUP not pulling through Risks, linked to background jobs? GRC 5.3
Hi guys,
I have an annoying problem in GRC CUP, I am trying to set up the "Create Request" function for our Company.
When I create a request for either a New User, or Change a User's Roles, then perform the Risk Analysis on this, the result is "0 Risk(s) found". I have added every single role in order to test, which should produce a risk, but still the same message.
I therefore thought OK, maybe the risks are not loaded into CUP, so I had a look in the configuration, namely the background jobs. The SOD Review and the UAR review jobs were not setup, so I scheduled them for every day, roughly every hour. However, this produces an error on the system log as follows:
2009-11-03 08:54:17,505 [Thread-8394] ERROR Service call exception; nested exception is:
* java.net.MalformedURLException: no protocol: 103*
java.rmi.RemoteException: Service call exception; nested exception is:
* java.net.MalformedURLException: no protocol: 103*
* at com.virsa.ae.service.ccSODUsers.ConfigVirsaCCSODViolatedUsersBindingStub.execSODUserAnalysis(ConfigVirsaCCSODViolatedUsersBindingStub.java:90)*
* at com.virsa.ae.service.ccSODUsers.ConfigVirsaCCSODViolatedUsersBindingStub.execSODUserAnalysis(ConfigVirsaCCSODViolatedUsersBindingStub.java:99)*
* at com.virsa.ae.sodreview.SODReviewUserHandler.insertUsers(SODReviewUserHandler.java:123)*
* at com.virsa.ae.sodreview.SODReviewUserHandler.execute(SODReviewUserHandler.java:59)*
* at com.virsa.ae.sodreview.SODReviewBGTask.execute(SODReviewBGTask.java:69)*
* at com.virsa.ae.backgroundjobs.BackgroundTask.run(BackgroundTask.java:51)*
* at java.util.TimerThread.mainLoop(Timer.java:461)*
* at java.util.TimerThread.run(Timer.java:408)*
Caused by:
java.net.MalformedURLException: no protocol: 103
* at java.net.URL.<init>(URL.java:568)*
* at java.net.URL.<init>(URL.java:465)*
* at java.net.URL.<init>(URL.java:414)*
* at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.HTTPTransport.createHTTPSocket(HTTPTransport.java:110)*
* at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.HTTPTransport.getRequestStream(HTTPTransport.java:319)*
* at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.MimeHttpBinding.outputMessage(MimeHttpBinding.java:550)*
* at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.MimeHttpBinding.call(MimeHttpBinding.java:1433)*
* at com.virsa.ae.service.ccSODUsers.ConfigVirsaCCSODViolatedUsersBindingStub.execSODUserAnalysis(ConfigVirsaCCSODViolatedUsersBindingStub.java:83)*
* ... 7 more*
Can anyone point me in the right direction as what could be the problem here?
Very much appreciated!! CheersHi, OK, I have done as suggested, however the log is huge. I will paste some sections of the log relating to ther Risk Analysis. there's an error at the bottom relating to EJB?
2009-11-03 14:32:10,364 [SAPEngine_Application_Thread[impl:3]_32] DEBUG AEFrameworkServlet.java@531:logRequest() : role_action_PE1CLNT100!#!KEY!#!1480!#!KEY!#!CCF-S:BSCU_CUSTOMIZATION_DISP!#!KEY!#!0:0::ADD#
2009-11-03 14:32:10,364 [SAPEngine_Application_Thread[impl:3]_32] DEBUG AEFrameworkServlet.java@531:logRequest() : role_validto_PE1CLNT100!#!KEY!#!1481!#!KEY!#!CCF-S:BSCU_MAINT_NO_RANGES!#!KEY!#!0_display:0::12/31/9999#
2009-11-03 14:32:10,400 [SAPEngine_Application_Thread[impl:3]_32] DEBUG NavigationEngine.java@85:execute() : Current Module: |AE| Conversation: |cnvCreateRequest| Screen: |scrRequestDetails|
2009-11-03 14:32:10,401 [SAPEngine_Application_Thread[impl:3]_32] DEBUG NavigationEngine.java@105:execute() : Module#AE#Conversation#cnvCreateRequest#Screen#scrRequestDetails#Action#loadSODAnalysis#
2009-11-03 14:32:10,401 [SAPEngine_Application_Thread[impl:3]_32] DEBUG NavigationEngine.java@261:execute() : Handler found:class com.virsa.ae.accessrequests.actions.UpdateRequestDetailsAction
2009-11-03 14:32:10,418 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RoleValidityHelper.java@157:isExpiredAsOfToday() : INTO the method : dt : Fri Dec 31 00:00:00 CET 9999
2009-11-03 14:32:10,418 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RoleValidityHelper.java@167:isExpiredAsOfToday() : OUT of the method : boolResult : false
2009-11-03 14:32:10,440 [SAPEngine_Application_Thread[impl:3]_32] DEBUG NavigationEngine.java@272:execute() : Target returned by execute action: success
2009-11-03 14:32:10,441 [SAPEngine_Application_Thread[impl:3]_32] DEBUG AEFrameworkServlet.java@452:service() : forwarding to:scrRiskAnalysis.load.do
2009-11-03 14:32:10,441 [SAPEngine_Application_Thread[impl:3]_32] DEBUG AEFrameworkServlet.java@515:logRequest() :
2009-11-03 14:32:12,818 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RequestDetailsHelper.java@731:isRiskAnalysisEligible() : Prov Action is eligible for Risk Analysis : CHANGE_USER
2009-11-03 14:32:12,818 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RequestDetailsHelper.java@739:isRiskAnalysisEligible() : OUT of the method : boolEligible : true
2009-11-03 14:32:12,847 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RiskAnalysisBO.java@130:findViolations() : Starting Risk analysis.....
2009-11-03 14:32:12,848 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RiskAnalysisBO.java@140:findViolations() : RiskAnalysis________ DAO level System : PE1CLNT100
2009-11-03 14:32:12,848 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RiskAnalysisBO.java@141:findViolations() : RiskAnalysis________ Include Cross System : PE1CLNT100
2009-11-03 14:32:12,848 [SAPEngine_Application_Thread[impl:3]_32] INFO SystemDAOFactory.java@73:getRiskAnalysisDAO() : EN
2009-11-03 14:32:12,848 [SAPEngine_Application_Thread[impl:3]_32] INFO SystemDAOFactory.java@74:getRiskAnalysisDAO() : Locale ID is :1
2009-11-03 14:32:12,848 [SAPEngine_Application_Thread[impl:3]_32] INFO SystemDAOFactory.java@75:getRiskAnalysisDAO() : Locale date time format is :MM/dd/yyyy HH:MM:SS
2009-11-03 14:32:12,848 [SAPEngine_Application_Thread[impl:3]_32] DEBUG AECacheUtil.java@882:getCacheObject() : INTO the method : pCacheNameSYSTEMS,pLocaleId1
2009-11-03 14:32:12,848 [SAPEngine_Application_Thread[impl:3]_32] DEBUG SAPConnectorUtils.java@600:getConnectorInformation() : INTO the method : connectorId :PE1CLNT100
2009-11-03 14:32:12,850 [SAPEngine_Application_Thread[impl:3]_32] INFO com.virsa.ae.service.sap.SystemDAOFactory : getRiskAnalysisDAO() : : cc version : 5.3_WS
2009-11-03 14:32:12,850 [SAPEngine_Application_Thread[impl:3]_32] INFO com.virsa.ae.service.sap.SystemDAOFactory : getRiskAnalysisDAO() : : risk analysis dao is set to RiskAnalysisWS52DAO
2009-11-03 14:32:12,850 [SAPEngine_Application_Thread[impl:3]_32] INFO com.virsa.ae.service.sap.SystemDAOFactory : getRiskAnalysisDAO() : : cc uri : http://cvifxpsol.ks.franke.world:54000/VirsaCCRiskAnalysisService/Config1?wsdl&style=document
2009-11-03 14:32:12,850 [SAPEngine_Application_Thread[impl:3]_32] DEBUG SystemDAOFactory.java@221:getRiskAnalysisDAO() : OUT of the method
2009-11-03 14:32:12,857 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RiskAnalysisBO.java@158:findViolations() : RiskAnalysis________ Visible Roles : [com.virsa.ae.accessrequests.po.RolesPO@200f200f[system=PE1CLNT100,systemShortDesc=Production System PE1 - 100,accessType=Select,searchValue=,roleProfName=0,roleProfDispName=CCF-G_BC_BASIS_ADMIN,roleProfDesc=Competence Centre System Administrator,roleProfType=C,roleApproverId=NB014,roleApproverName=Ben Neesom(NB014),roleCriticalLevel=,reqPathId=,status=OPEN,oldStatus=OPEN,actionFlag=ADD,validFrom=11/03/2009,validTo=12/31/9999,selected=true,isReadOnly=false,isNew=true,expanded=true,isSimpleRole=false,isRiskAnalysisonAccessChanged=false,isEditable=true,isApplicable=false,altRoleApproverId=,detailDesc=,reaffirmPeriod=0,isLead=false,lastReaffirmDate=,funcArea=,roleIndex=0,companydesc=,fucntionalAreaDesc=,isExistingRole=false,roleProfIndicator=R,comments=,validityType=NO,actualDate=,years=0,months=0,days=0,URL=,customBAPI=,responsibilityId=0,commentsMandatory=No
2009-11-03 14:32:14,401 [SAPEngine_Application_Thread[impl:3]_32] ERROR java.lang.VerifyError: com/virsa/cc/xsys/ejb/RiskAnalysis.execRiskAnalysis(Lcom/virsa/cc/xsys/webservices/dto/WSRAInputParamDTO;)Lcom/virsa/cc/xsys/webservices/dto/RAResultDTO;
java.lang.VerifyError: com/virsa/cc/xsys/ejb/RiskAnalysis.execRiskAnalysis(Lcom/virsa/cc/xsys/webservices/dto/WSRAInputParamDTO;)Lcom/virsa/cc/xsys/webservices/dto/RAResultDTO;
at com.virsa.ae.service.sap.RiskAnalysisEJB53DAO.execRiskAnalysis(RiskAnalysisEJB53DAO.java:305)
at com.virsa.ae.service.sap.RiskAnalysisEJB53DAO.getViolations(RiskAnalysisEJB53DAO.java:277)
at com.virsa.ae.service.sap.RiskAnalysisEJB53DAO.getViolations(RiskAnalysisEJB53DAO.java:419)
at com.virsa.ae.service.sap.RiskAnalysisEJB53DAO.determineRisks(RiskAnalysisEJB53DAO.java:511)
at com.virsa.ae.service.sap.RiskAnalysis53DAO.determineRisks(RiskAnalysis53DAO.java:103)
at com.virsa.ae.accessrequests.bo.RiskAnalysisBO.findViolations(RiskAnalysisBO.java:182)
at com.virsa.ae.accessrequests.actions.RiskAnalysisAction.doRiskAnalysis(RiskAnalysisAction.java:1073)
at com.virsa.ae.accessrequests.actions.RiskAnalysisAction.doAnalysis(RiskAnalysisAction.java:300)
at com.virsa.ae.accessrequests.actions.RiskAnalysisAction.execute(RiskAnalysisAction.java:109)
at com.virsa.ae.commons.utils.framework.NavigationEngine.execute(NavigationEngine.java:271)
at com.virsa.ae.commons.utils.framework.servlet.AEFrameworkServlet.service(AEFrameworkServlet.java:425)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.doWork(RequestDispatcherImpl.java:321)
at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:377)
at com.virsa.ae.commons.utils.framework.servlet.AEFrameworkServlet.service(AEFrameworkServlet.java:455)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(AccessController.java:219)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
2009-11-03 14:32:14,402 [SAPEngine_Application_Thread[impl:3]_32] ERROR Exception during EJB call, Ignoring and trying Webservice Call
com.virsa.ae.service.ServiceException: Exception in getting the results from the EJB service : com/virsa/cc/xsys/ejb/RiskAnalysis.execRiskAnalysis(Lcom/virsa/cc/xsys/webservices/dto/WSRAInputParamDTO;)Lcom/virsa/cc/xsys/webservices/dto/RAResultDTO;
at com.virsa.ae.service.sap.RiskAnalysisEJB53DAO.getViolations(RiskAnalysisEJB53DAO.java:295)
at com.virsa.ae.service.sap.RiskAnalysisEJB53DAO.getViolations(RiskAnalysisEJB53DAO.java:419)
at com.virsa.ae.service.sap.RiskAnalysisEJB53DAO.determineRisks(RiskAnalysisEJB53DAO.java:511)
at com.virsa.ae.service.sap.RiskAnalysis53DAO.determineRisks(RiskAnalysis53DAO.java:103)
at com.virsa.ae.accessrequests.bo.RiskAnalysisBO.findViolations(RiskAnalysisBO.java:182)
at com.virsa.ae.accessrequests.actions.RiskAnalysisAction.doRiskAnalysis(RiskAnalysisAction.java:1073)
at com.virsa.ae.accessrequests.actions.RiskAnalysisAction.doAnalysis(RiskAnalysisAction.java:300)
at com.virsa.ae.accessrequests.actions.RiskAnalysisAction.execute(RiskAnalysisAction.java:109)
at com.virsa.ae.commons.utils.framework.NavigationEngine.execute(NavigationEngine.java:271)
at com.virsa.ae.commons.utils.framework.servlet.AEFrameworkServlet.service(AEFrameworkServlet.java:425)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.doWork(RequestDispatcherImpl.java:321)
at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:377)
at com.virsa.ae.commons.utils.framework.servlet.AEFrameworkServlet.service(AEFrameworkServlet.java:455)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(AccessController.java:219)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
Caused by:
java.lang.VerifyError: com/virsa/cc/xsys/ejb/RiskAnalysis.execRiskAnalysis(Lcom/virsa/cc/xsys/webservices/dto/WSRAInputParamDTO;)Lcom/virsa/cc/xsys/webservices/dto/RAResultDTO;
at com.virsa.ae.service.sap.RiskAnalysisEJB53DAO.execRiskAnalysis(RiskAnalysisEJB53DAO.java:305)
at com.virsa.ae.service.sap.RiskAnalysisEJB53DAO.getViolations(RiskAnalysisEJB53DAO.java:277)
... 28 more
2009-11-03 14:32:15,502 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RiskAnalysisWS53DAO.java@632:determineRisks() : OUT of the method : com.virsa.ae.service.sap.dto.RiskWithCriticalActionsDTO@deb0deb[listRisks=[],listCriticalActions=[]]
2009-11-03 14:32:15,502 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RiskAnalysisBO.java@190:findViolations() : RiskAnalysis___ Completd successfully!
2009-11-03 14:32:15,502 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RiskAnalysisBO.java@221:findViolations() : RiskAnalysis________ Risk List Size : 0
2009-11-03 14:32:15,502 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RiskAnalysisBO.java@225:findViolations() : RiskAnalysis________ Critical Actions Size : 0
2009-11-03 14:32:15,502 [SAPEngine_Application_Thread[impl:3]_32] DEBUG RiskAnalysisBO.java@227:findViolations() : Done Risk analysis.
2009-11-03 14:32:15,502 [SAPEngine_Application_Thread[impl:3]_32] INFO MessagingHelper.java@99:addMessage() : @@@Adding msgValue: Code: 2200; Locale: en
2009-11-03 14:32:15,503 [SAPEngine_Application_Thread[impl:3]_32] INFO MessagingHelper.java@109:addMessage() : @@@Creating new message list
2009-11-03 14:32:15,503 [SAPEngine_Application_Thread[impl:3]_32] INFO MessagingHelper.java@119:addMessage() : Adding msg to msglist
2009-11-03 14:32:15,503 [SAPEngine_Application_Thread[impl:3]_32] DEBUG NavigationEngine.java@272:execute() : Target returned by execute action: success
2009-11-03 14:32:15,503 [SAPEngine_Application_Thread[impl:3]_32] DEBUG AEFrameworkServlet.java@452:service() : forwarding to:/sod_analysis.jsp
2009-11-03 14:32:15,519 [SAPEngine_Application_Thread[impl:3]_32] DEBUG PopupCalendarTag.java@180:doStartTag() : Date Format in PopUpCalendar Java :- M/d/yyyy -
Problems creating background job for program (job open, submit and close)
Hi gurus,
im trying to start a background job using the FM BP_START_DATE_EDITOR to show the start date to the job or if it's imediate. this FM it's working fine, after call it im opening a job, submiting it and call the job close FM and the job close FM creates me the job.
The problem it's when i go to the sm37 to see the job status the job has been canceled, and the job log says that i have to give a start date to the job.
What i dont understand it's either the job is imediate or i choose a date to start the job always gives me this error...
Below goes my code,
any ideas will be rewarded
CLEAR: stdt_modify_type, stdt_output.
CALL FUNCTION 'BP_START_DATE_EDITOR'
EXPORTING
stdt_dialog = 'Y'
stdt_input = stdt_input
stdt_opcode = 14
IMPORTING
stdt_modify_type = stdt_modify_type
stdt_output = stdt_output
EXCEPTIONS
fcal_id_not_defined = 1
incomplete_last_startdate = 2
incomplete_startdate = 3
invalid_dialog_type = 4
invalid_eventid = 5
invalid_opcode = 6
invalid_opmode_name = 7
invalid_periodbehaviour = 8
invalid_predecessor_jobname = 9
last_startdate_in_the_past = 10
no_period_data_given = 11
no_startdate_given = 12
period_and_predjob_no_way = 13
period_too_small_for_limit = 14
predecessor_jobname_not_unique = 15
startdate_interval_too_large = 16
startdate_in_the_past = 17
startdate_is_a_holiday = 18
startdate_out_of_fcal_range = 19
stdt_before_holiday_in_past = 20
unknown_fcal_error_occured = 21
no_workday_nr_given = 22
invalid_workday_countdir = 23
invalid_workday_nr = 24
notbefore_stdt_missing = 25
workday_starttime_missing = 26
no_eventid_given = 27
OTHERS = 28.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
MOVE 'X' TO gv_flag.
ENDIF.
DATA jobname LIKE tbtcjob-jobname.
DATA jobcount LIKE tbtcjob-jobcount.
DATA job_release LIKE btch0000-char1.
DATA job_imediate TYPE c.
CLEAR: jobname, jobcount, job_release.
CONCATENATE 'MAPAEXEC' sy-uname sy-datum
INTO jobname SEPARATED BY space.
CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = jobname
IMPORTING
jobcount = jobcount
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE i003(zmapas).
EXIT.
ENDIF.
SUBMIT z_mapa_execucao_orcamental
VIA JOB jobname NUMBER jobcount
WITH ano EQ ano
WITH so_perio IN so_perio
WITH so_date IN so_date
WITH so_org EQ so_org
WITH so_num IN so_num
AND RETURN.
IF stdt_output-startdttyp EQ 'I'.
CLEAR job_imediate.
job_imediate = 'X'.
ENDIF.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
calendar_id = stdt_output-calendarid
event_id = stdt_output-eventid
event_param = stdt_output-eventparm
event_periodic = stdt_output-periodic "?
jobcount = jobcount
jobname = jobname
laststrtdt = stdt_output-laststrtdt
laststrttm = stdt_output-laststrttm
prddays = stdt_output-prddays "??
prdhours = stdt_output-prdhours "?
prdmins = stdt_output-prdmins "??
prdmonths = stdt_output-prdmonths
prdweeks = stdt_output-prdweeks "?
predjob_checkstat = stdt_output-checkstat
pred_jobcount = stdt_output-predjobcnt
pred_jobname = stdt_output-predjob
sdlstrtdt = stdt_output-sdlstrtdt
sdlstrttm = stdt_output-sdlstrttm
strtimmed = job_imediate
targetsystem = stdt_output-instname
start_on_workday_not_before = stdt_output-notbefore
start_on_workday_nr = stdt_output-wdayno
workday_count_direction = stdt_output-wdaycdir
IMPORTING
job_was_released = job_release
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.
MESSAGE i003(zmapas).
EXIT.
ELSE.
MESSAGE i004(zmapas) WITH jobname.
ENDIF.
Thanks in advance,
Best Regards
João MartinsHello João.
In debug mode, check the value of variables you passed to parameters sdlstrtdt and sdlstrttm.
As aditional info, I usually achieve your goal without FM BP_START_DATE_EDITOR.
Check this code:
CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = w_jobname
IMPORTING
jobcount = w_jobcount
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.
CHECK sy-subrc = 0.
CLEAR seltab_wa.
MOVE: t_jobs-param TO seltab_wa-selname,
t_processar-line+34 TO seltab_wa-low.
APPEND seltab_wa TO seltab.
seltab_wa-selname = 'P_LOJA'.
seltab_wa-low = t_processar-ficheiro+7(4).
APPEND seltab_wa TO seltab.
*** Submete o programa para o JOB
SUBMIT (t_jobs-repid)
WITH SELECTION-TABLE seltab
USER sy-uname
VIA JOB w_jobname NUMBER w_jobcount
AND RETURN.
*** Encerra o JOB
l_hora = sy-uzeit.
ADD 60 TO l_hora.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
jobcount = w_jobcount
jobname = w_jobname
sdlstrtdt = sy-datum
sdlstrttm = l_hora
targetserver = w_servidor
IMPORTING
job_was_released = l_liberado
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.
Regards.
Valter Oliveira. -
Scheduling one background job inside another
Hi All,
Is it possible to Scheduling one background job inside another.? i.e In my Z program I am calling job_open, job_submit, job_close and to execute one standard report in background. And after that I am executing my Z program itself from SE38 as Program->Execute->Background->Execute Immediately. Is this logically correct? I am asking this because I am not getting the desired result
Thanks & Regards,
Neethu.HI,
Check the job steps in SM36.
First schedule the Standard job and in the job steps schedule the z report.
Schedule job in chain -
Hi, I am calling a Background job in my program. I am using JOB_OPEN, JOB_SUBMIT and JOB_CLOSE FM to start a job. My need is to pass a value to the job program(job program doesnt have any selection screen values). Is their any way without creating variants each time to pass value to it.
Please advice.....Hello,
You can first use JOB_OPEN which returns job number. Then build ranges or parameters to use SUBMIT to call the program.
Eg: SUBMIT RM06BB20 AND RETURN
WITH S_EKGRP IN R_EKGRP
WITH S_EKORG IN R_EKORG
WITH S_FLIEF IN R_FLIEF
WITH S_KONNR IN R_KONNR
USER sy-uname VIA JOB w_jobname
NUMBER w_job_number.
Now use JOB_CLOSE.
Thanks,
Venu -
How can i get Background Jobs list which is made me?
I created background job using JOB_OPEN and SUBMIT and JOB_CLOSE.
I need to Background Job list which is made me..
Do u know any function or logic?
plz~[BP_JOBVARIANT_OVERVIEW|http://help.sap.com/saphelp_45b/helpdata/en/fa/096ccb543b11d1898e0000e8322d00/frameset.htm]
BP_JOBLOG_READ -
Submit RSEOUT00 as background job
Hi all,
Here is my requirement.There is a Z program from which RSEOUT00 program has to be called , so that it will change the Idoc status to '03'. I tried using Submit RSEOUT00..and return and also tried JOB_open and then SUBMIT rseout00 WITH docnum EQ p_idocno user sy-uname via job jobname number jobcount and return and then JOB_CLOSE .I checked SM37 also where i can see this job as finished..
I tried COMMIT WORK statement and also WAIT statement .
But still the idoc status wont change to '03' .
Can anyone plase advise on how to correct this .
Regards,
SudheerHi,
I have created background job for RSEOUT00 and written the below code. It worked.
DATA: w_number TYPE tbtcjob-jobcount,
w_name TYPE tbtcjob-jobname VALUE 'ZTEST_JOB'.
CALL FUNCTION 'JOB_OPEN'
EXPORTING
jobname = w_name
IMPORTING
jobcount = w_number
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.
IF sy-subrc = 0.
SUBMIT rseout00 VIA JOB w_name NUMBER w_number AND RETURN.
IF sy-subrc = 0.
CALL FUNCTION 'JOB_CLOSE'
EXPORTING
jobcount = w_number
jobname = w_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.
Thanks,
Appanaboina -
Internal error occurs in background job scheduling
Hi Experts,
We are facing an error message "Internal error occurs in background job scheduling" while trying to execute a custom report(Z report) in background in SA38.
Please find the following observation on our side on this message.
1) This message is not coming for only one report not for others.
2) SU53 screen shot shows that SE38 check is failed, but the weird thing is not happening for other report.
3) Persons having SE38 auhtorization are able to run this report.
Please advise.
Thanks in advance,
VivenWhat is the message ID and number? Have you tried OSS search and debugging?
What does this program do, in a nutshell? -
BWREMOTE background job canceled in sap r/3 system
Hi my friends,
Thanks for your help ahead.
Today I checked the background job in SAP R/3 created by BWREMOTE via SM37. It showed me some jobs had been canceled.
I displayed its log, the detail message is:
==========================================
Step 001 started (program SBIE0001, variant &0000000083494, user name BWREMOTE)
DATASOURCE = ZQM_NOT_SHFGRP
Call up of customer enhancement BW_BTE_CALL_BW204010_E (BTE) with 1,593 records
Result of customer enhancement: 1,593 records
Call up of customer enhancement EXIT_SAPLRSAP_001 (CMOD) with 1,593 records
ABAP/4 processor: SAPSQL_INVALID_FIELDNAME
Job cancelled
==========================================
Then I displayed the "Long Text" of the job log. It is
One of the field names in the SELECT clause was not recognized.
Error analysis
The SELECT clause was specified in an internal table at runtime.
It contains the field name "TPR00", but this does not occur in any of
the database tables listed in the FROM clause.
Information on where termination occurred
The termination occurred in the ABAP/4 program "SAPLXRSA " in
"EXIT_SAPLRSAP_001".
The main program was "SBIE0001 ".
Source code extract
008840 concatenate 'TPR'
008850 day_temp+6(2)
008860 ' = '
008870 ' ''' zshift '''' into
008880 cond .
008890 append cond to itab .
008900 select schkz into i_not_shfgrp-zzschkz from t552a
008910 where zeity = '2'
008920 and mofid = 'CN'
008930 and mosid = '28'
008940 and ( schkz = 'SFTA' or
008950 schkz = 'SFTB' or
008960 schkz = 'SFTC' or
008970 schkz = 'SFTD' )
008980 and kjahr = day_temp+0(4)
008990 and monat = day_temp+4(2)
> and (itab) .
009010 endselect.
I guess that there is not a field named TPR00 in table t552a.
Next, I opened the 'project management of sap enhancement' via CMOD, entering the project name and chosing 'Display'.
Then Double click the Components 'EXIT_SAPLRSAP_001', we can see the function module 'EXIT_SAPLRSAP_001'. In the source codes, there is an include program, it is 'INCLUDE ZXRSAU01.'.
Then, I double clicked the Include program and find the position program terminated. The source codes are:
ZQM_NOT_SHFGRP *
when 'ZQM_NOT_SHFGRP'.
loop at c_t_data into i_not_shfgrp .
l_tabix = sy-tabix .
clear :mbatch ,zshift,cond ,zfield, zcharg, day_temp .
refresh itab.
if i_not_shfgrp-ausvn is initial.
else.
aa = '080000'.
bb = '160000'.
cc = '235959'.
day_temp = i_not_shfgrp-ausvn.
if i_not_shfgrp-auztv ge aa and
i_not_shfgrp-auztv lt bb .
zshift = 'MSHF' .
elseif i_not_shfgrp-auztv ge bb and
i_not_shfgrp-auztv le cc .
zshift = 'LSHF'.
else .
zshift = 'NSHF'.
day_temp = i_not_shfgrp-ausvn - 1.
endif.
concatenate 'TPR'
day_temp+6(2)
' = '
' ''' zshift '''' into
cond .
append cond to itab .
select schkz into i_not_shfgrp-zzschkz from t552a
where zeity = '2'
and mofid = 'CN'
and mosid = '28'
and ( schkz = 'SFTA' or
schkz = 'SFTB' or
schkz = 'SFTC' or
schkz = 'SFTD' )
and kjahr = day_temp+0(4)
and monat = day_temp+4(2)
and (itab) .
endselect.
endif.
I found that we got a TPR00 during concatenation. In other words, day_temp+6(2) = 00. But I think it is impossible. I can not explain this.
Any ideas, my friends. Many thanks.select schkz into i_not_shfgrp-zzschkz from t552a
where zeity = '2'
and mofid = 'CN'
and mosid = '28'
and ( schkz = 'SFTA' or
schkz = 'SFTB' or
schkz = 'SFTC' or
schkz = 'SFTD' )
and kjahr = day_temp+0(4)
and monat = day_temp+4(2)
<b>and (itab) .</b> => doesn't make sense?!
endselect.
endif.
it seems something got deleted between 'and' and '(itab)'... so, you'll have to recheck the requirements for your select to fill the 'and' statement further.
so, it should look like
and monat = day_temp+4(2)
and <b><some kind of condition that needs to be fulfilled></b>.
endselect.
<b><some logic to fill a line in your internal table></b>.
append cond to itab.
endif.
obviously <some kind of condition that needs to be fulfilled> needs to be replaced by a real condition
and <some logic to fill a line in your internal table> needs to be replaced by some kind of formula
I assume something like (otherwise it would be really weird to select that field):
cond = i_not_shfgrp-zzschkz.
or a formula using the i_not_shfgrp-zzschkz field.
It would also be a lot better to replace your select ... endselect by a select single as you'll be selecting 1 record only anyways.
Message was edited by:
RafB -
How to find Spool number for a 2 steps background job.
Hi All,
How to find spool number (and also the background job name ) for a 2 steps background job.
in the table TBTCO i can see step numbers but i dont get the spool number. Is there any link between TBTCO and TSP01.
Also after getting the spool number i need to drill down on ALV report. I hard coded the spool number and was able to drill down using BDC and call transaction but when i press back button it is not returning to the ALV report.
Thanks,
Shiva.Which one creates the spool? (first one I guess)
What kind of spool? (WRITE, sapscript, smartform, pdf...)
Do you use special statements like NEW-PAGE, or other things?
Are you sure that the spools are generated by these jobs? (did you compare the spool generation times and job run dates to be sure...) -
System exception while deleting the file from app server in background job
Hi All,
I have a issue while the deleting the file from application server.
I am using the statement DELETE DATASET in my program to delete the file from app server.
I am able to delete the file from the app server when i run the program from app server.
When i run the same report from background job i am getting the message called System exception.
Is there any secuirity which i need to get the issue.
Thank You,
TaraginiHi All,
I get all the authorization sto delete the file from application serever.
Thing is i am able to run the program sucessfully in foreground but not in the background .
It i snot giving any short dump also just JOB is cancelled with the exception 'Job cancelled after system exception ERROR_MESSAGE'.
Can anybody please give me suggestion
Thanks,
Taragini
Maybe you are looking for
-
Podcast Download error (-50)
I can subscribe to a free podcast but when I try to download an ! with a little grey circle around it appears to the left and gives me the following error message... There was a problem downloading "Podcast name". An unknown error occurred (-50). Ple
-
IPhoto Library Needs to be Rebuilt
Error message said to reopen iPhoto while holding down th Option & Command keys. Tried several times but this didn't work. Messsage then said to rebuild th library from backup. I use Timekeeper. How to I rebuild the library?
-
Non fonctionnement de adobe premiere elements 11
Bonjour J'ai chargé adobe première element 11. mais lorsque je le lance, et arrivé au niveau de quick time. il s'arrête et un msg windows apparait "Adobe premiere a cessé de fonctionner correctement................................. J'avais quick time
-
HI can you let me know which tax procedue to be used since there is one with judriction and another condition based. can you share list of things to be done either case
-
Hi, I know that a lot of code already exists to order data in ascending/descending order. However, i am having problems with rearranging values e.g 1,2,3 becomes 3,1,2 then 2,3,1 back to orginal does anyone have any ideas on this? thanks