Buildmetadaten mit dem Generator für Sprachendefinitionen von Rational Team Concert for System z automatisch generieren

Vorbereitungen
Verwenden Sie den Generator für Sprachendefinitionen (Language Definitions Generator) auf dem IDE-Client von Rational Team Concert for System z, um Datensatzdefinitionen, Umsetzer und Sprachendefinitionen ohne Verwendung eines Editors zu erstellen.

Bevor Sie den Generator für Sprachendefinitionen verwenden können, müssen Sie folgende Arbeitsschritte ausgeführt haben:

zComponent-Projekt zur Verwendung mit dem Generator für Sprachendefinitionen importieren

Warum und wann dieser Vorgang ausgeführt wird
Führen Sie diese Aufgabe aus, um die Verwendung des Generators für Sprachendefinitionen in Beispielprojekten zu üben, von denen mehrere mit dem Rational Team Concert for System z-Client installiert wurden.
  1. Öffnen Sie in Rational Team Concert for System z die Perspektive 'Ressource'.
    1. Klicken Sie auf Fenster.
    2. Setzen Sie den Mauszeiger auf 'Perspektive öffnen'.
    3. Wählen Sie Andere aus.
    4. Wählen Sie Ressource aus.
    5. Klicken Sie auf OK. Die Ansicht 'Projektexplorer' erscheint.
  2. Klicken Sie in der Ansicht 'Projektexplorer' mit der rechten Maustaste, um das Kontextmenü aufzurufen, und wählen Sie Importieren aus. Das Fenster Auswählen des Importassistenten wird geöffnet.
  3. Erweitern Sie im Fenster Auswählen des Importassistenten den Knoten 'Allgemein', und wählen Sie Vorhandene Projekte in den Arbeitsbereich aus.
  4. Klicken Sie auf Weiter. Das Fenster Projekte importieren des Importassistenten wird geöffnet.
  5. Wählen Sie das Optionsfeld Stammverzeichnis der zu importierenden Projekte auswählen aus, und klicken Sie auf Durchsuchen.
  6. Wählen Sie das Stammverzeichnis des Projekts aus, das importiert werden soll. Beispielprojekte sind im Unterverzeichnis rtcz\samples des Installationsverzeichnisses von Rational Team Concert for System z, C:\Programme\IBM\SDP\rtcz\samples, gespeichert.
  7. Wählen Sie die Kästchen neben den Projekten aus, die importiert werden sollen. Folgende Beispielprojekte sind verfügbar:
    HelloWorldSample
    Ein einfaches Beispiel einer COBOL-Anwendung mit dem Namen 'Hello World'.
    HelloWorldSample2
    Eine weitere Anwendung mit den Namen 'Hello World' in Hostassembler, PL/I und C.
    MortgageApplication
    Eine COBOL-Beispielanwendung mit mehreren zComponent-Projekten. Zum Importieren dieses Beispielprojekts wählen Sie alle Projekte aus, deren Namen mit MortgageApplication beginnen.
  8. Klicken Sie auf Fertig stellen.

Generator für Sprachendefinitionen von Rational Team Concert for System z ausführen

  1. Erweitern Sie den Knoten Ihres Projekts.
  2. Wählen Sie setuprtcz.xml aus, und wählen Sie dann Ausführen als > Ant-Erstellung aus.
    Anmerkung: setuprtcz.xml ist der Name der Datei, die im Beispielprojekt enthalten ist. Wenn Sie eine eigene Datei schreiben, achten Sie darauf, dass Sie für die Datei die Erweiterung .xml festlegen.
  3. Wählen Sie die Registerkarte 'Eigenschaften' aus. Wählen Sie das Kästchen ab, das die Verwendung globaler Eigenschaften festlegt (gemäß den Ant-Laufzeitvorgaben), und fügen Sie folgende Eigenschaften hinzu:
    • repositoryAddress. Dies ist Ihr URL für Rational Team Concert for System z.
    • userId. Dies ist Ihre Benutzer-ID für Rational Team Concert for System z.
    • password. Dies ist Ihr Kennwort für Rational Team Concert for System z.
    • projectArea. Dies ist der Name des Projektbereichs.
  4. Wählen Sie das Register 'JRE' aus, und wählen Sie anschließend In gleicher JRE wie Arbeitsbereich ausführen aus.
  5. Klicken Sie auf Anwenden und anschließend auf Ausführen. Wenn Sie den Generator für Sprachendefinitionen erfolgreich ausführen, haben Sie alle Datensatzdefinitionen, Umsetzer und Sprachendefinitionen erstellt, und alle Metadaten in Ihren ausgewählten Projekten werden so aktualisiert, dass sie auf die neuen Definitionen zeigen.
  6. Wechseln Sie zur Ansicht 'Anstehende Änderungen' und überprüfen Sie Ihre Änderungen an den Metadaten.
  7. Öffnen Sie die Perspektive 'Arbeitselemente', klicken Sie mit der rechten Maustaste auf Ihren Projektbereich, und klicken Sie anschließend auf Aktualisieren. In der Ansicht 'Teamartefakte' sollten alle neuen Datensatzdefinitionen, Sprachendefinitionen und Umsetzer in Ihrem Projektbereich angezeigt werden.

