Hi.
To improve DSO Load, I suggest the 2 task.
1 step
To use "Select" statement becasue FI-GL DSO have many documents , Be Configure the appropirate index in "/BI0/AFIGL_DS00" table. In your select statement case, let you make index with "DOCNUM + POSKY " in t-code se11.
2 step
If you have more than 100 records in internal table, you make use "READ TABLE ... WITH KEY
.... BINARY SEARCH " Instead of "READ TABLE .... WITH KEY ".
Before using "BINARY SEARCH" option , you must be sure that internal table is sorted with fields using " WITH KEY".
In your case , use "SORT IT-FIG BY DOCNUM" statement after select statement,
let you change your read table statement with
READ TABLE IT_FIG WITH KEY DOCNUN = <RESULT_PACKAGE>-BILNO INTO WA_FIG
BINARY SEARCH.