Pasar parametros desde un .sh a un paquete PL/SQL

blanca
10 de Febrero del 2006
Buenas tardes:
Estoy lanzando un paquete PL/SQL a traves de una shell de unix pasandole un parametro de entrada al paquete.
Esa variable. ¿Se puede considerar como global?, o sea ¿se podria referenciar esa variable desde otro paquete distinto al que la recibe o por el contrario se trata de una variable local?.
Si es asi, (se trata de una variable local), ¿existe alguna forma de pasar desde una shell de unix un parametro a un Paquete PL y poder referenciarla en otro distinto del que lo recibe?
Muchas gracias de antemano
Un saludo

a
10 de Febrero del 2006
esa variable, se la pasas en shell script o en pl/sql??

blanca
10 de Febrero del 2006
Esa variable de entorno se la paso desde la shell de unix como parametro al llamar a mi paquete PL

blanca
10 de Febrero del 2006
Perdón creo que entendido mal tu pregunta...se la paso en shell script

hngb
10 de Febrero del 2006
Haber si entendi ???

MIShell.sh param1 param2

dentro de MIShell.sh, puedes llamar cualquier paquete y pasarle los parametros param1 y param2 as:

MiPaquete1($1,$1);
MiPaquete2($1,$2);

y asi seguir llamando diferentes paquetes y pasandole estos parametros.


Salu2

hngb
10 de Febrero del 2006
Perdon... es

MiPaquete1($1,$2);
MiPaquete2($1,$2);
.
.
.


eddie_
10 de Febrero del 2006
Hola.
A que le llamas 'lanzar un paquete'? Aclara eso.
Sera lanzar un procedimiento me imagino...
Ahora este procedimienot llama a otro procedimiento de otro paquete y tu quieres ver si este procedimiento llamado puede leer esa variable?
No. No es como en shell en donde todo se ve de todos lados. O se la pasas como parametro al llamar al otro procedimiento o la variable esta declarada a nivel de paquete y usas paquete.variable
La otra posibilidad es que tu procedimiento llamado este anidado, en ese caso si podra ver todas las variables del procedimiento padre sin tener que recibir parametros.

Saludos

blanca
10 de Febrero del 2006
Yo pongo esto dentro de la shell

MiPaquete1.Miprocedimiento($1,$2);


Y en el paquete PL la recojo de la siguiente forma.

Dentro de MiPaquete

Procedure Miprocedimiento(variableunix1 IN NUMBER,
variableunix2 IN NUMBER)
;

Mi pregunta es estos parametros (variableunix1 y variableunix2) son globales o locales. O sea yo dentro de otro paquete (MiPaquete2) puedo hacer referencia a ese parametro recibido en MiPaquete1?.

Muchas gracias a todos y un saludo

blanca
10 de Febrero del 2006
Gracias Eddie o sea que no puedo referenciarlas desde otro paquete que no sea el que las recibe como parametro de entrada.