使用 PL / 我程序与 COM 事务系统集成商

文章翻译 文章翻译
文章编号: 183179 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

概要

PL / 我不支持的组件生成器。然而,您可以使用 COM 事务系统集成商 CICS 和 IMS (COMTI) 与 PL/我程序 CICS 或 IMS 中运行。这样做的代码具有数据声明定义相同的方式等效 COBOL 声明进行的内存的程序。

例如对于 CICS 程序可以执行任意一个 PL 一个 EXEC CICS LINK / 我程序或 COBOL 程序如果这两个程序中定义 DFHCOMMAREA 结构等效。同样,COMTI 组件可能会使用这两个程序中使用一个 CICS LINK 远程环境 (答复) 具有同样好。由外推 CICS 和 IMS REs 成立相同的机制。

您需要知道的就是如何实现相同的内存映射中 PL / I 和 COBOL。本文介绍了这两种语言的数据类型比较。

更多信息

请注意,开发人员负责创建组件的 PL / 我事务程序 (TP) 应熟悉这两种语言。

数据对齐方式是一个重要的问题。PL / 我结构对齐默认情况下,例如对于在大型机 fullword 边界上对齐结构内的 fullword 整数 (4 个字节)。这会导致差异类似 COBOL 语句和该 PL / 我结构可能应声明为 UNALIGNED。这是为 DFHCOMMAREA 声明尤为重要。此数据结构必须是未对齐的。因此,必须在结构声明上指定未对齐的关键字。

处理 COBOL"on,这取决于发生"子句时应十分小心。下面的示例显示与类似 PL 一个 COBOL 构造的比较 / 我构造。

COBOL 示例

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

PL / 我采样

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

COMTI 数据转换语言映射列表

      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)

				
注: 一个适当的 COBOL 编译器选项必须设置为允许 9999 和 32,768 之间的数字,而无法全部放入 PIC 9(4) 复合数字。

属性

文章编号: 183179 - 最后修改: 2004年11月24日 - 修订: 3.1
这篇文章中的信息适用于:
  • Microsoft COM Transaction Integrator for CICS and IMS 1.0?当用于
    • Microsoft SNA Server 4.0
关键字:?
kbmt kbinfo KB183179 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 183179
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

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