Aller au contenu

Met à jour les lignes qui correspondent à votre filtre et écrit le résultat dans une table cible. Chaque ligne source parvient à la cible : les lignes qui correspondent au filtre avec vos nouvelles valeurs, et toutes les autres exactement telles qu’elles étaient. Le nombre de lignes de la cible est toujours égal au nombre de lignes de la source.

Le filtre détermine quelles lignes sont modifiées, et non quelles lignes sont renvoyées. C’est ce qui distingue cette étape de Table Extract, où le filtre retire les lignes qui ne correspondent pas.

Source et cible

Source et cible

Pour définir les tables source et cible, sélectionnez d’abord la table de données dont extraire les données avec le menu déroulant Table source. Sélectionnez ensuite soit une table existante comme table cible avec le menu déroulant Table cible, soit cliquez sur le signe « + » vert pour créer une nouvelle table comme cible.

Création de table

Lorsque vous créez une nouvelle table, vous pouvez la créer soit comme une Vue, soit comme une Table.

Vues :

Les vues sont utiles car le temps d’exécution d’une étape est nettement inférieur à celui d’une étape qui utilise une table. L’inconvénient des vues est qu’elles ne sont pas pratiques pour l’exploration des données dans le mode Détails de la table.

Tables :

Lorsqu’une table sert de cible, l’exécution d’une étape est plus longue, mais l’exploration des données en mode Détails est beaucoup plus rapide qu’avec une vue.

La cible doit être une table différente de la source : cette étape lit chaque ligne source et l’écrit, de sorte que la rediriger vers sa propre source ajouterait le résultat aux données qu’elle vient de lire.

Les colonnes de la cible reprennent toujours celles de la source, vous ne les choisissez donc jamais. Les colonnes que vous ne mettez pas à jour sont reportées telles quelles, y compris toute colonne ajoutée à la source depuis la dernière ouverture de cette étape.

Dans l’onglet Sélection des données de la table, ajoutez une ligne pour chaque colonne que vous souhaitez modifier et définissez exactement l’un des éléments suivants :

  • Constante — une valeur fixe.
  • Expression — un calcul, qui peut faire référence à d’autres colonnes de la même ligne.
  • Définir sur Null — vide la colonne.

Les colonnes que vous ne listez pas ne sont pas modifiées.

Une Colonne de mise à jour que les colonnes source de gauche ne listent pas s’affiche en rouge derrière un signe d’avertissement ⚠, même sur une ligne contenant une Constante, une Expression ou Définir sur Null, car l’étape met à jour cette colonne d’après son nom exact. L’enregistrement avec une telle ligne ouvre une boîte de dialogue Colonnes obsolètes détectées qui propose Tout supprimer et enregistrer, Enregistrer quand même ou Annuler.

L’enregistrement vérifie aussi chaque Colonne de mise à jour par rapport à la table source dans son état actuel, d’après son nom exact, quelles que soient les colonnes source listées. Une colonne de mise à jour que la table n’a pas est nommée dans la boîte de dialogue Colonnes source manquantes, car l’étape échouerait dessus à l’exécution. La liste des colonnes source elle-même n’est pas comparée à la table : cette étape lit la table telle qu’elle est, et non la liste.

Dans l’onglet Filtres de données pour la mise à jour, saisissez la condition qui identifie les lignes à modifier. Laissez-la vide pour mettre à jour toutes les lignes.

Une ligne dont la condition ne peut pas être évaluée, le plus souvent parce qu’une colonne testée est nulle, est considérée comme non correspondante et passe sans modification. Cela correspond à la façon dont une base de données évalue la même condition.

Dans cet exemple, le compte est défini sur 41000 lorsque la version est égale à « Actual » dans « Ledger Value to be allocated ». Les lignes d’une autre version parviennent à la cible avec leur compte d’origine.

L’onglet Sélection des données de la table, avec le compte défini sur une constante :

Mappage des colonnes de Table Update

L’onglet Filtres de données pour la mise à jour, contenant la condition qui choisit les lignes à modifier :

Filtre de données de Table Update