ACTIVATE_SESSION
Le verbe ACTIVATE_SESSION demande à Microsoft® Host Integration Server d’activer une session entre l’unité logique locale (LU) et une lu partenaire spécifiée, à l’aide d’un mode spécifié. Ce verbe se termine lorsque la session spécifiée est devenue active ou lorsqu’elle a échoué.
La structure suivante décrit le bloc de contrôle de verbe utilisé par le verbe ACTIVATE_SESSION .
Syntaxe
typedef struct activate_session {
unsigned short opcode;
unsigned char reserv2[2];
unsigned short primary_rc;
unsigned long secondary_rc;
unsigned char reserv3[8];
unsigned char lu_alias[8];
unsigned char plu_alias[8];
unsigned char mode_name[8];
unsigned char fqplu_name[17];
unsigned char polarity;
unsigned char session_id[8];
unsigned long conv_group_id;
unsigned char reserv4[1];
unsigned char type;
HANDLE deactivation_event;
unsigned short* p_deactivation_status;
unsigned char reserv5[10];
} ACTIVATE_SESSION;
Membres
opcode
Paramètre fourni. Spécifie le code d’opération de verbe, AP_ACTIVATE_SESSION.
reserv2
Champ réservé.
primary_rc
Paramètre retourné. Spécifie le code de retour principal défini par APPC à l’achèvement du verbe. Les codes de retour valides dépendent du verbe APPC émis. Pour connaître les codes d’erreur valides de ce verbe, consultez Codes de retour.
secondary_rc
Paramètre retourné. Spécifie le code de retour secondaire défini par APPC à l’achèvement du verbe. Les codes de retour valides dépendent du verbe APPC émis. Pour connaître les codes d’erreur valides de ce verbe, consultez Codes de retour.
reserv3
Un champ réservé.
lu_alias
Paramètre fourni. Fournit le nom ASCII de 8 octets utilisé localement pour l’unité lu. Si l’unité lu locale par défaut doit être utilisée, remplissez ce paramètre avec des espaces.
plu_alias
Paramètre fourni. Fournit le nom ASCII de 8 octets utilisé localement pour l’unité lu partenaire. Si l’unité lu distante par défaut doit être utilisée, remplissez ce paramètre avec des espaces. Si l’unité lu partenaire doit être spécifiée avec le paramètre fqplu_name , renseignez ce paramètre avec des zéros binaires.
mode_name
Paramètre fourni. Spécifie le nom du mode EBCDIC (type A).
fqplu_name
Paramètre fourni. Fournit le nom de l’unité lu partenaire dans EBCDIC (type A) quand aucun nom de plu_alias n’est défini au niveau du nœud local et que l’unité lu partenaire se trouve à un autre nœud. Ce paramètre est ignoré si plu_alias est spécifié.
polarity
Paramètre fourni. Spécifie la polarité de la session. Les valeurs possibles sont les suivantes :
AP_POL_EITHER
Si AP_POL_EITHER est défini, ACTIVATE_SESSION active une première session d’orateur si disponible ; sinon, une session de soumissionnaire est activée.
AP_POL_FIRST_SPEAKER
Si AP_POL_FIRST_SPEAKER est défini, ACTIVATE_SESSION réussit uniquement si une session de la polarité demandée est disponible.
AP_POL_BIDDER
Si AP_POL_BIDDER est défini, ACTIVATE_SESSION réussit uniquement si une session de la polarité demandée est disponible.
session_id
Paramètre retourné. Fournit l’identificateur de 8 octets de la session d’activation.
conv_group_id
Paramètre retourné. Fournit l’identificateur du groupe de conversations. Ce paramètre peut être spécifié sur ALLOCATE et MC_ALLOCATE verbes pour démarrer des conversations sur cette session particulière.
reserv4
Un champ réservé.
type
Paramètre fourni. Spécifie le type d’activation. Les valeurs possibles sont les suivantes :
AP_ACT_ACTIVE
Si AP_ACT_ACTIVE est spécifié, Host Integration Server tente de démarrer la session requise (en envoyant bind ou INIT-SELF).
AP_ACT_PASSIVE
Si AP_ACT_PASSIVE est spécifié, Host Integration Server ne tente pas de démarrer la session et le verbe se termine lorsque le partenaire a démarré la session.
deactivation_event
Paramètre fourni. Fournit un handle d’événement que APPC doit signaler lorsque la session est désactivée. Le handle d’événement doit être obtenu en appelant la fonction CreateEvent ou OpenEvent Win32®.
p_deactivation_status
Paramètre retourné. Pointeur vers une valeur définie lorsque l’événement de désactivation est signalé pour fournir une status d’achèvement. Les valeurs suivantes peuvent être retournées.
AP_SESSION_DEACTIVATED
AP_COMM_SUBSYSTEM_ABENDED
reserv5
Un champ réservé.
Codes de retour
AP_OK
Code de retour principal ; indique que le verbe s’est exécuté correctement. Le code de retour secondaire indique la polarité de la session établie. Les valeurs suivantes peuvent être retournées.
AP_POL_FIRST_SPEAKER
AP_POL_BIDDER
AP_PARAMETER_CHECK
Code de retour principal ; le verbe n’a pas été exécuté en raison d’une erreur de paramètre.
AP_INVALID_LU_ALIAS
Code de retour secondaire ; APPC ne trouve pas le lu_alias spécifié parmi ceux définis.
AP_INVALID_PLU_ALIAS
Code de retour secondaire ; APPC n’a pas reconnu le plu_alias spécifié.
AP_INVALID_MODE_NAME
Code de retour secondaire ; APPC n’a pas reconnu le mode_name spécifié.
AP_INVALID_FQPLU_NAME
Code de retour secondaire ; APPC n’a pas reconnu le fqplu_name spécifié.
AP_INVALID_POLARITY
Code de retour secondaire ; APPC n’a pas reconnu la polarité spécifiée.
AP_INVALID_TYPE
Code de retour secondaire ; APPC n’a pas reconnu le type spécifié.
AP_ACTIVATION_FAIL_NO_RETRY
Code de retour principal ; impossible d’activer la session en raison d’une condition qui nécessite une action (par exemple, une incompatibilité de configuration ou une erreur de protocole de session).
AP_ACTIVATION_FAIL_RETRY
Code de retour principal ; impossible d’activer la session en raison d’une condition temporaire (par exemple, un échec de liaison).
AP_SESSION_LIMITS_EXCEEDED
Code de retour principal ; impossible d’activer la session, car les limites de session ont été dépassées.
AP_SESSION_LIMITS_CLOSED
Code de retour principal ; la session n’a pas pu être activée, car les limites de session sont fermées (c’est-à-dire zéro).
AP_COMM_SUBSYSTEM_ABENDED
Code de retour principal ; indique que l’une des conditions suivantes s’est produite :
Le nœud utilisé par cette conversation a rencontré un abandon (ABEND).
La connexion entre le tp et le nœud PU 2.1 a été interrompue (une erreur réseau locale s’est produite).
Le processus SnaBase qui se déroule sur l’ordinateur du programme transactionnel a rencontré un abandon (ABEND).
L’administrateur système doit examiner le journal des erreurs pour déterminer la raison de l’abandon.
AP_COMM_SUBSYSTEM_NOT_LOADED
Code de retour principal ; indique qu’il n’a pas été possible de charger un composant requis ou d’y mettre fin lors du traitement du verbe. Par conséquent, la communication n’a pas pu être établie. Contactez l’administrateur système pour mettre en place une action corrective.
AP_STACK_TOO_SMALL
Code de retour principal ; indique que la taille de la pile de l’application est trop petite pour exécuter le verbe. Augmentez la taille de pile de votre application.
AP_THREAD_BLOCKING
Code de retour principal ; indique que le thread appelant se trouve déjà dans un appel de blocage.
Remarques
Ce verbe prend en charge l’activation active et passive.
La forme active de ce verbe entraîne la tentative d’initialisation de la session par Host Integration Server (en envoyant un BIND pour les LU indépendantes ou un INIT-SELF pour les LU dépendantes). La forme active de ce verbe entraîne également le comportement suivant :
Si la connexion à l’unité logique partenaire est inactive et configurée comme à la demande, le nœud tente de démarrer la connexion.
Si le partenariat dynamique est utilisé, le nœud configure le partenariat LU-LU/MODE.
Si CNOS n’a pas été exécuté, le nœud démarre CNOS (mais ne modifie aucune des limites de session).
Le formulaire passif ne tente pas de démarrer la session, mais se termine lorsque l’unité logique est démarrée par un BIND de son lu partenaire. Pour les unités logiques indépendantes, plusieurs verbes ACTIVATE_SESSION passifs peuvent être mis en file d’attente pour la même LU-LU/MODE, et se terminer à leur tour à mesure que de nouvelles sessions sont démarrées.
Ce verbe inclut également un événement de désactivation, qui est publié lorsque la session est désactivée par une méthode autre qu’un verbe DEACTIVATE_SESSION (par exemple, un UNBIND non sollicité de son lu partenaire entraîne la publication de cet événement).