Aller au contenu

DLCOBJ

Désallouer un objet

En bref

Le commande DLCOBJ (Désallouer un objet) permet à l'utilisateur de désallouer les objets indiqués.

DLCOBJ se lit DLC (Désallouer) + OBJ. Sur IBM i, le nom d'une commande associe presque toujours un verbe et un objet.

Syntaxe minimale

DLCOBJ OBJ(…)

Paramètres

  • OBJ Spécifications d'objet obligatoire
  • SCOPE Portée du verrouillage
  • MIRROR Protection par disque miroir

Astuce : dans une session 5250, tapez DLCOBJ puis F4 pour l'invite de saisie, et F1 sur un paramètre pour son aide.

Aide IBM i de la commande

Texte du F1, IBM i 7.5 en français (bibliothèque QSYS)

Où s'exécute : Tous les environnements (*ALL)
Compatible multitâche : Sous conditions

Le commande DLCOBJ (Désallouer un objet) permet à l'utilisateur de désallouer les objets indiqués. Les objets alloués précédemment à une ou plusieurs reprises à l'aide de la commande ALCOBJ (Allouer un objet) sont libérés et par conséquent utilisables par d'autres travaux ou unités d'exécution. Aucune erreur ne se produit lorsque cette commande est lancée alors qu'il n'existe aucun verrouillage.

Si la commande DLCOBJ n'est pas utilisée, les objets peuvent être désalloués automatiquement. Les verrouillages travail et les verrouillages unité d'exécution alloués sont libérés automatiquement respectivement à la fin du travail ou de l'unité d'exécution. Si un verrouillage travail est apposé à une unité d'exécution, il est maintenu par le travail après l'arrêt de l'unité d'exécution qui a émis la demande. Les verrouillages espace de verrouillage ne sont pas automatiquement libérés.

La commande DLCOBJ ne doit pas être émise pour un objet qui n'a pas été explicitement alloué par la commande ALCOBJ. Si la commande DLCOBJ est lancée, les verrouillages internes sur l'objet sont libérés, ce qui peut entraîner la suppression de l'objet.

Pour libérer plusieurs verrouillages sur un objet à l'aide d'une seule commande DLCOBJ, le nom de l'objet, son type, et son type de verrouillage doivent être répétés dans la liste pour chacun des verrouillages à libérer.

REMARQUES :

  1. Lors de la désallocation de fichiers DDM et de fichiers répartis, un délai supplémentaire est requis pour l'exécution de la commande en raison du délai requis pour l'établissement des communications et pour la désallocation des fichiers sur les systèmes éloignés.
  2. L'allocation d'un objet en indiquant *LIBL à la bibliothèque de l'objet, la modification de la liste des bibliothèques de l'unité d'exécution, puis la tentative de désallocation de l'objet en indiquant *LIBL à la bibliothèque de l'objet peuvent entraîner la désallocation d'un objet incorrect. Une telle désallocation peut provoquer des verrouillages internes.

Restrictions :

  1. Cette commande ne peut pas être utilisée pour désallouer une description d'unité (*DEVD) pour une unité de communications évoluées de programme à programme (APPC) ou pour une unité INTRA.
  2. Cette commande peut être utilisée pour désallouer uniquement les types d'objets *FILE base de données suivants :
    • Fichiers physiques
    • Fichiers logiques
    • Fichiers répartis

      Permet de désallouer la partie du fichier sur chaque noeud du groupe de noeuds.

    • Fichiers DDM

      Permet de désallouer le fichier DDM sur le système local et le fichier sur le système éloigné identifié dans le fichier DDM.

  3. Dans le cas de travaux à unités d'exécution multiples, cette commande n'admet pas l'utilisation d'unités d'exécution multiples pour les fichiers répartis. Par ailleurs, cette commande n'admet pas l'utilisation fichiers DDM de type *SNA.

Paramètres

Mot-clé Description Valeurs possibles Remarques
OBJ Spécifications d'objet Values (jusqu'à 50 répétitions): Liste d'éléments Obligatoire, positionnel 1
Élément 1: Objet Nom d'objet qualifié
Qualificatif 1: Objet Nom
Qualificatif 2: Biblio Nom, *LIBL, *CURLIB
Élément 2: Type d'objet *AUTL, *BNDDIR, *CLD, *CRQD, *CSI, *CSPMAP, *CSPTBL, *DEVD, *DTAARA, *DTADCT, *DTAQ, *FCT, *FILE, *FNTRSC, *FNTTBL, *FORMDF, *IMGCLG, *IPXD, *LIB, *LOCALE, *MEDDFN, *MENU, *MGTCOL, *MODULE, *MSGQ, *NODL, *NTBD, *NWSCFG, *NWSD, *OVL, *PAGDFN, *PAGSEG, *PDFMAP, *PDG, *PGM, *PNLGRP, *PSFCFG, *QMFORM, *QMQRY, *QRYDFN, *SBSD, *SCHIDX, *SQLPKG, *SQLXSR, *SRVPGM, *SSND, *S36, *TIMZON, *USRIDX, *USRQ, *USRSPC, *VLDL, *WSCST
Élément 3: Etat de verrouillage *SHRRD, *SHRNUP, *SHRUPD, *EXCLRD, *EXCL
Élément 4: Membre, si fichier BD Nom, *FIRST
SCOPE Portée du verrouillage *JOB, *THREAD, *LCKSPC Facultatif
MIRROR Protection par disque miroir *YES, *NO Facultatif

Spécifications d'objet (OBJ)

