Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Gruenkohl am 02.07.04 - 10:38:50

Titel: Feldnamen Variable ansprechen
Beitrag von: Gruenkohl am 02.07.04 - 10:38:50
Hi,

ist es möglich, dass ich Feldnamen variable anspreche.

Beispiel:

Feld_01, Feld_02, Feld03,...

For i = 1 to 5
  Feldwert = doc.Feld_0 & i & "(0)"
next

Ich bekomme das nicht hin, ist es grundsätzlich möglich?
Ein Beispiel wäre super.

Danke

Andreas
Titel: Re:Feldnamen Variable ansprechen
Beitrag von: klaussal am 02.07.04 - 10:56:01
Dim strVar As String
Dim strVar2 As String
Dim i As Integer
   
Set uidoc = ws.currentDocument
i = 1
Set doc = uidoc.document
strVar = "feld_"  + Cstr(i)

strVar2= uidoc.FieldGetText(strVar )
Titel: Re:Feldnamen Variable ansprechen
Beitrag von: Gruenkohl am 02.07.04 - 11:05:16
Ich habe kein UIDOC!
Titel: Re:Feldnamen Variable ansprechen
Beitrag von: rar am 02.07.04 - 12:24:30
Probiers mit
for i = 1 to 5
   set item = doc.GetFirstItem("Feld_0" + Cstr(i))
   Feldwert = item.Values(0)
Next

HTH
-dani
Titel: Re:Feldnamen Variable ansprechen
Beitrag von: Axel am 02.07.04 - 12:31:35
Hi,

es geht noch einfacher:

Dim Feldwert As Variant

for i = 1 to 5
   Feldwert = doc.GetItemValue("Feld_0" + Cstr(i))
Next



Axel
Titel: Re:Feldnamen Variable ansprechen
Beitrag von: rar am 02.07.04 - 12:38:26
Oder noch einfacher:  ;D

for i = 1 to 5
  Feldwert = doc.GetItemValue("Feld_0" & i )
Next
Titel: Re:Feldnamen Variable ansprechen
Beitrag von: Gruenkohl am 02.07.04 - 12:59:05
Ja super danke. Werde das mal testen.
Titel: Re:Feldnamen Variable ansprechen
Beitrag von: Axel am 02.07.04 - 13:11:16
Oder noch einfacher:  ;D

for i = 1 to 5
  Feldwert = doc.GetItemValue("Feld_0" & i )
Next


Hi,

was ist daran einfacher  ??? ???

Du hast lediglich die Dim - Anweisung weggelassen. Für die Funktion hast das mit Sicherheit keinen Einfluss. Allerdings sollten alle verwendeten Variablen deklariert werden. Das gehört zu einem guten Script-Stil.


Axel
Titel: Re:Feldnamen Variable ansprechen
Beitrag von: koehlerbv am 02.07.04 - 13:14:16
Noch schlimmer daran ist, dass hier unzulässig Datentypen vermischt werden. In der nächsten LS-Version funktioniert das dann ggf. nicht mehr.

Bernhard
Titel: Re:Feldnamen Variable ansprechen
Beitrag von: rar am 02.07.04 - 13:19:37
Daß Variablen deklariert gehören ist sowieso klar. Deswegen hab ich es auch nicht geschrieben. (doc und i sind auch nicht deklariert...)

Das einfachere war, daß man ein(e) Integer mir einem & an einen String hängen kann, ohne ihn (sie) mit Cstr() in einen String umwandeln zu müssen.

Deine Zeile:
Feldwert = doc.GetItemValue("Feld_0" + Cstr(i))

Meine Zeile:
Feldwert = doc.GetItemValue("Feld_0" & i )

-dani