Effektives Arbeiten mit Suchen
Einführung
Die 'Suchen' sind ein wichtiger Bestandteil von CURSOR-CRM. Bei diesen Suchen handelt es sich um Abfragen, die mit einem Namen versehen wurden, unter dem sie vom Anwender aufgerufen, bearbeitet und ausgeführt werden können. CURSOR-CRM/EVI enthält bereits im Auslieferungszustand einen Grundumfang an solchen Suchen. Sie werden für das Funktionieren der Anwendung benötigt. Alle Informationen, die auf dem Bildschirm in Listen oder auf Formularen erscheinen, werden mit ihnen aus der Datenbank abgefragt. Außerdem sorgen sie dafür, dass Berichte, Serienbriefe und Serien-Emails erstellt werden können und dass die Einzeldokumente mit Daten versorgt werden.
Die Anwender können viele dieser Suchen verwenden und sie nach ihren Bedürfnissen konfigurieren (wobei jedoch die eigentliche Suche nicht verändert wird). Sie können aber noch mehr: Sie können zum einen Kopien dieser Suchen anlegen und diese Kopien verändern. Daneben können sie auch neue Suchen für Fragestellungen erstellen, für die bislang noch keine Suchen vorliegen.
Grundlegendes Ziel der Arbeit an den Suchen wird es immer sein, den Programmeinsatz effektiver zu gestalten. Dies kann viele Bereiche betreffen. Beispiele wären unter anderem:
wiederkehrende Arbeitsschritte zeitsparender ausführen: "Wie ist der Bearbeitungsstand von Bewerbungen und Anfragen?"
das Erstellen von Adressenlisten und andere Listen für den Export nach Excel.
Auf den Administrator kommen bei den Suchen noch weit umfangreichere Aufgaben zu: die Programmbereiche 'Auswertungen', 'Serienbriefe und –emails' und 'Einzeldokumente' basieren ebenfalls auf solchen Suchen. Allerdings werden hier mehrere solche Suchen zu größeren Einheiten, den 'Komplexen Suchen' zusammengefasst. Dem Administrator fällt hier die Aufgabe zu, diese komplexen Suchen zu erstellen und zu verwalten, sowie die Verbindung zu den Reports (bei Auswertungen) und zu den Dokumentvorlagen (bei Einzel- und Serienbriefen) zu gestalten.
Dieses Kapitel beschreibt die verschiedenen Aspekte, die sich unter dem Begriff 'Suchen' zusammenfassen lassen. Es vermittelt einen umfassenden Überblick sowohl über die Bedienung der wichtigsten Masken und Formulare als auch über die Gestaltung der Suchen.
In erster Linie richtet sich dieses Dokument an Administratoren und so genannte "Power-User". Sie finden hier Informationen für eine effektive Gestaltung ihrer Suchen. Grundsätzlich sind die vermittelten Inhalte aber für alle Anwender von Bedeutung, denn nur bei genauer Kenntnis der Zusammenhänge ist eine fehlerfreie Arbeit mit einer Datenbank möglich.
Die Suchmasken
Die Suchmasken stellen die wichtigste Schnittstelle zum Bereich der Suchen dar: hier werden neue Suchen angelegt, bestehende Suchen angepasst und die Suchen natürlich auch ausgeführt. Daher sollen nun zunächst diese Suchmasken im Mittelpunkt stehen. Im weiteren werden die einzelnen Elemente der Suchmasken beschrieben.
Funktionen der Schalter in der Suchmaske
Die Funktion der Schalter und Tastatur/Mauskombinationen ist für alle Suchdialoge konfigurierbar.
Schalter Suchen
Beim Klick wird nach den eingegebenen Kriterien gesucht und die Ergebnisse in einer Liste angezeigt.
Bei ENTER in einem Sucheingabefeld wird die Suche gestartet und das Ergebnis ebenfalls in der Suchliste angezeigt.
Der Benutzer muss dort den benötigten Datensatz selektieren und öffnen.
Voraussetzung: Unter Optionen/ Systemeinstellungen / Suchfenster ist Verhalten der Taste <Enter> als Suchen konfiguriert.
Ist über ein Drop Down-Menü die Option Suchen und Öffnen selektiert worden, wird der zuerst gefundene Datensatz geöffnet (Standard-Einstellung).Schalter Übernehmen
Die Suchmaske wird geschlossen und das Selektionsergebnis wird in der Detail- oder Listenansicht angezeigt.
Bei einem Datensatz erfolgt die Anzeige des Suchergebnis direkt in der Detailmaske, bei mehreren immer in der Listenansicht.
Einzige Ausnahme: Bei einem Doppelklick oder ENTER in der Suchergebnisliste wird der selektierte Eintrag in der Detailmaske angezeigt.Schalter Suchen u. übernehmen
Der Schalter kann von dem Administrator ausgeblendet werden. Auch im Menü und Kontextmenü wird der Schalter nicht mehr angezeigt.
Voraussetzung: Unter Optionen/ Systemeinstellungen / Suchfenster ist die Auswahlbox Anzeigen des Buttons <Suchen u. übernehmen> deaktiviert. Standard-Einstellung ist 'aktiviert'.
![](../../../__attachments/10684504/717px-Schalter-Uebernehmen-abschalten.jpg?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Abbildung: Systemeinstellungen für Schalter auf der Suchmaske.
Schalter Abbrechen
Schließt den Dialog, ohne die Selektierten Daten zu übernehmen.Schalter Details
Zeigt eine Übersicht der Zugeordneten Daten
![](../../../__attachments/10684504/Zuordnungsuebersicht-in-der-Suchmaske.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Abbildung: Zuordungsübersicht in der Suchmaske
Schalter Drucken
Generiert die Standardauswertung als PDF-Datei, die ausgedruckt werden kann.
Suchlisten im Suchfenster
Das Layout der Suchmaske kann durch die Benutzereinstellungen funktional verbessert werden. Die Suchlisten enthalten den Namen und die Beschreibung der Suche. Die Sortierung der Liste erfolgt nach dem Namen der Suche.
In den Benutzeroptionen wurde der Bereich 'Suchfenster' genannt (ehemals 'Farbschema erweiterte Suche').
![](../../../__attachments/10684504/Suchfenster-Benutzereinstellungen.jpeg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Abbildung: Benutzereinstellungen /Suchfenster.
Der Bereich enthält folgende Optionen:
Lasche myCRM Suchen anzeigen
Lasche Weitere Suchen anzeigen
Suchname in Lasche anzeigen
Laschen im Suchfenster mehrzeilig (Die einzeilige oder mehrzeilige Darstellung der Laschen in der Suchmaske)
Tipp
Als Administrator können Sie die Einstellungen über Menü Optionen / Systemeinstellungen / Systemvorgabe Benutzereinstellungen systemweit vorgeben.
Wurden die Optionen aktiviert, so werden die Suchlisten auf der Suchmaske angezeigt.
Zwischen der Suchmaske für Entitäten und der für Auswertungen, Serienbriefe und Serienmails sind kleinere Unterschiede zu beachten. Diese Unterschiede werden im Folgenden gesondert hervorgehoben.
Lasche 'myCRM Suchen'
![](../../../__attachments/10684504/Lasche-myCRM-Suchen.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Dargestellt wird die Liste aller Suchen des aktuellen Anwenders, die in dessen myCRM-Bereich abgelegt sind. Es wird der Anzeigename aus myCRM angezeigt.
Nur verfügbar in Suchmaske für Entitäten und Auswertungen!
Lasche 'Weitere Suchen'
![](../../../__attachments/10684504/Suchmaske_Lasche_WeitereSuchen.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Dargestellt wird die Liste aller Suchen, für die der Anwender Zugriffsrechte besitzt.
Besonderheiten im Falle der Suchmaske für Entitäten:
Analog zur Suchverwaltung steht auch hier die die Filteroption Zeige alle Benutzer Suchen zur Verfügung. Per Benutzereinstellung kann der Benutzer festlegen, ob alle Benutzersuchen oder nur die eigenen Suchen (Zeige alle meine Suchen) angezeigt werden.
Diese Filteroption gilt gleichermaßen für den Administrator. Zur Bearbeitung der Systemsuchen soll weiterhin die Suchverwaltung genutzt werden.
Laschentitel
Der Titel der Lasche Suchfelder ändert sich wie folgt:
Beim Öffnen des Suchdialogs erhält die Lasche den Titel Standardsuche.
Lädt der Benutzer eine andere Suche, so erhält die Lasche den Titel Ausgewählte Suche. Beim erneuten Laden der initialen Suche erhält die Lasche wieder den Titel Standardsuche.
Suchinformation in Lasche 'Standardsuche'
Ehemals 'Suchfelder'
Der internationalisierte Name der Suche wird oberhalb der ersten Gruppe angezeigt. Es steht ein Tooltip zur Verfügung, um auch lange Texte schnell sichten zu können. Wird die Suchmaske direkt aus myCRM aufgerufen, so wird anstelle des internationalisierten Suchnamen der Anzeigename aus myCRM angezeigt.
![](../../../__attachments/10684504/Suchmaske_AnzeigeSuchinformationen.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Die Titelzeile – Worauf die Suche basiert
In der Titelzeile wird in eckigen Klammern die Entität angezeigt, zu der die Suchmaske gestartet wurde. Das ist ein wichtiger Aspekt: alle Suchen, die innerhalb dieser Suchmaske vorliegen, basieren zwangsläufig auf dieser Entität. Das bedeutet auch: zu jeder Entität gibt es eine eigene Suchmaske, die die zu dieser Entität vorliegenden Suchen beinhaltet. Und: es gibt keine Gesamtliste aller Suchen. Man muss also, wenn man eine bestimmte Suche starten möchte, grundsätzlich wissen, zu welcher Entität sie angelegt wurde.
Nach dem Namen der Entität folgt der Name der Suche, die im Moment geladen ist. Grundsätzlich gilt: wenn eine Suchmaske angezeigt wird, ist immer eine Suche geladen. Hier stellt sich natürlich die Frage: welche Suche wird beim Start der Suchmaske dargestellt? Und warum gerade diese? Die Antwort lautet: beim Start der Suchmaske wird die so genannte Standardsuche angezeigt. Falls eine solche nicht existiert (was eher unwahrscheinlich sein dürfte) wird die Generierte Standardsuche angezeigt. Sie können diese Suchen durch eine beliebige andere Suche ersetzen. Außerdem können Sie festlegen, welche Suche Ihre persönliche Standardsuche sein soll, die automatisch beim Start der Suchmaske geladen wird. In einem separaten Kapitel zu den Standardsuchen wird dies ausführlich erläutert.
Der Suchfelderbereich – Eingabe der Bedingungen
Den linken Bereich der Suchmaske bezeichnet man als Suchfelderbereich. Hier können Sie Ihre Suchkriterien eingeben. Welche Felder Ihnen hier angezeigt werden, hängt von den Festlegungen in der geladenen Suche ab.
Die vertikale Schalterleiste
Diese Leiste enthält 19 Schalter. Diese teilen sich in 2 Gruppen auf:
Über die oberen 9 Schalter können Sie die Suchen verwalten.
Die unteren 10 Schalter betreffen den Bereich Bearbeitung der Suche. Sie sind daher nur sichtbar und aktiv, wenn die Lasche Suche bearbeiten im Vordergrund ist.
![]() Laden der Standardsuche | Über diesen Schalter wird die Standardsuche geladen. Gibt es keine Standardsuche, wird die Generierte Standardsuche geladen. |
![]() Neue Suche anlegen | Beim Klicken auf diesen Schalter wird die gerade geladene Suche verworfen und die Generierte Standardsuche für [Name der Entität] geladen. Anschließend können Sie diese Suche bearbeiten und über die beiden Schalter für Speichern bzw. Speichern unter unter einem frei wählbaren Namen speichern. |
![]() Öffnet den Dialog der Suchverwaltung | Über diesen Schalter öffnet sich ein weiterer Dialog, der eine Gesamtliste aller für diese Entität angelegten Suchen zeigt. In diesem Dialog können Suchen unter anderem geladen oder gelöscht werden. Diese Suchverwaltung wird in einem eigenen Kapitel beschrieben. |
![]() Speichert die aktuelle Suche | Speichert die gerade geladene Suche |
![]() Speichert die aktuelle Suche unter einem neuen Namen | Hier speichern Sie die gerade angezeigte Suche unter einem eigenen Namen ab. Tipp Stellen Sie bei der Vergabe des Namens Ihr Benutzerkürzel an den Anfang des Namens. Das erleichtert die Verwaltung der Suchen, da man sie so in der Suchverwaltung sehr einfach sortieren kann. |
![]() Änderungen an der Suche mit Ihren individuellen Selektionskriterien in myCRM speichern | Wird eine Suche über den myCRM-Bereich geladen, steht der Schalter zum Speichern bzw. Aktualisieren der Suche in myCRM zur Verfügung. Somit können Änderungen direkt wieder in dem gleichen myCRM-Sucheintrag gespeichert werden. Es entfällt das ansonsten übliche manuelle Löschen des alten Eintrags und das Umbenennen des neuen Eintrags. Der Schalter ist inaktiv, wenn die Suche nicht aus dem myCRM-Bereich heraus geladen wurde. |
![]() Kopieren der aktuellen Suche mit Ihren individuellen Selektionsktiterien nach myCRM | Auch Mitarbeitern ohne die Berechtigung zum Speichern der Suche ist es nun möglich, die eingegebenen Suchkriterien zu sichern. Hierzu werden beim Kopieren der Suche nach myCRM alle Selektionskriterien in dem myCRM-Eintrag festgehalten. Beim erneuten Aufruf des myCRM-Eintrags wird die ursprüngliche Suche geladen und mit den eigenen Suchkriterien befüllt und anschließend angezeigt. Das Speichern von Selektionskriterien steht auch für neue bzw. generierte Suchen zur Verfügung. Vor dem Speichern der Suche hat der Anwender die Möglichkeit, einen individuellen Namen für den Sucheintrag festzulegen. Somit entfällt die ansonsten übliche manuelle Umbenennung des Sucheintrags. Der Schalter Kopiere Suche nach myCRM steht auch in der Schalterleiste am linken Rand des Suchfensters zur Verfügung. Vor Erzeugung eines Eintrags in myCRM wird ein abschaltbarer Hinweisdialog angezeigt, um dem Anwender kenntlich zu machen, dass eine Aktion stattgefunden hat. |
![]() Suche in einem XML-Dokument speichern | Ein Klick auf diesen Schalter öffnet einen Viewer, über welchen Sie die aktuell geladene Suche im XML-Format als Datei abspeichern können. So können Sie sich selbst Sicherungen ihrer Suchen anlegen. Außerdem erlaubt diese XML-Darstellung einen sicheren Blick auf die Beziehung der in der Suche verwendeten Felder zu den auf der Programmoberfläche dargestellten Feldern. Das geht so: In einem beliebigen Formular hält man die STRG-Taste gedrückt und bewegt dann den Mauszeiger auf das gewünschte Feld (ohne mit der Maus zu klicken). In der Statuszeile am unteren linken Bildschirmrand wird in eckigen Klammern die gesuchte Information in folgendem Format angezeigt: “normales Feld” vs Nachschlagefeld:
CODE
Diese Informationen sind also englische Begriffe, wie zum Beispiel customer.location. Die gleiche Information finden Sie nun auch in der XML-Darstellung der Suche. Dort werden die im Sucheingabebereich dargestellten Felder in der gleichen Reihenfolge untereinander aufgeführt. Die gesuchte Information findet man immer hinter dem tag <AttributeName>. Beispiel:
Durch den Vergleich dieser beiden Informationen Sie sicherstellen, dass Sie diejenigen Felder in der Suche verwenden, die Sie auch wirklich abfragen möchten. |
Erstellt die Exportkonfiguration mit mehrfach geschachtelten Suchen. Alle in der Suche selektierten Felder werden dabei der Konfiguration hinzugefügt. Die Konfiguration kann im Wizard manuell nach bearbeitet werden. | |
Ein Klick auf diesen Schalter öffnet einen Viewer, über welchen Sie die aktuell geladene Suche im SQL-Format als Datei abspeichern können. |
Die Suchoptionen
Mit dem Schalter Mehr Optionen>> können Sie wichtige Einstellungen zur Darstellung und zur Anzahl der ausgegebenen Datensätze vornehmen.
Anzahl der Ergebnisse (max. 10.000) | Hier können Sie die Anzahl der im Suchergebnisbereich angezeigten Datensätze einstellen. Es existiert eine feste Obergrenze von 10.000 Datensätzen. Sollte es vorkommen, dass eine Suche mehr als 10.000 Datensätze liefern würde, wird die Suche mit einer Fehlermeldung abgebrochen. Wird die eingestellte feste Obergrenze erreicht, erscheint eine abschaltbare Hinweismeldung, dass weitere Daten verfügbar sind. Tipp Um die maximale Anzahl der Egebnisse anzeigen zu lassen, geben Sie den Wert -1 ein. |
Vergleichsoperatoren anzeigen | Über diesen Schalter können Sie die Darstellung der Vergleichsoperatoren bei den Sucheingabefeldern ein- und ausschalten. |
Erweiterte Schalterleiste | Die Schalter Speichern SQL und Speichern XML können im Bereich Optionen über die Auswahlbox Erweiterte Schalterleiste ein- oder ausgeblendet werden. Der Standardwert ist ausgeschaltet. Sinn und Zweck ist die Vereinfachung der Suchmaske. Selten genutzte Funktionalitäten sollten in den Hintergrund verschoben werden. |
Duplikate erlauben | Mit diesem Schalter kann das doppelte Anzeigen von Datensätzen an- beziehungsweise ausgeschaltet werden. Da dies eine sehr wichtige Einstellung ist, wird sie eingehend im Zusammenhang mit der Gestaltung der Suchen im Kapitel Bearbeiten der Suchen besprochen. |
Prüfung der Ausführungskosten | Vor der Ausführung von Suchen schätzt das System die Ausführungskosten. Wird z.B. eine Suche auf größeren Datenmengen unzureichend eingeschränkt, erscheint die nachfolgende Meldung, damit das System mit lang laufenden Suchen nicht unnötig belastet wird. ![]() In der Suchbearbeitung kann die Prüfung der Ausführungskosten für die aktuelle Suche deaktiviert und gespeichert werden. Administration Der Schwellwert für die Prüfung der Ausführungskosten kann durch den Administrator in den Anwendungsvariablen konfiguriert werden.
![]() |
Die Einstellung 'Suchfenster automatisch öffnen'
Ist dieses Kennzeichen gesetzt, wird beim Öffnen der Entität auch immer gleich das dazu gehörende Suchfenster angezeigt. Dies ist die Standardeinstellung. Ist das Kontrollkästchen deaktiviert, wir ein leeres Fenster der Entität angezeigt. Um dann das Suchfenster zu starten, klicken Sie auf das Fernglassymbol in der Schalterleiste der Applikation.
Der Suchergebnisbereich
Der rechte Teil der Suchmaske wird als Suchergebnisbereich bezeichnet. Welche Spalten hier erscheinen, hängt von den Festlegungen in der geladenen Suche ab. Dazu vergeben Sie den Feldern, die Sie als Spalte im Suchergebnisbereich sehen wollen, ein entsprechendes Merkmal.
Die Spaltenkonfiguration wird pro Relation und nicht pro Suche definiert. Das Spaltenlayout auf der Suchmaske sieht unterschiedlich aus (z.B für Dokumente zu Aktivitäten, Dokumente zu Ansprechpartnern oder Dokumente zu Geschäftspartnern). Um verschiedenen Benutzergruppen unterschiedliches Suchergebnislayout anbieten zu können, muss der Administrator eine neue Suche mit entsprechenden Spaltenkonfiguration erstellen.
Konfigurieren des Suchergebnisbereichs
Das Aussehen des Suchergebnisbereichs kann den eigenen Ansprüchen entsprechend verändert werden. Die Reihenfolge und Breite der Spalten sowie die Reihenfolge der angezeigten Datensätze können Sie durch die folgenden Maßnahmen beeinflussen:
Ändern der Spaltenbreite
Klicken Sie auf den rechten Rand des Spaltenkopfes der Spalte, deren Breite Sie verändern wollen, halten Sie die linke Maustaste gedrückt und verschieben Sie den Rand in die gewünschte Richtung.
Verschieben/Vertauschen der Spalten
Sie zeigen mit der Maus auf den Spaltenkopf der Spalte, die Sie verschieben möchten, klicken mit der linken Maustaste und halten diese gedrückt. Nun bewegen Sie den Mauszeiger auf die Spalte, vor der sie die zu bewegende Spalte einfügen wollen und lassen die Maustaste los. Die Spalte wird dort eingefügt.
Sortierreihenfolge der Datensätze festlegen
Durch einen Klick mit der linken Maustaste auf einen Spaltenkopf werden die Datensätze nach ihren Werten in dieser Spalte sortiert. Ein kleines Dreieck zeigt an, dass diese Spalte für die Sortierung verwendet wird. Die nach oben oder unten weisende Spitze gibt die Richtung der Sortierung an: aufsteigend (Spitze nach oben) oder absteigend (Spitze zeigt nach unten).Ein erneuter Klick auf den Spaltenkopf kehrt die Sortierreihenfolge um. Möchten Sie mehrere Spalten für die Sortierung nutzen, so klicken Sie diese bei gedrückt gehaltener Shift-Taste wie beschrieben nacheinander an. Die Reihenfolge, in der Sie dies tun, legt die Reihenfolge der Bedeutung der Spalten für die Sortierung fest: zunächst wird also nach der als erste angeklickten Spalte sortiert. Bei Gleichheit der Einträge in dieser Spalte wird dann nach den Werten in der als zweite gewählten Spalte sortiert und so fort. Tipp: da im Nachhinein nicht mehr feststellbar ist, in welcher Reihenfolge die Spalten für die Datensatz-Sortierung ausgewählt wurden, sollten die betroffenen Spalten zunächst in die entsprechende Reihenfolge gebracht werden.
Möchten Sie Ihre Änderungen als Standardeinstellung festlegen, so können Sie diese als Benutzereinstellung speichern. Dazu gehen Sie wie folgt vor:
Sie klicken auf den Menüpunkt Konfiguration und wählen dort den Eintrag Als Benutzereinstellung speichern.
ODERSie klicken im Suchfenster mit der rechten Maustaste auf den Spaltenkopf der Tabelle und wählen aus dem Kontextmenü den Eintrag Konfigurationseinstellungen. Aus dem Submenü wählen Sie den Eintrag Als Benutzereinstellung speichern.
Wenn Sie nun die Suchmaske das nächste Mal öffnen, werden automatisch die vorgenommen Einstellungen als Standardeinstellung angezeigt.
Die Benutzereinstellung hat Vorrang vor den Systemweiten Einstellungen. Dies gilt auch dann, wenn die Systemeinstellung zwischenzeitlich geändert wurde.
Möchten Sie wieder dauerhaft zur Systemeinstellung zurückzukehren, so wählen Sie den Menüeintrag Systemeinstellung laden und speichern diese dann als Benutzereinstellung.
Diese Einstellungen können für die Listenansicht, das Suchfenster (Suchergebnisbereich) und für Listendarstellungen im Unterbereich gespeichert werden. Dabei ist die Anordnung der Spalten in der Listenansicht und im Suchergebnisbereich immer gleich.
Die Bedienung des Spaltenfilters
Oberhalb der Spaltenköpfe befinden sich Eingabefelder für Spaltenfilter. Über diese Spaltenfilter kann das aktuelle Suchergebnis weiter eingeschränkt werden, ohne dass die Suche erneut ausgeführt werden muss. Bei der Eingabe eines solchen Filters können Sie Platzhalter verwenden:
Platzhalter | Beschreibung |
---|---|
* | ersetzt kein, ein oder mehrere beliebige Zeichen. |
? | ersetzt genau 1 beliebiges Zeichen. |
t und f | Bei Spalten mit Ankreuzfeldern kann über die Eingabe der Buchstaben t und f nach den angekreuzten bzw. nicht angekreuzten Inhalten gefiltert werden. Die Eingabe des ganzen Wortes true bzw. false liefert das gleiche Ergebnis. |
!query | !query sucht nach allen Zeilen, die die query NICHT enthalten |
!!query | !!query sucht nach allen Zeilen, die !query enthalten (Escape-Mechanismus mit Verdopplung) |
! | ! sucht nach allen Zeilen, in denen der Feldwert leer ist (manchmal auch ganz nützlich) |
Alternativ kann auch eine "zero-width negative lookahead" Regex zur Suche verwendet werden:
(?!query)*
„beginnt nicht mit“(?!*query)*
„enthält nicht“(?!query)*
entspricht (in etwa) !query
Wenn Sie mit der Maus auf ein Feld oberhalb der Spaltenköpfe im Ergebnisbereich zeigen und dann die Maus nicht mehr bewegen, erscheint ein Tooltip mit einer Erklärung der möglichen Platzhalter.
Speichern als Standardsuche
Der Anwender kann die Suche, die ihm aktuell angezeigt wird, als seine Standardsuche abspeichern.
Die Suche wird nicht nur als Standardsuche von Anwender X markiert, sondern auch gespeichert, so dass die aktuellsten Änderungen in der Suche nicht mehr verloren gehen.
Es gilt folgende Einschränkung: Hat der Anwender eine Suche verändert, die er nicht speichern darf, z.B. Systemsuche oder die Suche eines anderen Mitarbeiters, so wird er aufgefordert, diese Suche unter einem neuen Namen zu speichern. Diese neue Suche wird dann als die benutzer-/guppen-/systemspezifische Standardsuche verwendet.
Die Anwenderführung für das Speichern von Suchen wurde optimiert: es werden Dialogfenster mit Entscheidungsaktionen verwendet.
Die Suchverwaltung
Über den Schalter Suchverwaltung in der Suchmaske öffnen Sie den gleichnamigen Dialog. Hier erhalten Sie eine Liste der Suchen, die für die zugrunde liegende Entität hinterlegt sind.
![](../../../__attachments/10684504/800px-Suchverwaltung.jpg?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Abbildung: Suchverwaltung
Schalter
Anzeigen | Die Suchverwaltung wird geschlossen und die ausgewählte Suche wird geladen und am Bildschirm angezeigt. |
Kopieren | Erzeugt eine Kopie der ausgewählten Suche. Diese Kopie wird als neuer Datensatz an das Ende der Tabelle angefügt. Der Name dieser Kopie setzt sich aus dem Namen der Originalsuche, gefolgt von einer in Klammern gesetzten laufenden Nummer zusammen. Tipp Der Name der Kopie ist nicht änderbar. Um dennoch einer Kopie einen selbst gewählten Namen zuzuweisen, gehen Sie wie folgt vor:
Hier können Sie nun einen neuen Namen vergeben. So umgehen Sie zwar den Kopieren-Schalter, erhalten aber das eigentlich gewünschte Ergebnis. |
Löschen | Löscht die ausgewählte Suche. |
Ausführen | Die Suchverwaltung wird geschlossen, die ausgewählte Suche wird geladen und anschließend direkt ausgeführt. |
Berechtigungen | Ein Klick auf diesen Schalter öffnet ein eigenes Fenster für die Rechteverwaltung. Der Anwender kann hier Berechtigungen für die Anzeige und das Verändern der Suche festlegen. Entzieht er einer Benutzergruppe zum Beispiel das Schreibrecht, so können die Benutzer dieser Gruppe zwar weiterhin die Suche ausführen, sie können sie aber nicht mehr unter dem gleichen Namen speichern. Der Begriff DOE im Recht DOE Lesen steht für Disziplinarische Organisations-Einheit. Diese Einstellung ist nicht in allen Versionen des Programms aktiviert. |
Kopieren nach myCRM/myEVI | Die gewählte Suche wird nach myCRM/myEVI kopiert. Sie wird dort in dem gerade geöffneten Verzeichnis eingefügt. Deshalb sollten Sie vor diesem Kopieren in myCRM/myEVI den gewünschten Bereich betreten. Falls die Suche in myCRM/myEVI doch an der falschen Stelle abgelegt wurde, können Sie dort eine oder mehrere zu verschiebende Suchen markieren. Anschließend klicken Sie mit der rechten Maustaste auf die markierte Suche und wählen dann aus dem Kontextmenü den Eintrag Ausschneiden. Dann wechseln Sie in den gewünschten Ordner und fügen die Inhalte ebenfalls wieder über die rechte Maustaste und den Kontextmenü Eintrag Einfügen ein. |
Internationalisierung | Ein Klick auf diesen Schalter öffnet ein eigenes Fenster mit einer Internationalisierungstabelle. Hie kann der Administrator die Übersetzungen für die Namen von Suchen eintragen. |
Spalten
Eind.Name | Name der Suche. Dieser muss eindeutig sein. Er wird in der Titelzeile der Suchmaske angezeigt. |
Beschreibung | Freitext für eine Beschreibung der Suche. Dieser Name wird zum Beispiel in myCRM angezeigt |
Schnellsuche | Über diese Einstellung kann eine Suche als Schnellsuche definiert werden. Schnellsuchen sind Suchen, die ausgeführt werden, ohne dass man vorher eine Eingabemaske angezeigt bekommt. Diese Schnellsuchen werden dann über die beiden Fernglas-Symbole aufgerufen. Diese Symbole finden Sie in der Schalterleiste der Anwendung und im Hauptfenster der geladenen Entität. |
Systemsuche | Diese Spalte dient nur der Darstellung der als Systemsuchen definierten Suchen. An diesen Suchen kann der Anwender keine bleibenden Änderungen vornehmen. Systemsuchen sind nur dann sichtbar, wenn Sie das Kennzeichen im Feld Zeigt die Systemsuchen an am unteren Rand des Fensters gesetzt haben. |
Suchvorlage | Ist dieses Kennzeichen gesetzt, so wird diese Suche über das Fernglas-Symbol in der Schalterleiste der Anwendung als Eintrag in der Liste der Suchvorlagen angeboten. Diese Liste enthält somit Suchen, die man häufiger benötigt und bei denen (anders als bei den Schnellsuchen) zunächst eine Suchmaske zur Eingabe von Suchkriterien angezeigt wird. Nur der Administrator kann Suchen diese Eigenschaft Suchvorlage zuweisen. |
Nur im Unterfenster | Eine so gekennzeichnete Suche steht dem Anwender nur dann zur Verfügung, wenn die Entität, zu der eine solche Suche angelegt wurde, als abhängige Entität zu einer übergeordneten Entität geladen wurde.
|
Exportieren | Ist diese Option aktiviert, so wird diese Suche beim Export/Import von Customizing mit exportiert, sofern die entsprechende Entität ausgewählt wird. |
Anlageuser | Es wird der Benutzer angezeigt, der die Suche angelegt hatte. |
Primärschlüssel | Der Primärschlüssel der Suche wird angezeigt. |
So gehen Sie vor, um die Suchen zu sehen:
Laden Sie einen Geschäftspartner. Im unteren Bereich der Bildschirmseite sind die zugeordneten Entitäten auf Registerkarten aufgeführt.
Wählen Sie die Lasche Aktivität und klicken Sie auf eine der Aktivitäten doppelt. Dadurch wird nun das Unterfenster Aktivitäten angezeigt und füllt den Bildschirm.
Über die beiden Fernglassymbole sehen Sie nun die Liste der Schnellsuchen (und zwar aller Schnellsuchen, also der "normalen" Schnellsuchen und der Suchen, die über die Einstellung Nur im Unterfenster zu Schnellsuchen gemacht wurden.). Dabei fällt auf, dass diese Liste mehr Einträge enthalten dürfte, als wenn man eine Aktivität direkt anlegt und dann dort auf diese Symbole klickt.
Da es im Unterfenster (also dem Hauptfenster der gewählten Entität) keine Suchvorlagen gibt, ist eine Kombination Suchvorlage und NUR im Unterfenster nicht sinnvoll.
Die Sucheingabefelder
In diesem Kapitel werden Suchfelder und die Eingabe von Suchbegriffen erklärt.
Die Suchfeld-Typen
Die Informationen lassen sich grundsätzlich in 4 Typen gliedern:
Alphanumerischer Text
Zahl
Datum
boolesche Werte Wahr und Falsch. Diese Zuständer werden als Kontrollkästchen dargestellt.
Welche Auswirkung diese Einteilung hat, wird unmittelbar an den folgenden Stellen deutlich:
Die Vergleichsoperatoren, die man bei den Feldern einstellen kann, sind je nach Typ unterschiedlich
Die Filter-Bedingungen
Die Sortierung der Datensätze
Text- / Zahlenfelder | Der Suchwert kann Text bzw. Zahlenwerte oder den Platzhalter enthalten.
|
Datumsfelder | Das Datum muss exakt eingegeben werden. Mit + oder – kann das Datum erhöht bzw. erniedrigt werden. Mit dem Operator liegt zwischen kann ein Datumsbereich gesucht werden. |
Nachschlagefelder | Dort kann man den gesuchten Wert nachschlagen.
|
Platzhalter in den Suchfeldern
Folgende Platzhalter stehen zum Ersetzen von einem, keinem und beliebig vielen Zeichen zur Verfügung:
* (Stern) Steht für beliebig viele Zeichen und kann mehrfach eingesetzt werden |
|
_ (Unterstrich) Steht für genau ein Zeichen und kann auch mehrfach eingesetzt werden | Gie_en findet nur Gießen, aber nicht Giessen |
Vergleichsoperatoren
beginnt mit | Sucht alle Begriffe, die mit den eingegebenen Zeichen beginnen. |
---|---|
ist einer von | Der Begriff muss mit einem der eingegebenen Werte übereinstimmen. Die hier verwendete IN-Funktion erlaubt es also, mehrere Parameter bei Nachschlagefeldern zu einer Bedingung anzugeben. Sie möchten Ihre offenen Aktivitäten sehen. Hierbei handelt es sich um alle Aktivitäten, bei denen im Feld Status entweder O oder A eingetragen wurde. Sie benötigen also einen Operator, der eine Oder- Abfrage durchführt. Ist einer von erfüllt dieses Kriterium. Bei diesem Vergleichsoperator werden die eingegebenen Werte als Listeneinträge angezeigt. Um Eingaben in diese Liste aufzunehmen, müssen Sie die Taste EINGABE ↵ betätigen. |
ist gleich | Der zu suchende Wert muss mit der Eingabe exakt übereinstimmen. Bei Schlüsselfeldern erfolgt eine Validierung. Das bedeutet: bei unvollständigem oder falschem Schlüssel wird ein Nachschlagebrowser angezeigt. |
enthält | Sucht alle Begriffe, die eingegebene Zeichenfolge enthalten. Eine solche Suche bezeichnet man auch als unscharfe Suche. Sie ist im Allgemeinen mit einem Performance-Verlust behaftet. |
ist kleiner als | Kann für Datumsfelder und Zahlenfelder sinnvoll genutzt werden. |
liegt zwischen | Sucht alle Begriffe, die zwischen den eingegebenen Werten liegen (einschließlich dieser Werte). |
liegt zwischen (Teilzeichenfolge) | Sucht alle Begriffe, die zwischen den eingegebenen Werten liegen (einschließlich dieser Werte). Dabei kann man hier zusätzlich noch eine Startposition und die Länge der zu suchenden Zeichenfolge eingeben. Auf diese Weise kann man nach Zeichenfolgen suchen, die an einer festgelegten Stelle innerhalb einer längeren Zeichenfolge auftreten. |
Datenbankfunktion | Hier gibt man einen Ausdruck ein, der unmittelbar in das SELECT eingebaut wird und dessen Wert anstelle des Feldwertes in die Antworttabelle einfließt.
SQL
|
Datenbankfunktion (WHERE-Part) | Hier gibt man einen Ausdruck ein, der unmittelbar in das WHERE eingebaut wird.
SQL
|
Bei Nachschlagefeldern muss noch folgende Besonderheit beachtet werden:
Wird der Vergleich über ist gleich durchgeführt, erfolgt eine Validierung (das bedeutet, dass bei unvollständigen oder falschem Schlüssels ein Nachschlagebrowser geöffnet wird). Dagegen wird bei einem Vergleich über beginnt mit keine Validierung durchgeführt, der Schlüssel wird also nicht überprüft.
Die Standardsuchen
Beim Start einer Suchmaske werden immer auch gleich Eingabe- und Ergebnis-Felder angezeigt. Das bedeutet, dass eine bestimmte Suche automatisch geladen wird. Den Namen der Suche kann man in der Titelzeile ablesen. Warum gerade diese Suche geladen wird, wird im vorliegenden Kapitel erläutert.
Als Standardsuche werden jene Suchen bezeichnet, die automatisch beim Öffnen eines Suchfensters geladen werden. Standardsuchen können
benutzerspezifisch
gruppenspezifisch oder
systemspezifisch
hinterlegt werden. Diese Reihenfolge entspricht gleichzeitig dem Rang der Suche. Sind keine Standardsuchen hinterlegt, greift CURSOR-CRM/EVI auf die Generierte Standardsuche zurück und lädt diese.
Alle Arbeitsschritte erfolgen über den Menüpunkt Standardsuche. Je nach der Berechtigungsstufe sind hier nur einige oder alle Menüeinträge aktiviert. Der Administrator darf alle Einträge verwenden, einem Standard Anwender dagegen sind nur die Einträge verfügbar, die er für seine persönlichen Einstellungen benötigt.
Idealfall bei der Hinterlegung der Standardsuche:
Zunächst hinterlegt der Administrator die systemspezifischen und die gruppenspezifischen Standardsuchen. Systemspezifisch bedeutet: Diese Suche ist für alle Anwender die gleiche. Daher gibt es auch nur eine solche Standardsuche. Diese Suche wird immer dann geladen, wenn für den angemeldeten Benutzer keine gruppen- oder benutzerspezifische Standardsuche vorliegt.
Hinterlegt der Administrator auch gruppenspezifische Standardsuchen, so gelten diese immer für die Mitglieder dieser Gruppe. Bei dieser Suche wird als Kriterium zur Zuordnung zum angemeldeten Mitarbeiter dessen Konfigurationsgruppe verwendet. Auch hier gilt analog: solange die Anwender sich keine benutzerspezifische Standardsuche angelegt haben, wird für sie diese Suche geladen. Die Systemspezifische Standardsuche wird also durch die Gruppenspezifische überstimmt.
Die Einrichtung der beiden eben beschriebenen Arten von Standardsuchen bleibt dem Administrator vorbehalten. Die dritte und letzte Art ist dagegen jedem Anwender zugänglich: jeder Mitarbeiter kann sich seine persönliche benutzerspezifische Standardsuche hinterlegen. Diese überstimmt dann wiederum die gruppen- und die systemspezifische Standardsuche.
Für den Fall, dass keine dieser Standardsuchen hinterlegt wurde, wurde in Form der Generierten Standardsuche vorgesorgt. Diese Suche existiert nicht als eigentliche Suche. Sie wird vielmehr aus den Systemeinstellungen in der Adminkonsole abgeleitet.
Menüeinträge des Menüpunktes Standardsuche
Über die Menüeinträge des Menüpunktes Standardsuche können die Mitarbeiter nun auf die 3 für sie maximal verfügbaren Standardsuchen zugreifen.
Laden der …spezifischen Standardsuche | Hierüber kann der Anwender jede der 3 Arten laden. So hat er Zugriff auf die vom Administrator vorgesehenen Suchen, er kann aber auch seine eigene verwenden und immer wieder über diese Laden - Einträge zwischen den Suchen wechseln. |
Speichern der …spezifischen Standardsuche | Der Anwender kann die Suche, die ihm aktuell angezeigt wird, als seine Standardsuche abspeichern. Hierbei werden auch die aktuellsten Änderungen in der Suche gespeichert. |
Entfernen der …spezifischen Standardsuche | Ein Klick auf diesen Eintrag löscht nicht die Suche, sondern entfernt bei dieser Suche die Eigenschaft Standardsuche. Man muss nun die Suchmaske verlassen. Beim nächsten Öffnen der Maske wird dann die in der Reihenfolge nächste Suchart angezeigt. Sind alle Ebenen leer, greift das System wie oben beschrieben auf die Generierte Standardsuche zurück. |
Die Bearbeitung von Suchen
Dieses Kapitel beschreibt die Möglichkeiten zur Gestaltung der Suchen. Die vorhandenen Suchen bilden zwar bereits eine gute Grundlage für die Arbeit mit CURSOR-CRM/EVI. Ein echter Mehrnutzen entsteht aber erst dann, wenn man in der Lage ist, die Suchen zu verfeinern und für seine Aufgabenstellungen individuell anzupassen. Dies geschieht über die Lasche Suche bearbeiten. Hier erweitert man die geladene Suche um Bedingungen und Verknüpfungen.
Lasche 'Suche bearbeiten'
Hier wird die Suche als Baumstruktur angezeigt. Dieser Baum kann durch Ändern oder Löschen von bestehenden Einträge bzw. durch Hinzufügen von neuen Einträgen verändert werden. Die Elemente des Baumes lassen sich am leichtesten anhand einer neu angelegten Suche erläutern. Klicken Sie dazu in der Suchmaske auf Neue Suche anlegen. Es wird nun auf der Basis der Systemeinstellungen eine neue, noch unbenannte Suche angelegt. Dies erkennen Sie auch am Namen der Suche: 'Generierte Standardsuche für [ENTITÄTSNAME]'.
Bei dieser neuen Suche enthält der Baum nun bereits einige Elemente. An oberster Stelle findet sich der Eintrag Hat [ENTITÄTSNAME] mit. Diese Entität bildet also die Basis der Suche. Je nachdem, zu welcher Entität Sie die Maske gestartet haben, findet sich hier ein anderer Name. Dieser Eintrag kann nicht entfernt werden. An nächster Stelle wird der Verknüpfungsoperator angezeigt. In der Grundeinstellung wird der UND-Operator verwendet, deshalb sehen Sie hier den Text Alle folgenden Bedingungen treffen zu (UND). Das bedeutet: Sollten Sie in den Feldern, die diesem Operator als Listeneinträge zugeordnet sind, Bedingungen eintragen, so muss ein Datensatz alle diese Bedingungen erfüllen, um selektiert zu werden. Als zweiten Operatortyp gibt es noch den ODER-Operator. Wählt man diesen aus, bedeutet es für die diesem Operator zugeordneten Felder: Ein Datensatz muss mindestens eine der eingetragenen Bedingungen erfüllen, damit er selektiert wird. Dieser erste Operator kann ebenfalls nicht gelöscht werden. Unterhalb des Operators finden sich nun die Sucheingabefelder. Die neue Suche ist sehr einfach aufgebaut. Sie enthält eine Reihe Felder, die mit der Einstellung Keine Einschränkung und einem Mülleimersymbol
Keine Einschränkung
Das Feld wird angezeigt, es wurde jedoch noch keine Bedingung durch den Anwender eingetragen. Wenn Sie auf die andere Registerkarte wechseln und hier eine Bedingung hinterlegen, wird diese automatisch auch im Baum dargestellt.
Das Mülleimersymbol
![](../../../__attachments/10684504/shared.icons.16x16.Trash.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Dieses Symbol wird bei den Feldern angezeigt, die die Eigenschaft Feld darf entfernt werden besitzen. Um diese Eigenschaft einzustellen, stellen Sie sich auf das Feld und drücken F2. Im dann erscheinenden Dialog zu den Feldeigenschaften ist die Eigenschaft Feld darf entfernt werden als Ankreuzfeld verfügbar.
Verwenden andere Anwender später diese Suche, dürfen sie, wenn das Symbol sichtbar ist, das Feld aus der Liste der Sucheingabefelder entfernen. Dies kann aber in bestimmten Fällen nicht gewünscht sein oder sogar eine Sicherheitslücke darstellen. So kann der Administrator bei einer von ihm angelegten Suche zu den Geschäftspartnern festlegen, dass anzuzeigende Datensätze zwingend die folgende Bedingung erfüllen müssen: Zugeordneter Mitarbeiter ist [eingeloggter User]. Der eingeloggte User wird dabei vom System erkannt, sein Kürzel wird automatisch über einen entsprechenden Parameter an die Suche übergeben. Dadurch sieht der Anwender, der diese Suche dann ausführt, immer nur die für ihn freigegebenen Daten. Um sicher zu stellen, dass ein Anwender diese Beschränkung nicht umgehen kann, sollte bei dieser Bedingung der Administrator bei der Eigenschaft Feld darf entfernt werden das Kontrollkästchen deaktivieren.
Der Eintrag 'Datensatzstatus = True'
Am Ende der Liste der Sucheingabefelder findet sich der Eintrag 'Datensatzstatus = True'. Hierüber wird gesteuert, dass nur die Nicht gelöschten Datensätze angezeigt werden. In einer Datenbank werden die Datensätze, die der Anwender löscht, nicht aus der Tabelle entfernt, ihnen wird vielmehr die Einstellung 'Datensatzstatus = False' zugewiesen. Solche Datensätze tauchen dann in der Anwendung nicht mehr auf, würden aber in den Suchen weiterhin angezeigt. Deshalb wird automatisch immer diese Einstellung mitgeliefert.
Dies ist eine Bedingung, die ein normaler Datensatz immer erfüllt. Verwendet man als Verknüpfungs-Operator eine UND-Verknüpfung, ist dies ohne Bedeutung. Anders jedoch ist dies bei Verwendung des ODER-Operators: hier ist ja dann diese Bedingung immer erfüllt, so dass die anderen hinterlegten Bedingungen keine Bedeutung mehr haben. Daher muss man darauf achten, diese Bedingung aus der ODER-Liste zu entfernen. Um trotzdem denn Datensatzstatus abzufragen, wählt man eine geschickte Verknüpfung von UND- und ODER-Operatoren.
Typ des Feldes | Standardbedingung | Erläuterung |
Text | beginnt mit | Es wird alles gefunden, was mit den eingegebenen Zeichen beginnt |
Zahl | ist gleich | Es wird die exakte Übereinstimmung gefordert. |
Datum | liegt zwischen | Es wird ein Datumsbereich vom Benutzer abgefragt. |
Boolean (Wahr/Falsch) | True/False | Es wird die exakte Übereinstimmung gefordert Solange man nichts einträgt, ist das Feld 'Ohne Einschränkung'. Hat man die Einstellung einmal geändert (also das Kontrollkästchen aktiviert), wird ab diesem Zeitpunkt auf 'True' bzw. 'False' abgefragt. Dies kann zu Fehlern führen. Daher sollte man solche Suchfelder grundsätzlich statt mit 'Ohne Einschränkung' besser mit einem der beiden Zustände vorbelegen. |
Schalter zum Bearbeiten der Suche
In diesem Abschnitt werden die unteren 11 Schalter der Schalterleiste auf der linken Seite der Suchmaske erläutert. Diese Schalter dienen zum Bearbeiten der Suche.
![]() Fügt einen Operator hinzu | Über diesen Schalter lassen sich UND- und ODER-Verknüpfungsoperatoren hinzufügen. |
![]() Fügt eine Bedingung hinzu | Fügt ein Feld mit einem bestimmten Bedingungsoperator hinzu. |
![]() Fügt eine Juhuuu!-Bedingung hinzu | Fügt eine Juhuuu!-Bedingung hinzu. |
![]() Fügt eine 'Besitzt-Relation' hinzu | Ermöglicht die Suche auf verknüpfte Daten. |
![]() Fügt eine 'Besitzt-nicht-Relation' hinzu | Ermöglicht die Suche auf verknüpften Daten. |
![]() Bearbeiten | Öffnet einen Dialog zum Bearbeiten der Eigenschaften für die markierte Entität, die Bedingung, den Operator oder die 'Besitzt/Besitzt nicht -Relation'. |
Wiederherstellen | Ermöglicht das Vorwärts-Blättern durch die letzten Änderungen. |
Rückgängig | Ermöglicht das Rückwärts-Blättern durch die letzten Änderungen. |
![]() Löscht den akt. Selektierten Knoten | Löscht den markierten Eintrag aus dem Baum. |
![]() Verschiebt den aktuell selektierten Eintrag um eine Position nach oben | Sortierung der Felder auf den beiden Registerkarten im Suchfelderbereich. |
Verschiebt den aktuell selektierten Eintrag um eine Position nach unten | Sortierung der Felder auf den beiden Registerkarten im Suchfelderbereich. |
Tipp
Diese Aktionen sind auch über die rechte Maustaste im Kontextmenü verfügbar, so dass die Schalter schneller erreichbar sind.
Hinzufügen einer Bedingung
Einer der häufigsten Arbeitsschritte beim Bearbeiten einer Suche ist das Hinzufügen einer neuen Bedingung . Diesen Schritt machen Sie dann, wenn Sie das Feld entweder als Bedingungsfeld benötigen (linke Seite der Suchmaske), oder wenn Sie es auf der rechten Seite im Suchergebnisbereich als Tabellenspalte sehen möchten.
Um eine Bedingung hinzuzufügen, markieren Sie den Verknüpfungsoperator, unter dem die neue Bedingung erscheinen soll (UND- bzw. ODER- Verknüpfung). Dann klicken Sie auf den nun aktivierten Schalter
Abbildung: Auswahlmöglichkeiten für Suchbedingungen
Feld | In dem Nachschlagefeld 'Feld' können alle Felder der aktuellen Entität ausgewählt werden. |
Funktion | Hier wählen Sie den Vergleichsoperator. Als Standardeintrag wird 'Keine Einschränkung' verwendet. Je nach dem Typ des Feldes (Text, Zahl, Datum oder Boolean) enthält die Liste unterschiedliche Einträge. |
Template | In Abhängigkeit der Einträge in den Feldern 'Feld' und 'Funktion' stehen Ihnen im Feld 'Template' eine Liste möglicher Einträge zur Verfügung. Diese Templates fungieren als Platzhalter: sie erhalten zum Zeitpunkt der Ausführung der Suche Informationen vom System, wie zum Beispiel das Kürzel des eingeloggten Anwenders, das aktuelle Datum oder erster/letzter Tag des Monats.
Im Zahlenfeld kann ähnlich wie bei den übrigen Zeit-Templates der Monat verändert werden. Erlaubt sind positive wie auch negative Zahlenwerte. Der aktuelle Monat ist standardmäßig mit der '0' vorbelegt. Dadurch ermöglichen sie es, die Suchen sehr flexibel zu gestalten. Ebenfalls in Abhängigkeit der Einträge in den Feldern 'Feld' und 'Funktion' erscheinen unterhalb dieser Felder Eingabefelder zum Hinterlegen von festen Bedingungen. In der unteren Hälfte des Dialogs legen Sie die Eigenschaften des Suchfeldes fest. Dazu die folgenden Erläuterungen zu den Einstellungsmöglichkeiten: |
Anzeige Suchergebnis und Auswahllisten | Ist das Kontrollkästchen nicht aktiviert, so wird das Feld als neue Spalte im Suchergebnisbereich angezeigt. Bei Feldern, die diese Eigenschaft besitzen, wird im Baum ein Lupen-Symbol angefügt. Eine weitere Auswirkung dieser Eigenschaft: ein so markiertes Feld wird in Auswahllisten angezeigt, welche dann erscheinen, wenn nur ein Datensatz erwartet wird, jedoch mehr selektiert wurden. Dies ist zum Beispiel bei der Einzelbrieferstellung der Fall, wenn zu einer Aktivität mehrere Ansprechpartner hinzugefügt und dann durch die Suche entsprechend selektiert wurden, das Schreiben jedoch nur an einen der Ansprechpartner gesendet werden soll. |
Aufnahme in die Selektionsergebnismenge | Ist das Kontrollkästchen aktiv, wird das Feld in die Ergebnismenge aufgenommen. Diese Eigenschaft mag im ersten Moment überflüssig erscheinen, denn die direkt darüber platzierte Einstellung erfüllt den gleichen Zweck (dies erkennt man auch daran, dass bei der Auswahl 'Anzeige Suchergebnis und Auswahllisten' automatisch auch das Kontrollkästchen bei 'Aufnahme in die Selektionsergebnismenge' aktiviert wird). Die Berechtigung dieser Einstellung leitet sich aus abfragetechnischen Zusammenhängen ab. Je nach der Gestaltung der Abfrage kann das (De-)Aktivieren bei einem Feld zu unterschiedlichen Ergebnismengen führen. |
Anzeige als Sucheingabefeld | Zeigt das Feld auf der Lasche 'Suchfelder' an. Erst dadurch ist der Anwender in der Lage, hier auch Einträge vorzunehmen. |
Feld darf entfernt werden | Der Anwender kann dieses Feld aus der Suchdefinition entfernen. Über dieses Kontrollkästchen kann man festlegen, ob andere Mitarbeiter bestimmte Suchkriterien entfernen dürfen oder nicht. Weitere Erläuterungen dazu finden sich weiter oben im Text. |
Standardbedingung im optionalen Suchzweig | Befindet sich die Bedingung in einem Suchzweig und der Suchzweig wird bei der Suche mit berücksichtigt, muss auch diese Bedingung zutreffen. Weitere Erläuterungen zu dieser Einstellung finden Sie weiter unten in diesem Kapitel. |
Darstellung in Lasche Suchfelder | An dieser Stelle können Sie eine alternative Beschreibung für die Suchfelder auf der Lasche 'Suchfelder' eingeben. Bleibt dieses Feld leer, so werden standardmäßig Bedingungen als Labels herangezogen. |
Anlegen und Anpassen von UND-/ODER-Verknüpfungen
Die Auswirkung dieser Einstellung wurde bereits weiter oben im Text erläutert. Um eine solche Verknüpfung in den Baum aufzunehmen, markieren Sie zunächst analog der Vorgehensweise bei den Suchfeldern die UND /ODER-Verknüpfung, der Sie diese neue Verknüpfung unterordnen wollen. Dann wählen Sie aus dem erscheinenden Dialog den gewünschten Operator-Typ aus.
![](../../../__attachments/10684504/Anpassen-und-oder-Verknuepfung.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Die Relationen
Suchfelder und Verknüpfungen zu hinterlegen, ist ein Wert, der viele Möglichkeiten eröffnet. Die wahre Stärke der Such-Bearbeitung jedoch liegt darin, beliebige andere Entitäten in die Suche aufzunehmen. Dies geschieht über die Besitzt- und die Besitzt-nicht-Relationen.
Vorgehensweise zum Hinzufügen dieser Relationen:
Markieren Sie zunächst die UND/ODER-Verknüpfung, der Sie die Relation unterordnen wollen. Per rechter Maustaste erhalten Sie das Kontextmenü, aus dem Sie je nach Aufgabenstellung die Besitzt- oder die Besitzt-nicht-Relation auswählen. Es erscheint ein Dialog mit einer Liste aller verfügbaren Entitäten oder auch Relationen.
Die richtige Auswahl hier ist wichtig, sie kann später nicht mehr geändert werden!
Nach der Auswahl wird der Dialog geschlossen und es wird im Baum ein neuer Eintrag dargestellt. Dieser besteht aus dem Namen der neuen Relation, einem Verknüpfungsoperator und dem Suchfeld Datensatzstatus mit der festen Bedingung True.
Die nächsten Arbeitsschritte bestehen nun wieder darin, zusätzliche Suchfelder und Verknüpfungsoperatoren aufzunehmen. Dies wurde bereits oben im Text entsprechend erläutert. Die Eigenschaften der Besitzt- bzw. Besitzt-nicht-Relationen können ebenfalls über ein Dialogfenster bearbeitet werden. Dieses Fenster erreichen Sie, indem Sie die Relation im Baum markieren und dann F2 drücken.
Die Besitzt-Relation
Der Eigenschaften-Dialog einer Besitzt-Relation hat das folgende Aussehen:
![](../../../__attachments/10684504/Besitzt-Relation.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Benutze "Exists" | Ist diese Checkmarke gesetzt, verwendet die Suche eine EXISTS-Funktion beim Ausführen der SQL-Abfrage auf der Datenbank. Siehe dazu auch die eingehenden Erläuterungen weiter unten in diesem Kapitel. |
Benutze "Outer Join" | Liegen zwei Tabellen mit Differenzmengen vor, so können diese zu einem äußeren Verbund mit Hilfe von "outer join" kombiniert werden. |
Optionaler Suchzweig | Ein aktives Kontrollkästchen veranlasst das Programm, den Suchzweig nur dann beim Ausführen der Suche zu berücksichtigen, wenn der Anwender eine Bedingung in dem Suchzweig eingetragen hat. Siehe auch dazu die eingehenden Erläuterungen weiter unten in diesem Kapitel. |
Hint (Oracle) | Unter Oracle kann für die Suche ein Ausführungsplan hinterlegt werden. Dies kann unter Umständen die Ausführungsgeschwindigkeit der Suchabfrage erhöhen. |
Anzeigetext | Hier kann der Anzeigetext auf der Lasche definiert werden. |
als Gruppe anzeigen | Ist dieser Haken gesetzt, so wird die Relation (diese wird auch als "Suchzweig" bezeichnet) als eigene Gruppe auf der Lasche 'Suchfelder' angezeigt. |
Die Besitzt-nicht-Relation
Eine Besitzt-nicht-Relation unterscheidet sich von einer Besitzt-Relation in einem entscheidenden Punkt: bei ihr ist die Checkmarke Benutze Exists immer gesetzt. Die Abfrage verwendet somit stets eine EXISTS-Klausel (in diesem Fall in der Form NOT EXISTS…). Dies ergibt sich aus der Art der Fragestellung einer Besitzt-nicht-Relation: zu dem Datensatz aus der übergeordneten Entität darf es eben keinen Datensatz in der abhängigen Suche geben. Ob es dort einen, zwei oder mehr gibt, ist dagegen nicht von Bedeutung. Aus dieser Logik ergibt sich auch, dass aus einer über eine Besitzt-nicht-Relation eingebundenen Entität keine Daten im Selektionsergebnis angezeigt werden können.
Eingabevariablen für Suchen
Detailbeschreibung
Für Auswertungen kann es notwendig sein, abhängig von der Eingabe eines Wertes dynamische Bedingungen generieren zu können. Beispielsweise möchte man drei Datumszeiträume betrachten, wobei nur die Eingabe des ersten Bereiches erfolgen soll, da die anderen Zeiträume definierte Abhängigkeiten besitzen. Dies wird zunächst nur für die Verwendung in Datenbankfunktionen vorgesehen.
Definition einer Variable
Variablen werden mit der Funktion "Variablen Definition" in die Suche aufgenommen. In der Detailansicht ist in dieser Funktion die Eingabe eines Variablennamens und die Eingabe des Wertes möglich.
In der ersten Lasche Suchfelder ist nun die Eingabe eines Wertes möglich.
![](../../../__attachments/10684504/Suchmaske_VarDefFunction_VerwendungSuchfelder.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Verwendung der Funktion "Variablen Definition"
Die Auswahl des Feldes dient hier lediglich der Festlegung des Datentyps (Text, Zahl, Datum, usw.) und ggfs. des Nachschlagewertebereichs. Das Feld selbst bleibt in der Selektion unberücksichtigt. Daher sind die Auswahlfelder "Anzeige in Listen" und "Aufnahme in die Selektionsergebnismenge" deaktiviert.
Die Eindeutigkeit des Namens der Suchvariablen wird beim Speichern der Bedingung (OK-Schalter) geprüft. Die Bedingung kann nur dann verlassen werden, wenn das Feld "Variablen ID" gefüllt ist und einen eindeutigen Namen innerhalb der Suche besitzt.
Das Löschen einer Suchvariable oder die Änderung des Namens der Suchvariablen ist nur dann möglich, wenn diese nicht bereits in einer Datenbankfunktion innerhalb der Suche verwendet wird.
In der Lasche Standardsuche ist die Funktion nicht auswählbar, da die Definition des Variablennamens nur in der Lasche Suche bearbeiten unterstützt wird.
Für die uneingeschränkte Nutzung der neuen Funktion ist das Recht zum Bearbeiten von Datenbankfunktionen erforderlich. Der Standardanwender kann keine Variablennamen definieren oder ändern - lediglich deren Variablenwert.
Die Auswahl eines Templates steht nicht zur Verfügung.
Verwendung einer Variable
Die Variable wird innerhalb der DBFunction verwendet. Der Variablenname muss nach folgender Syntax strukturiert sein: ${[Variablenname}, z.B. ${NumberOfDays}
Die Variable wird in der DBFunction durch den Eingabewert des Anwenders ersetzt, wobei auch mehrere Variablen in der DBFunction verwendet werden können. Innerhalb der DBFunction kann mit dem Variablenwert gerechnet werden, in dem in der entsprechenden Datenbanksyntax beispielsweise in dem x Tage hinzugezählt werden. Das Format der Felder beispielsweise Datum oder Zahl wird in der Form in die Datenbankfunktion übernmmen, wie sie auf dem Server eingestellt ist. Damit ist die clientseitige Eingabe unabhängig von der in der Funktion verwendeten Formatierung.
Die Suche eines Geburtstagsbereiches in einem eingebbaren Intervall sähe beispielsweise so aus:
![](../../../__attachments/10684504/Suchmaske_VarDefFunction_Verwendung.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Möchte man die Anzahl der Tage eingebbar machen, die die Geburtstagsvorschau berücksichtigen soll, sähe die DBFunction folgendermaßen aus:
to_char(${DateofOrigin.Person},'MMDD') Between to_char(sysdate,'MMDD') and to_char(sysdate+${NumberOfDays},'MMDD')
wobei ${NumberOfDays} eine Variable auf einem numerischen Feld analog obiger Abbildung wäre.
Besonderheiten bei Datums- und Nachschlagefeldern
Über eine Namenserweiterung ist es möglich, die Formatierung zu beinflussen:
${MeinDatum#ddMMyyHmmss} 29.07.09 00:00:00
${MeinDatum#ddMMyy} ; 29.07.09
${MeinDatum#ORA} TO_DATE('2009-07-29 00:00:00', 'YYYY-MM-DD HH24:MI:SS', 'NLS_DATE_LANGUAGE = German')
${MeinDatum} ; 2009-07-29 00:00:00.0
${MeinLookup#KEY}
liefert das Key-Feld des Nachschlagefeldes.
Auswirkungen für Suchanwender
Die Datenbankfunktion an sich muss der Anwender nicht direkt editieren und benötigt daher auch kein Sucheingabefeld für die Datenbankfunktion, da durch die Verwendung von Variablen die Möglichkeit gegeben ist, die benötigten Werte in die DBFunction hinein zu reichen. Der Anwender bekommt im obigen Fall ein numerisches Eingabefeld in Form der Suchvariablen, um den Vorschauzeitraum für die Geburtstagsvorschau vorzugeben.
Erweiterung der Gruppen im Suchdialog
Gruppen aufklappen
Auf der ersten Lasche der Suchmaske werden die Felder in einzelnen Gruppen untergliedert. Pro Gruppe kann definiert werden, ob diese standardmäßig geöffnet oder geschlossen werden sollen. Die Eigenschaft 'Gruppe standardmäßig aufklappen' kann über die Lasche 'Suche bearbeiten' gesetzt werden. Sie steht sowohl für Relationen (Besitzt) als auch Operatoren (UND/ODER) zur Verfügung. Die Einstellung wird pro Suche gespeichert.
Unterteilung von Gruppen
Standardmäßig repräsentieren die Gruppen die Relationen (Besitzt-Zweig) aus der aktuellen Suche, deren Eigenschaft als 'Gruppe anzeigen' aktiviert ist. Neuerdings kann auch ein Operator (UND-/ODER-Zweig) als Gruppe definiert werden.
![](../../../__attachments/10684504/Suchmaske_Gruppen_Operator_Editor.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Vorteil
Eine Gruppe kann in mehrere Untergruppen aufgeteilt werden. Hierzu müssen innerhalb der Relation Operatoren hinzugefügt werden und die gewünschten Felder auf die entsprechenden Operatoren verteilt werden. Für die Ausgabe eines Operators als Gruppe muss nur noch die Eigenschaft als Gruppe anzeigen im Operator aktiviert und der Anzeigename vergeben werden.
Beispiel
Im folgenden Beispiel befinden sich drei UND-Operatoren in der besitzt-Relation hat Aktivitäten. Die einzelnen UND-Operatoren sind jeweils als Gruppe mit den Anzeigenamen
1. UND-Zweig
2. UND-Zweig
3. UND-Zweig
definiert.
![](../../../__attachments/10684504/Suchmaske_Gruppen_Operator_SucheBearbeiten.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
![](../../../__attachments/10684504/Suchmaske_Gruppen_Operator_Anzeige.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Im Standardfall werden die Operatoren nicht als Gruppen ausgegeben. Die Eigenschaft 'als Gruppe anzeigen' ist im Operator standardmäßig deaktiviert.
Ist einer Gruppe keine Bedingung zugeordnet, so wird die Gruppe nicht ausgegeben.(In dem oberen Beispiel wird die Ausgabe der Gruppe 'hat Aktivitäten' unterdrückt, da alle Bedingungen den UND-Operatoren zugeordnet sind.)
Reihenfolge der Gruppen
Die Gruppen repräsentieren die Relationen ('Besitzt') und gegebenenfalls Operatoren (UND/ODER) aus der aktuellen Suche deren Eigenschaft 'als Gruppe anzeigen' aktiviert ist. Die Reihenfolge der Gruppen wird durch die Reihenfolge der Relationen und Operatoren in der Suche vorgegeben. Wird eine Relation in der Suche verschoben, so verschiebt sich auch die zugehörige Gruppe in der ersten Lasche auf die neue Position.
Sonderfall
Bei aufeinander folgenden Gruppen wird die Position der Gruppen getauscht. Aufeinander folgend bedeutet, dass sich zwischen den Gruppen keine Bedingungen befinden.
Beispiel
In dem folgenden Fall sollen aus der aktuellen Suche die Relationen Aktivität und Geschäftspartner als Gruppen ausgegeben werden. Im Standardfall erfolgt die Ausgabe der Gruppen in folgender Reihenfolge:
Aktivität
Geschäftspartner
![](../../../__attachments/10684504/image-20230825-211534.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
![](../../../__attachments/10684504/image-20230825-211549.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Möchte man die Reihenfolge der Gruppen Aktivität und Geschäftspartner tauschen, so muss lediglich die Gruppe Geschäftspartner nach oben verschoben werden, so dass sich keine weiteren Bedingungen zwischen beiden Gruppen befinden. Die Gruppen werden nun in folgender Reihenfolge ausgegeben:
Geschäftspartner
Aktivität
![](../../../__attachments/10684504/Suchmaske_ReihenfolgeGruppen_Positionswechsel_SucheBearbeiten.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
![](../../../__attachments/10684504/Suchmaske_ReihenfolgeGruppen_Positionswechsel_Anzeige.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Datenbankfunktion
Warnung
Die Datenbankfunktion darf keine DDL-Befehle beinhalten (z.B. Drop Table XYZ).
Die Datenbankfunktionen sind mit einer mehrzeiligen Eingabemaske versehen. Die Längenbegrenzung für das Eingabefeld ist über die Systemeinstellungen konfigurierbar. ( Menü Optionen /Systemeinstellungen / Suchfenster – Eintrag Maximale Anzahl an Zeichen für den SQL-Ausdruck). Der Defaultwert ist 1000 (Zeichen).
![](../../../__attachments/10684504/MaximaleAnzahlanZeichenfuerDBFunktion.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Das Bearbeiten der Datenbankfunktionen steht nur Anwendern mit dem Funktionsrecht 'DB Funktionen administrieren' zur Verfügung. Der Standard-Anwender kann die Funktion weder auswählen noch den Inhalt der Datenbankfunktion ändern.
![](../../../__attachments/10684504/Anzeige_in_der_Baumansicht_der_Lasche_Suche_bearbeiten.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Abbildung: Anzeige in der Baumansicht der Lasche 'Suche bearbeiten'
Abbildung: Anzeige in der Suchlasche
![](../../../__attachments/10684504/Anzeige_in_dem_Editor_der_Lasche_Suche.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Abbildung: Anzeige in dem Editor der Lasche Suche bearbeiten
Variablen in DBFunktion
Innerhalb der DBFunktion kann ein vollständiger Relationsname verwendet werden, um die gewünschte Entität genau zu qualifizieren. Die Definition erfolgt entsprechend dem CSV-Export. So lässt sich z.B. mit folgendem Wert der Freetext aus dem Mitarbeiter in der Aktivität benutzten.
Activity+rCuAc-Customer+rEmployeeOffice_Customer.Freetext1.Employee
[QuellEntität+RelationName]-[QuellEntität+RelationName].FeldName.Entität
![](../../../__attachments/10684504/SucheDBFunktion.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Grundlegende Überlegungen beim Bearbeiten einer Suche
Beim Bearbeiten einer Suche müssen unter anderem die folgenden Aspekte beachtet werden:
Wie lautet die Fragestellung, zu der die Suche erstellt werden soll?
In welcher Beziehung stehen die Entitäten und Relationen zueinander, die in der Suche verwendet werden?
Welche Felder aus den Entitäten werden bei den Sucheingabe- und Suchergebnisfeldern benötigt?
Dazu einige grundsätzliche Hinweise:
Eine Suchanforderung kann, obwohl sie sich einfach anhört, sehr aufwändig umzusetzen sein.
Ein Konzept ist dringend notwendig, schon allein aus dem Grund, dass bestimmte Einstellungen in der Suche später nicht mehr geändert werden können. Diese müssen dann gelöscht und neu angelegt werden. So kann man zum Beispiel eine Besitzt-Relation nicht nachträglich in eine Besitzt-nicht-Relation umwandeln.
An den folgenden Beispielen sollen besonders die verschiedenen Einstellungen bei Besitzt- bzw. Besitzt-nicht-Relationen erläutert werden. Um diese Beispiele möglichst verständlich zu halten, wurde die Menge der Entitäten auf 2 beschränkt: es sollen unterschiedliche Listen mit Daten zu den Geschäftspartnern und zu den Ansprechpartnern erstellt werden. Folgende Fälle sind dabei möglich:
Fall 1:
Die Liste soll Daten der Geschäftspartner und Ansprechpartner enthalten. Eine solche Liste bildet oft die Basis für Serienbriefe.
Fall 2:
Die Liste soll Daten der Geschäftspartner, jedoch keine Daten der Ansprechpartner enthalten. Die Relation zum Ansprechpartner dient also nur der Selektion (Beispiel: Ich brauche eine Liste der Geschäftspartner, die mindestens einen Ansprechpartner haben, der die Funktion 'Einkäufer' hat) Jeder Geschäftspartner soll also nur einmal in der Liste erscheinen, egal wie viele Ansprechpartner er hat, die diese Bedingung erfüllen.
Fall 3:
die Umkehrung von Fall 2, also eine Liste in der Form: Alle Geschäftspartner, die KEINEN Anaprechpartner mit der Funktion 'Einkäufer' haben.
Fall 4:
Sowohl die Geschäftspartner ohne Ansprechpartner als auch die Geschäftspartner mit Ansprechpartnern sollen erscheinen (hier ist wieder zu unterscheiden: wie oft sollen die Geschäftspartner mit Ansprechpartnern ausgegeben werden: einmal oder in der Anzahl ihrer Ansprechpartner).
Fall | Art der Relation | 'Benutze EXISTS' |
---|---|---|
1 | Besitzt | Nein |
2 | Besitzt | Ja |
3 | Besitzt nicht | Ja (zwangsweise, da fest vorgegeben) |
IST-Relationen
Ausgangspunkt ist die Suchmaske zum Geschäftspartner. Wir legen fest: es gibt einen Geschäftspartner) CURSOR, dem 7 Ansprechpartner zugeordnet sind sowie einen Kunden Adidas, zu dem kein Ansprechpartner angelegt wurde.
Schritt 1: Neue Suche Anlegen
Suche nach KURZNAME = CURSOR, Ergebnis: 1 Datensatz. Suche nach KURZNAME = ADIDAS, Ergebnis: 1 Datensatz.
Schritt 2: Besitzt-Relation 'hat Ansprechpartner' hinzufügen.
Suche nach KURZNAME = CURSOR, Ergebnis: 7 Datensätze, die alle die gleichen Einträge in der Ergebnistabelle haben (also Duplikate sind).
Suche nach KURZNAME = ADIDAS, Ergebnis: 0 Datensät
Schritt 3: Weitere Suchfelder zur Relation 'hat Ansprechpartner' hinzufügen
Sie können hier zum Beispiel den Vornamen, den Nachnamen und die Abteilung hinzufügen. Sie machen keine Änderungen bei den Eigenschaften dieser Felder. Somit werden diese Felder in die Selektionsergebnismenge aufgenommen.
Suche nach KURZNAME = CURSOR, Ergebnis: 7 Datensätze, die alle die gleichen Einträge in der Ergebnistabelle haben (also Duplikate sind). Suche nach KURZNAME = ADIDAS, Ergebnis: 0 Datensätze.
Schritt 4: Bei den neuen Suchfeldern setzen Sie die Eigenschaft "Anzeige Suchergebnis und Auswahllisten"
Suche nach KURZNAME = CURSOR, Ergebnis: 7 Datensätze, die die 7 unterschiedlichen AP in 3 neuen Spalten am Ende der Tabelle zeigen. Suche nach KURZNAME = ADIDAS, Ergebnis: 0 Datensätze.
Fazit und Empfehlungen für die Gestaltung von Suchen:
Duplikate erlauben
Die Einstellung 'Duplikate erlauben' muss mit Bedacht verwendet werden. Möchten Sie Daten aus der abhängigen Entität (hier der Ansprechpartner) ausgeben, so sollten Sie das Kontrollkästchen bei 'Duplikate erlauben' unbedingt aktivieren. Um sicher zu stellen, dass jeder vorliegende Datensatz auch tatsächlich ausgegeben wird, können Sie grundsätzlich bei den 'Besitzt–Relationen' immer das eindeutige Suchfeld 'Primärschlüssel' eintragen und bei diesem die Eigenschaft 'Aufnahme in die Selektionsergebnismenge' wählen.
Aufnahme in die Selektionsergebnismenge
Dieses Merkmal müssen Sie nur setzen, wenn Sie tatsächlich auch Felder aus der abhängigen Entität ausgeben möchten oder wenn Sie die korrekte Anzahl der Datensätze wissen möchten (Beispiel: Wie viele Ansprechpartner hat CURSOR? Hier geht es nur um die Zahl, wie die Ansprechpartner heißen, ist dagegen nicht von Interesse).
Schritt 5: Bei der Relation setzen Sie die Eigenschaft 'Benutze Exists'
Suche nach KURZNAME = CURSOR, Ergebnis: 1 Datensatz Suche nach KURZNAME = ADIDAS, Ergebnis: 0 Datensätze.
Schritt 6: Eine neue Suche anlegen und den AP diesmal über eine Besitzt nicht-Relation hinzufügen.
Suche nach KURZNAME = CURSOR, Ergebnis: 0 Datensätze Suche nach KURZNAME = ADIDAS, Ergebnis: 1 Datensatz.
Einstellung 'Optionaler Suchzweig'
Bei einer Suche für die Erstellung von Serienbriefen sollen dem Mitarbeiter viele Eingabemöglichkeiten geboten werden. Allerdings sollen die Suchzweige, in denen er keine Eingaben macht, nicht für die Selektion herangezogen werden.
Wenn es sich um einen Suchzweig mit einer 'Besitzt-Relation' handelt, bei dem das Kontrollkästchen 'Benutze "EXISTS"' nicht gesetzt ist, so hat dieser Suchzweig automatisch eine einschränkende Wirkung. Um diese einschränkende Wirkung eines Suchzweiges aufzuheben, gibt es die Einstellung 'Optionaler Suchzweig'. Dadurch wird dieser Suchzweig nur dann beachtet, wenn der Anwender Sucheingaben in ihm vorgenommen hat.
Damit diese Logik funktioniert, sind Bedingungen mit diesem Merkmal von der Anzeige als Sucheingabefeld ausgeschlossen. Dies ist auch der Grund, warum das Feld 'Datensatzstatus' nicht angezeigt wird (denn dort ist dieses Merkmal ebenfalls gesetzt).
Die Einstellung gilt nicht bei dem Auswahlkriterium 'keine Einschränkung'. Dies würde auch keinen Sinn ergeben.
Ein weiteres Beispiel
Es wurde ein Freifeld hinterlegt, welches den Namen 'Messe' erhält. Dieses Freifeld besitzt Schlüsselwerte für die verschiedenen Messeveranstaltungen, an denen das Unternehmen teilnimmt. Um die Geschäftspartner zu den sie interessierenden Messen einzuladen, wurden bei ihnen diese Felder hinterlegt.
Eine Suche auf die Geschäftspartner hat nun eine 'Besitzt-Relation' auf dieses Freifeld. In einer Suche sollen nur die Geschäftspartner mit einem Freifeld 'Messe' erscheinen. Daher wird für dieses Feld in der 'Besitzt-Relation' das Merkmal 'Standardbedingung im optionalen Suchzweig' nicht gesetzt. Das Feld wird also geprüft und der Suchzweig auf das Freifeld 'Messe' folgerichtig ausgewertet. Das führt dazu, dass der optionale Suchzweig bei der Selektion immer mit berücksichtigt wird.
Das Feld für den Schlüssel (die jeweilige Messe) darf der Anwender sehen und mit Schlüsselwerten füllen. Gibt er keinen Schlüssel ein, erhält er alle Kunden, die ein solches Freifeld besitzen.
Setzt man nun das Merkmal 'Standardbedingung im optionalen Suchzweig', so stehen, wenn der Anwender in den Feldern zu diesem Suchzweig nichts eingibt, alle Kunden für die Selektion zur Verfügung, auch die ohne ein solches Freifeld.
Anmerkungen zum Umgang mit der Suche
Relationen
'Besitzt nicht'
Hier wird implizit immer die Option 'Benutze exists' im Suchzweig verwendet.
Optionen in der Relation (Suchzweig)
'Optionaler Suchzweig'
Die Verwendung von Suchergebnisfeldern innerhalb eines optionalen Suchzweigs macht keinen Sinn, da der Suchzweig i.d.R. aus der Suche entfernt wird.
Gleiches gilt auch für die Option 'Anzeige in Listen'Hinweis
Beim Hinzufügen von einer Bedingung oder mehreren Bedingungen zu einer Suche werden die Flags für "Anzeige in Listen" und "Aufnahme in die Selektionsergebnismenge" immer automatisch gesetzt. In der Regel benötigt man die beiden Felder auch als Ausgabe, wenn man sie der Suche hinzugefügt hat.
Ein optionaler Suchzweig wird aus der Suche nicht mehr entfernt, sobald der Anwender eine Änderung an einem Feld des optionalen Suchzweigs vornimmt.
Beispiel: Ein Wechsel der Funktion oder das Ändern eines Wertes.
Standardbedingung im optionalen Suchzweig
Bei Verwendung dieser Option durch den Administrator ist darauf zu achten, dass zuerst die Bedingung komplett eingepflegt wird und erst dann die Option aktiviert wird.
Hintergrund:
Bei jeder Änderungen der Bedingung wird die Option 'Standardbedingung im optionalen Suchzweig' automatisch deaktiviert. Nach diesem Prinzip erfolgt die Erkennung, dass die Bedingung durch einen Anwender modifiziert wurde.Maximale Ergebnismenge einschränken
Die Option im Bearbeitungsdialog für die besitzt-Relation wurde entfernt. Beim Laden einer bestehenden Suche mit aktivierter Option wird diese automatisch deaktiviert und die Anzahl der Suchergebnisse auf den Standardwert (i.d.R. 100) zurückgesetzt.'Outer Join'
Bis Version 10.2: Sobald ein Suchzweig als Outer-Join gekennzeichnet wird, werden dessen abhängige Suchzweige ebenfalls per Outer-Join selektiert.
Ab Version 10.3: Abhängige Suchzweige werden implizit nicht mehr per Outer-Join, sondern per Inner-Join selektiert. Sollen diese ebenfalls per Outer-Join selektiert werden, kann die Option Outer-Join im Suchzweig explizit ausgewählt werden.
Gegeben:
• Suche mit folgender Struktur: Ansprechpartner –> 'besitzt Aktivitäten' –> 'besitzt Anfrage' (Anfrage ist unterhalb der Aktivität)
• Aktiviertes OuterJoin in 'besitzt Aktivitäten'
• kein OuterJoin in 'besitzt Anfrage'
• Die Suche enthält Suchergebnisfelder aus dem Suchzweig 'besitzt Aktivitäten'
Prinzipiell gilt für alle Versionen:
Es werden alle Ansprechpartner gefunden, auch jene die keine Aktivität besitzen.
Unterschiedliches Verhalten zwischen den Versionen
Bis 10.2: Aufgrund des impliziten OuterJoin in 'besitzt Anfrage', werden die Suchergebnisfelder für Aktivitäten befüllt, auch wenn keine Anfrage zu der Aktivität verknüpft ist.
Ab 10.3: Aufgrund des InnerJoin in 'besitzt Anfrage', werden die Suchergebnisfelder für Aktivitäten mit Leerwerten befüllt, wenn keine Anfrage zu der Aktivität verknüpft ist.Benutze exists
Die Verwendung von Suchergebnisfeldern innerhalb eines Suchzweigs mit aktivierter Option 'Benutze exists' sollte vermieden werden, da dessen Suchfelder nicht in die Suchergebnsmenge aufgenommen werden.
Es sollten ausschließlich Bedingungen zur Einschränkung der Selektektion eingegeben werdenHint
Wird nur bei Verwendung von Oracle als Datenbank berücksichtigt.
Funktionen
Standardfunktionen
Der Administrator kann Bedingung in der Laschen 'Suche bearbeiten' erfassen. Eine Auswahl der Funktion ist nicht zwingend erforderlich. Standardmäßig wird die Bedingung mit der Funktion 'keine Einschränkung' initialisiert. Der Anwender kann nun seine Selektionskriterien in der ersten Lasche einpflegen. Um die Auswahl der Funktionen dem Anwender zu ersparen, wird nun die Funktion 'keine Einschränkung' bei allen entsprechenden Feldern durch die zugehörige Standardfunktion ersetzt. Die Standardfunktionen sind in Abhängigkeit des Datentyps wie folgt definiert:Datentyp 'String' (Text ohne Nachschlagen) = Funktion 'beginnt mit'
Datentyp 'String' (Text mit Nachschlagen) = Funktion 'ist gleich'
( HINWEIS Der eingegeben Wert wird validiert.)Datentyp 'Integer' (Zahl) = Funktion 'ist gleich'
Datentyp 'Date' (Datum) = Funktion 'liegt zwischen'
Datentyp 'Boolean' (ja/nein) = Funktion 'alle' (entspricht 'keine Einschränkung')
Speichern von geänderten Funktionen
WICHTIG Änderungen auf der ersten Lasche werden nur dann gespeichert, wenn die Bedingung (Funktion und Selektionskriterium) gültig ist.
Eine Bedingung ist gültig, wenn deren Selektionseingabefelder mit Werten befüllt sind.
Eine Änderung der Funktion in der ersten Lasche wird in der Suche also erst dann gespeichert, wenn das Eingabefeld befüllt worden ist. Ist dies nicht der Fall, so wird die Funktionsänderung beim Speichern der Suche nicht berücksichtigt.
Die beschriebene Einschränkung gilt nicht für die Lasche 'Suche bearbeiten'. Hier werden Änderungen immer gespeichert.Hat Anzahl (Count) - wird zukünftig entfallen
Verwendung nur in abhängigen Suchzweigen möglich (nicht in oberster Ebene)
Nur einmalige Anwendung innerhalb einer Suche.
Beispiele mit weiteren Erläuterungen
Eine einfache Liste der Ansprechpartner von A – K
Beim Feld Nachname die Funktion Liegt zwischen verwenden und die Werte A und L eintragen.
Die Funktion Liegt zwischen beim Feld Nachname muss auf A bis L gesetzt sein, so dass auch der letzte mit K beginnende Kunden gefunden wird.
Sollte es AP geben, die einfach L heißen, muss man eine weitere Bedingung hinterlegen: Nachname beginnt nicht mit L.
Das Feld Nachname kann zusätzlich so definiert sein, dass es nicht im Eingabebereich erscheint (Anzeige als Sucheingabefeld: hier das Kontrollkästchen deaktivieren).
Ansprechpartner mit Produktinteresse
Man möchte eine Abfrage für viele verschiedene Aspekte anlegen. Diese sollen bei der Selektion aber nur dann berücksichtigt werden, wenn der Anwender auch etwas einträgt.
Zunächst muss man die Start-Entität festlegen. Dies ist im Beispiel der Ansprechpartner.
Zu diesem hinterlegt man eine 'Besitzt-Relation' mit einer anderen Entität (z.B. 'Produktinteresse')
Bei dieser Relation bearbeitet man nun die Eigenschaften: hier klickt man das Kontrollkästchen Optionaler Suchzweig an. Dadurch wird diese Relation nur dann in der Abfrage berücksichtigt, wenn der Anwender in diesem Zweig eine Eingabe gemacht hat.
Nun muss beim Feld 'Datensatzstatus = Aktiv' das Kontrollkästchen 'Standardbedingung im optionalen Suchzweig' aktiviert werden. Diese Einstellung bewirkt, dass das Feld nicht als "vom Anwender bearbeitet" interpretiert wird. Grundsätzlich gilt: diese Einstellung muss dann gesetzt sein, wenn bei Funktion etwas anders gesetzt wurde als 'Keine Einschränkung'.
Einfeldsuche
Detailbeschreibung
Die Einfeldsuche basiert in erster Linie auf dem Juhuuu!-Suchindex. Eine Suche muss entspreche administriert werden, damit diese als Einfeldsuche genutzt werden kann. Mit Hilfe von Schlüsselwörtern kann der Administrator dem Benutzer die Möglichkeit geben, auf bestimmten Feldern exakt zu suchen. Hierzu definiert der Administrator auf den Feldern der Suche Schlüsselwörter, die der Benutzer im Eingabefeld der Einfeldsuche nutzen kann.
Voraussetzungen
Damit die Einfeldsuche genutzt werden kann, müssen die folgenden Bedingungen erfüllt sein:
Die Systemeinstellung "Einfeldsuche" muss aktiviert werden
In der Suche muss die Option "Einfeldsuche" aktiviert sein
Die Suche muss im Hauptzweig der Suche eine Juhuuu!-Bedingung besitzen
Erfüllt die Standardsuche einer Entität die aufgeführten Bedingungen, so wird beim Öffnen einer Entität nicht mehr die Suchmaske angezeigt. Dem Benutzer wird direkt die Listenansicht präsentiert und dort kann dieser in der Einfeldsuche direkt seine Suchbedingungen eingeben.
Benutzung der Einfeldsuche
Die Einfeldsuche wird über den Schalter ("Lupe") oder die ENTER-Taste ausgelöst. Die Einfeldsuche muss Eingaben enthalten wenn die Systemeinstellung "Prüfung der Suchkriterien vor Ausführung", ansonsten wird keine Suche ausgeführt. Werden mehrere Datensätze gefunden, so wird die Trefferliste in der Listenansicht angezeigt. Bei genau einem Treffer, wechselt die Anwendung automatisch in die Detailansicht. Werden keine Ergebnisse gefunden oder die Trefferliste enthält mehr als die maximal erlaubte Anzahl von Suchergebnissen, so wird die Suche abgebrochen und der Benutzer informiert. Das vorherige Suchergebnis bleibt bestehen.
Schlüsselwörter werden automatisch während der Eingabe erkannt. Sind zum Beispiel die Schlüsselwörter "Firma" und "Ort" definiert, so wird bei der Eingabe des Buchstabens "F" das Schlüsselwort "Firma" in der Auswahlliste angezeigt. Mit den Cursortasten Oben und Unten kann der Benutzer ein Schlüsselwort auswählen und mit ENTER in die Einfeldsuche übernehmen. Ein Schlüsselwort, dass bereits verwendet wird, kann nicht noch einmal ausgewählt werden und wird bei weiteren Eingaben als Text interpretiert. Sind auf einem Feld mehrere Schlüsselwörter definiert, so kann in der Einfeldsuche nur eines dieser Schlüsselwörter verwendet werden. Sind beispielsweise auf dem Feld "Firma" im Geschäftspartner die Schlüsselwörter "GP" und "Firma" definiert, so wird nach der Eingabe des Schlüsselwortes "GP" das Schlüsselwort "Firma" nicht mehr erkannt. Über die Cursortaste Unten oder der Tastenkombination STRG + Leer kann die Auswahlliste mit allen verfügbaren Schlüsselwörtern geöffnet werden. Er werden dabei die ersten fünf verfügbaren Schlüsselwörter in alphabetischer Reihenfolge angezeigt.
Nach einem Schlüsselwort muss immer ein Text stehen, der in die Suche übernommen wird. Eine Ausnahme stellen hier Implizite Schlüsselwörter dar. Der Text wird dabei immer nur bis zum nächsten Leerzeichen verwendet. Um dies zu verhindern, können Textphrasen mit Anführungszeichen genutzt werden.
Eingaben die keinem Schlüsselwort zugeordnet sind, werden in das Juhuuu!-Suchfeld eingetragen.
![](../../../__attachments/10684504/800px-SFS_Einfeldsuche.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Implizite Schlüsselwörter
In der Regel wird der Benutzer ein Schlüsselwort eingeben und danach den Suchtext definieren. Bei bestimmten Suchfeldern, die nur eine kleine Anzahl möglicher Werte enthalten, kann der Administrator implizite Schlüsselwörter definieren, um dem Benutzer die Sucheingabe zu erleichtern.
Das Feld Typ im Geschäftspartner enthält beispielsweise die Werte U (Unternehmen), H (Herr) und F (Frau). Hier könnte der Administrator da Schlüsselwort "Typ" für das gleichlautende Feld vergeben, so dass der Benutzer in der Einfeldsuche nach dem Personentyp einschränken kann. Die Eingabe des Benutzers könnte dann wie folgt aussehen:
"Typ H Klaus Müller"
Es werden nun alle Geschäftspartner mit dem Personentyp "H" (Herr) gesucht, welche den Text Klaus Müller (Juhuuu!-Suche) enthalten.
Für die einzelnen Personentypen kann der Administrator nun aber implizite Schlüsselwörter definieren. Bei Impliziten Schlüsselwörter muss der Benutzer keine Feldwert mehr angeben. Dieser wird im Schlüsselwort definiert. Ein implizites Schlüsselwort wird wie folgt definiert:
"Schlüsselwort[Feldwert]"
In Beispiel kann der Administrator nun die folgenden drei Schlüsselwörter für das Feld Typ definieren:
Unternehmen[U]
Herr[H]
Frau[F]
Die obige Sucheingabe des Benutzers kann nun wie folgt aussehen:
"Herr Klaus Müller"
Das Suchergebnis ist dasselbe wie im obigen Beispiel. Der Personentyp wird auf den Wert H eingeschränkt und der Geschäftspartner Klaus Müller gesucht. Nun muss aber der Benutzer nicht mehr wissen, dass der Personentyp "Herr" den Schlüsselwert "H" hat. Die Sucheingabe nähert sich so der natürlichen Sprache und ist leichter verständlich.
Identifikationsschlüssel
Zusätzlich können in der Suche Identifikationsschlüssel markiert werden (i.d.R. werden dies ein oder zwei Felder sein). Gibt der Benutzer nur ein Suchwort ein, so wird dieses zunächst in den Suchfeldern nach einander (scharf) gesucht. Bleibt die Treffermenge leer, so wird das Suchwort an die Lucene-Suche übergeben. Hiebei wird die Suche mehrfach ausgeführt und jeweils der nächste Identifikationsschlüssel gesetzt. Bei den Suchfunktionen gelten dieselben Regeln wie bei der normalen Einfeldsuche. Die erste Suche, die ein Ergebnis liefert, wird dem Benutzer angezeigt. Die Reihenfolge der Suchen wird durch die Reihenfolge der als Identifikationsschlüssel markierten Felder in der Suche vorgeben.
Beispielsuchen
Um die Funktionsweise der Einfeldsuche zu verdeutlichen, sei die folgende Suche für Geschäftspartner definiert:
![](../../../__attachments/10684504/SFS_Suchdefinition.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Das Feld Kurzname ist als Identifikationsschlüssel markiert und es sind die Schlüsselwörter "Firma" und "GP" definiert. Das Feld Geschäftspartnernummer ist ebenfalls als Identifikationsschlüssel markiert. Für das Feld Typ sind drei Implizite Schlüsselwörter "Frau[F]","Herr[H]" und "Unternehmen[U]" definiert. Auf das Feld Ort in der Adressrelation kann über die Schlüsselwörter "in" und "Ort" explizit gesucht werden.
Sucheingabe: Firma Cursor in Giessen
In das Feld Kurzname wird der Text "CURSOR" in Großbuchstaben und in das Feld Ort der Text "Giessen" übernommen.
![](../../../__attachments/10684504/SFS_Suche_Firma_in.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Sucheingabe: Unternehmen Cursor
Das Implizite Schlüsselwort "Unternehmen" wird mit dem Feld Wert "U" in das Feld Typ übernommen. Da der Text "Cursor" keinem Schlüsselwort zugeordnet ist, wird dieser in das Juhuuu!-Suchfeld eingetragen.
![](../../../__attachments/10684504/SFS_Suche_Unternehmen.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Sucheingabe: Firma Cursor GP NSI
In das Feld Kurzname wird der Text "CURSOR" in Großbuchstaben übernommen. Da für das Feld Kurzname bereits das Schlüsselwort "Firma" in Verwendung ist, wird das Schlüsselwort GP als Text interpretiert und an das Juhuuu!-Suchfeld übergeben.
![](../../../__attachments/10684504/SFS_Suche_Firma_GP.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Sucheingabe: Firma "Cursor Giessen"
In das Feld Kurzname wird der Text "CURSOR GIESSEN" in Großbuchstaben übernommen.
![](../../../__attachments/10684504/SFS_Suche_Firma_Textphrase.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Sucheingabe: CURSOR
Bei der Eingabe eines Suchwortes werden zuerst nacheinander die Suchen für die Identifikationsschlüssel ausgeführt. Zuletzt wird das Suchwort an das Juhuuu!-Suchefeld übergeben. Dabei werden die nachfolgenden Suchen nacheinander ausgeführt, bis eine Suche ein Ergebnis liefert.
![](../../../__attachments/10684504/SFS_Suche_Identifikationsschl%C3%BCssel_Kurzname.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
![](../../../__attachments/10684504/SFS_Suche_Identifikationsschl%C3%BCssel_GPNr.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
![](../../../__attachments/10684504/SFS_Suche_Identifikationsschl%C3%BCssel_Lucene.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Vorbereitete Suchen
Neben dem Eingabefeld der Einfeldsuche kann der Benutzer die zur Verfügung stehenden Schnellsuchen in einer Liste auswählen. Die Schnellsuchen werden dabei direkt ausgeführt. Beim Ausführen einer Schnellsuche wird die Eingabe in der Einfeldsuche geleert. Als oberste Suche wird die aktuelle Suche des Suchfensters angezeigt.
![](../../../__attachments/10684504/SFS_VorbereiteteSuchenAusf%C3%BChren.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Erweiterte Suche
Über den Schalter "Erweiterte Suche" gelangt der Benutzer in das Suchfenster. Eingaben aus der Einfeldsuche werden dabei in das Suchfenster übernommen. Führt der Benutzer eine Suche über das Suchfenster aus oder ändert die Suche ab, so wird die Eingabe in der Einfeldsuche geleert und die geänderte Suche in der Liste der Vorbereiteten Suchen angezeigt.
Such-Logik
Benutzereingaben in das Eingabefeld der Einfeldsuche werden beim Ausführen der Suchen geprüft und in die aktuelle Suche eingefügt. Hierbei wird die aktuell eingestellte Suche genutzt und damit auch die konfigurierten Suchfunktionen berücksichtigt. Beim Ausführen der Einfeldsuche wird immer auf den gespeicherten Stand der Suche zurückgegriffen.
Da die Eingabe als Text erfolgt, werden von der Einfeldsuche nicht alle Funktionalitäten in Suchen unterstützt. Werden auf Feldern nicht unterstütze Suchfunktionen eingesetzt, so werden die Eingaben in der Einfeldsuche ignoriert und dem Juhuuu!-Suchfeld übergeben. Bestehende Suchparameter werden durch die Eingaben in der Einfeldsuche überschrieben. Kann der Eingabetext nicht in den Datentyp des Suchfeldes konvertiert werden, so gilt die Eingabe als ungültig und wird nicht berücksichtigt.
Textfelder
Ist auf dem Textfeld nur die Eingabe von Großbuchstaben erlaubt, so konvertiert die Einfeldsuche das Suchwort automatisch in Großbuchstaben.
Folgende Suchfunktionen werden auf Textfeldern in der Einfeldsuche unterstützt:
beginnt mit
beginnt nicht mit
endet mit
endet nicht mit
enthält
enthält nicht
ist einer von
ist keiner von
ist gleich
ist nicht gleich
ist größer
ist gleich oder größer
ist kleiner
ist kleiner oder größer
keine Einschränkung
liegt zwischen
liegt nicht zwischen
Bei den Funktionen "liegt zwischen" und "liegt nicht zwischen" wird nur der erste Parameter gefüllt. Der zweite Parameter bleibt leer. Bei den Funktionen "ist einer von" und "ist keiner von" wird der Eingabeparameter der bestehenden Liste von Werten hinzugefügt.
Memotext Felder
Beim Memotext Feldern stehen nicht alle Suchfunktionen von Textfeldern zur Verfügung. Hier gelten aber ansonsten die selben Regeln.
Folgende Suchfunktionen werden auf Memotext Feldern in der Einfeldsuche unterstützt:
beginnt mit
beginnt nicht mit
endet mit
endet nicht mit
keine Einschränkung
Zahlenfelder
Das die Eingabe von Parametern in der Einfeldsuche als Text erfolgt, müssen Ziffern von Text in Zahlen umgewandelt werden. Die Zahleneingabe erfolgt im länderspezifischen Zahlenformat, z.B. #.###,# (Deutschland) oder #,###.# (USA). Hierbei werden ganzzahlige Zahlenwerte und Gleitkommazahlen unterschieden. Ist im Suchfeld nur die Eingabe von Ganzzahlen erlaubt, so werden Nachkommastellen nicht berücksichtigt. Einschränkungen der möglichen Zahlenwerte über die Feldeigenschaften werden bei der Einfeldsuche nicht berücksichtigt.
Folgende Suchfunktionen werden auf Zahlenfeldern in der Einfeldsuche unterstützt:
ist einer von
ist keiner von
ist gleich
ist nicht gleich
ist größer
ist gleich oder größer
ist kleiner
ist kleiner oder größer
keine Einschränkung
liegt zwischen
liegt nicht zwischen
Bei den Funktionen "liegt zwischen" und "liegt nicht zwischen" wird nur der erste Parameter gefüllt. Der zweite Parameter bleibt leer. Bei den Funktionen "ist einer von" und "ist keiner von" wird der Eingabeparameter der bestehenden Liste von Werten hinzugefügt.
Bool'sche Felder
In der Einfeldsuche können Bool'schen Felder nur die Werte "true" (wahr) und "false" (falsch) übergeben werden. Alle anderen Werte werden als "false" (falsch) interpretiert.
Folgende Suchfunktionen werden auf Bool'schen Feldnern in der Einfeldsuche unterstützt:
ist gleich
keine Einschränkung
Datumsfelder
Die Einfeldsuche unterstützt die Suche nach Datumswerten. Die Datumswerte werden länderspezifisch interpretiert und umgewandelt. Die Eingabe von Zeitwerten wird von der Suchmaske und damit auch von der Einfeldsuche nicht unterstützt. Die Datumswerte müssen dabei vollständig angegeben werden, z.B. "31.12.2013", "31/12/2013".
Folgende Suchfunktionen werden auf Datumsfeldern in der Einfeldsuche unterstützt:
enthält
enthält nicht
ist gleich
ist nicht gleich
ist größer
ist gleich oder größer
ist kleiner
ist kleiner oder größer
keine Einschränkung
liegt zwischen
liegt nicht zwischen
Bei den Funktionen "liegt zwischen" und "liegt nicht zwischen" wird nur der erste Parameter gefüllt. Der zweite Parameter bleibt leer.
Nachschlagefelder
Bei Nachschlagefeldern wird die Eingabe eingetragen und ggf. validiert. Bei Picklisten-Feldern findet keine Validierung statt.
Folgende Suchfunktionen werden auf Nachschlagefeldern in der Einfeldsuche unterstützt:
beginnt mit
beginnt nicht mit
endet mit
endet nicht mit
enthält
enthält nicht
ist einer von
ist keiner von
ist gleich
ist nicht gleich
ist größer
ist gleich oder größer
ist kleiner
ist kleiner oder größer
keine Einschränkung
liegt zwischen
liegt nicht zwischen
Werden die Funktionen "ist gleich", "ist nicht gleich", "ist einer von" und "ist keiner von" verwendet, so wird der Nachschlagewert validiert. Kann kein eindeutiger Nachschlagewert validiert werden, so gilt die Eingabe als ungültig und wird nicht berücksichtigt.
Bei den Funktionen "liegt zwischen" und "liegt nicht zwischen" wird nur der erste Parameter gefüllt. Der zweite Parameter bleibt leer. Bei den Funktionen "ist einer von" und "ist keiner von" wird der Eingabeparameter der bestehenden Liste von Werten hinzugefügt.
Nummerische Nachschlagefelder
Bei nummerischen Nachschlagefeldern wird die Eingabe in eine Ganzzahl konvertiert und ggf. validiert.
Folgende Suchfunktionen werden auf nummerischen Nachschlagefeldern in der Einfeldsuche unterstützt:
ist einer von
ist keiner von
ist gleich
ist nicht gleich
ist größer
ist gleich oder größer
ist kleiner
ist kleiner oder größer
keine Einschränkung
liegt zwischen
liegt nicht zwischen
Werden die Funktionen "ist gleich", "ist nicht gleich", "ist einer von" und "ist keiner von" verwendet, so wird der Nachschlagewert validiert. Kann kein eindeutiger Nachschlagewert validiert werden, so gilt die Eingabe als ungültig und wird nicht berücksichtigt. Kann der Eingabetext in keine Ganzzahl konvertiert werden, so gilt die Eingabe ebenfalls als ungültig und das Suchfeld wird nicht gefüllt.
Bei den Funktionen "liegt zwischen" und "liegt nicht zwischen" wird nur der erste Parameter gefüllt. Der zweite Parameter bleibt leer. Bei den Funktionen "ist einer von" und "ist keiner von" wird der Eingabeparameter der bestehenden Liste von Werten hinzugefügt.
Administration und Konfiguration der Einfeldsuche
Systemparameter 'Einfeldsuche'
Der Systemparameter Einfeldsuche im Bereich Systemeinstellungen /Suchfenster steuert die generelle Verfügbarkeit der Einfeldsuche in der Anwendung.
Konfiguration der Suchmaske
Eine Suche kann als Einfeldsuche gekennzeichnet werden. Hierzu sind folgende Vorbedingungen notwendig:
Aktivierter Systemparameter 'Einfeldsuche' im Bereich 'Suchfenster'
Im Bereich 'Optionen' der Suche ist die Option 'Einfeldsuche' aktiviert.
Die Suche enthält eine Juhuuu!-Suchbedingung im obersten Suchzweig
Sind obige Bedingungen erfüllt, stehen im Bereich 'Suche bearbeiten' folgende Funktionalitäten zur Verfügung:
Einer Bedingung können ein oder mehrere Schlüsselwörter zugeordnet werden.
Schlüsselwörter dürfen dabei keine Leerzeichen enthalten.
Für Schlüsselwörter können implizite Suchwerte definiert werden. Bei Verwendungen dieses Schlüsselworts wird nicht der nächste Text in der Eingabe an die Suche übergeben, sondern der implizierte Suchwert. Die impliziten Suchwerte werden in eckigen Klammern hinter dem Schlüsselwort definiert.
Beispiele: "Schlüsselwort[Suchwert]", "Herr[H]", "Frau[F]", "Unternehmen[U]"
Die Schlüsselwörter können internationalisiert werden.
(Technik: Alle Informationen werden innerhalb der Suche gespeichert.)
Es wird von der Anwendung sichergestellt, dass die eingegebenen Schlüsselwörter innerhalb der Suche pro Sprache eindeutig sind. Die Prüfung auf Eindeutigkeit erfolgt sowohl bei der Eingabe in der Bedingung als auch bei der Pflege der Internationalisierung.
Eine Bedingung kann als Identifikaktionsschlüssel gekennzeichnet werden.
Zwecks Übersicht werden die Eigenschaft 'Identifikaktionsschlüssel' und die Schlüsselwörter einer Bedingung in der Lasche 'Suche bearbeiten' im Baum visualisiert.
Darstellung:
[* (sofern Identifikationsschlüssel aktiviert) + kommaseparierte Liste der Schlüsselwörter in der aktuellen Sprache ]
Obige Funktionalitäten stehen nicht in Juhuuu!-Suchbedingungen zur Verfügung.
Die Suchvorlagen
Suchvorlagen sind zunächst nichts anderes als normale Suchen. Der Administrator vergibt ihnen in der Suchverwaltung das Kennzeichen 'Suchvorlage'. Dadurch legt er fest, dass diese Suchen im Fernglas-Symbol in der Schalterleiste in die dortige Liste der Suchvorlagen aufgenommen werden. Wählt der Anwender eine solche Suchvorlage aus, wird die Suchmaske mit der geladenen Suche angezeigt. Darin unterscheidet sich eine Suchvorlage von einer Schnellsuche, die ja ebenfalls unter anderem über das Fernglas-Symbol aufgerufen werden kann.
Nur der Administrator darf Suchvorlagen hinterlegen. Dadurch soll vermieden werden, dass zu viele Suchen als Suchvorlagen eingetragen werden und dadurch der Nutzen dieser Vorlagen verloren geht.
Vorlage 'CompareTemplate'
Die Vorlage 'CompareTemplate' gibt es für die 'ist gleich' und 'ist nicht gleich'-Funktion, mit der zwei Felder aus der Suche mit demselben Datentyp verglichen werden können. Die Vorlage ist komplementär, d.h. in den Bedingungen beider Felder muss das Template mit einem gegenseitigen Verweis verwendet werden.
![](../../../__attachments/10684504/TemplateCompare1.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Beim Editieren kann über eine Klappliste das Vergleichsfeld ausgewählt werden.
![](../../../__attachments/10684504/TemplateCompare2.jpg.png?inst-v=01ce9f95-f40d-424e-a7da-0f3a4bad5824)
Falls bei der Ausführung oder beim Speichern der Suche eine Einstellung an Vorlage falsch ist, wird sie entfernt, um Fehler zu vermeiden.
Suchen im Subdatenbereich
Schnellsuchen im Subdatenbereich erfolgen über den Fernglas-Schalter. Ein Klick hier hebt zudem die eingestellte Obergrenze (zum Beispiel 100) auf.
Die Schnellsuche
Schnellsuchen sind dadurch definiert, dass keine Suchmaske angezeigt wird. Der Anwender kann also keine Eingaben vornehmen. Die Festlegung einer Suche als Schnellsuche erfolgt in der Suchverwaltung. Dort legt man für die ausgewählte Suche das Kennzeichen 'Schnellsuche' fest. (Eine vergleichbare Wirkung hat der Klick auf den Schalter 'Nach myCRM/EVI kopieren'. Suchen, die dort vorliegen, werden ebenfalls wie Schnellsuchen ausgeführt).
Bei den Systemsuchen für den Subdatenbereich handelt es sich intern ebenfalls um Schnellsuchen. Letztlich findet hier eine Selektion der im Baum angezeigten Entitäten statt.
Die folgende Tabelle gibt einen Überblick über die verschiedenen Wege zum Aufrufen der Schnellsuchen.
Weg | Wo? | Hinweis | Wird eine neue Ebene geöffnet? |
---|---|---|---|
1 | Fernglas in der Schalterleiste der Anwendung | Nur möglich, wenn eine Entität mit hinterlegten Schnellsuchen geöffnet ist | Nein |
2 | Fernglas in der Schalterleiste des Hauptfensters der Entität | Nein | |
3 | über die Schnellsuchen-Maske auf dem CRM/EVI Desktop | Eine neue Schnellsuche erscheint dort nach einiger Zeit | Ja |
4 | Kopieren nach myCRM/myEVI | Dazu öffnen Sie die Suchverwaltung und selektieren die gewünschte Suche. Über den Schalter 'Kopieren nach myCRM/myEVI' wird die Suche eingefügt. | Ja |
5 | über die Lasche Schnellsuchen | Diese Lasche ist möglicherweise ausgeblendet. Sie können es über den Menüpunkt Optionen / Benutzer-einstellungen, Abschnitt myCRM/myEVI wieder einblenden | Ja |
6 | Menüpunkt Favoriten, dort der Menüeintrag Schnellsuchen | Ja | |
7 | Fernglas in der Schalterleiste des Unterbereichs der Entität | Es erfolgt ein Wechsel vom Unterbereich in den Hauptfensterbereich. Die Daten aus dem Unterbereich werden in der Listenansicht des Hauptfensterbereichs angezeigt. Die Suchmaske öffnet sich anschließend automatisch. Details siehe Unterpunkt Schnellsuchen im Unterbereich | Nein |
Schnellsuchen im Unterbereich
In der vertikalen Symbolleiste des Unterbereichs steht nun der Suchschalter zur Verfügung. Im Aufklapp-Menü des Suchschalters werden die verfügbaren Schnellsuchen für den aktuellen Unterbereich angezeigt. Das Verhalten ist wie folgt:
Klick auf Suchschalter
Es erfolgt ein Wechsel vom Unterbereich in den Hauptfensterbereich. Die Daten aus dem Unterbereich werden in der Listenansicht des Hauptfensterbereichs angezeigt. Die Suchmaske öffnet sich anschließend automatisch.Auswahl einer Schnellsuche im Suchschalter
Es erfolgt ein Wechsel vom Unterbereich in den Hauptfensterbereich. Die Schnellsuche wird ausgeführt und die selektierten Daten in der Listenansicht des Hauptfensterbereichs angezeigt.Auswahl einer Schnellsuche im Suchschalter und STRG-Taste gedrückt halten
Es erfolgt ein Wechsel vom Unterbereich in den Hauptfensterbereich. Die Daten aus dem Unterbereich werden in der Listenansicht des Hauptfensterbereichs angezeigt. Die Suchmaske öffnet sich anschließend automatisch mit der geladenen Schnellsuche.
Die Schnellsuche wurde noch nicht ausgeführt!
Abbildung: Schnellsuchen im Unterbereich
Unterstützung des Administrators bei der Verwendung von Suchen
Die Eingabe des PK oder des Plainkey wird gleichermaßen unterstützt.
Feldeigenschaften
In den systemweiten Feldeigenschaften kann nun im Eintrag 'Nachschlagesuche', die zu verwendende Suche nachgeschlagen werden. Nach Auswahl der Suche wird deren Plainkey im Feldeigenschaftendialog angezeigt. (In den Vorgängerversionen musste der Pk der Suche manuell eingetragen werden.)
Maskenskripting
Bei allen Suchmethoden im Maskenskripting kann der Anwender den Plainkey oder den Pk der Suche als Argument verwenden. Die Schnittstellen haben sich hierbei nicht verändert. Lediglich bei der Ermittlung der Suche wird sowohl der PlainKey als auch der Pk berücksichtigt. Verfahren: Kann die Suche über den Plainkey nicht ermittelt werden, so wird die Suche über den Pk ermittelt.
Suchmethoden im Maskenskripting
existsSearch
searchWithParams
searchOutput
searchCount
searchSingleRow
searchSingleValue
searchSingleValueForLookup
Einstellungen bzw. Einschränkungen der Suchen
Detaillierte Konfiguration der Suchen wird unter Systemeinstellungen > Suchfenster erläutert.
Die maximale Anzahl der Suchergebnisse ist aus Performancegründen auf 10.000 beschränkt. Soll diese Grenze dennoch erhöht werden, wird ein separater Massendatenserver (Applikationsserver) auf einem 64-Bit Betriebssystem empfohlen, da nur so dem JBoss genügend Arbeitsspeicher zugewiesen werden kann.