Indique le nom qualifié d'un ou de plusieurs objets désalloués du travail, de l'unité d'exécution ou de l'espace de verrouillage, le type de chacun de ces objets, son état de verrouillage et le nom de membre (si l'objet est un fichier base de données ou un fichier DDM).

Seuls certains types d'objet peuvent être indiqués dans la commande DLCOBJ (Désallouer un objet). Certains d'entre eux ne peuvent utiliser tous les états de verrouillage.

Ce paramètre est obligatoire.

Vous pouvez affecter 50 valeurs à ce paramètre.

Elément 1 : Objet

Qualificatif 1 : Objet

nom
Indiquez le nom de l'objet.

Qualificatif 2 : Biblio

*LIBL
La recherche porte sur toutes les bibliothèques de l'unité d'exécution jusqu'à ce que la première occurrence soit trouvée.
*CURLIB
La bibliothèque en cours pour l'unité d'exécution permet de localiser l'objet. Si celle-ci n'est indiquée, QGPL est prise par défaut.
nom
Indiquez le nom de la bibliothèque contenant l'objet.

Elément 2 : Type d'objet

type-objet
Indiquez le type d'objet à désallouer. Pour plus d'informations, reportez-vous à la figure Etats de verrouillages admis par type d'objet.

Elément 3 : Etat de verrouillage

*SHRRD
L'état de verrouillage est partagé en lecture.
*SHRNUP
L'état de verrouillage est partagé (mise à jour non permise).
*SHRUPD
L'état de verrouillage est partagé en mise à jour.
*EXCLRD
L'état de verrouillage est en exclusif (lecture permise).
*EXCL
L'état de verrouillage est en exclusif (lecture non permise).

Elément 4 : Membre, si fichier BD

Remarque :Les valeurs suivantes ne peuvent être indiquées que si le type d'objet est un fichier base de données.

*FIRST
Le premier membre du fichier base de données est désalloué.
nom
Indiquez le nom du membre à allouer. Si le fichier indiqué est un fichier logique, les membres de fichier physique associés aux membres du fichier logique sont également désalloués.

Pour savoir comment spécifier plusieurs verrouillages sur un objet, comment verrouiller des descriptions d'unité, ou bien quel type d'objet vous pouvez allouer, reportez-vous au manuel Rubriques CL de la catégorie Programmation de l'IBM i Information Center, à l'adresse http://www.ibm.com/systems/i/infocenter/.

Si un membre de fichier base de données est désalloué, le système tente de trouver la première occurrence du fichier figurant dans la liste des bibliothèques, puis recherche dans ce fichier le membre indiqué. Si un fichier portant le même nom, placé plus bas dans la liste, contient le membre, et si le premier fichier ne le contient pas, le membre n'est pas trouvé. Si le nom du membre n'est pas indiqué pour un fichier base de données, *FIRST est le nom de membre pris par défaut et le premier membre créé dans le fichier est désalloué.

Figure : Etats de verrouillage admis par type d'objet

Type                                    Etats de verrouillage
d'objet  Définition              *EXCL *EXCLRD *SHRUPD *SHRNUP *SHRRD
-------  ----------------------  ----- ------- ------- ------- ------
*AUTL    Liste d'autorisation      x      x       x       x       x
*BNDDIR  Répertoire de liage       x      x                       x
*CLD     Description env local C   x      x       x       x       x
*CRQD    Description de demande    x      x       x       x       x
         de changement
*CSI     Informations annexes      x      x       x       x       x
         sur les communications
*DEVD    Description d'unité              x       x
*DTAARA  Zone de données           x      x       x       x       x
*DTADCT  Dico de données           x      x       x       x       x
*DTAQ    File de données           x      x       x       x       x
*FCT     Table ctrl formulaires    x      x       x       x       x
*FILE    Fichier                   x      x       x       x       x
*FNTRSC  Ressource police          x      x       x       x       x
*FNTTBL  Table mappage polices     x      x       x       x       x
*FORMDF  Définition d'imprimé      x      x       x       x       x
*IMGCLG  Catalogue d'images        x      x       x       x       x
*IPXD    Description               x      x       x       x       x
         IPX
*LIB     Bibliothèque                     x       x       x       x
*LOCALE  Obj Environnement local   x      x       x       x       x
*MEDDFN  Définition support        x      x       x       x       x
*MENU    Menu                      x      x       x       x       x
*MGTCOL  Collecte de gestion       x      x       x       x       x
*MODULE  Module                    x      x                       x
*MSGQ    File de messages          x                              x
*NODL    Liste de noeuds           x      x       x       x       x
*NTBD    Description NetBIOS       x      x       x       x       x
*NWSCFG  Configuration de          x      x       x       x       x
         Services Facility
*NWSD    Description de serveur    x      x       x       x       x
         de changement
*OVL     Fond de page              x      x       x       x       x
*PAGDFN  Définition de page        x      x       x       x       x
*PAGSEG  Segment de page           x      x       x       x       x
*PDFMAP  Mappage PDF               x      x       x       x       x
*PDG     Grpe descripteur impr     x      x       x       x       x
*PGM     Programme                 x      x                       x
*PNLGRP  Groupe de panneaux        x      x       x       x       x
*PSFCFG  Configuration de Print    x      x       x       x       x
         Services Facility
*QMFORM  Format QM                 x      x       x       x       x
*QMQRY   Requête QM                x      x       x       x       x
*QRYDFN  Définition d'analyse      x      x       x       x       x
*S36     Description de machine    x      x       x       x       x
         de changement
*SBSD    Description de sous-syst. x
*SCHIDX  Index d'aide              x      x       x       x       x
*SQLPKG  Module                    x      x       x       x       x
         SQL
*SQLXSR  Référentiel de schéma     x      x       x       x       x
         XML SQL
*SRVPGM  Programme de service      x      x       x       x       x
*SSND    Description de session    x      x       x       x       x
*TIMZON  Descr. fuseau horaire     x      x       x       x       x
*USRIDX  Index utilisateur         x      x       x       x       x
*USRQ    File utilisateur          x      x       x       x       x
*USRSPC  Espace utilisateur        x      x       x       x       x
*VLDL    Objet liste validation    x      x       x       x       x
*WSCST   Objet personnalisation    x      x       x       x       x
         poste de travail
'x' indique l'état de verrouillage admis pour le type d'objet.

Portée du verrouillage (SCOPE)

Indiquez la portée de cette demande de verrouillage.

*JOB
Le verrouillage est apposé au niveau du travail.
*LCKSPC
Le verrouillage est apposé à l'espace de verrouillage attaché à l'unité d'exécution en cours. Si aucun espace de verrouillage n'est attaché, le verrouillage est apposé au travail.
*THREAD
Le verrouillage est apposé au niveau de l'unité d'exécution.

Tous les types d'objet pris en charge par le paramètre OBJ acceptent les verrouillages travail. Tous les types d'objet pris en charge par le paramètre OBJ acceptent les verrouillages espace de verrouillage. Pour les objets DDM avec un verrouillage espace de verrouillage, le verrouillage sur le système éloigné est apposé au travail. Pour connaître les types d'objet qui prennent en charge les verrouillages unité d'exécution, reportez-vous à la figure Types d'objet prenant en charge les verrouillages de portée d'unité d'exécution.

La portée du verrouillage doit correspondre à la portée des verrouillages en cours alloués au travail ou à l'unité d'exécution.

Figure : Types d'objet prenant en charge les verrouillages de portée unité d'exécution

Objet                                    Unité d'exécution
Type     Définition du type d'objet         Portée
-------  ------------------------------------  ------
*AUTL    Liste autorisation
*BNDDIR  Répertoire de liage
*CLD     Description de l'environnement local C
*CRQD    Description de demande de modification
*CSI     Informations annexes sur les
         communications
*DEVD    Description d'unité                     x
*DTAARA  Zone de données                         x
*DTADCT  Dictionnaire de données                 x
*DTAQ    File d'attente de données               x
*FCT     Table de contrôle de formulaires
*FILE    Fichier                                 x
*FNTRSC  Ressource police
*FNTTBL  Table de mappage de polices
*FORMDF  Définition d'imprimé
*IMGCLG  Catalogue d'images                      x
*IPXD    Description IPX                         x
*LIB     Bibliothèque                            x
*LOCALE  Objet Environnement local               x
*MEDDFN  Définition support
*MENU    Menu
*MGTCOL  Collecte de gestion                     x
*MODULE  Module
*MSGQ    File d'attente de messages              x
*NODL    Liste de noeuds
*NTBD    Description NetBIOS                     x
*NWSCFG  Configuration de serveur de réseau
*NWSD    Description de serveur de réseau        x
*OVL     Fond de page
*PAGDFN  Définition de page
*PAGSEG  Segment de page
*PDFMAP  Mappage PDF                             x
*PDG     Groupe du descripteur d'impression
*PGM     Programme                               x
*PNLGRP  Groupe de panneaux
*PSFCFG  Configuration PSF
*QMFORM  Format QM
*QMQRY   Requête QM
*QRYDFN  Définition d'analyse
*S36     IBM 36
*SBSD    Description de sous-syst. x
*SCHIDX  Index d'aide
*SQLPKG  Module SQL
*SQLXSR  Référentiel de schémas XML SQL
*SRVPGM  Programme de service                    x
*SSND    Description de session
*TIMZON  Description de fuseau horaire           x
*USRIDX  Index utilisateur                       x
*USRQ    File d'attente utilisateur              x
*USRSPC  Espace utilisateur                      x
*VLDL    Objet Liste de validation               x
*WSCST   Personnalisation de postes de travail
'x' indique que le verrouillage de portée unité d'exécution est admis pour
ce type d'objet.

Protection par disque miroir (MIRROR)

Indiquez la mesure à prendre si l'objet est répliqué par Db2 mirror. Ce paramètre est admis uniquement pour les fichiers base de données(*FILE), les zones de données (*DTAARA), les espaces utilisateur (*USRSPC) et les index utilisateur (*USRIDX). Il est ignoré pour tous les autres objets. Les demandes ne sont pas répliquées lorsque l'objet est suivi.

*YES
La commande est exécutée sur les noeuds source et cible.
*NO
La commande est exécutée uniquement sur le noeud source. La demande n'est pas répliquée sur le noeud cible.

Exemples

Exemple 1: désallocation d'un fichier à un travail

DLCOBJ  OBJ((LIBB/FILEA *FILE *SHRRD))

Cette commande permet de libérer l'allocation partagée pour lecture du premier membre du fichier FILEA de la bibliothèque LIBB qui était suspendue par le travail.

Exemple 2 : désallocation d'une zone de données à une unité d'exécution

DLCOBJ  OBJ((LIBY/DATAAREAX *DTAARA *SHRRD ))  SCOPE(*THREAD)

Cette commande permet de libérer l'allocation partagée pour lecture de la zone de données DATAAREAX de la bibliothèque LIBY qui était suspendue par l'unité d'exécution.

Exemple 3 : désallocation d'un fichier à un espace de verrouillage

DLCOBJ   OBJ((LIBB/FILEA  *FILE *EXCL MEMBERA))
         SCOPE(*LCKSPC)

Cette commande permet de désallouer le membre MEMBERA du fichier FILEA de la bibliothèque LIBB de l'espace de verrouillage attaché à l'unité d'exécution en cours.

Messages d'erreur

Messages *ESCAPE

CPF1005
Objets non désalloués.

© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.