diff --git a/src/app/components/generic-calculator/calculator.component.html b/src/app/components/generic-calculator/calculator.component.html
index e83c7109247b7162352c69f660bfbd73560216e9..1bca5782e7dc32205bdb22bfe726c492f6dbe85c 100644
--- a/src/app/components/generic-calculator/calculator.component.html
+++ b/src/app/components/generic-calculator/calculator.component.html
@@ -214,7 +214,7 @@
                     </button>
 
                     <button mat-raised-button color="accent" id="generate-backwater-curve" *ngIf="isPAM"
-                        (click)="generateBackwaterInPAM()">
+                        (click)="generateBackwaterInPAM()" [disabled]="!generateCrPamEnabled">
                         {{ uitextGenerateBackwaterInPAM }}
                     </button>
 
diff --git a/src/app/components/generic-calculator/calculator.component.ts b/src/app/components/generic-calculator/calculator.component.ts
index bdada015d2a6ec0a3e547126332bdfea39fc4ef0..64333abcd269100d0a238c953418d133e7a3e24a 100644
--- a/src/app/components/generic-calculator/calculator.component.ts
+++ b/src/app/components/generic-calculator/calculator.component.ts
@@ -1020,6 +1020,10 @@ export class GenericCalculatorComponent implements OnInit, DoCheck, AfterViewChe
         );
     }
 
+    public get generateCrPamEnabled(): boolean {
+        return this.hasResults && !this._formulaire.currentNub.result.hasErrorMessages();
+    }
+
     public get uitextGenerateParSimulationTitle(): string {
         const parCalage = (this._formulaire.currentNub as Par);
         if (!this.hasResults || parCalage.result.hasErrorMessages()) {