Tabellenanbindung an ein Formular

Hallo zusammen,

ich habe als Datensatzquelle für ein Formular eine Tabelle. Es handelt sich um eine Temporärtabelle damit der Anwender ein bischen „spielen“ kann, ohne dass das unmittelbare Folgen hat.

In der Tabelle gibt es ein Zahlenfeld, welches im Formular nicht angezeigt wird. Meine Frage ist nun wie kann ich dieses Feld automatisch befüllen lassen?

Im Formular befindet sich eine ComboBox, die eine Auswahl an Daten zur Verfügung stellt. In dieses Feld dürfen aber auch Werte eingetragen werden, die nicht in der Liste aufgeführt sind.

In das besagte Zahlenfeld soll eine -1, wenn der Wert der ComboBox nicht in der Liste aufgeführt ist und die 3. Spalte der ComboBox, wenn der Wert aus der Liste stammt.

Hat jemand ne Idee, wie ich das am besten anstelle

DANKE!

Viele Grüße

Hob

Hallo,

ich habe als Datensatzquelle für ein Formular eine Tabelle. Es
handelt sich um eine Temporärtabelle damit der Anwender ein
bischen „spielen“ kann, ohne dass das unmittelbare Folgen hat.

In der Tabelle gibt es ein Zahlenfeld, welches im Formular
nicht angezeigt wird. Meine Frage ist nun wie kann ich dieses
Feld automatisch befüllen lassen?

entweder mit einer Aktualisierungabfrage oder das Feld im Formular anlegen und dort füllen. Dieses Feld muß nicht unbedingt sichtbar sein. Befüllt werden kann es durch Zuweisung eines Wertes in einer Ereignisprozedur.

Im Formular befindet sich eine ComboBox, die eine Auswahl an
Daten zur Verfügung stellt. In dieses Feld dürfen aber auch
Werte eingetragen werden, die nicht in der Liste aufgeführt
sind.

In das besagte Zahlenfeld soll eine -1, wenn der Wert der
ComboBox nicht in der Liste aufgeführt ist und die 3. Spalte
der ComboBox, wenn der Wert aus der Liste stammt.

welchen Sinn hat dieses?
(In die 3. Spalte des Kombis kann in diesem Umfeld nur ein Wert aus einem Feld der Tabelle, die dem Kombi in seiner Datensatzherkunft angegeben ist, „eingetragen“ werden.

Gruß
Franz, DF6GL

Hallo Franz,

der Sinn besteht darin neue von bestehenden Datensätzen unterscheiden zu können. -1 -> neuer Datensatz (meine PKs sind größer 0), Wert>0 -> Der Datensatz besteht bereits.

Die 3. Spalte, weil der damit ausgewiesene PK nicht zu der Tabelle (bzw. Abfrage) gehört, die in der ComboBox ausgewiesen wird.

Die ComboBox hat den Aufbau:
PK (nicht angezeigt), Bezeichnung (angezeigt), FK (nicht angezeigt)

Den FK brauche ich zur weiteren Bearbeitung.

Vielen Dank für deine Mühen!

Viele Grüße

Hob

Hallo,

der Sinn besteht darin neue von bestehenden Datensätzen
unterscheiden zu können. -1 -> neuer Datensatz (meine PKs sind
größer 0), Wert>0 -> Der Datensatz besteht bereits.

Der „neue“ Datensatz wird doch gar nicht in der dem Kombi zugrundeliegenden Tabelle eingetragen. Oder basiert das Kombi und das Form auf der Selben Tabelle?

Die 3. Spalte, weil der damit ausgewiesene PK nicht zu der
Tabelle (bzw. Abfrage) gehört, die in der ComboBox ausgewiesen
wird.

nach dieser Aussage ordne ich der Datensatzherkunft des Kombis eine andere Tabelle als die für das Form zu.

Weiterhin läßt mich das Ganze an einem passenden Tabellenaufbau zweifeln.

Wenn in einer Tabelle der PK (als FK) aus einer anderen (mittels Auswahl über ein Kombi)eingetragen werden kann, aber nicht muß, passiert Chaos, wenn dieser FK manuell bestimmt wird.

Ansonsten versteh ich die Datenverhältnisse/Beziehungen nicht ganz…

Gruß
Franz

Die ComboBox hat den Aufbau:
PK (nicht angezeigt), Bezeichnung (angezeigt), FK (nicht
angezeigt)

Den FK brauche ich zur weiteren Bearbeitung.

Vielen Dank für deine Mühen!

Viele Grüße

Hob

Guten Morgen Franz,

hier mal der grundsätzliche Aufbau und Ablauf:

Das Formular hat die Quelle tmpQuelle, die ComboBox hat die Quelle tmpCb. tmpCb beinhaltet einige Felder aus einer Relation der Produktivumgebung. tmpCb hat den Aufbau PK, angezeigte Bezeichnung, FK. Der FK referenziert auf eine weitere Relation der Produktivumgebung.

Der Ablauf ist wie folgt:
Der Anwender trägt Daten in eine lokale Temporärtabelle ein (über das Formular), hier können die Daten stehen bleiben, sozusagen als Zwischenspeicher, wenn sie zum Zeitpunkt noch nicht weitergeleitet werden sollen.

Im zweiten Schritt stellt der Anwender einen Antrag zur Übernahme. Das heißt im Tabellengewurschtel, die Daten aus der lokalen Temporärtabelle werden in eine globale (verknüpfte) Tabelle übertragen.

Ein Administrator prüft im dritten Schritt welche Daten tatsächlich übernommen werden und welche nicht. Dies geschieht über eine ähnliche Maske wie die der Anwender. Die zu übernehmenden Datensätze werden jedenfalls aus der globalen Relation in die eigentliche Produktivumgebung übertragen.

Kurz zusammengefasst lokale Tabelle -> globale Tabelle (nicht produktiv) -> globale Tabelle (produktiv).

Es gibt für den Anwender zwei Fälle der Antragstellung: einen bestehen Datensatz zu ändern oder einen Neuen anzulegen.

Die ComboBox ist ein Hilfsmittel um zu unterscheiden, ob geändert oder neu angelegt wird. Ist ein Schlüssel vorhanden (FK aus der Cb), wird der Datensatz geändert, ist kein Schlüssel vorhanden (Kennung mit -1) wird ein neuer Datensatz angelegt.

VG

Hob

Hallo,

„Tabellengewurschtel,“ ist wohl ein treffender Ausdruck… :wink:

Die Unterscheidung ob geändert oder neuer DS, ist mit einem Ja/nein Feld einfacher zu erschlagen.

Des weiteren sind solche Tabellenkopierereien eher suboptimal.

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!

Hallo Franz,

„Tabellengewurschtel,“ ist wohl ein treffender Ausdruck… :wink:
-> eigentlich nicht

Suboptimal? Was ist denn sinnvoll?

VG

Hob