04-28-2015 6:48 AM
Hi experts,
I'm creating a proposal in the transaction f110 , it will schedule the background job but is going for the short dump. I've read the reasons in st22. It was saying
The ASSERT condition was violated.
what happened?
In the running application program, the ASSERT statement recognized a
situation that should not have occurred.
The runtime error was triggered for one of these reasons:
- For the checkpoint group specified with the ASSERT statement, the
activation mode is set to "abort".
- Via a system variant, the activation mode is globally set to "abort"
for checkpoint groups in this system.
- The activation mode is set to "abort" on program level.
- The ASSERT statement is not assigned to any checkpoint group.....
.
;
;
etc.....
below is the piece of code where the error was occurred as per the short dump given
in the includeprogram : LFMPU_RF16
21 l_wrbtr LIKE bseg-wrbtr,
22 * Transaktionswährung
23 l_waers LIKE fmifiit-twaer.
24
25 *----- Buchungskreis und Finanzkreis haben identische Währungen
26 l_curtp = u_f_control_data-flg_fm_curtp.
27 IF l_curtp IS INITIAL.
28 l_curtp = '10'.
29 ENDIF.
30
31 *----- Betrag in Hauswährung lesen
32 READ TABLE u_t_acccr
33 WITH KEY posnr = c_f_accit-posnr
34 curtp = l_curtp
35 BINARY SEARCH.
>>>>> ASSERT sy-subrc = 0.
37 l_dmbtr = u_t_acccr-wrbtr.
38 l_waers = u_t_acccr-waers.
39 IF l_waers <> u_f_control_data-waers.
40 IF 1 = 2.
41 MESSAGE e070(ficustom) WITH c_f_accit-bukrs
42 c_f_accit-fikrs
43 l_curtp.
44 * Buchungskreiswährung ungleich Finanzkreiswährung
45 ENDIF.
46 PERFORM message_send USING 'FICUSTOM' 'E' '070'
47 c_f_accit-bukrs c_f_accit-fikrs
48 l_curtp space.
49 ENDIF.
04-28-2015 8:29 AM
04-29-2015 11:44 AM
Hello Nagendra Babu,
'ASSERT condition violation' is a generic dump that could occur because of many reasons.
in the source code of the ST22 dump, where ever it shows ' >>>>> ' (line 36 in the source code that you showed above) put a breakpoint and check why is the condition failed.
This way, you can get an idea if you are missing some parameters or if you are violating any condition.
Regards,
Shankar