Autor Thema: Notesdatabase.Search  (Gelesen 2202 mal)

Offline DannyCrown

  • Junior Mitglied
  • **
  • Beiträge: 93
  • Geschlecht: Männlich
  • Use Kill with care - Designer Hilfe
Notesdatabase.Search
« am: 17.06.09 - 07:28:35 »
Hallo Leute,

ich habe da mal wieder eine Frage.
Ich habe eine Maske mit einem Feld "betreff". Ich möchte jetzt per db.Search dieses Feld in allen Dokumenten nach einem String durchsuchen. Diesen String überprüfe ich dann mit @contains. Das funktioniert soweit auch ganz gut, aber @contains ist ja case sensitiv. Habe auch schon mit @lower / uppercase gearbeitet, doch dann bekomme ich natürlich keine Dokumente, die in der mitte groß / klein Buchstaben haben. Ich hätte gerne alle Dokumente angezeigt, in denen dann suche, Suche, sUcHe steht. Hat da jemand ne Idee?

formula = { SELECT (Form = "Test") & @Contains(betreff;suchstr) }
Set dc = db.Search(formula, Nothing, 0)

Vielen Dank im Vorraus!
MfG Daniel O0

Offline Spalter

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Mit der Lizenz zum Löschen!!!
Re: Notesdatabase.Search
« Antwort #1 am: 17.06.09 - 07:39:31 »
 ???

Hallo Daniel,

warum klappt das nicht mit @lowercase?

Aus der Hilfe:

Converts the uppercase letters in the specified string to lowercase.

This function is useful when you want to search for a particular value and cannot predict whether it appears in lowercase or uppercase letters, or a combination of the two. You can also use it as an input translation formula to convert the contents of a field to lowercase.

Gruß
Spalter

Offline DannyCrown

  • Junior Mitglied
  • **
  • Beiträge: 93
  • Geschlecht: Männlich
  • Use Kill with care - Designer Hilfe
Re: Notesdatabase.Search
« Antwort #2 am: 17.06.09 - 07:43:05 »
weil ich ja mit @lowerCase zwar meinen SuchStr klein kriege, aber ja nicht den Text im Betreff Feld

@Contains(betreff,@lowerCase(suchStr))

edit: So hab ichs zumindest gedacht, aber anscheinend gehts doch so: @Contains(@LowerCase(betreff);@LowerCase(suchStr))
        Dachte mit dem ersten @lowerCase würde nur der Feldname dann klein geschrieben, aber anscheined funktionierts so. Danke
« Letzte Änderung: 17.06.09 - 07:45:14 von DannyCrown »
MfG Daniel O0

Offline tks

  • Senior Mitglied
  • ****
  • Beiträge: 425
  • Geschlecht: Männlich
  • ...für'n Fuss
Re: Notesdatabase.Search
« Antwort #3 am: 17.06.09 - 07:45:39 »
@Contains(@lowercase(betreff);@lowercase(suchStr))  :-:
Thomas

*********************************
Domino 8.5.3FP6 unter W2K12
Notes 8.5.3 unter Win7
sequrIQ (watchdog & crypt)
*********************************

Offline DannyCrown

  • Junior Mitglied
  • **
  • Beiträge: 93
  • Geschlecht: Männlich
  • Use Kill with care - Designer Hilfe
Re: Notesdatabase.Search
« Antwort #4 am: 17.06.09 - 07:51:16 »
ja, das ists, hatte ich ja ein paar Sekunden vor dir geschrieben  ;D Aber trotzdem Danke!

Hab jetzt nur noch ne andere Fragen:
Warum funktioniert es nicht, wenn ich den SuchString in ner zwischenvariablen speichere? Also wenn ich die erste Formel ausführe, dann werden mir alle Dokumente zurückgegeben, aber die 2. Formel funktioniert einwandfrei. Hat da noch jemand ne Idee?

Dim suchStr As String
suchStr = "Suche"

formula = { SELECT (Form = "Test") & @Contains(@LowerCase(betreff);@LowerCase(suchStr)) }

'formula = { SELECT (Form = "Test") & @Contains(@LowerCase(betreff);@LowerCase("Suche")) }
MfG Daniel O0

Offline TRO

  • Senior Mitglied
  • ****
  • Beiträge: 296
Re: Notesdatabase.Search
« Antwort #5 am: 17.06.09 - 08:00:32 »
formula = { SELECT (Form = "Test") & @Contains(@LowerCase(betreff);@LowerCase("} & suchStr & {")) }

Offline DannyCrown

  • Junior Mitglied
  • **
  • Beiträge: 93
  • Geschlecht: Männlich
  • Use Kill with care - Designer Hilfe
Re: Notesdatabase.Search
« Antwort #6 am: 17.06.09 - 08:04:37 »
oh mann, danke! Syntax gewurschtel  ;D
MfG Daniel O0

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz