Génération automatique des métadonnées de génération à l'aide du générateur de définitions de langage de Rational Team Concert for System z

Avant de commencer
Le générateur de définitions de langage du client de l'environnement IDE intégré de Rational Team Concert for System z permet de créer des définitions de fichier, des convertisseurs et des définitions de langage sans utiliser d'éditeur.

Avant d'utiliser le générateur de définitions de langage, vous devez avoir exécuté les tâches suivantes :

Importation d'un projet zComponent à utiliser avec le générateur de définitions de langage

A propos de cette tâche
Exécutez cette tâche pour vous entraîner à utiliser le générateur de définitions de langage avec un exemple de projet (plusieurs exemples ont été installés avec le client Rational Team Concert for System z.
  1. Dans Rational Team Concert for System z, ouvrez la perspective Ressource.
    1. Cliquez sur Fenêtre.
    2. Survolez Ouvrir la perspective avec la souris.
    3. Sélectionnez Autre.
    4. Sélectionnez Ressource.
    5. Cliquez sur OK. La vue Explorateur de projets s'affiche.
  2. Dans la vue Explorateur de projets, cliquez avec le bouton droit de la souris sur votre projet et sélectionnez Importer. La fenêtre Sélection de l'assistant d'importation s'affiche.
  3. Dans la fenêtre Sélection de l'assistant d'importation, développez le noeud Général et sélectionnez Projets existants dans l'espace de travail.
  4. Cliquez sur Suivant. La fenêtre Importation de projets de l'assistant d'importation s'affiche.
  5. Sélectionnez le bouton d'option Sélection du répertoire racine et cliquez sur Parcourir.
  6. Sélectionnez le répertoire racine du projet que vous souhaitez importer. Des exemples de projets sont stockés dans le sous-répertoire rtcz\samples du répertoire d'installation de Rational Team Concert for System z : C:\Program Files\IBM\SDP\rtcz\samples.
  7. Cochez les cases correspondant aux projets que vous souhaitez importer. Les exemples de projets suivants sont disponibles :
    HelloWorldSample
    Exemple d'application COBOL "Hello World" simple.
    HelloWorldSample2
    Autre application "Hello World" en assembleur hôte, PL/I et C.
    MortgageApplication
    Exemple d'application COBOL avec plusieurs projets zComponent. Pour importer cet exemple de projet, sélectionnez tous les projets dont le nom commence par MortgageApplication.
  8. Cliquez sur Terminer.

Exécution du générateur de définitions de langage de Rational Team Concert for System z

  1. Développez le noeud du projet.
  2. Sélectionnez le fichier setuprtcz.xml, puis sélectionnez Exécuter en tant que > Génération Ant.
    Remarque : setuprtcz.xml est le nom du fichier inclus dans l'exemple de projet. Si vous créez votre propre fichier, donnez-lui l'extension .xml.
  3. Sélectionnez l'onglet Propriétés, puis décochez la case en regard de Utiliser les propriétés globales comme indiqué dans les préférences d'exécution Ant, puis ajoutez les propriétés suivantes :
    • repositoryAddress. Votre URL Rational Team Concert for System z.
    • userId. Votre ID utilisateur Rational Team Concert for System z.
    • password. Votre mot de passe Rational Team Concert for System z.
    • projectArea. Nom de votre zone de projet.
  4. Sélectionnez l'onglet JRE, puis sélectionnez Exécuter dans le même JRE que l'espace de travail.
  5. Cliquez sur Appliquer, puis sur Exécuter. Si le générateur de définitions de langage s'est correctement exécuté, toutes les définitions de fichier et de langage et tous les convertisseurs sont créés, et les métadonnées contenues dans les projets sélectionnés sont mises à jour de façon à pointer vers les nouvelles définitions.
  6. Accédez à la vue Modifications en attente et vérifiez les modifications apportées aux métadonnées.
  7. Accédez à la perspective Eléments de travail, cliquez sur la zone de projet à l'aide du bouton droit de la souris et cliquez sur Actualiser. Dans la vue Artefacts de l'équipe, les nouvelles définitions de fichier et de langage et les nouveaux convertisseurs doivent s'afficher dans votre zone de projet.

Tâches Ant du générateur de définitions de langage

Le générateur de définitions de langage de Rational Team Concert for System z permet d'exécuter les tâches Ant personnalisées suivantes. Chaque nom de tâche représente le nom de la classe Java™ qui implémente la tâche.

InitTask

A propos de cette tâche
InitTask est une tâche Ant personnalisée qui initialise les connexions au serveur Rational Team Concert for System z pour les autres tâches de définition de fichier, de définition de langage et de convertisseur. Vous devez exécuter la tâche InitTask avant toutes les autres tâches.
Tableau 1. Paramètres de la tâche InitTask
Attribut Description
repositoryAddress Chaîne d'URL désignant le serveur Rational Team Concert for System z
userId ID utilisateur Rational Team Concert for System z
password Mot de passe Rational Team Concert for System z
passwordFile Fichier de mots de passe Rational Team Concert for System z
projectArea Nom de la zone de projet où les définitions de fichier, les définitions de langage et les convertisseurs associés sont stockés.
task_example
Exemple de tâche InitTask :

<ld:init repositoryAddress="https://opusdejazz.raleigh.ibm.com:9443/jazz"userId="tami" password="tami" projectArea="Test de génération"/>

DsDefTask

A propos de cette tâche
Cette tâche permet de créer une définition de fichier.
Tableau 2. Paramètres de la tâche DsDefTask
Attribut Description Valeur par défaut
name Nom de la définition  
description Description de la définition  
dsName Nom de l'ensemble de données  
dsMember Nom du membre  
prefixDSN true si le préfixe indiqué dans la demande de génération doit être ajouté au nom de l'ensemble de données. true
dsDefUsageType
  • 0 = dossier zFolder
  • 1 = nouveau
  • 2 = temp
  • 3 = existant
0 (dossier zFolder)
dsType
  • 0 = ensemble de données partitionné étendu
  • 9 = non spécifié
0 (ensemble de données partitionné étendu)
storageClass Classe de stockage à laquelle l'ensemble de données est affecté.  
dataClass Classe de données utilisée pour créer l'ensemble de données.  
managementClass Classe de gestion utilisées pour gérer l'ensemble de données.  
volumeSerial Numéro de série de volume de l'ensemble de données  
GenericUnit Nom de groupe ou adresse d'unité générique  
spaceUnits Unité à utiliser pour les espaces d'allocation. La valeur doit être l'une des suivantes :
  • trks (pistes)
  • blks (blocs)
  • cyls (cylindres)
 
recordUnit Unité de quantité d'allocation. La valeur doit être l'une des suivantes :
  • U (unique)
  • K (millier)
  • M (million)
U
primaryQuantity Quantité d'allocation primaire 1
secondaryQuantity Quantité d'allocation secondaire 1
directoryBlocks Nombre de blocs de répertoire de 256 octets fournis. 0
recordLength Longueur d'enregistrement en octets 80
blockSize Taille de bloc  
recordFormat Chaîne de format d'enregistrement des fichiers z/OS comme F, FB, V, VB ou U. Les valeurs possibles sont les suivantes :
  • F (fixe)
  • V (variable)
  • U (non défini)
  • B (bloqué)
  • A (indique que le fichier contient des caractères de contrôle ASA.)
  • M (indique que le fichier contient des caractères de contrôle de machine.)
  • S (format standard s'il est fixe ; format fractionné s'il est variable)
  • T (tronqué)
FB
task_example
Exemple de tâche DsDefTask :

<!-- Dossiers zFolder --> <ld:dsdef name="COBOL" dsName="COBOL" dsDefUsageType="0" dsType="0" spaceUnits="cyls" primaryQuantity="1" secondaryQuantity="1" recordFormat="FB" recordLength="80" blockSize="0" />  
<!-- Nouveaux ensembles de données --> <ld:dsdef name="OBJ" dsName="OBJ"  dsDefUsageType="1" dsType="0" spaceUnits="cyls" primaryQuantity="1" secondaryQuantity="1" recordFormat="FB" recordLength="80" blockSize="0" /> <ld:dsdef name="LOAD" dsName="LOAD"  dsDefUsageType="1" dsType="0" spaceUnits="cyls" primaryQuantity="1" secondaryQuantity="1" recordFormat="U" recordLength="0" blockSize="32760" />
<!-- Ensemble de données temporaire --> <ld:dsdef name="TEMPFILE" dsDefUsageType="2" prefixDSN="false" dsType="9" spaceUnits="trks" primaryQuantity="5" secondaryQuantity="5" genericUnit="SYSALLDA" />
<!-- Ensembles de données existants --> <ld:dsdef name="IGYCRCTL" dsName="COBOL.V4R1M0.SIGYCOMP" dsMember="IGYCRCTL" dsDefUsageType="3" prefixDSN="false"/> <ld:dsdef name="IEWBLINK" dsMember="IEWBLINK" dsDefUsageType="3" prefixDSN="false"/> <ld:dsdef name="SCEELKED" dsName="CEE.SCEELKED" dsDefUsageType="3" prefixDSN="false"/>

TranslatorTask

A propos de cette tâche
Cette tâche permet de créer un convertisseur. TranslatorTask accepte les éléments enfants Allocation et Concatenation.
Tableau 3. Paramètres de la tâche TranslatorTask
Attribut Description Valeur par défaut
name Nom du convertisseur  
description Description du convertisseur  
dataSetDefinition Définition d'ensemble de données pour le module de conversion  
ddnamelist Liste des autres noms DD du convertisseur  
defaultOptions Chaîne d'option transmise au convertisseur.  
maxRC Code retour maximal autorisé 0
task_example
Exemple de tâche TranslatorTask :

<ld:translator name="ASMMAP" dataSetDefinition="ASMA90"
   defaultOptions="SYSPARM(MAP),DECK,NOOBJECT"
   ddnamelist="SYSLIN,,,SYSLIB,SYSIN,ANTPRINT"
   maxRC="0">
   <ld:concatenation name="SYSLIB">
      <ld:allocation dataSetDefinition="SDFHMAC"/>
      <ld:allocation dataSetDefinition="MACLIB"/>
   </ld:concatenation>
   <ld:allocation name="SYSIN" input="true"/>
   <ld:allocation name="SYSPUNCH" dataSetDefinition="OBJ" member="true"/>
   <ld:allocation name="ANTPRINT" dataSetDefinition="TEMPFILE"/>
   <ld:allocation name="SYSUT1" dataSetDefinition="TEMPFILE"/>
   <ld:allocation name="SYSUT2" dataSetDefinition="TEMPFILE"/>
   <ld:allocation name="SYSUT3" dataSetDefinition="TEMPFILE"/>
</ld:translator>

LangDefTask

A propos de cette tâche
Cette tâche permet de créer une définition de langage.
Tableau 4. Paramètres de la tâche LangDefTask
Attribut Description
name Nom de la définition de langage
description Description de la définition de langage
translators Noms des convertisseurs, délimités par un signe deux-points.
defaultExtension Extension de fichier associée par défaut.
task_example
Exemple de tâche LangDefTask :

<ld:langdef name="BMS" translators="ASMMAP,ASMDSECT"defaultExtension=”bms”/>

DeleteDsDefsTask

A propos de cette tâche
Cette tâche permet de supprimer toutes les définitions de fichier.
task_example
Exemple de tâche DeleteDsDefsTask :

<ld:deletedsdefs/>

Tâche DeleteTranslatorsTask

A propos de cette tâche
Cette tâche permet de supprimer tous les convertisseurs.
task_example
Exemple de tâche DeleteTranslatorsTask :

<ld:deletetranslators/>

DeleteLangDefsTask

A propos de cette tâche
Cette tâche permet de supprimer toutes les définitions de langage.
task_example
Exemple de tâche DeleteLangDefsTask :

<ld:deletelangdefs/>

Tâche ResolveMetadataTask

A propos de cette tâche
Cette tâche permet d'associer les fichiers zFile à des définitions de langage et les dossiers zFolder à des définitions de fichier. Ces associations sont stockées dans le sous-répertoire .antzBuild de chaque projet zComponent. Vous pouvez établir une association entre les fichiers zFile et les définitions de langage à l'aide de l'extension zFile et de l'attribut defaultExtension d'une définition de langage donnée. Si, par exemple, la définition de langage COBOL est associée à l'attribut defaultExtension cbl, le fichier zFile HELLO.cbl est associé à cette définition de langage. Vous pouvez établir une association entre les dossiers zFolder et les définitions de fichier à l'aide des noms de dossiers zFolder et des noms des définitions de fichier. Prenons l'exemple d'une définition de fichier nommée HELLO.COBOL : le dossier zFolder HELLO.COBOL est associé à la définition de fichier de même nom.
Tableau 5.
Attribut Description Valeur par défaut
projectRoot Répertoire racine du projet zComponent Répertoire dans lequel le script est stocké.
task_example
Exemple de tâche ResolveMetadataTask :

<ld:resolvemetadata/>
<ld:resolvemetadata projectRoot="../AnotherProject"/>

Limitations du générateur de définitions de langage

A propos de cette tâche
Les limitations du générateur de définitions de langage deRational Team Concert for System z sont les suivantes :
  • Le générateur de définitions de langage ne prend pas en charge les substitutions à l'aide des propriétés de génération.
  • ResolveMetadataTask met à jour les métadonnées même si vous n'entrez aucune modification dans les définitions de fichier ou de langage associées.

Commentaires en retour

Avez-vous obtenu l'aide souhaitée ? Vous pouvez envoyer des commentaires en retour à Jazz.net (inscription nécessaire) : Commentaire dans les forums ou signaler un bogue