diff --git a/src/app/services/formulaire/formulaire.service.ts b/src/app/services/formulaire/formulaire.service.ts index 07a2cee368118234bf15db124344861ce1eb3a3f..6e5409a62c76eda1a9def82a3e91ca3d88b17ec6 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);