Neuigkeiten:

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

Mobiles Hauptmenü

Methode requery von objekt_Subform is nislukt

Begonnen von Jonny, Juni 10, 2014, 15:47:57

⏪ vorheriges - nächstes ⏩

Jonny

Hallo,
nicht wundern über den Titel.
Ich habe folgende Routoine:
Private Sub Beschreibung_GotFocus()
    On Error GoTo Fehler
    Dim PersoenlichVorhanden As Long, SqlSel As String

    Forms!AbteilungPersonHFO!PersoenlichUFO.Requery
    If IsNull(Me!ID) Then
        PersoenlichVorhanden = 0
    Else
        PersoenlichVorhanden = Nz(DCount("ID", "Persoenlich", "AbteilungID = " & Me!ID), 0)
        If PersoenlichVorhanden = 0 Then
            Forms!AbteilungPersonHFO!PersoenlichUFO.Visible = False
        Else
            Forms!AbteilungPersonHFO!PersoenlichUFO.Visible = True
        End If
    End If
    SqlSel = "SELECT Persoenlich.*, Persoenlich.AbteilungID FROM Persoenlich WHERE Persoenlich.AbteilungID = " & Me![ID] & ";"
    Forms![AbteilungPersonHFO]![PersoenlichUFO].Form.RecordSource = SqlSel
    Forms![AbteilungPersonHFO]![PersoenlichUFO].Form.AllowAdditions = False
Ende:
    Exit Sub
Fehler:
    If Err = 2427 Then
        MsgBox ("No Data")
    Else
        MsgBox ("No 46 " & Err & " " & Err.Description)
    End If
    Resume Ende
   
End Sub
Die DB, Acc 2007, läuft hier in Deutschland ohne Meldung und in den Niederlanden mit der o.g. Meldung.
Ist ein Hauptformular mit zwei Unterformulare.
Hat da jemand eine Idee warum?
Gern auch andere Vorschläge wie ich es machen kann.

Gruß
Johann

MaggieMay

#1
Hallo,

du musst das Unterformular(-Objekt) aktualisieren und nicht das Unterformular-Steuerelement.
So sollte es klappen:Forms!AbteilungPersonHFO!PersoenlichUFO[color=blue][b].Form[/b][/color].Requery

Aber es gibt noch einiges andere zu bemerken:
- findet der Code im Formular "AbteilungPersonHFO" statt, solltest du "ME" verwenden
- das Requery ist überflüssig, wenn anschließend das Ufo ausgeblendet wird oder eine neue Datenquelle zugewiesen bekommt
- die Zuweisung des SQL-Strings ist jedoch wiederum überflüssig, wenn das Ufo über die ID mit dem Hfo verknüpft wird
- desweiteren solltest du auf die Mehrfachnennung von Datenfeldern verzichten:Select Persoenlich.*[color=red], Persoenlich.AbteilungID[/color]
Freundliche Grüße
MaggieMay

Jonny

Hallo Maggie-May
danke für die Antwort.
Natürlich hast du Recht das requery ist überflüssig.
Die Mehrfachnennung habe ich weggenommen.
Eine Verknüpfung vom Haupt- und Unterform ist nicht möglich.
Es wird im Form AbteilungPersonUFO (ist tabellearisch) eine Abteilung angeklickt.
Im Form PersoenlichUFO (auch tabellearisch) sollen alle DS angezeigt werden die die gleiche Abteilungs-ID haben.

Komisch ist das es bei mir läuft und in den Niederlanden nicht.
Ich schicke es mal mit den Änderungen rüber und melde ich dann.

PS: sollte noch jemand eine Idee haben ist diese immer willkommen.

Gruß

Johann

MaggieMay

ZitatEine Verknüpfung vom Haupt- und Unterform ist nicht möglich.
Was beinhaltet denn das Hauptformular? Möglicherweise kann man dort ein Textfeld unterbringen, das seinen Inhalt aus "AbteilungPersonUFO!Abteilung" bezieht und "PersoenlichUFO" darüber verknüpfen. Praktisch ist das möglich, auch wenn der Verknüpfungsassistent das nicht unterstützt, dann muss man's eben manuell eintragen.
Freundliche Grüße
MaggieMay

Jonny

Hallo,
jeder Mitarbeiter muss sich einloggen.
Durch das Login kenne ich die Sparte.
Die Sparte ist im HFO und in AbteilungPersonUFO sind die Abteilungen die zur Sparte gehören. Abteilung PK AbteilungsID, Sparte FK Abteilung
Im zweiten UFO werden die Persönlichen Daten des Mitarbeiters dargestellt.
Diese sind über den PK AbteilungsID und FK MaAbteilung zu finden.
Ideal wäre in Tab-Ufo im Tab-Ufo. Geht aber soweit ich Acc kenne nicht mehr.
(bis Acc 95 konnte man das mit einem Trick noch erreichen).

Gruß

Johann

MaggieMay

Und was sagst du zu meinem Vorschlag, die Aktualisierung des Ufo zu automatisieren?
Freundliche Grüße
MaggieMay

Jonny

Hallo
noch nichts. Ich warte noch auf das Ergebnis vom Test.

Gruß

Johann

Jonny

Hallo
ist funktioniert jetzt.
Deshalb baue ich das Form nicht nochmal um.
Vielen Dank für deine Hilfe

Gruß
Johann

Jonny