Zum Hauptinhalt gehen

RULE um Wert einer Eingabekomponente aus zwei anderen Werten zu setzen

Kommentare

4 Kommentare

  • Zendesk API User
    Author: cube - 5/18/2022 8:41

    Geht dann offensichtlich nicht via RULES, sondern nur über ein (BeanShell) Script - oder wüsste hier doch noch jemand einen Weg? 

    0
  • Zendesk API User
    Author: hoebbel - 5/18/2022 14:17

    Hallo cube,

    über Regeln sollte es mit einem ValueService funktionieren, der den Inhalt der beiden anderen Eingabekomponenten ausliest und als String zurück liefert. Über den DO Teil der Regel kann der String dann in die dritte Eingabekomponente geschrieben werden. Weitere Informationen dazu findest Du in der Dokumentation:
    https://docs.e-spirit.com/odfs/vorlagenentwick/regeln/anbindung-exter/index.html

    Allerdings frage ich mich, warum die Daten doppelt vorgehalten werden sollen? Warum reicht es nicht, nur bei der Ausgabe (und im Schnipsel) die Daten zusammenzuführen?

    Viele Grüße
    Holger

    0
  • Zendesk API User
    Author: hoebbel - 5/19/2022 12:55

    Hallo cube,

    bei dem Anwendungsfall würde ich in dem Scheduler, der die entsprechende Generierung durchführt, vor die Generierung ein Skript hängen, welches über alle Datensätze iteriert, bei denen die Eingabekomponente mit dem vollständigen Namen leer ist. Also etwas in der Art von:
    mySelect = <content2>.getSchema().getSession().createSelect(<content2>.getEntityType().toString());
    isNullConstraint = new isNull("<Spaltenname>");
    mySelect.setConstraint(isNullConstraint);

    Und das diese dann entsprechend füllt und die Datensätze freigibt. (im Skript muss unter Eigenschaften eine eigene Verbindung konfiguriert werden und der dort hinterlegt User muss ausreichend Rechte dafür haben)

    Danach muss dann der Startzeitpunkt der Generierung auf "jetzt" gesetzt werden (context.setStartTime(new Date())), damit die Änderungen auch berücksichtigt werden. 

    Das hat den Vorteil, dass vor jeder entsprechenden Veröffentlichung die Daten aktualisiert werden - und auch nur dann.

    Viele Grüße
    Holger

    0
  • Zendesk API User
    Author: cube - 5/19/2022 11:03

    Hallo Holger,

    Danke für Deine Antwort!

    Allerdings frage ich mich, warum die Daten doppelt vorgehalten werden sollen? Warum reicht es nicht, nur bei der 
    > Ausgabe (und im Schnipsel) die Daten zusammenzuführen?

    Hintergrund ist der, dass für die Personen-Profilseiten  (liegen in einer Datenbank, via Content-Projektion eingebunden) der Wunsch besteht, die generierte URL aus Name und Vorname abzubilden (z.B. ../personen/doe-john.html).

    Die Idee ist, für die Seitenreferenz dieser Personenseite (Daten > "Variable für Text der Menü-Übersicht (Sitemap)") als Attribut anstelle des lastName  hier ein Attribut urlName  zu verwenden, das sich in der oben beschriebenen Art und Weise, automatisch via RULE befüllt.

    Möglicherweise aber ist die Lösung über ein Script wesentlicher einfacher als via RULE und valueService.

    0

Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.