Ant-Tasks für den Generator für Sprachendefinitionen

Verwenden Sie den Generator für Sprachendefinitionen von Rational Team Concert for System z, um die folgenden angepassten Ant-Tasks auszuführen. Jede Task stellt den Namen der Java™-Klasse dar, die die Task implementiert.

InitTask

Warum und wann dieser Vorgang ausgeführt wird
InitTask ist eine angepasste Ant-Task, die Verbindungen mit dem Rational Team Concert for System z-Server für andere Taks für Datensatzdefinitionen, Umsetzer und Sprachendefinitionen initialisiert. Die 'InitTask' muss vor anderen Taks für Datensatzdefinitionen, Umsetzer und Sprachendefinitionen ausgeführt werden.
Tabelle 1. Parameter der 'InitTask'
Attribut Beschreibung
repositoryAddress URL-Zeichenfolge des Rational Team Concert for System z-Servers
userId Benutzer-ID für Rational Team Concert for System z
password Kennwort für Rational Team Concert for System z
passwordFile Kennwortdatei für Rational Team Concert for System z
projectArea Der Name des Projektbereichs, in dem zugehörige Datensatzdefinitionen, Umsetzer und Sprachendefinitionen gespeichert werden.
Beispiel
Nachfolgend ist ein Beispiel einer 'InitTask' aufgeführt:

<ld:init repositoryAddress="https://opusdejazz.raleigh.ibm.com:9443/jazz"userId="tami" password="tami" projectArea="Build Test"/>

DsDefTask

Warum und wann dieser Vorgang ausgeführt wird
Verwenden Sie diese Task, um eine Datensatzdefinition zu erstellen.
Tabelle 2. Parameter der 'DsDefTask'
Attribut Beschreibung Standardwert
name Definitionsname  
description Definitionsbeschreibung  
dsName Datensatzname  
dsMember Membername  
prefixDSN Einstellung true, wenn das in der Buildanforderung angegebene Präfix dem Datensatznamen vorangestellt werden soll. true
dsDefUsageType
  • 0 = zFolder
  • 1 = neu
  • 2 = temporär
  • 3 = vorhanden
0 (zFolder)
dsType
  • 0 = PDSE
  • 9 = NICHT ANGEGEBEN
0 (PDSE)
storageClass Speicherklasse, der der Datensatz zugeordnet wird.  
dataClass Datenklasse, die zum Erstellen des Datensatzes verwendet wird.  
managementClass Managementklasse, die zum Verwalten des Datensatzes verwendet wird.  
volumeSerial Seriennummer des Datenträgers mit dem Datensatz.  
GenericUnit Generischer Gruppenname oder Einheitenadresse.  
spaceUnits Einheit des Zuordnungsbereichs, die verwendet werden soll. Gültige Werte:
  • trks (tracks) - Spuren
  • blks (blocks) - Blöcken
  • cyls (cylinders) - Zylinder
 
recordUnit Einheit der Zuordnungsmenge. Gültige Werte:
  • U - Eine
  • K - Tausend
  • M - Million
U
primaryQuantity Primäre Zuordnungsmenge. 1
secondaryQuantity Sekundäre Zuordnungsmenge. 1
directoryBlocks Anzahl der verfügbaren 256-Byte-Verzeichnisblöcke. 0
recordLength Logische Länge in Bytes 80
blockSize Blockgröße  
recordFormat Eine Satzformatzeichenfolge für einen z/OS-Datensatz, z. B. F, FB, V, VB oder U. Gültige Werte:
  • F (fixed) - feststehend
  • V (variable) - variabel
  • U (undefined) - nicht definiert
  • B (blocked) - blockiert
  • A (gibt an, dass die Datei ASA-Steuerzeichen enthält)
  • M (gibt an, dass die Datei Maschinensteuerzeichen enthält)
  • S (Standardformat, wenn 'fixed' (feststehend), übergreifendes Format, wenn 'variable' (variabel))
  • T ('truncated' - abgeschnitten)
FB
Beispiel
Nachfolgend ist ein Beispiel einer 'DsDefTask' aufgeführt:

