aitor
|
# Publicado: 29 Dic 2010 20:14
Queríamos reportar un error en el programa:
Al crear un proveedor intracomunitario metemos un NIF que es de 13 caracteres. Luego al crear una factura de ese proveedor da un error genérico:
QPSQL: La consulta a la base de datos ha fallado
Error: Transacción abortada. Las órdenes serán ignoradas hasta el fin de bloque de transacción.
etc
Entrando desde la consola da más detalles:
ERROR: el valor es demasiado largo para el tipo character varying(12)
insert into recibosprov(idrecibo,codigo,estado,importe,fecha,f echav,codproveedor,nombreproveedor,idremesa,idfact ura,cifnif,importeeuros,coddivisa,codcuenta,descri pcion,ctaentidad,ctaagencia,dc,cuenta,coddir,direc cion,codpostal,ciudad,provincia,apartado,codpais,t exto,numero) values (866,'xxx','Emitido',1000,'2010-12-29','2010-12-29 ','000080','xxx',0,1795,'FR34567890123',1000,'EUR' ,NULL,NULL,NULL,NULL,NULL,NULL,141,'xxx','46150',' xxx',NULL,NULL,NULL,'MIL EUROS',1)
ERROR: transacción abortada, las órdenes serán ignoradas hasta el fin de bloque de transacción
SELECT contintegrada FROM empresa
ERROR: transacción abortada, las órdenes serán ignoradas hasta el fin de bloque de transacción
select facturasprov.idfactura, facturasprov.codigo, facturasprov.editable, facturasprov.fecha, facturasprov.nombre, facturasprov.cifnif, facturasprov.total, facturasprov.codproveedor, facturasprov.observaciones, facturasprov.recfinanciero, facturasprov.neto, facturasprov.totaliva, facturasprov.totalrecargo, facturasprov.totaleuros, facturasprov.coddivisa, facturasprov.codejercicio, facturasprov.codserie, facturasprov.numero, facturasprov.codpago, facturasprov.codalmacen, facturasprov.tasaconv, facturasprov.numproveedor, facturasprov.automatica, facturasprov.nogenerarasiento, facturasprov.idasiento, facturasprov.deabono, facturasprov.idfacturarect, facturasprov.codigorect, facturasprov.totalirpf, facturasprov.irpf, facturasprov.idpagodevol, facturasprov.hora from facturasprov where codejercicio='0006' OR idfactura=1795 order by facturasprov.codigo ASC, facturasprov.idfactura ASC
ERROR: transacción abortada, las órdenes serán ignoradas hasta el fin de bloque de transacción
SELECT idfactura FROM facturasprov WHERE codejercicio='0006' OR idfactura=1795 AND idfactura=1795
Con eso se ve que el error es por el NIF que es de 13 caracteres, mayor que 12. Hemos recortado un caracter en el NIF del proveedor y ya nos ha creado la factura.
Creemos que es un error que al definir el proveedor te deje >12 (en proveedores cifnif es varying(20)) y en otras tablas se limite a 12. No se si viene de serie o debido a algún componente extra que tengamos.
Un saludo
Aitor
|