Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: Bruce Willis am 05.09.12 - 13:29:21

Titel: Webseite im Notes Dokument?
Beitrag von: Bruce Willis am 05.09.12 - 13:29:21
Hallo,

(wie) kann man eine Webseite in einem RT-Feld ablegen, so dass diese sich beim Öffnen des Notes Dokuments oder per Button aktualisiert angezeigt wird?

Gruß
Leo
Titel: Re: Webseite im Notes Dokument?
Beitrag von: pram am 05.09.12 - 13:59:55
Du könntest probieren, im QueryOpen dir den Inhalt der Webseite mittels db.GetDocumentByURL zu holen und dann ins gewünschte Richtextitem zu kopieren.
Alternativ könntest du auch versuchen, als HTML <IFrame src="...."> einzubinden (Durchgangshtml/ ggf. über MIME-Items)
Ich befürchte aber, das Notes IFrames nicht kann.

Gruß
Roland
Titel: Re: Webseite im Notes Dokument?
Beitrag von: umi am 05.09.12 - 17:27:22
Hallo
Soweit ich das gesehen habe wird dies mit 8.5.4 möglich sein... evtl...
Titel: Re: Webseite im Notes Dokument?
Beitrag von: Bruce Willis am 05.09.12 - 23:32:26
Du könntest probieren, im QueryOpen dir den Inhalt der Webseite mittels db.GetDocumentByURL zu holen und dann ins gewünschte Richtextitem zu kopieren...

Hallo Roland,

vielen Dank für die schnelle Antwort!

Funktioniert einwandfrei.
Kann man evtl. noch LoginName und Passwort mitgeben?

Gruß
Leo

Code
Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
	
	Dim session As New NotesSession
	Dim ws As New NotesUIWorkspace
	Dim db As NotesDatabase
	Set db = session.CurrentDatabase
	
	Dim doc As NotesDocument
	Set doc = Source.Document
	
	Dim MyDoc As New NotesDocument(db)	
	Set MyDoc = db.GetDocumentByURL _
        ("http://atnotes.de/index.php/topic,54901.msg354263.html#msg354263")
	MyDoc.Form = "TestFormURL"
	MyDoc.Subject = Now
	Call MyDoc.Save(True,True)
	
	Dim item As NotesItem
	Set item = MyDoc.GetFirstItem( "Body" )
	Call doc.CopyItem( item, "Body" )
	
End Sub
Titel: Re: Webseite im Notes Dokument?
Beitrag von: pram am 06.09.12 - 09:44:59
Hallo Leo
Kann man evtl. noch LoginName und Passwort mitgeben?
Gugst du in die Hilfe von GetDocumentByUrl...  ;)

MyDoc würde ich übrigens nicht speichern und auf manchen Servern/DBs funktioniert auch GetDocumentByUrl nicht. (wenn der Web retiever Prozess nicht aktiv ist)
-> Hier musst du dann eine lokale DB verwenden, z.B. die Cache.ndk o.a.

Gruß
Roland
Titel: Re: Webseite im Notes Dokument?
Beitrag von: Bruce Willis am 06.09.12 - 10:05:59
Hallo Roland,

Gugst du in die Hilfe von GetDocumentByUrl...  ;)

Ja, klar. Wer lesen kann.. ;)
Es war bloß zu spät gestern...  ::)
Jetzt sehe ich.

MyDoc würde ich übrigens nicht speichern und auf manchen Servern/DBs funktioniert auch GetDocumentByUrl nicht. (wenn der Web retiever Prozess nicht aktiv ist)
-> Hier musst du dann eine lokale DB verwenden, z.B. die Cache.ndk o.a.

Danke für den Tipp!
In wie fern bzw. wozu genau könnte ich Cache.ndk verwenden?

Gruß
Leo
Titel: Re: Webseite im Notes Dokument?
Beitrag von: pram am 06.09.12 - 10:56:17
Ich meinte um das Dokumet zu holen, da es mit DBs die auf einem Server liegen nicht immer klappt
(es kommt dann eine Fehlermeldung dass der Web-Retriever-Prozess für diesen Server nicht erlaubt/aktiv ist, genau weiß ich es leider nicht mehr)

