Dans cette section : |
Les fonctions internes sont intégrées et ne nécessitent aucun travail supplémentaire pour y accéder. Les fonctions externes sont stockées dans des bibliothèques de chargement, à partir desquelles elles doivent être obligatoirement extraites. La méthode d'accès de ces fonctions externes est déterminée par votre plate-forme. Ces techniques ne sont pas forcément utilisées à chaque fois qu'une fonction est accédée. Il est possible que l'accès à une bibliothèque de chargement ne soit utilisé qu'une seule fois, à l'installation.
Vous pouvez aussi accéder à des sous-routines privés écrites par utilisateur. Si vous disposez d'une collection privée de sous-routine (en l'occurrence, des sous-routines que vous avez créées vous-même ou si vous utilisez des sous-routines personnalisées), ne les stocker pas dans la bibliothèque de fonctions. Stocker-les séparément pour éviter de les remplacer quand votre site installe une nouvelle version. Pour plus d'informations sur la création d'une sous-routine, consultez Créer une sous-routine.
Comment : |
Sous z/OS, les bibliothèques de chargement sont des jeux de données partitionnés contenant des modules de liaison/édition. Ces bibliothèques sont stockées en tant que EDALIB.LOAD ou FUSELIB.LOAD. De plus, il se peut que votre site ait des collections de sous-routines privées stockées dans des bibliothèques de chargement séparées. Si c'est le cas, vous devez allouer ces bibliothèques.
Pour utiliser une fonction stockée dans une bibliothèque de chargement, allouez celle-ci sur le ddname USERLIB dans votre JCL ou CLIST.
L'ordre de recherche est USERLIB, STEPLIB, JOBLIB, link pack area, et linklist.
Le serveur ajoute aussi le mot-clé TASKLIB à la recherche pour les bibliothèques non-APF autorisées. Pour plus d'informations, consultez le manuel Installation Serveur, Configuration et Opérations pour MVS.
//USERLIB DD DISP=SHR,DSN=BIGLIB.LOAD
DYNAM ALLOC FILE USERLIB DA lib SHR
où :
est le ddname auquel vous allouez une bibliothèque de chargement.
sont les noms des bibliothèques de chargement, concaténés sur USERLIB.
DYNAM ALLOC FILE USERLIB DA MVS.FUSELIB.LOAD SHR
Supposons qu'une requête de rapport invoque de fonction : BENEFIT stockée dans la bibliothèque SUBLIB.LOAD, et EXCHANGE stockée dans la bibliothèque BIGLIB.LOAD. Pour concaténer les bibliothèques de chargement BIGLIB et SUBLIB dans l'allocation pour ddname USERLIB, exécutez les commandes suivantes :
DYNAM ALLOC FILE USERLIB DA SUBLIB.LOAD SHR DYNAM ALLOC FILE BIGLIB DA BIGLIB.LOAD SHR DYNAM CONCAT FILE USERLIB BIGLIB
Les bibliothèques de chargement sont recherchées dans l'ordre dans lequel elles sont spécifiées dans la commande ALLOCATE.
Concaténer la bibliothèque de chargement sur le ddname STEPLIB dans votre JCL :
//FOCUS EXEC PGM=FOCUS //STEPLIB DD DSN=FOCUS.FOCLIB.LOAD,DISP=SHR // DD DSN=FOCUS.FUSELIB.LOAD,DISP=SHR . . .
Dans Developer Studio, les fonctions externes ne sont pas construites dans WebFOCUS et sont stockées dans des fichiers connus sous le nom de bibliothèques lien dynamique. Pour les utiliser, identifiez l'emplacement du fichier bibliothèque de fonctions lien dynamique avec la variable d'environnement IBICPG, ou bien stockez la bibliothèque dans le répertoire \CONF\USER et WebFOCUS le trouvera automatiquement.
WebFOCUS |