This question has been flagged
1 Reply
4547 Views

Greetings community , I am writing devido I have time trying to resolve this error but I can not solve it, trying to install my custom module Projects Odoo v8 for Window 7 32-bit , with Postgres 9.2, and tried several times but still nothing I helped myself.

the error indicates that to me just this part of the .xml file

<record id="view_pickup_form" model="ir.ui.view">

But for that matter I leave my code embodied , waiting for some guidance , I thank in advance what I can help them .

Code Pickup_order.xml

######################################################################

<?xml version='1.0' encoding='utf-8'?>

<openerp>

<data>

<!-- Vista formulario -->

<record id='view_pickup_form' model='ir.ui.view' >

<field name='name'>view.pickup.form</field>

<field name='res_model'>pickup</field>

<field name='arch' type='xml'>

<form string='Pickup Order' version='7.0'>

<notebook colspan='4' position='inside'>

<!-- MODULO general INICIA-->

<page string='General'>

<sheet>

<group col='4'>

<group>

<field name='consecutivo' />

<field name='creation_date_time' />

<field name='Pick_up'/>

<field name='delivery_date'/>

<field name='destination_agent'/>

<field name='issued_by' />

</group>

<group>

</group>

</group>

</sheet>

<group col='4'>

<group>

</group>

<group >

</group>

</group>

</page>

<!-- MODULO general FIN-->

<!-- MODULO Shipper INICIA-->

<page string='Shipper '>

<sheet>

<group col='3'>

<group>

<field name='shipper' />

<field name='pickup_location' />

<field name='place' />

</group>

<group col='4'>

</group>

</group>

</sheet>

</page>

<!-- MODULO Shipper FIN-->

<!-- MODULO Consiggnee INICIA-->

<page string='Consiggnee '>

<sheet>

<group col='4'>

<group>

<field name='consignee' help='Selected Consignes of list.'/>

<field name='consignee_location' help='localizacion'/>

<field name='place' />

</group>

</group>

<group col='2'>

</group>

<group>

<field name='cliente_to_bill' />

<field name='cliente_to_bill_2' />

</group>

<group col='4'>

</group>

</sheet>

</page>

<!-- MODULO Consiggnee INICIA-->

<!-- MODULO Supplier INICIA-->

<page string='Supplier'>

<sheet>

<group col='4'>

<group>

<field name='Name' widget='handle'/>

<field name='invoice_number' widget='handle'/>

<field name='Purchase_order_number' widget='handle'/>

</group>

<group col='4'>

</group>

</group>

</sheet>

</page>

<!-- MODULO Supplier FIN-->

<!-- MODULO Carrier INICIA -->

<page string='Carrier'>

<sheet>

<group col='4'>

<group>

<field name='carrier' />

<field name='pro_number' />

<field name='driver_name' widget='handle'/>

<field name='driver_licence' widget='handle'/>

<field name='tracking_number' widget='handle'/>

<field name='arrier' widget='handle'/>

<field name='bookin' widget='handle'/>

<field name='preferred' widget='handle'/>

</group>

</group>

</sheet>

</page>

<!-- MODULO Carrier FIN -->

<!-- MODULO Comoditties INICIA -->

<page string='Comoditties'>

<sheet>

<group col='4'>

<group>

<field name='consecutivo2' />

<field name='pack' />

<field name='loc' />

<field name='descrip' />

<field name='notes' widget='handle'/>

</group>

</group>

</sheet>

<notebook>

<page string='Calculo de Piezas' >

<field name='dimensiones'/>

</page>

</notebook>

<!-- <strong><H4>Totales</H4></strong>

<table>

<td>

<field name='vkl_total' string='Probando Monto 1' widget='handle' />

</td>

</table> PARA MONTOS EXTRAS Y RESULTADOS EXTRAS EN NOTEBOOK-->

</page>

<!-- <group>

<table >

<td ><p>Facturado</p></td> </table>

</group> -->

