メインコンテンツへスキップ

Makeでフォルダ内の複数のPDFを結合する:イテレータ、配列アグリゲーター、PDF4meを使った手順

· 1分で読める
SEO and Content Writer

Dropboxフォルダに複数のPDFファイルがあり、それらを自動的に1つのPDFファイルに結合したいとします。ただし、注意点があります。 PDF4meで複数のPDFを結合する 期待する 配列 ファイルデータですが、Dropbox ウォッチファイル ファイルメタデータのリストを返し、 ファイルをダウンロードする 一度に1つのファイルを返します。そのギャップを埋めるには、 イテレータ そして 配列アグリゲーターイテレータは各ファイルを1つずつ処理し、配列アグリゲーターはそれらの結果をマージが期待する配列に収集します。

このガイドでは、Make シナリオ全体を詳しく解説し、特に以下の点に焦点を当てます。 イテレータと配列アグリゲーターの仕組み そして、それらをPDF4me Makeコネクタに接続する方法。

必要なもの​

フローの概要​

シナリオは 6つのモジュール この順序で:

  1. Dropbox: ファイルの監視: フォルダー内の新規ファイルまたは更新されたファイルを監視します。 配列 ファイルメタデータ(パス、名前、サイズ)について。
  2. Dropbox: ファイルをダウンロードする各ファイルをダウンロードします。 イテレータルート内ファイルごとに1回。
  3. イテレータ: ウォッチファイルから配列を取得し、処理します 各アイテムを1つずつ. 実行後、ファイルごとに一度だけ接続されます。
  4. 配列アグリゲーター各イテレータサイクルからの出力(ダウンロードされたファイルデータ)を収集し、それをバンドルします。 単一アレイ PDF4me Merge用にフォーマットされています。
  5. PDF4me:複数のPDFを結合する集約された配列を受け取り、すべてのPDFを1つに結合し、結合されたファイルを出力します。
  6. Dropbox: ファイルのアップロード結合されたPDFファイルを、指定した出力フォルダに保存します。
ワークフローの作成: Dropbox ウォッチファイル → ファイルのダウンロード → イテレータ → 配列アグリゲーター → PDF4me で複数の PDF を結合 → Dropbox でファイルをアップロード

イテレータと配列アグリゲーターの理解​

設定する前に、理解しておくと役立ちます なぜ これら2つのモジュールが必要です。

なぜイテレータを使うのか?​

Dropbox、ファイルの監視 を返す 配列 ファイルオブジェクト(それぞれにパス、名前、サイズなどが含まれる)。 PDF4me、複数のPDFを結合する 必要とする ファイルコンテンツの配列 (バイナリデータ)であってメタデータではありません。コンテンツを取得するには、 各ファイルをダウンロード。 しかし ファイルをダウンロードする 作業中 実行ごとに1つのファイル: 単一のパスが必要です。

の イテレータ これを解決するには、Watch Files から配列を取得し、 それを個々のアイテムに分割します各アイテムに対して、そのルート内のモジュールを実行します。 一度。 それで:

  • Watch Filesの出力: [file1, file2, file3]
  • イテレータはルートを実行します 3回ファイル1用に1回、ファイル2用に1回、ファイル3用に1回
  • ファイルのダウンロードが実行されます 3回毎回、イテレータから現在のファイルのパスを使用します。

なぜ配列アグリゲーターが必要なのか?​

イテレータの実行後、 複数の独立した実行 ファイルをダウンロードすると、ファイルごとに 1 つの出力が生成されます。PDF4me Merge は、 1つの配列 すべてのファイルデータが含まれています。 配列アグリゲーター イテレータの逆の動作をします。 収集する 各イテレータサイクルの出力と 組み合わせる それを単一の配列にまとめ、マージモジュールが使用できるような構造にする。

  • イテレータは以下を生成します:サイクル1 → file1データ、サイクル2 → file2データ、サイクル3 → file3データ
  • 配列アグリゲーターは以下を収集します。 [file1 data, file2 data, file3 data]
  • Merge はその配列を受け取り、結合された 1 つの PDF を生成します。

ステップ1:Dropbox:ファイルの監視(トリガー)​

このモジュールはフォルダを監視し、ファイルメタデータの配列を出力します。新規ファイルまたは更新されたファイルが現れると、シナリオがトリガーされます。

これまでの流れ: ファイルを見る。

  1. 追加 Dropbox → ウォッチファイル (または ファイル一覧 (投票をご希望の場合)
  2. 繋がり *Dropboxへの接続を選択してください。
  3. フォルダ検索方法: 選ぶ リストから選択 (またはご希望の方法)
  4. フォルダパス: 結合する PDF を含むフォルダーを入力します (例: /pdf4metest/Merge/mergetest/)
  5. サブフォルダもご覧ください: セット いいえ そのフォルダ内のファイルだけが必要な場合。 はい サブフォルダを含める。
  6. 制限*: 実行ごとに最大ファイル数を設定します (例: 10このモジュールは最大4,000個のアイテムを処理できます。
Dropboxの監視ファイル:接続、フォルダパス /pdf4metest/Merge/mergetest/、制限10

出力: ファイルオブジェクトの配列。各項目には パス表示、 ファイル名、 ファイルサイズ、および同様のフィールド。イテレータは次にこの配列を使用します。


ステップ2:Dropbox:ファイルのダウンロード(イテレータルート内)​

このモジュールを追加する 後 イテレータ(イテレータルート内に配置されます)。現在のアイテムのパスを使用して、イテレータのサイクルごとに1つのファイルをダウンロードします。

これまでの流れ: ファイルを監視する → イテレータ → ファイルをダウンロードする。

  1. 追加 Dropbox → ファイルをダウンロードする そしてそれをイテレータに接続します。
  2. 繋がり *Dropboxへの接続を選択してください。
  3. ファイルを選択する方法 *: 選ぶ ファイルパスをマッピングする つまり、イテレータからパスを取得できるということです。
  4. ファイルパス *: 地図 2. 経路表示 (または「監視ファイル」のパスフィールド)。これにより、各イテレーションで正しいファイルがダウンロードされることが保証されます。
Dropbox ファイルのダウンロード: ファイルパスをマッピングします。ファイルパスをマッピングします。2. パスの表示

サイクルあたりの出力: データ (ファイルの内容) ファイル名、 ファイルサイズ配列アグリゲーターはこれを収集します データ 各サイクルごとに。


ステップ3:イテレータ(フロー制御)​

イテレータは、ウォッチファイルから配列を取得し、各項目ごとにその下のルートを一度実行します。

これまでの流れ: ファイル監視 → イテレータ → [ファイルのダウンロードはアイテムごとに実行されます]。

  1. 追加 流量制御 → イテレータ そしてそれを「ファイルの監視」に接続します。
  2. 配列: 有効にする 地図 そして、ウォッチファイルから配列を選択します。次のようなフィールドをマッピングできます。 5. ファイル名 そして 5. ファイルサイズ (またはWatch Filesモジュールからの同等の)情報を提供することで、イテレータは反復処理の対象を認識できます。イテレータは、現在のアイテムのフィールド(パスの表示、ファイル名など)を、そのルート内のモジュールに公開します。
イテレータフロー制御:マップが有効になっている配列、5.ファイル名と5.ファイルサイズが選択されています

行動: Watch Filesが5つのファイルを返した場合、イテレータはルートを5回実行します。各実行において、Download a Fileは当該サイクルのファイルのパスを受け取り、ファイルをダウンロードします。


ステップ4:アレイアグリゲーター(フロー制御)​

配列アグリゲーターは、各イテレータサイクルの出力を収集し、マージモジュール用の単一の配列を構築します。

これまでの流れ: ファイル監視 → イテレータ → ファイルのダウンロード → 配列アグリゲーター。

  1. 追加 流量制御 → 配列アグリゲーター そして、イテレータルートの後にそれを接続します(すべてのサイクルにわたって集約されます)。
  2. ソースモジュール *:選択 Dropbox - ウォッチファイル [2] (または、Watch Files モジュール)。これは、アグリゲーターがどのシナリオ実行に属するかを定義します。
  3. 標的構造:選択 PDF4me - 複数のPDFを結合 [4...] (または、マージモジュール)。これにより、マージモジュールがデータを利用できるように、集約されたデータが構造化されます。
  4. ファイル → ファイル:選択 Dropbox - ファイルをダウンロードする アグリゲーターは、 ファイルの内容(データ) メタデータだけでなく、各ダウンロードから取得する。
配列アグリゲーター: ソースモジュール Dropbox ウォッチファイル、ターゲット構造 PDF4me 複数の PDF を結合、ファイル > ファイル: Dropbox ファイルをダウンロード

出力: 単一の配列 (例: 3. 配列[])ダウンロードしたすべてのPDFデータを含み、PDF4me Mergeが想定する形式になっています。


ステップ5:PDF4me:複数のPDFを結合する​

このモジュールは集約された配列を受け取り、すべてのPDFを1つに結合します。

これまでの流れ: … → 配列アグリゲーター → 複数の PDF を結合します。

  1. 追加 PDF4me → 複数のPDFを結合する (マージと分割の下)でそれを配列アグリゲーターに接続します。
  2. 繋がり *PDF4meへの接続を選択してください。
  3. ファイル: 有効にする 地図 そして選択する 3. 配列[] (配列アグリゲーターからの出力)。これにより、収集されたファイルデータがマージ処理に渡されます。
  4. 出力ファイル名: 結合された PDF の名前を入力します (例: merged_document.pdf)
  5. 保護されたPDFをスキップする: 選ぶ はい パスワードで保護された PDF をスキップするには、 いいえ それらを取り入れてみる。
PDF4me 複数の PDF を結合: ファイルは 3 にマッピングされます。Array[]、出力ファイル名、保護された PDF をスキップします

出力: 名前 そして 文書日付 (結合されたPDFバッファ)。 文書日付 アップロードモジュールへ。


ステップ6:Dropbox:ファイルをアップロードする​

結合されたPDFファイルを出力フォルダに保存してください。

これまでの流れ: … → 複数の PDF を結合 → ファイルをアップロードします。

  1. 追加 Dropbox → ファイルをアップロードする そして、それをマージモジュールに接続します。
  2. 繋がり *Dropboxへの接続を選択してください。
  3. フォルダ *: 宛先パスを入力します (例: /pdf4meoutput)
  4. ファイル *:選択 PDF4me - 複数のPDFを結合する つまり、ファイルの内容はマージ出力から取得されるということです。
Dropbox ファイルのアップロード: フォルダー /pdf4meoutput、PDF4me からのファイル 複数の PDF を結合

概要:このフローにおけるイテレータとアグリゲーター​

モジュール役割
イテレータウォッチファイル配列を個々の項目に分割します。ファイルごとに「ファイルのダウンロード」を1回実行します。
配列アグリゲーター各「ファイルをダウンロード」の出力を収集し、マージのために1つの配列にまとめます。
結果マージが受信する [file1_data, file2_data, …] そして、1つの結合されたPDFファイルを生成します。

イテレータがなければ、各ファイルを個別にダウンロードすることはできません。配列アグリゲーターがなければ、マージは必要な結合配列を受け取ることができません。これら2つが連携することで、PDF4meにとって「多数のファイルメタデータ項目」が「1つのファイルコンテンツ配列」に変換されます。


次のステップ​

  1. シナリオを実行する監視対象ファイルフォルダにPDFファイルをいくつか追加し、シナリオを実行してください。結合されたファイルは出力フォルダに表示されます。
  2. マージの順序ファイルは配列に表示される順序(通常はWatch Filesによって返される順序)でマージされます。
  3. ドキュメントパラメータと出力の詳細については、以下を参照してください。 複数のPDFを結合する:。