From 96ae84a24c0340aabc53e9bec4035718175db4e9 Mon Sep 17 00:00:00 2001 From: "francois.grand" <francois.grand@irstea.fr> Date: Thu, 28 Jun 2018 16:08:14 +0200 Subject: [PATCH] =?UTF-8?q?=20#45=20getLinkableValues()=20:=20correction?= =?UTF-8?q?=20d'un=20bug=20(mauvais=20Nub=20dans=20les=20r=C3=A9sultats)?= =?UTF-8?q?=20emp=C3=AAchant=20de=20retrouver=20les=20valeurs=20retourn?= =?UTF-8?q?=C3=A9es=20(=C3=A0=20cause=20du=20pr=C3=A9fixe)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/structure/parallel_structure.ts | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/structure/parallel_structure.ts b/src/structure/parallel_structure.ts index f65c03b5..982c9146 100644 --- a/src/structure/parallel_structure.ts +++ b/src/structure/parallel_structure.ts @@ -1,6 +1,5 @@ import { Nub } from "../nub"; import { ParamCalculability } from "../param/param-definition"; -import { Message } from "../util/message"; import { Result } from "../util/result"; import { ParallelStructureParams } from "./parallel_structure_params"; import { Structure } from "./structure"; @@ -317,16 +316,23 @@ export class ParallelStructure extends Nub { } /** - * liste des valeurs (paramètre, résultat, résultat complémentaire) liables à un paramètre - * @param src objet qui sert de clé de recherche des paramètres liables, de type INamedObject | string - * @returns tableau d'objets de la forme { "name":string, "value":NamedIterableValues, "nub":Nub}, nub=Nub d'origine de la "value" - */ + * liste des valeurs (paramètre, résultat, résultat complémentaire) liables à un paramètre + * @param src objet qui sert de clé de recherche des paramètres liables, de type INamedObject | string + * @returns tableau d'objets de la forme { "name":string, "value":NamedIterableValues, "nub":Nub}, nub=Nub d'origine de la "value" + */ public getLinkableValues(src: any): any[] { + // paramètres liables de ce Nub let res = super.getLinkableValues(src); let i = 0; for (const s of this.structures) { - const l = s.getLinkableValues(src, `${i}.`); + // paramètres liables des Nub structures enfants + const l = s.getLinkableValues(src, `${i}.`, true); + + // on remplace les nubs retournés par this (à cause du préfixe) + for (const lv of l) + lv.nub = this; + res = res.concat(l); i++; } -- GitLab