Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: mad am Oktober 05, 2020, 14:46:02

Titel: Mehrfachauswahl verhindern
Beitrag von: mad am Oktober 05, 2020, 14:46:02
Hallo Zusammen,

ich habe ein HF mit UF. Im UF ordne ich diverse Unterlagen einem Thema zu. Wie kann ich verhindern das ich eine Unterlage mehrfach einem Thema, wie im Bild zu sehen, zuordnen kann?

Hätte jemand einen Tipp für mich?


Gruss
mad
Titel: Re: Mehrfachauswahl verhindern
Beitrag von: ebs17 am Oktober 05, 2020, 15:07:54
Bei an eine Tabelle gebundene Listen hilft regelmäßig ein eindeutiger Index auf den Wert.

Selbstredend kann man auch für eine Neuauswahl nur nicht verwendete Werte anbieten. Da muss der Entwickler etwas mehr Mühe investieren.
Titel: Re: Mehrfachauswahl verhindern
Beitrag von: mad am Oktober 05, 2020, 16:58:21
Hallo,

die Tabelleneinträge in "tblSchulunterlagen" gibt es nur einmal. Indiziert "Ohne Duplikate".

Nun habe ich in dem Beitrag
Zitat von: undefinedhttps://www.access-o-mania.de/forum/index.php?topic=17424.0
was gefunden was meiner Anforderung nahe kommt.
Aber ich möchte halt nur die Datensätze aus "abfSchulunterlagen.Schulunterl_Bez" im Kombi-Auswahlfenster angezeigt bekommen die nicht schon im UF "Schulungsthemen" für das Thema (im HF) ausgewält sind.

Habe dies versucht als Datenherkunft für mein Kombifeld umzusetzten,
SELECT DISTINCT abfSchulunterlagen.IDSchulunterl, abfSchulunterlagen.Schulunterl_Bez
FROM abfSchulunterlagen
WHERE (((abfSchulunterlagen.Schulunterl_Bez) Not In (SELECT DISTINCT abfSchulunterlagen.Schulunterl_Bez FROM abfSchulunterlagen WHERE [Forms]![Schulungsthemen]![Schulunterl_Bez])));
leider noch ohne Erfolg. Es kommt zwar keine Fehlermeldung aber dafür wird ein Parameterfenster geöffnet.

Jetzt bräuchte ich natürlich weitere Unterstützung, wenn möglich.


Gruss
mad
Titel: Re: Mehrfachauswahl verhindern
Beitrag von: mad am Oktober 27, 2020, 16:20:47
Hallo Zusammen,

leider bin ich mit meinem Problem nicht wirklich weiter.

Nach viel suchen im Web habe ich diesen Betrag gefunden:
http://www.office-loesung.de/ftopic521634_0_0_asc.php
Indem dieser Code angegeben ist:
SELECT S.stadt_id, S.stadt_name, B.bl_name
FROM (tbl_bundesland As B INNER JOIN tbl_bl_st As Z
ON B.bl_id = Z.bl_id_f) INNER JOIN tbl_stadt As S
ON Z.st_id_f = S.stadt_id
Where Z.bl_id_f = Forms!deinformular!deinFeld AND
Z.st_id_f Not In (Select st_id_f From deineTabelle);

Diesen habe ich jetzt versucht für das Kombi-Auswahlfeld "IDreg_IDSchulUnterl" im UF für mich anzuwenden:
SELECT U.IDSchulunterl, U.Schulunterl_Bez, T.SchulThema_bez
FROM tblSchulunterlagen AS U INNER JOIN (tblSchulthema AS T INNER JOIN tbl_regSchul_ThemaUnterlagen AS R ON T.IDSchulthema = R.IDSchul_IDreg) ON U.IDSchulunterl = R.IDreg_IDSchulUnterl
WHERE (((R.IDSchul_IDreg)=[Forms]![frmSchulThema_Unterl_zuordnen]![IDreg_IDSchulUnterl]) AND ((R.IDreg_IDSchulUnterl) Not In (Select IDreg_IDSchulUnterl From tbl_regSchul_ThemaUnterlagen)));

