родимых,Условных Корпоративный RML Header с docIf
есть запрос на печать корпоративного заголовка определенного пользователя только на первой странице бизнес-документ в формате PDF (такие как счета-фактура, продажи котировка, заказ клиента). Все остальные страницы отчетов в формате PDF должны содержать только наш корпоративный логотип.
Лаки, чтобы найти post of Brett Lehrer я пытался добиться этого с помощью
<header>
<pageTemplate>
<frame id="first" x1="1.3cm" y1="3.0cm" height="21.7cm" width="19.0cm"/>
<stylesheet>
<!-- style definitions in here -->
</stylesheet>
<pageGraphics>
...
<!-- corporate logo definition in here -->
...
<docIf cond="doc.page==1">
...
<!-- all corporate contact data in here -->
...
</docIf>
</pageGraphics>
</pageTemplate>
</header>
в определении пользовательского корпоративного заголовка RML.
Далее модифицированный файл ./odoo/openerp/report/render/rml2pdf/trml2pdf.py
в функции def _flowable(...)
обрабатывать <docIf>
тег следующим
elif node.tag == 'hr':
width_hr=node.get('width') or '100%'
color_hr=node.get('color') or 'black'
thickness_hr=node.get('thickness') or 1
lineCap_hr=node.get('lineCap') or 'round'
return platypus.flowables.HRFlowable(width=width_hr,color=color.get(color_hr),thickness=float(thickness_hr),lineCap=str(lineCap_hr))
##### edit-start ####
elif node.tag == 'docIf':
return platypus.flowables.DocIf(node.get('cond'), self.render(node))
##### edit-end ####
else:
sys.stderr.write('Warning: flowable not yet implemented: %s !\n' % (node.tag,))
return None
Но это принесло не требуемый результат:
печатает корпоративные заголовка на PDF без какой-либо из определения внутри тегов <docIf>
на каждые страница. Кажется, что состояние никогда не становится True.
Веб-исследование в течение нескольких дней теперь не принесло результата.
Любой из вас может решить такой запрос или сыграть с условным выходом RML в OpenERP/odoo?
Вы можете помочь, пожалуйста? Ваши комментарии/идеи высоко ценятся. Спасибо