À l'aide de PL / I programmes avec COM Transaction Integrator

Traductions disponibles Traductions disponibles
Numéro d'article: 183179 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

PL / I n'is pas pris en charge par le Générateur de composants. Néanmoins, vous pouvez utiliser COM Transaction Integrator pour CICS et IMS (COMTI) PL / I des programmes fonctionnant en CICS ou IMS. Pour ce faire, le code les programmes avec les déclarations de données qui définissent mémoire la même manière que les déclarations équivalentes de COBOL.

Par exemple, un programme CICS peut effectuer un LINK CICS EXEC pour soit PL / I du programme ou un programme COBOL si la structure définissant DFHCOMMAREA dans les deux programmes est équivalente. De même, un composant COMTI pourrait être utilisé aussi bien avec un de ces programmes à l'aide d'un CICS LINK distant environnement (RE). Les mêmes mécanismes valable par extrapolation pour CICS et IMS REs.

Tout ce dont vous avez besoin de connaître est comment atteindre le même mappage de mémoire dans PL / I et COBOL. Cet article présente des comparaisons de type de données pour les deux langages.

Plus d'informations

Notez que le développeur qui est responsable de la création de composants pour PL / I programmes de transaction (TP) doivent être familiers avec les deux langues.

Alignement des données est un problème important. PL / I structures sont ALIGNED par défaut ; par exemple, un entier de fullword (4 octets) dans une structure ALIGNED sur une limite de fullword mainframe. Cela peut provoquer une incohérence avec des instructions similaires de COBOL et le PL / I structure doivent probablement être déclarés comme UNALIGNED. Ceci est particulièrement important pour la déclaration DFHCOMMAREA. Cette structure de données doit être non alignée. Vous devez, par conséquent, spécifier le mot clé non aligné sur la déclaration de structure.

Vous devez utiliser des soins lors de la gestion de la clause COBOL «Se produit en fonction ON». Les exemples suivants montrent une comparaison entre une construction COBOL avec un PL similaire / I construction.

Exemple de COBOL

   01   STRUCT1.
   02   X   PIC S9(4) COMP.
   02   Y OCCURS 1 TO 100 TIMES DEPENDING ON X PIC X(10).
				

PL / I, exemple

   DCL   1   STRUCT1,
         2   X   FIXED BIN(15),
         2   Y (1:100 REFER(X)) CHAR(10);
				

