OpenERP销售模块源码分析
-
计划在群里读一下sale模块的源代码
1.先从销售模块的安装,看他都装了哪些对象,对应的都是哪些后台表
2.按每个界面每个功能是如何实现的,1行行的学习代码
首先分析 ir_module_module 模块表和ir_module_module_dependency 模块依赖表
1.安装sale模块需要依赖"stock""procurement""board"
2. procurement又依赖于account
3. Account模块又依赖于"base_setup""product""analytic""process""board""edi"
……
这里可以看出oe模块化的设计,sale模块安装过程中,安装了很多小的模块,这些模块之间有一个树形的依赖关系。
每安装完一个模块后,会从wkf_instance (工作流实例.workflow intance)表中取出ID号,作用还不知道?
已安装的模块会标记为“installed”
从ir_model_fields表中取模块(表)的字段,写入ir_model和ir_model_data表中。
然后写入ir_ui_view,arch字段应该就是addons目录下的xml文件的内容
接着写入ir_ui_menu ,这里面的2个"<二进制数据>"字段,是ico图像文件名? 是
写入ir_values
不细看这部分了
思想如老肖书中所述如下:
至此,我们基本上理清了OpenERP 的背后动作:
1) 从表ir_ui_menu 中读取菜单信息,显示在画面上
2) 当用户点击菜单时,从表ir_values 中找到该菜单对应的Action
3) 从表ir_act_window 和ir_act_window_view 中,找到Action 关联的对象和视图
4) 从表ir_model 和ir_model_fields 取得对象和字段信息,构建访问对象(本例是x_qingjd)的SQL 文
5) 从表ir_ui_view 中取得视图信息,尤其是视图结构XML,根据视图结构XML 构造画面
6) 将对象数据显示在视图画面上。