Importer des définitions d’hôte COBOL pour les fichiers CICS, IMS et hôte
La fonctionnalité d’Designer TI du serveur d’intégration d’hôte d’origine a été introduite avec toutes les fonctionnalités de conception d’artefacts de métadonnées à partir de zéro avec l’aide d’un programmeur mainframe. Plus tard, la possibilité d’importer des définitions d’hôte au format de copybook COBOL ou RPG a été ajoutée pour prendre en charge des scénarios d’automatisation de la conception et de réduction de l’implication des programmeurs mainframe. Au fil des ans, cette fonctionnalité est devenue l’option principale pour créer des artefacts de métadonnées.
Prérequis
Téléchargez et installez Visual Studio. Après l’installation, assurez-vous d’installer également la charge de travail nommée Développement de bureau avec C++ dans Visual Studio. Sinon, vous obtenez l’exception d’erreur de HRESULT 0x800A007C.
Téléchargez et installez le Designer HIS pour Azure Logic Apps. Le seul prérequis est Microsoft .NET Framework 4.8.
Une solution et un projet d’application hôte Visual Studio (CICS ou IMS ou projet de solution de fichier hôte dans lequel vous souhaitez importer la définition de l’hôte.
Notes
Le Designer HIS fournit et affiche différentes options selon que vous ouvrez une solution CICS, IMS ou de fichier hôte.
Comprenez le fonctionnement du modèle de programmation pour la technologie que vous souhaitez intégrer, à savoir CICS ou IMS. Les deux plateformes ont des exigences et des façons différentes de transmettre et de recevoir des informations. Veillez à découvrir le modèle de programmation approprié avant d’importer les définitions d’hôte.
Obtenez les définitions d’hôte (copybooks) que vous souhaitez importer dans his Designer pour Logic Apps. Ce concepteur prend en charge les copybooks COBOL et RPG.
Préparer un copybook COBOL
Les copybooks COBOL doivent suivre les règles de codage COBOL de base. Le Designer HIS pour Logic Apps applique un grand nombre de ces règles. Le tableau suivant répertorie les règles main :
Colonnes Type Observation 1–6 Numéro de séquence N’entrez rien dans ces positions. 7 Indicateur Utilisez un astérisque (*) ou une barre oblique (/) pour coder un commentaire. 8-11 Marge (zone A) 77 nombres de niveau et 01 nombres de niveau 12-72 Marge B (zone B) Réservé aux niveaux 02 et supérieurs 73-80 Identification Aucune définition n’est autorisée ici. Vérifiez que le copybook COBOL ou RPG répond aux exigences du modèle de programmation sélectionné.
Vérifiez les points à la fin de chaque ligne. Assurez-vous qu’elles s’affichent, même si les dernières versions de COBOL ne nécessitent pas cette mise en forme.
Si votre copybook inclut REDEFINEs, faites confirmer par le programmeur mainframe la définition d’hôte que vous souhaitez utiliser, si aucun discriminant n’est disponible.
Supprimez tout caractère autre que ceux indiqués dans le tableau précédent. Vérifiez que vous disposez du nombre correct de caractères.
Importer une définition d’hôte COBOL (CICS)
Les étapes suivantes montrent comment importer un copybook COBOL pour un projet d’application hôte CICS dans le Designer HIS pour Logic Apps. Ce programme COBOL suit le modèle de programmation CICS ELM Link.
Dans Visual Studio, ouvrez la solution d’application hôte CICS, qui ouvre automatiquement le Designer HIS pour Logic Apps.
Dans le volet gauche du concepteur, ouvrez le menu contextuel du nœud de composant, puis sélectionnez Importer la>définition de l’hôte.
Dans l’exemple suivant, le nœud de composant est nommé NetCInt1.
Dans la zone Importer le système z fichier source COBOL , sélectionnez Parcourir.
Recherchez et sélectionnez le copybook à importer, puis sélectionnez Ouvrir.
L’exemple suivant montre le programme COBOL à importer :
***************************************************************** ** THIS PROGRAM IS A SAMPLE CICS SERVER THAT DEMONSTRATES A * ** SIMPLE BANKING APPLICATION WHICH FORMATS AND RETURNS AN * ** ARRAY OF ACCOUNT RECORDS THAT WILL CONTAIN EITHER CHECKING OR* ** SAVINGS INFORMATION. * ***************************************************************** IDENTIFICATION DIVISION. PROGRAM-ID. GETAINFO. ENVIRONMENT DIVISION. DATA DIVISION. ***************************************************************** ** VARIABLES FOR INTERACTING WITH THE TERMINAL SESSION * ***************************************************************** WORKING-STORAGE SECTION. LINKAGE SECTION. 01 DFHCOMMAREA. 05 SSN PIC X(9). 05 ACCT-ARRAY OCCURS 2 TIMES. 10 ACCT-NUM PIC X(10). 10 ACCT-TYPE PIC X. 10 ACCT-INFO PIC X(39). 10 CHECKING REDEFINES ACCT-INFO. 15 CHK-OD-CHG PIC S9(3)V99 COMP-3. 15 CHK-OD-LIMIT PIC S9(5)V99 COMP-3. 15 CHK-OD-LINK-ACCT PIC X(10). 15 CHK-LAST-STMT PIC X(10). 15 CHK-DETAIL-ITEMS PIC S9(7) COMP-3. 15 CHK-BAL PIC S9(13)V99 COMP-3. 10 SAVINGS REDEFINES ACCT-INFO. 15 SAV-INT-RATE PIC S9(1)V99 COMP-3. 15 SAV-SVC-CHRG PIC S9(3)V99 COMP-3. 15 SAV-LAST-STMT PIC X(10). 15 SAV-DETAIL-ITEMS PIC S9(7) COMP-3. 15 SAV-BAL PIC S9(13)V99 COMP-3. 15 FILLER PIC X(12). PROCEDURE DIVISION. IF SSN = '111223333' THEN ********************************************************** * SSN = 111223333 IS AN INDICATION TO RETURN A * DISCRIMINATED UNION OF CHECKING AND SAVINGS ACCOUNTS ********************************************************** MOVE 'CHK4566112' TO ACCT-NUM OF ACCT-ARRAY(1) MOVE 'C' TO ACCT-TYPE OF ACCT-ARRAY(1) MOVE SPACES TO ACCT-INFO OF ACCT-ARRAY(1) MOVE 25.00 TO CHK-OD-CHG OF ACCT-ARRAY(1) MOVE 2000.00 TO CHK-OD-LIMIT OF ACCT-ARRAY(1) MOVE 'SAV1234567' TO CHK-OD-LINK-ACCT OF ACCT-ARRAY(1) MOVE '10/31/2005' TO CHK-LAST-STMT OF ACCT-ARRAY(1) MOVE 1 TO CHK-DETAIL-ITEMS OF ACCT-ARRAY(1) MOVE 41852.16 TO CHK-BAL OF ACCT-ARRAY(1) MOVE 'SAV1234567' TO ACCT-NUM OF ACCT-ARRAY(2) MOVE 'S' TO ACCT-TYPE OF ACCT-ARRAY(2) MOVE SPACES TO ACCT-INFO OF ACCT-ARRAY(2) MOVE 4.50 TO SAV-INT-RATE OF ACCT-ARRAY(2) MOVE 5.00 TO SAV-SVC-CHRG OF ACCT-ARRAY(2) MOVE '10/15/2005' TO SAV-LAST-STMT OF ACCT-ARRAY(2) MOVE 1 TO SAV-DETAIL-ITEMS OF ACCT-ARRAY(2) MOVE 146229.83 TO SAV-BAL OF ACCT-ARRAY(2) ELSE ********************************************************** * SSN = 333221111 IS AN INDICATION TO RETURN A * SIMPLE REDEFINITION OF CHECKING ACCOUNTS ONLY ********************************************************** MOVE 'CHK4566112' TO ACCT-NUM OF ACCT-ARRAY(1) MOVE 'C' TO ACCT-TYPE OF ACCT-ARRAY(1) MOVE SPACES TO ACCT-INFO OF ACCT-ARRAY(1) MOVE 25.00 TO CHK-OD-CHG OF ACCT-ARRAY(1) MOVE 2000.00 TO CHK-OD-LIMIT OF ACCT-ARRAY(1) MOVE 'SAV1234567' TO CHK-OD-LINK-ACCT OF ACCT-ARRAY(1) MOVE '10/31/2005' TO CHK-LAST-STMT OF ACCT-ARRAY(1) MOVE 1 TO CHK-DETAIL-ITEMS OF ACCT-ARRAY(1) MOVE 41852.16 TO CHK-BAL OF ACCT-ARRAY(1) MOVE 'CHK7896112' TO ACCT-NUM OF ACCT-ARRAY(2) MOVE 'C' TO ACCT-TYPE OF ACCT-ARRAY(2) MOVE SPACES TO ACCT-INFO OF ACCT-ARRAY(2) MOVE 25.00 TO CHK-OD-CHG OF ACCT-ARRAY(2) MOVE 2000.00 TO CHK-OD-LIMIT OF ACCT-ARRAY(2) MOVE 'SAV7891234' TO CHK-OD-LINK-ACCT OF ACCT-ARRAY(2) MOVE '10/31/2005' TO CHK-LAST-STMT OF ACCT-ARRAY(2) MOVE 1 TO CHK-DETAIL-ITEMS OF ACCT-ARRAY(2) MOVE 41852.16 TO CHK-BAL OF ACCT-ARRAY(2) END-IF. EXEC CICS RETURN END-EXEC.
Passez en revue le copybook à importer. Ensuite, sélectionnez Suivant.
Une fois la zone Options d’élément ouverte et renseignée avec le nom de l’artefact et la valeur Nom du programme , sélectionnez Suivant.
Le concepteur présente l’artefact de métadonnées généré à partir du copybook COBOL.
Le concepteur génère également une définition d’hôte pour le copybook. Cette définition d’hôte n’inclut pas l’intégralité du copybook fourni, mais uniquement les champs et les types de données nécessaires à l’artefact pour interagir avec le programme mainframe. Bien que l’exemple fourni précédemment soit un programme entier, le Designer HIS extrait uniquement les informations requises en fonction du modèle de programmation sélectionné.
Pour générer hidX, sélectionnez Enregistrer tout.
Pour rechercher le fichier HIDX généré, accédez au dossier de votre application hôte.
Importer une définition d’hôte COBOL (IMS)
Cics et IMS hébergent tous deux des programmes stratégiques, mais chacun a des exigences différentes. Les étapes suivantes montrent comment importer un copybook COBOL pour un projet d’application hôte IMS dans le Designer HIS pour Logic Apps. Ce programme COBOL suit le modèle de programmation IMS Connect.
Dans Visual Studio, ouvrez la solution d’application hôte IMS, qui ouvre automatiquement le Designer HIS pour Logic Apps.
Dans le volet gauche du concepteur, ouvrez le menu contextuel du nœud de composant, puis sélectionnez Importer la>définition de l’hôte.
Dans l’exemple suivant, le nœud de composant est nommé NetCInt1.
Dans la zone Importer le système z fichier source COBOL , sélectionnez Parcourir.
Recherchez et sélectionnez le copybook à importer, puis sélectionnez Ouvrir.
L’exemple suivant montre le programme COBOL à importer :
IDENTIFICATION DIVISION. PROGRAM-ID. GETBAL. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. ************************************************************** * USER DATA DEFINITIONS. * ************************************************************** 01 INPUT-AREA. 05 LLI PIC S9(4) COMP VALUE ZERO. 05 ZZI PIC S9(4) COMP VALUE ZERO. 05 TRAN PIC X(7) VALUE SPACES. 05 NAME PIC X(30). 05 ACCNUM PIC X(6). 01 OUTPUT-AREA. 05 LLO PIC S9(4) COMP VALUE ZERO. 05 ZZO PIC S9(4) COMP VALUE ZERO. 05 ACCBAL PIC S9(7)V9(2) COMP-3. 01 IMS-VALUES. 02 END-OF-MSG PIC X(2) VALUE 'QD'. 02 QUEUE-EMPTY PIC X(2) VALUE 'QC'. 02 GU PIC X(4) VALUE 'GU '. 02 ISRT PIC X(4) VALUE 'ISRT'. 02 CHNG PIC X(4) VALUE 'CHNG'. LINKAGE SECTION. 01 IOTP-PCB. 05 IOTP-LTERM PIC X(8). 05 FILLER PIC X(2). 05 IOTP-STATUS PIC X(2). 05 IOTP-PREFIX. 10 IOTP-DATE PIC S9(7) COMP-3. 10 IOTP-TIME PIC S9(7) COMP-3. 10 IOTP-MSG-NUMBER PIC S9(4) COMP. 10 FILLER PIC X(2). 05 IOTP-MOD-NAME PIC X(8). 05 IOTP-USER-ID PIC X(8). PROCEDURE DIVISION. ENTRY 'DLITCBL' USING IOTP-PCB. CALL 'CBLTDLI' USING GU IOTP-PCB INPUT-AREA. IF IOTP-STATUS = END-OF-MSG DISPLAY 'IOTP-STATUS = END-OF-MSG' END-IF. IF IOTP-STATUS = QUEUE-EMPTY DISPLAY 'IOTP-STATUS = QUEUE-EMPTY' END-IF. IF IOTP-STATUS NOT = ' ' DISPLAY 'CALL FAILED IOTP-STATUS = ' IOTP-STATUS END-IF. MOVE 777.12 TO ACCBAL OF OUTPUT-AREA. MOVE LENGTH OF OUTPUT-AREA TO LLO. CALL 'CBLTDLI' USING ISRT IOTP-PCB OUTPUT-AREA. IF IOTP-STATUS NOT = ' ' DISPLAY 'SEND FAILED IOTP-STATUS = ' IOTP-STATUS END-IF. GOBACK.
Passez en revue le copybook à importer. Ensuite, sélectionnez Suivant.
Une fois la zone Options d’élément ouverte et renseignée avec le nom de l’artefact et la valeur ID de transaction, sélectionnez Suivant.
Notes
Pour les étapes suivantes, vérifiez que l’option Utiliser les valeurs par défaut de l’importateur n’est pas sélectionnée ou disponible, ce qui doit être le comportement par défaut lorsque vous travaillez avec une application hôte IMS.
Une fois la zone Zone d’entrée ouverte, sélectionnez tous les éléments dans le nœud ZONE D’ENTRÉE , puis sélectionnez Suivant.
Une fois la zone Zone de sortie ouverte, sélectionnez tous les éléments dans le nœud ZONE DE SORTIE , puis sélectionnez Suivant.
Une fois la zone Valeur de retour ouverte, sélectionnez un élément dans le nœud OUTPUT AREA pour la valeur de retour, puis sélectionnez Suivant.
Une fois la zone Tables de données, structures et unions ouverte, sélectionnez les groupes à utiliser pour les tables de données et les structures, puis sélectionnez Suivant.
Cet exemple ne nécessite aucune sélection, donc aucun élément n’est sélectionné.
Une fois la zone Zone de champs LL ouverte, sélectionnez les champs LL qui doivent être exclus de la transaction. Ensuite, sélectionnez Suivant.
Une fois la zone Zone de champs ZZ ouverte, sélectionnez les champs ZZ qui doivent être exclus de la transaction. Ensuite, sélectionnez Suivant.
Une fois la zone Zone des champs TRANCODE ouverte, sélectionnez les champs TRANCODE qui doivent être exclus de la transaction. Quand vous êtes prêt, sélectionnez Terminer.
Le concepteur affiche l’artefact de métadonnées généré à partir du copybook COBOL :
Le concepteur génère également une définition d’hôte pour le copybook. Cette définition d’hôte n’inclut pas l’intégralité du copybook fourni, mais uniquement les champs et les types de données nécessaires à l’artefact pour interagir avec le programme mainframe. Bien que l’exemple fourni précédemment soit un programme entier, le Designer HIS extrait uniquement les informations requises en fonction du modèle de programmation sélectionné.
Sélectionnez Enregistrer tout pour générer le fichier HIDX.
Pour rechercher le fichier HIDX généré, accédez au dossier de votre application hôte.
Importer une définition de fichier hôte COBOL (fichiers hôtes)
Les fichiers hôtes IBM ont plusieurs types et peuvent exister dans les ordinateurs mainframe ou les systèmes midrange. Chacun a ses propres types et caractéristiques. La demande augmente pour moderniser ou migrer des applications mainframe et midrange qui utilisent des données de fichier hôte. Par exemple, la migration de fichiers VSAM (Virtual Storage Access Method) vers Azure. Avec cette demande, le cas d’usage devient plus courant pour accéder à ces fichiers et les intégrer dans des solutions modernes.
Les étapes suivantes montrent comment importer un copybook COBOL pour un projet de fichier hôte dans le Designer HIS pour Logic Apps. Ce copybook COBOL représente un fichier VSAM simple. L’Assistant Importation crée des structures et des unions. Après avoir importé le copybook, vous pouvez créer et affecter des tables aux schémas appropriés.
Dans Visual Studio, ouvrez votre solution de fichier hôte, ce qui ouvre automatiquement le Designer HIS pour Logic Apps.
le volet gauche du concepteur, ouvrez le menu contextuel du nœud de composant, puis sélectionnez Importer une>définition d’hôte.
Dans l’exemple suivant, le nœud de composant est nommé HostFileDefinition1.
Dans la zone Importer le fichier source du système z COBOL , sélectionnez Parcourir.
Recherchez et sélectionnez le copybook à importer, puis sélectionnez Ouvrir.
L’exemple suivant montre le programme COBOL à importer :
****************************************************************** *HIS TRANSACTION DESIGNER EXPORT, 9.0 *DATA DECLARATION GENERATED ON 9/23/2013 5:21:51 PM ****************************************************************** *LIBRARY NAME.............CustomerDatabaseZOS.HIDX *DESCRIPTION..............NONE AVAILABLE ****************************************************************** 01 CUSTOMER-RECORD. 05 CUSTOMER-NAME PIC X(30). 05 CUSTOMER-SSN PIC X(9). 05 CUSTOMER-ADDRESS. 10 CUSTOMER-STREET PIC X(20). 10 CUSTOMER-CITY PIC X(10). 10 CUSTOMER-STATE PIC X(4). 10 CUSTOMER-ZIP PIC 9(5). 05 CUSTOMER-PHONE PIC X(13). 05 CUSTOMER-ACCESS-PIN PIC X(4).
Dans la zone Importer le système z fichier source COBOL , passez en revue le copybook à importer.
Vérifiez que les sélections pour les options suivantes pour la définition d’hôte : REDÉFINISSEUR, Utiliser les valeurs par défaut de l’importateur et Générer une structure sur les retraits. Ensuite, sélectionnez Suivant.
Le concepteur affiche l’artefact de métadonnées généré à partir du copybook COBOL. Cet artefact étant incomplet, vous devez créer une ou plusieurs tables qui reflètent le fichier hôte.
Dans l’arborescence des nœuds du composant, ouvrez le menu contextuel Tables , puis sélectionnez Ajouter une table.
Ouvrez le menu contextuel de la nouvelle table, puis sélectionnez Propriétés. Dans la fenêtre Propriétés , mettez à jour les propriétés suivantes :
Propriété Description Alias Nom de la table, par exemple , CUSTOMER Nom du fichier hôte Nom du système mainframe ou midrange pour le fichier hôte, par exemple , HISDEMO. NWIND. CLIENT Schéma Schéma précédemment importé, par exemple , CUSTOMER_RECORD L’exemple suivant montre les propriétés de table mises à jour :
L’exemple suivant montre l’artefact de métadonnées du fichier hôte terminé :
Pour générer le FICHIER HIDX. sélectionnez Enregistrer tout.
Pour rechercher le fichier HIDX généré, accédez au dossier de votre application hôte.