> ## 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.

# Objets

> Modèle objet pour les scripts personnalisés de Web Verification Station : fonctions pour les champs, les jeux de données et le formulaire du document, ainsi que commandArgs et les propriétés des champs.

Les fonctions suivantes sont disponibles pour créer des scripts personnalisés. Pour accéder aux instances d’objet, utilisez la variable `commandArgs`.

Toutes les variables de cette section sont globales et visibles dans l’ensemble du programme.

<div id="field-paths">
  ## Chemins des champs
</div>

Certaines fonctions prennent le chemin d’accès à un champ comme paramètre d’entrée. Il comprend le nom du champ et les noms des éléments parents (groupe de champs, section). Pour les tableaux, les tableaux répétitifs et les groupes répétitifs, spécifiez le numéro d’instance à partir de `0` (zéro).

Par exemple, `['Document Section 1', 'Group[10]', 'Field3']`, où `[10]` est le numéro de l’instance du groupe répétitif.

<div id="functions-for-working-with-fields">
  ## Fonctions pour manipuler fields
</div>

<div id="getcurrentfield">
  ### getCurrentField
</div>

`getCurrentField()`

Renvoie un lien vers l’objet Field qui utilise le script personnalisé actuel.

<div id="getfieldbyname">
  ### getFieldByName
</div>

`getFieldByName(namesPath)`

Renvoie un lien vers le champ pour lequel le script personnalisé a été ouvert.

