我正在寻找一种可靠的方法来获取创建或扩展OpenOffice/LibreOffice报告文件时可用数据字段的名称。
我已经从现有的报告中知道了许多字段名。我还可以在模块定义中查找字段名。
例如,在文件addonsbaserespartnerpartner.py中,我找到了合作伙伴模型的字段列表:
class res_partner(osv.osv):
_columns = {
'name': fields.char('Name', size=128, required=True, select=True),
'date': fields.date('Date', select=1),
'title': fields.many2one('res.partner.title','Partner Form'),
'parent_id': fields.many2one('res.partner','Parent Partner'),
'child_ids': fields.one2many('res.partner', 'parent_id', 'Partner Ref.'),
# many more...
}
但这只是猜测,并不完整。我更愿意知道任何给定报告中真正可用的字段,而不是猜测。
也有来自链接表的数据报告,这也很重要。
例如,如果我打印发票,还应该有报告可用的送货地址和账单地址,包括联系人的姓名字段。
(也可以使用OpenOffice的"OpenERP报告设计器"插件。您可以在这里找到解决方案:如何使用OpenOffice/LibreOffice的OpenERP报表设计器插件获得字段列表
我如何找到可用的字段-最好还知道如何使更多的现有字段对报告可用,例如从链接表。
这可能包括如何查找提供字段的函数定义。我想,通过扩展相应的模块并重写将数据传递给报告的函数,最好能使更多字段可用。
在管理菜单下,打开自定义:数据库结构:对象。(我用的是5.0版本。菜单在6.0中发生了变化,所以您可能需要寻找它。)搜索您感兴趣的对象,然后打开表单。它将列出所有字段,包括相关字段、继承字段和功能字段。
如果您想知道如何扩展模块并添加相关字段,请阅读不同类型的字段。一种是related
字段