OpenERP备忘录
- 
- 进销存进阶文章:
 OpenERP中采购销售的财务处理:http://shine-it.net/index.php/topic,2594.msg8667.html#msg8667
 OpenERP中销售订单的预收款及多次开票的处理: [检测到链接无效,已移除] br />OpenERP的价格表(Pricelist)机制:http://shine-it.net/index.php/topic,2446.msg8196.html#msg8196
 OpenERP财务管理若干概念讲解:http://shine-it.net/index.php/topic,2431.msg8090.html#msg8090
 OpenERP分析会计(Analytic Account)应用案例: [检测到链接无效,已移除] br />OpenERP系统销售业务的财务处理总结:http://shine-it.net/index.php/topic,4557.0.html
 OpenERP销售业务若干实务案例的操作方法 [检测到链接无效,已移除]
 OpenERP多币种处理:http://shine-it.net/index.php/topic,2760.0.html
 OpenERP的小数精度问题 : [检测到链接无效,已移除]
 案例解说OpenERP中复杂产品单位的设置问题 : [检测到链接无效,已移除] br />案例解说OpenERP中委外加工的实现方法:http://shine-it.net/index.php/topic,4482.0.html
 OpenERP中多规格产品的处理方式 [检测到链接无效,已移除] br />OpenERP库存管理的若干概念讲解(新增库存价值):http://shine-it.net/index.php/topic,2425.msg8079.html#msg8079
 OpenERP的实时库存价值:http://shine-it.net/index.php/topic,2586.msg8628.html#msg8628
 深入解说OpenERP的各种提前期和时间 : [检测到链接无效,已移除] br />生产型企业原材料采购及入库的处理: [检测到链接无效,已移除] br />OpenERP中生产领料、投料、损耗、退料、成品入库的操作方法: [检测到链接无效,已移除]
 3)其他
 OpenERP生产基本概念:http://shine-it.net/index.php/topic,2746.msg9256.html#msg9256
 理解OpenERP的BoM表的Properties:http://shine-it.net/index.php/topic,2574.msg8554.html#msg8554
 OpenERP的生产成本解说:http://shine-it.net/index.php/topic,2576.msg8578.html#msg8578
 OpenERP的市场及客户关系管理若干概念讲解:http://shine-it.net/index.php/topic,2427.msg8073.html#msg8073
 OpenERP 7.0合同管理的概念: [检测到链接无效,已移除]
 OpenERP的权限设置:http://shine-it.net/index.php/topic,2503.msg8282.html#msg8282
 深入理解OpenERP的工作流(Workflow):http://shine-it.net/index.php/topic,2494.msg8283.html#msg8283
 OpenERP报表开发机制: [检测到链接无效,已移除] br />OpenERP V6.1中采购及库存管理相关的几个Bug修正: [检测到链接无效,已移除]
 企业信息化为什么要优先选用ERP平台软件: [检测到链接无效,已移除] br />企业信息化与OpenERP: [检测到链接无效,已移除] br />Openerp压力测试:OpenERP Web Client 无缓存1000并发测试OpenERP Server 性能 :http://shine-it.net/index.php/topic,2557.0.html
 OpenERP多核CPU支持:http://shine-it.net/index.php/topic,5745.msg14182.html#msg14182
 OpenERP 7.0 Web模块开发:http://shine-it.net/index.php/topic,5747.0.html
 
- 进销存进阶文章:
- 
many2many 
 (0,0,{values}) 根据values里面的信息新建一个记录。
 (1,ID,{values})更新id=ID的记录(写入values里面的数据)
 (2,ID) 删除id=ID的数据(调用unlink方法,删除数据以及整个主从数据链接关系)
 (3,ID) 切断主从数据的链接关系但是不删除这个数据
 (4,ID) 为id=ID的数据添加主从链接关系。
 (5) 删除所有的从数据的链接关系就是向所有的从数据调用(3,ID)
 (6,0,[IDs]) 用IDs里面的记录替换原来的记录(就是先执行(5)再执行循环IDs执行(4,ID))
 例子[(6, 0, [8, 5, 6, 4])] 设置 many2many to ids [8, 5, 6, 4]
 one2many
 (0, 0,{ values })根据values里面的信息新建一个记录。
 (1,ID,{values}) 更新id=ID的记录(对id=ID的执行write 写入values里面的数据)
 (2,ID) 删除id=ID的数据(调用unlink方法,删除数据以及整个主从数据链接关系)
 例子:
 [(0,0,{'field_name':field_value_record1,...}),(0,0,{'field_name':field_value_record})]
 many2one的字段比较简单,直接填入已经存在的数据的id或者填入False删除原来的记录。
- 
View的字段定义中的default_get 及 Parent 备注 
 如stock_view.xml的stock.picking 的Form中有如下定义:
 <field colspan="4" name="move_lines" nolabel="1" widget="one2many_list" default_get="{'move_line':move_lines}">
 其含义是在context中设置变量{'move_line':move_lines},该变量可以在stock.move的字段缺省值函数中使用。即stock.move的字段缺省值函数中,如果context中有变量move_line表示该stock.move是从stock.picking中创建。如果没有变量move_line,则它可能是别的途径创建。
 视图定义中可以用parent 引用父视图中的字段值。