| Parameter   | Description                                                                                                                                                                   |
| ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `namesPath` | Un tableau contenant les noms des champs et des groupes qui constituent le chemin vers le champ, ou un lien vers un objet Field. Consultez [chemin des champs](#field-paths). |

<div id="getfieldvalue">
  ### getFieldValue
</div>

`getFieldValue(namesPath)`

Renvoie la valeur du champ : une chaîne pour un champ **TextField**, une valeur de coche pour un champ **Checkmark** ou un tableau de chaînes pour un champ **Checkmark Group**.

| Parameter   | Description                                                                                                                                             |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `namesPath` | Un tableau de noms de champs et de groupes formant le chemin d’accès au champ, ou un lien vers un objet Field. Voir [Chemins des champs](#field-paths). |

<div id="setcurrentfieldvalue">
  ### setCurrentFieldValue
</div>

`setCurrentFieldValue(value, forced, onSaved)`

Modifie la valeur du champ pour lequel le script personnalisé est ouvert.

| Parameter | Description                                                                                                                                                                                                                                                                                                                                                                                                  |
| --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `value`   | La valeur du champ.                                                                                                                                                                                                                                                                                                                                                                                          |
| `forced`  | Facultatif. Met à jour la valeur du champ et enregistre les nouvelles données. Lorsque sa valeur est `false`, la valeur du champ dans la Document Definition n’est mise à jour qu’après l’appel de `save()`. Lorsque sa valeur est `true`, la valeur du champ est mise à jour immédiatement. Pour un script personnalisé, la mise à jour s’effectue quel que soit le mode. La valeur par défaut est `false`. |
| `onSaved` | Facultatif. Fonction de rappel appelée lorsque `forced` est défini sur `true`.                                                                                                                                                                                                                                                                                                                               |

<div id="setfieldvalue">
  ### setFieldValue
</div>

`setFieldValue(namesPath | field, value, forced, onSaved)`

Modifie la valeur d’un champ.

| Parameter   | Description                                                                                                                                                                                                                                                                                                                                                                                                      |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `namesPath` | Un tableau de noms de champs et de groupes formant le chemin d’accès au champ, ou une référence à l’objet Field. Voir [Chemins des champs](#field-paths).                                                                                                                                                                                                                                                        |
| `value`     | La valeur du champ correspondant.                                                                                                                                                                                                                                                                                                                                                                                |
| `forced`    | Facultatif. Met à jour la valeur du champ et enregistre les nouvelles données. Lorsque sa valeur est `false`, la valeur du champ dans la Document Definition n’est mise à jour qu’après l’appel de `save()`. Lorsque sa valeur est `true`, la valeur du champ est mise à jour immédiatement. Pour un script personnalisé, une mise à jour est effectuée quel que soit le mode. La valeur par défaut est `false`. |
| `onSaved`   | Facultatif. Fonction de rappel appelée lorsque `forced` est défini sur `true`.                                                                                                                                                                                                                                                                                                                                   |

<div id="save">
  ### save
</div>

`save()`

Ferme la fenêtre dans laquelle le script personnalisé s’exécute et enregistre les modifications.

<div id="cancel">
  ### cancel
</div>

`cancel()`

Ferme la fenêtre d’exécution du script personnalisé sans enregistrer les modifications.

<div id="functions-for-working-with-data-sets">
  ## Fonctions pour manipuler les jeux de données
</div>

<div id="addentity">
  ### addEntity
</div>

`addEntity(entityInfo: {cacheName, columns, values}, onResult(newId))`

Ajoute une entrée au jeu de données.

| Parameter              | Description                                                                            |
| ---------------------- | -------------------------------------------------------------------------------------- |
| `entityInfo.cacheName` | Nom du jeu de données.                                                                 |
| `entityInfo.columns`   | Noms des colonnes dans lesquelles les données seront enregistrées. Tableau de strings. |
| `entityInfo.values`    | Valeurs des colonnes correspondantes. Tableau de strings.                              |
| `onResult`             | Fonction de rappel qui reçoit l’ID de l’enregistrement créé dans le jeu de données.    |

<div id="editentity">
  ### editEntity
</div>

`editEntity(entityInfo: {cacheName, columns, values}, onResult())`

Modifie une entrée de la base de données.

| Parameter              | Description                                                                           |
| ---------------------- | ------------------------------------------------------------------------------------- |
| `entityInfo.cacheName` | Nom du jeu de données.                                                                |
| `entityInfo.columns`   | Noms des colonnes dans lesquelles les données seront enregistrées. Tableau de string. |
| `entityInfo.values`    | Valeurs des colonnes correspondantes. Tableau de string.                              |
| `onResult`             | Fonction de rappel.                                                                   |

<div id="getdict">
  ### getDict
</div>

`getDict({cacheName, filters: [{FieldName, FieldValue}], cursorPos, allowMultipleColumnResults}, onResult(param: {FieldName, FieldValue, BoldMask}[][]))`

Recherche une valeur spécifiée, ou une partie de celle-ci, dans le jeu de données.

| Parameter                    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cacheName`                  | Le nom du jeu de données.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `filters`                    | Paramètres de recherche. Chaque entrée comporte `FieldName` (le nom du champ ; laissez ce champ vide pour effectuer la recherche dans tous les champs) et `FieldValue` (la valeur du champ).                                                                                                                                                                                                                                                                                                                          |
| `cursorPos`                  | La position du curseur dans le champ de saisie. Si une valeur est partiellement saisie et que le curseur se trouve après les symboles saisis, ceux-ci sont considérés comme un préfixe de la valeur recherchée. Si le curseur se trouve avant un mot partiellement saisi, ces symboles sont considérés comme sa terminaison. Par exemple, lors de la recherche d’un nom d’entreprise, saisir `ADO` avec le curseur placé après sélectionne `AVOCADO` ; saisir `ADO` avec le curseur placé avant sélectionne `ADONIS`. |
| `allowMultipleColumnResults` | Renvoie les valeurs des champs trouvés. Un jeu de données peut contenir des entrées dans lesquelles un même nom de champ (`FieldName`) correspond à plusieurs valeurs de champ (`FieldValue`), par exemple plusieurs variantes d’un nom d’entreprise dans la colonne `CompanyName`. `true` renvoie et enregistre toutes les valeurs de champ qui satisfont aux conditions de recherche ; `false` renvoie et enregistre le résultat le plus pertinent.                                                                 |
| `onResult`                   | Fonction de rappel qui renvoie un tableau de résultats de recherche. Chaque résultat est une chaîne du jeu de données (elle-même un tableau de chaînes), chaque chaîne contenant le nom du champ, sa valeur et le paramètre `BoldMask`.                                                                                                                                                                                                                                                                               |

`BoldMask` est une chaîne composée de `0` et de `1`, de même longueur que la valeur trouvée. `1` indique un symbole de la valeur trouvée qui correspond au symbole correspondant dans le champ de recherche, tandis que `0` indique un symbole qui ne correspond pas.

Par exemple, si un jeu de données contient `CompanyName: ABBYY` et qu’une recherche est effectuée pour les symboles `ABB`, le résultat suivant est renvoyé :

```text theme={null}
[
  [
    {
      FieldName: 'CompanyName',
      FieldValue: 'ABBYY',
      BoldMask: '11100'
    },
  ]
]
```

Le tableau renvoyé peut contenir plusieurs valeurs, y compris certaines qui ne satisfaisaient pas initialement aux conditions de recherche. Les résultats sont triés par valeur décroissante de `BoldMask`, en commençant par les chaînes qui correspondent le mieux aux conditions de recherche.

<div id="getdictall">
  ### getDictAll
</div>

`getDictAll({cacheName, filters: {FieldName, FieldValue}}, }, onResult(param: {FieldName, FieldValue, BoldMask}[][]))`

Recherche dans la base de données la valeur complète spécifiée. Renvoie les valeurs de tous les champs trouvés.

| Parameter   | Description                                                                                                                                                                                                                                |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `cacheName` | Le nom du jeu de données.                                                                                                                                                                                                                  |
| `filters`   | Un tableau d’objets. Chaque entrée comporte `FieldName` (le nom du champ ; laissez vide pour rechercher dans tous les champs) et `FieldValue` (la valeur du champ).                                                                        |
| `onResult`  | Une fonction de rappel qui renvoie un tableau de résultats de recherche. Chaque résultat est une chaîne du jeu de données (lui-même un tableau de chaînes), chaque chaîne contenant le nom du champ, sa valeur et le paramètre `BoldMask`. |

`BoldMask` est une chaîne de `0` et de `1` de même longueur que la valeur trouvée. `1` indique un symbole de la valeur trouvée qui correspond au symbole correspondant dans le champ de recherche, tandis que `0` indique un symbole qui ne correspond pas.

Par exemple, si un jeu de données contient `CompanyName: ABBYY` et qu’une recherche est effectuée sur les symboles `ABB`, le résultat suivant est renvoyé :

```text theme={null}
[
  [
    {
      FieldName: 'CompanyName',
      FieldValue: 'ABBYY',
      BoldMask: '11100'
    },
  ]
]
```

Le tableau renvoyé peut contenir plusieurs valeurs, y compris certaines qui ne satisfaisaient pas initialement aux conditions de recherche. Les résultats sont triés par valeur `BoldMask` décroissante, en commençant par les chaînes qui correspondent le mieux aux conditions de recherche.

Pour un exemple complet, consultez [Exemple de script de recherche dans une base de données](/fr/flexi-capture/appendix/scripts/web-custom-action-db-lookup).

<div id="functions-for-working-with-the-document-form">
  ## Fonctions pour travailler avec le formulaire du document
</div>

<div id="selectrow">
  ### selectRow
</div>

`selectRow(tablePath, rowNumber)`

Marque une ligne du tableau comme sélectionnée.

| Parameter   | Description                                                                                                                                                                  |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tablePath` | Un tableau de noms de champs et de groupes qui constituent le chemin vers le champ de tableau, ou une référence à un objet tableau. Voir [Chemins des champs](#field-paths). |
| `rowNumber` | Le numéro de la ligne à sélectionner, à partir de zéro.                                                                                                                      |

<div id="deselectrow">
  ### deselectRow
</div>

`deselectRow(tablePath, rowNumber?)`

Désélectionne une ligne de tableau.

| Parameter   | Description                                                                                                                                                       |
| ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tablePath` | Un array de noms de champs et de groupes formant le chemin d’accès au champ de tableau, ou un lien vers un objet tableau. Voir [chemin des champs](#field-paths). |
| `rowNumber` | Le numéro de la ligne à désélectionner, indexé à partir de zéro. S’il est omis, toutes les lignes du tableau sont désélectionnées.                                |

<div id="scrollformtofield">
  ### scrollFormToField
</div>

`scrollFormToField(namesPath)`

Fait défiler l’éditeur de formulaire pour afficher le champ.

| Parameter   | Description                                                                                                                                           |
| ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `namesPath` | Tableau des noms de champs et de groupes qui forment le chemin vers le champ, ou lien vers un objet tableau. Voir [Chemins des champs](#field-paths). |

<div id="getdomelementposition">
  ### getDomElementPosition
</div>

`getDomElementPosition(domId, onResult: (result?: {width, height, top, left, right, bottom}))`

Obtient la position d'un élément dans la fenêtre de l'éditeur de formulaire et renvoie le résultat d'une fonction de rappel.

| Parameter  | Description                                                                                                                                                                                                  |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `domId`    | ID de l'élément au format DOM.                                                                                                                                                                               |
| `onResult` | Une fonction de rappel qui reçoit l'objet contenant les coordonnées DOM de l'élément (`width`, `height`, `top`, `left`, `right`, `bottom`) par rapport au coin supérieur gauche de la fenêtre du navigateur. |

<div id="setstyles">
  ### setStyles
</div>

`setStyles(styles, callback)`

Ajoute des styles CSS à la fenêtre du cadre de l’action personnalisée.

| Parameter  | Description                                                                          |
| ---------- | ------------------------------------------------------------------------------------ |
| `styles`   | Objet contenant les noms et les valeurs des propriétés CSS (voir l’exemple suivant). |
| `callback` | Fonction de rappel.                                                                  |

```javascript theme={null}
{
  display: 'block',
  position: 'absolute',
  top: '0px',
  bottom: '0px',
  left: '0px',
  right: '0px',
  width: '100%',
  height: '100%',
  border: '0',
  overflow: 'hidden',
  'overflow-x': 'hidden',
  'overflow-y': 'hidden',
  'z-index': '10000'
}
```

<div id="commandargs-object">
  ## Objet commandArgs
</div>

<div id="variables">
  ### Variables
</div>

| Variable                                 | Type                                                                              | Description                                                                                                                                                                                                                                           |
| ---------------------------------------- | --------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `commandArgs.params.document`            | Document                                                                          | Stocke une copie de l'objet représentant un document ouvert. Utilisez-la pour accéder aux erreurs, champs ou régions du document actif.                                                                                                               |
| `commandArgs.params.currentField`        | `(Picture \| Checkmark \| Checkmark Groups \| FieldsGroup \| Table \| TextField)` | Renvoie une référence à un objet Field reflétant l'état du champ au moment de l'appel du script. Il fait partie du document ci-dessus. Si la valeur du champ est modifiée après l'initialisation du script, les modifications ne sont pas appliquées. |
| `commandArgs.params.appPath`             | String                                                                            | Le nom de domaine du serveur.                                                                                                                                                                                                                         |
| `commandArgs.params.coordinates`         | `Object [{X1,X2,Y1,Y2}]`                                                          | Les coordonnées de l'élément DOM ayant appelé le script personnalisé.                                                                                                                                                                                 |
| `commandArgs.params.currentElementDomId` | String                                                                            | L'ID de l'élément DOM ayant appelé le script personnalisé.                                                                                                                                                                                            |

<div id="events">
  ### Événements
</div>

| Fonction                                | Description                                                                      |
| --------------------------------------- | -------------------------------------------------------------------------------- |
| `commandArgs.events.addEventHandler`    | Ajoute un gestionnaire d’événements au contexte global du script personnalisé.   |
| `commandArgs.events.triggerHandlers`    | Déclenche un événement dans le contexte global du script personnalisé.           |
| `commandArgs.events.removeEventHandler` | Supprime un gestionnaire d’événements du contexte global du script personnalisé. |

<div id="field-object-types">
  ## Types d’objets Field
</div>

Les scripts personnalisés peuvent accéder aux types d’objets Field suivants ainsi qu’à l’[objet Document](#document-object). Chaque objet Field expose l’[objet Region](#region-object) via sa propriété `Regions`.

<div id="field-group-field">
  ## Champ de groupe
</div>

| Propriété        | Type                                                                                | accès            | Description                                                                                                  |
| ---------------- | ----------------------------------------------------------------------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------ |
| `Fields`         | `(Picture \| Checkmark \| Checkmark Groups \| FieldsGroup \| Table \| TextField)[]` | Lecture seule    | Tableau de champs.                                                                                           |
| `HasTableLayout` | Boolean                                                                             | Lecture seule    | Indique si la région du champ est un tableau.                                                                |
| `Caption`        | String                                                                              | Lecture seule    | Nom du champ personnalisé, légende.                                                                          |
| `FieldType`      | Number                                                                              | Lecture seule    | Type de champ. Valeur : `4` (groupe de champs).                                                              |
| `Id`             | Number                                                                              | Lecture seule    | ID du champ.                                                                                                 |
| `IsReadOnly`     | Boolean                                                                             | Lecture seule    | Indique si la modification des champs est interdite.                                                         |
| `IsVisible`      | Boolean                                                                             | Lecture seule    | Indique si le champ est visible dans le formulaire de données.                                               |
| `MaxRegions`     | Number                                                                              | Lecture seule    | Nombre maximal de régions associées au champ. Si la valeur est `-1`, le nombre de régions n'est pas limité.  |
| `Name`           | String                                                                              | Lecture seule    | Nom interne du champ.                                                                                        |
| `NamePath`       | `String[]`                                                                          | Lecture seule    | Tableau des noms de champs et de groupes constituant le chemin d'accès au champ.                             |
| `NeedRecognize`  | Boolean                                                                             | Lecture/écriture | Indique s'il faut récupérer la valeur du champ depuis la région lors de la nouvelle vérification des règles. |
| `Regions`        | `Region[]`                                                                          | Lecture seule    | Régions du champ. Voir [objet Region](#region-object).                                                       |

<div id="section-field">
  ## Champ Section
</div>

| Propriété       | Type                                                                                | Accès            | Description                                                                                                     |
| --------------- | ----------------------------------------------------------------------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------- |
| `Fields`        | `(Picture \| Checkmark \| Checkmark Groups \| FieldsGroup \| Table \| TextField)[]` | Lecture seule    | Tableau de champs.                                                                                              |
| `Pageids`       | `Number[]`                                                                          | Lecture seule    | Identifiants des pages sur lesquelles se trouve la section.                                                     |
| `IsFlexible`    | Boolean                                                                             | Lecture seule    | Indique si la section est flexible.                                                                             |
| `Caption`       | String                                                                              | Lecture seule    | Nom du champ personnalisé, légende.                                                                             |
| `FieldType`     | Number                                                                              | Lecture seule    | Type de champ. Valeur : `6` (section).                                                                          |
| `Id`            | Number                                                                              | Lecture seule    | ID du champ.                                                                                                    |
| `IsReadOnly`    | Boolean                                                                             | Lecture seule    | Indique si la modification du champ est interdite.                                                              |
| `IsVisible`     | Boolean                                                                             | Lecture seule    | Indique si le champ est visible dans le formulaire de données.                                                  |
| `MaxRegions`    | Number                                                                              | Lecture seule    | Nombre maximal de régions du champ. Si la valeur est `-1`, un nombre illimité de régions est autorisé.          |
| `Name`          | String                                                                              | Lecture seule    | Nom interne du champ.                                                                                           |
| `NamePath`      | `String[]`                                                                          | Lecture seule    | Tableau des noms de champs et de groupes formant le chemin d’accès au champ.                                    |
| `NeedRecognize` | Boolean                                                                             | Lecture/écriture | Indique si la valeur du champ doit être récupérée depuis la région lors de la nouvelle vérification des règles. |
| `Regions`       | `Region[]`                                                                          | Lecture seule    | Régions du champ. Voir [objet Region](#region-object).                                                          |

<div id="table-field">
  ## Champ de tableau
</div>

| Propriété       | Type       | Accès            | Description                                                                                                       |
| --------------- | ---------- | ---------------- | ----------------------------------------------------------------------------------------------------------------- |
| `Rows`          | `Row[]`    | Lecture seule    | Liste des lignes de tableau. Voir [objet Row](#row-object).                                                       |
| `Caption`       | String     | Lecture seule    | Nom du champ personnalisé, légende.                                                                               |
| `FieldType`     | Number     | Lecture seule    | Type de champ. Valeur : `7` (tableau).                                                                            |
| `Id`            | Number     | Lecture seule    | ID du champ.                                                                                                      |
| `IsReadOnly`    | Boolean    | Lecture seule    | Indique si la modification du champ est interdite.                                                                |
| `IsVisible`     | Boolean    | Lecture seule    | Indique si le champ est visible dans le formulaire de données.                                                    |
| `MaxRegions`    | Number     | Lecture seule    | Si sa valeur est `-1`, un nombre illimité de régions est autorisé.                                                |
| `Name`          | String     | Lecture seule    | Nom interne du champ.                                                                                             |
| `NamePath`      | `String[]` | Lecture seule    | Tableau de noms de champs et de groupes formant le chemin d’accès au champ.                                       |
| `NeedRecognize` | Boolean    | Lecture/écriture | Indique s’il faut récupérer la valeur du champ à partir de la région lorsque les règles sont vérifiées à nouveau. |
| `Regions`       | `Region[]` | Lecture seule    | Régions du champ. Voir [objet Region](#region-object).                                                            |

<div id="row-object">
  ### Objet Row
</div>

| Propriété       | Type                                                      | Description                                                                                               |
| --------------- | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `Id`            | number                                                    | ID de la ligne.                                                                                           |
| `RowNumber`     | number                                                    | Numéro d’ordre de la ligne, à partir de zéro.                                                             |
| `HasColorImage` | boolean                                                   | Indique si l’image de la ligne est en couleur.                                                            |
| `TableBlockID`  | `number[]`                                                | Identifiants des sections, tableaux et blocs de tableau constituant le chemin d’accès au bloc de tableau. |
| `Cells`         | `(Picture \| Checkmark \| CheckmarkGroup \| TextField)[]` | Champs des cellules du tableau.                                                                           |

<div id="text-entry-field">
  ## Champ de saisie de texte
</div>

| Propriété                | Type       | Accès            | Description                                                                                                                                                                             |
| ------------------------ | ---------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Flags`                  | `Number[]` | Lecture/écriture | Tableau de même longueur que la `Value` du champ, composé de `0` et de `1`. Tout caractère de `Value` se trouvant à la même position qu'un `0` dans `Flags` nécessite une vérification. |
| `Suggests`               | `String[]` | Lecture seule    | Liste des valeurs suggérées pour le champ.                                                                                                                                              |
| `Value`                  | String     | Lecture/écriture | Valeur du champ.                                                                                                                                                                        |
| `TextType`               | Number     | Lecture seule    | Type de champ de texte. Voir les [valeurs TextType](#texttype-values).                                                                                                                  |
| `Caption`                | String     | Lecture seule    | Nom du champ personnalisé, légende.                                                                                                                                                     |
| `FieldType`              | Number     | Lecture seule    | Type de champ. Valeur : `0` (champ de texte).                                                                                                                                           |
| `Id`                     | Number     | Lecture seule    | ID du champ.                                                                                                                                                                            |
| `IsReadOnly`             | Boolean    | Lecture seule    | Indique si la modification du champ est interdite.                                                                                                                                      |
| `IsVisible`              | Boolean    | Lecture seule    | Indique si le champ est visible dans le formulaire de données.                                                                                                                          |
| `MaxRegions`             | Number     | Lecture seule    | Nombre maximal de régions de champ. Si la valeur est `-1`, un nombre quelconque de régions est autorisé.                                                                                |
| `Name`                   | String     | Lecture seule    | Nom interne du champ.                                                                                                                                                                   |
| `NamePath`               | `String[]` | Lecture seule    | Tableau des noms de champs et de groupes constituant le chemin d'accès au champ.                                                                                                        |
| `NeedRecognize`          | Boolean    | Lecture/écriture | Indique s'il faut récupérer la valeur du champ à partir de la région lorsque les règles sont vérifiées à nouveau.                                                                       |
| `Regions`                | `Region[]` | Lecture seule    | Régions du champ. Voir [l'objet Region](#region-object).                                                                                                                                |
| `IsVerified`             | Boolean    | Lecture/écriture | Indique si le champ a été vérifié.                                                                                                                                                      |
| `NeedVerification`       | Boolean    | Lecture seule    | Indique si le champ nécessite une vérification.                                                                                                                                         |
| `NeedDoubleVerification` | Boolean    | Lecture seule    | Indique si le champ nécessite une double vérification.                                                                                                                                  |
| `IsSummary`              | Boolean    | Lecture seule    | Indique si le champ est utilisé dans le résumé des données du formulaire de données.                                                                                                    |

<div id="texttype-values">
  ### Valeurs de TextType
</div>

| Valeur | Signification              |
| ------ | -------------------------- |
| `0`    | champ Text                 |
| `1`    | Champ numérique            |
| `2`    | Champ de montant en devise |
| `3`    | Champ DateTime             |
| `4`    | Champ de date              |
| `5`    | Champ d’heure              |
| `6`    | Champ de code              |

<div id="checkmark-field">
  ## Champ de coche
</div>

| Propriété                | Type       | Accès            | Description                                                                                                       |
| ------------------------ | ---------- | ---------------- | ----------------------------------------------------------------------------------------------------------------- |
| `Value`                  | Boolean    | Lecture/écriture | Valeur du champ.                                                                                                  |
| `Caption`                | String     | Lecture seule    | Nom du champ personnalisé, légende.                                                                               |
| `FieldType`              | Number     | Lecture seule    | Type de champ. Valeur : `2` (coche).                                                                              |
| `Id`                     | Number     | Lecture seule    | ID du champ.                                                                                                      |
| `IsReadOnly`             | Boolean    | Lecture seule    | Indique si la modification du champ est interdite.                                                                |
| `IsVisible`              | Boolean    | Lecture seule    | Indique si le champ est visible dans le formulaire de données.                                                    |
| `MaxRegions`             | Number     | Lecture seule    | Nombre maximal de régions du champ. Si la valeur est `-1`, un nombre illimité de régions est autorisé.            |
| `Name`                   | String     | Lecture seule    | Nom interne du champ.                                                                                             |
| `NamePath`               | `String[]` | Lecture seule    | Tableau des noms de champs et de groupes constituant le chemin d’accès au champ.                                  |
| `NeedRecognize`          | Boolean    | Lecture/écriture | Indique s’il faut récupérer la valeur du champ à partir de la région lors de la nouvelle vérification des règles. |
| `Regions`                | `Region[]` | Lecture seule    | Régions du champ. Voir [objet Region](#region-object).                                                            |
| `IsVerified`             | Boolean    | Lecture/écriture | Indique si le champ a été vérifié.                                                                                |
| `NeedVerification`       | Boolean    | Lecture seule    | Indique si le champ nécessite une vérification.                                                                   |
| `NeedDoubleVerification` | Boolean    | Lecture seule    | Indique si le champ nécessite une double vérification.                                                            |
| `IsSummary`              | Boolean    | Lecture seule    | Indique si le champ est utilisé dans le résumé des données du formulaire de données.                              |

<div id="checkmark-group-field">
  ## Champ de groupe de coches
</div>

| Propriété                | Type                           | Accès            | Description                                                                                                                         |
| ------------------------ | ------------------------------ | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `MaxSelectedCount`       | Number                         | Lecture seule    | Nombre maximal de valeurs de champ sélectionnées.                                                                                   |
| `MinSelectedCount`       | Number                         | Lecture seule    | Nombre minimal de valeurs de champ sélectionnées.                                                                                   |
| `Values`                 | `Number[]`                     | Lecture/écriture | Valeur du champ. Tableau d’ID d’enregistrements constituant la liste des valeurs de champ possibles (`Variants`).                   |
| `Variants`               | `{Id: number, Name: string}[]` | Lecture seule    | Liste des valeurs de champ possibles. Chaque variante possède un `Id` (ID d’enregistrement) et un `Name` (nom de l’enregistrement). |
| `Caption`                | String                         | Lecture seule    | Nom du champ personnalisé, légende.                                                                                                 |
| `FieldType`              | Number                         | Lecture seule    | Type de champ. Valeur : `3` (groupe de coches).                                                                                     |
| `Id`                     | Number                         | Lecture seule    | ID du champ.                                                                                                                        |
| `IsReadOnly`             | Boolean                        | Lecture seule    | Indique si la modification du champ est interdite.                                                                                  |
| `IsVisible`              | Boolean                        | Lecture seule    | Indique si le champ est visible dans le formulaire de données.                                                                      |
| `MaxRegions`             | Number                         | Lecture seule    | Nombre maximal de régions du champ. Si la valeur est `-1`, le nombre de régions est illimité.                                       |
| `Name`                   | String                         | Lecture seule    | Nom interne du champ.                                                                                                               |
| `NamePath`               | `String[]`                     | Lecture seule    | Tableau des noms de champs et de groupes constituant le chemin d’accès au champ.                                                    |
| `NeedRecognize`          | Boolean                        | Lecture/écriture | Indique si la valeur du champ doit être récupérée à partir de la région lors de la nouvelle vérification des règles.                |
| `Regions`                | `Region[]`                     | Lecture seule    | Régions du champ. Voir [Objet Region](#region-object).                                                                              |
| `IsVerified`             | Boolean                        | Lecture/écriture | Indique si le champ a été vérifié.                                                                                                  |
| `NeedVerification`       | Boolean                        | Lecture seule    | Indique si le champ nécessite une vérification.                                                                                     |
| `NeedDoubleVerification` | Boolean                        | Lecture seule    | Indique si le champ nécessite une double vérification.                                                                              |
| `IsSummary`              | Boolean                        | Lecture seule    | Indique si le champ est utilisé dans le résumé des données du formulaire de données.                                                |

<div id="picture-field">
  ## Champ image
</div>

| Propriété    | Type       | Accès         | Description                                                                                              |
| ------------ | ---------- | ------------- | -------------------------------------------------------------------------------------------------------- |
| `Caption`    | String     | Lecture seule | Nom du champ personnalisé, légende.                                                                      |
| `FieldType`  | Number     | Lecture seule | Type de champ. Valeur : `1` (image).                                                                     |
| `Id`         | Number     | Lecture seule | ID du champ.                                                                                             |
| `IsReadOnly` | Boolean    | Lecture seule | Indique si la modification du champ est interdite.                                                       |
| `IsVisible`  | Boolean    | Lecture seule | Indique si le champ est visible dans le formulaire de données.                                           |
| `MaxRegions` | Number     | Lecture seule | Nombre maximal de régions de champ. Si la valeur est `-1`, un nombre quelconque de régions est autorisé. |
| `Name`       | String     | Lecture seule | Nom interne du champ.                                                                                    |
| `NamePath`   | `String[]` | Lecture seule | Tableau des noms de champs et de groupes formant le chemin d’accès au champ.                             |
| `Regions`    | `Region[]` | Lecture seule | Régions du champ. Voir [l’objet Region](#region-object).                                                 |

<div id="repeating-group-of-sections-field">
  ## Champ Groupe répétitif de sections
</div>

| Propriété   | Type        | Accès         | Description                                                 |
| ----------- | ----------- | ------------- | ----------------------------------------------------------- |
| `Id`        | Number      | Lecture seule | ID du champ.                                                |
| `Name`      | String      | Lecture seule | Libellé du champ.                                           |
| `Sections`  | `Section[]` | Lecture seule | Tableau de champs de type [Champ Section](#section-field).  |
| `FieldType` | Number      | Lecture seule | Type de champ. Valeur : `8` (groupe de sections répétitif). |

<div id="region-object">
  ## Objet Region
</div>

La propriété `Regions` de chaque objet champ renvoie un tableau de régions présentant la structure suivante.

| Propriété     | Type                     | Description                                                                                                                                        |
| ------------- | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Id`          | number                   | ID de la Region.                                                                                                                                   |
| `Status`      | number                   | Statut de la région : `0` : région non superposée (ou supprimée) ; `1` : région non reconnue ; `2` : valeur de la région substituée dans le champ. |
| `PageId`      | Number                   | ID de la Page sur laquelle se trouve la région.                                                                                                    |
| `IsNew`       | Boolean                  | Indicateur signalant les nouvelles régions.                                                                                                        |
| `Coordinates` | `Object [{X1,X2,Y1,Y2}]` | Coordonnées de la région dans l'image.                                                                                                             |

<div id="document-object">
  ## Objet Document
</div>

L’objet document est accessible via `commandArgs.params.document`.

| Propriété          | Type                           | Accès         | Description                                                                                   |
| ------------------ | ------------------------------ | ------------- | --------------------------------------------------------------------------------------------- |
| `AssemblingErrors` | `AssemblingError[]`            | Lecture seule | Erreurs d’assemblage du document. Voir [Objet d’erreur d’assemblage](#assembly-error-object). |
| `BatchId`          | Number                         | Lecture seule | ID du lot.                                                                                    |
| `Errors`           | `Error[]`                      | Lecture seule | Erreurs du document. Voir [Objet Error](#error-object).                                       |
| `Fields`           | `(Section \| SectionsGroup)[]` | Lecture seule | Liste des sections et des sections dupliquées.                                                |
| `Id`               | Number                         | Lecture seule | Identifiant du document.                                                                      |
| `Index`            | Number                         | Lecture seule | Indice du document dans le lot.                                                               |
| `Pages`            | `Page[]`                       | Lecture seule | Liste des pages du document. Voir [Objet Page](#page-object).                                 |
| `ProjectId`        | Number                         | Lecture seule | Identifiant du Project.                                                                       |
| `TaskId`           | Number                         | Lecture seule | ID de la tâche.                                                                               |
| `TemplateId`       | Number                         | Lecture seule | ID de la définition du document.                                                              |
| `TemplateName`     | String                         | Lecture seule | Nom de la définition du document.                                                             |
| `TemplateVersion`  | Number                         | Lecture seule | Version de la définition du document.                                                         |
| `Version`          | Number                         | Lecture seule | Version du document.                                                                          |

<div id="assembly-error-object">
  ### Objet d’erreur d’assemblage
</div>

| Propriété         | Type         | Description                                                                         |
| ----------------- | ------------ | ----------------------------------------------------------------------------------- |
| `DocumentNodeRef` | `number[][]` | Liste de liens vers les champs du formulaire, sous forme de tableau d’ID de champs. |
| `Description`     | string       | Description de l’erreur.                                                            |
| `SectionName`     | `string[]`   | Liste des sections concernées par l’erreur.                                         |

<div id="error-object">
  ### Objet Error
</div>

| Propriété         | Type         | Description                                                                             |
| ----------------- | ------------ | --------------------------------------------------------------------------------------- |
| `DocumentNodeRef` | `number[][]` | Liste de liens vers les champs du formulaire, sous la forme d’un tableau d’ID de champ. |
| `Severity`        | number       | `1` Erreur, `0` Avertissement.                                                          |
| `Message`         | string       | Texte de l’erreur.                                                                      |
| `RuleName`        | string       | Nom de la règle à l’origine de l’erreur.                                                |

<div id="page-object">
  ### Objet Page
</div>

| Propriété                   | Type    | Description                           |
| --------------------------- | ------- | ------------------------------------- |
| `Id`                        | number  | ID de la page.                        |
| `Modification`              | number  | Numéro de révision de la page.        |
| `HasColorImage`             | boolean | Indique si la page est en couleur.    |
| `ImageResolution`           | number  | Résolution de l’image.                |
| `KeyValue`                  | string  | Valeur du champ principal de la page. |
| `SectionTemplateId`         | number  | ID de la section de la page.          |
| `SectionTemplateName`       | string  | Nom de la section de la page.         |
| `FlexibleInstanceId`        | number  | ID de l’instance flexible.            |
| `SectionTemplatePageNumber` | number  | Numéro de la page dans la section.    |
| `Comment`                   | string  | Relecture de la page.                 |
| `ImageWidth`                | number  | Largeur de l’image de la page.        |
| `ImageHeight`               | number  | Hauteur de l’image de la page.        |
