#csv #odoo-8 #openerp-7
#csv #odoo-8 #openerp-7
Вопрос:
У меня было несколько пользовательских полей в модели sale.order:
drupal_order_name = fields.Char('Drupal order name', index=True, readonly=True)
drupal_total = fields.Float('Drupal total', digits_compute= dp.get_precision('Product Price'), help="Total amount from Drupal. Compare this with the total provided by the ERP.", readonly=True)
payment_method = fields.Selection([
('bank_transfer', 'Bank transference'),
('commerce_cod', 'Bank debit'),
('commerce_stripe', 'Credit/Debit card'),
('pagamastarde', 'Funded payment'),
('paypal_wps', 'PayPal'),
], string='Payment method', index=True, readonly=False)
client_notes = fields.Text('Client notes')
ship_addr_name = fields.Char('Name (shipment)')
ship_addr_phone = fields.Char('Phone number (shipment)')
ship_addr_street = fields.Char('Street (shipment)')
ship_addr_zip = fields.Char('Zip Code (shipment)', index=True)
ship_addr_city = fields.Char('City (shipment)', index=True)
ship_addr_state = fields.Char('State (shipment)', index=True)
ship_addr_country = fields.Char('Country (shipment)', index=True)
ship_addr_extra_info = fields.Char('Extra info (shipment)', index=True)
Я не могу понять, почему импортируются ship_addr_ * и client_notes (я могу выбрать их в параметрах столбца, чтобы импортировать значения из мастера импорта CSV), а drupal_order_name, drupal_total и payment_method не выбираются в качестве полей для сопоставления со столбцом CSV.
Что я делаю не так? Есть ли какая-либо конфигурация, которую я пропустил?
Аналогичный случай у меня есть при экспорте из (OpenERP7) поля состояния продажи.заказа. Я не могу выбрать его для экспорта своих данных.
Ответ №1:
Если мы объявляем поле с атрибутом только для чтения = True, то значения полей не сохраняются в базе данных.
Чтобы избежать такой проблемы, удалите атрибут readonly= True из вашего поля drupal_order_name, drupal_total и payment_method.
После этого перезапустите Odoo server и обновите свой пользовательский модуль.
Комментарии:
1. Да, я видел эту деталь вчера, но не смог опубликовать ее! хехе, спасибо!
2. Я пытаюсь удалить атрибут «только для чтения» из поля состояния sale.order, но он не меняется после сохранения, перезапуска OpenERP и обновления модуля. Я собираюсь попробовать с новой моделью. (Я знаю, что переписывать базовый модуль не очень хорошая практика, но это был быстрый способ, и это более старая версия нашей системы, хе-хе)
3. Это должно сработать. Или вы можете удалить пользовательский модуль и перезапустить сервер, обновить список модулей и установить его снова. Имейте в виду, что с помощью этого трюка вы потеряете свои данные / записи.
4. Да, я заметил это с модулем, когда переносил исходный код, хе-хе. Проблема в том, что я хочу изменить исходный sale.order. Я попробую использовать дополнительный модуль, так безопаснее.
5. Не слишком ли небезопасно делать редактируемыми все поля, которые вы хотите импортировать? Могло бы быть лучше, если бы было лучшее и более практичное решение:-/ Спасибо за все!