Création de table d'événement et compilation de fichiers JAR PeopleSoft
Le premier des deux fichier JAR requis, appelé PSFTCI.jar, doit être créé et compilé manuellement.
Le connecteur PeopleSoft sonde à des intervalles spécifiés l'existence d'événements sur le serveur PeopleSoft Enterprise. Lorsque le connecteur détecte un événement, il convertit les données de l'événement en objet métier et les envoie à l'application client. Pour utiliser ce scénario, vous devez créer un projet d'événement personnalisé sur le serveur PeopleSoft Enterprise.
Magasin d'événements
Le magasin d'événements est une table qui héberge des événements représentant des modifications des données jusqu'à ce que le connecteur qui les sonde puisse les traiter. Le connecteur utilise le magasin d'événements pour suivi des entités d'événement. Pour pouvoir utiliser le traitement en entrée, vous devez utiliser PeopleTools Application Designer afin de créer un projet personnalisé pour notification d'événements. Le projet personnalisé crée le magasin d'événements dont a besoin le connecteur pour le traitement en entrée. Chaque fois qu'un objet métier est créé, mis à jour, ou supprimé, la fonction PeopleCode utilisée dans le projet, puis ajoutée à l'interface du composant, insère un nouvel événement dans ce magasin, ainsi que le nom d'objet, les clés et la valeur de statut correspondants.
Lors du traitement en entrée, le connecteur sonde à des intervalles spécifiés l'existence d'événements dans le magasin d'événements. Dans chaque appel de la sonde, le nombre d'événements configuré est traité par le connecteur. Le traitement des événements s'effectue par priorité croissante et par antériorité croissante de leur horodatage. Les événements avec le statut Prêt pour interrogation (0) sont sélectionnés lors de chaque cycle d'interrogation. Le connecteur utilise le nom et la clé de l'objet pour extraire l'objet métier correspondant. A mesure que les événements sont extraits du magasin d'événements et traités, le statut de l'événement est actualisé pour refléter son état, comme illustré dans le tableau suivant.
Nom abrégé du statut | Description | Valeur dans la table d'événement |
---|---|---|
Erreur lors du traitement de l'événement | Une erreur s'est produite lors du traitement de l'événement. | -1 |
Prêt pour l'interrogation | L'événement est prêt à être collecté. | 0 |
Réussite | L'événement a été diffusé au gestionnaire d'événements. | 1 |
Supprimé | L'événement a été traité correctement et a été effacé du magasin d'événements. | 4 |
I. Pour créer la table d'événements, procédez comme suit :
- Création de table d'événements
- Ajout du déclencheur au composant WBI_CUSTOMER_COMP
- Création de l'API Java™ pour interface de composant
- Copiez le projet WBI_CUST_PROJ situé <répertoire d'installation Cast de Cast Iron>\etc\peoplesoft\scripts dans un répertoire temporaire (C:\Projects) sur la machine sur laquelle s'exécute PeopleTools.
- Connectez-vous à PeopleSoft Application Designer et sélectionnez Tools > Copy Project > From File.
- Accédez au répertoire C:\Projects. Dans Select Project from the List Below, effectuez un double-clic sur WBI_CUST_PROJ.
- Dans la boîte de dialogue Copy From File, cliquez sur Copy. Attendez la fin de cette opération.
- Sélectionnez WBI_CUST_PROJ dans le panneau de gauche, puis Build > Project dans le menu principal.
- Dans le panneau Build, cochez les cases suivantes :
- Create Tables
- Create Views
- Create Trigger
- Run and build script
- Cliquez sur Build pour lancer la génération du projet.
- Cliquez sur Close pour fermer la boîte de dialogue.
- Dans la vue Build Log d'Application Designer, vérifiez les messages du journal pour confirmer que trois enregistrements ont été traités correctement.
- Sélectionnez File > Save All pour enregistrer vos modifications.
- Pour configurer la sécurité utilisateur pour les interfaces de composant, connectez-vous au client Web PeopleSoft à l'URL suivante : http://localhost/psp/ps/?cmd=login.
- Accédez à to PeopleTools > Security > Permissions & Roles > Permission Lists.
- Indiquez PTPT1200 dans la zone de saisie 'begins with' et cliquez sur Search.
- Accédez à l'onglet Component Interfaces et cliquez sur le signe + pour ajouter l'interface de composant WBI_CUSTOMER_COMP_INTERFACE.
- Cliquez sur Edit pour WBI_CUSTOMER_COMP_INTERFACE.
- Sélectionnez pour toutes les méthodes 'Full Access' et cliquez sur OK.
- Retournez à l'onglet Component Interfaces et cliquez sur le signe + pour ajouter l'interface de composant IBM_EVENT_CI.
- Cliquez sur Edit pour IBM_EVENT_CI.
- Sélectionnez pour toutes les méthodes 'Full Access' et cliquez sur OK.
- Revenez à l'onglet Component Interfaces et cliquez sur le bouton Save pour enregistrer vos modifications.
II. Pour ajouter des déclencheurs, procédez comme suit :
- Depuis PeopleSoft Application Designer, ouvrez le projet WBI_CUST_PROJ.
- Dans le panneau de droite, cliquez avec le bouton droit de la souris sur WBI_CUSTOMER_COMP et sélectionnez View PeopleCode.
- Depuis la fenêtre d'édition de PeopleCode, sélectionnez SavePostChange dans le panneau de droite.
- Entrez la valeur PeopleCode suivante dans la fenêtre d'édition.
Declare Function IBMPublishEvent PeopleCode IBM_FETCH_ID.IBM_NEXT_EVENT_ID FieldFormula; Component string &BONAME1; Component string &KEYLIST1; &BONAME1 = "WbiCustomerCompInterface"; &KEYLIST1 = "WBI_CUSTOMER.WBI_CUSTOMER_ID"; /* Check if Component Changed before calling function*/ If ComponentChanged() And %UserId <> "C" Then /* Publish this event to the IBM WebSphere IBM_EVENT_TBL for polling */ IBMPublishEvent(&BONAME1; &KEYLIST1); End-If;
- Sélectionnez File > Save All pour enregistrer vos modifications.
- Pour vérifier que le déclencheur créé lors des étapes ci-dessus fonctionne correctement, vous devez réaliser une tâche d'initialisation. Connectez-vous à la base de données utilisée par
PeopleTools et exécutez les instructions SQL suivantes :
$ insert into PS_IBM_FETCH_ID values(1000); $ commit;
III. Pour créer l'API Java API pour l'interface de composant, procédez comme suit :
- Dans PeopleSoft Application Designer, ouvrez l'interface de composant IBM_EVENT_CI.
- Sélectionnez Build > PeopleSoft API dans le menu principal.
- Dans la boîte de dialogue Build PeopleSoft API Bindings, vérifiez que seule la case
Build est cochée sous Java Classes. Indiquez le répertoire cible (Target Directory) dans lequel stocker les fichiers Java générés.Dans la liste Select API to Build, sélectionnez les éléments suivants :
- CompIntfc.CompIntfcPropertyInfo
- CompIntfc.CompIntfcPropertyInfoCollection
- Tous les éléments commençant par CompIntfc.IBM_EVENT_CI
- Tous les éléments commençant par CompIntfc.WBI_CUSTOMER_COMP_INTERFACE
- Cliquez sur OK. Vérifiez le répertoire cible pour vous assurer que les fichiers Java sont générés correctement.
- Copiez dans le répertoire C:\Temp les fichiers Java générés, puis copiez le fichier psjoa.jar depuis <répertoire_PeopleTools>\web\psjoa vers le répertoire C:\Temp.
- Accédez au répertoire C:\Temp et exécutez les commande suivantes pour générer les fichiers Java.
$ javac -classpath .\psjoa.jar PeopleSoft\Generated\CompIntfc\*.java $ jar -cvf PSFTCI.jar PeopleSoft\Generated\CompIntfc\*.class
Les deux fichiers JAR, psjoa.jar et PSFTCI.jar, seront utilisés par le connecteur PeopleSoft pour accéder à l'application PeopleSoft Enterprise.