<!-- mODULO Commodities FIN -->

<!-- MODULO NOTES INICIA -->

<page string='Notes'>

<sheet>

<group col='4'>

<group>

<field name='consecutivo3' widget='handle'/>

<field name='notes_1' widget='handle'/>

<field name='issued_by2' />

</group>

</group>

</sheet>

</page>

<!-- mODULO NOTES FIN -->

<!-- INICIO DE MODULO EVENTS -->

<page string='Events'>

<sheet>

<group col='1'>

<group>

<field name='consecutivo5' widget='handle'/>

</group>

</group>

<page string='Events' >

<field name='dato' />

</page>

</sheet>

</page>

<!-- FIN DE MODULO EVENTS -->

<!-- INICIO DE CHARGED -->

<page string='Charged'>

<sheet>

<group col='2'>

<group>

<field name='consecutivo6' widget='handle'/>

</group></group>

<strong><H4>Totals</H4></strong>

<table style="width: 600px;" >

<td style="width: 100px;"><p>Facturado</p><field name='invoice' widget='masked' /></td>

<td style="width: 100px;"><p>Expensas</p><field name='expence' /></td>

<td style="width: 100px;"><p>Beneficio</p><field name='profit_total'/></td>

</table><!-- monetary: muestra un campo decimal como un monto en monedas. La moneda a usar puede ser tomada desde un campo como options="{'currency_field': 'currency_id'}".-->

<notebook>

<page string='Pagos' > <!-- Este Nnotebook es el que me muestra el listado de campos editablles llamados de la clase piece.py desde el Pickup_order.py -->

<field name='charged_ids' />

</page>

<page string='Cobros' > <!-- Este Nnotebook es el que me muestra el listado de campos editablles llamados de la clase piece.py desde el Pickup_order.py -->

<field name='income'/></page>

</notebook>

</sheet>

</page>

<!-- FIN DE CHARGED -->

<!-- INICIO DE MODULO POD -->

<page string='POD'>

<sheet>

<group col='4'>

<group>

<field name='delivery_date2' widget='handle'/>

<field name='received_by' widget='handle'/>

<field name='comments' widget='handle'/>

<field name='internal_comments' widget='handle'/>

</group>

</group>

</sheet>

</page>

<!-- FIN DE MODULO POD -->

<!-- INICIO DE NOTAS INTERNAS -->

<page string='Internal Notes'>

<sheet>

<group col='4'>

<group>

<field name='create_date' />

<field name='issued_by3' />

</group>

</group>

<notebook>

<page string='Resumen de Notas Internas'>

<field name='nota_ids' />

</page>

</notebook>

</sheet>

</page>

<!-- FIN DE NOTAS INTERNAS -->

<!-- INICIO DE HASZARDOUS -->

<page string='Hazardous'>

<sheet>

<group col='4'>

<group>

<field name='ident_number' /><!-- Mascara para aplicar data-inputmask="'mask': '99-9999999'" -->

<field name='mat_class' widget='handle'/>

<field name='class_qualifier' widget='handle'/>

<field name='mat_description' widget='handle'/>

<field name='emer_contact' widget='handle'/>

<field name='material_page' widget='handle'/>

<field name='flashpoint_temp' widget='handle'/>

<field name='special_instruction' widget='handle'/>

<field name='description_class' widget='handle'/>

<field name='hazardous_level' widget='handle'/>

</group>

</group>

</sheet>

</page>

<!-- FIN DE HAZSARDOUS -->

</notebook>

</form>

</field>

</record>

<!-- Vista arbol -->

<record id='view_pickup_tree' model='ir.ui.view' >

<field name='name'>view.pickup.tree</field>

<field name='res_model'>pickup</field>

<field name='arch' type='xml'>

<tree string='pickup' version='7.0'> <!--colors='#FF0000:full_view==False'> -->

<field name='consecutivo' />

<field name='creation_date_time' />

<field name='Pick_up'/>

