Einschränkung von Datensätzen durch Markierungsfelder

Kermet

Kermet

Aktives Mitglied
Thread Starter
Dabei seit
24.02.2005
Beiträge
1.462
Reaktionspunkte
4
Irgendwie finde ich hierzu im Netz und der Hilfe keine Informationen...

In meinem Layout werden alle Datensätze in einem Ausschnitt angezeigt.
Jetzt habe ich ein Markierungsfeld angelegt, mit dem ich die Daten Filtern kann oder bei Markierung aller Felder den Filter wieder aufheben kann.

Bisher hatte ich es geschafft, dass ich den Filter auf einen Eintrag im Markierungsfeld setzen konnte. Allerdings kann ich den Filter immer nur auf einen Eintrag setzen und leider nicht durch Aktivierung mehrerer Felder die Ergebnismenge erweitern. Aber genau das bräuchte ich unbedingt und ich kann mir nicht vorstellen, dass es nicht lösbar sein soll.

fragt der Kermet
 
Ich weiß zwar immer noch nicht, weshalb Du so gerne etwas in Ausschnitten aus derselben Tabelle anzeigst, aber das ist vielleicht Geschmackssache.
Könntest Du bitte sagen, was und wie bei Dir "gefiltert" wird.
Du meinst offenbar nicht eine einfache Abfrage?

Normalerweise ist es doch so, dass bei einer gewünschten größeren Ergebnismenge die Abfrage auch eine andere ist, d.h. mehr Datensätze findet (bei Dir wahrscheinlich "filtert"). Die Frage ist dann doch, wodurch unterscheiden sich die einzelnen Datensätze für eine enge und dann für eine erweiterte Abfrage?
 
tut mir leid, wenn ich mich für Andere unverständlich ausdrücke.
Ich bin wahrscheinlich zu sehr im Problem "drin".

Also meine "Aufgabenstellung" ist Folgende:

Ich habe eine Tabelle mit Datensätzen (Rechnungen). In dieser Tabelle gibt es ein Feld pro Datensatz, in dem Jeder Datensatz einer "Hauptkategorie" zugeordnet wird. (hier wird jede Rechnung einem (!) Gebäude zugeordnet)

Jetzt habe ich im Hauptlayout Registersteuerelemente angelegt, die mir verschiedene Tabellen der Datenbank in Ausschnitten darstellt. Das heisst, dass in jedem Ausschnitt eine andere Tabelle der Datenbank dargestellt wird, um das Ganze übersichtlicher zu gestalten.

Weiter habe ich jetzt z.B. ein Register "Rechnungen". Hier befindet sich der Ausschnitt, der alle Rechnungen mit den Basisdaten darstellt. Nun sind die Rechnungen aber mehreren Gebäuden zugeordnet und ich möchte über die Markierungsfelder (je nach Aktivierung) nur die Rechnungen des aktivierten Gebäudes im Ausschnitt anzeigen (oder eben die aller Gebäude, wenn ich alle Felder aktiviere).

Hier liegt jetzt mein Problem:
Ich habe beim öffnen des Formulars immer einen aktiven Datensatz. Das bedeutet, dass im Ausschnitt nur die Datensätze des Gebäudes angezeigt werden, dem der aktive Datensatz zugeordnet ist. Jetzt werden als Markierungsfelder alle Gebäude angezeigt, denen Rechnungen zugeordnet sind (ist gut so!), aber ein Umschalten ist nicht möglich...

Ist zwar ein bisschen lang geworden, aber ich hoffe, jetzt wird klar, was ich suche...

Kermet
 
Jetzt verstehe ich die Sache bei Dir mit den Ausschnitten.

Die Darstellung in den Ausschnitten klingt nach dem bekannten 1: n Problem. Also Du möchtest für Gebäude A alle Rechnungen im Ausschnitt haben. Oder Du möchtest für Gebäude B alle Rechnungen im Ausschnitt haben. usw.

Dann gibt es eine Datei "Gebäude"
Es gibt weiter eine Datei "Rechnungen"
Bei FM 7 und 8 statt Datei auch Tabelle möglich.

Dann nehme ich mal an, dass Du in Deinem Hauptlayout (Datei Gebäude) den Datensatz von Gebäude A anzeigen lassen kannst. Und ich nehme an, dass es eine Relation zu der Datei Rechnungen gibt. Und das der Ausschnitt in dem Layout der Datei Gebäude so layoutet ist, dass es die Datensätze der Datei Rechnungen anzeigt.

