Autor Thema: Type Mismatch: String in Richtextfeld?  (Gelesen 2078 mal)

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Type Mismatch: String in Richtextfeld?
« am: 08.04.04 - 21:37:08 »
Hi,

schon oft gehabt, nur schüttle ich grad was aus dem Ärmel, weil ich jetzt keinen Zugriff auf bisherige DBs habe.

Über:
Code
Set docProfile = db.GetProfileDocument("Settings")
strProfileText = docProfile.Settings_Text(0)
lese ich ein Profil-Textfeld aus.

Diesem Text will ich ins Body einer Mail appenden:
Code
Call rtiMail.AppendText(strProfileText)   

So klappt das auch. Nur hat mein Textfeld mehrere Zeilen.

Wie übergebe ich gleich nochmal mehrere Zeilen?
Wenn ich das "(0)" weglasse im der Zeile "strProfileText =....:", dann bekomme ich einen Type Mismatch Fehler in genau dieser Zeile.
Als Variant definiert will er das auch nicht.

Eigentlich eine Anfängerfrage   :P

Bin mir sicher es ist eine Kleinigkeit, vielleicht sollte ich jetzt auch aufhören und besser die Eiersuche vorbereiten   :D


Matthias
« Letzte Änderung: 08.04.04 - 21:40:46 von TMC »
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


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:Type Mismatch: String in Richtextfeld?
« Antwort #1 am: 08.04.04 - 21:44:37 »
Hi,

ich denke du brauchst ein Array.

So ungefähr:

Dim arrText() As String
Dim idx As Integer
...
Redim arrText(Ubound(docProfile.Settings_Text))
For idx = 0 to Ubound(docProfile.Settings_Text)
  arrText(idx) = docProfile.Settings_Text(idx)
Next
...


Fröhliches Eiersuchen
Axel
« Letzte Änderung: 08.04.04 - 21:45:18 von Axel »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Type Mismatch: String in Richtextfeld?
« Antwort #2 am: 08.04.04 - 21:52:33 »
Danke Axel.

Meinst Du wirklich, ich brauche hier ein Array und es geht nicht einfacher?

Gut, ich weiss wenn DU sowas sagst, dann gibt es wohl keine einfachere Alternative :-)

Wie verhält es sich, wenn es z.B. ein Namensfeld ist (SendTo), und dort auch mehrere Empfänger eingetragen werden, auch über Array?

Eigentlich schade, ich wollte das über eine Einzeiler-Zuordnung lösen.....

Aber gut, da muss man durch  :)

Matthias
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


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:Type Mismatch: String in Richtextfeld?
« Antwort #3 am: 08.04.04 - 21:55:29 »
Hi,

ich denke bei einem Namensfeld geht es genauso.

Ich kenne keine einfachere Lösung, was aber nicht heißen will, dass es keine einfachere gibt. Ich bin auch nicht allwissend (leider ;) :-\). Man lernt ja nie aus.


Axel

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

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Type Mismatch: String in Richtextfeld?
« Antwort #4 am: 08.04.04 - 22:01:17 »
Danke Axel. Hat mir sehr geholfen (und vor wilden Experimenten bewahrt).

Mit dem nie auslernen hast Du Recht, aber sonst wäre es ja auch langweilig  ;)


Schönen Abend,

Matthias
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Type Mismatch: String in Richtextfeld?
« Antwort #5 am: 08.04.04 - 22:31:06 »
Probier mal

Call rtiMail.AppendText(docProfile.GetItemValue("Settings_Text"))

Nicht sicher, obs bei rti geht, bei normalen Items geht das.

Sonst gibts noch das:

Forall strTemp in docProfile.GetItemValue("Settings_Text")
  Call rtiMail.AppendText(strTemp)
End Forall
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Type Mismatch: String in Richtextfeld?
« Antwort #6 am: 08.04.04 - 22:56:59 »
Der Fehler lag völlig anders (eigentlich logisch):

Im Profildokument war in den Textfeldeigenschaften "Allow multiple values" selektiert.

So kann das nicht gehen.
De-selektiert man diese Property, dann klappt es auch ganz normal mit
strProfileText = docProfile.Settings_Text(0) und Call rtiMail.AppendText(strProfileText).

Sprich so wird auch trotz ENTER (also Char(10) bzw. Char(13)) der ganze Inhalt in EIN String kopiert.

Trotzdem nochmal danke Axel und auch Jens - und sorry für die Verwirrung.

Matthias
« Letzte Änderung: 08.04.04 - 22:58:09 von TMC »
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Type Mismatch: String in Richtextfeld?
« Antwort #7 am: 08.04.04 - 23:07:59 »
Nachtrag:

Damit ich das SendTo - Feld mit mehreren Empfängern füllen kann, definiere ich den Namensfeld-Inhalt als Variant, dann klappt auch das sauber.

Happy Easter,

Matthias
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Type Mismatch: String in Richtextfeld?
« Antwort #8 am: 08.04.04 - 23:09:47 »
Na ja, kommt drauf an, Multivalue-Texte machen durchaus manchmal Sinn, bzw. im Bäckend sind es ja sowieso immer Multivalue-Items, man muss also mit mehreren Werten rechnen. Klar, wenn Du die einzelnen "Einträge" nicht einzeln brauchst, macht das Sinn, das als einen einzigen String abzulegen.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Type Mismatch: String in Richtextfeld?
« Antwort #9 am: 08.04.04 - 23:15:31 »
Klar.
Nur in diesem speziellen Fall halt nicht, weil es plain Text ist, der in eine Workflow-Mail wandert. Da reicht ein einfaches String.

Trotzdem hätte ich gleich draufkommen sollen, dass es an dem Allow multiple values - Flag liegt, aber so ist es ja meist  ;)

Ich habe schon sämtliche Dinge angezweifelt, wegen diesem "blöden" Flag :-)

Habe mir aber jetzt eine unruhige Nacht erspart, es hätte mich sehr geärgert, wenn ich nicht heute noch die Lösung gefunden hätte  :D

Matthias
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz