Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: ironpete am Januar 28, 2013, 18:38:30

Titel: DomWert / DLookUp
Beitrag von: ironpete am Januar 28, 2013, 18:38:30
2h Rumprobieren haben ncihts gebracht  >:(

Ich habe zwei Tabellen (ich liste nur verkürzte Inhalte)
itemNo, qty = integer
Kommentar = text

tblArtikel (itemNo, qty)
tblKommentare (itemNo, Kommentar)

In einem Formular zeige ich die tblArtikel und möchte nun noch die Spalte "Kommentar" anzeigen. In der tblKommentare sind zwar schon jede Menge itemNo, aber alle sind bisweilen ohne Kommentar. Im formular würde ich dann gerne direkt etwas in das Kommentarfeld schreiben können, sodass es in der tblKommentare gespeichert wird. Beim erneuten Öffnen des Formulars, würde ich dann die bisherigen Kommentare sehen, diese ändern oder fehlende ergänzen können.

Ich habe also in der Entwurfsansicht noch ein Textfeld hinzugefügt und folgende zwei Versuche unternommen:

Zunächst als Steuerelement DomWert:
DomWert = ("[Kommentar]"; "tblKommentare"; "[itemNo] = itemNo")
hier bekommt jedes Kommentarfeld denselben Kommentar zugewiesen. (Ich habe für ein paar itemNo Testkommentare eingetragen.)

DomWert = ("[Kommentar]"; "tblKommentare"; "[itemNo] ='" & [itemNo] "'")
Hier kommt #Name? - aber es ist ja auch kein Textfeld


Danach als Ereignisprozedur AfterUpdate()
Private Sub Kommentar_BeforeUpdate()
Me!Kommentar = DLookup("[Kommentar]", "tblKommentare", "[itemNo] =  & Me![itemNo]")
End Sub
Hier kann ich  zwar was direkt in das Kommentarfeld schreiben, aber das wird dann sofort für alle übernommen und  dann kommt eine Fehlermeldung.
KLaufzeitfehler 3075
Syntax error (missing operator) in query expression '[itemNo] =  & Me![itemNo]'.


Wo sind meine Denkfehler?
Titel: Re: DomWert / DLookUp
Beitrag von: MzKlMu am Januar 28, 2013, 18:52:45
Hallo,
ZitatWo sind meine Denkfehler?
Überall.  ;D
Dlookup ist hier völlig fehl am Platz.
Erstelle eine Abfrage, nimm beide Tabellen mit auf und stelle über itemNo eine Beziehung her.
Dann hast Du alle Felder aus beiden Tabellen zur Anzeige, da muss man nichts programmieren.

Die Beziehung sollte bereits im Beziehungsfenster angelegt werden. Als 1:1 Beziehung. Und da stellt sich auch die Frage, warum sind das überhaupt 2 Tabellen?
Titel: Re: DomWert / DLookUp
Beitrag von: ironpete am Januar 29, 2013, 07:35:16
ok..

ganz so einfach geht es leider nicht.

Die tblArtikel wird jeden Tag per Anfügeabfrage erweitert inkl. Datumsspalte, ist quasi eine LOG Tabelle. D.h. die itemNo kommen sehr häufig vor, qty ändert sich täglich. Auf diese tblArtikel gibt es ein Formular, das die Tabelle per Kalenderfunktion nach gewünschtem Datum ausliest. Im Kalender kann man VON/BIS auswählen und dann wird die Veränderung der qty im gewünschten Zeitraum berechnet.

Ich wollte nun gerne noch ein Kommetarfeld hinzufügen, das ich im Formular sehe und bearbeiten kann. Die Kommentare möchte ich in einer seperaten Tabelle ablegen, damit ich diese pro itemNo auslesen kann.

Wie sollte ich das "konstruieren"? Unterformular fällt mir noch ein. Ich habe noch recht wenig Erfahrung mit access und kenne nicht alle Möglichkeiten. Kommt alles aus der Not dazu...
Titel: Re: DomWert / DLookUp
Beitrag von: MzKlMu am Januar 29, 2013, 07:45:27
Hallo,
doch, so einfach ist es.
Schon versucht?
Titel: Re: DomWert / DLookUp
Beitrag von: ironpete am Februar 01, 2013, 17:12:20
Hat geklappt, wunderbar! Danke :)