- 
 OpenERP V6.1 报销事务处理详解:http://shine-it.net/index.php/topic,2790.0.html
- 
- openerp-server-6.0.3\bin\report\render\rml2pdf\trml2pdf.py
 修改点有:
 a) 支持RML的Directive:<pageDrawing> 及 <pageInfo>
 b) 支持RML的Image Directive 的属性'preserveAspectRatio - Boolean'
 Preserve Aspect Ratio: A flag determining whether the image's aspect ration should be conserved under any circumstances.
 c) 修正Bug:下述RML上显示产品照片时候,所有行总是显示第一行的照片
 <td>
 <image width="60" height="90" preserveAspectRatio="True" >[[ line.product_id and line.product_id.product_image or removeParentNode('image') ]]</image>
 </td>
 2) OpenERP 6.0.3\Server\addons\mrp\mrp.py
 修改点: 避免BoM表的MRP运算陷入死循环
 3) OpenERP 6.0\Server\addons\procurement\schedulers.py
 Bug修正:当符合条件state='confirmed' and procure_method='make_to_order' 的procurement_order 超过500时候,系统的最小库存规则运算失效。
 4) OpenERP 6.0.3\Server\addons\mrp\stock.py
 修改点:
 对于Sets/Phantom 类型的产品(下文称A产品)的SO单,当SO确认时候,
 1)系统自动创建一张A产品的出货单(Delivery Order, stock.picking),库存移动单(stock.move), 补货单(procurement.order)。相关代码参见:Sale模块的 sale.py 的 action_ship_create
 2)系统自动确认出货单(DO),此时,系统自动将DO上的A产品用BoM表里的产品替换掉(因为是Sets/Phantom 类型的BoM),并生成新的补获单(BoM中的每个产品一个补货单)。相关代码参见:mrp模块的 stock.py 的 _action_explode
 3)系统自动关闭原来的补货单(A产品)。问题是这里有个Bug,A产品的补货单关闭不了。修改方法是,在mrp模块的 stock.py 的 _action_explode 中增加一行:wf_service.trg_validate(uid, 'procurement.order', m, 'button_confirm', cr)
 1) openerp-6.1\openerp\addons\account\report\account_financial_report.py
 Bug修正:财务报表的余额符号(sign)设置无效。
 2) openerp-6.1\openerp\addons\base\res\ir_property.py
 Bug修正:多公司数据导入时候,例如下述res.partner 的property字段数据对应的系统property parameter,其公司总是当前用户的公司。现改为总是取Property值(如 应收账款)对应的公司。
 "id","name","property_account_payable/name","property_account_receivable/name","category_id/id","company_id/name"
 "res_partner_test001","测试","220200 应付账款 Shop1","112200 应收账款 Shop1","base.res_partner_category_0","Shop 1"
 DIFF文件参看附件。
 
- openerp-server-6.0.3\bin\report\render\rml2pdf\trml2pdf.py
- 
[quote author=lky link=topic=2639.msg9800#msg9800 date=1335448521] 
 外协加工过程中,要向B供应商提供物料,如何处理呢?
 [/quote]
 为供应商设置特定的’供应商库位‘
 在工艺路线的生产库位中选择‘供应商库位’, 这样就可以实现委外物料向供应商提供,加工完成产品返回本地生产库位。
 如果要手工确认这些物料外派单,还要安装‘no auto picking' 模块,并在相关物料上勾选‘no autopicking'
- 
OpenERP会计帐套年末结转的处理 
 0)结转前确认科目类型及结转方法(Deferral Method)是否完全正确
 None:不结转,通常是损益类科目
 Balance:余额结转,通常是资产、负债、权益类科目
 Detail:完全结转,即会计凭证原样搬至下一期
 Unreconciled:结转未核销凭证,通常是应收、应付类科目
 1)结转前务必备份数据库,用备份的数据库恢复若干个测试数据库,在测试数据库上先结转,
 根据测试结果修正科目的结转类型,直到确认科目结转正确无误,再开始实际结转。
 2)创建新财务年度及会计期间
 3)创建Opening/Closing Journal
 Journal类型必须是:Opening/Closing Situation
 默认借贷科目通常类似于:111300 Reserve and Profit & Loss Account(generic chart of accounts).
 必须勾选Centralised counterpart 。
 4)凭证结转:Accounting ‣ Periodical Processing ‣ End of Period ‣ Generate Opening Entries.
 可以多次结转,系统会自动覆盖前一次的结转凭证
- 
非常有用,谢谢! 
- 
新增备忘录: 
 1)OpenERP中实际库存移动时间的控制: [检测到链接无效,已移除] br />2)画面编辑/创建/删除/复制功能控制: [检测到链接无效,已移除] br />3)OpenERP MRP运算中的小数精度问题详解: http://shine-it.net/index.php/topic,16186.0.html
