Hi @all,
also eines habe ich benerkt, dies scheint keine triviale rage gewesen zu sein, aber ich habe dazu zwei Möglichkeiten gefunden:
1. Mit LotsScript und wget für win32 (http://space.tin.it/computer/hherold/ <- aktualisiert) in einer Maske mit einem Feld A als TextList:---snip---
Sub Click(Source As Button)
Dim pid As Integer
pid = Shell("wget.exe -F
http://www.atnotes.de -Oy:\temp.htm",6)
Dim w As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim test As Variant
test = ImportFromFile( "y:\temp.htm" )
Set uidoc = w.CurrentDocument
Call uidoc.GotoField( "A" )
Call uidoc.Inserttext(test)
End Sub
Function ImportFromFile( sFile As String ) As Variant
' Grossen Dank an
ata (
http://www.anton-tauscher.de/LotusScript/startdyn.htm)
' habe nur eine Zeile (Fett markiert) ändern müssen
REM Eine Import-Funktion für die Praxis...
' # ... Rückgabewert = Array
' On Error Goto ErrHandle
ImportFromFile = ""
If sFile <> "" Then
Dim sRow As String
Dim sTxt As String
Dim fileNum As Integer
Dim counter As Integer
fileNum = Freefile()
counter = -1
sRow = ""
' # ... die Datei zum Lesen öffnen...
Open sFile For Input As fileNum
Do While Not Eof( fileNum )
Line Input #fileNum, sTxt
counter = counter + 1
' Redim Preserve sRow( 0 To counter )
' sRow( counter ) = sTxt
sRow = sRow + Chr(13) + Chr(10) + sTxt Loop
Close fileNum' # ... schließen
' # ... Array zurückgeben...
ImportFromFile = sRow
Print "Der Import ist abgeschlossen"
End If
Exit Function
ErrHandle:
Close fileNum
Print "Abbruch - es konnte keine Datei geöffnet werden"
Exit Function
End Function
---snap---
2. Mit einem JavaAgenten:---snip---
import lotus.domino.*;
import java.net.*;
import java.io.*;
import java.util.Vector;
public class GrabHTML extends AgentBase {
public void NotesMain()
{
try
{
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
Database db = agentContext.getCurrentDatabase();
DocumentCollection dc = db.search("Form = \"RawHTML\"");
if (dc.getCount() == 1)
{
Document doc = dc.getFirstDocument();
URL url = new URL("
http://www.atnotes.de");
URLConnection conn = url.openConnection();
conn.connect();
InputStream is = conn.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
StringBuffer buffer = new StringBuffer();
int nextChar = 0;
// String newLine=System.getProperty("line.separator");
Vector stringMultiple = new Vector();
while((nextChar = bis.read()) != -1)
{
if (nextChar == 10)
{
stringMultiple.addElement(buffer.toString());
buffer = new StringBuffer(buffer.capacity());
}
else
if (nextChar != 13)
buffer.append((char)nextChar);
}
stringMultiple.addElement(buffer.toString());
doc.replaceItemValue("HTML", stringMultiple);
doc.replaceItemValue("Subject", "Raw HTML");
is.close();
bis.close();
doc.save();
}
}
catch(MalformedURLException mal)
{
mal.printStackTrace();
}
catch(IOException ioe)
{
ioe.printStackTrace();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
---snap---
Dazu wird noch eine Form benötigt namens "RawHTML" und den Felder:
- Form als Text
- Subject als Text
- HTML als TextList mit NewLine als Trennzeichen
Viel Spass und thx an ata und Rob :-)
Gruss JoFa
PS: Ich habe mich für Variante zwo entschieden