From c31fe883718a9ad65ae1bf9ea8ad89cfdee556f5 Mon Sep 17 00:00:00 2001 From: Benjamin Renard Date: Wed, 19 Jul 2023 12:14:11 +0200 Subject: [PATCH] Update ioFormat doc (from 6ff53b412e686913e34a1a7beacab040a0fc012f) --- doc/src/conf/LSobject/ioFormat.md | 33 ++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/doc/src/conf/LSobject/ioFormat.md b/doc/src/conf/LSobject/ioFormat.md index 2b00752e..aa59cf12 100644 --- a/doc/src/conf/LSobject/ioFormat.md +++ b/doc/src/conf/LSobject/ioFormat.md @@ -12,7 +12,8 @@ du format. !!! important Le moteur d'importation simule la validation d'un formulaire de création du type - d'[LSobject](index.md#configuration-lsobject). En conséquence : + d'[LSobject](index.md#configuration-lsobject) (ou de modification en cas d'activation du mode + mise à jour uniquement, voir ci-dessous). En conséquence : - seul les attributs présent dans le formulaire de création peuvent être importés. @@ -30,6 +31,7 @@ $GLOBALS['LSobjects']['[nom du type d'LSobject]']['ioFormat'] = array ( 'label' => '[Label du type de fichier]', 'driver' => '[Pilote d'ioFormat utilisé]', 'driver_options' => array([Options du pilote d'ioFormat utilisé]), + 'update_only' => '[Booléen]', 'fields => array ( '[champ 1]' => '[attribut 1]', '[champ 2]' => '[attribut 2]', @@ -65,23 +67,36 @@ $GLOBALS['LSobjects']['[nom du type d'LSobject]']['ioFormat'] = array ( Tableau associatif des options du pilote utilisé pour ce format. Pour plus d'informations, consulter la documentation du pilote utilisé. +- `update_only` + + Booléen permettant d'activer le mode mise à jour uniquement pour ce format. Dans ce mode, les + données de l'objet LDAP correspondant seront chargées depuis l'annuaire avant toutes validations + des données fournies dans le fichier d'import, et ce, dans un formulaire de modifications et non + pas un formulaire de création autrement. Pour que cela soit possible, il est indispensable que le + DN de l'objet puisse être déduit depuis les données fournies dans le fichier d'import. Pour cela, + vous pouvez le fournir via un champ du fichier d'import associé à la clé `dn` ou à défaut il sera + généré à partir du RDN dont la valeur devra être fournie dans le fichier d'import. Vous pouvez + également le générer via le paramètre `generated_fields` (voir ci-dessous). + - `fields` Tableau associatif permettant d'associer un champ du fichier source (la clé) avec attribut de - l'objet LDAP (la valeur). + l'objet LDAP (la valeur). Il est également possible d'associé un champ avec la valeur `dn` pour + fournir le DN de l'objet en mode mise à jour uniquement (voir ci-dessus). - `generated_fields` Tableau associatif permettant de définir soit des [LSformats](../global/LSformat.md#format-parametrable), soit un *callable* (au sens PHP) pour générer les valeurs d'attributs automatiquement. Ce tableau contient en clé, le nom de l'attribut - à générer, et en valeur associée, un ou plusieurs - [LSformat](../global/LSformat.md#format-parametrable) ou un *callable* à utiliser pour générer ses - valeurs. En cas de [LSformat](../global/LSformat.md#format-parametrable), ils seront composés à - l'aide des valeurs des autres attributs de l'objet. En cas d'un *callable*, il sera appeler avec - en paramètre le tableau des valeurs des autres attributs (`$attrs`), le tableau des données issues - du fichier source (`$row`) et devra retourner le tableau des valeurs générées de l'attribut ou - `false` en cas d'erreur. + à générer (ou `dn` pour la génération du DN de l'objet en mode mise à jour uniquement), et en + valeur associée, un ou plusieurs [LSformat](../global/LSformat.md#format-parametrable) ou un + *callable* à utiliser pour générer ses valeurs. + En cas de [LSformat](../global/LSformat.md#format-parametrable), ils seront composés à l'aide des + valeurs des autres attributs de l'objet. En cas d'un *callable*, il sera appeler avec en paramètre + le tableau des valeurs des autres attributs (`$attrs`), le tableau des données issues du fichier + source (`$row`) et devra retourner le tableau des valeurs générées de l'attribut ou `false` en cas + d'erreur. - `before_import`