1. Check List |
Objects |
1.1. Program Description |
A Program Description Adequate: |
1.2. Base Program Usage |
A Prescribed base Program Used: |
1.3. Naming Convention Correct |
A Program Name: |
B Development Class: |
C Tables: |
D Internal Table: |
E Work Fields (Global/Local): |
F Parameters: |
G Selection Options: |
H Includes: |
I Types: |
J Field-Groups: |
K Field-Symbols: |
L Constants: |
M Forms: |
N Statics: |
O Objects/Classes: |
P Methods: |
1.4. Modification Change Management |
A Change History In Program Header: |
B Begin of Modification Line Included: |
C End of Modification Line Included: |
D Inserted Line History: |
E Commented Line History: |
F Suitable Comments Include: |
1.5. Program Elements Sequence |
Tables |
Data (including Internal Table) |
Work Fields |
Field-Groups |
Classes |
Includes |
Selection Options |
Parameters |
1.6 Program Events |
Load-of-program |
Initialisation |
At Selection-Screen Output |
At Selection-Screen on Help/Value Request |
At Selection-Screen |
Start-of-Selection |
Get |
End-of-Selection |
At Line-Selection |
At PFXX |
At User-Command |
Top-of-Page |
End-of-page |
Forms |
Methods |
Interfaces |
1.7. Indentation |
A Indentation Proper (use of Pretty Printer) |
1.8. Includes (Specific to project) |
A RVADTABL Included |
1.9. Function Modules Used |
A TOP-OF-PAGE |
B Y_BU_REPORT_HEADING (Specific to project) |
1.10. Text elements used: |
A Title / heading line |
B Selection texts with clear meaning |
C Text symbols for literal texts |
1.11. Selection Screen / Other Screens: |
A Easy to understand and not cluttered. (Define additional selection-screen, if the Screen looks crowded or cluttered) |
B Screen elements placed in logical order |
C Logically related elements in separate blocks |
D Adequate info texts for correct selections |
E Function Keys with info-texts / labels |
F Icons with info-texts / labels |
G Error messages meaningful |
H Menu bar proper |
1.12. Data Takeon |
A In case of BDC & Downloads – Does the Output list the number of records Read? |
B In case of BDC & Downloads – Does the Output list the number of records Inserted / Downloaded ? |
C In case of BDC & Downloads – Does the Output list the number of records in error? Is an Error file created with the incorrect records? |
D In case of BDC, if there are erroneous records, Is there a dialog asking whether we should still continue the process? |
E In case of BDC – Does the Output list the Error messages? |
F If BDC processing is by a scheduled session then appropriate details like session name, user name, locked or not etc accepted ? ( Can be done using include BDCRECXX ). |
1.13. Performance Issues : |
Database accesses |
A "Select where Please Insert ‘ Mandt’ ’ and client specified in all Select statements |
B Select single used where appropriate |
C Select .. Into table.. used instead of append (Try to avoid appending records and processing in a Select.. Endselect loop) |
D Select * avoided wherever possible |
E Nested select avoided if possible |
F For mass modifications based on a condition, use " Update in place of " Select .. Where ..update |
G Select aggregate records directly from the database tables rather than selecting individual records into an internal table and then obtaining aggregate values |
Internal Table accesses |
H Tables defined as sorted types with keys, wherever possible |
I Key fields for sorting are at the beginning of the table structure |
J " Loop at |
K Tables filled directly by "Select from |
L Tables modified with " Modify |
M Tables sorted in proper order of fields before reading for final output |
N Access a specific record by " Read table with key f1 = k1 binary search " instead of " Loop at |
O Table work area cleared before copying records / fields between internal tables |
P Use " Collect |
Q For mass modifications based on a condition, use " Modify |
For BDCs source file reading |
R If the source data file for a BDC is very voluminous, then it should be stored on the application server so that the entire procedure may be run in the background. Logical and Physical filenames to be used in this case. |
1.14. Test data: |
A Test data available |
1.15. Documentation |
A Documentation Complete |
1.16. Exceptional Handling |
A Is sy-subrc being checked after every select statement. In case it fails , any steps? |
1.17. Modularization |
A Forms created for modularization |
1.18. Messages (Specific to project) |
A 398(00) with Text-Mnn used |
1.19. External Calls |
A Programme Contains External Calls |
1.20. General |
A Extended Check done? |
B Code Inspector check done? |
if you want to publish or Add something on ERP, SAP , SAP FUNCTIONAL, SAP ABAP then mail us along with your email-id. contain must be yours email-id :- avinashkr_raj@yahoo.com(any email) email-id :- avinaskr_raj.abap@blogger.com
Go on link..
link us with ...
Sunday, January 9, 2011
SAP ABAP CODE REVIEW CHECKLIST BDC
Labels:
SAP implementation
Subscribe to:
Post Comments (Atom)
link us...
For Visitors
if you want to publish or Add something on ERP, SAP , SAP FUNCTIONAL, SAP ABAP then mail us along with your email-id. contain must be yours
email-id :- avinashkr_raj@yahoo.com(any email)
email-id :- avinaskr_raj.abap@blogger.com ( use only gmail)
email-id :- avinashkr_raj@yahoo.com(any email)
email-id :- avinaskr_raj.abap@blogger.com ( use only gmail)
No comments:
Post a Comment