Condividi tramite


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  

Vedere anche

Riempimento