Calcul variable dans Integrator

Imaginez la problématique suivante dans Visual Integrator :

Vous disposez d'un ensemble de données dans laquelle vous souhaitez appliquer un calcul différent en fonction de la valeur d'une colonne spécifique. L'image ci-dessous [Image 2] est un exemple simple d'un tel calcul variable. Il s'agit généralement d'un fichier de recherche (lookup) de base.

Image 2 :

calc_input_img2

L'ensemble de données avec lequel vous voulez créer une correspondance est montré dans l'image suivante [Image 1]. Dans cet exemple Column1 a une relation de 1 à 1, mais en général, vous aurez une colonne principale pour laquelle plusieurs lignes ont plusieurs valeurs A, B , C ou D pour la colonne Column1.

Image 1 :

calc_input_img1

Vous devez d'abord vous assurer que le calcul est utilisé uniquement pour la valeur de la colonne Column1 correspondante. Pour cela, il faut créer une liste d'entrée. Cet objet contient 1 élément qui est appelé template. Template contient les noms des colonnes requises pour les variables de calcul et de remplacement. Ceux-ci sont définis par %variable%. L'image ci-dessous [Image 3] est un exemple simple pour cela.

Image 3 :

calc_input_img3

Le lookup est de type multiply de sorte que pour chaque calcul le modèle (template) est paramétré. Pour utiliser un Calc List Input il faut définir deux colonnes : nom et valeur. nom doit correspondre à la colonne sur laquelle vous effectuez le lookup. Pour valeur nous remplaçons les noms de variables avec les colonnes provenant du fichier lookup. Voir l'image ci-dessous [Image 4] .

Image 4 :

calc_input_img4

La prochaine partie décrira l'astuce sur la façon d'appliquer les différents calculs sur la bonne valeur de la colonne Column1.

Avant d'appliquer l'objet Calc avec le Calc List Input que nous venons de créer, nous devons d'abord créer une nouvelle colonne Start avec un objet Calc. Nous lui donnons la valeur start. Ensuite, nous ajoutons l'objet Calc avec le Calc List Input. Ensuite nous ajoutons un autre objet Calc dans lequel nous créons une nouvelle colonne End avec la valeur end.

Le résultat de la mise à jour de Calc List est que pour chaque calcul une nouvelle colonne est créée. Mais nous avons besoin uniquement de celle qui correspond à la bonne colonne Column1. Nous résolvons ceci à l'étape suivante.

Start et End sont utilisé pour l'objet suivant : l'objet Rotate. New_Horiz_Column est nommé FilterName et sa colonne secondaire dans laquelle le résultat est mis est nommée Result, qui sera le résultat du calcul. Nous cochons Start et End dans l' action de rotation. Voir l'image ci-dessous [Image 5] .

Image 5 :

calc_input_img5

En résultat, toutes les colonnes de calculs créés sont déplacées dans une colonne nommée Result. La colonne FilterName contient les valeurs A, B , C ou D appartenant au calcul. Maintenant, nous devons nous débarrasser des lignes dans lesquelles la valeur de FilterName ne correspond pas à la valeur de Column1. Nous le faisons avec un objet Qual. Voir l'image suivante [Image 6] .

Image 6 :

calc_input_img6

Cela supprime toutes les lignes de calcul incorrectes de l'ensemble des données. Le résultat est affiché dans l'image suivante :

calc_input_result

Comme vous pouvez le voir le nombre de lignes après cet exercice est identique au nombre de lignes d'origine. Si le nombre de lignes est différent, alors une définition de calcul pourrait être manquante. Comme vous pouvez le voir dans la colonne Result, chaque ligne applique un calcul différent pour les colonnes S1 et S2.

Pour une vue d'ensemble finale l'image suivante montre le script. Précédemment un numéro a été attribué à chaque image d'objet. Ceci correspond aux numéros figurant dans l'image.

calc_input_stream