Buenas tardes a todos
Estoy haciendo un formulario con dos botones y un campo select con
diferentes estados. Fijandome en otros modulos en el archivo .py defino el
worflow que seguirá y además defino un método para el asistente (el nombre
del botón es pay), si elimino este fragmento de código el error mostrado no
se genera.
@classmethod
@ModelView.button_action('pos_sale.wizard_pay')
def pay(cls, sales):
pass
En el archivo xml defino la vista del formulario del asistente:
<record model="ir.action.wizard" id="wizard_pay">
<field name="name">Pay sale</field>
<field name="wiz_name">pos.sale.pay</field>
<field name="model">pos.sale</field>
</record>
<record model="ir.ui.view" id="pay_start_sale">
<field name="model">pos.sale.pay.start</field>
<field name="type">form</field>
<field name="arch" type="xml">
<![CDATA[
<form string="Pay sale">
<label name="amount"/>
<field name="amount"/>
<label name="currency"/>
<field name="currency"/>
<label name="decription"/>
<field name="description"/>
<label name="journal"/>
<field name="journal"/>
<label name="date"/>
<field name="date"/>
<field name="currency_digits" colspan="4"
invisible="1"/>
</form>
]]>
</field>
</record>
De vuelta en archivo .py, defino una clase donde hago funcionar el wizard.
class PaySale(Wizard):
"PaySale"
__name__ = 'pos.sale.pay'
start = StateView('pos.sale.pay.start', 'pos_sale.pay_start_sale', [
Button('Cancel', 'end', 'tryton-cancel'),
Button('Ok', 'pay', 'tryton-ok', default=True), ])
Primero quiero que me muestra la ventana del asistente, luego ya me
preocuparé de continuar con la programación. Cuando ejecuto Tryton y pulso
dicho botón se genera el siguiente error:
Traceback (most recent call last):
File "/trytond/protocols/jsonrpc.py", line 123, in _marshaled_dispatch
response['result'] = dispatch_method(method, params)
File "/trytond/protocols/jsonrpc.py", line 156, in _dispatch
res = dispatch(*args)
File "/trytond/protocols/dispatcher.py", line 154, in dispatch
result = rpc.result(meth(*args, **kwargs))
File "/trytond/model/modelview.py", line 549, in wrapper
ModelData.get_id(module, fs_id))
File "/trytond/ir/model.py", line 629, in get_id
% ".".join([module, fs_id]))
Exception: Reference to pos_sale.wizard_pay not found
He mirado otros modulos como el account.invoice, he leído la documentación
de Tryton pero no he sacado nada en claro que me ayude a solucionar el
error. Alquien sabe o intuye por donde puede venir el problema?
Gracias de antemano.
--
[email protected] mailing list