Как найти (и, возможно, расширить) список доступных имен полей для отчетов в исходном коде сервера OpenERP? - PullRequest
2 голосов
/ 26 декабря 2011

Я ищу надежный способ получения имен доступных полей данных при создании или расширении файлов отчетов OpenOffice / LibreOffice.

Я уже знаю много имен полей из существующих отчетов. Я также могу искать имена полей в определениях модуля.

Например, в файле addons \ base \ res \ partner \ partner.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...
    }

Но это только предположение и оно не полное. Я бы предпочел знать поля, которые действительно доступны для любого отчета, и не догадываться.

Есть также отчеты с данными из связанных таблиц, что также важно.

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

(Также возможно использовать надстройку «OpenERP Report Designer» для OpenOffice. Это решение вы найдете здесь: Как получить списки полей с помощью надстройки OpenERP Report Designer для OpenOffice / LibreOffice )

Как я могу узнать доступные поля - и лучше всего было бы также узнать, как сделать больше существующих полей доступными для отчетов, например из связанных таблиц.

Это может включать, как найти определение функции, предоставляющей поля. И я думаю, что создание большего количества доступных полей лучше всего сделать, расширив соответствующий модуль и переписав функцию, которая доставляет данные в отчет.

1 Ответ

2 голосов
/ 04 января 2012

В меню Администрирование откройте Настройки: Структура базы данных: Объекты.(Я использую версию 5.0. Меню изменилось в 6.0, поэтому вам, возможно, придется искать его.) Найдите интересующий вас объект и откройте форму.Здесь будут перечислены все поля, включая связанные поля, унаследованные поля и функциональные поля.

Если вы хотите узнать, как расширить модуль и добавить связанные поля, прочитайте о различных типах полей .Один тип - это поле related.

...