Как преобразовать текстовые и форматированные текстовые поля в документе в HTML, используя lotusscript? - PullRequest
0 голосов
/ 31 августа 2009

Я просто хотел узнать, как я могу преобразовать текстовые и форматированные текстовые поля в документе, загруженном в базу данных, в HTML-поля.

Ответы [ 2 ]

2 голосов
/ 01 сентября 2009

Знал, что видел где-то:

nsftools.com на помощь

Суть хитрости заключается в том, чтобы сохранить содержимое как MIMEParts.

Образцу кода 5 лет, он был разработан для R6, но Notes имеет довольно хорошую обратную совместимость. У меня также был личный опыт, что перейти от MIME к RichText просто, поэтому вы должны быть в порядке.

Для обычных текстовых полей вы можете скопировать их содержимое в поле расширенного текста или использовать функцию по приведенной выше ссылке, которая позволяет отображать все документы.

1 голос
/ 31 августа 2009

Я не думаю, что это действительно возможно сделать в lotusscript. Но в Java-агенте вы можете сделать http-запрос к серверу Domino, что в основном заставляет сервер выполнять свою работу по рендерингу. Затем вы можете захватить полученный HTML-файл и сохранить его обратно в том же документе, или другом, и т. Д.

Если вы хотите, чтобы при рендеринге использовались только определенные текстовые / форматированные текстовые поля, просто установите специальную форму для преобразования с точным макетом и требуемыми полями. Затем создайте представление со всеми документами и добавьте формулу формы, чтобы убедиться, что эта новая форма используется. Затем вы можете сослаться на это представление в созданном вами URL-адресе, чтобы отобразить каждый документ.

Код в вашем Java-агенте будет выглядеть примерно так:

// get the URL that will open that document
// doc is current document to convert
String docid = doc.getUniversalID();
String notesURL = "/" + DB_PATH + "/" + YOUR_VIEW + "/" + docid + "?OpenDocument";
URL docURL =new URL(notesURL);
streamIn = docURL.openStream();
str = new InputStreamReader(streamIn);
binIn = new BufferedReader (str); 

String lineNext; 
StringBuffer sb = new StringBuffer();
while ( (lineNext = binIn.readLine( )) != null ) { 
    sb.append(line);
} 
String sHTML = sb.toString();
// then store sHTML somewhere
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...