Jetzt habe ich aber das Problem das ich in den Kombifeld des UF nur noch die ID-Nummer sehe und nicht den Text "Schulunterl_Bez".
Auch wenn ich im Kombifeld "IDreg_IDSchulUnterl" eine Auswahl treffen möchte bekomme ich garnichts mehr angezeigt.

Ich habe mir noch erlaubt zum besseren Verständnis eine kleine Beispieldatei anzufügen.

Würde an dieser Stelle nochmals um Unterstützung bitten.

Gruss
mad
Titel: Re: Mehrfachauswahl verhindern
Beitrag von: DF6GL am Oktober 27, 2020, 16:45:58
Hallo,

was ist nun das Problem?

Die Mehrfachzuordnung als Datensätze oder die Mehrfachdarstellung in der Kombiliste?

Und warum so mehrfach verknüpfende Abfrage über 3 Tabellen für die Liste des Auswahlkombifeldes?

Da reicht letztendlich (entspr. der Beziehung):

Select IDSchulunterl, Schulunterl_Bez from tblSchulunterlagen order by Schulunterl_Bez

Wenn für dieses gebundene Kombi eine "In Select ......" Bedingung angewandt wird, kann es passieren, dass das Kombifeld gar nichts mehr anzeigt.
Titel: Re: Mehrfachauswahl verhindern
Beitrag von: mad am Oktober 27, 2020, 19:57:09
Hallo,

habe jetzt mal die "tbl_regSchul_ThemaUnterlage" entfernt und das Formular incl. UF angepaßt.

Jetzt ist mein Problem, daß ich z.B. die Schulungsunterlage "Feuerlöscher" nicht an die aktuell drei vorhandenen Schulungsthemen (LÖSCHEN, BERGEN, RETTEN) zuordnen kann. Es sollte möglich sein jede beliebige Schulungsunterlage jedem Schulungshema zuordnen zu können, dies aber natürlich nur einmal.

Dann ist mein nächstes Problem, wenn eine Schulungsunterlage bereits einem Schulungsthema zugeordnet ist soll es in der Mehrfachdarstellung der Kombiliste nicht angezeigt werden. Wenn die Unterlage einem Thema noch nicht zugeordnet dann soll es natürlich in der Kombiliste angezeigt werden.

Die modifzierte DB habe ich wieder angehängt.


Gruss
mad

PS.: Andere Formulare habe ich der neuen Tabellenstruktur noch nicht angepaßt.
Titel: Re: Mehrfachauswahl verhindern
Beitrag von: DF6GL am Oktober 28, 2020, 08:58:42
Hallo,


Die Beziehungen stimmen nicht. Die Benamsung sollte strukturiert erfolgen. Textfeldname gleichlautend wie Steuerelementinhalt (Tabellenfeldname).....  auch wenn das andernorts gegenteilig empfohlen wird.


Anbei geänderte DB
Titel: Re: Mehrfachauswahl verhindern
Beitrag von: mad am Oktober 28, 2020, 20:03:08
Danke,

das ist zwar noch nicht ganz das was ich wollte, Du hast mein Startformular soweit geändert das ich verschiedene Versionen angezeigt bekomme. Es sollen im Startformular nur die letzten Versionen angezeigt werden, aber ich denke da bekomme ich hin indem ich ein Starformular mit den letzten Version erstelle und ein zweites als Erfassungsformular wie von Dir vorgeschlagen..

Was ich eigentlich noch mit umsetzen wollte, dass wenn bei einem Thema bereits Unterlagen angelegt wurden, daß diese bei der nächsten Kombiauswahlliste garnicht mehr mit angezeigt werden.
Wie im Bild (Auswahl.PNG) noch gezeigt, sollten eigentlich "Feuerlöscher_V1.docx" u. "Feuerlöscher_V2.docx" nicht angezeigt werden und somit für dieses Thema nicht mehr zur Auswahl stehen.

Ist sowas möglich? Und wie könnte sowas aussehen?


Gruss
mad