Artikelsuche in Schreibender Liste zugänglich machen

eMueller

Neues Mitglied
Guten Tag zusammen,

ich probiere jetzt schon seit längerer Zeit erfolglos, folgendes im AppDesigner umzusetzen:

Gewollt ist eine schreibende Liste, welche zur Grundlage eine eigene Tabelle besitzt. Diese Tabelle beinhaltet Artikelnummer, Auspraegungs-ID, ein Startdatum und ein Enddatum.

Der Benutzer soll die Liste so bedienen können, dass er hier die Artikel und Auspraegungs-ID wie in der Belegerfassung (am besten auch mit der gleichen Suche/Liste) auswählen kann und dann eben das Datum von Hand eintragen kann. Dieses Datum und die Artikelnummer sowie Auspraegungs-ID des ausgewählten Artikels sollen dann in die oben genannte eigene Tabelle eingetragen werden.


Die Umsetzung war so weit von mir wie folgt angedacht:

Ich habe hier eine Datenquelle und darauf basierende Liste angelegt und mit dem Assistenten "Schreibzugriff ermöglichen" den zugehörigen Datensatz und das Edit-Element angelegt.

Im Datensatz habe ich für die Artikelnummer und Auspraegungs-ID die Datenklasse "clsArtikelVarianten" hinterlegt.

Was ich erhalte ist das Kontextmenü der Klasse "clsArtikelVarianten" bei Artikelnummer und AuspraegungID getrennt. Die Lupe zur Suche erscheint lediglich bei der AuspraegungID; hier taucht die gewünschte Liste von Artikeln zur Auswahl auf, doch die Auswahl eines Artikels befüllt lediglich das "AuspraegungID"-Feld mit der der Artikelnummer des gewählten Datensatzes.

Meine Frage ist nun, ob jemand, der eine bessere Kenntnis des AppDesigners vorweist, sehen kann, wo ich eventuell einen Fehler gemacht haben könnte oder ob mein Ansatz selbst eventuell einen Denkfehler beinhalten könnte.

Danke für's Lesen und hoffentlich auch für's Antworten.

Mit freundlichen Grüßen,
eMueller
 
Der Standard verwendet keine schreibende Listen, die Definition dürfte aber identisch sein:
Datentyp im Feld Artikelnummer= Schlüssel 1 einer Datenklasse
Datentyp im AuspreagungId = Schlüssel 2 einer Datenklasse, Verweis auf Schlüsselfeld Artikelnummer
Das Feld AuspraegungID sollte man verstecken, da es innerhalb der Applikation nicht angezeigt wird.
 
Ich danke Ihnen für die Information! Habe das jetzt diesbezüglich angepasst. Es besteht allerdings weiterhin das Problem, dass im Datensatz unter dem Feld "Artikelnummer" leider nicht das Lupensymbol erscheint und deshalb eine Suche nicht möglich ist. Was könnte ein möglicher Grund hierfür sein?
 
Sind die von Ihnen aufgezählten Felder tatsächlich alle Felder?
Könnten Sie bitte den Aufbau der Tabelle beschreiben?
 
Die Tabelle besitzt Artikelnummer, AuspraegungID, ein "Von"-Datum und ein "Bis"-Datum.

Die ersten beiden Felder sollen befüllt werden, indem man über die Suche einen Artikel mit Ausprägung auswählt (analog zu der Suche zum Hinzufügen eines Artikels zu einer Position in der Belegerfassung), während die beiden Datumsangaben von Hand ausgefüllt werden sollen.

Zu diesem Zweck habe ich im Datensatz für die Artikelnummer und die AuspraegungID die Klasse "clsArtikelVarianten" aus dem Standard hinterlegt.
 
Dann haben Sie eine normale 1:N-Beziehung und Artikelnummer und AuspraegungId sind der Key. Es wird keine Suchfunktion auf ein Keyfeld zur Verfügung gestellt. Sie können eine 1:N-Beziehung nicht als "Standalone"-Stammdatendialog definieren.
 
Ich hatte hier wohl einen Denkfehler. Nun habe ich die Tabelle noch einmal neu entworfen und ein ID-Feld als Schlüssel eingebaut.

Datentyp im Feld Artikelnummer= Schlüssel 1 einer Datenklasse
Datentyp im AuspreagungId = Schlüssel 2 einer Datenklasse, Verweis auf Schlüsselfeld Artikelnummer

Diesen Ratschlag habe ich dabei erneut befolgt.

Die Suche funktioniert nun, wenn ich allerdings einen Artikel auswähle, erhalte ich den Fehler "Keine Eingabe im Pflichtfeld - zu Feld AuspraegungID". Dieses Feld wird mir aber natürlich wegen der obigen Einstellung nicht angezeigt und sollte auch automatisch befüllt werden, oder?
 
Als (einziger) Primary Key, Integer und automatisch hochzählend. Diese Tabelle habe ich dann mithilfe des Assistenten als Datenquelle importiert.
 
Hier habe ich keinen Schreibschutz. Wie gesagt, die Fehlermeldung beklagt, dass ein Wert im Feld "AuspraegungID" fehlt, doch auch hier ist kein Schreibschutz vorhanden.
 
Ich habe folgende Änderungen vorgenommen:
Datensatz
Primärschlüsseltyp = Automatisch hochgezählt
Datensatzfeld
Artikelnummer, Datenklasse auf clsArtikelVarianten.Sage.System geändert
AuspraegungID, Datenklasse auf clsArtikelVarianten.Sage.System geändert
-> Datensatz lässt sich speichern

Ich weiß nicht, ob Sie tatsächlich eine eigene Datenklasse verwenden müssen. Sollte dies der Fall sein, dann müssten Sie auch einen Eintrag zur Formatierung in KHKMandanten mit Ihrer PartnerID eintragen.
 
Zurück
Oben