Questions & Answers

Sandy
I'm new here

FS_LIST Typ Database manuelle Sortierung

Hallo,

habe eine FS_LIST in einer Datenquelle mit folgender Syntax:

<FS_LIST name="cs_exhibitor" allowEmpty="no" hFill="yes" height="450" rows="4">

    <DATASOURCE type="database" useLanguages="no">

      <LABELS>

        <LABEL lang="*">#item.alt_title_text</LABEL>

      </LABELS>

      <ACTIONS>

        <ACTION name="ADD"/>

        <ACTION name="REMOVE"/>

        <ACTION name="UP"/>

        <ACTION name="DOWN"/>

        <ACTION name="GOTO"/>

        <ACTION name="EDIT"/>

        <ACTION name="NEW"/>

      </ACTIONS>

      <COLUMNS>

        <COLUMN show="no">#identifier</COLUMN>

      </COLUMNS>

      <LAYOUT>

        <ADD component="toolbar" constraint="top"/>

        <ADD component="overview" constraint="center"/>

        <ADD component="stackedview" constraint="bottom"/>

      </LAYOUT>

      <table>messe_karlsruhe.exhibitor_logo_item</table>

    </DATASOURCE>

    <LANGINFOS>

      <LANGINFO lang="*" label="Datensatzauswahl"/>

    </LANGINFOS>

  </FS_LIST>

Das Problem ist, dass sich die Datensรคtze in dieser FS_LIST nicht manuell in der Datenquelle sortieren lassen.

Sobald man die Datenquelle erneut zur Bearbeitung รถffnet, ist die geรคnderte Reihenfolge weg. Offensichtlich wird die geรคnderte Reihenfolge nicht gespeichert.

Habe versucht das Attribut sortOrder="KEEP_ORDER" einzufรผgen, aber dieses wird nach Speicherung in obigen Code entfernt. Wahrscheinlich weil es der Standard-Wert ist.

Wir arbeiten mit dem FirstSpirit Client 4.2.437.44763. Vielleicht kann in dieser Version noch keine FS_LIST vom Typ Database manuell sortiert werden.

Als Workaround habe ich eine CMS_INPUT_CONTENTLIST mit einem indexAttribute implementiert und damit funktioniert die manuelle Sortierung.

Nur warum funktioniert das nicht mit einer FS_LIST vom Typ Database ?

Grรผsse,

Sandra Stolle

0 Kudos
5 Replies
boesebeck
Crownpeak employee

Hallo Sandra,

schau dir mal folgenden Beitrag an http://www.e-spirit.com/odfs42/de/vorlagenentwicklung/formular/fs/fs_list/beispielprojekt/beispielpr... innerhalb des Projektes ist eine Median Gallerie umgesetz, die eine man. Sortierung der Eintrรคge erlaubt.

ok, hab mir das Beispiel angeschaut und den PERSISTENCEINDEX noch in die FS_LIST eingetragen. Diese sieht jetzt so aus:

<FS_LIST name="cs_exhibitor" allowEmpty="no" hFill="yes" height="450" rows="4">

    <DATASOURCE type="database" useLanguages="no">

      <LABELS>

        <LABEL lang="*">#item.alt_title_text</LABEL>

      </LABELS>

      <ACTIONS>

        <ACTION name="ADD"/>

        <ACTION name="REMOVE"/>

        <ACTION name="UP"/>

        <ACTION name="DOWN"/>

        <ACTION name="GOTO"/>

        <ACTION name="EDIT"/>

        <ACTION name="NEW"/>

      </ACTIONS>

      <COLUMNS>

        <COLUMN show="no">#identifier</COLUMN>

      </COLUMNS>

      <LAYOUT>

        <ADD component="toolbar" constraint="top"/>

        <ADD component="overview" constraint="center"/>

        <ADD component="stackedview" constraint="bottom"/>

      </LAYOUT>

      <PERSISTENCEINDEX>order_index</PERSISTENCEINDEX>

      <table>messe_karlsruhe.exhibitor_logo_item</table>

    </DATASOURCE>

    <LANGINFOS>

      <LANGINFO lang="*" label="Datensatzauswahl"/>

    </LANGINFOS>

  </FS_LIST>

Nur leider bekomme ich jetzt beim Abspeichern in der Datenquelle folgende NullPointer Exception:

java.lang.NullPointerException

    at de.espirit.firstspirit.ui.gadgets.swing.fslist.ContentModeHelper.findMapping(ContentModeHelper.java:467)

    at de.espirit.firstspirit.client.access.editor.FsListEditorValueImpl.assimilate(FsListEditorValueImpl.java:190)

    at de.espirit.firstspirit.store.access.DataUtil.copy(DataUtil.java:67)

    at de.espirit.firstspirit.client.gui.tree.store.pagestore.GomModuleView.adopt(GomModuleView.java:343)

    at de.espirit.firstspirit.client.gui.GomModulePanel.adopt(GomModulePanel.java:92)

......

0 Kudos
boesebeck
Crownpeak employee

Ist Feld auch in der Datenbank vorhanden, schau dir mal das komplette Schema in dem Beispielprojekt an.

0 Kudos

Das Feld ist in der Datenbank vorhanden und wurde auch gemappt.

0 Kudos

Bei der NullPointerException an dieser Stelle handelt es sich um einen Fehler, der mit dem nรคchsten Build behoben sein wird. Leider weiรŸ ich um keinen Workaround an dieser Stelle.

Interne ID ist #105226

Nachrag: Bitte mal prรผfen, ob alle Eingabekomponenten auf eine Spalte abgebildet werden und evtl. nachholen (oder Komponente entfernen).

Type a product name