Autor Thema: Suchformular Web  (Gelesen 9871 mal)

Offline mgubler

  • Aktives Mitglied
  • ***
  • Beiträge: 160
  • Geschlecht: Männlich
  • Ich war's nicht!!!
Suchformular Web
« am: 26.10.09 - 11:09:30 »
Hallo zusammen,

ich müsste ein Such-Formular für eine Intranetseite zusammenbasteln.
Hier soll über ein Listenfeld oder zwei Eingabefelder gesucht werden.
Hat hierzu vielleicht jemand schon eine Lösung?

Besten Dank im voraus für alle Antworten.

Marc
Gruß, Marc

Offline dirk_2909

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.173
  • Geschlecht: Männlich
  • Expand your Notes Client with ECM functionality..
    • d.velop
Re: Suchformular Web
« Antwort #1 am: 26.10.09 - 13:21:18 »
Hallo Marc,

eine Lösung habe ich so jetzt nicht parat. Aber Du hattest so was auch schon mal gemacht ;-)

Was genau willst Du wissen? Wo hängt es?
Dirk

[IBM CLP R5]
[IBM CAD 6/6.5]
[IBM CAD 7]
[IBM CAD 8]


"Nein!! … Es genügt nicht Mails in einen anderen Ordner oder Datenbank zu verschieben, um sie zu archivieren!"

   
Disclaimer:
Ich Antworte nach besten Wissen und Gewissen. Sollte sich jemand durch meine Antwort persönlich angegriffen fühlen, ist dies nicht meine Absicht!
Ich bin auch nur ein Mensch, der Fehler machen kann. ....

Offline mgubler

  • Aktives Mitglied
  • ***
  • Beiträge: 160
  • Geschlecht: Männlich
  • Ich war's nicht!!!
Re: Suchformular Web
« Antwort #2 am: 26.10.09 - 13:40:56 »
Hi Dirk!

Es hängt im Prinzip an der Query.
Das Formular selbst habe ich...aber wie gehts weiter?
Ich habe dort wie bereits erwähnt 3 Felder und muss je nachdem die Query machen.
Momentan bin ich irgendwie blockiert...
Gruß, Marc

Offline LN4ever

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 505
  • Geschlecht: Männlich
Re: Suchformular Web
« Antwort #3 am: 26.10.09 - 22:31:33 »
Hallo,

ich habe einmal eine Suchmaske mit der Eingabemöglichkeit von bis zu drei in sich geklammerten Querystrings, die selbst wieder eine Teil-Query enthalten dürfen und zwei Operatoren gemacht und in dem SEARCH-Button dann den unten stehenden CODE eingebaut:

path := @WebDbName;
_phrase1:=@Left(@Right(Query1;@Char(34));@Char(34));
_q1:=@Trim(@ReplaceSubstring(Query1;_phrase1;"$phrase$"));
_query1:=@ReplaceSubstring(_q1;" -";"+AND+NOT+");
_query1a:=@ReplaceSubstring(_query1;", ";"+OR+");
_query1b:=@ReplaceSubstring(_query1a;" ";"+AND+");
_query1c:=@ReplaceSubstring(_query1b;"$phrase$";_phrase1);

_phrase2:=@Left(@Right(Query2;@Char(34));@Char(34));
_q2:=@Trim(@ReplaceSubstring(Query2;_phrase2;"$phrase$"));
_query2:=@ReplaceSubstring(_q2;" -";"+AND+NOT+");
_query2a:=@ReplaceSubstring(_query2;", ";"+OR+");
_query2b:=@ReplaceSubstring(_query2a;" ";"+AND+");
_query2c:=@ReplaceSubstring(_query2b;"$phrase$";_phrase2);

_phrase3:=@Left(@Right(Query3;@Char(34));@Char(34));
_q3:=@Trim(@ReplaceSubstring(Query3;_phrase3;"$phrase$"));
_query3:=@ReplaceSubstring(_q3;" -";"+AND+NOT+");
_query3a:=@ReplaceSubstring(_query3;", ";"+OR+");
_query3b:=@ReplaceSubstring(_query3a;" ";"+AND+");
_query3c:=@ReplaceSubstring(_query3b;"$phrase$";_phrase3);

_xoperator1:=@If(@Trim(Query2)="";"";d_Operator1);
_xoperator2:=@If(@Trim(Query3)="";"";d_Operator2);

_Query:=@If(_xOperator1="";_query1c;
"("+_query1c+")+"+_xOperator1+"+("+_query2c+")")
+@If(_xOperator2="";"";"+"+_xOperator2+"+("+_query3c+")");

