Hallo zusammen,
ich habe ein Hauptformular, in dem ich ein Projekt auswähle, in einem der Unterformulare sehe ich dann die hierfür bereits angelegten Aufgaben; per Doppelklick auf einen Datensatz möchte ich nun ein Pop-up Fenster öffnen, in dem die unterschiedlichen Statusmeldungen zu dieser Aufgabe angezeigt werden. die Verbindung stellt eine ID dar (Feldname im Unterformular: ID, Feldname im Pop-up: A/D/S-ID)
Habe bereits vergeblicherweise folgenden Code ausprobiert
Private Sub Remark_DblClick(Cancel As Integer)
DoCmd.OpenForm "[Pop-up]", , , "ID = " & [A/D/S-ID]
End Sub
Bekomme aber nur die Meldung "Sie haben als Einstellung der Ereignisseigenschaft den Ausdruck beim Doppelklick eigegeben. Dieser Ausdruck hat einen Fehler verursacht: Objekt oder Klasse unterstützt diese Ereignismenge nicht."
Habe schon mal irgendwo gelesen, dass es evtl. an der Eigenschaft "Daten eingeben" liegen kann, doch wenn ich diese auf Ja stelle, dann aktualisiert sich mein Unterformular gar nicht mehr...
Lieben Dank für eure Hilfe
Teufelchen
Hallo,
Ich gehe davon aus das dein Formular nicht [Pop-up] heist. Die eckigen Klammern werden um Feldname geschrieben.
wahrscheinlich heist dein Formular Pop-up, was allerdings nicht unbedingt ein sprechender Name ist.
noch zwei Sachen
1. Dein Feldname ist voll daneben (keine Rechenoperande +-*/ nehmen.
2. Daten eingeben wird dann gesetzt wenn mann nur neue Daten erfassen möchte.
Die vorher eingegebenen Daten sind nicht sichtbar.
Gruß
Johann
Hallo Johann,
ist ja schön, dass du dich gemeldet hast, nur bringt mich dein Post nicht wirklich weiter.
Nein, mein Fromular heißt nicht Pop-up, ich wollte damit nur meinen Code verdeutlichen.
Hoffe, dass mir noch jemand helfen kann, bei der Suche, warum das Öffnen des Pop-ups nicht funktioniert...
Lieben Gruß
Teufelchen
Hallo Teufelchen,
na da bringst du ja auch einen dazu Fehler zu suchen wo keine sind.
hier ein Beispiel:
Private Sub Feld1_DblClick(Cancel As Integer)
DoCmd.OpenForm "Tabelle2", acNormal, , "feld1 = '" & Me!Feld1 & "'"
End Sub
getestet unter ACC 2003
Tabelle2 = Formularname mit Einstellung POP = ja
Feld1 = Stringfeld in der Datenherkunft für Formular Tabelle2
me!Feld1 = Stringfeld auf dem Herkunftsformular
Gruß
Johann
Hallo,
@Johann
also wenn ID Felder da sind, würde ich auf keinen Fall mit den Strings arbeiten.
@Teufelchen
ZitatNein, mein Fromular heißt nicht Pop-up, ich wollte damit nur meinen Code verdeutlichen.
Damit hast Du es aber eher verundeutlichst. Warum nimmst Du für das Beispiel nicht den richtigen Namen? Sehr irreführend.
Der Code sollte funktionieren, wenn das Formular in den Eigenschaften auf Popup eingestellt ist. Zur Laufzeit kann das meines Wissens nicht eingestellt werden.
Sind die IDs wirklich nummerisch?
Hallo MzKlMu,
natürlich sollten das Schlüsselfelder von Typ Zahl sein.
Aber da ich am eigentlichen Code von Teufelchen keinen Fehler feststellen konnte
bin ich auf den Trichter mit den Textfeldern gekommen.
Schade das sich unser Teufelchen nicht wieder gemeldet hat.
Kommt bestimmt noch.
Gruß
Johann
Hallo zusammen,
da bin ich wieder.
habe mal eben eine BeispielDB gebastelt, damit es deutlicher wird, was ich möchte.
Ausgehend vom Hauptformular "_F_ExpM_creation":
Erst wird ein Meeting ausgewählt, dann das Land und dann die Location (Projekt); daraufhin, werden alle Aufgaben im Unterformular "_F_ExpM_creation2_A/D/S_old" sichtbar.
Durch einen Doppelklick auf eine der Aufgaben, soll nun das Popup "_F_ExpM_creation2_A/D/S_status" mit den Statuseinträgen für diese eine Aufgabe.
Lieben Dank
teufelchen
[Anhang gelöscht durch Administrator]
Hallo,
das Feld [A/D/S-ID] ist im Ufo gar nicht vorhanden, also kann es auch nicht verwendet werden.
Recht hast du. Habe alle "-" entfernt. Anbei neue DB mit geändertem Code, doch immer noch der gleichen Fehlermeldung.
[Anhang gelöscht durch Administrator]
Hallo,
warum soll sich durch die Namensänderung etwas geändert haben, das Feld mit dem anderen Namen ([A/D/S_ID]) fehlt trotzdem noch.
Das liegt nicht am Namen, habe ich auch nicht gesagt.
Das Feld muss in der Datenherkunft des Ufos vorhanden sein, sonst geht es nicht.
Und eine Beispieldb ohne Beziehungen ist für jemand der helfen will so gut wie wertlos. Weil man nur mit den Beziehungen die Zusammenhänge erkennen kann. Hast Du keine Beziehungen in der Originaldb?
Und noch der Hinweis: Die / sind fast noch schlimmer als die - Zeichen. In Feld und Objektnamen sollte man auf Sonderzeichen jeder Art verzichten, am besten nur Buchstaben und den Unterstrich. Hat aber nichts mit dem aktuellen Fehler zu tun.
ok, aber das heißt, der Befehl ist falsch aufgebaut, wobei ich das auch schon aufprobiert habe.
Im Ufo heißt das Feld "ID" im Popup "A/D/S_ID"
Hallo,
warum in aller Welt richtest Du Dich nicht nach dieser Regel:
Auf Sonder- und Leerzeichen in Objektnamen DRINGEND verzichten.
und überarbeitest die GESAMTE DB entsprechend?
Diese besch... Benamsung macht Dir UND uns nur das Leben schwer und reduziert die Motivation....
Hallo DF6GL,
ja, das werde ich demnächst angehen, nur brauche ich dafür jeden Menge Zeit. Die DB wurde nicht von Anfang an von mir entwickelt, daher habe ich einige Abfragen/ Formular/ Berichte noch gar nicht angefasst...
Lieben Gruß
Teufelchen
Hallo,
ok, aber je mehr Du jetzt noch mit diesen Benamsungen herumspielst und damit unnötige Zeit für Fehlerbereinigungen verbrätst, umso mehr Zeit wirst Du hinterher brauchen, um alles umzustellen.. Effizient(er) ist die sofortige Bereinigung...
So, habe nun alle Namen abgeändert.
Anbei die "neue" Beispiel-DB. Ich hoffe, wir kommen nun dem Problem näher.
Lieben Dank
Teufelchen
[Anhang gelöscht durch Administrator]
Hallo,
naja, gut..
Ändere zusätzlich noch die Felder, die ein reserviertes Wort als Namen haben.. (Date--->) . In "_T_ExpM_Dates" ändere "ID" zu "DateID" und setze den Primärschlüssel auf dieses Feld . "Date" und "Region" erhalten einen zusammengesetzten eindeutigen Index.
Ähnliches auch in "_T_ExpM_ADS_status"
In "t_countries" fehlt der Primärschlüssel.
Dann definiere auch noch die Beziehungen zwischen den Tabellen im Beziehungsfenster... (Ich erahne jetzt nur bei "...Projects" , "..ADS" und "...Dates" einen Zusammenhang.
Und erklär nochmal genau anhand der Tabellen-/Formular- und Feldnamen Dein Problem...
Die Abfragen in der Datenherkunft der Formualre sollten nicht mit Typ 2 verknüpft sein... Benutze am Besten lediglich den Namen der Tabelle, auf der das Form basiert. Die Anzeige darin von "Stammdaten" (1-Tabellen) sollte mittels Kombifelder erledigt werden.
Grundsatz: Bevor nicht die Tabellenstruktur entspr. den Normalisierungsregeln und dieBeziehungen korrekt erstellt sind, hat es keinen Zweck, sich mit Formularen zu beschäftigen.
Hallo DF6GL,
danke für deine Geduld mit mir.
Tabelle T_All_Projects: beinhaltet alle möglichen Projekte
Tabelle t_countries: beinhaltet die Länder; jedes Projekt wird in einem Land durchgeführt
Tabelle T_RD: beinhaltet die Regionen; jedem Land ist eine Region zugeordnet
Tabelle _T_ExpM_Dates: hier stehen die Daten der einzelnen Meetings drin, an denen überhaupt neue Einträge in den anderen Tabellen erstellt werden können
Tabelle _T_ExpM_ADS: enthält alle "Aufgaben" zu den Projekten
Tabelle _T_ExpM_ADS_status: enthält Statusmeldungen zu den Aufgaben, z.B. ob die Deadline verschoben werden muss, oder bestimmte Unteraufgaben schon angeschoben worden sind
Um Aufgaben und Statusmeldungen anzulegen und zu bearbeiten, möchte ich nun ein Formular erstellen => _F_ExpM_creation
In der Kopfzeile des Formulars soll das Meetingdatum (inkl. Region), das Land und das Projekt gewählt werden.
Basierend auf der Tabellen _T_ExpM_Dates für das Datum; t_countries für das Land und T_All_Projects für das Projekt.
Im Detailbereich möchte ich dann 2 Unterformulare unterbringen:
1. Unterformular zeigt alle Aufgaben an, die in den Meetings zuvor aufgenommen wurden
=> _F_ExpM_creation2_ADS_old
Basierend auf der Tabelle _T_ExpM_ADS
per Doppelklick auf eine der Aufgaben soll das Formular _F_ExpM_creation2_ADS_status öffnen und die Statusmeldungen zu dieser einen Aufgabe anzeigen
neue Statusmeldungen sollen hier hinzugefügt werden können
Basierend auf der Tabelle _T_ExpM_ADS_status
2. Unterformular zeigt alle Aufgaben an, die in dem Meeting aufgenommen wurden; neue Aufgaben können hinzugefügt werden
Und der beschriebene Doppelklick funktioniert leider nicht.
Lieben Dank für eure Hilfe
Teufelchen
hier auch noch die angepasste DB
[Anhang gelöscht durch Administrator]
???
Alles sehr merkwürdig....
Mit Formularen in Klassenobjekten kenne ich mich nicht aus, aber bei diesen Formularen klappt ja noch nicht mal eine msgbox. Also hat es nichts mit dem Aufruf zu tun.
Grundsätzlich gestartet bekommen habe ich das Formular für den neuen Status über einen Makroaufruf. Aber gefiltert bekommen habe ich die Datensätze nicht.
???
Noch dazu schreibt man den Post um 14:00 Uhr und es wird einem 13:00 Uhr angezeigt....
Fragen über Fragen !!!
???
Leider bekomme ich beim Editieren immer eine Fehler-Meldung auf der Seite, daher ein neuer Eintrag.
Coooool ist ja, dass ich jetzt erst verstehe, dass jedes Formular ein Klassenobjekt ist..... ::)
(Aber so macht Access-lernen doch erst richtig Spaß !!!)
Noch cooooler ist, dass die Fehlermeldung die Teufelchens Datenbank auswirft unter G***le zu Forumseinträgen führt, die solche Merkwürdigkeiten nach einem Windows-Update berichten..........Dort wurde offeriert, alle Formularinhalte auszuschneiden und wieder einzufügen. Dann ging es bei einigen wieder, bei anderen nicht.......
schien irgendwie an dem Formular zu liegen... habe einfach ein neues erstellt und nun funktioniert es!