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

Procedimiento almacenado

Estas en el tema de Procedimiento almacenado en el foro de Bases de Datos General en Foros del Web. Buenas a todos: Soy nuevo en esto del PL y como novato que soy tengo muchas dudas, que espero sepan resolverme. Me piden el siguiente ...
  #1 (permalink)  
Antiguo 19/09/2012, 01:50
 
Fecha de Ingreso: diciembre-2008
Mensajes: 49
Antigüedad: 15 años, 4 meses
Puntos: 1
Procedimiento almacenado

Buenas a todos:

Soy nuevo en esto del PL y como novato que soy tengo muchas dudas, que espero sepan resolverme.

Me piden el siguiente procedimiento:

NOMBRE: PR_GESCFC_SE_ESTAB_X_DESC
Realizar una consulta de la tabla de establecimientos y obtener el código (ID_VENDR) y la razón social o nombre del establecimiento(NO_ESTBL_RAZON_SOCIAL_1, NO_ESTBL_RAZON_SOCIAL_2 y NO_ESTBL_RAZON_SOCIAL_3) que coincidan con la descripción recibida de negocio. La correspondencia entre datos del ListView y BBDD es la siguiente:
Datos de entrada:
-Descripción -->NO_ESTBL_RAZON_SOCIAL_1 + NO_ESTBL_RAZON_SOCIAL_2 + NO_ESTBL_RAZON_SOCIAL_3
Datos de salida:
- Código Establecimiento--> CD_ESTBL_UTE o ID_VENDR
-Descripción --> NO_ESTBL_RAZON_SOCIAL_1 + NO_ESTBL_RAZON_SOCIAL_2 + NO_ESTBL_RAZON_SOCIAL_3

YO HICE LO SIGUIENTE:
*****ESPECIFICACION******
create or replace
PACKAGE P_GESCFC_GESESTAB AS

TYPE t_cursor IS REF CURSOR;

PROCEDURE PR_GESCFC_SE_ESTAB_X_DESC(
P_NO_ESTBL_RAZON_SOCIAL_1 IN GESCFC_ESTABLECIMIENTO_M.NO_ESTBL_RAZON_SOCIAL_1%T YPE,
P_NO_ESTBL_RAZON_SOCIAL_2 IN GESCFC_ESTABLECIMIENTO_M.NO_ESTBL_RAZON_SOCIAL_2%T YPE,
P_NO_ESTBL_RAZON_SOCIAL_3 IN GESCFC_ESTABLECIMIENTO_M.NO_ESTBL_RAZON_SOCIAL_3%T YPE,
P_CD_ESTABLECIMIENTO OUT GESCFC_ESTABLECIMIENTO_M.CD_ESTBL_UTE%TYPE,
P_CD_VEND_ESTABLECIMIENTO OUT GESCFC_ESTABLECIMIENTO_M.ID_VENDR%TYPE,
DESCRIPCION OUT t_cursor);

/*CONSULTAR SI DEJAR COMO UN CURSOR, UN STRING O CON TRES CAMPOS DE SALIDA*/
END P_GESCFC_GESESTAB;
************************************************** **************
*****CUERPO******
create or replace
PACKAGE BODY P_GESCFC_GESESTAB AS

PROCEDURE PR_GESCFC_SE_ESTAB_X_DESC(
P_NO_ESTBL_RAZON_SOCIAL_1 IN GESCFC_ESTABLECIMIENTO_M.NO_ESTBL_RAZON_SOCIAL_1%T YPE,
P_NO_ESTBL_RAZON_SOCIAL_2 IN GESCFC_ESTABLECIMIENTO_M.NO_ESTBL_RAZON_SOCIAL_2%T YPE,
P_NO_ESTBL_RAZON_SOCIAL_3 IN GESCFC_ESTABLECIMIENTO_M.NO_ESTBL_RAZON_SOCIAL_3%T YPE,
P_CD_ESTABLECIMIENTO OUT GESCFC_ESTABLECIMIENTO_M.CD_ESTBL_UTE%TYPE,
P_CD_VEND_ESTABLECIMIENTO OUT GESCFC_ESTABLECIMIENTO_M.ID_VENDR%TYPE,
DESCRIPCION OUT t_cursor) as
BEGIN

OPEN DESCRIPCION FOR SELECT NVL(CD_ESTBL_UTE,ID_VENDR) NO_ESTBL_RAZON_SOCIAL_1, NO_ESTBL_RAZON_SOCIAL_2, NO_ESTBL_RAZON_SOCIAL_3
FROM GESCFC_ESTABLECIMIENTO_M;

END PR_GESCFC_SE_ESTAB_X_DESC;

END P_GESCFC_GESESTAB;

¿Podrían decirme si los que he hecho está bien? Espero sus respuestas.

Etiquetas: bd, procedimiento, tabla, almacenar
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 08:27.