Autor Thema: Variable Feldnamen  (Gelesen 1177 mal)

Offline Luki

  • Frischling
  • *
  • Beiträge: 7
  • Ich liebe dieses Forum!
Variable Feldnamen
« am: 21.09.06 - 10:41:40 »
Hallo zusammen,

nachdem ich in diversen Lotus Script Agenten reichlich Zeilen verbraucht habe, stellt sich mir die Frage, ob man es nicht auch etwas eleganter lösen kann.

Ist es möglich auch Feldnamen variabel in einer Schleife zu verarbeiten ?
D.h. nicht wie im angefügten Beispiel für jeden Feldnamen eine If-Anweisung
zu schreiben, sondern die Zahl am Ende des Feldnamens in einer Schleife
hochzuzählen.

Beispiel:

If ind = 1 Then
      If summefrage1 = "5" Then
         durchschnitt1 = "0"
      Else
         durchschnitt1 = summefrage1
      End If
      If summefrage2 = "5" Then
         durchschnitt2 = "0"
      Else
         durchschnitt2 = summefrage2
      End If
      If summefrage3 = "5" Then
         durchschnitt3 = "0"
      Else
         durchschnitt3 = summefrage3
      End If
      If summefrage4 = "5" Then
         durchschnitt4 = "0"
      Else
         durchschnitt4 = summefrage4
      End If  .........

Ich habe schon Einiges probiert, aber irgendwie ist nicht das gewünschte herausgekommen. Vielleicht hat ja jemand einen Tipp.

Schon jetzt  vielen Dank !

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Variable Feldnamen
« Antwort #1 am: 21.09.06 - 10:46:33 »
Die Frage ist so allgemein gehalten, das auch nur eine allgemeine Antwort rauskommen kann.

Antwort: Ja man kann, es hängt von den Umständen ab.

Zum Beipiel. Über den Item.Name und die Verwendung einer Liste.
dim durchschnitt List as double

Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

botschi

  • Gast
Re: Variable Feldnamen
« Antwort #2 am: 21.09.06 - 10:48:55 »
Du kannst alle Felder in eine Teilmaske tun und die Felder in einer Forall-Schleife abarbeiten

Set form = db.GetForm("KTV")
   Dim feldname As String
   Dim ktvitem As NotesItem
   
   Set ktvprofil = db.GetProfileDocument("Profildokument")
   
   Forall fields In form.Fields
      
      Set ktvitem = ktvprofil.GetFirstItem( fields )
      If kostentrager = ktvitem.values(0) Then
         feldname = ktvitem.Name
         If feldname = "kostentrager" Then
            ktv_erm = ktvprofil.GetItemValue("Person")
            Exit Forall
         Else
            ktv_erm = ktvprofil.GetItemValue("Person_" & Strright(feldname,"_"))
            Exit Forall
         End If
      End If
      
   End Forall

Oder mit Uidoc.Fieldgettext("Feldname" + zähler) die Felder nacheinander abarbeiten.
Vielleicht gibts sogar noch eine Lösung...

Offline Luki

  • Frischling
  • *
  • Beiträge: 7
  • Ich liebe dieses Forum!
Re: Variable Feldnamen
« Antwort #3 am: 21.09.06 - 10:54:04 »
Vielen Dank, für die schnellen Antworten.

Ich werde mich mal an die Arbeit machen (ausprobieren).

Gruß und Danke.


 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz