Business Workflow : objets et pièces jointes, attacher un lien vers une transaction

A un workitem peut être attaché un ensemble d’objets et pièces jointes :

Nous allons voir aujourd’hui comment attacher un objet qui, lorsque l’on cliquera dessus, nous renverra vers la transaction de notre choix pour un document donné.

Prenons par exemple la transaction TRIP (création d’une demande de déplacement pour un employé) et disons que dès lors qu’une demande de déplacement est faite par l’employé, son manager doit automatiquement recevoir une demande d’autorisation par le biais d’un workitem. Ce workitem devra permettre d’accéder à la transaction TP04 (Demande de déplacement) pour la demande de déplacement concernée.

L’objet pour lequel on souhaite effectuer un CALL TRANSACTION correspond en fait à un objet BOR. En effet, globalement il suffit d’assigner un objet BOR à la liste des pièces jointes de la tâche pour que celui-ci apparaisse automatiquement à la liste des objets et pièces jointes. Lors du clic sur celui-ci, on passera alors dans la méthode DISPLAY de cet objet BOR, méthode au sein de laquelle on aura implémenté notre CALL TRANSACTION.

Création de l’objet BOR

Vous l’aurez compris, la première étape consiste en la création de notre objet BOR qui nous permettra de gérer le CALL TRANSACTION. Pour rappel nous souhaitons donc pouvoir accéder à la transaction TP04 pour la clé matricule/numéro de demande de déplacement.

Création de l’objet BOR en SWO1 :

Création des zones clés :

Lorsque l’on cliquera sur notre objet lié, la méthode DISPLAY de l’objet BOR est automatiquement exécutée, il convient donc de la surcharger en la sélectionnant puis « Traiter >>> Surdéfinir » :

Implémentez-y votre CALL TRANSACTION :

Faites ensuite un petit test :

Ça fonctionne, votre objet BOR est prêt !

Instanciation de l’objet BOR

Notre objet BOR n’est pas l’objet BOR principal de notre workflow. En effet, cet objet n’a été créé qu’afin de nous permettre de pouvoir gérer notre objet attaché et son CALL TRANSACTION. Il nous faut donc prévoir son instanciation. Nous allons gérer cela par l’intermédiaire d’une classe objet.

Création de la classe objet :

Création de la méthode statique d’instanciation de l’objet BOR :

Nous allons ensuite créer une méthode statique chapeau qui appellera notre méthode GET_GENERIC_BOR_INSTANCE et qui sera elle-même appelée dans notre workflow :

Création de la tâche

Nous allons maintenant créer la tâche permettant l’instanciation de l’objet BOR en PFTC :

Dirigez-vous sur l’onglet « Conteneur » et vérifiez que l’objet est bien de type BOR :

Cliquez sur l’icône avec les carrés verts pour effectuer le mapping :

Votre tâche est prête, allez hop on passe au workflow !

Workflow

Entrez en modification sur votre workflow et commencez par créer un nouvel élément dans votre conteneur et correspondant à votre objet BOR spécifique :

Nous allons maintenant créer une nouvelle activité nous permettant d’appeler notre tâche fraichement créée afin de pouvoir instancier notre objet :

Renseignez y votre tâche créée précédemment et cliquez sur « Flux de données (existant) afin d’effectuer le mapping :

Entrez maintenant en modification sur la décision utilisateur afin d’y ajouter l’objet BOR dans la liste des objets liés :

Accédez au flux de données :

Mappez l’objet BOR à l’élément _ATTACH_OBJECTS :

Et voilà, pour le reste ça se fait tout seul, comme on dit y a plus qu’à 😉

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

w

Connexion à %s