Hallo meine Access-Profis
Ich brauche eure Hilfe.
Ich habe ein Formular mit einem UF0. (Verkaufsauftrag mit Positionen). Das UFO ist in der Datenblattansicht. In diesem UFO werden nur die notwendigen Felder angezeigt. Wenn ich nun ein Datensatz markiere, kann ich mit deiner Schaltfläche ein neues Formular öffnen in dem alle Felder angezeigt werden.
Dieses Zusatzformular wird bei Artikeln automatisch geöffnet die einen entsprechenden Flag im Artikelstamm haben. So weit funktioniert alles.
Wenn ich über die Schaltfläche gehe, wird das Formular geöffnet und der Datensatz angezeigt. Wenn ich einen Datensatz im UFO auswähle mit dem Flag im Artikelstamm wird das Zusatzformular geöffnet, der Datensatz jedoch nicht angezeigt. Ich muss zuerst manuell das Formular aktualisieren, danach wird der Datensatz angezeigt. Wie kann ich dieses Formular automatisch akualiseren.
Hier der Script mit der Schaltfläche:
Private Sub batAuftr_Detail_Click()
Call Navigation.OeffnenAuftrDetail(Me!F_AuftrPos!AuftrPos_ID)
End Sub
Sub OeffnenAuftrDetail(AuftrPosID)
Dim Formular
Formular = "F_AuftrPosZus"
If IsNull(AuftrPosID) Then
DoCmd.OpenForm Formular, acNormal
Else
DoCmd.OpenForm Formular, acNormal, , "[AuftrPos_ID] = " & AuftrPosID
End If
End Sub
Hier der Script für einen Datensatz mit einem Flag, ich habe ihn an das Kombifeld ArtikelNummer suchen angehängt, da ich kein anderes Feld gefunden habe das sich dafür geeignet hätte.:
Private Sub suchAuftrPos_ArtID_AfterUpdate()
Call ArtikelUpdate
End Sub
Sub ArtikelUpdate()
' Schreibe Werte aus dem Artikelstamm auf die Auftragspositionen
Dim Formular
AuftrPos_VKPreis = Art_VKPreis
AuftrPos_EKPreis = Art_EKPreis
AuftrPos_EKTyp = Art_EKTyp
suchAuftrPos_LiefID = Art_LiefID
suchAuftrPos_KontoNr = Art_Konto
Formular = "F_AuftrPosZus"
Select Case AuftrPos_EKTyp
Case "1"
AuftrPos_Marge = AuftrPos_VKPreis / 100 * Art_Marge - AuftrPos_EKPreis
Case "2"
AuftrPos_Marge = AuftrPos_VKPreis - AuftrPos_EKPreis
Case "3"
AuftrPos_Marge = AuftrPos_VKPreis - AuftrPos_EKPreis
End Select
If Art_Divers = True Then
Call Navigation.OeffnenAuftrDetail(AuftrPos_ID)
End If
Me.Requery
End Sub
Ich hoffe ihr könnt mir helfen.
Gruss Daniel
Hallo,
vermutlich:
.
.
.
End Select
Me.Refresh 'oder Me.Dirty=false
If Art_Divers = True Then
.
.