Menggabungkan Beberapa PDF dari Sebuah Folder di Make: Iterator, Array Aggregator, dan PDF4me Langkah demi Langkah

Anda memiliki beberapa file PDF dalam folder Dropbox dan ingin menggabungkannya menjadi satu file PDF secara otomatis. Masalahnya: PDF4me Menggabungkan Beberapa PDF mengharapkan sebuah susunan data file, tetapi Dropbox Tonton File mengembalikan daftar metadata file, dan Unduh File mengembalikan satu file dalam satu waktu. Untuk menjembatani kesenjangan itu, Anda perlu Iterator Dan Penggabung ArrayIterator memproses setiap file satu per satu, dan Array Aggregator mengumpulkan hasil tersebut ke dalam array yang diharapkan oleh Merge.
Panduan ini akan membahas seluruh skenario Make, dengan fokus khusus pada... Cara kerja Iterator dan Array Aggregator dan cara menyambungkannya ke konektor PDF4me Make.
Apa yang Anda Butuhkan
- A Membuat akun, Buat akun Make gratis jika Anda tidak memilikinya.
- Integrasi PDF4me: Menambahkan PDF4me di Make dan terhubung dengan Anda Kunci API. Melihat Hubungkan PDF4me untuk Membuat jika diperlukan.
- DropboxHubungkan Dropbox ke Make. Kami menggunakan folder sumber (misalnya,
/pdf4metest/Merge/mergetest/) dan folder keluaran (misalnya/pdf4meoutput/).
Gambaran Alur Secara Singkat
Skenario tersebut memiliki 6 modul dengan urutan ini:
- Dropbox: Pantau FileMemantau sebuah folder untuk file baru atau yang diperbarui. Menghasilkan output berupa susunan metadata file (jalur, nama, ukuran).
- Dropbox: Unduh FileMengunduh setiap file. Menjalankan di dalam rute Iterator, sekali per berkas.
- IteratorMengambil array dari Watch Files dan memprosesnya. setiap item satu per satuSemuanya terhubung setelah dijalankan sekali per file.
- Penggabung ArrayMengumpulkan output dari setiap siklus Iterator (data file yang diunduh) dan menggabungkannya menjadi satu. susunan tunggal Diformat untuk penggabungan PDF4me.
- PDF4me: Menggabungkan Beberapa PDFMenerima array yang telah diagregasi, menggabungkan semua PDF menjadi satu, dan menghasilkan file gabungan.
- Dropbox: Unggah FileMenyimpan PDF yang telah digabungkan ke folder output Anda.

