Auswahlbutton für freie Werte

cRM11, Large

Hallo,
ich hänge gerade an einem „real life“-Problem und finde keinen Weg, dieses mittels cRM zu lösen:

Wir erhalten von unserem Hersteller über das Internetportal bei Bestellungen eine Nummer (nennen wir sie der Einfachheit halber Bestellnummer). Diese sollte möglichst sofort in den entsprechenden Datensatz eingepflegt werden (das ist also ein einfaches Eingabefeld).
Irgendwann (=ggf. mehrere Tage später) kommt diese Nummer über die Herstellerschnittstelle noch einmal und landet dann im Archiv.
Ohne den Zeitversatz wäre das also eine 1:1-Beziehung, mit dem Zeitversatz kann ich das so nicht implementieren.
Nun kommt es vor, dass ein Mitarbeiter diese Bestellnummer generiert und sie aus irgendwelchen Gründen nicht sofort einträgt.
Um die Suche dann zu erleichtern würde ich gerne eine Schaltfläche erstellen, die die „freien“ Bestellnummern aus dem Archiv zur Auswahl anbietet (der Filter ist einfach zu bauen) und der sich so verhält und aussieht wie die Schaltfläche für die Auswahl eines relational verknüpften Datensatzes.

Mein erster Gedanke war, eine weitere Spalte in der Tabelle anzulegen, diese 1:1 mit den Archivzeilen zu verknüpfen und über eine Folgeverknüpfung den Wert dann an das eigentliche Datenfeld weiterzugeben (das dann keine Verknüpfung braucht).
Allerdings gefällt mir diese Zusatzspalte nicht. Die gehört nicht ins Datenmodell.

Hat jemand eine bessere Idee für mich?

Vielen Dank im Voraus,
Wolfgang

Wenn die „Bestellnummern“ in einer eigenen Ansicht liegen und die „freien“ Bestellnummern über einen Filter eingegrenzt werden können, dann wäre ein Script hinter der Schaltfläche mit der SDK Methode RecordSet.DialogSelectRecord eine gute Lösung: Es kommt dann ein Dialog mit dem (per ViewConfig.CreateRecordSet erzeugten und initial bereits gefilterten) RecordSet und ermöglicht den Anwender:innen die Auswahl eines Datensatzes. Dieser Datensatz wird als Record Objekt zurückgegeben und es besteht dann wie gewohnt Zugriff auf dessen Inhalte z.B. per GetContentsValueByName et al. :slight_smile:

Mir scheint, das ist genau die Lösung, die ich benötige :))
Vielen Dank!
Wolfgang