El 03/05/2012 10:17, Grover Navia escribió:
Hola compañeros
Estoy trabajando con Postgresql 8.4 bajo linux ( CentOS 6.2 ); me sale
un mensaje de error de esta funcion
DECLARE
kardex_item_tabla almacenes.alm_kardex%ROWTYPE;
BEGIN
SELECT SUM(cant_entrada) AS c_ingreso, SUM(cant_salida) AS
c_salida, SUM(importe_entrada) AS i_ingreso, SUM(importe_salida) AS
i_salida INTO kardex_item_tabla
FROM almacenes.alm_kardex
WHERE gestion = New.gestion AND mes = New.mes AND cod_prod =
New.cod_prod
GROUP BY gestion, mes, cod_prod;
IF FOUND THEN
New.sum_cant_entrada = kardex_item_tabla.c_ingreso;
New.sum_cant_salida = kardex_item_tabla.c_salida;
New.sum_importe_entrada = kardex_item_tabla.i_ingreso;
New.sum_importe_salida = kardex_item_tabla.i_salida;
END IF;
RETURN NEW;
END;
El error dice:
ERROR: la fila «kardex_item_tabla» no tiene un campo llamado "c_ingreso"
CONTEXT: compilación de la función PL/pgSQL "suma_informe_mensual"
cerca de la línea 9
Cual es el problema y porq no me acepta usar este tipo de alias o como
se deria urar los alias en estos casos ...?,
de ante mano les doy las gracias por sus comentarios y por su tiempo
Saludos
Grover Navia
<http://www.uci.cu/>
Es que estas declarando un variable del tipo renglon de
almacenes.alm_kardex y en realidad esa tabla no tiene ese campo ,declara
esa variable de tipo record , que es ajustable a cualquier valor .
saludos
10mo. ANIVERSARIO DE LA CREACION DE LA UNIVERSIDAD DE LAS CIENCIAS
INFORMATICAS...
CONECTADOS AL FUTURO, CONECTADOS A LA REVOLUCION
http://www.uci.cu
http://www.facebook.com/universidad.uci
http://www.flickr.com/photos/universidad_uci