<field name='delivery_date'/>

<field name='employee'/>

<!-- Menu arbol Shipper-->

<!-- <field name='shipper' />

<field name='pickup_location'/>

<field name='place' /> -->

<!-- Menu arbol Consiggnee-->

<!-- <field name='consignee'/>

<field name='consignee_location' />

<field name='place' />

<field name='cliente_to_bill' />

<field name='cliente_to_bill_2' /> -->

<!-- Menu arbol suplier -->

<!-- <field name='Name'/>

<field name='invoice_number'/>

<field name='Purchase_order_number'/> -->

<!-- Menu arbol carrier -->

<!-- <field name='carrier' />

<field name='pro_number' />

<field name='driver_name'/>

<field name='driver_licence'/>

<field name='tracking_number'/>

<field name='arrier'/>

<field name='bookin' />

<field name='preferred'/> -->

<!-- Menu arbol Commodities -->

<!-- <field name='pack'/>

<field name='loc'/>

<field name='descrip' />

<field name='notes' />

<field name='dimensiones' /> -->

<!-- Menu arbol Notes -->

<!-- <field name='notes_1' />

--> <!-- Menu arbol Events -->

<!-- <field name='dato' />

--> <!-- Menu arbol Charged -->

<!-- <field name='profit_total' />

<field name='expence' />

<field name='invoice' /> -->

<!-- Menu arbol POD -->

<!-- <field name='delivery_date'/>

<field name='received_by'/>

<field name='comments' />

<field name='internal_comments'/> -->

<!-- Menu arbol Internal Notes-->

<!-- <field name='create_date' />

<field name='create_by' /> -->

<!-- Menu arbol Hazzardous-->

<!-- <field name='ident_number' />

<field name='mat_class' />

<field name='class_qualifier' />

<field name='mat_description' />

<field name='emer_contact' />

<field name='material_page' />

<field name='flashpoint_temp' />

<field name='special_instruction' />

<field name='description_class'/>

<field name='hazardous_level'/> -->

</tree>

</field>

</record>

<!-- Busqueda -->

<record id='view_pickup_search' model='ir.ui.view'>

<field name='name'>view.pickup.search</field>

<field name='res_model'>pickup</field>

<field name='arch' type='xml'>

<search string='Búsqueda pickup' version='7.0'>

<field name='consecutivo' />

<field name='creation_date_time' />

<field name='Pick_up'/>

<field name='delivery_date'/>

<field name='employee'/>

<!-- Menu Busqueda Shipper-->

<field name='shipper' />

<field name='pickup_location'/>

<field name='place' />

<!-- Menu Busqueda Consiggnee-->

<field name='consignee'/>

<field name='consignee_location' />

<field name='place' />

<field name='cliente_to_bill' />

<field name='cliente_to_bill_2' />

<!-- Menu Busqueda suplier -->

<field name='Name' />

<field name='invoice_number' />

<field name='Purchase_order_number' />

<!-- Menu Busqueda carrier -->

<field name='carrier' />

<field name='pro_number' />

<field name='driver_name' />

<field name='driver_licence' />

<field name='tracking_number' />

<field name='arrier'/>

<field name='bookin' />

<field name='preferred'/>

<!-- Menu Busqueda Commodities -->

<field name='pack' />

<field name='loc' />

<field name='descrip'/>

<field name='notes'/>

<field name='dimensiones' />

<!-- Menu Busqueda Notes -->

<field name='notes_1' />

<!-- Menu Busqueda Events -->

<field name='dato' />

<!-- Menu Busqueda Charged -->

<field name='profit_total' />

<field name='expence' />

<field name='invoice' />

<!-- Menu Busqueda POD -->

<field name='delivery_date' />

<field name='received_by' />

<field name='comments'/>

<field name='internal_comments' />

<!-- Menu arbol Internal Notes-->

<field name='create_date' />

<field name='create_by' />

<!-- Menu Busqueda Hazzardous-->

