Search the FirstSpirit Knowledge Base
Hallo,
wir haben eine externe Datenbank lesend in FirstSpirit eingebunden.
Die Datenbank enthällt die (sprachunabhängige) Spalte "Language" mit den Sprachkürzeln DE, EN usw. als String.
Ich versuche nun eine Abfrage für den Daten-Reiter anzulegen, um nur die Datensätze der aktuellen Sprache zu erhalten:
<QUERY entityType="Features">
<EQ attribute="Language" datatype="java.lang.String" value="%lang%"/>
</QUERY>
Leider bekomme ich so keine Ergebnisse!?
Wie kann ich auf die aktuelle FirstSpirit-Sprache in einer Abfrage sonst noch zugreifen oder was mache ich falsch?
FirstSpirit-Version: 5.0.606
Viele Grüße
Mark
Hallo Mark,
der Platzhalter %lang% ist nur für ORDERCRITERIA gedacht. Soviel ich weiß, geht das was du möchtest nur über contentSelect. Meinst du mit der aktuellen Sprache die Sprache des Clients oder der Generierung?
An die Sprache der Generierung kommst du mit #global.language, an die Sprache des Client mit java.util.Locale.getDefault().
Viele Grüße
Jan
Hallo Mark,
der Platzhalter %lang% ist nur für ORDERCRITERIA gedacht. Soviel ich weiß, geht das was du möchtest nur über contentSelect. Meinst du mit der aktuellen Sprache die Sprache des Clients oder der Generierung?
An die Sprache der Generierung kommst du mit #global.language, an die Sprache des Client mit java.util.Locale.getDefault().
Viele Grüße
Jan
Hallo Jan,
gemeint war die aktuelle Sprache bei der Generierung.
Ein contentSelect kommt in diesem Fall nicht in Frage, da wir mehrere Seiten (Fragmente) aus der Datenquelle generieren müssen.
Ich habe es jetzt so gelöst, dass in der Tabellenvorlage die Sprache abgefragt wird ggf. die Generierung gestoppt wird.
$CMS_IF(#row.Language != #global.language.toString())$
$-- stop generate --$
$CMS_SET(#global.stopGenerate,true)$
$CMS_ELSE$
$-- generate --$
...
$CMS_END_IF$
Viele Grüße
Mark