Come usare RIDEFINIzioni in COBOL
Il processo di importazione COBOL in Transaction Integrator (TI) Project riconosce la clausola RIDEFINIS in una voce di descrizione dei dati e associa correttamente le voci di ridefinizione alla voce ridefinita. È necessario selezionare una delle clausole ridefinite o ridefinizioni come voce che rappresenta i dati che verranno trasmessi.
La ridefinizione delle voci può usare meno spazio rispetto alla voce ridefinita. Se si seleziona una voce di ridefinizione ridotta rispetto alla voce ridefinita, TI Project aggiunge automaticamente il riempimento in modo che i dati sovrapporranno correttamente la descrizione dei dati quando viene inviato all'host. Se la voce di ridefinizione rappresenta una tabella con più campi, l'ultimo campo contiene il riempimento.
Nell'esempio DI COBOL seguente viene illustrata una clausola RIDEFINIzione. La clausola di ridefinizione è stata selezionata durante l'importazione:
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).
Il metodo risultante importato è:
CreateCustomerID(strLocation As String, strNameAbrev As String)
Il COBOL generato per questo metodo è:
01 CREATECUSTOMERID-INPUT-AREA.
05 LOCATION PIC X(3). INPUT
05 NAME-ABREV PIC X(5). INPUT
05 FILLER PIC X(2). INPUT
L'oggetto FILLER viene aggiunto all'area ridefinita DELL'ID CLIENTE. Quando questo FILLER si verifica alla fine dell'invio o della ricezione dei buffer, per motivi di prestazioni non inviato.
Di seguito è riportato un esempio di codice visual Basic che chiama questo metodo:
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