掲示板一覧   -   トピック一覧
   EA API
     Diagram.SaveAsPDFを実行すると特定のダイアグラムを保存する時にエラーが発生する


スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
mogass
投稿日時: 2014-12-8 10:50
EA Administrator
投稿: 171

Diagram.SaveAsPDFを実行すると特定のダイアグラムを保存する時にエラーが発生する

サポートに頂きましたご質問と回答の要約です。

○ご質問

一括でPDF化したいと考えており、アドインを開発しております。
APIのProject.RunReportはhtmかRTF形式のみの保存という事でしたので、
Diagram.SaveAsPDF関数を用いております。
このSaveAsPDF関数を実行すると特定のダイアグラムを保存する時に必ずエラーが
発生して保存できない現象が発生しました。
Diagram.GetLastError関数を用いてエラーを表示した所、「出力ファイルの保存に
失敗しました」というメッセージを得ました。
この現象を可能な限り解消したいと考えております。

①出力ファイルの保存に失敗しましたというメッセージの原因は何でしょうか。
②対策として考えられる事はありますでしょか。


○回答

「出力ファイルの保存に失敗しました」というメッセージに関しましては、
Windowsへのファイルの書き込みの失敗なども含まれているため、
様々な可能性が考えられます。
その原因によって対策も異なりますので、まずは事象が発生する条件を
特定できればと思います。

可能性としましては、以下のような原因が例として考えられます。

1. Diagram.SaveAsPDF()の引数に指定したファイルパスのフォルダが存在しない。
2. Diagram.SaveAsPDF()の引数に指定したファイルパスのフォルダが書込み禁止。
3. Diagram.SaveAsPDF()の引数に指定したファイルパスのファイルが既に存在し、何かのアプリケーションで開かれている。
4. Diagram.SaveAsPDF()の引数に指定したファイルパスのフォルダ名またはファイル名に指定された文字列が不正。
5. 該当のダイアグラムのサイズが大きく、出力ファイルサイズが大きくなってしまい出力失敗。

恐らく、ファイル名にはダイアグラム名を指定されていると思います。

特定のダイアグラムのみでエラーが発生するということは、
エラーが発生しないダイアグラムと出力先のフォルダが同一であると
仮定すると、3.又は4.の可能性がございます。

エラーが発生する特定のダイアグラムを出力する時の
ファイル名を "a.pdf" などに変更してエラーが発生しなくなる場合は、
原因は4.となります。この場合は出力ファイル名(ダイアグラム名)を
変更して回避することができます。

5.であるかどうかは、EAでダイアグラムを開いた状態で、メインメニューの
ダイアグラム > イメージをファイルに保存 を実行し、画像で保存できるか
どうかお試し頂くことでわかる場合があります。

まずは上記1.~5.の内容をご確認いただければと思います。

何卒ご確認のほど宜しくお願いいたします。


●追記

上記の内容をご確認いただいた結果、問題が解決されたとのご報告をいただきました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