Um dieses Problem zu umgehen habe ich eine lokale DB verwendet. In meinem Fall die "cache.ndk", genauso gut ginge auch jede andere lokale DB, z.b. "names.nsf" o.ä. da das Dokument sowies nicht gespeichert wird (bzw. werden soll)
Code
dim db as new NotesDatabase("","cache.ndk")
set doc = db.GetDocumentByUrl(...)

Gruß
Roland
Titel: Re: Webseite im Notes Dokument?
Beitrag von: Bruce Willis am 06.09.12 - 11:05:50
Cool !!!

So eine Fehlermeldung habe ich erst vor 5 min auch gesehen.

Vielen Dank, Roland!

Gruß
Leo
Titel: Re: Webseite im Notes Dokument?
Beitrag von: Bruce Willis am 06.09.12 - 13:12:36
Hi,

wo könnte ich noch einstellen, dass die Bilder angezeigt werden?
Im Moment werden stattdessen nur die leeren roten Kästchen angezeigt.

Gruß
Leo
Titel: Re: Webseite im Notes Dokument?
Beitrag von: pram am 06.09.12 - 15:18:40
probier mal ein doc.ReplaceItemValue("$DelayedImagesOK","ok")

Gruß
Roland
Titel: Re: Webseite im Notes Dokument?
Beitrag von: Bruce Willis am 06.09.12 - 15:38:17
probier mal ...

Wow !!!
Ich bin sprachlos!!
Du weißt wirklich alles!

Der Code funktioniert perfekt!

Vielen Dank, Roland !!!
 :knuddel:

Gruß
Leo
Titel: Re: Webseite im Notes Dokument?
Beitrag von: Bruce Willis am 07.09.12 - 12:51:10
Hi,

ich hätte noch ein paar Fragen zum Thema:

Kann man beim Kopieren,
1. die maximale breite der kopierten Seite
2. die maximale größe der Buchstaben und
3. evtl. deren Typ (z.B. Arial)
bestimmen?

Gruß
Leo
Titel: Re: Webseite im Notes Dokument?
Beitrag von: pram am 07.09.12 - 13:34:15
Da schaut es denke ich schlecht aus. Bzw. es wird nicht einfach.
Diesen Artikel kennst du ja bereits: http://atnotes.de/index.php?topic=52040.0  ;D

Du könntest versuchen "session.convertMime=false" zu setzen, dann sollte das Item vom Typ "MIME" sein.
Dann kannst du im HTML "rumwursteln" und zus. CSS-Stylesheets einfügen o.ä.
Außerdem sollte die die Darstelllung besser sein, da das HTML nicht nach Richtext konvertiert wird

Gruß
Roland

Titel: Re: Webseite im Notes Dokument?
Beitrag von: Bruce Willis am 07.09.12 - 15:00:38
Diesen Artikel kennst du ja bereits: http://atnotes.de/index.php?topic=52040.0  ;D

Ja, den hab ich mal gesehen...  ;)
Danke.

Kann man evtl. die Fehlermeldung zum JavaScript unterbinden?

Gruß
Leo
Titel: Re: Webseite im Notes Dokument?
Beitrag von: pram am 07.09.12 - 15:51:10
ja langsam kommen wir in den Bereich, wo es komplizierter wird...  ;)

Du müsstest
1. das HTML aus dem MIME-Item auslesen (alle Mime-Parts durchgehen, bis du eins findest mit contettype=text / subtype=html)
2. das HTML parsen und alles zwischen (einschließlich) "<script" und "</script>" entfernen, das könnte z.B. so gehen:
html = stream.ReadText()
do while instr(html, "<script") > 0
  html = strleft(html,"<script") + strright(html","</script>")
loop
3. das HTML wieder zurück ins MIME-Item packen

Gruß
Roland
Titel: Re: Webseite im Notes Dokument?
Beitrag von: Bruce Willis am 07.09.12 - 22:23:10
Hallo Roland,

ja langsam kommen wir in den Bereich, wo es komplizierter wird...  ;)
Oh, ich hab gehofft, dass man vielleicht mit einer Anweisung generell alle Popups unterbinden könnte. :'(

Du müsstest...
Nochmals vielen Dank!

Ich muss zuerst deinen o.g. Artikel doch genau lesen.
Liegt ausgedruckt auf meinem Tisch schon seit einer Weile, aber wegen üblichen "mach' mal das und dann schnell noch das" kam ich noch nie dazu.

Wünsche dir ein schönes Wochenende!

Gruß
Leo