cancel
Showing results for 
Search instead for 
Did you mean: 

How to continue executing batch job even after error

RaviSee
Explorer
0 Kudos
728

Hello,

I have a requirement where i have to continue batch job even after error and the job should not cancel and the message should appear as error not like information or warning in the job log.

Sandra_Rossi
Active Contributor
0 Kudos
See explanation and solution in the official ABAP documentation of MESSAGE (behavior in a background job): https://help.sap.com/doc/abapdocu_latest_index_htm/latest/en-US/index.htm?file=abenabap_message_batc...
RaviSee
Explorer
0 Kudos
It seems there is no other way to handle error msg without stopping the job?
Sandra_Rossi
Active Contributor

Please read again the documentation. Isn't it clear how to solve?

Messages of type E and A are written to the log. A check is then performed to see whether the message is handled using error_message. If this is not the case, the message is also written to the log with message number 564 of the message class 00 and current background processing is terminated, whereby a message of type A executes a database rollback and a message of type E does not. Background processing is resumed when the message is handled.

It means that the "current background processing is terminated" only if you don't handle using error_message, which means "it is not terminated" if you handle using error_message. "error_message" is a hyperlink to another document.

RaviSee
Explorer
0 Kudos
Hello @Sandra_Rossi, Sorry for the late answers, i am new to this topic. Yes i have seen errors in V_SA (Collective log) but it is creating deliveries.
View Entire Topic
RaviSee
Explorer
0 Kudos

Hello Sandra,

Thanks for the response, I am creating a delivery using batch job for program RVV50R10C and inside this we have implemented some validation at IF_EX_LE_SHP_DELIVERY_PROC~DELIVERY_FINAL_CHECK and raising an error using message statement (TYPE E) for manual process (VL01N, VL02N) and we need to implement the same error for the batch job (RVV50R10C) without terminating the job.

As per your suggestion i am going to create a new custom function module with exception error_message to handle validation inside IF_EX_LE_SHP_DELIVERY_PROC~DELIVERY_FINAL_CHECK using message statement.

Am i following the correct procedure, please guide me.

 

 

Sandra_Rossi
Active Contributor
0 Kudos
I don't know RVV50R10C, so I don't know if it can run in background. I guess that it can send standard error messages and that will stop the background job. If you don't want to stop the job for your message, you should send it as type 'S' instead of 'E'. I guess that the user exit is called in other contexts, so you should add a condition.
RaviSee
Explorer
0 Kudos

Hello Sandra_Rossi,

RVV50R10C running through background job only but i can't make message as success because it will create the delivery for the current record, want to stop the execution for the current record when the validation is success and store the message in the job log and go for the next record to process. 

Will it work like this, if i write like below?

Inside the Implicit enhancement if i create a custom function module like below
call zfunc

exporting v1

exceptions

error_message = n_error

zfunc (implementation)

if xyz = '1'.

message ' Throw error' type 'E'.

endif.

 

 

 

Sandra_Rossi
Active Contributor
0 Kudos
It should take two minutes for you to verify.