diff --git a/src/app/formulaire/definition/form-compute.ts b/src/app/formulaire/definition/form-compute.ts
index 22806ea9c8f55f9b5bab4a425fb1b20c3158f19a..8b7902787879ec72fd545b4bd160016adc73120e 100644
--- a/src/app/formulaire/definition/form-compute.ts
+++ b/src/app/formulaire/definition/form-compute.ts
@@ -31,11 +31,17 @@ export abstract class FormCompute {
         let init: number;
         switch (computedParam.domain.domain) {
             case ParamDomainValue.ANY:
-                init = computedParam.getValue();
+                if (computedParam && computedParam.isDefined)
+                    init = computedParam.getValue();
+                if (init === undefined)
+                    init = 0;
                 break;
 
             case ParamDomainValue.POS_NULL:
-                init = Math.max(computedParam.getValue(), 0);
+                if (computedParam && computedParam.isDefined)
+                    init = Math.max(computedParam.getValue(), 0);
+                if (init === undefined)
+                    init = 0;
                 break;
 
             case ParamDomainValue.INTERVAL:
@@ -43,13 +49,17 @@ export abstract class FormCompute {
                 break;
 
             case ParamDomainValue.NOT_NULL:
-                init = computedParam.getValue();
-                if (init === 0)
+                if (computedParam && computedParam.isDefined)
+                    init = computedParam.getValue();
+                if (init === undefined || init === 0)
                     init = 1e-8;
                 break;
 
             case ParamDomainValue.POS:
-                init = Math.max(computedParam.getValue(), 1e-8);
+                if (computedParam && computedParam.isDefined)
+                    init = Math.max(computedParam.getValue(), 1e-8);
+                if (init === undefined)
+                    init = 1e-8;
                 break;
         }