marc_palm
I'm new here

Wie mappe ich GomIncludeValueProvider auf einen Fremdschlüssel?

Liebe Community,

der GomIncludeValueProvider funktioniert in der Tabellevorlage nicht so wie ich das wünschen würde.

  1. Ich benutze den Ausgabetyp Entity in einer Tabellenvorlage und will diesen als Fremdschlüßel abspeichern, der Register Mapping erkennt diesen aber nicht als Fremdschlüßel.
  2. Wenn ich auf die Komponente zugreife erhalte ich $CMS_VALUE(cs_item.value)$ ein Objekt der Klasse String. Das Objekt cs_item.value ist Klasse SimpleOption. Auch wenn ich über die Entität auf das Attribut zugreife erhalte ich nur einen String. Man greift anscheinend immer nur auf getKey zu.

Ich habe schon  gelesen, das ähnliche Probleme mit der Komponente GomIncludeValueProvider aufgetaucht sind:

https://community.e-spirit.com/thread/2675

Mein Problem ist aber leicht anders gelaggert.

Beste Grüße,

Marc Palm

FirstSpirit Server-Version: 5.2.212.71463 -

Kurz ein Snippet aus dem Code:

@Override

    public String getKey(Object arg0)

    {

        return (String) ((Entity) arg0).get("Name");

    }

    @SuppressWarnings("rawtypes")

    @Override

    public Class getType()

    {

        return Entity.class;

    }

    @SuppressWarnings("rawtypes")

    @Override

    public List getValues(UserService arg0)

    {

        // TODO Auto-generated method stub

        return null;

    }

    @Override

    public List<Entity> getValues(SpecialistsBroker sb)

    {

        List<Entity> entities = getEntities();//Sammeln aller Kliniken

        return entities;

    }

0 Kudos
5 Replies
MichaelaReydt
Community Manager

Hallo Marc,

leider ist mir nicht ganz klar, was genau deine Anforderung ist.

Meines Wissens nach handelt es bei dem GomIncludeValueProvider um eine FS-Schnittstelle, mit der dynamische Wertemengen an eine Eingabekomponente übergeben werden können. Mir ist daher nicht bewusst, was du wo und wie speichern möchtest.

Beim zweiten Punkt schreibst du einmal von cs_item und einmal von cs_value. Worum handelt es sich bei diesen beiden Elementen? Kannst du hier einige detailiertere Informationen bereitstellen, um uns einen Kontext zu geben?

Kannst du uns des Weiteren die von dir verwendete FS-Version nennen?

Der von dir verlinkte Post hing nicht primär etwas mit dem GomIncludeValueProvider zusammen. Dabei ging es darum, dass der Benutzer, mit dem auf Daten zugegriffen wurde, während des Prozesses wechselte. Dies scheint dein Szenario jedoch nicht zu betreffen.

Viele Grüße

Michaela

0 Kudos

Hallo Marc,

benötigst Du noch weitere Hilfe oder hat Dir die Antwort von Michaela bereits geholfen?

In diesem Fall wäre es super, wenn Du die "richtige Antwort" entsprechend markierst, damit auch andere

Community-Teilnehmer diese auf den ersten Blick finden. Solltest Du zwischenzeitlich eine eigene Lösung

gefunden haben, wäre es nett, wenn Du diese hier bereitstellst.

Viele Grüße

Jan

0 Kudos
marc_palm
I'm new here

Hallo Jan und Michaela, 

das Problem ist leider immer noch aktuell. Das Szenario wurde ursprünglich von mir als Testcase entwicklelt, muss nun aber finalisiert werden.

Ich habe meine Frage angepasst, um Eure Fragen bzw. meine Rechtschreibungfehler zu adressieren:)  Zusammenfassend ist meine dynamische Wertemenge eine Menge von Entitäten (abhängig von der Zugehörigkeit der Gruppe) und die ausgewählte möchte ich persistent als Fremdschlüssel in einer Datenquelle speichern. 

Habt Ihr hier vielleicht Vorschläge? Ich hänge nicht an meiner Lösung mit der GomIncludeValueProvider Variante. 

Vielen Dank für Eure Hilfe.

Beste Grüße

Marc

0 Kudos

Hallo Marc,

du erwähnst Entitäten. Ist denn im Schema der Datenquelle das modelliert, das Du an der enstprechenden Stelle die Fremdschlüssel speichern kannst? Oder anders gespochen, ich möchte in einer Datenbank Tabelle A die Primärschlüssel von Tabelle B als Fremdschlüssel speichern. Gibt es denn zwischen Tabelle A und B eine Relation? Wie ist diese ausgeprägt? 1:1, 1:n oder n:m?

Warum ich nachfrage, mir und meinen Kollegen ist noch nicht 100% klar, was genau dein Anwendungsfall ist. Um Dir wirklich zu helfen müssten wir ggf. Aufbau der Entities bzw. das Datenmodell, Formular-Quellcode und Template-Quellcode kennen. Falls Du natürlich noch Java-Quellcode hast auch diesen. Leider ist o.g. Code-Auszug unvollständig, so dass wir keine sicheren Rückschlüße auf die Java-Klasse anstellen können.

Grüße Marian

0 Kudos
pavone
I'm new here

Hallo Marc,

benötigst Du noch weitere Hilfe? Falls ja, solltest du Marians Fragen beantworten, damit dein Problem nachvollziehbarer wird.

Solltest Du zwischenzeitlich eine eigene Lösung gefunden haben, wäre es nett, wenn Du diese hier bereitstellst.

Viele Grüße

Tim

0 Kudos