Autor Thema: Problem mit RTFeld kopieren.  (Gelesen 3001 mal)

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Problem mit RTFeld kopieren.
« am: 28.04.03 - 17:28:57 »
Ich hab im Forum gesucht und auch gefunden aber nicht das was ich brauche.
Ich möchte nachdem erstellen eines neuen doc's ein mail versenden das mir dann den text des rtf "BemAuftraggeber" in das doc sendoc im body einfügt das anschließend versendet wird. Das doc wurde noch nicht gespeichert.
Ich hab in meinem Querysave dieses Script:
Sub Querysave(Source As Notesuidocument, Continue As Variant)
   Dim s As New NotesSession   
   Dim rtitem As NotesRichTextItem   
   Dim itemdoc As Variant
   Dim senddoc As NotesDocument   
   Dim db As NotesDatabase   
   Set db= s.CurrentDatabase
   Set senddoc = New NotesDocument(db)   
   Dim doc As NotesDocument
   Set doc=Source.Document
   If doc.Abteilung(0) ="" Then
      Msgbox "Sie müssen eine Abteilung eingeben",16,"Falsche oder fehlender Wert"
      Continue =False
      Call Source.FieldSetText("Schliessen","False")
      Source.GotoField("Abteilung")
      Exit Sub
   Elseif source.IsNewDoc Then
      With senddoc
         .Form = "Memo"
         .SendTo = doc.Zuhanden
         .Subject = "Neuer Prüfauftrag ''" + doc.Projekt(0) +"''"
         Set rtitem = New NotesRichTextItem( senddoc, "Body" )
         Call rtitem.AppendText("Klicken sie auf die Dokumentenverknüpfung um den Prüfauftrag einzusehen:")
         Call rtitem.AddNewLine(2)
         Call rtitem.AppendDocLink( doc, doc.Projekt(0) )
         If doc.BemAuftrSenden(0) ="ja" Then
            dim plainText as Variant
            Call rtitem.AddNewLine(1)
            Set itemdoc = doc.GetFirstItem("BemAuftraggeber")
            plainText = itemdoc.GetFormattedText( False, 0 )   
            hier bekomm ich immer einen fehler
            object varible not set

            Call rtitem.AppendText("Bemerkung: ")

         End If
         Call senddoc.send(True)
      End With

   End If
End Sub

Ich vermute das das doc einmal gespeichert werden muss das man auf das rtf zugreifen kann!! wie mach ich das am besten.
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Problem mit RTFeld kopieren.
« Antwort #1 am: 28.04.03 - 17:59:16 »
... dein Code sieht so schlecht nicht aus, überprüfe doch mal den Feldnamen, der sieht falsch aus...

ata
Grüßle Toni :)

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re:Problem mit RTFeld kopieren.
« Antwort #2 am: 29.04.03 - 08:20:12 »
der feldname stimmt schon ich habs sogar mit einem "test"-rtf ausprobiert. und ich bekomm den gleichen fehler. er setzt mir das itemdoc nicht bleibt leer im LS-Debugger. Wenn ich das doc jedoch einmal gespeichert habe und geschlossen dann funktioniert das script. aber wie kann ich das jetzt so realisieren? ich hab aber auch schon in das script in der if schleife doc.BemAuftrSenden(0) ="ja" ein Call doc.save(True,False) eingebaut aber das geht auch nicht!!
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

klaussal

  • Gast
Re:Problem mit RTFeld kopieren.
« Antwort #3 am: 29.04.03 - 08:57:56 »
... uidoc speichern und dann uidoc reload könnte helfen.

Offline Performance

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.096
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re:Problem mit RTFeld kopieren.
« Antwort #4 am: 29.04.03 - 09:05:25 »
ist BemAuftraggeber ein rtf Feld ?

cu
Wir können alles außer hochdeutsch !

Alles ist möglich, es ist nur eine Frage der Zeit oder des Geldes!

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re:Problem mit RTFeld kopieren.
« Antwort #5 am: 29.04.03 - 09:19:32 »
@Performance
natürlich ;) ist BemAuftraggeber ein rtf aber die frage gehört trotzdem gestellt.
ich habs ja uach schon mit einem test-rtf probiert.

