🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Hilfe! Tabelle im Formular+Filter anlegen

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Hilfe! Tabelle im Formular+Filter anlegen

Beitrag von RobertG » Mi 5. Mär 2014, 14:33

Hallo Berzstein,

"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"
Auf diese Ansicht greifen mehrere der Abfragen zu, die in der DB enthalten sind, z.B. "Filialen_gefiltert"

Code: Alles auswählen

SELECT * FROM "Filialen" WHERE "ID" IN ( SELECT "FilID" FROM "Filter_Schluessel" )
Theoretisch könntest Du also auch statt "Filter_Schluessel" in der Abfrage "Filialen_gefiltert" den gesamten Code von "Filter_Schluessel" einfügen. Das mag bei einer einzigen Abfrage Sinn machen; wenn der gleiche Inhalt an anderer Stelle noch einmal gebraucht wird ist das allerdings unnütze Schreiberei.
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
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

Berzstein
Beiträge: 9
Registriert: Mi 5. Feb 2014, 13:30

Re: Hilfe! Tabelle im Formular+Filter anlegen

Beitrag von Berzstein » Mo 28. Apr 2014, 09:55

Hallo RobertG,

gibt es eine Möglichkeit den Mitarbeiter irgendwie so anzuwählen, das ich
ihn noch einmal in einem einzelnen Formular bearbeiten kann.

Dies versuch ich seit mehreren Stunden zu machen, aber irgendwie wählt er immer
unterschiedliche Mitarbeiter und nicht den, den ich wollte.
Dann hatte ich ein Makro von einem Freund der hat allerdings kaum geklappt, bzw. alle anderen Makros wurden
mit diesem deaktiviert und es hat dann gar nichts mehr funktioniert.

Daher wollte ich nochmal fragen, wie ich denn dieses Problem lösen könnte.

mfg
Berzstein

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Hilfe! Tabelle im Formular+Filter anlegen

Beitrag von RobertG » Mo 28. Apr 2014, 16:22

Hallo Berzstein,

von welcher der verschiedenen Datenbanken gehst Du jetzt aus?
In Filialen_Status_Arbeitszeiten_Filterung.odb von meiner zuletzt angehängten Datei war die Bearbeitung der Mitarbeiter doch direkt möglich. Wozu möchtest Du ein separates Formular? Du kannst natürlich den angezeigten Mitarbeiter abgreifen und mit dem Parameter auch ein Formular gesondert starten. Alle Informationen sind aber schon im Formular enthalten.

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

Berzstein
Beiträge: 9
Registriert: Mi 5. Feb 2014, 13:30

Re: Hilfe! Tabelle im Formular+Filter anlegen

Beitrag von Berzstein » Mo 12. Mai 2014, 09:43

Hallo RobertG,

ja ich gehe von der Datenbank aus, wo man schon in dem einen Formular den Mitarbeiter bearbeiten kann.
Allerdings ist die Bedingung für eine 3 von unserem Lehrer, dass wir auch nochmal seperat die Mitarbeiter bearbeiten können, sowie Fillialen.. :| :/
Nur komm ich leider dort überhaupt nicht weiter..

mfg
Berzstein

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Hilfe! Tabelle im Formular+Filter anlegen

Beitrag von RobertG » Mo 12. Mai 2014, 17:00

Hallo Berzstein,

Mein Problem ist zur Zeit, dass ich mich immer wieder neu in die Datenbank rein denken muss, weil Deine Rückmeldungen doch in einem großen Zeitabstand zum ursprünglichen Vorhaben stehen.
Wie weit wird bei der Datenbank der Einsatz von Makros vorausgesetzt? Allein um von einem Formular zu einem anderen zu kommen braucht es ja so ein Makro. Und in dem anderen Formular müsste dann mit einer Filtersetzung direkt der aktuelle Datensatz angesteuert werden.
Schau Dir einmal den Thread hier an: http://de.openoffice.info/viewtopic.php?f=8&t=63874

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten