Come usare una connessione persistente

L'argomento seguente descrive come usare una connessione persistente con Windows-Initiated Elaborazione (WIP)

Per usare una connessione persistente con WIP

  1. Impostare la parola chiave COMTIContext CONNTYPE su OPEN.

    Se una chiamata con CONNTYPE impostata su OPEN viene completata correttamente, la parola chiave CONNTYPE della matrice COMTIContext restituita avrà un valore USE.

    Dopo aver impostato la parola chiave COMTIContext CONNTYPE su OPEN, è possibile scegliere di impostare CONNTYPE su USE. Tuttavia, questa azione non è obbligatoria perché è impostata su USE per impostazione predefinita.

  2. Dopo aver stabilito la connessione, è possibile usare l'oggetto COMTIContext per accedere al mainframe.

  3. Se la chiamata al metodo ha esito negativo, usare UpdateContextInfo e GetConnectionInfo in COMTIContextLib.ContextObject per ottenere lo stato aggiornato della connessione.

  4. Per effettuare una chiamata e terminare la connessione persistente, impostare la parola chiave CONNTYPE su CLOSE.

    Se la chiamata viene completata correttamente, la parola chiave CONNTYPE della matrice COMTIContext restituita avrà un valore NON PERSISTENTE.

    Facoltativamente, è possibile chiamare ClosePersistentConnection in qualsiasi momento per chiudere una connessione persistente. La connessione verrà terminata e non verrà eseguita alcuna interazione con un programma server.

Esempio

Nell'esempio di codice Visual Basic 6.0 seguente viene illustrato come usare le chiamate al metodo OPEN e CLOSE che potrebbero restituire un errore. L'esempio illustra anche come determinare se è ancora possibile usare una connessione.

Public CtxCount As Long  
Public COMTIContext() As Variant  
Public ContextObj As COMTIContextLib.ContextObject  
  
Dim fConIsPersistent as Boolean  
Dim fConnIsViable as Boolean  
Dim varConnType as Variant  
  
Private Sub cmdBalance_Click()  
  On Error GoTo ErrorHandler  
  
OpenCall:  
  varConnType = "OPEN"  
  ContextObj.WriteContext "CONNTYPE", varConnType, COMTIContext  
  lngReturn = objBank.cedrbank(txtName.Text, txtAccount.Text, curRetBalance, COMTIContext)  
  
UseCall:  
  lngReturn = objBank.cedrbank(txtName.Text, txtAccount.Text, curRetBalance, COMTIContext)  
  
CloseCall:  
  If (fCloseWithMethod) Then  
      varConnType = "CLOSE"  
      ContextObj.WriteContext "CONNTYPE", varConnType, COMTIContext  
      lngReturn = objBank.cedrbank(txtName.Text, txtAccount.Text, curRetBalance, COMTIContext)  
  Else  
      COMTIContext = objBank.ClosePersistentConnection  
  End-if  
  
  Exit Sub  
  
ErrorHandler:  
    COMTIContext  = objBank.UpdateContextInfo   Optional for COM required for .NET  
    ContextObj.GetConnectionInfo (COMTIContext, fConnIsPersistent, fConnIsViable)  
    If (fConnIsPersistent = True And fConnIsViable = True) Then  
        Continue with the next Use or Close method call is OK  
    Else  
        Connection is either Non-persistent or no longer viable  
        So a Use or Close call is not valid  
    End-if  
    Exit Sub  
  
End Sub  

Vedere anche

Connessioni permanenti
Interfaccia COMTIContext
Parole chiave COMTIContext