Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El proceso de importación de COBOL en el proyecto integrador de transacciones (TI) reconoce la cláusula REDEFINES en una entrada de descripción de datos y asocia correctamente las entradas redefinidas a la entrada redefinida. Debe seleccionar una de las cláusulas redefinidas o redefinidoras como la entrada que represente los datos que se transmitirán.
Las entradas redefinidas pueden usar menos espacio que la entrada redefinida. Si selecciona una entrada de redefinición más pequeña que la entrada redefinida, TI Project agrega automáticamente relleno para que los datos correspondan correctamente con la descripción de los datos cuando se envía al host. Si la entrada redefinida representa una tabla con varios campos, el último campo contiene el relleno.
En el siguiente ejemplo de COBOL se muestra una cláusula REDEFINES. La cláusula de redefinición se seleccionó durante la importación:
01 CUSTOMER-DATA.
05 CUSTOMER-ID PIC X(10).
05 CUSTOMER-ID-PARTS REDEFINES CUSTOMER-ID.
10 LOCATION PIC X(3).
10 NAME-ABREV PIC X(5).
El método resultante que se importa es:
CreateCustomerID(strLocation As String, strNameAbrev As String)
El COBOL generado para este método es:
01 CREATECUSTOMERID-INPUT-AREA.
05 LOCATION PIC X(3). INPUT
05 NAME-ABREV PIC X(5). INPUT
05 FILLER PIC X(2). INPUT
El FILLER se agrega al área redefinida CUSTOMER-ID. Cuando este FILLER se produce al final de los búferes de envío o recepción, no se envía por motivos de rendimiento.
A continuación se muestra un ejemplo de código de Visual Basic que llama a este método:
Dim objCustomer As Object
Dim strLocation As String
Dim strNameAbrev As String
strLocation = "101"
strNameAbrev = "SPORT"
'create an instance of the invoicing object
On Error GoTo ErrorHandler1
Set objCustomer = CreateObject("Customer.Invoicing.1")
'invoke the CreateCustomerID method
On Error GoTo ErrorHandler2
objCustomer.CreateCustomerID strLocation, strNameAbrev