diff --git a/src/app/components/fixedvar-results/fixed-results.component.ts b/src/app/components/fixedvar-results/fixed-results.component.ts index 182ed6f68b91106dcc7df37da2ea78f98abec8f5..a6909ac0be9050cb2c0c9a1c6d28adc84d062b5b 100644 --- a/src/app/components/fixedvar-results/fixed-results.component.ts +++ b/src/app/components/fixedvar-results/fixed-results.component.ts @@ -84,6 +84,7 @@ export class FixedResultsComponent { const res = this._fixedResults.result; if ( res + && res.nbResultElements > 0 && res.resultElement && res.extraResults ) { diff --git a/src/app/components/ngparam-input/ngparam-input.component.ts b/src/app/components/ngparam-input/ngparam-input.component.ts index 2717729d82fb4eb87e2ba8d810d656c9da122167..c61a4fb783066a8ed61a1fb802ec294296a8c0b9 100644 --- a/src/app/components/ngparam-input/ngparam-input.component.ts +++ b/src/app/components/ngparam-input/ngparam-input.component.ts @@ -47,9 +47,7 @@ export class NgParamInputComponent extends GenericInputComponent implements Obse */ protected afterSetModel() { if (this._paramDef) { - if (this._paramDef.isDefined) { - this._tmp = this._paramDef.getValue(); - } + this._tmp = this._paramDef.getValue(); this._paramDef.addObserver(this); } } diff --git a/src/app/components/param-field-line/param-field-line.component.ts b/src/app/components/param-field-line/param-field-line.component.ts index 8aae7a7c7ba8ccadc1d187812036d7c789e2622d..df956b33acfe059a408a8e6e82390cdb246adfa1 100644 --- a/src/app/components/param-field-line/param-field-line.component.ts +++ b/src/app/components/param-field-line/param-field-line.component.ts @@ -208,9 +208,6 @@ export class ParamFieldLineComponent implements OnChanges { switch (option) { case "fix": this.param.valueMode = ParamValueMode.SINGLE; - // reset the value to avoid "undefined" after exiting CALC or LINK mode - // @TODO not always necessary; find out why - this.param.setValue(this, this.param.paramDefinition.singleValue); break; case "var": diff --git a/src/app/formulaire/definition/form-compute.ts b/src/app/formulaire/definition/form-compute.ts index 64dd7055529cc02b48c282517b2c22bf2517e06b..af5c587cda210a94a857ce12f2dc14e3888614c2 100644 --- a/src/app/formulaire/definition/form-compute.ts +++ b/src/app/formulaire/definition/form-compute.ts @@ -43,9 +43,8 @@ export abstract class FormCompute implements Observer { computedParam = nub.calculatedParam; } - // require chain computation; redundant with Nub.CalcSerie but required - // to get initial value here... - const computedParamValue = computedParam.getValue(); + // const computedParamValue = computedParam.getValue(); + const computedParamValue = computedParam.singleValue; switch (computedParam.domain.domain) { case ParamDomainValue.ANY: diff --git a/src/app/formulaire/ngparam.ts b/src/app/formulaire/ngparam.ts index 5681b58cdd074bc59d432db93c730e70f5cf4b7b..294bbc53f05d4bf8deffbb329f817427ea89190d 100644 --- a/src/app/formulaire/ngparam.ts +++ b/src/app/formulaire/ngparam.ts @@ -266,11 +266,16 @@ export class NgParameter extends InputField implements Observer { } /** - * Asks the ParamDefinition for its current value - * @TODO replace with singleValue to avoid displaying computation results ? + * Asks the ParamDefinition for its singleValue (not currentValue, + * to avoid displaying computation results); calculated linked + * value might not be available yet */ public getValue() { - return this._paramDef.getValue(); + try { + return this._paramDef.getValue(); + } catch (error) { + return undefined; + } } /**