12.1.11

SAP Note 17698 - Line item: Fast selection via allocation

Symptom:

Summary

Symptom

The selection of open and cleared items in the line item display via the allocation number is to be speeded up.

Additional key words

RFEPOS00, FBL1, FBL3, FBL5, ZUONR, allocation, TZUN, performance

Cause and prerequisites

Large number of items on an account.

Solution

Difficult, since the field can contain upper/lower case and only the selection conditions existing in upper case are passed on.
An advance correction is possible, but is only useful if only numeric characters ('numbers') or CAPITAL letters are contained in the allocation number. 1. /NSE38 - RFPOSTOP - FIND RANGES
...
RANGES: XBLNR FOR BSID-XBLNR.
RANGES: ZUONR FOR BSID-ZUONR. <-- Insert

2. /NSE38 - RFPOSFS0 - FIND BLDAT
FORM SELEKTION_AUSFUEHREN.
...
REFRESH: BLDAT.
LOOP AT SELTAB WHERE KTEXT = 'BLDAT'.
CHECK SELTAB-XINIT = SPACE.
PERFORM SELTAB_RANGE_FUELLEN
USING BLDAT-LOW BLDAT-HIGH BLDAT-OPTION BLDAT-SIGN.
APPEND BLDAT.
ENDLOOP.
REFRESH: ZUONR. <-- insert
LOOP AT SELTAB WHERE KTEXT = 'ZUONR'. <-- insert
CHECK SELTAB-XINIT = SPACE. <-- insert
PERFORM SELTAB_RANGE_FUELLEN <-- insert
USING ZUONR-LOW ZUONR-HIGH ZUONR-OPTION ZUONR-SIGN. <- insert
APPEND ZUONR. <-- insert
ENDLOOP. <-- insert
(These 7 statements are best copied from the above statements for BLDAT and then replace BLDAT by ZUONR.) 3. /NSE38 - RFPOSFB0, FORM routine BSID_LESEN and BSAD_LESEN
(Example only for customers! Other account types analogously):
FORM BSID_LESEN USING KONTO VBUKR.
...
CLEAR: BSID-AUGDT. <-- insert
SELECT * INTO BSID
FROM BSID
WHERE BUKRS = VBUKR
AND KUNNR = KONTO
AND UMSKS BETWEEN VVSHB AND BVSHB
AND UMSKZ BETWEEN VONUM AND BISUM
AND AUGDT EQ BSID-AUGDT <-- insert: 3.0A - 3.1H!
AND AUGBL EQ SPACE <-- insert: 3.0A - 3.1H!
AND BELNR IN BELNR
...
AND XBLNR IN XBLNR
AND ZUONR IN ZUONR <-- insert
...
ORDER BY PRIMARY KEY.
PERFORM POSTAB_BSID_FUELLEN.
ENDSELECT.
Providing, fields AUGDT and AUGBL have already been supplied
in the WHERE condition (as of Release 3.1I), do not change
these lines.

FORM BSAD_LESEN USING KONTO VBUKR.
...
SELECT * INTO BSID
FROM BSAD
WHERE BUKRS = VBUKR
AND KUNNR = KONTO
AND UMSKS BETWEEN VVSHB AND BVSHB
AND UMSKZ BETWEEN VONUM AND BISUM
...
AND XBLNR IN XBLNR
AND ZUONR IN ZUONR <-- insert
...
ORDER BY PRIMARY KEY.
PERFORM POSTAB_BSID_FUELLEN.
ENDSELECT.
ENDFORM.

4. As from release 4.0A: Analogous enhancement of the SELECT statements
in include RFPOSFT1, form routines BSID_LESEN_HIGHPERFORMANCE and
BSAD_LESEN_HIGHPERFORMANCE (Example for customers only! Other
account types in analogy):

FORM BSAD_LESEN_HIGHPERFORMANCE USING KONTO VBUKR.
SELECT (TRATAB)
FROM BSAD
INTO CORRESPONDING FIELDS OF BSID
WHERE BUKRS = VBUKR
...
AND XBLNR IN XBLNR
AND ZUONR IN ZUONR <-- insert
...
ENDSELECT.
ENDFORM.
...
FORM BSID_LESEN_HIGHPERFORMANCE USING KONTO VBUKR.
SELECT (TRATAB)
FROM BSID
INTO CORRESPONDING FIELDS OF BSID
WHERE BUKRS = VBUKR
...
AND XBLNR IN XBLNR
AND ZUONR IN ZUONR <-- insert
...
ENDSELECT.
ENDFORM.

Header Data



Release Status:Released for Customer
Released on:26.06.2001 22:00:00
Master Language:German
Priority:Recommendations/additional info
Category:Performance
Primary Component:FI Financial Accounting

Affected Releases

Release-Independent

Related Notes




194842 - Poor performance when you display line items
Print Selected Notes (PDF)

No comments:

Post a Comment