2013-06-24 6 views
0

Я изучаю, как генерировать отчеты в OpenERP, и, в частности, я пытаюсь создать отчет от wizard, но я не могу найти много документации об этом.Создайте отчет от мастера в OpenERP 7

Я уже могу создать мастер и заполнить его полями, которые мне нужны. Для этого я создал класс sales_wizard и xml-файл со структурой мастера.

мой sales_wizard.py находится внутри wizard папки в моем пользовательском модуле и похож на этот

class sales_wizard(osv.osv_memory): 

    _name = 'sim.sales.wizard' 
    print "Wizard IN" 
    _rec_name = 'building' 
    _columns = { 
       'building':fields.many2one('sim.buildings','building',required=True,ondelete='cascade'), 
       'period':fields.many2one('sim.periods','Period',required=True,ondelete='cascade') 
       } 

Что я недостает знаний, чтобы понять, как соединить мастера с созданием отчета и как передайте переменные, которые вводятся в мастере, в этом случае building и period

Любая ориентация, наконечник, ссылка в правильном направлении будет оценена по достоинству.

ответ

2

Вы можете найти много примеров отчета о печати от мастера в openerp. Позволяет проверить модуль продукта product_pricelist report & wizard.

В мастере при открытии имеется кнопка печать, в кнопке печати в ру сторон определяет код для отправки данных, чтобы сообщить

def print_report(self, cr, uid, ids, context=None): 
     """ 
     To get the date and print the report 
     @return : return report 
     """ 
     if context is None: 
      context = {} 
     datas = {'ids': context.get('active_ids', [])} 
     res = self.read(cr, uid, ids, ['price_list','qty1', 'qty2','qty3','qty4','qty5'], context=context) 
     res = res and res[0] or {} 
     res['price_list'] = res['price_list'][0] 
     datas['form'] = res 
     return { 
      'type': 'ir.actions.report.xml', 
      'report_name': 'product.pricelist', 
      'datas': datas, 
     } 

и в .rml файл файл определить пункт как <para style="terp_default_Centre_8">[[ get_pricelist(data['form']['price_list']) ]]</para>

get_pricelist функция определения в файле отчет, в котором данные [ «форма»] [ «price_list»] является аргумент, передаваемый от мастера, который используется в функции get_pricelist

Надеется, что это поможет