<field name='ident_number' />

<field name='mat_class'/>

<field name='class_qualifier' />

<field name='mat_description' />

<field name='emer_contact' />

<field name='material_page' />

<field name='flashpoint_temp' />

<field name='special_instruction' />

<field name='description_class'/>

<field name='hazardous_level' />

</search>

</field>

</record>

<!-- Accion de menu -->

<record id='action_pickup' model='ir.actions.act_window'>

<field name='name'>Pickup Order</field>

<field name='res_model'>pickup</field>

<field name='view_mode'>tree,form</field>

<field name='view_type'>form</field>

<field name='domain'>[('eliminado','=','False')]</field>

</record>

<!-- Accion de menu Administrador-->

<record id='action_pickup_administrador' model='ir.actions.act_window'>

<field name='name'>Pickup Order Administrador</field>

<field name='res_model'>pickup</field>

<field name='view_mode'>tree,form</field>

<field name='view_type'>form</field>

</record>

<!-- Menu -->

<menuitem name='Proyecto' id='menu_naviero_main' sequence='25' />

<menuitem name='Pickup Order' id='menu_pickup_sub' sequence='1' parent='menu_naviero_main' />

<menuitem id='menu_pickup' sequence='1'

parent='menu_pickup_sub' action='action_pickup' groups='naviero.group_naviero_user'/>

<menuitem id='menu_pickup_administrador' sequence='2'

parent='menu_pickup_sub' action='action_pickup_administrador' groups='naviero.group_naviero_admin'/>

</data>

</openerp>


Atachedd Code Pickup_order.py

########################################################################

# -*- coding: utf-8 -*-

#################################################################

# Ms2 Consulting Group #

#################################################################

from datetime import timedelta, datetime

from openerp import models,fields,api, osv

from openerp.tools.translate import _

import openerp.addons.decimal_precision as dp

###################################################################3

#Clase para llamado del codigo al formulario nuevo

####################################################################

class pickup(models.Model):

_name = 'pickup'

_description = u'Clase pickup'

_rec_name = 'consecutivo'

####################################################################

def _get_consecutivo_num(self, cr, uid, context=None):

last_id = 0

get_count = self.search(cr, uid, [(1, '=', 1)], order='id')

if get_count:

for item in self.browse(cr, uid, get_count, context):

sec = item.consecutivo.split('-')

sec_num = int(sec[1]) + 1

last_id = sec_num

else:

last_id = 1

prefijo = 'PSUG-'

serie = last_id

consecutivo = prefijo + str(serie).rjust(5, '0')

return consecutivo

######################################################################

# Validación de Fecha en pestaña General

######################################################################

def _check_dates(self, cr, uid, ids, context=None):

for rec in self.browse(cr,uid,ids):

creation_date_time = rec.creation_date_time

delivery_date = rec.delivery_date

if delivery_date < creation_date_time:

return False

else:

return True

########################################################################

#funcion de elimniar solo a la vista del usuario comun no la administrador

#########################################################################

@api.one

def eliminar_piece(self):

self.write({'eliminado': True, })

return True

##########################################################################################

# Usuario conectado

##########################################################################################

@api.one

@api.depends('consecutivo','destination_agent')

def _obtener_usuario(self):

user_id = self.env.user

self.employee = user_id.name

##########################################################################################

# Usuario conectado 2 metodo onchange

##########################################################################################

# @api.onchange('employee','prueba2','consecutivo')

# def extra_log(self):

# user_id = self.env.user

# self.prueba2 = self.employee

# FUNCION QUE REALIZA LA MISMA COPIA Y PEGA PERO DESDE BASE DE DATOS

# @api.onchange('employee') # if these fields are changed, call method

# def _login_usuario(self):

# self.issued_by= self.employee.login

##########################################################################################

# REPETIR CHAR

##########################################################################################

@api.onchange('consecutivo','issued_by')

def extra_log(self):

self.issued_by = self.issued_by