@If(_Query="";
   @Return("")
;
   @Do(
      @SetTargetFrame("view");
      @URLOpen ( "/" +
      path +
      "/" + searchView + "/?SearchView&Query=" + _Query +
      "&SearchOrder=" + @Text ( SortOrder ) +
      "&SearchMax=" + @Text ( MaxResults ) +
      "&SearchWV=" + @If ( WordVariants = ""; "FALSE" ; "TRUE") +
      "&SearchThesaurus=" + @If ( UseThesaurus = ""; "FALSE"; "TRUE" ) +
      "&SearchFuzzy=" + @If(FuzzySearch = ""; "FALSE" ; "TRUE")
      )
   )
)

Ist es das, was du suchst ?

Gruß

Norbert
Situs vilate in isse tabernit.

Offline mgubler

  • Aktives Mitglied
  • ***
  • Beiträge: 160
  • Geschlecht: Männlich
  • Ich war's nicht!!!
Re: Suchformular Web
« Antwort #4 am: 27.10.09 - 16:16:17 »
Danke, das hat soweit funktioniert.
Ich habe es noch ein wenig vereinfacht.

Code
path := @WebDbName;
_nachname:=@Trim(tx_nachname);
_nummer:=@Trim(tx_nummer);
_abteilung:=@Trim(tx_abteilung);

searchView:=@If(_nachname!="";"v_nachnamen";_abteilung!="";"v_abteilungen"; _nummer!="";"v_nummern";"");
nn:=@If(_nachname="";"";"[tx_nachname]+CONTAINS+"+_nachname);
nr:=@If(_nummer="";"";"[tx_nummer]+CONTAINS+"+_nummer);
abt:=@If(_abteilung="";"";"[tx_abteilung]+CONTAINS+"+_abteilung);

@Do(
Y:=@If(_nachname!="";nn;_abteilung!=""; abt;_nummer!="";nr;"");
@URLOpen ( "/" + path+"/v_nachid/?SearchView&Query="+Y)
)

Jedoch erhalte ich einen 500er Fehler wenn ich die SearchView starte.
Die View existiert definitiv.
Wenn ich diese nämlich ohne SearchView aufrufe klappt alles.
Hat jemand eine Idee, woran das nun wieder liegen kann?!?

Marc
Gruß, Marc

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Suchformular Web
« Antwort #5 am: 27.10.09 - 16:28:04 »
Haben die Webuser auch die erforderlichen Rechte auf die SearchView (View ACL)?

Bernhard

Offline mgubler

  • Aktives Mitglied
  • ***
  • Beiträge: 160
  • Geschlecht: Männlich
  • Ich war's nicht!!!
Re: Suchformular Web
« Antwort #6 am: 27.10.09 - 16:35:00 »
Hallo Bernhard,

die ACL schaut wie folgt aus:
"All readers and above" und "Available to public users"

Die DB ACL:
Anonymous: Reader
Default: Reader
Gruß, Marc

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Suchformular Web
« Antwort #7 am: 27.10.09 - 17:17:00 »
Das passt ... seitens der view ACL. Die Parameter für @UrlOpen kommen mir aber dubios vor.

Bernhard

Offline mgubler

  • Aktives Mitglied
  • ***
  • Beiträge: 160
  • Geschlecht: Männlich
  • Ich war's nicht!!!
Re: Suchformular Web
« Antwort #8 am: 28.10.09 - 08:41:27 »
Wieso kommen dir die parameter denn merkwürdig vor?
Ich setze (je nachdem welches Feld gefüllt ist) die URL zusammen und mache dann das OPEN.
Gruß, Marc

Offline it898ur

  • Senior Mitglied
  • ****
  • Beiträge: 478
Re: Suchformular Web
« Antwort #9 am: 28.10.09 - 09:26:58 »
Bernhard hat den Finger schon in die Wunde gelegt - zwischen dem Viewnamen und ?SearchView darf kein Slash mehr kommen, da Notes sonst den Viewnamen an der falschen Stelle sucht.

Gruß

André

Offline mgubler

  • Aktives Mitglied
  • ***
  • Beiträge: 160
  • Geschlecht: Männlich
  • Ich war's nicht!!!
Re: Suchformular Web
« Antwort #10 am: 28.10.09 - 11:49:55 »
das habe ich auch schon getestet.
jedoch ist das ergebnis immer dasselbe.
Error 500 - A View.....
Gruß, Marc