@klaussal
man kann wenn man im querysave ein script hat kein uidoc save einbauen da sonst eine ineinander verschachtelter fehler auftritt.

ich weiß auch nicht weiter was es sonst sein kann.
Das problem ist das wenn ich LS-Debugger das doc anschaue das das rt-feld noch garnicht vorhanden ist.
das wird ja erst beim speichern angelegt wenn ich mich nicht irre.
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline Performance

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.096
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re:Problem mit RTFeld kopieren.
« Antwort #6 am: 29.04.03 - 09:31:43 »
rtf erst abfragen wenn es gespeichert wurde ....


cu
Wir können alles außer hochdeutsch !

Alles ist möglich, es ist nur eine Frage der Zeit oder des Geldes!

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re:Problem mit RTFeld kopieren.
« Antwort #7 am: 29.04.03 - 09:42:00 »
aber ich möchte das mail doch versenden mit dem inhalt des rt-feldes!?
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

klaussal

  • Gast
Re:Problem mit RTFeld kopieren.
« Antwort #8 am: 29.04.03 - 09:49:03 »
... rtf -felder werden erst beim speichern angelegt.

Offline Performance

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.096
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re:Problem mit RTFeld kopieren.
« Antwort #9 am: 29.04.03 - 09:49:10 »
das ist ja ok - aber wenn du im rtf was einfügen willst in script muss erst gespeichert werden  ;D

cu
Wir können alles außer hochdeutsch !

Alles ist möglich, es ist nur eine Frage der Zeit oder des Geldes!

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Problem mit RTFeld kopieren.
« Antwort #10 am: 29.04.03 - 14:03:32 »
... es funktioniert auch ohne Speichern, wenn du dem Feld nur Text mitgibst.

SendDoc.RTFeld = "Dein Text, den du mitgeben willst"

... du darfst das Feld nicht per RtItem erstellen, sondern nur den Wert zuweisen. Das Dokument geht davon aus, daß es ein Textfeld ist und versendet es. Beim Empfänger ist dann ein Richtext-Feld...

ata
Grüßle Toni :)

Offline Performance

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.096
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re:Problem mit RTFeld kopieren.
« Antwort #11 am: 29.04.03 - 16:34:40 »
Das Dokument geht davon aus, daß es ein Textfeld ist und versendet es. Beim Empfänger ist dann ein Richtext-Feld...

oder so...

@ata
in erster Linie ist es ein Feld vom Typ item, kann also auch ein Number Typ sein.  ;D;D;D


cu
Wir können alles außer hochdeutsch !

Alles ist möglich, es ist nur eine Frage der Zeit oder des Geldes!

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re:Problem mit RTFeld kopieren.
« Antwort #12 am: 29.04.03 - 16:47:16 »
@ata ich möchte ja mein senddoc mit einem rt-feld "body" das verschickt wird, mit dem rt-feld "BemAuftraggeber" vom currentdocument füllen das uidoc wurde aber noch nicht gespeichert! was ich anschließend noch brauche das auch die datein die im RTF "BemAuftraggeber" drinnen sind das die auch mitgesendet werden.
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline Performance

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.096
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re:Problem mit RTFeld kopieren.
« Antwort #13 am: 29.04.03 - 18:57:22 »
@robertpp
im UI dok mit Anhang im rtf geht halt nur mit speichern....
- du kannst ja das dok immer noch im nachhinein löschen

- im backend geht es ohne das dok zu speichern - mit Anhang -
- im UI hast du das Problem das das Feld noch nicht gespeichert ist und du deine Infos nicht rausziehen kannst, du hast zwar deine $File items aber das wird dann zu kompliziert.....
 

 Set itemdoc = doc.GetFirstItem("BemAuftraggeber")
- diese statement funktioniert nur wenn das doc gespeichert wurde

- deine if Funktion ist ein wenig komisch - ein if.. elseif Konstrukt bezieht sich immer auf das gleiche item mit unterschiedlichen Ausprägungen halt, sozusagen ein case Konstrukt.

Ergo:
Die send Mail Funktion in Postsave reinhauen - das dok wurde im querysave gespeichert und du hast jetzt dein rtf zur Verfügung.


cu
Wir können alles außer hochdeutsch !

Alles ist möglich, es ist nur eine Frage der Zeit oder des Geldes!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz