Code Review Tips
来源:互联网 发布:cnc数控编程入门教程 编辑:程序博客网 时间:2024/06/06 05:30
问题1:Cascade Delete on 1:MLinks
新添加的Link没有设置级联属性,Cascade Delete,会在数据库中产生大量的垃圾数据。有三种情况,解释如下:
Ø On M:M links, the “Cascade Delete” property should be set to “None”.The deletion of the association row is automatic and the childis dependent on the “Inter Child Delete” property.
Ø On 1:M links where the child BC has no other relationships, the“Cascade Delete” property should be set to “Delete”. This will avoid orphanedrecords.
Ø On 1:M links where the child BC has other relationships, the“Cascade Delete” property should be set to “Clear”. This ensures that the FKon the child BC is cleared.
所以1:M的Links其属性Cascade Delete值不是“Clear”就是“Delete”。
问题2:Force Active属性
在BC一级和BC的Fields上都可以设置,但是一般情况下,这个属性是不需要勾选的,非常消耗性能。
问题3:计算字段
“SUM or COUNT”类似的计算字段及其影响性能,避免使用不必要的计算字段。需要注意的是在List Applet中字段更是严重消耗性能。
问题4:Sort specifications和Search specifications 属性
BC上的’Sortspecifications‘或者‘Search specifications’建立在没有索引的字段上。尤其是’Sort specifications‘指定的字段在多个时,字段顺序也要符合字段在索引中的顺序,
这样可以使数据库选择更合适的索引,甚至避免数据库在临时表中进行无谓的物理排序。
一定避免在‘Search Specifications’中使用Join来的字段。
问题5:Multi Value Link没有配置正确
在BC的Multi Value Link中没有配置正确的“Use PrimaryJoin” 和 “Primary Id Field
问题6:多个Fieleds对应同一个Table column
BC中多个Fieleds对应同一个table column,这个问题出现的较少。问题7:Upgrade Ancestor属性没有设置
未设置“Upgrade Ancestor” 属性,复制OOTB的对象,最好都设置此属性。如果涉及到升级情况,会出现非常多的问题。
问题8:大量的Inactive的对象没有删除掉
If custom object definitions are no longerused, it is better to delete them than toinactivate them.
问题9:系统字段重复定义
如下系统字段是不需要在BC上重复定义的,可以直接使用[Id], [Updated], [Updated by], [Created],and [Created by]
问题10:View的 Visibility 属性
View的 Visibility 属性配置错误,View Mode。这样会导致一些数据读取权限问题。
问题11:view的Thread properties属性
Thread properties 没有正确的配置,这样通过“History List”导航浏览时会出现问题。
问题12:对象命名规范和代码书写规范
这个几个规范是比较初级的规范,比如Service 和Workflow的名字,但是我们很多自己定制的对象命名还是很混乱。有必要自己去再看一看文档。在代码书写上,在一些分支点,多一些判断,比如2条分支时else需要做什么,三条以上分支时是否可考虑用Switch;在Switch中的default语句处理需要怎样做容错处理。
在很多BS或者WF缺少异常处理,不仅仅是拉一条红线的问题,比如在WF中的红线与代码中的throw (e)配合。
问题13:出错时没有把异常写入Log文件
Log文件在后期我们的调试中会是奇兵的作用- Code Review Tips
- code review
- Code review
- Code Review
- Code Review
- Code Review
- Code Review
- code review
- Code Review
- code review
- code-review
- code review
- code Review
- Code Review
- code review
- code review
- Code Review
- code review
- Oracle中文转拼音函数
- 数据库不在本机的ArcSDE服务安装配置
- Compound Words
- 使用os.walk()方法
- 题目1511:从尾到头打印链表-九度
- Code Review Tips
- 矩阵乘法(Matrix Multiply)
- AS3.0 HTML标签
- webservice 总结的学习贴
- 最小生成树问题
- HDU-4614-Vases and Flowers
- js,php实现用ua判断手机,ipad,pc浏览器访问网页不同尺寸页
- vim 使用进阶
- 恢复 git reset -hard 的误操作