Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

Como poner logica a una function

Estas en el tema de Como poner logica a una function en el foro de PostgreSQL en Foros del Web. hola como estan, les comentos hice una function la cual recibe 3 parametros y esta me retorna un cursor, de los tres parametros dos son ...
  #1 (permalink)  
Antiguo 27/06/2007, 14:46
 
Fecha de Ingreso: mayo-2007
Mensajes: 14
Antigüedad: 17 años, 6 meses
Puntos: 0
Sonrisa Como poner logica a una function

hola como estan, les comentos hice una function la cual recibe 3 parametros y esta me retorna un cursor, de los tres parametros dos son obligatorios el tercero puede ir o no, la consulta va en como darle la logica al cuerpo de la function que reconozca a esta consulta viene con los dos parametros obligatorios busco solamente por ellos, o si se da el caso de que son los 3 parametros buscar por ellos he aca el dodigo


Código:
CREATE OR REPLACE FUNCTION "BO"."Consulta_Pedidos_Clientes"(character varying, character varying, character varying)
  RETURNS refcursor AS
$BODY$DECLARE
consultaPedidos	REFCURSOR;
BEGIN 
	OPEN consultaPedidos FOR
		
		SELECT	cliente.nombre_cliente,
			producto.descripcion_producto,
			pedido.fecha_entrega_cliente,
			pedido.fecha_entrega_bo,
			pedido.orden_compra,
			pedido.nota_venta,
			pedido.total,
			pedido.pendiente,
			pedido.stock_bpro
		FROM	"BO".cliente, "BO".pedido, "BO".producto, "BO".tipo_envase
		WHERE	cliente.codigo_cliente		= pedido.cliente
		AND	producto.codigo_producto	= pedido.codigo_producto
		AND	tipo_envase.codigo_tipo_envase	= $1
		AND	producto.codigo_producto	= $2
		AND	pedido.orden_compra		= $3;
		
	RETURN consultaPedidos;
		
		
		
END;$BODY$
  LANGUAGE 'plpgsql' VOLATILE;
ojala me puedan ayudar porfavor
  #2 (permalink)  
Antiguo 03/07/2007, 13:35
 
Fecha de Ingreso: julio-2007
Mensajes: 1
Antigüedad: 17 años, 5 meses
Puntos: 0
Re: Como poner logica a una function

Estimado Amigo :

Si entiendo bien su codigo, pareciera que desea Ud generar un reporte de productos, así como sus atributos comerciales y en caso que el tercer parametro ($3=orden de compra),este incluido al llamar a la funcion, entonces presente adicionalmente, el Numero de la Orden de Compra al que el pedido de productos está asociado. Si efectivamente es ello lo que desea, puede hacer lo siguiente :
1. Cualquiera sea el mecanismo a través de los cuales se generan u obtienen los parametros de entrada, ENVIE SIEMPRE 3 parametros a la Funcion "BO"."Consulta_Pedidos_Clientes".
2. En la Tabla Pedido, cuando NO exista un valor para la columna Nro Orden Compra, se registrará automaticamente el varchor "SOC", en caso contrario, se almacenará el varchar que corresponde al Nro de la Orden de compra asignado.
3. Entonces, la funcion presentara siempre un reporte que contiene el campo Nro Orden de compra, solo que cuando este NO exista, presentará "SOC".

Por favor, indiqueme si esto resuelve (si todavia esta pendiente) su problema, pues gustosamente podría enviarle otra recomendación.

Andres Bolivar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:10.