Gracias Juan por responder Pero lo solucione temporalmente colocando la siguiente instrucción:
SELECT INTO factura_tabla * Es decir cargando todo los campos, aunque no es la forma apropiada puesto que solo necesito 2 campos. Estaré haciendo la prueba con tu sugerencia tambien. Saludos Grover Navia --- El vie, 15/1/10, juan <[email protected]> escribió: De: juan <[email protected]> Asunto: Re: [pgsql-es-ayuda] Problema con TRIGGER Para: "Grover Navia" <[email protected]> CC: [email protected] Fecha: viernes, 15 de enero, 2010 15:15 Grover Navia escribió: > CREATE FUNCTION almacenes.registrar_venta_kardex() RETURNS OPAQUE AS' > DECLARE > factura_tabla public.facturacion%ROWTYPE; > BEGIN > SELECT INTO factura_tabla nro_operacion, fecha > FROM public.facturacion > WHERE nro_operacion = New.nro_operacion; > IF FOUND THEN > INSERT INTO almacenes.kardex (cod_prod, fecha, nro_cta_salida, >cant_salida, nro_operacion_factura) > VALUES (New.cod_prod, factura_tabla.fecha, New.cod_cta, >New.cantidad, New.nro_operacion); > END IF; > RETURN NEW; > END; > 'LANGUAGE 'plpgsql'; Noto que de la tabla facturación estás utilizando únicamente el campo "fecha", por ello supongo que estas utilizando mal la variable. Según lo poco que conozco del %ROWTYPE, sé que debes hacerlo primero enumerando los campos y luego hacer el "INTO factura_tabla", ásí: SELECT nro_operacion, fecha INTO factura_tabla FROM public.facturacion Ahora bien, puedo proponerte dos cosas, como solamente quieres saber la fecha de la tabla facturación, la primera alternativa sería utilizar solamente una variable tipo "date" y ahí guardar la fecha y por último cambiar el tipo de dato de la variable factura_tabla por el tipo RECORD. -- Cordialmente, Juan Ramírez El Salvador
