Interfaces de composant


Accès aux transactions et aux données via les interfaces de composant

Le pilote accède aux transactions en attente de traitement dans la table de transactions via l'objet CI défini dans PeopleTools. Chaque interface de composant est assignée à un composant particulier. Les composants sont créés afin d'accéder aux tables de transaction et aux données de schéma. Les objets de schéma représentent toutes les données nécessaires qui doivent être fournies pour un type de données selon l'ID associé. Ces objets permettent également au pilote de mettre à jour des données PeopleSoft.

Le pilote utilise uniquement un CI de transaction pour accéder aux transactions. Chaque transaction est assignée à un CI de schéma par défaut, même si un traitement défini dans une règle peut nécessiter une requête vers d'autres CI de schéma définis dans la règle d'assignation de schéma du pilote.

Dans les paramètres du pilote, vous devez spécifier le nom de l'objet CI tel que défini dans PeopleSoft. Cet objet CI est assigné à un composant prédéfini permettant au pilote d'accéder aux transactions à partir d'une table de transaction. Vous trouverez ci-dessous le CI d'une table de transaction :


CI de table de transaction

Vous trouverez ci-dessous le CI d'un composant de schéma :


Composant de schéma

Le pilote utilise un paramètre défini pour déterminer le sous-type de transaction qu'il doit traiter. En tant que développeur PeopleSoft, vous déterminez cette valeur lors de la configuration d'un appel de fonction PeopleCode pour déclencher une transaction en ligne ou lors de la création d'une transaction via un processus de traitement par lots. Si le paramètre n'existe pas, le pilote traite toutes les transactions disponibles via le CI. Si le paramètre existe, le pilote limite le traitement au type de transaction spécifié dans la chaîne du sous-type.

La fonction PeopleCode DIRXML_TRANS doit toujours être placée dans le processus PeopleCode SavePostChange sur la définition de l'enregistrement. N'oubliez pas de déclarer la fonction avant de l'appeler.

IMPORTANT:  dans les nouvelles versions de PeopleTools, les règles concernant les noms des champs ont été modifiées. PeopleTools 8.4.1 comporte deux modifications significatives :

1. Les espaces ne sont plus autorisés dans les noms des champs de CI.
2. L'API de CI est maintenant sensible à la casse. Les noms des champs et leurs valeurs ne s'adaptent plus car le tri respecte la casse. Par exemple, un champ nommé « CN » est trié avant avant un champ nommé « City ». Si vous essayez d'accéder à la valeur de « City », vous obtiendrez la valeur de « CN ». Le schéma par défaut des CI utilisées par le pilote utilise à présent des conventions de dénomination qui éliminent cette erreur de tri inhabituelle. Cette question est particulièrement importante pour toutes les modifications ou ajouts de noms de champs personnalisés pour une implémentation précédente du pilote.


Configuration de PeopleCode pour déclencher des transactions

Le programme PSA contient un certain nombre d'objets PeopleTools qui permettent à PeopleSoft d'intercepter les événements dans une table de transaction. Le pilote accède ensuite aux tables de transaction via les objets d'interface de composant. Le pilote demande régulièrement les transactions qui doivent être traitées en fonction de leurs sous-types de pilote. Il traitera uniquement les transactions dont la date/l'heure est inférieure ou égale à la date/l'heure actuelle et dont l'état indique leur disponibilité. Le pilote traite également les transactions une par une à partir de la table de transaction avant d'obtenir une nouvelle transaction.

Le pilote crée ensuite un document XML à l'aide des données récupérées et les transmet au moteur DirXML pour le traitement. Il met à jour l'état de la transaction et les messages applicables de la table de transaction dans PeopleSoft lorsque le moteur DirXML a terminé le traitement. Lorsque des événements se produisent dans eDirectory, le pilote se connecte à l'interface CI correspondante et met à jour la table PeopleSoft intermédiaire.

Pour déclencher des transactions, utilisez PeopleCode dans l'application PeopleSoft. Ce document suppose que vous savez écrire du PeopleCode. Si vous avez besoin d'une aide supplémentaire, merci de vous reporter à la documentation PeopleSoft.

Le pilote nécessite la transaction et le composant de schéma pour traiter les transactions. Pour plus d'informations sur l'appel de la fonction PeopleSoft qui crée des enregistrements de transaction, reportez-vous à Personnalisation de l'agent PSA par le déclenchement de transactions.


Composant de transaction

Le composant de transaction permet au pilote de demander des transactions par sous-type de pilote, date et heure, et type d'événement. Le pilote demande une seule transaction en vue du traitement et obtient l'ID d'association de l'enregistrement en cours de traitement.

Lorsque le pilote sélectionne la première transaction à traiter, il définit l'état de la transaction sur « In Process » (Traitement en cours). Ensuite, le pilote extrait le nom de l'événement qu'il utilise pour créer un document XML d'ajout, de modification ou de suppression. Le pilote utilise les valeurs de l'ID de schéma et de l'ID d'association pour accéder au schéma CI approprié et aux informations d'enregistrement appropriées qui sont associées à l'objet ID d'association.

Lorsque le moteur DirXML a traité la transaction, le pilote met à jour l'état de la transaction et le champ Comment (Commentaire) (en cas d'erreur ou de message d'avertissement.)


DirXML Transaction01


Composant de schéma

Le composant de schéma permet au pilote de récupérer des données pour un enregistrement particulier et de mettre à jour la table PeopleSoft intermédiaire pour cet enregistrement. Lorsque le pilote a récupéré le nom de l'ID d'association et du CI de schéma, il accède à l'objet Schéma correspondant.

Lorsque le pilote accède au composant de schéma, il utilise la valeur reçue dans l'ID d'association et la valeur de clé pour récupérer les données de l'environnement PeopleSoft. Il utilise également ce composant afin de mettre à jour les données PeopleSoft pour l'enregistrement appartenant à la valeur de clé associée.

Par exemple, vous pouvez traiter les transactions pour les employés avec l'ID d'association=EMPLID et la valeur de clé=0001.

Le pilote accède au composant de schéma avec une valeur de clé de 0001. Il récupère tous les éléments du composant qui ont été définis pour cet employé sur ce composant spécifique. Le pilote convertit ensuite la collecte de données transaction par transaction dans des documents XML qui seront lus par le moteur DirXML. Si une commande d'écriture différée est traitée ou un événement est publié via le canal Abonné, le pilote utilise ce composant pour mettre à jour la table intermédiaire avec les informations correspondantes dans les données PeopleSoft pour cet employé particulier.

Lorsque le pilote crée un nouvel objet, il crée une valeur d'association contenant l'ID d'association. Lorsque le pilote charge des CI de schéma, chaque objet Schéma agit comme sa propre classe d'objets. La règle d'assignation utilise l'assignation de classe selon les cas. Cela permet au pilote de connaître quel objet Schéma dans PeopleSoft est utilisé pour un élément particulier, ainsi que la façon de mettre à jour les données à appliquer dans PeopleSoft.


Test des interfaces de composant

Le programme Component Tester (Test des composants), qui fait partie du téléchargement, garantit que votre logiciel client PeopleTools est installé et configuré correctement sur l'ordinateur qui héberge le pilote.

Pour plus d'informations, reportez-vous au dossier Component Tester et à sa documentation.