Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: chemist am Oktober 28, 2019, 10:58:44

Titel: Bilder im Formular
Beitrag von: chemist am Oktober 28, 2019, 10:58:44
Hallo zusammen,
ich bin noch nicht so lange mit Access unterwegs und brauche dringend hilfe.
Ich habe mir eine Chemikalien-Datenbank erstellt mit mehreren Tabellen, Abfragen und Formularen. Ich möchte nun, dass in meinem Formular durch ein Kobinationsfeld ein GHS-Symbol ausgewählt werden kann und mir dann in einem gebundenen Ogjektfeld das Symbol dazu angezeigt wird. Ich habe es hinbekommen, dass es das für ein Kombinationsfeld auch macht, jedoch haben Chemikalien oft mehr als ein Symbol und wenn ich nun ein weiteres Kombinationsfeld und Objektfeld einfüge zeigt mir das zweite Objektfeld immer nur die Auswahl des ersten Kombinationsfeldes an und nicht die des zweiten.
Titel: Re: Bilder im Formular
Beitrag von: MzKlMu am Oktober 28, 2019, 11:10:13
Hallo,
das hängt vom Tabellenaufbau ab.
Wie ist denn die Tabelle für die Symbolzuordnung aufgebaut ?
Je Symbol ein extra Feld, oder je Symbol ein Datensatz?
Bitte zeige mal ein Bild des Beziehungsfensters.
Titel: Re: Bilder im Formular
Beitrag von: chemist am Oktober 28, 2019, 13:23:24
Ich schicke mal zwei Fotos
Titel: Re: Bilder im Formular
Beitrag von: MzKlMu am Oktober 28, 2019, 13:28:19
Hallo,
die Bilder sind ziemlich sinnlos und beantworten noch nicht mal ansatzweise meine Fragen.
ZitatWie ist denn die Tabelle für die Symbolzuordnung aufgebaut ?
Je Symbol ein extra Feld, oder je Symbol ein Datensatz?
Wo ist das Bild mit dem Beziehungsfenster?
Es sind hoffentlich Beziehungen angelegt.
Eine Datenbank benötigt zur fehlerfreien Funktion Beziehungen.
Titel: Re: Bilder im Formular
Beitrag von: chemist am Oktober 28, 2019, 13:39:56
Ja ich habe Beziehungen angelegt und auch schon mehrfach verändert, nur kam kein vernünftiges Ergbenis dabei raus. Im Moment habe ich sie wie im Bild. Ich habe aber auch schon versucht zu jeden der "Pirktogamme" eine Beziehung zur "ID" der Tabelle herzustellen, aber dann hat mir meine Abfrage gleich gar keine Daten mehr angezeigt.
Titel: Re: Bilder im Formular
Beitrag von: MzKlMu am Oktober 28, 2019, 14:32:50
Hallo,
die Tabellenstruktur ist unbrauchbar.
Hier fehlen noch Tabellen. Du brauchst eine weitere Tabelle zur Zuordnung der Piktogramme zur Chemikalie als je ein Datensatz. Das gilt sinngemäß auch für die H-Sätze.
Titel: Re: Bilder im Formular
Beitrag von: chemist am Oktober 28, 2019, 14:36:12
Kannst du mir das vielleicht mit einem Beispiel erklären, ich weiß leider nicht genau was du meinst.
Titel: Re: Bilder im Formular
Beitrag von: MzKlMu am Oktober 28, 2019, 14:50:36
Hallo,
das Beispiel ist Deine Aufgabe. Erstelle es so wie Du es jetzt hast, mit ein paar Spieldaten, das lädst Du hier hoch.
Ich baue es dann um.
Titel: Re: Bilder im Formular
Beitrag von: emmoticon am Oktober 28, 2019, 15:14:09
Zitat von: chemist am Oktober 28, 2019, 13:39:56
Ja ich habe Beziehungen angelegt und auch schon mehrfach verändert, nur kam kein vernünftiges Ergbenis dabei raus.
Hallo!
Die H-Sätze kommen doch immer wieder vor, also brauchst du sie als eigenständige Tabelle. So wie deine Tabelle strukturiert ist, müsstest Du immer wieder aufs Neue die H-Sätze eingeben. Was du brauchst ist eine Beziehung zwischen CAS mit der H-Satz Tabelle, damit du genau diese Arbeit nicht immer wieder machen musst.

