2016-10-07 170 views
0

解決方法.NSFファイルから添付ファイルをエクスポートする方法を知りましたか? Lotus NotesフォームをPDFファイルにエクスポートする方法は?Lotus Notes添付ファイルのエクスポート

Bodyをリッチテキスト形式で別のMS Wordファイルにエクスポートすることができます。 しかし、データベース本体から添付ファイルを取得することはできません。

Lotus Notes for PDFを試してみましたが、メールインデータベースでのみ動作します。

+1

これまでに試したことを示すために質問を編集してください。問題を抱えているコードの最小、完全、および検証可能な例を含める必要があります。次に、特定の問題の解決に役立てることができます。あなたはまた、どのように尋ねる必要があります - http://stackoverflow.com/help/how-to-ask – Atf

答えて

1

以下に、公式のドミノデザイナーのドキュメントから取得したエージェントコードがあります。メールデータベース内のすべての文書を繰り返し処理し、すべての文書を処理します。

RichTextItem body = (RichTextItem)doc.getFirstItem("Body"); 

そして、それは、このリッチテキストアイテムオブジェクトから埋め込まれたオブジェクトのリストを取得経由:すべての文書では、フィールドBodyからリッチテキストアイテムオブジェクトが取得

Vector v = body.getEmbeddedObjects(); 

そしてそれが反復処理しました添付ファイルは、PRES、それはc:\\extracts\\フォルダに解凍され、発見されたよう

if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT) { ... } 

:経由して添付ファイルを決定するために、このリスト添付ファイル名を消去します。

名前が異なるリッチテキストフィールドに添付ファイルを保存する場合(Bodyではなく)、要件を反映するために次のコードを変更してください。

エージェントコード:

import lotus.domino.*; 
import java.util.Vector; 
import java.util.Enumeration; 

public class JavaAgent extends AgentBase { 
    public void NotesMain() { 
    try { 
     Session session = getSession(); 
     AgentContext agentContext = session.getAgentContext(); 
     // (Your code goes here) 
     Database db = agentContext.getCurrentDatabase(); 
     DocumentCollection dc = db.getAllDocuments(); 
     Document doc = dc.getFirstDocument(); 
     boolean saveFlag = false; 
     while (doc != null) { 
     RichTextItem body = 
     (RichTextItem)doc.getFirstItem("Body"); 
     System.out.println(doc.getItemValueString("Subject")); 
     Vector v = body.getEmbeddedObjects(); 
     Enumeration e = v.elements(); 
     while (e.hasMoreElements()) { 
      EmbeddedObject eo = (EmbeddedObject)e.nextElement(); 
      if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT) { 
      eo.extractFile("c:\\extracts\\" + eo.getSource()); 
      saveFlag = true; 
      } 
     } 
     if (saveFlag) { 
      doc.save(true, true); 
      saveFlag = false; 
      } 
     doc = dc.getNextDocument(); 
     } 
    } catch(NotesException e) { 
     System.out.println(e.id + " " + e.text); 
     e.printStackTrace(); 
    } 
    } 
} 

また、PDFファイルとしてエクスポートするNotes文書についてmy answer to a similar question here

+0

100万人! –

+0

フォームエクスポートでもうまくいくのでしょうか? –

+0

@YuliaKrotova 'フォームのエクスポート 'とは何ですか? –

0

をチェックし、私は数年前ということについてのブログ:http://blog.texasswede.com/lotusscript-class-for-generating-pdf-files-using-n2pdf/

あなたはサードパーティのツールが必要です私はN2PDFを当時使用していましたが、SWING PDF Creatorを使用することもできます(これは安価で、使用しやすく、信頼性が高いことがわかりました)。