Passer au contenu principal
Pour installer Pega, vous devez importer le connecteur sur le serveur et créer une fonction Java dans Pega. Pour importer le connecteur sur le serveur :
  1. Ouvrez Dev Studio et cliquez sur Configure → Application → Distribution → Import.
  1. Chargez le fichier FlexiCaptureConnector.jar sur le serveur.
  2. Ouvrez le Pega Self-Service Portal et cliquez sur Restart Server.
Pour créer une fonction Java permettant d’appeler des méthodes des classes du connecteur :
  1. Créez une nouvelle bibliothèque en cliquant sur Records → Technical → Library → Create et donnez-lui, par exemple, le nom FlexiCaptureLibrary. Incluez ensuite les packages suivants :
    • java.util.*
    • java.nio.file.*
    • com.abbyy.connectors.*
    • com.abbyy.connectors.models.*
  1. Cliquez sur Save, puis sur Generate Library.
  2. Créez une nouvelle fonction en cliquant sur Records → Technical → Function → Create.
  3. Dans le champ Label, indiquez un nom pour la nouvelle fonction (par exemple CaptureData).
  4. Dans la section Parameters, spécifiez les deux paramètres d’entrée suivants :
NameJava type
FileNameString
Base64ContentString
  1. Dans le champ Library, saisissez le nom de la bibliothèque créée à l’étape 1 et cliquez sur Create and open.
  2. Dans la fenêtre qui s’ouvre, sous l’onglet Parameters, indiquez String comme type de données dans le champ Java data type :
  1. Copiez le code du fichier CodeExample.java, que vous trouverez dans %Installation Path%\Connector for FlexiCapture as a Service\Samples\Pega Function (pour plus de commodité, le code est reproduit ci-dessous). Sans quitter cette fenêtre, cliquez sur l’onglet Java et collez le code que vous venez de copier. Cet exemple de code envoie des fichiers à FC et récupère les résultats du traitement sous forme de chaînes JSON contenant les noms des champs capturés et leurs valeurs. Les fragments de code surlignés en jaune doivent être remplacés par des données de connexion valides nécessaires pour se connecter au serveur d’applications FC. Téléversez ensuite votre projet sur le serveur d’applications FC et configurez-le.
// Création du client API FlexiCapture Web Services. Veuillez indiquer l'adresse du serveur d'applications FlexiCapture ici. 
try (FlexiCaptureWebServiceClient client = new FlexiCaptureWebServiceClient("https://FlexiCaptureApplicationServer")) {
// Veuillez décommenter la ligne ci-dessous et indiquer un nom de société pour interagir avec FlexiCapture Cloud ou le tenant.
// client.setTenant("Company");
// Veuillez fournir des identifiants utilisateur FlexiCapture valides.
client.setCredentials(new Credentials("Username", "Password"));
// Récupération du projet FlexiCapture. Veuillez indiquer un nom de projet ici.
try (FlexiCaptureProject project = client.getProject("InvoiceDemoProject")) {
// Préparation d'un fichier à téléverser dans FlexiCapture. 'FileName' et 'Base64Content' sont des paramètres de fonction Pega.
List<File> files = new ArrayList<File>();
files.add(new File(FileName, Base64.getDecoder().decode(Base64Content.replace("\n", "").replace("\r", ""))));
// Préparation d'une tâche pour le traitement par lot FlexiCapture.
BatchCreationJob job = new BatchCreationJob(files);
job.setName("Pega_" + System.currentTimeMillis());  // Définition du nom du lot FlexiCapture.
job.setType("Default");                             // Définition du nom du type de lot FlexiCapture.
// Création et exécution du lot FlexiCapture.
int batchId = project.create(job);
// Attente de la fin du traitement du lot et récupération des résultats.
Result result = project.getResult(batchId);
// Vérification si l'étape du lot est Traité.
if (result.getStage() == com.abbyy.connectors.models.Stage.Processed) {
// Retour des champs capturés sous forme de chaîne JSON.
return result.getFields();
} else {
// Levée d'une exception pour les autres étapes.
// Au lieu de lever une exception, le traitement de ces étapes peut être configuré ici.
throw new FlexiCaptureConnectorException(String.format("Unsupported FlexiCapture stage type '%s'.", result.getStage()));
}
}
} catch (Exception ex) {
// Chaînage des messages d'erreur.
Throwable cause = ex.getCause();
String message = ex.getMessage();
while (cause != null) {
message += " " + cause.getMessage();
cause = cause.getCause();
}
// Levée du message chaîné.
throw new FlexiCaptureConnectorException(message);
}
  1. Cliquez sur l’onglet Imports & Exceptions et saisissez Exception dans la section Exceptions thrown.
  2. Retournez à l’onglet Java, sélectionnez l’option Function ready to be compiled?, enregistrez vos modifications, puis cliquez sur Generate function. Si la fonction est générée correctement, le message suivant s’affiche :