self.issued_by1 = self.issued_by

self.issued_by2 = self.issued_by

self.issued_by3 = self.issued_by

#########################################################################

# funcion que genera un codigo unico consecutivo

#########################################################################

@api.one

@api.depends('consecutivo')

def extras(self):

self.consecutivo2 = self.consecutivo

self.consecutivo3 = self.consecutivo

self.consecutivo5 = self.consecutivo

self.consecutivo6 = self.consecutivo

########################################################################################

# CALCULO DE CHARGES GANANCIAS Y PERDIDAS

########################################################################################

@api.one

@api.depends('invoice','expence','profit_total')

def _calcular_peso_pieces(self):

invoice = self.invoice

expence = self.expence

self.profit_total = invoice - expence

#########################################################################

# datos de pestaña general

#####################################################################

consecutivo = fields.Char(_(u'Codigo Pick-up Order:'),required=True, readonly=True,help='Este codigo de pickup orden es generado por el sistema y no puede modificarse.')

creation_date_time = fields.Datetime(_(u'Fecha y hora de creación:'), required=True, default=datetime.today().strftime('%Y-%m-%d %H:%M:%S'))

Pick_up = fields.Datetime(_(u'Fecha y hora de Registro Pick-up:'), required=True, default=datetime.today().strftime('%Y-%m-%d %H:%M:%S'))

delivery_date = fields.Datetime(_(u'Delivery Date / Fecha y hora de Entrega Pick-up:'), required=True, default=datetime.today().strftime('%Y-%m-%d %H:%M:%S'))

employee = fields.Char(_(u'Usuario'), store=True, compute='_obtener_usuario', readonly=True)

destination_agent = fields.Char(_(u'Destination Agent/Agente de Destino:'),default='Global Shipping Venezuela')

issued_by = fields.Char (_(u'Issued by / Elaborado Por:'),size=64,help='Ingresar su nombre por favor.')

#####################################################################

# EL CAMPO SHIPPER TRAE LA INFORMACION DEL Pestaña CLIENTE

#####################################################################

shipper = fields.Many2one('res.partner', _(u'Shipper / Name:'),help='Nombre del Expedidor o cliente.', domain=[('customer', '=', True)])

pickup_location = fields.Many2one('res.partner', _(u'Pickup Location / Name:'),help='Localizacion.', domain=[('customer', '=', True)])

place = fields.Many2one('place',help='Puertos y Aeropuertos del Mundo.',string = 'Place:',required=False)

address = fields.Many2one('res.partner', _(u'Address:'), domain=[('customer', '=', True)])

issued_by1 = fields.Char(_(u'Elaborado Por:'), compute='extra_log')

#####################################################################

# datos de pestaña CONSIGNEE

#####################################################################

consignee = fields.Many2one('res.partner', _(u'Consignee / Name:'), help='Consignatarios.', domain=[('customer', '=', True)])

consignee_location = fields.Many2one('res.partner', _(u'Delivery Location / Name:'),help='Location.', domain=[('customer', '=', True)])

cliente_to_bill = fields.Selection ([('PDVB', 'PDVB'), ('PSI', 'PSI')],_(u'Clientes:'),help='Nombre de clientes.', required = False)

cliente_to_bill_2 = fields.Many2one('res.partner', _(u'Otros Clientes:'),help='Nombre de clientes.',domain=[('customer', '=', True)])

address = fields.Many2one('res.partner', _(u'Address:'), domain=[('customer', '=', True)])

#####################################################################

# datos Pestaña SUPLIER

#####################################################################

Name = fields.Many2one('res.partner', _(u'Name:'),help='Proveeedores.', domain=[('customer', '=', True)])

invoice_number = fields.Char(_(u'Invoice Number:'),help='Numero de Factura comercial.')

Purchase_order_number = fields.Char(_(u'Purchase Order Number:'),help='Numero de Orden de compra.',)

#####################################################################

# datos Pestaña CARRIER

