Académique Documents
Professionnel Documents
Culture Documents
Module: Seq Issue No. GENERAL: Never use 1. Priority High Code Segment Reviewer: Status/Comments
2.
3.
sy_user_id.current_entity except to default entity in parent block upon form invocation. Never use format masks YY in a date field. This includes form items, or to_char(date) and to_date(char) function calls. Where clauses: Must be particularly careful of null columns. For example: code like: Where a.item_no = b.item_no and a.item_style = b.item_style
High
High
4.
5. 6.
7.
is wrong. Item style can be null. Must use proper entity_all in the where clauses. In the above example, it should also have one more line like and a.im_entity_all in (b.im_entity_all, ALL). Customer, Item, Project, ct_addr_code, ar_cust_addr_code, ap_vend_addr_code all of them require either the proper entity_all or entity in the where clause. Thats why using get_ _db is much safer. Make sure we use the right entity_all. Cust-entity-all is no good for item, for example. Typecast local and parameter variables (use %TYPE and %ROWTYPE) wherever possible. Failure to use them causes lot of heartburn later on. There should be no unused variable, commented out code, unused program-units, triggers, etc.
High
High Med
Med
in a form. This prevents implicit conversions, which are source of many Y2K problems. Also use proper masks if
High
94228705.doc
Page 1 of 5
High
3.
High
4.
High
5. 6.
High High
7. 8. 9.
10.
High
94228705.doc
Page 2 of 5
11. 12.
High High
13.
High
14.
Med
15.
Med
16.
High
17.
94228705.doc
Page 3 of 5
18.
19.
High
handling. Refer to standards doc on intranet. Get procedures used whenever appropriate. Well documented with comments good for another programmer. Existing procedures used wherever appropriate. Explain Plan run for any major/new/repeating query clause. Enough future variables for commonly used procedures/functions. Variables named properly: a) l_.. for local variables b) p_.. for parameters passed into the form. c) Cp_.. for cursor
94228705.doc
Page 4 of 5
8. 9.
High High
customer no must have custentity-all or entity. Any table/view that has item-no High 2. must have item-entity-all or entity. Any table/View that has account High 3. (no) must have acct entity-all or entity. Any table/View that has Project 4. High No/Job no must have entity. Comments in table/column 5. High creates. Legends where appropriate. The column comments go into tech doc, please pay attention to make sure they are meaningful. Column names: Date fields 6. Med should end with _date, amt fields should end with _amt. Same is true for user_id, user_ref, emp_no, project_no, etc. Make sure constraints, unique 7. High indexes, foreign keys, etc. have been considered when creating a new table or adding new column(s) to an existing table. Column name Status is 8. High usually meant for application specific statuses (like Open, Closed, etc.). Last_status, instead, is used for Added, Changed, Deleted, and is needed if necessary to retain history. OTHERS: In addition to this checklist, please watch out for other possible problem areas: abstruse code, dependence on untenable assumptions (for example: not using NVL for nullable columns in where clause), statements that are nested too deep to read, fetch/update out of sequence, closing cursor inside if .. then, etc.
High
94228705.doc
Page 5 of 5