Wenn es trotzdem nicht funktioniert, stimmt entweder die Relation nicht, oder das Layout ist nicht richtig angelegt. Oder ich habe wieder etwas nicht richtig verstanden.
 
Du hast es richtig verstanden, Joachim.

Soweit bin ich auch schon, zumindest in den theoretischen Überlegungen.
Nur: Ich habe beim Öffnen des Layouts Gebäude einen aktiven Datensatz Rechnungen. Das sollte nicht sein, es sollten alle Rechnungen angezeigt werden, und nicht die Rechnungen zu dem Datensatz Gebäude, dem der aktive Datensatz zugeordnet ist.
Weiter funktioniert im "Markierungsbereich", dass dort nur die Gebäude zum Markieren angezeigt werden, denen auch Rechnungen zugeordnet sind. Er zeigt mir auch das Kreutz an dem Gebäude an, dessen zugeordnete Rechnungen im Ausschnitt angezeigt werden. Nur umschalten / Anzeige ändern funktioniert nicht...

Aber anscheinend habe ich schonmal keinen logischen bzw. Denkfehler drin.
Die Beziehungen sind bei mir im Großen und Ganzen schon so, wie Du geschrieben hast.

Kermet
 
Wenn Du spezielle Bedingungen stellst, die beim Umschalten auf ein Layout eintreten sollen, ist der Weg i.a. nicht der, das Layout von Hand umzuschalten, sondern eine Taste mit Script einzurichten, die - in dem von Dir beschriebenen Fall - auf das gewünschte Layout umschaltet und alle Rechnungen zeigt.
Ähnlich würde auch das Umschalten zu bestimmten von Dir gewünschten Bereichen funktionieren.
Also scheint der nächste Schritt zu sein, entsprechende Scripts zusammen zu klicken...
 
Mal eine kruze Frage vorneweg:
Kann ich denn über Optionsfelder steuern, ob die Datensätze zu A, zu B oder zu A UND B im Ausschnitt angezeigt werden? Ich bekomme die Option A UND B nicht hin, er will immer nur A ODER B im Ausschnitt anzeigen.

Leider bin ich etwas Access "versaut". Das mit der Steuerung über Scripte ist mir schon klar. Ich weiß bloß noch nicht, wie ich es bei meinem Hauptlayout (gleichzeitig Startlayout) löse, da ich es nicht immer "neu öffnen" möchte.
 
Zuletzt bearbeitet:
Es ist bestimmt kein Fehler, a u c h Kenntnisse von Access zu haben...

Zur Frage: Ja, das kann man.
Eine Möglichkeit ist, alle Datensätze zu suchen, für die Option A (oder Option B usw) zutrifft. Wenn das Layout richtig aufgebaut ist, werden im Ausschnitt dann alle Datensätze zur Option A angezeigt.
Dies kannst Du natürlich in gleicher Form als Script anlegen. Für den Anfang für jede Option ein eigenes Script mit einem eigenen Button, der am besten beim Layout in die Nähe des betreffenden Optionsfeldes gelegt wird.
 
Habe eine Frage übersehen:

Du kannst zwei (oder mehr) Abfragen durch "Neue Abfrage" hinter einander schalten.
1. Abfrage nach Option A,
2. Abfrage nach Option B
 
danke Dir
werde es mrogen früh gleich mal ausprobieren

Genau das meinte ich mit Access versaut:
Es ist halt in Access anders gelöst und das habe ich immer in meinem Hinterstübchen drin.
Dann sieht man den Wald vor lauter Bäumen nicht mehr
 
jetzt muß ich doch nochmal nachfragen:
Möchte ja eine "Gruppe" von MArkierungsfeldern in meinem Formular haben, in der ich die Optionen A und B habe. Diese Optionen sind eigentlich als A oder B in der Tabelle hinterlegt.
Wenn ich jetzt aber die Markierungsfelder ins Layout einfüge, dann habe ich in der Tabelle nicht mehr A oder B stehen, sondern A aktiviert oder für B eben A nicht aktiviert. So kann ich es aber nicht gebrauchen, denn es muss möglich sein, später noch Optionen (meinetwegen bis D) hinzuzufügen. Daher scheinen auch die Probleme bei mir zu kommen...

Die Auswahl ansonsten funktioniert jetzt bei mir.

Kermet
 
Wo fehlt es jetzt noch?

Du kannst Buttons mit Scripts anlegen, die die Gruppen

A suchen,
B suchen,
C suchen usw.
A und B suchen,
B und C suchen,
A und C suchen usw.

Das wären 6 Buttons mit 6 Scripts.