#####################################################################

carrier = fields.Many2one('res.partner', _(u'Inland Carrier:'),help='Transportistas.', domain=[('customer', '=', True)])

pro_number = fields.Integer(_(u'PRO number:'),help='Numero de BL Terrestre.')

driver_name = fields.Char(_(u'Drivers Name:'),help='Nombre de quien recoge.')

driver_licence = fields.Integer(_(u'Drives Licence Number:'),help='Licencia')

tracking_number = fields.Integer(_(u'Tracking Number:'),help='Numero de referencia debe ser el mismo PRO Number.',)

arrier = fields.Many2one('res.partner', _(u'Main Carrier:'),help='Lista de Aerolineas.', domain=[('customer', '=', True)])

bookin = fields.Integer(_(u'Booking Number:'),help='Numeros de reserva.',)

preferred = fields.Selection ([('Air', 'Air'), ('Land', 'Land'), ('Ocean', 'Ocean')],_(u'Preferred Mode of Transportation'), required = False)

########################################################################

# datos Pestaña COMODITIES

#####################################################################

consecutivo2 = fields.Char(string='PK', digits=dp.get_precision('Account'),

store=True, readonly=True,help='Este codigo de pickup orden es generado por el sistema y no puede modificarse.', compute='extras', track_visibility='always')

pack = fields.Many2one('res.partner', _(u'Package Type:'),help='Tipo de paquete.', domain=[('customer', '=', True)])#Este fields debera realizar un llamado a listas predeterminadas.

loc = fields.Many2one('res.partner', _(u'Location:'),help='Localizacion.', domain=[('customer', '=', True)])#Este fields debera realizar un llamado a listas predeterminadas.

descrip = fields.Text( _(u'Descriptión:'), help='Descripcion.', Translate= True) #Area de Notes solicitada por Global

notes = fields.Text(_(u'Notes:'), help='Notas.',Translate= True) #Area de descripcion solicitada por Global

dimensiones = fields.One2many('pieces','clave_id', help='Contiene ventana para calculo de dimensiones de las piezas.',string=_(u'Dimensiones'))

#####################################################################

# datos Pestaña EVENTS

#####################################################################

consecutivo5 = fields.Char(string='PK', digits=dp.get_precision('Account'),

store=True, readonly=True, compute='extras', track_visibility='always')

dato = fields.One2many('events','claves_id', string=_(u'Date'))

#####################################################################

# datos Pestaña CHARGED

#####################################################################

consecutivo6 = fields.Char(string='PK', digits=dp.get_precision('Account'), # este fields hace un llamado a el codigo de Pick Order el cual es la clave en todos los llamados.

store=True, readonly=True, compute='extras', track_visibility='always')

charged_ids = fields.One2many('charged','rel_id',string=_(u'Salidas'))

invoice = fields.Float(_(u'Income:'),help='Ingresos.',required=True)

expence = fields.Float(_(u'Expences:'),help='Expensas.', required=True)

profit_total = fields.Float(_(u'profit:'),help='Beneficio Obtenido.', compute = '_calcular_peso_pieces', required=True)

income = fields.One2many('income','cant_id',string=_(u'Entradas')) #Este campo es de clave para el llamado del many2one

#####################################################################

# datos Pestaña POD

#####################################################################

delivery_date2 = fields.Datetime(_(u'Delivery Date / Fecha de Entrega:'), required=True, default=datetime.today().strftime('%Y-%m-%d %H:%M:%S'))

received_by = fields.Many2one('res.partner', _(u'Receibed By / Recibido por:'), domain=[('customer', '=', True)])#Este fields debera realizar un llamado a listas predeterminadas.

comments = fields.Text(_(u'Comments / Comentarios:'),help='Realiza los comentarios respectivos o detalles adicionales.', Translate= True)

internal_comments = fields.Text(_(u'Internal Comments:'),help='Realiza los comentarios respectivos mas detallados.', Translate= True)