Listes de mappage COMTI Data Conversion de langage

      VB type          COBOL type                      PL/I type
      -------     --------------------              ---------------

      Integer        PIC S9(n) COMP                   FIXED BIN(15)
                     (n <= 4)
                     (see NOTE)

                     PIC S9(n) COMP-3                 FIXED DEC(n)
                     (n <= 4)                         (n <= 4)

                     PIC S9(n)                        PIC '9(n-1)T'
                     (n <= 4)                         (n <= 4)

                     PIC S9(n) LEADING                PIC 'T9(n-1)'
                     (n <= 4)                         (n <= 4)

                     PIC S9(n) SIGN SEPARATE           PIC '9(n)S'
                     (n <= 4)                          (n <= 4)

                     PIC S9(n)                         PIC 'S9(n)'
                     SIGN SEPARATE LEADING             (n <= 4)

                     (n <= 4)

      Long           PIC S9(n) COMP (n <= 9)           FIXED BIN(31)

                     PIC S9(n) COMP-3                  FIXED DEC(n)
                     (n <= 9)                          (n <= 9)

                     PIC S9(n)                         PIC '9(n-1)T'
                     (n <= 9)                          (n <= 9)

                     PIC S9(n) LEADING                 PIC 'T9(n-1)'
                     (n <= 9)                          (n <= 9)

                     PIC S9(n) SIGN SEPARATE           PIC '9(n)S'
                     (n <= 9)                          (n <= 9)

                     PIC S9(n)                         PIC 'S9(n)'
                     SIGN SEPARATE LEADING             (n <= 9)
                     (n <= 9)

      Single         COMP-1                            FLOAT BIN(21)

                     PIC S9(m)V9(n) COMP-3             FIXED DEC(m+n,n)

                     PIC S9(m)V9(n) COMP               FIXED BIN(15,n)
                     (m+n <= 4) (See NOTE)

                     PIC S9(m)V9(n) COMP               FIXED BIN(31,n)
                     (m+n <= 9)

                     PIC S9(m)V9(n)                    PIC '9(m)V9(n-1)T'

                     PIC S9(m)V9(n) LEADING            PIC 'T9(m-1)V9(n)'

                     PIC S9(m)V9(n)                    PIC '9(m)V9(n)S'
                     SIGN SEPARATE

                     PIC S9(m)V9(n)                    PIC 'S9(m)V9(n)'
                     SIGN SEPARATE LEADING

      Double         COMP-2                            FLOAT BIN(53)

                     PIC S9(m)V9(n) COMP-3             FIXED DEC(m+n,n)

                     PIC S9(m)V9(n) COMP               FIXED BIN(15,n)
                     (m+n <= 4) (Footnote.)

                     PIC S9(m)V9(n) COMP               FIXED BIN(31,n)
                     (m+n <= 9)

                     PIC S9(m)V9(n)                    PIC '9(m)V9(n-1)T'

                     PIC S9(m)V9(n) LEADING            PIC 'T9(m-1)V9(n)'

                     PIC S9(m)V9(n)                    PIC '9(m)V9(n)S'
                     SIGN SEPARATE

                     PIC S9(m)V9(n)                    PIC 'S9(m)V9(n)'
                     SIGN SEPARATE LEADING

      Currency       PIC S9(13)V99 COMP-3              FIXED DEC(15,2)

                     PIC S9(m)V9(n) COMP-3             FIXED DEC(m+n,n)
                     (n <= 4)                          (m+n < 16)

                     PIC S9(m)V9(n) COMP               FIXED BIN(15,n)
                     (m+n <= 4 and n <= 4)
                     (See NOTE)

                     PIC S9(m)V9(n) COMP               FIXED BIN(31,n)
                     (m+n <= 9, n <= 4)

                     PIC S9(m)V9(n)                    PIC '9(m)V9(n-1)T'
                     (n <= 4)

                     PIC S9(m)V9(n) LEADING            PIC 'T9(m-1)V9(n)'
                     (n <= 4)

                     PIC S9(m)V9(n)                    PIC '9(m)V9(n)S'
                     SIGN SEPARATE
                     (n <= 4)

                     PIC S9(m)V9(n)                    PIC 'S9(m)V9(n)'
                     SIGN SEPARATE LEADING
                     (n <= 4)

      Decimal        PIC S9(m)V9(n) COMP-3             FIXED DEC(m+n,n)
                                                       (m+n < 16)

                     PIC S9(m)V9(n) COMP               FIXED BIN(15,n)
                     (m+n <= 5)
                     (See NOTE)

                     PIC S9(m)V9(n) COMP               FIXED BIN(31,n)
                     (m+n <= 9)

                     PIC S9(m)V9(n) COMP               Not Supported
                     (m+n <= 18)

                     PIC S9(m)V9(n)                    PIC '9(m)V9(n-1)T'

                     PIC S9(m)V9(n) LEADING            PIC 'T9(m-1)V9(n)'

                     PIC S9(m)V9(n)                    PIC '9(m)V9(n)S'
                     SIGN SEPARATE

                     PIC S9(m)V9(n)                    PIC 'S9(m)V9(n)'
                     SIGN SEPARATE LEADING

      Date           PIC S9(7) COMP-3                  FIXED DEC(7)
                     date in YYYYDDD format
                     PIC S9(7) COMP-3                  FIXED DEC(7)
                     time in HHMMSST format

                     PIC S9(7) COMP-3                  FIXED DEC(7)
                     date in YYYYDDD format
                     PIC S9(7) COMP-3                  FIXED DEC(7)
                     time in HHMMSST format

      String         PIC X(n)                          CHAR(n)
                     padded with spaces to n bytes

                     PIC X(n)                          CHAR(n)
                     padded with LOW-VALUE to n bytes

      Boolean        PIC S9(4) COMP                    FIXED BIN(15)
                     (1 = true, 0 = false)

                     PIC S9(9) COMP                    FIXED BIN(31)
                     (1 = true, 0 = false)

                     PIC  S9(n) COMP-3                 FIXED DEC(n)
                     (1 = true, 0 = false)

      Byte           PIC X                             CHAR(1)
                     (no translation performed)

                     PIC 999 COMP                      FIXED BIN(15)
                     (value between 0 and 255)

                     PIC 999 COMP-3                    FIXED DEC(3)
                     (value between 0 and 255)

				
Remarque : L'option du compilateur COBOL appropriée doit être définie de permettre des nombres entre 9 999 et 32 768 tenir dans un certain nombre PIC 9, paragraphe 4, COMP.

Propriétés

Numéro d'article: 183179 - Dernière mise à jour: mercredi 24 novembre 2004 - Version: 3.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft COM Transaction Integrator for CICS and IMS 1.0 sur le système suivant
    • Microsoft SNA Server 4.0
Mots-clés : 
kbmt kbinfo KB183179 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 183179
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com