複数のオブジェクトをレポート エンジンに渡すにはどうすればよいでしょうか。
請求書に表示される他のアプリケーションからのデータを添付する必要があるカスタム請求書レポートを作成しようとしています。Web サービスを使用して OpenERP サーバーにデータを取得できますが、それをレポート エンジンに渡すにはどうすればよいですか? おそらく、
set_context or (self.localcontext.update())
メソッドはカスタム変数をレポートに渡すことができるので便利ですが、オブジェクト全体を渡すにはどうすればよいでしょうか。
他のアプリケーションからインポートしているのは、基本的に、現在のパートナーに関連する数百のレコードを含む可能性のある大規模なテーブルです。OpenERP データベースに保存する必要はなく、請求書の生成中に表示するだけです。
編集:
パーサーにあるオブジェクトをテストするには
class test_invoice(report_sxw.rml_parse):
def __init__(self, cr, uid, name, context):
super(test_invoice, self).__init__(cr, uid, name, context=context)
self.localcontext.update({
'time': time,
'test_var': 'Worked!',
'get_list': self._get_list,
})
def _get_list(self):
result = []
ress = {'first': '1',
'second': '2',
}
result.append(ress)
return result
そしてrmlファイルで
...start of rml file
<section>
<para>
[[ repeatIn(get_list(), 'g')]]
[[ g.first ]]
</para>
</section>
</story>
</document>
しかし、これは「Unicodeへの強制:文字列またはバッファが必要、タプルが見つかりました」というエラーをスローします。rml でカスタム リストを表示するにはどうすればよいですか?
ありがとうございました。