- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
setFilterParams() - Parameter
Hallo Community,
ich mรถchte gerne auf einer PageRef eine Abfrage anwenden. Normalerweise habe ich das per Hand in der Struktur im Reiter Daten gemacht, indem ich die Abfrage ausgewรคhlt habe. In der API gibt es eine Funktion Namens "setFilterParams(Map<String,Object> params)
". Wenn ich das richtig sehe, wende ich dies auf eine PageRef an. Jedoch ist mir nicht klar, welche Parameter ich da mit geben muss und wie ich diese bekomme.
Ist dies eigentlich die Richtige Funktion fรผr mein anliegen?
Vielen Dank und Grรผรe
Peter
- Labels:
-
Developers
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
query = templatestore.getStoreElement("<uid>", de.espirit.firstspirit.access.store.templatestore.Query.UID_TYPE);
Versuch mal, ob der obige Code funktioniert, um an das Query zu kommen.
Du kannst รผberprรผfen, ob "query" รผberhaupt einen Wert enthรคlt, z.B. mit
context.logInfo("Query: " + query);
Ich bin mir nicht sicher, ob die uid, welche du oben genutzt hast, die richtige ist. Wenn es mit der von dir genutzten nicht funktioniert, wรผrde ich es mal nur mit "tud_vorlagen.rubrikauswahl_aktuell" probieren.
Viele Grรผรe
Rouven
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Die Seitenreferenz wird nun komplett mit allen Variablen ect angelegt. Jedoch habe ich nun ein weiteres Problem.
Die Seitenreferenz funktioniert erst, wenn ich manuell in den Bearbeitungsmodus gehe, in irgendein Feld rein klicke (ohne รnderungen vorzunehmen) und dann den Bearbeitungsmodus wieder verlasse. Obwohl alles richtig angelegt wurde. Oder habe ich etwas รผbersehen?
Mein Skript ist oben zu finden, mit dem Zusatz von Rouven um die query zu bekommen.
Hoffe Ihr kรถnnt mir weiter helfen.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Was bedeutet denn "funktioniert erst"?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
also auf der Seite soll eine News aus den Datenquellen dargestellt werden. Diese erscheint erst, nachdem ich besagtes getan habe, davor ist der Content-Bereich leer.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
"News aus den Datenquellen dargestellt werden" -> redest du von der Vorschau? Generierung?
Hรถrt sich auf jeden Fall seltsam an. Ich vermute, weil du "PageRef.createContent2Params()" benutzt. Das ist ja deprecated und im JavaDoc wird auf "getContent2Params()" verwiesen. Bitte stell mal deinen Code um und poste die Ergebnisse hier.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
also momentan geht es nur um die Vorschau. Mit der รnderung geht es auch noch nicht. gibt es irgendwas, was ich beim Anlegen solcher Seitenreferenzen mit Filter noch beachten muss?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ich habe jetzt noch einmal auf das Skript geschaut (letzter Versuch ): Du holst dir erst die "Content2Params" aus der Seitenreferen und sperrst diese anschliessend. Das ist auf jeden Fall die falsche Reihenfolge. Ob das die Ursache fรผr das beobachtete Verhalten ist kann ich aber nicht sagen.
Wenn nicht kann nur ein Step-By-Step-Debugging weiterhelfen. Das kann ich nicht leisten...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
mir ist grade aufgefallen, dass beim Anlegen im <PARAM ... (siehe Markierung auf dem Screenshot) "String" steht. Nachdem ich in den Bearbeitungsmodus gewechselt bin und irgendwo hin geklickt habe, รคndert es sich auf "Integer". Kann das eventuell der Fehler sein? Wenn ja, kann man das irgendwie beim Anlegen schon festlegen?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
try {
detailRefPage.setLock(true, false);
detailRefPage.getLanguageInfo(langDE).setDisplayName(refPageDisplayName);
detailContent2 = detailRefPage.getContent2Params();
detailContent2.setRecordCountPerPage(1);
detailContent2.setMaxPageCount(0);
detailContent2.setQuery(query);
map = new java.util.HashMap();
map.put("id", rubrikID);
detailContent2.setFilterParams(map);
detailRefPage.save("set display name and permissions", false);
} finally {
detailRefPage.setLock(false, false);
}
ist dies besser?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Kann das eventuell der Fehler sein? Wenn ja, kann man das irgendwie beim Anlegen schon festlegen?
2x ja.
rubrikID = data.get("cs_kategorie").getEditor().get(lang).toString();
...
map.put("id", rubrikID);
Das "toString()" dรผrfte die Ursache dafรผr sein. Musst du nach "Integer" konvertieren.

