Performance der Workitemliste in xFlow Web
Folgende Änderungen haben die Performance verbessert:
Die Tabellen /WMD/XF_PARAM, /WMD/XF_AP_C01, /WMD/XF_LO_C01, /WMD/XF_XBBCE wurden auf "fully buffered" gestellt.
In den PO-Modulen wurde in der Methode GET_DATA der Aufruf USER_GET_DATA durch USER_GET_NAME ersetzt.
Optimierung in /WMD/CL_XF_WEB_WILIST → GET_NEW: Der Parameter
task_objwird ohne weiteren DB-Zugriff direkt ausls_agwigelesen.Optimierung in /WMD/CL_XF_WEB_WILIST →
filter_forwarded_workitems: Belege mit dem Status "SELECTED", aberagwi-reserved <> "X"werden jetzt direkt in der Selektionsmethoderetrieve_agwi( )ausgeschlossen.Optimierung in /WMD/CL_XF_RUNTIME: Attribut
m_header_onlyeingeführt. Ist dieses gesetzt, werden nur noch /WMD/WF_XF_HEAD und /WMD/WF_XF_STH gelesen.Das Setzen erfolgt nicht über Parameter, sondern über die neue Spezialklasse /WMD/CL_XF_RUNTIME_CONTROL.
Diese Klasse ist ein Singleton, hat nur private Methoden und Attribute und /WMD/CL_XF_RUNTIME sowie /WMD/CL_XF_WEB_WILIST als Freunde.
In /WMD/CL_XF_WEB_WILIST → GET_NEW wird /WMD/CL_XF_RUNTIME_CONTROL →
set_rt_header_only( )aufgerufen, wodurch ein Attribut in der Spezialklasse gesetzt wird.Im Constructor von /WMD/CL_XF_RUNTIME wird dieses Attribut wiederum mit /WMD/CL_XF_RUNTIME_CONTROL →
get_rt_header_only( )ausgelesen und entsprechend reagiert. Daraufhin werden in der Methodedb_read( )einige Select-Statements übersprungen.
Implementierung der Methode ENRICH_WITEXT_LONG in /WMD/CL_XF_AL_SBWP, /WMD/CL_XF_OC_SBWP und /WMD/CL_XF_SI_SBWP ergänzt.