From 91ab84d416a0624c336a73ef97a7c01ba2ccec04 Mon Sep 17 00:00:00 2001 From: "francois.grand" <francois.grand@irstea.fr> Date: Fri, 29 Jun 2018 11:29:15 +0200 Subject: [PATCH] =?UTF-8?q?=20#48=20FormulaireService.getLinkableValues()?= =?UTF-8?q?=20:=20modif=20pour=20exclure=20des=20valeurs=20retourn=C3=A9es?= =?UTF-8?q?=20le=20r=C3=A9sultat=20du=20m=C3=AAme=20nom=20que=20le=20param?= =?UTF-8?q?=C3=A8tre=20donn=C3=A9=20quand=20ce=20param=C3=A8tre=20appartie?= =?UTF-8?q?nt=20au=20Nub=20courant=20de=20la=20boucle=20(ex=20:=20cr=C3=A9?= =?UTF-8?q?er=20une=20conduite=20distributrice,=20calculer=20Q,=20ouvrir?= =?UTF-8?q?=20une=202=C3=A8me=20conduite,=20revenir=20=C3=A0=20la=201?= =?UTF-8?q?=C3=A8re,=20passer=20en=20Q=20en=20mode=20li=C3=A9=20:=20le=20r?= =?UTF-8?q?=C3=A9sultat=20calcul=C3=A9=20pr=C3=A9c=C3=A9demment=20apparait?= =?UTF-8?q?=20dans=20la=20liste=20des=20valeurs=20liables=20(ne=20devrait?= =?UTF-8?q?=20pas))?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../services/formulaire/formulaire.service.ts | 27 +++++++------------ 1 file changed, 9 insertions(+), 18 deletions(-) diff --git a/src/app/services/formulaire/formulaire.service.ts b/src/app/services/formulaire/formulaire.service.ts index 07a2cee36..6e5409a62 100644 --- a/src/app/services/formulaire/formulaire.service.ts +++ b/src/app/services/formulaire/formulaire.service.ts @@ -471,32 +471,23 @@ export class FormulaireService extends Observable { } /** - * @returns liste des paramètres liables à un paramètre sous la forme d'un tableau d'objets + * @returns liste des valeurs liables à un paramètre sous la forme d'un tableau d'objets * {"param":<paramètre lié>, "nub":<Nub d'origine du paramètre lié>, "formTitle":<nom de la calculette liée au nub>} - * @param symbol symbole (Q, J, ...) du paramètre qui sert de clé de recherche des paramètres liables + * @param p paramètre qui sert de clé de recherche des paramètres liables */ - // public getLinkableParameters(p: NgParameter): any[] { - // let res: any[] = []; - - // if (p !== undefined) - // for (const f of this._formulaires) { - // const sn = f.currentSessionNub; - // const ps = sn.getLinkableParameters(p.paramDefinition); - // for (const np of ps) { - // np["formTitle"] = f.calculatorName; - // res.push(np); - // } - // } - - // return res; - // } public getLinkableValues(p: NgParameter): any[] { let res: any[] = []; if (p !== undefined) for (const f of this._formulaires) { + // nub associé au formulaire const sn = f.currentSessionNub; - const ps = sn.getLinkableValues(p.paramDefinition); + + // on vérifie que le paramètre en entrée appartient au nub + const np = sn.nub.getParameter(p.symbol); + + // si oui, on demande à exclure des valeurs retournées le résultat du même nom que le paramètre + const ps = sn.getLinkableValues(p.paramDefinition, p.paramDefinition.uid === np.uid); for (const np of ps) { np["formTitle"] = f.calculatorName; res.push(np); -- GitLab