2022 Nov 18 12:00 PM
Hi gurus,
I'm facing a performance problem with FPVA, I allready clean the DFKKLOCKS from all lock that were due, but still the DFKKLOCKS is on the top of my SQL trace, I look at the abap code I realise that at this point of the code the search use only the GPART even when I'm using a VKONT as object to create the intervals:
include: LFKKLOCK_SERVICEF01
from line 211: I'll spect that the program goes for the first block, but l_fieldname is not VKONT ¿?, so I'm getting all the blocks for the GPART with others VKONT diferent the one I'm working.
IF l_fieldname = 'VKONT'.
CLEAR ls_dfkklocks.
SELECT (it_flst)
FROM dfkklocks
INTO CORRESPONDING FIELDS OF ls_dfkklocks
WHERE (it_where_cond) "#EC CI_DYNWHERE
AND fdate IN pt_fkkr_fdate
AND tdate IN pt_fkkr_tdate
AND proid IN pt_fkkr_proid
AND lockr IN pt_fkkr_lockr
ORDER BY vkont.
APPEND ls_dfkklocks TO it_dfkklocks.
* if it happens, that there are more than 10000 locks for the
* same vkont, the program select all locks (there is no limit)
IF l_count_select > gc_db_count AND
ls_dfkklocks-vkont <> l_first_record.
EXIT.
ENDIF.
ADD 1 TO l_count_select.
ENDSELECT.
ELSE.
CLEAR ls_dfkklocks.
SELECT (it_flst)
FROM dfkklocks
INTO CORRESPONDING FIELDS OF ls_dfkklocks
WHERE (it_where_cond) "#EC CI_DYNWHERE
AND fdate IN pt_fkkr_fdate
AND tdate IN pt_fkkr_tdate
AND proid IN pt_fkkr_proid
AND lockr IN pt_fkkr_lockr
ORDER BY gpart.
APPEND ls_dfkklocks TO it_dfkklocks.
Regards
Cristian