FabsH
I'm new here

Fremdschlüsselbeziehung nicht referenzierbar in Tabellenvorlage

Jump to solution

Hallo zusammen,

ich versuche gerade, eine Fremdschlüsselbeziehung zwischen zwei Tabellen anzulegen.

Dazu habe ich Tabelle 1 (Veranstaltung) und Tabelle 2 (Veranstaltungskategorien). Diese sollen nun mit einer 1:n-Beziehung verknüpft werden (1 Kategorie hat n Veranstaltungen, 1 Veranstaltung hat 1 Kategorie).

Dazu habe ich die Beziehung wie folgt angelegt:

4-1.PNG

Anschließend habe ich eine Tabellenvorlage (ufh.veranstaltung_erfassen_bearbeiten) für die Veranstaltung erstellt, in der mittels FS_LIST vom Typ Database auf die Kategorien und die zuständige Vorlage (ufh.veranstaltungskategorien_bearbeiten) verwiesen wird. Im Formular klappt das auch super:

<CMS_INPUT_TEXT name="ct_title" hFill="yes" singleLine="no" useLanguages="no">

        <LANGINFOS>

          <LANGINFO lang="*" label="Titel" description="Titel der Veranstaltung"/>

        </LANGINFOS>

      </CMS_INPUT_TEXT>

      <CMS_INPUT_TEXT name="ct_ort" hFill="yes" singleLine="no" useLanguages="no">

        <LANGINFOS>

          <LANGINFO lang="*" label="Ort" description="Ort der Veranstaltung"/>

        </LANGINFOS>

      </CMS_INPUT_TEXT>

      <CMS_INPUT_TEXT name="ct_referent" hFill="yes" singleLine="no" useLanguages="no">

        <LANGINFOS>

          <LANGINFO lang="*" label="ReferntIn" description="ReferentIn der Veranstaltung"/>

        </LANGINFOS>

      </CMS_INPUT_TEXT>

      <CMS_INPUT_DATE name="ct_datum" allowEmpty="yes" hFill="yes" preset="created" useLanguages="no">

        <LANGINFOS>

          <LANGINFO

            lang="*"

            label="Tag und Uhrzeit"

            description="Datum und Uhrzeit"

            format="'am' dd.MM.yyyy 'um' HH:mm"/>

        </LANGINFOS>

      </CMS_INPUT_DATE>

      <CMS_INPUT_TEXTAREA name="ct_beschreibung" hFill="yes" rows="7" useLanguages="no">

        <LANGINFOS>

          <LANGINFO lang="*" label="Beschreibung" description="Kurze Beschreibung der Veranstaltung"/>

        </LANGINFOS>

      </CMS_INPUT_TEXTAREA>

      <FS_LIST name="ct_kategorie" hFill="yes" rows="5">

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

          <ACTIONS>

            <ACTION name="ADD"/>

            <ACTION name="REMOVE"/>

            <ACTION name="UP"/>

            <ACTION name="DOWN"/>

            <ACTION name="GOTO"/>

            <ACTION name="EDIT"/>

          </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>ufh.veranstaltungskategorien_bearbeiten</table>

        </DATASOURCE>

        <LANGINFOS>

          <LANGINFO lang="*" label="Kategorie (maximal eine Kategorie pro Veranstaltung)"/>

        </LANGINFOS>

      </FS_LIST>

Nur kann ich im Bereich Mapping nicht festlegen, dass ct_kategorie die Beziehung enthält, da ich nur Zugriff auf die Standard-Spalten habe:

4-2.PNG

Folglich kann ich in der HTML-Vorlage auch nicht auf die Kategorie zu einer Veranstaltung zugreifen.

Kann mir da jemand weiterhelfen?

Grüße,

Fabian

0 Kudos
1 Solution

Accepted Solutions
FabsH
I'm new here

Lösung gefunden.

Warum auch immer funktioniert es nicht mit FS_LIST. Bin jetzt auf CMS_INPUT_COMBOBOX umgestiegen, damit funktioniert es:

...

<CMS_INPUT_COMBOBOX name="ct_kategorie2" hFill="yes" singleLine="no">

        <CMS_INCLUDE_OPTIONS type="database">

          <LABELS>

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

          </LABELS>

          <TABLE>ufh.veranstaltungskategorien_bearbeiten</TABLE>

        </CMS_INCLUDE_OPTIONS>

        <LANGINFOS>

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

        </LANGINFOS>

      </CMS_INPUT_COMBOBOX>

...

View solution in original post

0 Kudos
3 Replies
FabsH
I'm new here

Lösung gefunden.

Warum auch immer funktioniert es nicht mit FS_LIST. Bin jetzt auf CMS_INPUT_COMBOBOX umgestiegen, damit funktioniert es:

...

<CMS_INPUT_COMBOBOX name="ct_kategorie2" hFill="yes" singleLine="no">

        <CMS_INCLUDE_OPTIONS type="database">

          <LABELS>

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

          </LABELS>

          <TABLE>ufh.veranstaltungskategorien_bearbeiten</TABLE>

        </CMS_INCLUDE_OPTIONS>

        <LANGINFOS>

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

        </LANGINFOS>

      </CMS_INPUT_COMBOBOX>

...

0 Kudos

Bitte die FS_LIST generell nicht mehr verwenden sondern die beiden Ersatzkomponenten FS_INDEX und FS_CATALOG.

0 Kudos
mbergmann
Crownpeak employee

Hallo Fabian,

der Grund ist hier einfach, dass die FS_LIST eine mehrwertige Komponente ist, man also mehrere Kategorien wählen kann. Darum kann sie nicht auf eine zu-1-Relation gemappt werden.

Du könntest sie (oder wie Sven schon schrieb besser einen FS_INDEX) aber dazu nutzen, um in einer Kategorie die Veranstaltungen zu pflegen, also die zu-n-Richtung.

Viele Grüße

Michael

0 Kudos