Offline it898ur

  • Senior Mitglied
  • ****
  • Beiträge: 478
Re: Suchformular Web
« Antwort #11 am: 28.10.09 - 12:54:15 »
Wie sieht denn die aufgerufene URL aus (mit anonymisiertem Server) ?

Denn hier muss der Fehler liegen, wenn ein Error 500 erscheint.

Gruß

André

Offline mgubler

  • Aktives Mitglied
  • ***
  • Beiträge: 160
  • Geschlecht: Männlich
  • Ich war's nicht!!!
Re: Suchformular Web
« Antwort #12 am: 28.10.09 - 15:12:36 »
Hallo,

die URL schaut wie folgt aus:
http://IP-DES-SERVERS/IT/telgmbh.nsf/v_nachid?SearchView&Query=[tx_nummer]+CONTAINS+12*

Wenn ich nur
http://IP-DES-SERVERS/IT/telgmbh.nsf/v_nachid
eingebe wird mir die komplette View angezeigt, wie es auch sein sollte.
Gruß, Marc

Offline it898ur

  • Senior Mitglied
  • ****
  • Beiträge: 478
Re: Suchformular Web
« Antwort #13 am: 29.10.09 - 08:54:58 »
Die URL sieht erst einmail korrekt aus - ergibt die URL nur mit ?Searchview eine leere Trefferliste und wie sieht das Ergebnis mit ?Searchview&Query=Suchbegriff (also ohne Feldeinschränkung) aus ?

Liefert das Server-Log zusätzliche Hinweise ?

Gruß

André

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Suchformular Web
« Antwort #14 am: 29.10.09 - 09:01:30 »
Sicher, dass die "+" anstelle der Leerzeichen korrekt sind? Unsere Suchurls sehen z.B. so aus:

http://host/dir1/dir2/db.nsf/view?SearchView&SearchOrder=4&query=%28[FELDNAME]%3D%28Alois%20Maier%29%29

bzw. so

http://host/dir1/dir2/db.nsf/view?SearchView&SearchOrder=4&query=%28[FELDNAME]%3D%28Alois Maier%29%29

aus.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline mgubler

  • Aktives Mitglied
  • ***
  • Beiträge: 160
  • Geschlecht: Männlich
  • Ich war's nicht!!!
Re: Suchformular Web
« Antwort #15 am: 29.10.09 - 09:19:44 »
Guten Morgen zusammen,

also sobald ich etwas an die View als Parameter hänge ist Ende.  :-:
Ein einfaches ?SearchView liefert direkt den 500er Fehler, alles andere ebenso.
Im Log bzw. in der Console finde ich auch nur die Notes Exception wieder  :(
Gruß, Marc

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Suchformular Web
« Antwort #16 am: 29.10.09 - 09:20:49 »
FT-Index ist erstellt und OK? compact auf die DB mal laufen gelassen? Ev. hat die Db einen "Schaden".

P.S.: Wie lautet die *komplette* Fehlermeldung?
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline mgubler

  • Aktives Mitglied
  • ***
  • Beiträge: 160
  • Geschlecht: Männlich
  • Ich war's nicht!!!
Re: Suchformular Web
« Antwort #17 am: 29.10.09 - 09:44:07 »
Hallo m3,

ja, der FT-Index ist erstellt und okay.
Compact und fixup über die DB laufen lassen.
Aber nich immer dasselbe

Die vollständige Fehlermeldung lautet:
"Fehler 500

HTTP Web Server: Lotus Notes Ausnahme - A view of that name cannot be found in the specified database"

Ich könnte alternativ auch mal die DB posten...
Gruß, Marc

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Suchformular Web
« Antwort #18 am: 29.10.09 - 10:07:18 »
Und die View "v_nachid" existiert mit genau dem Namen in der Datenbank?

Und was sagt das HTTP-Log? Ev. wird die URL durch irgendeine "Sicherheitslösung", ... umgeschrieben, sodass beim Server nur mehr Blödsinn ankommt.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline mgubler

  • Aktives Mitglied
  • ***
  • Beiträge: 160
  • Geschlecht: Männlich
  • Ich war's nicht!!!
Re: Suchformular Web
« Antwort #19 am: 29.10.09 - 10:30:15 »
Hallo!

ja, die View "v_nachid" existiert genau in dieser DB mit genau diesem Namen.
Die URL wird nicht umgeschrieben.
Auf der console wird genau die angezeigte URL zurückgegeben.
Im Log steht genau dasselbe....
Gruß, Marc

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz