PDF を開く
PDF ファイルを開きます。[PDF を追加] などのスクリプトステップを使用してページを追加してから、[PDF を閉じる] スクリプトステップを使用してファイルを閉じて保存します。
オプション
-
[次から:] では PDF ファイルの場所を指定します:
-
[ファイル] では PDF ファイルのパスを指定します。選択した場合、[ソースファイル] オプションを使用できるようになります。
-
[ソース] ではオブジェクトフィールドまたは変数の PDF ファイルを指定します。選択した場合、[ソース] オプションを使用できるようになります。
-
-
[ソースファイル] では [次から:] が [ファイル] の場合、PDF ファイルの 1 つ以上のパスとファイル名の一覧を定義します。スクリプトステップは一覧を検索して最初に見つけた PDF ファイルを使用します。パスには
imageパス接頭語のいずれかを使用する必要があります。ファイルパスの作成を参照してください。 -
[ソース] では [次から:] が [ソース] の場合、PDF ファイルを保存するオブジェクトフィールドまたは変数を指定します。
-
[パスワード:] は暗号化 PDF ファイルを開くために必要なパスワードを表すテキスト式です。PDF ファイルが暗号化されていない場合、このオプションは無視されます。
互換性
| 製品 | サポート |
| FileMaker Pro | はい |
| FileMaker Go | はい |
| FileMaker WebDirect | 一部 |
| FileMaker Server | はい |
| FileMaker Cloud | はい |
| FileMaker Data API | はい |
| カスタム Web 公開 | はい |
起点バージョン
26.0
説明
このスクリプトステップを使用すると、既存の PDF ファイルを開いて他の PDF ファイルのスクリプトステップを使用して変更することができます。PDF ファイルは [PDF を閉じる] スクリプトステップまたは [PDF をキャンセル] スクリプトステップで閉じるまでメモリ内で開いたままになります。
PDF ファイルが開いた後、次のことができます:
-
[PDF を追加] スクリプトステップを使用して内容を追加
-
[レコードを PDF として保存] スクリプトステップの[現在開いている PDF] オプションを使用して生成したレコードを追加
-
[PDF を閉じる] スクリプトステップを使用して最終的な PDF を保存
このワークフローは表紙、レポートデータ、および付録など、複数のソースのページを組み合わせて 1 つにまとめた複雑な PDF ドキュメントを作成するのに便利です。
メモ
-
同時に開くことができる PDF ファイルは 1 つのみです。PDF ファイルがすでに開いている場合、このスクリプトステップはエラーコード 833 (「PDF ファイルはすでに開いています」) を返します。
-
元の PDF ファイルは [PDF を閉じる] スクリプトステップを使用して変更を同じ場所に保存しない限り、変更されません。
-
暗号化 PDF ファイルで、パスワードが入力されていないか正しくない場合、このスクリプトステップはエラーコード 831 (「無効な PDF パスワード」) を返します。
-
次のいずれかが発生すると開いている PDF ファイルおよび保存されていない変更は失われます:
-
現在の FileMaker クライアントのセッションが終了する
-
PDF ファイルを開いたスクリプトを含む FileMaker Pro ファイルが、開いている PDF ファイルを閉じずに閉じられる
-
-
FileMaker WebDirect では、[次から: ファイル] オプションはサポートされません。
例 1 - 既存の PDF ファイルを開いて変更
現在のディレクトリにある既存の PDF ファイルをパスとファイル名「image:既存のレポート.pdf」を使用して開き、現在のレコードを追加し、変更されたバージョンを「image:更新済みレポート.pdf」に保存します。
PDF を開く [次から: ファイル ; 「既存のレポート.pdf」]
レコードを PDF として保存 [記憶する ; 保存先: 現在開いている PDF ; 現在のレコード]
PDF を閉じる [保存先: ファイル ; 「更新済みレポート.pdf」 ; フォルダを作成: オフ]
例 2 - パスワードで暗号化 PDF ファイルを開く
オブジェクトフィールドに保存されているパスワードで保護された PDF ファイルを開き、別の PDF ファイルのページを追加し、結果をファイル名「更新済み契約書.pdf」でグローバル変数に保存します。
レイアウト切り替え [「契約書」(契約書) ; アニメーション: なし]
PDF を開く [次から: ソース ; ソース: 契約書::契約書 PDF ; パスワード: ••••••••]
PDF を追加 [次から: ファイル ; 「付録.pdf」]
PDF を閉じる [保存先: ターゲット ; ターゲット: $$modifiedPDF ; ファイル名: "更新済み契約書.pdf"]
例 3 - エラー処理とともに PDF ファイルを開く
PDF ファイルを開いて計算を使用してエラーを処理し、エラーコードをわかりやすいメッセージにマッピングし、[PDF をキャンセル] スクリプトステップで開いている PDF を保存せずに閉じます。
エラー処理 [オン]
レイアウト切り替え [「契約書」 (契約書) ; アニメーション: なし]
変数を設定 [$pdfFilePath ; 値: "image:契約書.pdf"]
PDF を開く [次から: ファイル ; 「$pdfFilePath」; パスワード: ••••••••]
変数を設定 [$errorCode ; 値: Get (最終エラー)]
変数を設定 [$errorMessage ; 値:
Case (
$errorCode = 0 ; "" ;
$errorCode = 5 ; "FileMaker WebDirect ではファイル操作はサポートされていません。代わりにオブジェクトフィールドまたは変数を使用してください。";
$errorCode = 830 ; "PDF ファイルが見つからないか、無効な形式です。";
$errorCode = 831 ; "暗号化 PDF ファイルのパスワードが正しくありません。";
$errorCode = 832 ; "PDF ファイルのセキュリティ設定により変更できません。";
$errorCode = 833 ; "別の PDF ファイルがすでに開いています。まずそれを閉じてください。";
"PDF を開く際の原因不明のエラー: " & $errorCode
)
]
If [$errorCode ≠ 0]
PDF をキャンセル
カスタムダイアログを表示 ["PDF エラー" ; $errorMessage]
現在のスクリプト終了 [テキスト結果: "失敗"]
End If
PDF を追加 [次から: ソース ; ソース: 契約書::契約書 PDF]
PDF を閉じる [保存先: ファイル ; 「$pdfFilePath」]