Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Walterio am August 03, 2022, 10:32:00

Titel: openform mit acFormEdit: immer auf ersten Tabellensatz Wiederholung)
Beitrag von: Walterio am August 03, 2022, 10:32:00
Hallo

(Habe fälschlicherweise diesen Post schon unter Formulare plaziert. Da keine Antwort versuche ich es hier.)

Eine Tabelle enthält die Felder "ProzessID" (kurzer Text) und "Prozessversion" (Zahl, mit Format "\V00").
Es soll ein Formular für den Satz mit ID PN31-001) und höchster Versionsnummer aufgerufen werden.
Mit   
strSQL = "ProzessID = 'PN31-001' & Prozessversion = " & _
             DMax("Prozessversion", "[MNG21-Prozesse]", "ProzessID = 'PN31-001'")
    DoCmd.OpenForm "ProzessDetails", , , strSQL, acFormEdit
(strSql ist eine Public string-Variable)
Dmax liefert die richtige Versionsnummer.

Das Formular wird zwar geöffnet, aber mit dem ersten Satz der Tabelle!

was mache ich falsch?

Danke für jede Hilfe
Walter
Titel: Re: openform mit acFormEdit: immer auf ersten Tabellensatz Wiederholung)
Beitrag von: DF6GL am August 03, 2022, 10:40:01
Hallo,

wenn das Tabellenfeld "Prozessversion"  den Datentyp TEXT aufweist, fehlen die umschließenden  Hochkommata und zusätzlich muss es AND statt "&" heißen

strSQL = "ProzessID = 'PN31-001' And Prozessversion = '" & _
             DMax("Prozessversion", "[MNG21-Prozesse]", "ProzessID = 'PN31-001'") & "'"
Titel: Re: openform mit acFormEdit: immer auf ersten Tabellensatz Wiederholung)
Beitrag von: Beaker s.a. am August 03, 2022, 11:01:35
ZitatDa keine Antwort
Warum so ungeduldig? Ich habe da inzwischen geantwortet.
Da auch die von Franz gepostete Korrektur nicht korrekt ist
edit: wohl gerade noch korrigiert
ZitatstrSQL = "ProzessID = 'PN31-001' AND  Prozessversion = '" & _
             DMax("Prozessversion", "[MNG21-Prozesse]", "ProzessID = 'PN31-001'") & "'"
für eine WhereCondition. Da braucht es dann natürlich kein
SELECT ... FROM, wie im anderen Thread geschrieben. Da hatte
ich die Kommas nicht gezählt bzw. gar nicht darauf geachtet.
Titel: Re: openform mit acFormEdit: immer auf ersten Tabellensatz Wiederholung)
Beitrag von: ebs17 am August 03, 2022, 14:20:53
Zitatwas mache ich falsch?
strSQL als Bezeichnung für einen Filter zu verwenden ist immerhin schon mal irritierend, einen Filter würde ich auch als solchen bezeichnen.

ZitatstrSQL = "ProzessID = 'PN31-001' & Prozessversion = ...
Dass man logisch per AND verkettet, nicht per &, hast Du den Vorbeiträgen sicher schon entnommen.

Zu dem weiteren: Zuerst sollte man sich informieren, welchen Datentyp das Feld Prozessversion hat und was also das DMax zurückliefert.
Titel: Re: openform mit acFormEdit: immer auf ersten Tabellensatz Wiederholung)
Beitrag von: Walterio am August 03, 2022, 14:25:44
Vor lauter Bäumen...

Ich habe das total übersehen! Danke euch allen!
Und ja, Prozessversion ist eine Zahl


Walter