<!-- zFolders --> <ld:dsdef name="COBOL" dsName="COBOL" dsDefUsageType="0" dsType="0" spaceUnits="cyls" primaryQuantity="1" secondaryQuantity="1" recordFormat="FB" recordLength="80" blockSize="0" />  
<!-- Neue Datensätze --> <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" />
<!-- Temporäre Datensätze --> <ld:dsdef name="TEMPFILE" dsDefUsageType="2" prefixDSN="false" dsType="9" spaceUnits="trks" primaryQuantity="5" secondaryQuantity="5" genericUnit="SYSALLDA" />
<!-- Vorhandene Datensätze --> <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

Warum und wann dieser Vorgang ausgeführt wird
Verwenden Sie diese Task, um einen Umsetzer zu erstellen. TranslatorTask akzeptiert Allocation und Concatenation als untergeordnete Elemente.
Tabelle 3. Parameter der 'TranslatorTask'
Attribut Beschreibung Standardwert
name Name des Umsetzers  
description Beschreibung des Umsetzers  
dataSetDefinition Datensatzdefinition für das Umsetzermodul  
ddnamelist Liste alternativer Datensatznamen für den Umsetzer  
defaultOptions Optionszeichenfolge, die an den Umsetzer übergeben wird.  
maxRC Maximal zulässiger Rückkehrcode 0
Beispiel
Nachfolgend ist ein Beispiel einer 'TranslatorTask' aufgeführt:

<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

Warum und wann dieser Vorgang ausgeführt wird
Verwenden Sie diese Task, um eine Sprachendefinition zu erstellen.
Tabelle 4. Parameter der 'LangDefTask'
Attribut Beschreibung
name Name der Sprachendefinition
description Beschreibung der Sprachendefinition
translators Namen der Umsetzer, durch Doppelpunkt getrennt
defaultExtension Zugeordnete Standarddateierweiterung
Beispiel
Nachfolgend ist ein Beispiel einer 'LangDefTask' aufgeführt:

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

DeleteDsDefsTask

Warum und wann dieser Vorgang ausgeführt wird
Verwenden Sie diese Task, um alle Datensatzdefinitionen zu löschen.
Beispiel
Nachfolgend ist ein Beispiel einer 'DeleteDsDefsTask' aufgeführt:

<ld:deletedsdefs/>

DeleteTranslatorsTask

Warum und wann dieser Vorgang ausgeführt wird
Verwenden Sie diese Task, um alle Umsetzer zu löschen.
Beispiel
Nachfolgend ist ein Beispiel einer 'DeleteTranslatorsTask' aufgeführt:

<ld:deletetranslators/>

DeleteLangDefsTask

Warum und wann dieser Vorgang ausgeführt wird
Verwenden Sie diese Task, um alle Sprachendefinitionen zu löschen.
Beispiel
Nachfolgend ist ein Beispiel einer 'DeleteLangDefsTask' aufgeführt:

<ld:deletelangdefs/>

ResolveMetadataTask

Warum und wann dieser Vorgang ausgeführt wird
Verwenden Sie diese Task, um den zFiles Sprachendefinitionen zuzuordnen und den zFolders Datensatzdefinition zuzuordnen. Diese Zuordnungen werden im Unterverzeichnis .antzBuild jedes zComponent-Projekts gespeichert. Sie können eine Zuordnung zwischen zFiles und Sprachendefinitionen vornehmen, indem Sie die zFile-Erweiterung und das defaultExtension-Attribut einer bestimmten Sprachendefinition verwenden. Wenn die Sprachendefinition COBOL z. B. das defaultExtension-Attribute cbl verwendet, wird der zFile HELLO.cbl diese Sprachendefinition zugeordnet. Sie können eine Zuordnung zwischen zFolder und Datensatzdefinitionen vornehmen, indem Sie die Namen der zFolder und die Namen der Datensatzdefinitionen verwenden. Wenn Sie z. B. eine Datensatzdefinition mit dem Namen HELLO.COBOL verwenden, wird dem zFolder HELLO.COBOL die Datensatzdefinition mit diesem Namen zugeordnet.
Tabelle 5.
Attribut Beschreibung Standardwert
projectRoot Stammverzeichnis des zComponent-Projekts Das Verzeichnis, in dem das Script gespeichert ist.
Beispiel
Nachfolgend ist ein Beispiel einer 'ResolveMetadataTask' aufgeführt:

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

Einschränkungen des Generators für Sprachendefinitionen

Warum und wann dieser Vorgang ausgeführt wird
Für den Generator für Sprachendefinitionen von Rational Team Concert for System z gelten folgende Einschränkungen:
  • Der Generator für Sprachendefinitionen unterstützt keine Ersetzungen mit Buildeigenschaften.
  • Die ResolveMetadataTask aktualisiert die Metadaten auch dann, wenn Sie keine Änderungen in den zugeordneten Datensatzdefinitionen oder Sprachendefinitionen vornehmen.

Feedback

Waren die Informationen hilfreich? Sie können auf Jazz.net (Registrierung erforderlich) Feedback geben: Comment in the forums oder submit a bug