Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: HRaq am 05.08.03 - 06:57:33
-
Hallo Leute,
was kann ich tun, damit die Suchfunktion ($searchform) im Web ein anderes Design erhält? Ich hab gelesen, dass es eine Möglichkeit mit $$Search und $$SearchTemplateDefault gibt. Wie muß ich das anstellen, damit es funktioniert?
Gruß Henning
-
Hi,
schau mal bei LDD Today
http://www-10.lotus.com/ldd/today.nsf/search?SearchView&Query=Search%20AND%20Web&SearchOrder=&SearchMax=0&SearchWV=FALSE&SearchFuzzy=FALSE&Start=1&Count=10 (http://www-10.lotus.com/ldd/today.nsf/search?SearchView&Query=Search%20AND%20Web&SearchOrder=&SearchMax=0&SearchWV=FALSE&SearchFuzzy=FALSE&Start=1&Count=10)
Da findest du 'ne ganze Reihe an Infos.
Axel
-
Moin.
1) Erstelle in der Ansicht, aus der Du suchen willst einen Link auf Deine eigene Suchmaske
2) In dieser Maske legst Du ein Feld "SuchString" an, in dem Dein Suchbegriff eingegeben wird. Ausserdem ein verstecktes Feld $$Return.
3) In $$Return hinterlegst Du folgende Formel:
dbName := @Subset (@DbName;-1);
viewName := "HierDeinAnsichtsName";
"[/" + dbName + "/" + viewName + "/?SearchView&Query=" + SuchString + "]"
4) Erstelle eine Maske mit dem Namen $$SearchTemplate for "HierDeinAnsichtsName".
Dort kommt ein berechnetes Feld mit dem Namen $$ViewBody rein, welches die Ergebnisse der Abfrage anzeigt.
Das sind kurz die Basics. Natürlich kann man da noch einiges "tunen".
Sie auch Designerhilfe zu den einzelen reservierten Feldnamen.
Gruß
Stefan
-
Hallo Axel, hallo Lenham,
erstmal vielen Dank für Eure schnellen Antworten.
@Lenham: Eine Frage habe ich noch:
Wahrscheinlich ist es zu heiß, aber wie lege ich den Link auf die Suchmaske? ???
Wahrscheinlich ne dumme Frage, aber ich komme nicht drauf.
Gruß Henning
-
Hi,
wenn es eine Maske "$$Search" gibt, wird diese von Notes automatisch angezeigt.
Sonst nimmt es die search.html vom Server.
Andreas
-
Wahrscheinlich ist es zu heiß, aber wie lege ich den Link auf die Suchmaske? ???
Easy. Du markierts den Text, dann
- Erstellen Verknüpfungshotspot
- Typ "benanntes Element"
dort gibst Du dann Deine Maske an.
Gruß
Stefan
-
Hallo Glombi,
wo ist in Notes festgelegt, das die Maske search.html genommen wird bzw. kann ich es ändern?
Ich weiß, ich nerve heute....
Gruß Henning
-
Ändern kannst Du das, in dem Du, wie ich oben sagte, ein eigenes Template Form für Deine jeweilige View anlegst.
4) Erstelle eine Maske mit dem Namen $$SearchTemplate for "HierDeinAnsichtsName".
Die Eingabe des Suchbegriffs läuft dann in der von Dir selbst erstellten Maske ab.
Nochmal:
- Deine View heisst meinetwegen "NachGeburtsdatum"
Die entsprechende Suchmaske wäre dann
$$SearchTemplate for NachGeburtsdatum
In der View (es empfiehlt sich eine eingebettete Ansicht in einer Seite zu verwenden) ein Button oder ein verlinkter Text zu "$$earchTemplate for NachGeburtsdatum".
-
@HRaq: Es ist keine Maske, sondern eine Datei "search.htm"
Bei einem R5 Server liegt die im Verzeichnis "domino\icons" unterhalb des Datenverzeichnisses. Bei einem R6 Server liegt die Datei im Verzeichnis "template" unterhalb des Datenverzeichnisses.
Wenn Du per Web eine Volltextsuche machst, schaut Notes zuerst in der Datenbank nach, ob dort eine Maske namens "$$Search" vorhanden ist. Falls ja, wird diese Maske zur Eingabe der Suchbegriffe angezeigt. Falls nein, wird die search.htm Datei angezeigt.
Eine andere Möglichkeit gibt es nicht.
Um dann die Suchergebnisse anzuzeigen, kannst Du - wie Lenham gesagt hat - Masken namens
$$SearchTemplate for "Name der Ansicht"
oder
$$SearchTemplateDefault
erstellen. In diesen Masken muss dann ein Feld namens "$$ViewBody" existieren. Dort muss der Namen der Ansicht in Hochkommata eingegeben werden.
!!!Hinweis: Eingebettete Ansichten gehen in $$SearchTemplate... Masken nicht.
Ich habe mal eine kleine DB angehängt, damit das Handling deutlich wird.
Andreas
-
Hallo Andreas,
vielen Dank für deine detaillierte Antwort. Irgendwie stand ich gestern wohl auf'm Schlauch. Die Hitze.....
Ich denke, jetzt komme ich klar.
Vielen Dank auch an Lenham und Axel....
Gruß Henning
-
Guten Morgen,
leider muss ich diesen Thread doch nochmal "wecken".
Geht eine Suche nur auf eine bestimmte Ansicht bezogen oder kann ich die Suche auch über alle Ansichten (gesamte DB) -mit einer Maske- ausdehnen?
Gruß Henning
-
... ist zwar schon ne Weile her, aber ich denke dafür ist $$SearchTemplateDefault gedacht...
ata
-
Hi,
bzgl. der Volltextsuche muss man folgendes unterscheiden:
1.) Volltextsuche in Ansichten (Search View): Das ist die "normale" Einstellung, die über den Search Button angestossen wird und die die Datei "search.htm" bzw. die Maske "$$Search" anzeigt.
2.) Datenbankübergreifende Suche (Search Site): Das muss extra implementiert werden, indem von einer bestimmten Stelle in der Datenbank die Suchmaske einer Site-Abfrage-Datenbank aufgerufen wird.
(Quelle:Anwendungsentwicklung unter Lotus Notes/Domino 5 von M. Knäpper u.a.)
Die Maske $$SearchTemplateDefault dient zur Anzeige der Suchergbenisse (mittels 1) in Ansichten, für die keine extra Maske $$SearchTemplate for "Ansicht" implementiert ist.
Um in allen Dokumenten zu suchen, musst Du eine Ansicht erstellen, die alle Dokumente anzeigt. Das ist analog zur Volltextsuche im LoNo Client.
Andreas
-
Hallo Anton,
dacht ich auch. Aber dem widerspricht die Antwort von Andreas:
Um dann die Suchergebnisse anzuzeigen, kannst Du - wie Lenham gesagt hat - Masken namens
$$SearchTemplate for "Name der Ansicht"
oder
$$SearchTemplateDefault
erstellen. In diesen Masken muss dann ein Feld namens "$$ViewBody" existieren. Dort muss der Namen der Ansicht in Hochkommata eingegeben werden.
Mich macht dabei stutzig, dass der Name der Ansicht sowohl in $$SearchTemplate for "Name der Ansicht" als auch in $$SearchTemplateDefault enthalten sein muß. Demnach beziehen sich beide Masken auf bestimmte Ansichten, oder wie siehst du das?
Gruß Henning
-
Hallo Andreas,
reciht es , wenn in der Ansicht alle Dokumente enthalten sind oder müssen auch alle Felder enthalten sein?
Gruß Henning
-
reciht es , wenn in der Ansicht alle Dokumente enthalten sind oder müssen auch alle Felder enthalten sein?
Das ist dann so per Definition. Felder sind Bestandteil der Dokumente. Wenn alle Dokumente angezeigt werden, sind auch alle Felder da.
Andreas
-
Hallo Andreas,
dann werd ichs mal so versuchen. Alle Felder aufzuführen wäre etwas unübersichtlich geworden... ;D
Falls ich weitere Fragen hab, meld ich mich wieder.
Vielen Dank erstmal
Gruß Henning
-
Hallo Leute,
ich möchte nur nochmal ein kurzes Feedback gaben.
Mit Euren Tipps hat alles wunderbar geklappt.
Nochmal herzlichen Dank an alle Beteiligten.
Gruß Henning
-
Hi HRaq,
schön das es funktioniert.
Bzgl.
In diesen Masken muss dann ein Feld namens "$$ViewBody" existieren. Dort muss der Namen der Ansicht in Hochkommata eingegeben werden"
habe ich noch was falsches gesagt: Es reicht, wenn das Feld $$ViewBody da ist. Etwaige Formeln darin werden ignoriert, wenn man $$SearchTemplate For... oder $$SearchTemplateDefault verwendet.
Andreas
-
Befasse mich gerade mit den selben problem. wenn ich die standardsuchmaske $searchForm.html nehme, wie bekomme ich die verknüpfung zwischen internet und der zu benutzenden ansicht?
-
Bitte nicht mehrere Threads parallel aufmachen.
Hier der aktuelle
http://www.atnotes.de/index.php?topic=25579.0
In diesem Thread bitte nicht weiterschreiben.
Andreas
-
Deswegen ist dieser Thread jetzt auch dicht.
Bernhard