Dans  cet article nous présenterons un broker que nous avons développé. Ce service nous permet de copier entièrement le contenu d’un document word et de le placer à l’intérieur d’un contrôle de contenu spécifique d’un autre document word.

 I- Téléchargement et Installation du broker

     1.Download

      Téléchargez la DLL cliquant ici. Puis décompressez l’archive.

copier un document dans un autre: Broker dll

Placer le fichier .DLL dans le dossier ServiceBroker du répertoire d’installation de K2 (par défaut C:\Program Files (x86)\K2 blackpearl\ServiceBroker)

     2.Installation

    • Ouvrez l’outil SmartObject Service Tester, en double cliquant sur SmartObject Service Tester.exe situé dans le répertoire bin de K2 (par défaut : C:\Program Files (x86)\K2 blackpearl\Bin\SmartObject Service Tester.exe).
    • Sur la fenêtre qui s’ouvre cliquez sur l’onglet Register ServiceType. Dans la fenêtre qui s’ouvre sélectionnez le nom du service à installer, qui correspond au nom du fichier .dll, dans notre cas FFField.DocumentCopyToSmartObject.FFService.

Une fois le service sélectionné, il suffit de remplir les champs:

      • System Name : vous pouvez le laisser tel quel ou le changer (sans mettre de caractères spéciaux, ni espace).
      • Display Name : le nom qui apparaîtra dans les outils de conception (caractères spéciaux autorisés).
      • Description : une description de notre service broker, cette partie n’est pas obligation, mais importante pour nous rappeler le rôle de notre service.
      • Guid : à laisser tel quel lors de l’installation originale.

Comme sur la figure ci-dessous.

K2: Enregister un ServiceType

Puis cliquer sur Add. Un nouveau service type avec le nom spécifié dans le display Name (CopyToSmartObject dans notre cas) a été créé dans le ServiceObject Explorer. Dérouler ensuite ServiceObject Explorer : Sur ce Service Type : clic-droit > Register ServiceInstance.

Dans la fenêtre qui s’ouvre spécifier:

  • Service Types qui correspond au nom de l’instance du service.
  • Authentication mode : le compte d’exécution du broker (le compte qui va donc dialoguer avec la source de données). Le choix sera dépendant de la façon dont on souhaite se connecter à la source de données et des permissions y afférentes. Dans notre cas nous allons choisir : Impersonate.

K2: Ajout d'un service instance

  • Cliquer ensuite sur Next.
  • Renseigner le System Name et Display Name dans le pop-up qui apparaît (mêmes contraintes que précédemment, il s’agit cette fois-ci du nom de l’instance du broker). Puis appuyer sur Add.

K2 Copie Document word: : Ajout d'un service instance

 

  II-Création du SmartObject lié au broker

K2: Création d'un SMO lié au service typeNote: Lors de la mise à jour d’un service broker, le fichier DLL à remplacer va être bloqué par le service K2 (et donc non remplaçable). Il faut alors redémarrer le service K2 pour faire la manipulation.

  III- Running the broker service

Premièrement nous créerons deux documents word:

  1. Le document qui sera copié: MyDoc.docx dans notre cas.
  2. Le document à l’intérieur duquel le premier document sera copié: Template.docx dans notre cas. Ce document devra contenir un contrôle de contenu nommé DOC_Body. 

Pour ajouter un contrôle de contenu dans un document word il faut activé le mode développeur sur miscrosoft word. L’ajout d’un contrôle de contenu n’est pas l’objectif de ce tuto vous pouvez le trouver sur internet. 😎

Le smartObject créé dans la section précédente, est présent dans le sous-dossier Default du dossier SmartObject Explorer comme illustré sur l’image 1 ci-dessous.

Suivez les étapes ci-dessous pour exécuter le broker:

K2 Copie Document word: Execution du Smart Object

Tout le contenu du document word MyDoc.docx sera copié dans le contrôle de contenu DOC_Body du document word Template.docx.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.