Beginnt jetzt ein Mengenproblem oder ein Layoutproblem?
 
Diese Lösung hatte ich schon.
Allerdings, wie Du schon schreibst: Es beginnt ein Layout und dazu noch ein Mengenproblem.
Das ganze Layout würde zu unübersichtlich und die Funktionen nicht mehr intuitiv nutzbar.

Dazu kommt, dass ich gezwungen bin, die Optionen nachträglich zu ändern, also hinzuzufügen oder zu löschen. Un dann müssen sie in dem Layout automatisch geändert werden.

Inwischen bin ich auch etwas weiter gekommen:
Ich kann jetzt Optionen markieren, dann wird der Ausschnitt angepasst. Allerdings darf ich das nicht zu oft machen, sonst stimmt es dann nicht mehr. Den Fehler verstehe ich überhaupt nicht. Dazu kommt, dass es mit Option A und Option A UND B funktioniert, mit B alleine aber nicht. Und ich habe zum Versuchen Option C hinzugefügt. Wenn ich Option B nun alleine Markieren will, markiert er Option C und zeigt einen Datensatz aus B und einen aus A.

Und noch eine Frage: Wenn ich die Markierungen der Markierungsfelder ändere, will er eigentlich immer die Markierten Optionen im aktiven Datensatz speichern. Ich möchter aber die Markierungsfelder nur als "Filteroptionen" nutzen und finde keine Möglichkeit, das Speichern zu umgehen, ohne bei der Nachfrage auf Abbrechen zu klicken. Im Suchenmodus bekomme ich keine Daten angezeigt.
 
Zuletzt bearbeitet:
Tja.

Ich weiß von hier aus nicht im Detail, an was es hapert. Möglicherweise nur eine blöde Kleinigkeit.
Aber ob die Relationen stimmen oder das Layout, kann ich nicht sagen.

Verdächtig ist, dass Du sagst:
"Ich kann jetzt Optionen markieren, dann wird der Ausschnitt angepasst. Allerdings darf ich das nicht zu oft machen, sonst stimmt es dann nicht mehr. Den Fehler verstehe ich überhaupt nicht. Dazu kommt, dass es mit Option A und Option A UND B funktioniert, mit B alleine aber nicht. Und ich habe zum Versuchen Option C hinzugefügt. Wenn ich Option B nun alleine Markieren will, markiert er Option C und zeigt einen Datensatz aus B und einen aus A"

Ich werde das Gefühl nicht los, dass Deine Markierungen nicht zwischen Blättern und Suchen unterscheiden. Das heißt, Du änderst eine Markierung im Datensatz, suchst dann und erhältst ein unerwartetes Ergebnis.

Also bitte prüfen: Alle Datensätze bleiben mit den Optionen A, B usw. nach der Eingabe unverändert.
Dann kann es doch nicht passieren, dass Du beim Suchen nach B alleine suchst und auch Datensätze mit A erhältst.

So. Und nächstes Mal musst Du wohl Deine Datei mal beilegen.
 
So
ich habe das Ganze jetzt nocheinmal überarbeitet.
Alle Beziehungen neu Definiert. Und Mir auch nochmal speziell Gedanken darüber gemacht, wie man das Markierungsfeld (dynamisch) in Beziehung setzen muss zur Tabelle des Layouts und wiederum diese zur Tabelle des Auschnitts, die ja auch wieder zur Tabelle des Markierungsfeldes stehen muss.
Ich kann zwar immernochnicht sagen, was es war, aber jetzt funktioniert alles wunderbar.

Das Einzige, was ich immernoch nicht hinbekommen habe, ist der "Schreibschutz der Daten in diesem Layout. Habe mir schon Konten und Berechtigungen angeschaut, aber da blicke ich noch nicht ganz durch.
Mein Problem ist halt, dass es über den "Suchenmodus" bei den vielen Optionen zu viel Geklicke gibt und es dadurch zu unübersichtlich wird.

Vielleicht hast DU ja da noch eine Idee.

Danke erstmal
Du hast mir zwar nicht viel direkt sagen können (war wohl auch nicht wirklich möglich), aber Du hast mich auf jedenfall mit deinem Antworten auf die richtige Fährte gebracht.

Kermet
 
Für die, dies interessiert:

Das mit dem Schreibschutz habe ich inzwischen auch gemeister:
Ein Feld mit Globaler Speicherung anlegen, diesem Feld das Markierungsfeld zuweisen und zu guter Letzt noch eine Self - Join Beziehung aufbauen.

Kermet
 
Zurück
Oben Unten