Passer au contenu principal

Configuration d’un workflow M-Files

Pour configurer le traitement des documents dans FC avec vérification, effectuez les étapes 1 et 2 décrites dans la section “Activité de workflow M-Files : installation et utilisation”, puis :
  1. Dans l’application M-Files Admin, accédez à Connexions au serveur M-FilesOrdinateur localCoffres de documents<Vault_Name>Workflows, puis créez un workflow en cliquant sur le bouton Nouveau workflow…. Vous pouvez aussi modifier votre workflow actuel.
  2. Sélectionnez le workflow que vous venez de créer, puis créez un état en cliquant sur le bouton Nouvel état.
  3. Dans le champ Nom, saisissez un nom pour l’état (par ex. “En cours de traitement par FlexiCapture”).
  4. Dans l’onglet Actions de la fenêtre Propriétés de l’état, sélectionnez l’option Exécuter le script, puis cliquez sur Modifier le code….
  5. Collez le script suivant dans la fenêtre Modifier le code VBScript et indiquez vos paramètres de connexion FlexiCapture, le nom du projet et le type de lot que vous allez utiliser :
' Paramètres de connexion FlexiCapture.
szFCServerUrl = "http://FlexiCapture"
'szCompany = "Company" '(Facultatif) Définir le nom du tenant.
szFCUsername = "Username"
szFCPassword = "Password"
szFCProject = "InvoiceDemoProject"
szFCBatchType = "Default"
' Paramètres M-Files.
iVerificationUrlPropDef = 1024 'ID d'une propriété M-Files pour l'URL de vérification.
' Crée le client FlexiCapture. L'assembly Abbyy.MFiles.FlexiCapture.Activity.dll doit être enregistrée au préalable.
Set oClient = CreateObject("Abbyy.MFiles.FlexiCapture.Activity.FlexiCaptureWebClient")
' Définit le contexte du document cible.
oClient.TargetContext.Vault = Vault
oClient.TargetContext.ObjVer = ObjVer
oClient.TargetContext.PropertyValues = PropertyValues
' Définit les paramètres de connexion FlexiCapture.
oClient.ConnectionSettings.ServerUrl = szFCServerUrl
'oClient.ConnectionSettings.Company = szCompany '(Facultatif) Nom du tenant.
oClient.ConnectionSettings.Username = szFCUsername
oClient.ConnectionSettings.Password = szFCPassword
' Envoie le document cible à FlexiCapture.
iBatchId = oClient.SendTarget(szFCProject, szFCBatchType)
' Tentative de récupération de l'URL de vérification.
szVerificationUrl = oClient.GetVerificationUrl(szFCProject, iBatchId)
' Met à jour l'URL de vérification pour le document cible.
Set oVerificationUrlPropVal = CreateObject("MFilesAPI.PropertyValue")
oVerificationUrlPropVal.PropertyDef = iVerificationUrlPropDef
oVerificationUrlPropVal.Value.Value = szVerificationUrl
Vault.ObjectPropertyOperations.SetProperty ObjVer, oVerificationUrlPropVal
L’utilisateur FC dont les identifiants seront spécifiés dans le script doit avoir les rôles Scanning operator, Verification Operator et External User pour le projet et le type de lot spécifiés dans le script, ou le rôle Administrator.
Le script ci-dessus, exécuté dans l’état “In processing by FlexiCapture”, envoie les documents à FC pour un traitement ultérieur. L’état “In processing by FlexiCapture” cessera si le document s’arrête à l’étape de vérification dans ABBYY FlexiCapture, ou s’il passe l’étape de vérification en raison de sa qualité élevée. Si le document s’arrête à l’étape de vérification, une URL sera générée vers la tâche créée pour ce document dans Web Verification Station. Cette URL sera inscrite dans les propriétés du document dans M-Files.
  1. Fermez la fenêtre Modifier le code VBScript et cliquez sur le bouton OK.
  2. Pour que l’état “In processing by FlexiCapture” puisse utiliser un script afin de générer des URL pour les documents, vous devez créer une propriété correspondante. Pour ce faire, cliquez sur Connections to M-Files ServerLocal ComputerDocument Vaults<Vault_Name> et ajoutez une nouvelle définition de propriété à la classe de document :
  1. Dans la boîte de dialogue Property Definition Properties - New Property Definition, saisissez un nom pour la propriété (par exemple, “URL de vérification”) dans le champ Name et spécifiez Data type: Text, Content: Text. Dans le code du script, affectez l’ID de la propriété à la variable iVerificationUrlPropDef.
Pour connaître l’ID de la propriété nouvellement créée, sélectionnez le coffre Admin dans M-Files et développez la liste Metadata Structure (Flat View). Ensuite, sélectionnez Property Definitions. La liste de toutes les définitions de propriété s’affichera dans la colonne ID à droite :
  1. Créez un nouvel état et attribuez-lui un nom (par ex. “En attente de vérification”) en répétant les étapes 1 à 3.
  2. L’état “En attente de vérification” indique que le document s’arrêtera à l’étape de vérification dans FC. Vous pouvez configurer le document pour qu’il passe dans cet état s’il existe un lien vers l’étape de vérification dans le champ URL de vérification des propriétés du document :
Vous pouvez cliquer sur cette URL pour vérifier le document. Une fois le document vérifié, il sera envoyé à l’étape d’export dans FC.
  1. Créez un nouvel état et attribuez-lui un nom (par ex. “En attente d’approbation”) en répétant les étapes 1 à 3. Vous pouvez configurer le document pour qu’il passe dans cet état si certains champs obligatoires du document sont renseignés :
Cet état indique que le document est prêt à être approuvé. Vous trouverez ci-dessous un exemple de workflow de traitement des documents dans FC avec vérification :

Configuration de votre projet ABBYY FlexiCapture

Pour que le scénario de vérification fonctionne correctement, le workflow nécessite une configuration supplémentaire dans FC.
  1. Pour configurer le workflow dans FC, cliquez sur Project → Propriétés du projet, sélectionnez Schema: Advanced dans l’onglet Workflow, puis sélectionnez Verification et cliquez sur Edit….
  2. Dans l’onglet General, cochez l’option Enable web stations et cliquez sur OK.
  3. Créez une étape User type après l’étape Verification en cliquant sur Stage….
  4. Dans l’onglet General, saisissez Mark No Verification dans le champ Name (veillez à ne pas utiliser d’autre nom pour cette étape). Décochez l’option linked to previous.
  5. Dans l’onglet Entry Conditions, sélectionnez l’option Under these conditions et ajoutez une nouvelle règle en cliquant sur Rule….
  6. Dans la boîte de dialogue Rule Settings, sélectionnez Condition type: Script, ouvrez l’éditeur de script, sélectionnez Script Language: C# .Net, puis collez le code de script suivant :
Result.CheckSucceeded = (Document.StageInfo.StageName != "Verification Postprocessing" && Document.StageInfo.StageName != "Verification");
  1. Cliquez sur OK.
Vous devez également configurer un profil d’export dans le projet FlexiCapture, afin de renvoyer les résultats du traitement vers M-Files.