Ankündigung

Einklappen
Keine Ankündigung bisher.

Ausgabe "true" verhindern

Einklappen
X

Ausgabe "true" verhindern

Einklappen
  • Filter
  • Zeit
Alles löschen
neue Beiträge

  • Ausgabe "true" verhindern

    Hallo liebe Community,

    ich verwende in einem Script eine Schleife, die die Werte eines Arrays ($item) gegen $idUser prüft und in Abhängigkeit vom Ergebnis eine Gruppierung anzeigen soll:

    Code:
    [FONT=Courier New]#foreach ($item in $authorised)
      #if ($item == $idUser)
        #set($show_simplegroup00BCBAA4 = true)
      #end
    #end[/FONT]
    Das Ganze funktioniert - bis auf einen kleinen Schönheitsfehler: Für jedes true schreibt er mir ein true auf den Bildschirm :-(

    Hat evtl jemand von euch eine Idee, wie ich die Ausgabe verhindern kann?

    Vielen Dank im Voraus und viele Grüße vom Sven


  • #2
    Kannst du mal vor der Schleife udn nach der Schleife einen Marker einfügen um festzustellen, ob es wirklich hier auftritt?
    Ich sehe hier keinen Teil der was ausgibt.

    Kommentar


    • #3
      Hallo Martin,

      vielen Dank für Deine schnelle Antowrt :-) Ich fürchte, Du hast Recht... Nachfolgend der "Rest" des Codes - bzw. der Beginn. Vermute nach Deiner Mail jetzt, dass das Hinzufügen der Daten in das Array ein true auslöst...

      Kann man das auch "irgendwie" verhindern?

      Vielen Dank und viele Grüße Sven
      Code:
      #set($show_simplegroup00BCBAA4 = false)
      
      #set($idUser = $User.getId())
      #set($idMode = $drRecord.getValueHolder('integervcontrol4E4D6469' ).getValue())
      #set($idProt = $drRecord.getValueHolder('integervcontrol90FA7F9E' ).getValue())
      #set($idResp = $drRecord.getValueHolder('integervcontrol7E557160' ).getValue())
      #set($authorised = [])
      
      $authorised.add($idMode)
      $authorised.add($idProt)
      $authorised.add($idResp)

      Kommentar


      • #4
        Ja das denke ich auch.

        Es gibt zwei Wege das zu lösen:
        1.
        #set($authorised.add($idMode))

        2.
        $Response.setIgnoreWrite(true)
        .
        .
        ganz
        viel
        code
        .
        .
        $Response.setIgnoreWrite(false)

        Kommentar


        • #5
          Sorry Martin, aber ich muss noch mal nerven...

          Die erste Idee hatte ich auch, aber da hatte der Editor etwas daran auszusetzen (rotes Kreuz).

          Variante 2 klang auch nicht schlecht, aber da hat er mir - trotzdem ich nur die drei addZeilen) zwischen das $Response... gepackt habe - gar nichts mehr angezeigt. Nun habe ich beide Response-Zeilen wieder gelöscht, aber er führt das "add" nicht mehr aus, sondern schreibt mir statt "true" z. B. $authorised.add(1621) in das Formular... :-O

          Neues Browserfenster, <STRG>+<F5> - nix hat geholfen...

          Hast Du bitte evtl noch eine Idee? Vielen Dank :-)

          *** SORRY - Variante 2 hat funktioniert - da saß der Fehler vor der Tastatur (hatte ein $ vergessen) :-( ***
          Zuletzt geändert von shzi; 05.08.2021, 13:10. Grund: Irrtum saß vor dem PC ;-)

          Kommentar

          Lädt...
          X