2015-09-08 9 views
1

Несмотря на то, что кнопка отображается, она не перенаправляет меня в любом месте. Я хочу, чтобы первая кнопка перенаправлялась в форму вида продажи. (Id 605), которая содержит скидку и вторую кнопку для просмотра формы sale2.order (id 575), которая не содержит скидка на items.Should я делать что-нибудь в коде python или просто изменить свой xml-код?Как перенаправить из одного вида формы в другой в оду?

<?xml version="1.0" encoding="utf-8"?> 
<openerp> 
<data> 

    <record id="view3_order_form" model="ir.ui.view"> 
     <field name="name">sale3.order.form</field> 
     <field name="model">sale.order</field> 
     <field name="arch" type="xml"> 
      <form string="Sales Order"> 
       <h1>Selection Panel</h1> 
        <button name="redirection1" string="Discount" type="action" class="oe_highlight"/> 
        <button name="redirection2" string="No Discount" type="action" class="oe_highlight"/> 
      </form> 
     </field> 
    </record> 

    <record id="action3_orders" model="ir.actions.act_window"> 
     <field name="name">Sales3 Orders</field> 
     <field name="type">ir.actions.act_window</field> 
     <field name="res_model">sale.order</field> 
     <field name="view_type">form</field> 
     <field name="view_mode">form</field> 
    </record> 

    <record id="redirection1" model="ir.actions.act_window"> 
     <field name="name">Redirection_to_discount</field> 
     <field name="res_model">sale.order</field> 
     <field name="view_type">form</field> 
     <field name="view_mode">form</field> 
     <field name="res_id">605</field> 
     <field name="target">current</field> 
    </record> 

    <record id="redirection2" model="ir.actions.act_window"> 
     <field name="name">Redirection_to_no_discount</field> 
     <field name="res_model">sale.order</field> 
     <field name="view_type">form</field> 
     <field name="view_mode">form</field> 
     <field name="res_id">575</field> 
     <field name="target">current</field> 
    </record> 

</data> 
</openerp> 

ответ

3

name кнопки для действий на самом деле должен быть числовым идентификатором действия пользователя, и имя не есть действие в. Конечно, на самом деле было бы гораздо лучше использовать это имя. Для этого используйте синтаксис printf - %(action_name)d вместо action_name. Таким образом, имя позже будет заменено с числовым идентификатором:

<button name="%(redirection1)d" string="Discount" type="action" class="oe_highlight"/> 
<button name="%(redirection2)d" string="No Discount" type="action" class="oe_highlight"/> 
+0

Эй, я получаю эту ошибку, целостность Ошибка Операция не может быть завершена, вероятно, из-за следующим: - удаление: Возможно, вы пытаетесь для удаления записи, в то время как другие записи все еще ссылаются на нее - создание/обновление: обязательное поле установлено неправильно – Bhanukiran

+0

Это не похоже на эту проблему. Попробуйте создать новую базу данных в менеджере doo Odoo. –

+0

Я пытаюсь это в модуле продаж, я создал новое представление формы только с этими двумя кнопками в качестве элементов и дал этому номеру меньшего приоритета, так что всегда эта форма загружается, но она дает мне эту ошибку, потому что есть некоторые обязательные (обязательные) поля в другой форме вид, как имя, которое не может быть нулевым. Я не понимаю, почему он смотрит на другие формы, когда я не упоминал об этом здесь. – Bhanukiran