En esta sección: |
Las funciones internas están incluidas por defecto y no requieren ningún trabajo adicional para acceder a ellas. Las funciones externas se almacenan en bibliotecas de carga desde las que se deben recuperar. El modo en que se accede a estas funciones está determinado por su plataforma. No tiene por qué usar estas técnicas cada vez que accede a una función. El acceso a una biblioteca de carga puede establecerse en una sola ocasión durante la instalación.
También puede acceder a las subrutinas privadas escritas por los usuarios. Si tiene una colección privada de subrutinas (es decir, que ha creado sus propias subrutinas o utiliza subrutinas personalizadas), no la almacene en la biblioteca de funciones. Almacene las subrutinas por separado para evitar que se sobrescriban al instalar una nueva edición. Para más información sobre cómo crear una subrutina, consulte Cómo crear una subrutina.
Cómo: |
En z/OS, las bibliotecas de carga son conjuntos de datos con particiones, que contienen módulos de vincular-editar. Estas bibliotecas se encuentran almacenadas como EDALIB.LOAD o FUSELIB.LOAD. Además, puede que su sitio tenga colecciones privadas de subrutinas, almacenadas en bibliotecas de carga independientes. Si es así, debe asignar estas bibliotecas.
Para usar una función almacenada como biblioteca de carga, asigne la biblioteca al ddname USERLIB en su JCL CLIST.
El orden de búsqueda es USERLIB, STEPLIB, JOBLIB, área de paquetes de vínculos y lista de vínculos.
Además, el Servidor añade la palabra clave TASKLIB a la búsqueda de bibliotecas autorizadas que no sean APF. Para más información, consulte el manual Instalación del servidor, configuración y operaciones de MVS.
//USERLIB DD DISP=SHR,DSN=BIGLIB.LOAD
DYNAM ALLOC FILE USERLIB DA lib SHR
donde:
Es el ddname al que asigna una biblioteca de carga.
Son los nombres de las bibliotecas de carga, concatenadas al ddname USERLIB.
DYNAM ALLOC FILE USERLIB DA MVS.FUSELIB.LOAD SHR
Supongamos que una solicitud llama a dos funciones: BENEFIT, almacenada en la biblioteca SUBLIB.LOAD, y EXCHANGE, almacenada en BIGLIB.LOAD. Para concatenar las bibliotecas de carga BIGLIB y SUBLIB en la asignación del ddname USERLIB, emita los siguientes comandos:
DYNAM ALLOC FILE USERLIB DA SUBLIB.LOAD SHR DYNAM ALLOC FILE BIGLIB DA BIGLIB.LOAD SHR DYNAM CONCAT FILE USERLIB BIGLIB
Las bibliotecas de carga se examinan según el orden especificado en el comando ALLOCATE.
Concatene la biblioteca de carga al ddname STEPLIB, en su JCL:
//FOCUS EXEC PGM=FOCUS //STEPLIB DD DSN=FOCUS.FOCLIB.LOAD,DISP=SHR // DD DSN=FOCUS.FUSELIB.LOAD,DISP=SHR . . .
En Developer Studio, las funciones externas no vienen incluidas con WebFOCUS y se encuentran almacenadas en archivos conocidos como bibliotecas de vínculos dinámicos. Para utilizarlas, identifique la ubicación de su archivo de biblioteca de funciones de vínculos dinámicos, mediante la variable de entorno IBICPG, o almacene la biblioteca en el directorio \CONF\USER y WebFOCUS la encontrará automáticamente.
WebFOCUS |