Hallo zusammen,
Ich stehe gerade vor folgender kleinen Herausforderung, speziell wie ich diese im Frontend abbilden kann.
Ich möchte einen neuen Datensatz und darunter einen neuen mit diesem Datensatz in Beziehung stehenden Datensatz (n:m) anlegen.
Beispiel: Unternehmen und Kontakte - eine Tabelle für Unternehmen, verknüpft über eine Zwischentabelle für die Zuordnung mit einer Tabelle für Kontakte, so dass eine n:m Beziehung entsteht.
Auf der Datenbankebene habe ich das erfolgreich abbilden können, und auch im Frontend funktioniert das grundsätzlich erstmal wunderbar. Es gibt ein Formular für die Unternehmen mit einer eingebetteten Liste für die verknüpften Kontakte, und in der Liste habe ich das zu öffnende Formular hinterlegt, über welches ein Eintrag in der Beziehungstabelle (dort sind sowohl Unternehmen als auch Kontakte mit einer n:1 Verknüpfung referenziert) erfasst werden kann. Ist der Datensatz des Unternehmens schon gespeichert, dann wird im Unterformular auch schon das Unternehmen als Vorschlag für den neuen Beziehungsdatensatz eingefügt.
Nun kommt es aber vor, dass der Benutzer beide Datensätze (Unternehmen und Kontakte) in einem Rutsch anlegen möchte. Also öffnet er das Formular für das Anlegen eines neuen Unternehmens, füllt die darin befindlichen Felder aus, und würde dann intuitiv einen neuen Eintrag für einen Kontakt in der Liste über das Unterformular für die Beziehungen erzeugen. Im Unterformular für die Beziehungen habe ich eine Liste für die vorhandenen Kontakte und einen Button, welcher mir das Anlegen eines neuen Kontakts erlaubt.
Angenommen der Benutzer befindet sich nun im Unterformular für die Beziehungen und hat von dort aus einen neuen Kontakt erstellt, dann ist in diesem Moment aber der Datensatz für das Unternehmen, aus welchem heraus das Unterformular für die Beziehungen aufgerufen wurde, noch nicht gespeichert. Das Unternehmen erscheint also nicht in der Auswahlliste.
Meine Frage: wie kann ich es bewerkstelligen, dass vor dem Aufruf eines Unterformulars über eine Liste der aktuelle Datensatz im Hauptformular gespeichert wird? Im Formular gibt es zwar ein paar Funktionen, welche ich vor/nach dem Laden eines Formulars oder dem Speichern oder Löschen eines Datensatzes aufrufen kann - diese beziehen sich aber immer nur auf das aktuelle Formular. Ich bräuchte aber eine Frontend-Funktion, welche vor dem Wechsel des Formulars aufgerufen wird, und dann den aktuellen Datensatz erstmal abspeichert.
Ich hoffe ich habe mein Problem halbwegs nachvollziehbar erklärt.
Danke und viele Grüße,
Falko