Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

ID von Autowert bei neuem Datensatz ermitteln?

Begonnen von -Tom-, Dezember 23, 2013, 16:47:46

⏪ vorheriges - nächstes ⏩

-Tom-

Hallo,

Ich erstelle in meiner Anwendung mit "DoCmd.GoToRecord , , acNewRec" einen neuen Datensatz.
Wie kann ich jetzt die Autowert-ID des neuen Datensatzes ermitteln?

-Tom-
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

MzKlMu

Hallo,
zu was brauchst Du den, der ist doch relativ unbedeutend und wird im Regelfall auch gar nicht angezeigt.
Außerdem kannst Du den doch direkt auslesen, sobald ein Wert eines Feldes des neuen DS eingetragen ist. Vorher steht er ohnehin nicht zur Verfügung.
Gruß Klaus

-Tom-

Zitat von: MzKlMu am Dezember 23, 2013, 16:59:02
zu was brauchst Du den

Ich habe eine Tabelle "tbl_MotorGrunddaten" diese ist Verknüpft mit der Tabelle "tbl_MotorMechdaten". Jetzt habe ich noch die Tabelle "tbl_Getriebe" diese ist mit der Tabelle "tbl_MotorMechdaten" verknüpft.

Bevor nun Daten in die Tabelle "tbl_Getriebe" eingetragen werden können, möchte ich prüfen ob zu der ID aus der Tabelle "tbl_MotorGrunddaten" schon ein Eintrag in der Tabelle "tbl_MotorMechdaten" existiert.
Das klappt soweit auch wenn ich einen Datensatz aufrufe, nur nach dem ein neuer Datensatz angelegt wurde eben nicht da ich die ID nicht weiß.

Zitat von: MzKlMu am Dezember 23, 2013, 16:59:02
Außerdem kannst Du den doch direkt auslesen, sobald ein Wert eines Feldes des neuen DS eingetragen ist.

Und wie mach ich das?

-Tom-
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

MzKlMu

Hallo,
wenn Du doch auf dem neuen Datensatz stehst und ein Wert eingetragen ist, kannst Du doch genau wie mit einem bestehenden Datensatz die ID auslesen und verwenden.
Irgendwie verstehe ich gerade Dein Problem nicht.
Gruß Klaus

-Tom-

Zitat von: MzKlMu am Dezember 23, 2013, 17:33:15
wenn Du doch auf dem neuen Datensatz stehst und ein Wert eingetragen ist, kannst Du doch genau wie mit einem bestehenden Datensatz die ID auslesen und verwenden.

Den Wert einen bestehenden Datensatzes erhalte ich durch auswahl aus einer Combobox.

Habe es jetzt so gelöst:


"SELECT tbl_MotorGrunddaten.MotorGrunddatenID FROM tbl_MotorGrunddaten order by  MotorGrunddatenID DESC"


-Tom-
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

database

Hallo,

ZitatDen Wert einen bestehenden Datensatzes erhalte ich durch auswahl aus einer Combobox.
??? ??? Bitte was willst du mit der CombiBox?
??? ???
Zitat von: MzKlMu am Dezember 23, 2013, 17:33:15
wenn Du doch auf dem neuen Datensatz stehst und ein Wert eingetragen ist, kannst Du ...

Sag, warum zeigst du nicht einfach das ID-Feld am Formular an, dann hast du deine ID immer 'bei der Hand' - auch bei neuen Datensätzen - der AutoWert wird erstellt, sobald du einen Wert in ein Datensatzfeld eingibst
Klaus hat dir dazu ja in seiner vorigen Antwort schon den Hinweis gegeben!?


-Tom-

Zitat von: database am Dezember 25, 2013, 14:45:52
??? ??? Bitte was willst du mit der CombiBox?
??? ???

Über eine ComboBox wähle ich z.B. die Motornummer aus, danach wird mir zu dieser Motornummer der ganze Datensatz angezeigt.

Zitat von: MzKlMu am Dezember 23, 2013, 17:33:15
wenn Du doch auf dem neuen Datensatz stehst und ein Wert eingetragen ist, kannst Du ...

Sag, warum zeigst du nicht einfach das ID-Feld am Formular an, dann hast du deine ID immer 'bei der Hand' - auch bei neuen Datensätzen -...

Ich brauche den Wert nur im Programm nicht als sichtbaren Wert.

Aber wie gesagt mit dem oben genannten Befehl habe ich das ganze lösen können,

Tom
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

MzKlMu

Hallo,
ZitatIch brauche den Wert nur im Programm nicht als sichtbaren Wert.
es kann trotzdem viel einfacher sein, das Feld im Formular anzuzeigen. Du kannst es ja im Formular unsichtbar machen, kannst dann aber trotzdem auf dessen Wert zugreifen.

Prosit Neujahr allerseits.
Gruß Klaus

-Tom-

Zitat von: MzKlMu am Januar 01, 2014, 11:15:49
es kann trotzdem viel einfacher sein, das Feld im Formular anzuzeigen. Du kannst es ja im Formular unsichtbar machen, kannst dann aber trotzdem auf dessen Wert zugreifen.

Wie kann ich jetzt auf diesen Wert zugreifen?
Habe ein Hfo mit Ufo. Im Ufo ist der Wert platziert.
Jetzt möchte ich aus einem Ufo von dem o.g. Ufo auf diesen Wert zugreifen.
Aber ich erhalte immer "Methode oder Datenobjekt nicht gefunden"

Mein Versuch sieht so aus:
Me.frm01MotorErfassung!frm01MotorErfassungUfoMechDat!txt_MotorMechdatenID

Tom
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

database

Hallo,

mal langsam ...
du befindest dich im UFo - richtig?
du möchtest den ID-Wert des neuen Datensatzes im HFo auslesen - richtig?

oder

du hast ein HFo mit einem UFo(1) und dieses UFo(1) hat ein weiteres UFo(2)
Wo steht das Feld, aus dem du den Wert beziehen willst? HFo, UFo(1) oder UFo(2) und wo stehst du mit dem Cursor?

DF6GL

Hallo,

der ganze Thread, bzw. Dein Vorhaben ist ziemlich verworren...

ZitatHabe ein Hfo mit Ufo. Im Ufo ist der Wert platziert.
Jetzt möchte ich aus einem Ufo von dem o.g. Ufo auf diesen Wert zugreifen.

Es gibt also ein weiteres UFO (mit HFO) ?


Wozu diese "durch die Brust ins Auge" -Konstellation?

Wo steht denn überhaupt Dein "Versuch" ?


Me.frm01MotorErfassung!frm01MotorErfassungUfoMechDat!txt_MotorMechdatenID


wenn "frm01MotorErfassungUfoMechDat" der Name des UFO-Steuerelementes ist, das sich im akt. Formular befindet, in dem dieser Ausdruck (in VBA-Code) benutzt wird.

Alternativ:

Forms!frm01MotorErfassung!frm01MotorErfassungUfoMechDat!txt_MotorMechdatenID





-Tom-

#11
Es gibt ein Hfo MotorErfassung, in diesem gibt es ein Ufo MotorErfassungUfoMechDat mit zwei weiteren Ufos ( MotorErfassungUfoMechDatUfoGetr und MotorErfassungUfoMechDatUfoGetrUfoLg).
Ich möchte jetzt aus dem Ufo MotorErfassungUfoMechDatUfoGetrUfoLg auf das Feld txt_MotoMechdatenID in MotorErfassungUfoMechDat zugreifen.

EDIT:

Zitat von: DF6GL am Januar 03, 2014, 14:51:17
Alternativ:

Forms!frm01MotorErfassung!frm01MotorErfassungUfoMechDat!txt_MotorMechdatenID


Damit funktioniert es!

Danke

Tom
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

database

#12
Hallo,

demnach hätte es auch mit  Me.Parent!txt_MotorMechdatenID funktioniert.

sieh mal da ...  und den dort zitierten Link

http://www.donkarl.com?FAQ4.2

-Tom-

Zitat von: database am Januar 03, 2014, 15:11:28
demnach hätte es auch mit  Me.Parent!txt_MotorMechdatenID funktioniert.

Hatte ich probiert, hat aber nicht funktioniert.

Tom
Computerprobleme??? -> http//www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen

database

Hi,

wenn es nun aber nur damit geht ...

Forms!frm01MotorErfassung!frm01MotorErfassungUfoMechDat!txt_MotorMechdatenID

dann stimmt das mit der Konstellation, die ich angenommen hatte ...

"du hast ein HFo mit einem UFo(1) und dieses UFo(1) hat ein weiteres UFo(2)
Wo steht das Feld, aus dem du den Wert beziehen willst? HFo, UFo(1) oder UFo(2) und wo stehst du mit dem Cursor?"

... nicht überein.

Was aber nicht weiter tragisch ist, da es nun ja eine funktionierende Lösung gibt.
Trotzdem möchte ich dich nochmals darauf hinweisen, den Link auf donkarl.com zu sichten und den dort zitierten Link ebenfalls anzuschauen.
Dort findest du nämlich genau dein Problem aufgezeichnet - wenn die Konstellationen der HaFo / UFo - Konstrukte so aufgebaut sind, dass sie von einander abhängig sind - wie es in der Regel ja auch sein sollte.

LG