Memahami Iterator dan Array Aggregator
Sebelum melakukan konfigurasi, ada baiknya untuk memahami Mengapa Kedua modul ini dibutuhkan.
Mengapa menggunakan Iterator?
Dropbox, Pantau File mengembalikan sebuah susunan objek file (masing-masing dengan jalur, nama, ukuran, dll.). PDF4me, Menggabungkan Beberapa PDF membutuhkan sebuah susunan isi file (data biner), bukan metadata. Untuk mendapatkan kontennya, Anda harus unduh setiap file. Tetapi Unduh File mengerjakan satu file per proses: ini membutuhkan jalur tunggal.
Yang Iterator memecahkan masalah ini: ia mengambil array dari Watch Files dan membaginya menjadi item-item individualUntuk setiap item, ia menjalankan modul-modul dalam rutenya. sekali. Jadi:
- Output dari Watch Files:
[file1, file2, file3] - Iterator menjalankan rute 3 kali: sekali untuk file1, sekali untuk file2, sekali untuk file3
- Mengunduh File berjalan 3 kali, setiap kali menggunakan jalur file saat ini dari Iterator.
Mengapa menggunakan Array Aggregator?
Setelah Iterator dijalankan, Anda akan mendapatkan beberapa eksekusi terpisah Dari pengunduhan file, satu output per file. PDF4me Merge mengharapkan satu array berisi semua data file. Itu Penggabung Array melakukan kebalikan dari Iterator: itu mengumpulkan keluaran dari setiap siklus Iterator dan menggabungkan mengubahnya menjadi satu array tunggal, yang terstruktur sedemikian rupa sehingga modul Merge dapat menggunakannya.
- Iterator menghasilkan: siklus 1 → data file1, siklus 2 → data file2, siklus 3 → data file3
- Array Aggregator mengumpulkan:
[file1 data, file2 data, file3 data] - Fungsi Merge menerima array tersebut dan menghasilkan satu PDF yang telah digabungkan.
Langkah 1: Dropbox: Pantau File (Pemicu)
Modul ini memantau sebuah folder dan menghasilkan array metadata file. Ketika file baru atau yang diperbarui muncul, modul ini akan memicu skenario.
Alur sejauh ini: Tonton Berkas.
- Menambahkan Dropbox → Tonton File (atau Daftar File (jika Anda lebih suka jajak pendapat).
- Koneksi *Pilih koneksi Dropbox Anda.
- Metode Pencarian Folder: Memilih Pilih dari Daftar (atau metode pilihan Anda).
- Jalur FolderMasukkan folder yang berisi file PDF yang akan digabungkan (misalnya,
/pdf4metest/Merge/mergetest/). - Perhatikan juga subfolder: Mengatur TIDAK jika Anda hanya menginginkan file di folder tersebut; Ya untuk menyertakan subfolder.
- Membatasi *Tetapkan jumlah maksimum file per proses (misalnya, 10Modul ini dapat menangani hingga 4.000 item.

Keluaran: Sebuah larik objek berkas. Setiap item memiliki Tampilan jalur, Nama File, Ukuran File, dan bidang serupa. Iterator akan menggunakan array ini selanjutnya.
Langkah 2: Dropbox: Unduh File (Di dalam Rute Iterator)
Tambahkan modul ini setelah Iterator (akan berada di dalam rute Iterator). Ia mengunduh satu file per siklus Iterator menggunakan jalur item saat ini.
Alur sejauh ini: Pantau Berkas → Iterator → Unduh Berkas.
- Menambahkan Dropbox → Unduh File dan hubungkan ke Iterator.
- Koneksi *Pilih koneksi Dropbox Anda.
- Cara memilih file *: Memilih Memetakan jalur file sehingga Anda dapat menggunakan jalur dari Iterator.
- Jalur File *: Peta 2. Tampilan jalur (atau kolom jalur dari Watch Files). Ini memastikan setiap iterasi mengunduh file yang benar.

Output per siklus: Data (isi berkas), Nama File, Ukuran FileArray Aggregator akan mengumpulkan ini. Data untuk setiap siklus.
Langkah 3: Iterator (Kontrol Alur)
Iterator mengambil array dari Watch Files dan menjalankan rute di bawahnya sekali untuk setiap item.
Alur sejauh ini: Pantau Berkas → Iterator → [Unduh Berkas, berjalan per item].
- Menambahkan Kontrol Aliran → Iterator dan hubungkan ke Watch Files.
- Susunan: Memungkinkan Peta dan pilih larik dari File Pantauan. Anda dapat memetakan bidang seperti 5. Nama File Dan 5. Ukuran File (atau yang setara dari modul Watch Files Anda) sehingga Iterator tahu apa yang harus diiterasi. Iterator mengekspos bidang item saat ini (misalnya, tampilan Path, Nama File) ke modul dalam rutenya.

Perilaku: Jika Watch Files mengembalikan 5 file, Iterator menjalankan rutenya sebanyak 5 kali. Setiap kali dijalankan, Download a File menerima jalur untuk file siklus tersebut dan mengunduhnya.
Langkah 4: Agregator Array (Kontrol Aliran)
Array Aggregator mengumpulkan output dari setiap siklus Iterator dan membangun satu array tunggal untuk modul Merge.
Alur sejauh ini: Pantau Berkas → Iterator → Unduh Berkas → Agregator Array.
- Menambahkan Kontrol Aliran → Pengumpul array dan hubungkan setelah rute Iterator (ini menggabungkan semua siklus).
- Modul Sumber *Pilih Dropbox - Pantau File [2] (atau modul Watch Files Anda). Ini menentukan skenario eksekusi mana yang dimiliki agregator tersebut.
- Struktur targetPilih PDF4me - Menggabungkan Beberapa PDF [4...] (atau modul Merge Anda). Ini menyusun data yang telah diagregasi sehingga Merge dapat menggunakannya.
- Berkas → MengajukanPilih Dropbox - Unduh File jadi agregator mengumpulkan isi berkas (Data) dari setiap unduhan, bukan hanya metadata.

Keluaran: Sebuah array tunggal (misalnya, 3. Array[]) yang berisi semua data PDF yang diunduh, dalam format yang diharapkan oleh PDF4me Merge.
Langkah 5: PDF4me: Gabungkan Beberapa PDF
Modul ini menerima array yang telah diagregasi dan menggabungkan semua PDF menjadi satu.
Alur sejauh ini: … → Penggabung Array → Gabungkan Beberapa PDF.
- Menambahkan PDF4me → Menggabungkan Beberapa PDF (di bawah Gabungkan & Pisahkan) dan hubungkan ke Agregator Array.
- Koneksi *Pilih koneksi PDF4me Anda.
- Berkas: Memungkinkan Peta dan pilih 3. Array[] (output dari Array Aggregator). Ini meneruskan data file yang terkumpul ke aksi penggabungan.
- Nama File OutputMasukkan nama untuk PDF yang digabungkan (misalnya,
merged_document.pdf). - Lewati PDF yang Dilindungi: Memilih Ya untuk melewati PDF yang dilindungi kata sandi, TIDAK untuk mencoba melibatkan mereka.
![PDF4me Menggabungkan Beberapa PDF: File dipetakan ke 3. Array[], Nama File Output, Lewati PDF yang Dilindungi](/assets/images/blog/merge-files-make/merge-files-make-5-merge-pdfs.png)
Keluaran: Nama Dan Tanggal Dokumen (buffer PDF yang digabungkan). Lulus Tanggal Dokumen ke modul Unggah.
Langkah 6: Dropbox: Unggah File
Simpan PDF yang telah digabungkan ke folder output Anda.
Alur sejauh ini: … → Gabungkan Beberapa PDF → Unggah File.
- Menambahkan Dropbox → Unggah File dan hubungkan ke modul Merge.
- Koneksi *Pilih koneksi Dropbox Anda.
- Folder *Masukkan jalur tujuan (misalnya,
/pdf4meoutput). - Berkas *Pilih PDF4me - Menggabungkan Beberapa PDF Jadi, isi file berasal dari output penggabungan.

Ringkasan: Iterator dan Aggregator dalam Alur Ini
| Modul | Peran |
|---|---|
| Iterator | Memisahkan array File yang Dipantau menjadi item individual. Menjalankan Unduh File satu kali untuk setiap file. |
| Penggabung Array | Mengumpulkan setiap output Unduh File dan menggabungkannya ke dalam satu array untuk digabungkan. |
| Hasil | Penggabungan menerima [file1_data, file2_data, …] dan menghasilkan satu PDF gabungan. |
Tanpa Iterator, Anda tidak dapat mengunduh setiap file secara terpisah. Tanpa Array Aggregator, Merge tidak akan menerima array gabungan yang dibutuhkannya. Bersama-sama, keduanya mengubah "banyak item metadata file" menjadi "satu array konten file" untuk PDF4me.
Langkah Selanjutnya
- Jalankan skenarioTambahkan beberapa file PDF ke folder File yang Dipantau dan jalankan skenarionya. File yang telah digabungkan akan muncul di folder output.
- Urutan penggabunganBerkas digabungkan sesuai urutan kemunculannya dalam larik (biasanya urutan yang dikembalikan oleh Watch Files).
- DokumenUntuk detail parameter dan output, lihat Menggabungkan Beberapa PDF: Buat.