Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: geissbock am 08.12.08 - 17:06:33

Titel: String mit Hochkommas in Script erzeugen
Beitrag von: geissbock am 08.12.08 - 17:06:33
Hallo Notes-Gemeinde,
habe ein Problem, das Euch wahrscheinlich nur ein müdes Lächeln entlockt:

Ich möchte per Script einen Suchstrin zusammenbauen der nachher so aussehen soll:
Nummer="123"

Den String Nummer hole ich aus einem Feld. Ebenso den String 123. Das versuch ich dann per Script zusammenzubasteln, aber der zweite String erscheint dann immer in doppelten Hochkommas. Wie macht man's richtig??

   Dim s As New NotesSession
   Dim workspace As New NotesUIWorkspace
   Dim db As NotesDatabase
   Dim uidoc As NotesuiDocument
   Dim curdoc As NotesDocument
   Dim strencearch As String
   Dim strident As String
   Dim strMatch As String

   Set db = s.CurrentDatabase   
   Set uidoc = workspace.CurrentDocument
   Set curdoc = uidoc.Document
   strMatch = curdoc.Match(0)
   strIdent = curdoc.Nummer(0)
   strencearch = strMatch +{="} + strIdent(0) + {"}
   Msgbox strencsearch

raus kommt Nummer=""123""

Danke & Gruß
Klaus
Titel: Re: String mit Hochkommas in Script erzeugen
Beitrag von: koehlerbv am 08.12.08 - 17:16:53
Prinzipiell ist Dein Code vollkommen in Ordnung - aber den geposteten bekommst Du niemals durch den Compiler: Da ist eine Variable gar nicht deklariert, und strIdent (0) ist Dummfug.

Bitte poste also bitte den Code, den Du wirklich hast.
Wenn ich Deinen Code korrigiert verwende, kommt genau das Ergebnis heraus, was Du erwartest.

Bernhard
Titel: Re: String mit Hochkommas in Script erzeugen
Beitrag von: geissbock am 09.12.08 - 12:10:29
Hallo,
danke für die Antwort, stimmt den Code hab ich aus einem umfangreicheren Script zusammengeschustert. Hab das jetzt mal korrigiert. In der Message Box steht es auch richtig, aber wenn ich mir das im Debugger steht dort der Wert:
"[BERICHTSNUMMER]=""HABB8232"""

Hier das korrigierte Script:
Dim s As New NotesSession
   Dim workspace As New NotesUIWorkspace
   Dim configview As NotesView
   Dim configdoc As NotesDocument
   Dim strencsearch As String
   Dim strident As String
   Dim strMatch As String
   Set db = s.CurrentDatabase   
'Wir nehmen uns das aktuelle Dokument:
   Set uidoc = workspace.CurrentDocument
   Set curdoc = uidoc.Document
   Set configview = db.GetView( "(DocuWareSetup)" )
   Set configdoc = configview.GetFirstDocument
   strMatch = configdoc.Match(0)
   strIdent = uidoc.Document.Berichtsnummer(0)
   strencsearch = strMatch +{="} + strIdent + {"}
   Msgbox strencsearch
Titel: Re: String mit Hochkommas in Script erzeugen
Beitrag von: m3 am 09.12.08 - 12:11:17
Das ist im Debugger IMHO auch ganz normal.
Titel: Re: String mit Hochkommas in Script erzeugen
Beitrag von: koehlerbv am 09.12.08 - 12:19:53
Genau - der Bugger zeigt den Gesamtstring und den "String im String".

Und das "+" zum Verknüpfen von Strings solltest Du Dir fix abgewöhnen - verwende hierfür "&", bevor Du irgendwann mit dem "+" mal auf die Nase fallen wirst.

Bernhard
Titel: Re: String mit Hochkommas in Script erzeugen
Beitrag von: geissbock am 09.12.08 - 15:44:30
Ok, danke für die Hinweise. Werde sie beachten.
Ich versuchte den String, der da rauskommt mit Base64 zu encodieren, aber das funktioniert nicht, weil dort das Anführungszeichen nicht vorkommt. Kennt jemand eine ScriptLibrary zum Base91 -Kodieren per LotusScript?
Titel: Re: String mit Hochkommas in Script erzeugen
Beitrag von: m3 am 09.12.08 - 15:51:41
Ich denke, Du meinst Base64 und nicht Base91.

lotusscript base64 (http://www.google.at/search?q=lotusscript+base64&ie=utf-8&oe=utf-8&aq=t)
Titel: Re: String mit Hochkommas in Script erzeugen
Beitrag von: geissbock am 10.12.08 - 10:24:06
Alles klar, vielen Dank nochmal für die Hilfe. Der Fehler lag im Script das die Base64 Codierung vornahm. Mittlerweile läuft es.
Gruß und noch einen schönen Tag Klaus