> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Scripts dans ABBYY Scanning Station

> Automatisez ABBYY Scanning Station à l’aide de scripts personnalisés en JScript, VBScript ou dans les langages .NET, avec prise en charge des collections, des options du registre et des modules globaux.

Les scripts personnalisés vous permettent de créer vos propres scénarios de travail avec ABBYY Scanning Station. Voici quelques scénarios typiques :

* Réorganisation des pages numérisées dans le bon ordre après une numérisation recto verso
* Fractionnement automatique des pages grand format après la numérisation
* Remplissage automatique des paramètres d’enregistrement pour les lots et documents nouvellement créés
* Contrôle qualité des pages à l’aide d’un composant externe
* Enregistrement simultané des pages vers deux destinations d’exportation, dont l’une peut servir de sauvegarde

Les scripts peuvent être lancés automatiquement (en réponse à certains événements) ou via une commande utilisateur explicite.

<div id="supported-scripting-languages">
  ## Langages de script pris en charge
</div>

* **JScript®**
* **VBScript**
* **C#.NET**
* **VisualBasic.NET**
* **JScript.NET**

<div id="keywords-for-the-current-object">
  ## Mots-clés pour l’objet courant
</div>

En VBScript, vous devez utiliser le mot-clé `Me` lorsque vous faites référence aux méthodes et aux champs de l’objet courant (l’équivalent de `this` en JScript et de `Workspace` en VisualBasic.NET). Dans les scripts d’export, le mot-clé `Me` (VBScript), `this` (JScript, C#.NET) ou `Workspace` (VisualBasic.NET) implémente l’interface [IExportBatch](/fr/flexi-capture/scanning-station/shared/scripts/export-batch). Dans les scripts d’événement, le mot-clé `Me`, `this` ou `Workspace` implémente l’interface [IWorkSpace](/fr/flexi-capture/scanning-station/shared/scripts/workspace).

<h2 id="collections">
  Utilisation des collections
</h2>

Toutes les collections prennent en charge les propriétés et méthodes suivantes :

| **Name**            | **Type**      | **Accès**     | **Description**                                                                              |
| ------------------- | ------------- | ------------- | -------------------------------------------------------------------------------------------- |
| Count               | int           | Lecture seule | Le nombre d'éléments de la collection                                                        |
| Item( index : int ) | ItemInterface | Lecture seule | Récupère l'élément de la collection situé à l'indice spécifié. L'énumération commence à `0`. |

Au lieu d'utiliser la méthode `Item`, vous pouvez également accéder aux éléments de la collection à l'aide de parenthèses.

Par exemple :

```text theme={null}
Items( 1 ).Text = "Hello"
```

Si vous utilisez C#.NET, l'indice se spécifie entre crochets :

```csharp theme={null}
Items[1].Text = "Hello"
```

Toutes les collections peuvent être utilisées dans les constructions `for each` et similaires.

<div id="registry-key-options">
  ## Options de la clé de registre
</div>

Pour les scripts lancés sur ABBYY Scanning Station, vous pouvez modifier les valeurs suivantes dans le registre :

```text theme={null}
HKEY_CURRENT_USER\Software\ABBYY\ScanStationFC\4.0\Shell\Script\DisableDebugging
HKEY_CURRENT_USER\Software\ABBYY\ScanStationFC\4.0\Shell\Script\DisableEventScripts
```

Par défaut, les deux valeurs sont définies sur **false**.

Définir la valeur de **DisableEventScripts** sur **true** empêche le lancement de nouveaux scripts. Les scripts déjà en cours d’exécution ne sont pas désactivés par cette commande.

<div id="custom-functions">
  ## Fonctions personnalisées
</div>

Dans le Script Editor, les utilisateurs peuvent créer leurs propres fonctions et procédures, puis les appeler depuis les scripts d’événement et les scripts d’envoi.

Les fonctions personnalisées peuvent être créées dans l’un des modules globaux, soit dans le module global des événements, soit dans le module global d’export. Pour ajouter une fonction personnalisée, cliquez sur la flèche située à côté du nom du script dans le [Script Editor](/fr/flexi-capture/scanning-station/shared/interface/script-editor), puis sélectionnez **GlobalModule**.

Toutes les fonctions d’un même module doivent être écrites dans le même langage. Le code principal d’un script d’envoi ou d’un gestionnaire d’événement peut être écrit dans un langage différent de celui utilisé dans le module global correspondant.

Par exemple, depuis un script d’événement écrit en VBScript, vous pouvez appeler une fonction contenue dans le module global écrit en JScript.

Les fonctions ne peuvent être appelées que depuis « leur propre » module. Cela signifie que, depuis les scripts d’événement, vous ne pouvez appeler que les fonctions contenues dans le module global des événements et que, depuis le code des scripts d’envoi, vous ne pouvez appeler que les fonctions contenues dans le module global d’export. Dans le cas contraire, une erreur se produira lors de l’exécution.
