Autor Thema: Feldnamen variabel übergeben  (Gelesen 2839 mal)

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Feldnamen variabel übergeben
« am: 07.12.05 - 08:03:24 »
Hallo,

in den meisten Basic-Dialekten ist das ja nicht möglich, aber für LS will ich doch mal nachfragen da es meiner db hunderte Seiten Code ersparen würde...

Ist es möglich einen Teil eines Feldnamens variabel zu übergeben?

Beispiel: Zwei Textfelder, txtFeld1 und txtFeld2

Folgendes funktioniert nicht, verdeutlicht aber was ich meine:

   For i = 1 To 2
      Msgbox doc.txtFeld(0) & i
   Next


Gibts dafür in LS eine Möglichkeit?


Gruß,

Andreas

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Feldnamen variabel übergeben
« Antwort #1 am: 07.12.05 - 08:20:48 »
Gibts dafür in LS eine Möglichkeit?

Aber sicher doch.

Des Rätsels Lösung heißt: notesDocument.GetItemValue( itemName$ )

   For i = 1 To 2
      Msgbox doc.GetItemValue("txtFeld" & Trim$(Str$(i)))(0)
   Next


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Re: Feldnamen variabel übergeben
« Antwort #2 am: 07.12.05 - 08:28:57 »
Guten Morgen Axel,

leider kommen da nur leere Messageboxen, ohne den Inhalt der Felder zurücktzliefern.

Msgbox doc.tr1(0) liefert mir dagegen den Inhalt.

Auch wenn ich das doc zuerst speichere gehts nicht.


Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Feldnamen variabel übergeben
« Antwort #3 am: 07.12.05 - 08:45:17 »
Wie sieht denn dein Code aus? Hast du die richtigen Feldnamen genommen?


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Re: Feldnamen variabel übergeben
« Antwort #4 am: 07.12.05 - 09:35:47 »
... mir hat der Kaffe gefehlt der mir die Augen weit genug öffnet...

war mein Fehler.

Danke Axel!

Viele Grüße,

Andreas

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Re: Feldnamen variabel übergeben
« Antwort #5 am: 07.12.05 - 09:50:28 »
zu früh gefreut...

in dem Fall daß der Inhalt des Feldes gebraucht wird hats funktioniert. Aber wie kann man den Bezug allgemein auf das Feld setzen?

doc.GetFirstItem( "txtFeld1" )

-->

Set rtitem = doc.GetFirstItem( doc.txtFeld & Trim$(Str$(i)) )


hätte nach einer .GetItem Methode von doc gesucht, aber die gibt es leider nicht. Gibts auch da eine Möglichkeit?
« Letzte Änderung: 07.12.05 - 09:52:38 von Andreas Huhn »

Offline gossifu

  • Senior Mitglied
  • ****
  • Beiträge: 352
  • Geschlecht: Männlich
  • Dummheit schafft Freizeit
Re: Feldnamen variabel übergeben
« Antwort #6 am: 07.12.05 - 10:03:11 »
Hallo Andreas,

das ist doch die Methode die Du suchst.
Und weiter machst Du mit der Item- oder Richtextitem-Klasse.

Ich sehe da keine Probleme.

Kjeld
Immer lustig und vergnügt, bis der A.... im Sarge liegt. ;-)

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Re: Feldnamen variabel übergeben
« Antwort #7 am: 07.12.05 - 10:11:39 »
Hallo Gossifu,

aber die Zeile löst einen "Type Missmatch" aus.

Set rtitem = doc.GetFirstItem( doc.txtFeld & Trim$(Str$(i)) )


txtFeld ist jetzt natürlich ein RichTextFeld wie das rtitem schon vermuten lässt.
« Letzte Änderung: 07.12.05 - 10:17:54 von Andreas Huhn »

Offline rar

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 856
  • Geschlecht: Männlich
  • Des passt scho
    • click
Re: Feldnamen variabel übergeben
« Antwort #8 am: 07.12.05 - 10:17:51 »
Hi,
es muss
Set rtitem = doc.GetFirstItem( "txtFeld" & Trim$(Str$(i)) )
heißen.
†090620141300

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Re: Feldnamen variabel übergeben
« Antwort #9 am: 07.12.05 - 10:48:02 »
Danke rar, das hat funktioniert. Auch wenn mir nicht so klar ist warum auf das übergeordnete doc. jetzt plötzlich verzichtet werden kann. Wenigstens gehts jetzt. Danke!

Gruß,

Andreas

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: Feldnamen variabel übergeben
« Antwort #10 am: 07.12.05 - 10:58:29 »
Les dir dazu doch einfach mal die Online Hilfe zu dem Befehl doc.getfirstitem durch und dann überlegt dir mal warum das nicht funktionieren kann wenn du in diesem Parameter ein referenziertes Feld drin hast.
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

Offline Andreas Huhn

  • Senior Mitglied
  • ****
  • Beiträge: 251
  • Geschlecht: Männlich
    • Private Homepage + eigene Software-Tools
Re: Feldnamen variabel übergeben
« Antwort #11 am: 07.12.05 - 12:58:41 »
hmm.. ich denke ich weiß was du meinst. Weil als Parameter ein String und nicht  ein Object erwartet wird.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz