Set_Return_Control (CPI-C)

L’appel de Set_Return_Control (nom de la fonction cmsrc) est émis par le programme d’appel pour spécifier quand l’unité logique locale (LU), agissant sur la demande de session des programmes locaux Allouer l’appel, doit retourner le contrôle au programme local.

Syntaxe

  
CM_ENTRY Set_Return_Control(   
  unsigned char FAR *conversation_ID,    
    CM_INT32 FAR *return_control,          
  CM_INT32 FAR *return_code              
);  

Paramètres

conversation_ID
Paramètre fourni. Spécifie l’identificateur de la conversation. La valeur de ce paramètre a été retournée par Initialize_Conversation.

return_control
Paramètre fourni. Spécifie quand l’unité lu locale, agissant sur l’appel d’allocation , doit retourner le contrôle au programme local. Les valeurs suivantes sont autorisées :

CM_IMMEDIATE
Le lu alloue une session gagnant de contention, si celle-ci est immédiatement disponible, et retourne le contrôle au programme.

CM_WHEN_SESSION_ALLOCATED
L’unité lu ne retourne pas le contrôle au programme tant qu’elle n’a pas alloué une session ou rencontré des erreurs. Si une session n’est pas disponible, le programme en attend une. (Si la limite de session est égale à zéro, l’unité lu retourne immédiatement le contrôle.)

return_code
Code retourné par cet appel. Les codes de retour valides sont répertoriés plus loin dans cette rubrique.

Codes de retour

CM_OK
Code de retour principal ; l’appel a été exécuté avec succès.

CM_PROGRAM_STATE_CHECK
Code de retour principal ; la conversation n’est pas dans l’état INITIALIZE.

CM_PROGRAM_PARAMETER_CHECK
Code de retour principal ; la valeur spécifiée par conversation_ID ou return_control n’est pas valide.

CM_PRODUCT_SPECIFIC_ERROR
Code de retour principal ; une erreur spécifique au produit s’est produite et a été enregistrée dans le journal des erreurs des produits.

Changements d'état

La conversation doit être à l’état INITIALIZE.

Il n’y a aucun changement d’état.

Remarques

Cet appel remplace le contrôle de retour par défaut établi par Initialize_Conversation. Par défaut, le contrôle est retourné lorsque la session est allouée. Cet appel ne peut pas être émis après l’émission de l’appel d’allocation .

Pour plus d’informations sur les sessions, consultez Écriture d’applications CPI-C.

Si l’unité lu ne parvient pas à allouer une session, la notification est retournée lors de l’appel d’allocation .