#####################################################################

# datos Pestaña NOTES

#####################################################################

consecutivo3 = fields.Char(string='PK', digits=dp.get_precision('Account'), # este fields hace un llamado a el codigo de Pick Order el cual es la clave en todos los llamados.

store=True, readonly=True, compute='extras', track_visibility='always')

notes_1 = fields.Text(_(u'Notes / Notas:'),help='Describe a detalle la informacion adicional.', Translate= True)

issued_by2 = fields.Char(_(u'Elaborado Por:'), compute='extra_log')

######################################################################3

# datos Pestaña INTERNAL NOTES

#####################################################################

create_date = fields.Datetime(_(u'Create On / Creado En:'), required=True, default=datetime.today().strftime('%Y-%m-%d %H:%M:%S'))

create_by = fields.Char(_(u'Create By /Creado Por:'))

last_modif = fields.Text(_(u'Last Modify / Modificacion Final:'),help='Realizar comentarios finales o acotar las modificaciones realizadas.')

nota_ids = fields.One2many('notasinternas','relacion_id', string=_(u'Internal Note /Notas Internas'))#campo clave llamado de many2one

issued_by3 = fields.Char(_(u'Elaborado Por:'), compute='extra_log')

#####################################################################

# datos Pestaña CARGA PELIGROSA HAZARDOUS

#####################################################################

ident_number = fields.Integer(_(u'Ident Number:'), Translate= True)

mat_class = fields.Selection ([('5.1 Oxidicing Sustances', '5.1 Oxidicing Sustances'), ('5.2 Organic Peroxide', '5.2 Organic Peroxide'), ('6 Toxicand Infectious Substances', '6 Toxicand Infectious Substances'),('6.1 Toxic Substances', '6.1 Toxic Substances'),('6.2 Infectious Substances', '6.2 Infectious Substances'),('7 Radioactive Material', '7 Radioactive Material'),('8 Corrosive Material', '8 Corrosive Material'),('9 Miscellaneous Dangerous Substances an Articles', '9 Miscellaneous Dangerous Substances an Articles')],_(u'Class Description'), required = False)# aplicar los planes de una lista de planes de global

class_qualifier = fields.Char(_(u'Class Qualifier:'), Translate= True)

mat_description = fields.Char(_(u'Material Description:'), Translate= True)

emer_contact = fields.Many2one('res.partner', _(u'Emergency Contact:'), domain=[('customer', '=', True)])

material_page = fields.Char(_(u'Material Page:'), Translate= True)

flashpoint_temp = fields.Char(_(u'Flashpoint Temp:'), Translate= True)

special_instruction = fields.Char(_(u'Especial Instruction:'), Translate= True)

description_class = fields.Char(_(u'Description of Class:'), Translate= True)

hazardous_level = fields.Selection ([('Minor Danger', 'Mnr Danger'), ('Mediun Danger', 'Mediun Danger'), ('Great Danger', 'Great Danger')],_(u'Hazardous Level:'), required = False)

eliminado = fields.Boolean('Eliminado', default=False)

#########################################################################3

#lRealizando Default

#####################################################################

_defaults = {

'consecutivo': _get_consecutivo_num,

}

#####################################################################

#Validando Codigo BD

#####################################################################

_sql_constraints = [

('consecutivo_uniq', 'unique(consecutivo)', 'Este campo debe ser unico'),

]

######################################################################

#Errores y Ecepciones

######################################################################

_constraints = [

    (_check_dates, 'Usuario tiene un Error! Vuelve a Intentar y verifique que la fecha de entrega no sea menor que la fecha de Creacion!!!', ['delivery_date'])]

Avatar
Discard
Author Best Answer

I solved the problem by reinstalling all respective applications, I Odoo v8, postgre 9.2, and reastaurando my BD setting back my keys correctly access the previous backup corresponding database to the custom project, the project is in the design process, however this working correctly.

thanks community

Avatar
Discard