El lunes, 28 de julio de 2014 13:06:15 UTC-5, oscar_alvarez escribió:
>
> Hola devs 
>
> Al instalar sale_shop en una base de datos con ventas previas genera el 
> siguiente error 
>
> Traceback (most recent call last): 
>    File "/home/pactemos/Envs/trytond32_pac/bin/trytond", line 113, in 
> <module> 
>      trytond.server.TrytonServer(options).run() 
>    File 
> "/home/pactemos/Envs/trytond32_pac/local/lib/python2.7/site-packages/trytond/server.py",
>  
>
> line 123, in run 
>      Pool(db_name).init(update=update, lang=lang) 
>    File 
> "/home/pactemos/Envs/trytond32_pac/local/lib/python2.7/site-packages/trytond/pool.py",
>  
>
> line 151, in init 
>      lang=lang) 
>    File 
> "/home/pactemos/Envs/trytond32_pac/local/lib/python2.7/site-packages/trytond/modules/__init__.py",
>  
>
> line 428, in load_modules 
>      _load_modules() 
>    File 
> "/home/pactemos/Envs/trytond32_pac/local/lib/python2.7/site-packages/trytond/modules/__init__.py",
>  
>
> line 396, in _load_modules 
>      load_module_graph(graph, pool, lang) 
>    File 
> "/home/pactemos/Envs/trytond32_pac/local/lib/python2.7/site-packages/trytond/modules/__init__.py",
>  
>
> line 237, in load_module_graph 
>      cls.__register__(module) 
>    File 
> "/home/pactemos/Envs/trytond32_pac/local/lib/python2.7/site-packages/trytond/modules/sale/sale.py",
>  
>
> line 274, in __register__ 
>      super(Sale, cls).__register__(module_name) 
>    File 
> "/home/pactemos/Envs/trytond32_pac/local/lib/python2.7/site-packages/trytond/model/modelsql.py",
>  
>
> line 112, in __register__ 
>      default_fun, field_size, string=field.string) 
>    File 
> "/home/pactemos/Envs/trytond32_pac/local/lib/python2.7/site-packages/trytond/backend/postgresql/table.py",
>  
>
> line 270, in add_raw_column 
>      (column_format(default),)) 
>    File 
> "/home/pactemos/Envs/trytond32_pac/local/lib/python2.7/site-packages/trytond/backend/postgresql/database.py",
>  
>
> line 310, in execute 
>      return self.cursor.execute(sql, params) 
> psycopg2.InternalError: current transaction is aborted, commands ignored 
> until end of transaction block 
>
> Haicendo una depuracion de la query que genera el error obtengo esto: 
>
> ('UPDATE "sale_sale" SET "shop" = %s', (None,)) 
>
> Seria bueno activar el seguimiento a fallos bitbucket, para no hacerlo a 
> traves de mail. Por otro lado pienso que el campo shop en sale no 
> deberia ser obligatorio, quizas esto elimine el problema, ahora la 
> instalacion solo funciona en base de datos nueva. 
>
> Atte, 
> Oscar Alvarez 
>
>
>
>
>

El problema esta aqui en sale.py, ya que busca shops en contexto los cuales 
no existen en una base de datos con ventas:

domain=[
            ('id', 'in', Eval('context', {}).get('shops', [])),
            ], 

Pienso que la mejor solucion es crear en el archivo de configuracion un 
campo para definir la shop por defecto, y  usar default_shop, para definirla
en caso de que sea diferente a None.

Responder a