"Filter_Schluessel" ist eine Ansicht. Ansichten sind wie Abfragen aufgebaut, werden nur direkt in der Datenbank gespeichert. Base kann dann darauf zugreifen, als lägen die Informationen in einer Tabelle.
Gehe einmal mit der rechten Maustaste auf die Ansicht und lass Dir den SQL-Code anzeigen. Das ist ein Code, den ich zuerst in einer Abfrage erstellt habe und dann aus der Abfrage zu einer Ansicht gemacht habe, damit die anderen Abfragen darauf zugreifen konnten:
Code: Alles auswählen
SELECT "Filialen"."ID" AS "FilID", "Mitarbeiter"."ID" AS "MitID", IFNULL("Mitarbeiter"."Name",'') AS "Mname", IFNULL("Rang_Filiale"."Rang_ID",-1) AS "RanID", IFNULL("rel_Mitarbeiter_Status"."Status_ID", -1) AS "StaID", IFNULL("Arbeitszeit"."ArbeitszeitStart",CURTIME()) AS "Azeit", IFNULL("Arbeitszeit"."ArbeitszeitEnde",CURTIME()) AS "Bzeit" FROM "Filialen" LEFT JOIN "Rang_Filiale" ON "Rang_Filiale"."Filiale_ID" = "Filialen"."ID" LEFT JOIN "Mitarbeiter" ON "Mitarbeiter"."Rang_Filiale_ID" = "Rang_Filiale"."ID" LEFT JOIN "rel_Mitarbeiter_Status" ON "rel_Mitarbeiter_Status"."Mitarbeiter_ID" = "Mitarbeiter"."ID" LEFT JOIN "Arbeitszeit" ON "Arbeitszeit"."Mitarbeiter_ID" = "Mitarbeiter"."ID" WHERE LOWER ( "Filialen"."Ort" ) LIKE IFNULL( LOWER ( '%' || ( SELECT "Filiale_Ort" FROM "Filter" WHERE "ID" = TRUE ) || '%' ), LOWER ( "Filialen"."Ort" ) ) AND LOWER ( "Mname" ) LIKE IFNULL( LOWER ( '%' || ( SELECT "Mitarbeiter_Name" FROM "Filter" WHERE "ID" = TRUE ) || '%' ), LOWER ( "Mname" ) ) AND "RanID" = IFNULL( ( SELECT "Rang_ID" FROM "Filter" WHERE "ID" = TRUE ), "RanID" ) AND "StaID" = IFNULL( ( SELECT "Status_ID" FROM "Filter" WHERE "ID" = TRUE ), "StaID" ) AND IFNULL( ( SELECT "Uhrzeit" FROM "Filter" WHERE "ID" = TRUE ), "Azeit" ) BETWEEN "Azeit" AND "Bzeit"
Code: Alles auswählen
SELECT * FROM "Filialen" WHERE "ID" IN ( SELECT "FilID" FROM "Filter_Schluessel" )
Mit Hilfe der Ansichten kannst Du Abfragen in mehreren Schritten zu einem Ergebnis führen, das Du bei der direkten Eingabe vermutlich völlig aus den Augen verlieren würdest.
Gruß
Robert