ANWENDUNGSGESTALTUNG
Sie können einzelnen Datenbanken auch benutzerdefinierte Masken hinzufügen, um die Web-Suche in dieser Datenbank anzupassen.
Weitere Informationen über das Einrichten von Suchvorgängen in einzelnen Anwendungen finden Sie unter "So erstellen Sie einen Volltextindex für Datenbanken". Weitere Informationen zum Einrichten der Domänensuche finden Sie in der Domino Administratorhilfe.
Zum Anpassen von Masken können Sie Folgendes ausführen:
Für die Domänensuche verwendet der Notes-Client die Maske "DomainQuery" in der catalog.nsf-Datenbank des Katalogservers als Suchmaske. Diese Maske verwendet für die Suche die FTDomainSearch-Methode. Web-Domänensuchvorgänge können jede Maske mittels eines OpenForm-URL-Befehls verwenden und einen SearchDomain-URL-Befehl generieren und auslösen, um die Suche auszuführen. Hierbei werden die Argumente entweder als URL-Befehlsargumente oder über bereitgestellte Feldwerte zur Verfügung gestellt.
Einzelne Datenbanksuchvorgänge über das Web können mithilfe eines $SearchForm?SearchView-URL-Befehls initiiert werden. In diesem Fall sucht Domino in der aktuellen Datenbank nach einer Maske mit dem tatsächlichen Namen oder dem Aliasnamen $$Search. Ist die Maske vorhanden, wird sie von Domino geöffnet. Anderenfalls zeigt Domino eine vorgegebene Suchmaske an, die auf der search.htm-Datei basiert, die im Verzeichnis "Domino\Icons" gespeichert ist. Die $$Search-Maske generiert einen SearchView-URL-Befehl, um die Suche auszuführen, und stellt die Argumente entweder als URL-Befehlsargumente oder über bereitgestellte Feldwerte zur Verfügung. Sie können die vorgegebene search.h-Maske auch individuell anpassen.
Verwenden Sie die folgende Tabelle, wenn Sie eine Suchmaske zur Verwendung im Web anpassen. Die Tabelle enthält die URL-Befehlsargumente, die verwendet werden, um die anfängliche Suche mithilfe der SearchDomain- oder SearchView-URL auszuführen. Diese Werte sind auf der Ergebnisseite zur Verwendung in der Ergebnismaske von Schaltflächen und Hotspots verfügbar. Sie können beispielsweise "&SearchOrder=2" in Ihrer anfänglichen Suchmaske angeben. Der Wert im Feld "SearchOrder" ist in der Ergebnisseite 2. Die Schaltfläche "Weiter" in der Ergebnismaske kann diesen Wert für die nächste Seite verwenden oder ihn durch einen anderen Wert ersetzen.
Die Werte von TRUE und FALSE können zwar für einige Felder festgelegt werden, wenn die Werte jedoch auf die Ergebnisseite übertragen werden, sind sie 1 bzw. 0.
vorgegebene und maximale SearchMax-Werte für den Web-Server mittels Einstellungen im Domino-Verzeichnis konfiguriert werden können.
2 = nach aufsteigendem Datum
3 = nach absteigendem Datum
4 = Ansichtsreihenfolge verwenden (nur SearchView)
(Diese Option wird von der R6 Suchmaschine ignoriert)
(nur für SearchDomain)
1 = Nur Notes-Datenbanken
2 = Nur Dateisystem
0 = Beides
Nach Header-Informationen suchen (suchen nach "Date Created" oder "Modified")
Mithilfe der Schaltfläche "Suche hinzufügen", die in Agenten neben dem Eingabebereich für die Volltextsuche angezeigt wird, können Sie per Datum bzw. Änderungsdatum nach Dokumenten suchen. Um derartige Abfragen selbst für die Verwendung mit der FTSearch-Methode zu erstellen, können Sie die folgenden speziellen Feldnamen verwenden:
[_CreationDate] < 05/01/2000
Im Dokument werden keine Feldnamen gespeichert. Die Datumsangaben stammen tatsächlich aus dem Header des Dokuments, nicht aus einem Feld. Daher können Sie diese reservierten Namen mit jedem Dokument verwenden, selbst wenn sie im Dialogfeld "Eigenschaften: Dokument" nicht als Feldelemente angezeigt werden.
Es gibt keine den Abfragefunktionen entsprechende Syntax, um Dokumente basierend auf einem anderen als dem heutigen Datum zu suchen, z. B. "in den letzten n Tagen". Ihr Agent muss die tatsächlichen Datumsangaben zur Laufzeit hinzufügen (welche er auf Basis des aktuellen (heutigen) Datums berechnen kann). Beachten sie, dass Datumsformate auf Benutzereinstellungen basieren, und dass Sie ein Format verwenden müssen, das der Workstation oder dem Server entspricht, der die Abfrage verarbeitet.
Ergebnismasken für Domänensuche anpassen
Suchergebnisse werden mithilfe der Masken "SearchResults", "ResultEntry" und "DetailedResultEntry" angezeigt. Die Maske "SearchResults" definiert das Layout jeder Ergebnisseite. Die Masken "ResultEntry" und "DetailedResultEntry" definieren das Format eines einzelnen Ergebnisses innerhalb der Seite, das bei jedem zurückgegebenen Ergebnis wiederholt wird. Geben Sie im Web den Namen dieser Maske im Feld/Argument "SearchEntry" an. Die folgenden Felder gelten für die Masken "ResultEntry" und "DetailedResultEntry".
Wenn Sie eine Ergebnismaske für die Domänensuche gestalten, ist es hilfreich, zu wissen, wo der Domänenindexer die in den Ergebnissen angezeigten Titel sucht. Der Indexer prüft jedes Dokument auf folgende Notes-Felder oder Elemente in der Reihenfolge, in der sie hier aufgeführt sind, um die Dokumenttitel anzuzeigen: die Felder Titel, Betreff, Kopfzeile, den Fenstertitel (wie vom Entwickler dieser Domino-Anwendung zugewiesen) und die Ansichtszusammenfassung (mithilfe der Vorgabemaske und -ansicht). Wenn keines dieser Felder bzw. Elemente als Ergebnis gefunden wurde, zeigt der Domänenindexer die Nachricht "Dokument hat keinen Titel" in den Ergebnissen an.
In Dateisystemen, z. B. Lotus SmartSuite® oder Microsoft Office, werden der Titel und der Autor aus den Feldern der Dokumenteigenschaften abgerufen. Für HTML-Dateien werden TITLE- und AUTHOR-Tags verwendet.
So werden SearchResults und ResultEntry/DetailedResultEntry verwendet
Der folgende LotusScript Code ist mit dem Mausklickereignis des Aktions-Hotspot "Suchen" verbunden, der vom Notes-Client in der Suchmaske verwendet wird. Die Zeilen, die den Namen der Ergebnismaske und der Maske "ResultEntry" abrufen, sind fett formatiert.
Sub Click(Source As Button) Dim s As New NotesSession Dim db As NotesDatabase Dim w As New NotesUIWorkspace Dim uidoc As NotesUIDocument Dim q As String Dim l As Integer Dim d As Integer Dim sort As String Dim stype As Integer Dim useint As Integer Dim rtype As String Dim rformname As String Set db=s.CurrentDatabase Set uidoc = w.currentdocument uidoc.refresh Set doc=uidoc.Document q=doc.query(0) l=doc.resultlimit(0) d=doc.MaxDisplay(0) sort = doc.sort(0) usestr = doc.use sscope=doc.searchscope rtype=doc.GetItemValue("SearchType")(0) If rtype = "1" Then
rformname="DetailedResultEntry" Else rformname="ResultEntry" End If Select Case sort Case "R" stype = FT_SCORES Case "O" stype = FT_DATE_ASC Case "N" stype = FT_DATE_DES End Select Forall values In usestr If values = "2" Then useint = useint + FT_STEMS If values = "3" Then useint = useint + FT_FUZZY End Forall Forall values In sscope If values = "1" Then useint = useint + FT_DATABASE If values = "2" Then useint = useint + FT_FILESYSTEM End Forall On Error Resume Next If db.isopen Then If Err <> 0 Then Messagebox STR_DBOPEN_ERROR Err = 0 Exit Sub End If Set srdoc = db.ftdomainsearch(q, l, stype,useint, 0,d,rformname) If Err <> 0 Then Messagebox STR_FTERROR_PREFIX & Error$, 0 , STR_ERROR Err=0 Exit Sub End If srdoc.Form="SearchResults" Call w.EditDocument(False, srdoc, True) End If End Sub
Tipp Sie müssen die Option "HTML für alle Felder generieren" im Register "Vorgaben" in der InfoBox "Eigenschaften: Maske" auswählen, um die Feldwerte beizubehalten, wenn Daten zwischen einem Web-Browser und dem Server ausgetauscht werden.
Web-Suchergebnisse für SearchView anpassen
So passen Sie die Web-Suchergebnisse für SearchView an
1. Erstellen Sie eine Maske und weisen Sie ihr einen der Maskennamen zu, die in der folgenden Tabelle enthalten sind.
3. Wenn Sie die Ergebnisse seitenweise anzeigen möchten, fügen Sie der Maske Schaltflächen oder Hotspots für das Vorwärts- oder Rückwärtsnavigieren hinzu.
4. Verwenden Sie in Ihrem URL-Befehl die Start- und Count-Parameter.
Weitere Informationen über URL-Befehle finden Sie unter "Programmieroptionen für Webanwendungen".
Navigationsschaltflächen für seitenweise angezeigte Ergebnisse verwenden
Um das Navigieren zwischen den einzelnen Ergebnisseiten zu ermöglichen, fügen Sie Schaltflächen oder Hotspots zur Maske "SearchResults" hinzu. Die Felder, die zum Einsatz mit den Schaltflächen "Weiter" und "Zurück" verfügbar sind, werden in der Tabelle weiter unten aufgelistet. Im Notes-Client sollten die Schaltflächen die Funktion "LotusScript FTDomainSearch" mit geänderten Argumenten erneut aufrufen. Im Web sollten sie verwendet werden, um eine neue SearchDomain-URL für den Abruf neuer Suchergebnisse zu erstellen.
Hinweis Wenn Sie auf einer Suchergebnismaske bearbeitbare Felder verwenden, wählen Sie die Option "Webzugriff: JavaScript beim Erstellen von Seiten verwenden" in der InfoBox "Eigenschaften: Anwendung". Wenn diese Option aktiviert ist, wird eine an einen Hotspot oder eine Schaltfläche angehängte URL beim Klickereignis berechnet. Wenn sie deaktiviert ist, wird die URL berechnet, wenn die Seite geladen wird.