Die Herausforderung hierbei ist doch eher wie du mehrere, bestehende H-Sätze mit Piktogrammen zu unterschiedlichen Chemikalien hinzufügen kannst. Ich würde es mit einer N:M-Beziehung zwischen H-Satz Tabelle und der CAS-Tabelle lösen und die Piktogramme in die H-Satz Tabelle mit reinschieben.

Beispiel habe ich dir angehängt. So kannst du auf jeden Fall beliebig viele H-Sätze zu einer Chemikalie zuweisen.

/EDIT: Ich bin einfach zu langsam  8)
Titel: Re: Bilder im Formular
Beitrag von: chemist am Oktober 28, 2019, 15:18:00
Das mit den H-Sätzen fuktioniert so wie es soll. Ich habe nur Probleme mit den Piktogrammen.
Titel: Re: Bilder im Formular
Beitrag von: chemist am Oktober 28, 2019, 15:21:24
ich habe mehrfach versucht die Datenbank hochzuladen, doch das Forum gibt immer den Fehler Type subject zurück  >:(
Titel: Re: Bilder im Formular
Beitrag von: emmoticon am Oktober 28, 2019, 15:25:05
Zitat von: chemist am Oktober 28, 2019, 15:21:24
ich habe mehrfach versucht die Datenbank hochzuladen, doch das Forum gibt immer den Fehler Type subject zurück  >:(

Du musst sie als .zip packen und dann hochladen
Titel: Re: Bilder im Formular
Beitrag von: MzKlMu am Oktober 28, 2019, 16:00:12
Hallo,
ZitatDas mit den H-Sätzen fuktioniert so wie es soll.
auch wenn es funktioniert, es ist definitiv falsch.

Vor dem Zippen der DB diese noch Komprimieren/Reparieren (Access Dienstprogramm, bei den Datenbanktools).
Titel: Re: Bilder im Formular
Beitrag von: chemist am Oktober 28, 2019, 16:52:11
Ok, da versuche ich das morgen früh nochmal zu schicken.
Titel: Re: Bilder im Formular
Beitrag von: chemist am Oktober 29, 2019, 06:30:02
Hallo zusammen,

neuer versuch mit dem Hochladen.
Titel: Re: Bilder im Formular
Beitrag von: MzKlMu am Oktober 29, 2019, 10:12:48
Hallo,
die Datenbank ist vom Grundaufbau bereits falsch angelegt. Die Zuordnung der H-Sätze und der Piktogramme zur Chemikalie sind in einer extra Tabelle auszulagern. Das nennt sich dann n:m Beziehung.
Du verwendest auch Textfelder als Primärschlüssel, Texte sind als PS eher ungeeignet, hier sind Autowerte zu bevorzugen, wenn es kein geeignetes Zahlenfeld gibt. Auch Nachschlagefelder sind in Tabellen unbedingt zu vermeiden. Im Zusammenhang mit Abfragen machen die nur Probleme.
Nachschlagefelder sind ausschließlich in Formularen sinnvoll.
Wenn Du das korrekt (und zukunftssicher) aufbauen willst, musst Du die DB umstrukturieren. Du wirst dann allerdings das Meiste was Du jetzt hast in die Tonne treten können.

Hängen die Piktogramme auch mit den H-Sätzen zusammen ?
Mit anderen Worten, gibt es zu den H-Sätzen jeweils ein oder mehrere passende Piktogramme ?

Anmerkung:
Ich hatte Dir oben geschrieben, dass die Datenbank vor dem Zippen komprimiert werden sollte.
ZitatVor dem Zippen der DB diese noch Komprimieren/Reparieren (Access Dienstprogramm, bei den Datenbanktools).
Das hast Du nicht gemacht, was eine ziemliche Verschwendung von Speicherplatz im Forum ist.
Nur mal zum Größenvergleich:
Datenbank vor dem Komprimieren: 56064 KB danach 7556 KB
Dein Zip File 2636 KB Zip nach Komprimierung: 383 KB
Die kleinere Version habe ich oben in Deinem Beitrag angehängt.

Das Komprimieren ist aber nicht nur für das Forum wichtig. Eine Datenbank muss regelmäßig (besonders in der Entwicklungsphase) komprimiert werden.
Nur dann werden gelöschte Datensätze auch wirklich gelöscht. Auch gelöschte Entwürfe von Formularen und Berichten werden erst nach dem Komprimieren wirklich gelöscht.
Titel: Re: Bilder im Formular
Beitrag von: chemist am Oktober 29, 2019, 11:42:57
Hallo MzKlMu,
vielen Dank erstmal allgemein für deine Hinweise.

Also könnte ich vielleicht eine weitere Tabelle anlegen in denen ich CAS, H-Sätze, Piktogramme eintrage statt das mit in die t_CAS reinzupacken?

Hängen die Piktogramme auch mit den H-Sätzen zusammen ?
Mit anderen Worten, gibt es zu den H-Sätzen jeweils ein oder mehrere passende Piktogramme ?

Die Piktogramme hängen nicht direkt mit den H-Sätzen zusammen. Es gibt zwar verschiedene Kriterien nach denen verschienene H-Sätze bzw. Kombinationen daraus dann das Piktogramm ergeben, in meinem Fall soll allerdings lediglich die Information von dem Sicherheitsdatenblatt so wie es der Hersteller vorgibt in der Datenbank erfasst werden. Also Hersteller gibt vor H201 und H202 und GHS8 und GHS9 dass trage ich dann als (bevorzugt als DropDown) in das Formular der Datenbank ein. Beim auswählen des GHS soll mir dann daneben das passende Symbol angezeigt werden. Und eingaben sollen mir in einem Anderen Formular über eine Suchabfrage auch wieder angezeigt werden.
Titel: Re: Bilder im Formular
Beitrag von: MzKlMu am Oktober 30, 2019, 00:10:50
Hallo,
im Anhang findest Du die DB mit den umstrukturierten Tabellen.
In der DB sind jetzt nur die Tabellen mit Zahlen (Autowert als Primärschlüssel).
Zur Darstellung und Bearbeitung der Daten legt man ein Hauptformular für die Tabelle t_CAS an und darin auf 3 Registerseiten je ein Unterformular zur Zuordnung der Chemikalien, der HSätze und der Piktogramme.
Auswahl jeweils mit einem Kombifeld.

Was ist den die Bedeutung der Tabellen t_CAS und t_Chemikalien ?
Die Beziehung zwischen den beiden ist mir noch etwas suspekt.
Titel: Re: Bilder im Formular
Beitrag von: chemist am Oktober 30, 2019, 06:17:44
Hallo,

das sind 2 Tabellen, weil die CAS immer eindeutig zugeordnet werden kann, der Chemikalienname aber nicht. Es gibt für die Chemikalien verschiedene Nomenklaturvarienten. So kann also eine CAS mehrere Chemikaliennamen haben.

Aber so wie ich das jetzt in der DB sehe kann dort immer nur ein Piktogramm pro CAS hinterlegt werden oder?
Titel: Re: Bilder im Formular
Beitrag von: MzKlMu am Oktober 30, 2019, 06:40:58
Hallo,
Du kannst beliebig viele Piktogramme zuordnen, jedes Piktogramm ist ein Datensatz mit der gleichen CasID. Das gilt sinngemäß auch für die HSatz Zuordnung. Das ist das gleiche Prinzip.
Titel: Re: Bilder im Formular
Beitrag von: chemist am Oktober 30, 2019, 07:40:49
Ok, MzKlMu.

Vielen Dank erstmal für deine Hilfe. Ich werde es erstmal so versuchen und hoffe es hinzubekommen  ;D
Titel: Re: Bilder im Formular
Beitrag von: emmoticon am Oktober 30, 2019, 20:08:21
/edit: Bitte ignorieren. Ich hab die zweite Seite uebersehen und den Loesungsvorschlag von MzKIMu ueberlesen. Schade, dass man den Beitrag nicht im Spoiler verstecken kann :-[ :-[ :-[ :P


Zitat von: chemist am Oktober 28, 2019, 15:18:00
Das mit den H-Sätzen fuktioniert so wie es soll. Ich habe nur Probleme mit den Piktogrammen.

Ich habe mir mal deine Datenbank näher angeschaut. Du willst in deinem Formular ein weiteres Auswahlfeld mit Piktogramm einfügen. Das Problem ist, dass in deiner Tabelle t_CAS das Feld "Piktogramm 1" nur mit der Tabelle t_Piktogramme verknüpft ist. Und funktioniert das fuer alles weitere nicht mehr.
Wenn du im Formular "f_CAS_Abfragen" ein weiteres Piktogramm-Feld mit Bild wie für "Piktogramm 1" einfügen willst, musst du wohl die Tabelle "t_Piktogramme" duplizieren und mit mit dem Tabellenfeld  t_CAS - Piktogramm 2 verknüpfen. <-- Das ist totaler Quatsch! Hab das erwaehnt, weil ich frueher als erstes drauf gekommen waere.

Ich empfehle dir, dass du dich lieber mit der Neustrukturierung der Datenbank bezueglich n:m Beziehungen befasst und in deinem Formular mit Unterformularen arbeitest .

Ich habe dir mal deine Datenbank bisschen umgebaut. Schaus dir mal an.
Ich habe nur das umgesetzt was ich dir oben bereits schon im Ansatz angedeutet hatte. Konkret siehst du das im Screenshot.
Titel: Re: Bilder im Formular
Beitrag von: chemist am November 04, 2019, 12:38:16
Hallo nochmal,

ich habe das mal versucht so zu ändern, aber so richtig klappt es noch nicht. Wenn ich in der Abfrage die CAS z.B. AAAA eingebe wird mir nichts angezeigt. Wie ich das in dem Formular dann richtig mache weiß ich auch nicht wirklich. Muss ich für die Auswahl der H-Sätze im KombiFeld Datensatzherkunft t_HSatz und als Steuerelementinhalt HSatzID_F nehmen bzw. für die Auswahl der Piktogramme t_Piktogramme als Datensatzherkunft und als Steuerelementinhalt PiktogrammID_F mit dem gebundenen Objektfeld das Bild dazu einfügen? Ich habe da irgendwo noch einen ganz großen Denkfehler drin, entschuldigt. Ich habe mal eine Abfrage und ein Formular mit in die DB gepackt. Könnt ihr euch das vielleicht nochmal ansehen?

VG
Titel: Re: Bilder im Formular
Beitrag von: emmoticon am November 04, 2019, 13:26:49
Hi chemist,

Auf die Schnelle konnte ich feststellen, dass du die Beziehungen zwischen den Tabellen zwar hergestellt hast, aber damit etwas angezeigt werden kann brauchst du konkret Werte in der verknüpften Tabelle.
Die Abfrage kann ja nur Daten aus den verknüpften Tabellen anzeigen wenn da auch entsprechend Daten hinterlegt sind.

Deine Tabelle "t_Chemikalien" hat Verknüpfungen zu den Tabellen "t_CAS", "t_Lagerort" und "t_Supplier". Damit deine Abfrage überhaupt Daten anzeigen kann, brauchst du in "t_Chemikalien" unbedingt die Fremdschlüssel, sonst wird da garnix angezeigt. Wenn du also in die o.g. Felder in der Tabelle ausfüllst, solltest du was angezeigt bekommen.

Aber Daten kannst so nicht bearbeiten.
Titel: Re: Bilder im Formular
Beitrag von: chemist am November 04, 2019, 13:36:49
Hallo emmoticon,

ok vielen Dank,  ;D also angezeigt wird jetzt was, aber die Sache mit den H-Sätzen und Piktogrammen funktioniert leider noch nicht.
Titel: Re: Bilder im Formular
Beitrag von: emmoticon am November 04, 2019, 13:41:14
Hi chemist,

Ich würde dir echt empfehlen das ganze Thema mit H-Sätzen, Piktogramme und die Supplier mit Unterformularen zu lösen. Dann ist das ganze auch so flexibel bearbeitbar wie du dir das auch vorstellst.
Titel: Re: Bilder im Formular
Beitrag von: MzKlMu am November 04, 2019, 13:43:20
Hallo,
das geht so nicht. Dein Formular ist falsch. Die H-Sätze und Piktogramme müssen als Unterformular eingefügt werden. Da wird auch nur jeweils ein Kombi benötigt.
Je H-Satz und Piktogramm gibt es ein Datensatz.
Titel: Re: Bilder im Formular
Beitrag von: chemist am November 07, 2019, 07:12:17
Hallo zusammen,

ich wollte mich nur nochmal bei euch für eure Hilfe bedankem. Ich habe es mittlerweile hinbekommen  ;D

VG