Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: aretni am 11.04.08 - 09:17:31

Titel: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: aretni am 11.04.08 - 09:17:31
Hallo,

Über den Befehl "Call doc.ReplaceItemValue(ziel , quelle)" wird ein Wert in ein Feld geschrieben, wie lautet der Befehl mehrere Werte in ein Mehrfachfeld zu schreiben?
Ferner möchte ich noch gerne erfahren, wie man am einfachsten ein Feld löscht um es neu zu beschreiben?

Vielen Dank im voraus.

Gruß

Aretni
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: m3 am 11.04.08 - 09:19:22
Mehrfachwert == Array in Lotusscript

Call notesDocument.RemoveItem( itemName$ )
(siehe auch Designer-Hilfe zum NotesDocument Objekt)
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: klaussal am 11.04.08 - 09:20:37
Aus der Hilfe:

Zitat
Wählen Sie "Mehrfachwerte zulassen" für ein Feld, das eine Textliste mit mehreren Namen speichert. Trennen Sie die Namen in der Formel mit einem Doppelpunkt voneinander.
"Silke Braun":"Marketing":"Rainer Maurer"
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: Axel am 11.04.08 - 09:25:56
Auf die Schnelle so z.B.:
...
Dim arrWerte(2) As String
...

'Werte dem Array zuweisen
arrWerte(0) = Wert1
arrWerte(1) = Wert2
arrWerte(2) = Wert3
...
...
'Array mit den Werte dem Feld zuweisen
doc.Feldname = arrWerte
...


Axel
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: m3 am 11.04.08 - 09:37:54
Aus der Hilfe:

Zitat
Wählen Sie "Mehrfachwerte zulassen" für ein Feld, das eine Textliste mit mehreren Namen speichert. Trennen Sie die Namen in der Formel mit einem Doppelpunkt voneinander.
"Silke Braun":"Marketing":"Rainer Maurer"
Das ist aber Formelsprache. Aretni (wer oder was immer das auch ist) bewegt sich in Lotusscript Gefielden.
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: Glombi am 11.04.08 - 09:43:35
Anhängen so:
Call notesItem.AppendToTextList( newValue )
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: aretni am 11.04.08 - 10:05:25
vielen dank, das klappt alles wunderbar. Jetzt möchte ich einem String einen Wert anfügen, wie mache ich das am besten? In der Hilfe hab ich bei String Handling leider nichts gefunden.
Beispiel:
String1 = Hund
String2 = Tier

Ergebnis sollte lauten:
String = Hund|Tier
mit | als Trennzeichen
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: koehlerbv am 11.04.08 - 10:08:45
In der Designer-Hilfe gibt es im Index einen ganzen Komplex zum Thema "String handling".
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: m3 am 11.04.08 - 10:10:22
*kopfschüttel*

Willst Du a) jetzt einem Textfeld mit Mehrfachwerten einen Eintrag hinzufügen, oder b) in einem Textfeld den String "Hund|Tier" hinzufügen?

Für a) mit NotesDocument.GetItemValue die bestehenden Werte aus dem Textfeld mit Mehrfachwerten auslesen, ein Redim machen, damit Du einen weiteren Wert hinzufügen kannst, den Wert ins Array an die gewünschte Position eintragen und dann dem Feld das Array wieder zuweisen.
Oder notesItem.AppendToTextList( newValue ), wie Glombi schon geschrieben hat.

Für b) getItemvalue und ReplaceItemValue

/me fragt sich, was da so wunderbar klappt.

Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: aretni am 11.04.08 - 10:18:39
*kopfschüttel*

Willst Du a) jetzt einem Textfeld mit Mehrfachwerten einen Eintrag hinzufügen, oder b) in einem Textfeld den String "Hund|Tier" hinzufügen?

Für a) mit NotesDocument.GetItemValue die bestehenden Werte aus dem Textfeld mit Mehrfachwerten auslesen, ein Redim machen, damit Du einen weiteren Wert hinzufügen kannst, den Wert ins Array an die gewünschte Position eintragen und dann dem Feld das Array wieder zuweisen.
Oder notesItem.AppendToTextList( newValue ), wie Glombi schon geschrieben hat.

Für b) getItemvalue und ReplaceItemValue

/me fragt sich, was da so wunderbar klappt.

Ihr hab mich schon richtig verstanden, erst hatte ich ein Mehrfachfeld gebraucht, jetzt bin ich bei einer anderen Baustelle und jetzt brauche ich eine möglichkeit einem String etwas anzufügen.
Es gibt ArrayAppend(), sowas müsste es doch auch für Strings geben.
Und bei String Handling finde ich leider nichts was mit Append und Strings zu tun hat!
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: m3 am 11.04.08 - 10:20:08
Wie wärs mit
String1 + String2
oder
String1 & String2
??? ?
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: koehlerbv am 11.04.08 - 10:24:31
Und bei String Handling finde ich leider nichts was mit Append und Strings zu tun hat!

Bis Du blind, oder siehst Du nur nichts?  ;D
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: aretni am 11.04.08 - 10:25:27
Wie wärs mit
String1 + String2
oder
String1 & String2
??? ?
Danke.
Mit + funktioniert es.
Wenn ich das mit & realisiere kommt eine Fehlermeldung

Ich kenne mich leider nicht mit dem VisualBasic verschnitt aus, deswegen frag ich, jetzt weiß ich es!
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: koehlerbv am 11.04.08 - 10:29:08
Martin, "+" ist nicht der String concenator! Probiere mal das aus:
Code
Messagebox 100 + "200"

An den Threaderöffner: Was da mit "+" funktionieren soll, nicht aber mit "&", ist mir schleierhaft. Da musst Du ja etwas vollkommen falsch machen!

Bernhard
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: aretni am 11.04.08 - 10:30:16
Und bei String Handling finde ich leider nichts was mit Append und Strings zu tun hat!

Bis Du blind, oder siehst Du nur nichts?  ;D
Ja bei Dir steht da soviel, bei mir steht leider nur (Rechtschreibfehler inkl.):
Char Extraction
Char Replacment
Comparison
Conversion and formatting
Number/ String Conversion
Plattform Char Codes
unicode String handling
Titel: Re: Anfängerfrage: (Lotusscript) Werte in Mehrfachfeld schreiben
Beitrag von: m3 am 11.04.08 - 11:05:49
Martin, "+" ist nicht der String concenator! Probiere mal das aus:
Code
Messagebox 100 + "200"
PFUI !!!! Int. und String mischen. Wer tut denn sowas? ;)

Das funktioniert aber:

Code
	Dim t1 As String
	Dim t2 As String
	Dim t3 As String
	
	t1 = "Text 1"
	t2 = "Text 2"
	
	t3 = t1 + t2
	Msgbox "Text3: " + t3
Aber natürlich sollte man "&" verwenden.