Hallo Profis. Habe da ein für mich unerklärliches Problem. Egal ob mit Access 2003 oder 2010, das Problem ist das Gleiche und zwar:
Ich habe Tabelle 1. Darin ist der erste Feldname "Tabelle1ID", welche den Felddatentyp "AutoWert" (LongInteger) hat und den Primärschlüssel besitzt. Dann kommen noch weitere unwichtige Textfelder.
In der Tabelle 2 ist der erste Feldname "Tabelle2ID" und hat auch den Felddatentyp "Autowert" und besitzt auch den Primärschlüssel. Der nächste Feldname ist "Zahl" und hat den Felddatentyp "Zahl" (LongInteger). Dann kommen auch hier noch weitere unwichtige Textfelder.
Unter Beziehungen ist eine 1:n Beziehung von der Tabelle1 (Tabelle1ID) zu Tabelle2 (Zahl) vorhanden.
Ich habe mit dem Formularassistenten zwei Formulare zu den beiden Tabellen erstellen lassen. In dem Formular1 habe ich mit dem Assistenten einen Button erstellt, der das Formular 2 öffnet. So weit alles ok. Aber wenn ich jetzt im Formular1 (Tabelle1) einen neuen Datensatz anlege und mit dem Button zu Formular2 wechsle, wird hier beim ersten Mal zwar ein neuer Datensatz angelegt, jedoch ohne Zugehörigkeit zu Tabelle1. Lege ich in Tabelle1 einen zweiten Datensatz an und wechsle zu Formular2 wird der erste zugehörigkeitslose Datensatz angezeigt.
Warum wird im Formular2 nicht der AutoWert von Tabelle1 im Feld Zahl angezeigt?
Erstelle ich im Formular1 ein Unterformular mit Formular2, ist alles ok. Leider nützt mir hier Unterformular.
Hat jemand einen Tipp oder eine Lösung für mich? Bin über jeden Tipp dankbar.
Gruß
Peter
Moin,
eine erste Recherche weist auf ein "ernstes" Problem hin:
30.05.2013, 23:54: http://forum.chip.de/office/access-beziehung-funktioniert-formular-1736155.html
30.05.2013, 23:57: http://www.office-loesung.de/ftopic602642_0_0_asc.php
Crossposting führt eher zu weniger Antworten. >:(
Harald
Hallo,
mal abgesehen vom Crossposting ... >:(
Du öffnest 2 unterschiedliche Formulare, die jeweils auf einer anderen Tabelle aufsetzen.
ZitatWarum wird im Formular2 nicht der AutoWert von Tabelle1 im Feld Zahl angezeigt?
Wie soll denn deiner Meinung nach Formular 2 'wissen', dass du in Formular 1 einen Datensatz erstellt hast, der nun zu Form 2 in Beziehung steht?
Alleine das Erstellen eines Primärdatensatzes bedingt nicht, dass dessen PK in der Detailtabelle bekannt ist oder eingetragen wird.
Wenn das auf die Art, wie du sie hier zu realisieren gedenkst, funktionieren soll, musst du den PK aus Form 1 auslesen und als eine Art '~OpenArg~' an Form 2 übergeben.
Von Form1 aus kann dann der Eintrag des Schlüssels ins FK-Feld z.B. so automatisiert werden ... Forms!Formular2!DeinFeld = Me!DeinPKFeld
Warum du dich gegen eine HaFo / UFo Lösung wehrst ist mir eigentlich schleierhaft, wobei ich schon darauf hinweisen möchte,
in einer 1:n Datenbeziehung genau diese Variante die Richtige wäre! Ich fürchte, dass du mit der anderen Idee eher ein Datenchaos provozierst.
Hi,
Die Antwort auf Deine Frage in einem der anderen Foren lautet:
Ja,
das ist mit einem Unterformular möglich, ;D
indem man z.B. die Eigenschaft visible nutzt.
Harald
Hi,
damit das obige JA etwas anschaulicher wird ;) und
damit Du vielleicht auch von Diesem FORUM überzeugt wirst ;D,
anbei ein Beispiel.
Im Formular gibt es ein Unterformular, das durch einen Button sichtbar oder unsichtbar gemacht werden kann.
Beim Button ist als Code hinterlegt:
Harald
PS habe den Anhang, der ein Beispiel enthält gelöscht, da im anderen Forum munter weiter diskutiert wird.
Hi,
....GELÖSCHT...
Oh Mann ... Antworten beendet
http://forum.chip.de/office/access-beziehung-funktioniert-formular-1736155.html (http://forum.chip.de/office/access-beziehung-funktioniert-formular-1736155.html)
Hallo,
habe aufgrund der Antworten gegoogelt und festgestellt, dass man das Unterformular aus- bzw. einblenden kann. Wenn ich im Hauptformular das Unterformular einbinde, soll man lt. www dieses in den Eigenschaften als sichtbar nein einstellen. Diese geht jedoch nur beim Formularkopf bzw. Detailbereich nicht beim ganzen Formular (da wo man auch die Datensatzquelle eingibt). Das Unterformular wird auch ausgeblendet Wenn ich jetzt im Hauptformular auf den Button klicke, um das Unterformular sichtbar werden zu lassen, klappt dieses auch. Jedoch möchte ich im Unterformular sagen, dass dieses geschlossen werden soll. Dieses klappt nicht. Ich muss im Hauptformular einen Button haben und auf diesen klicken, damit das Unterformular geschlossen werden soll. Gibt es eine andere Lösung?
Durch mein googeln habe ich erfahren, dass man das Unterformular als PopUp kreieren kann. So möchte ich es haben. Jetzt kommt aber das alte Problem, dass der Autowert vom Hauptformular nicht in das Unterformular übernommen wird. Was mache ich hier denn falsch?
Bin auch hier für jeden Tipp dankbar.
Peter
Hi,
Zitat von: pp17 am Juni 01, 2013, 00:18:49
habe aufgrund der Antworten gegoogelt und festgestellt, dass man das Unterformular aus- bzw. einblenden kann.
Diese Arbeit hättest Du Dir ersparen können, wenn Du Dir die Antwort 4 durchgelesen hättest und den dort bis eben befindlichen Anhang geladen hättest.
Da Du im andern Forum munter weiter diskutierst und die identischen Phrasen schreibst wie hier, ziehe ich mich aus der Diskussion zurück, da ich das wiederholte Crossposting nicht akzeptiere.
Zum Thema Crosposting siehe auch: http://www.access-o-mania.de/index.php?ind=community&op=netiquette
Dort ist zu lesen: "Crossposting, d.h. das Posten der gleichen Frage in mehreren Foren zur gleichen Zeit, ist unerwünscht."
Harald
Hallo Harald,
...Hmmmm ... 'Beratungsresistenz' ... ist auch eine Tugend ;) :D ::)
Moin Peter,
... wie man sieht (und in meiner ersten Antwort schon erwähnt) ist diese Tugend aber eher hinderlich. ;D
Harald
Hi,
dass Profis wie ihr Zeit habt in anderen Foren nach den gleichen Einträgen zu suchen hätte ich nicht gedacht. Dass diese dann so eingeschnappt sind und dann Beispieldateien wieder löschen, halte ich für kindisch. Sicherlich kann ich verstehen, dass man ärgerlich ist, wenn man seine Freizeit opfert und dann der Hilfesuchende eine andere Antwort aus einem anderen Forum als hilfreicher annimmt.
Aber habt Ihr Euch schon mal in die andere Hilfesuchende Person hinein versetzt? Wenn man keine Crossposting macht, fragt man im ersten Forum an, bekommt dann leider nicht die Lösung und diskutiert weiter und weiter. Ist keine Lösung zustande gekommen, fragt man im zweiten Forum an usw. usw. Da es sich meistens nur um einen kleinen Fehler handelt, hängt man dann mit der Arbeit im schlimmsten Fall 1 bis 2 Wochen fest. Macht man Crossposting verkürzt man die Zeit. Meistens erklärt der eine die Lösung so, dass man nicht weiß wie umgesetzt werden soll und der andere so, dass man sie sofort versteht.
Frage und Bitte an bahasu: Einerseits willst Du mich für dieses Forum überzeugen und stellst mir freundlicherweise eine Datei hinein, andererseits bist Du beleidigt und löscht diese wieder. Was soll ich jetzt von diesem Forum halten? Würde mich freuen wenn Du Deine Meinung wieder änderst. Werde dann künftig vom Crossposting absehen und dann halt hoffen, dass die richtigen und einfachen Lösungen sofort kommen.
Peter
Hi,
ok, neuer Versuch.
Jetzt mit automatischem Ausblenden beim Wechsel vom UFO zum Hauptformular. Wird über ein Zeitereignis gesteuert.
Harald
[Anhang gelöscht durch Administrator]
Hallo Harald,
vielen Dank für die Datei. Ja so im Prinzip hatte ich es mir gedacht. Besteht die Möglichkeit den Button statt im Formularkopf im Detailbereich zu plazieren und kann man auch einen Button zum Deaktivieren im Unterformular kreieren?
Hättest Du evtl. auch eine Musterdatei in der das Unterformular ein PopUp Fenster ist?
Ich hänge mal eine Zip-Datei dran.
In dieser Datei (HFuUF2_mit_PopUp) soll bei Aufruf des Hauptformulars das Unterformular ausgeblendet sein. Wenn man dann auf den Button "Unterformular öffnen" klickt, soll das Unterformular als PopUp_Fenster angezeigt werden und man soll dann dort Daten eingeben können. Dann möchte ich im PopUp-Unterformular -wie auch immer- dieses Unterformular schließen/unsichtbar machen und es soll nur das Hauptformular sichtbar sein.
Dieses kann doch nicht so schwer sein. Nur als Anfänger habe ich da meine Schwierigkeiten. Vielleicht hast Du ja nen Tipp.
Vielen Dank schon mal im voraus.
Peter
[Anhang gelöscht durch Administrator]
Hallo,
habe Dich andernorts davor gewarnt, Corsspostings weiter zu treiben mit denselben(!) Beiträgen... Ich wiederhole auch hier, dass ich Deine Beiträge löschen werde, wenn das weiterhin passiert.
Hi,
Zitat von: pp17 am Juni 01, 2013, 20:51:09
Besteht die Möglichkeit den Button statt im Formularkopf im Detailbereich zu plazieren
Probier mal, den Button vom Kopf in den Detailbereich zu verschieben.
Zitat
und kann man auch einen Button zum Deaktivieren im Unterformular kreieren?
Im Prinzip machbar, aber wofür brauchst Du noch einen Button, wenn das Klicken in das Hauptformular das Abschalten bereits macht. Da Du vermutlich eh dorthin willst, ist über den weiter oben aufgeführten Mechanismus dann ein Klick auf einen Button eingespart worden.
Zitat
Hättest Du evtl. auch eine Musterdatei in der das Unterformular ein PopUp Fenster ist?
Nein, da dann kein HaFo + UFo.
Zitat
In dieser Datei (HFuUF2_mit_PopUp) soll bei Aufruf des Hauptformulars das Unterformular ausgeblendet sein.
Dann setze die Eigenschaft visible vom Unterformular auf "Nein".
Zitat
Wenn man dann auf den Button "Unterformular öffnen" klickt, soll das Unterformular als PopUp_Fenster angezeigt werden und man soll dann dort Daten eingeben können. Dann möchte ich im PopUp-Unterformular -wie auch immer- dieses Unterformular schließen/unsichtbar machen und es soll nur das Hauptformular sichtbar sein.
Popup in diesem Fall nein Danke. Wenn popup, warum auch immer notwendig, dann ist ein Aufruf des Formulars mit Parameter-Übergabe notwendig. Das verkompliziert das Ganze unnötig.
Harald
Moin,
Zitat von: pp17 am Juni 01, 2013, 20:51:09
Hättest Du evtl. auch eine Musterdatei in der das Unterformular ein PopUp Fenster ist?
und hier nun als "Programmier-Übung" im Anhang die popup-Variante.
Auch hier habe ich auf einen Button zum Schließen verzichtet. Es reicht aus, auf das Kreuz rechts oben im popup-Formular zu klicken. Dann werden neue Werte gespeichert und das Formular geschlossen.
Harald
[Anhang gelöscht durch Administrator]