diff --git a/src/app/components/calculator-results/calculator-results.component.html b/src/app/components/calculator-results/calculator-results.component.html
index 7f8019197995eb9972a4b1a3358a8a2445e5c8d4..f057d40a42d5465aacad0101ca357c40bc6ea7fd 100644
--- a/src/app/components/calculator-results/calculator-results.component.html
+++ b/src/app/components/calculator-results/calculator-results.component.html
@@ -1,10 +1,10 @@
 <div>
-    <section-results [hidden]="! isSP" [results]=formResultsArray></section-results>
-    <remous-results [hidden]="! isRemous" [results]=formResultsArray></remous-results>
-    <pab-results [hidden]="! isPAB" [results]=formResultsArray></pab-results>
-    <pb-results [hidden]="! isPB" [results]=formResultsArray></pb-results>
+    <section-results *ngIf="isSP" [results]=formResultsArray></section-results>
+    <remous-results *ngIf="isRemous" [results]=formResultsArray></remous-results>
+    <pab-results *ngIf="isPAB" [results]=formResultsArray></pab-results>
+    <pb-results *ngIf="isPB" [results]=formResultsArray></pb-results>
     <verificateur-results [hidden]="! isVerificateur"></verificateur-results>
-    <macrorugo-compound-results [hidden]="! isMRC" [results]=formResultsArray></macrorugo-compound-results>
+    <macrorugo-compound-results *ngIf="isMRC" [results]=formResultsArray></macrorugo-compound-results>
     <jet-results *ngIf="isJet" [results]=formResultsArray></jet-results>
     <fixedvar-results *ngIf="! isJet" [results]=formResultsArray></fixedvar-results>
 </div>
diff --git a/src/app/components/calculator-results/calculator-results.component.ts b/src/app/components/calculator-results/calculator-results.component.ts
index 8d6de93b5fc06972b4e406cd8995db4bb2a24c0c..41a6e20d10524336b4e7417223692336f2b7eaf6 100644
--- a/src/app/components/calculator-results/calculator-results.component.ts
+++ b/src/app/components/calculator-results/calculator-results.component.ts
@@ -37,8 +37,26 @@ export class CalculatorResultsComponent implements AfterViewChecked {
         this.afterViewChecked.emit();
     }
 
-    // JetResultsComponent extends FixedVarResultsComponent, which makes
-    // them incompatible with each other
+    public get isSP() {
+        return this.calculatorComponent.isSP;
+    }
+
+    public get isRemous() {
+        return this.calculatorComponent.isRemous;
+    }
+
+    public get isPAB() {
+        return this.calculatorComponent.isPAB;
+    }
+
+    public get isPB() {
+        return this.calculatorComponent.isPB;
+    }
+
+    public get isMRC() {
+        return this.calculatorComponent.isMRC;
+    }
+
     public get isJet() {
         return this.calculatorComponent.isJet;
     }
diff --git a/src/app/components/generic-calculator/calculator.component.ts b/src/app/components/generic-calculator/calculator.component.ts
index 2be2d3286c8719405e0e49abf95123703941e3ab..4426cff879a3903f68c9d696de1ab887f675438f 100644
--- a/src/app/components/generic-calculator/calculator.component.ts
+++ b/src/app/components/generic-calculator/calculator.component.ts
@@ -650,6 +650,16 @@ export class GenericCalculatorComponent implements OnInit, DoCheck, AfterViewChe
         return this.is(CalculatorType.Espece);
     }
 
+    // true if current Nub is PAR
+    public get isSP() {
+        return this.is(CalculatorType.SectionParametree);
+    }
+
+    // true if current Nub is PAR
+    public get isRemous() {
+        return this.is(CalculatorType.CourbeRemous);
+    }
+
     /**
      * Returns true if no parameter is varying; ignores parameters having
      * one of the given {except} symbols, if any
diff --git a/src/app/components/macrorugo-compound-results/macrorugo-compound-results.component.ts b/src/app/components/macrorugo-compound-results/macrorugo-compound-results.component.ts
index 4e4f108bba72b458539a65a1fcde6309a94e5088..232f0c436caa9e177defbe862dbdb940a4f7fd39 100644
--- a/src/app/components/macrorugo-compound-results/macrorugo-compound-results.component.ts
+++ b/src/app/components/macrorugo-compound-results/macrorugo-compound-results.component.ts
@@ -133,9 +133,9 @@ export class MacrorugoCompoundResultsComponent extends ResultsComponentDirective
     }
 
     /**
-     * Retourne les logs à afficher dans le composant de log global, au dessus
-     * du sélecteur d'itération : messages globaux et / ou résumé des messages
-     * spécifiques à chaque ResultElement
+     * Retourne les logs à afficher dans le composant de log local, en dessous
+     * du sélecteur d'itération : messages concernant l'itération (le ResultElement)
+     * en cours
      */
     public get iterationLog(): cLog {
         const l = new cLog();
diff --git a/src/app/components/pab-results/pab-results.component.ts b/src/app/components/pab-results/pab-results.component.ts
index edcbdbb30e8e11dc716233b3f4c20efd82728e30..bb190be6a1e861fcf81ffa3a2079ef2efd85ad72 100644
--- a/src/app/components/pab-results/pab-results.component.ts
+++ b/src/app/components/pab-results/pab-results.component.ts
@@ -148,11 +148,11 @@ export class PabResultsComponent extends ResultsComponentDirective {
     }
 
     /**
-     * Retourne les logs à afficher dans le composant de log global, au dessus
-     * du sélecteur d'itération : messages globaux et / ou résumé des messages
-     * spécifiques à chaque ResultElement
+     * Retourne les logs à afficher dans le composant de log local, en dessous
+     * du sélecteur d'itération : messages concernant l'itération (le ResultElement)
+     * en cours
      */
-    private get iterationLog(): cLog {
+    public get iterationLog(): cLog {
         const l = new cLog();
         if (this._pabResults) {
             if (this.pabResults.variatedParameters.length > 0) {
diff --git a/src/app/components/pb-results/pb-results.component.ts b/src/app/components/pb-results/pb-results.component.ts
index 034f24e0c6b27b3a529a78b3c18875740e2d3ae1..b502c4e40fe2335c1688ddc7028aa7112bc105c6 100644
--- a/src/app/components/pb-results/pb-results.component.ts
+++ b/src/app/components/pb-results/pb-results.component.ts
@@ -165,6 +165,52 @@ export class PbResultsComponent {
         return l;
     }
 
+    /**
+     * Retourne les logs à afficher dans le composant de log local, en dessous
+     * du sélecteur d'itération : messages concernant l'itération (le ResultElement)
+     * en cours
+     */
+    public get iterationLog(): cLog {
+        const l = new cLog();
+        /* if (this._pabResults) {
+            if (this.pabResults.variatedParameters.length > 0) {
+                // A. si un paramètre varie
+                const vi = this._pabResults.variableIndex;
+                // log de la PAB pour l'itération en cours
+                if (
+                    this._pabResults.result
+                    && this._pabResults.result.hasResultElements()
+                    && this._pabResults.result.resultElements[vi]
+                    && this._pabResults.result.resultElements[vi].hasLog()
+                ) {
+                    l.addLog(this._pabResults.result.resultElements[vi].log);
+                }
+                // logs des enfants pour l'itération en cours
+                for (const cr of this._pabResults.cloisonsResults) {
+                    if (cr && cr.hasResultElements() && cr.resultElements[vi].hasLog()) {
+                        l.addLog(cr.resultElements[vi].log);
+                    }
+                }
+                if (this._pabResults.cloisonAvalResults && this._pabResults.cloisonAvalResults.resultElements[vi].hasLog()) {
+                    l.addLog(this._pabResults.cloisonAvalResults.resultElements[vi].log);
+                }
+            } else {
+                // B. si aucun paramètre ne varie
+                this.mergeGlobalLog(this._pabResults.result, l); // faut bien mettre le log global quelque part
+                // logs des enfants
+                for (const cr of this._pabResults.cloisonsResults) {
+                    if (cr && cr.hasResultElements() && cr.resultElement.hasLog()) {
+                        l.addLog(cr.resultElement.log);
+                    }
+                }
+                if (this._pabResults.cloisonAvalResults && this._pabResults.cloisonAvalResults.resultElement.hasLog()) {
+                    l.addLog(this._pabResults.cloisonAvalResults.resultElement.log);
+                }
+            }
+        } */
+        return l;
+    }
+
     public get uitextGeneralLogTitle(): string {
         return this.i18nService.localizeText("INFO_TITREJOURNAL_GLOBAL");
     }
diff --git a/src/app/components/remous-results/remous-results.component.ts b/src/app/components/remous-results/remous-results.component.ts
index 532556c376388dd963a05d7528b2eefdc998de37..b39505299078fd465949b1f8c178625e459fc299 100644
--- a/src/app/components/remous-results/remous-results.component.ts
+++ b/src/app/components/remous-results/remous-results.component.ts
@@ -237,7 +237,6 @@ export class RemousResultsComponent extends ResultsComponentDirective implements
     private generateChart() {
         // http://www.chartjs.org/docs/latest/charts/line.html
         // le dernier dataset de la liste datasets est dessiné en 1er
-        console.log("ooOOO Oui !");
         this._remousResults.update();
 
         const nub = this._remousResults.result.sourceNub as CourbeRemous;
diff --git a/src/app/components/results-chart/results-chart.component.ts b/src/app/components/results-chart/results-chart.component.ts
index d8fd854aeb73b9242f96df1c8e487e305ad33744..d41858fe728c13c5f9a40072b9d8ee5f8aa621e3 100644
--- a/src/app/components/results-chart/results-chart.component.ts
+++ b/src/app/components/results-chart/results-chart.component.ts
@@ -178,13 +178,11 @@ export class ResultsChartComponent extends ResultsComponentDirective implements
     }
 
     public ngOnChanges() {
-        console.log("==> ResChart onChanges");
         // redessiner le graphique chaque fois qu'une entrée change
         this.drawChart();
     }
 
     public drawChart() {
-        console.log("----> regenerate chart !!", this._results);
         if (this._results && this._results.hasPlottableResults()) {
             switch (this._graphTypeComponent.selectedValue) {
                 case ChartType.Histogram:
diff --git a/src/app/components/variable-results-selector/variable-results-selector.component.ts b/src/app/components/variable-results-selector/variable-results-selector.component.ts
index 716d7fc9eb3a0f4108d246637a6447c71097c4d1..68491335a515f172f709427ac6ebcd02762e6218 100644
--- a/src/app/components/variable-results-selector/variable-results-selector.component.ts
+++ b/src/app/components/variable-results-selector/variable-results-selector.component.ts
@@ -41,7 +41,6 @@ export class VariableResultsSelectorComponent implements OnChanges {
     ) { }
 
     public ngOnChanges() {
-        console.log("==//== changes !! ==//==", this.variatedParameters);
         // rebuild variable parameters values everytime somthing changes
         if (this.variatedParameters) {
             this.varValues = [];