PDF4me Modello Word
Cosa tratta questa guida
Questa guida ti illustra come generare una singola fattura PDF In n8n utilizzando il pacchetto template.docx E data.json pacchetto di esempio. Il modello Word utilizza PDF4me <<[fieldName]>> unisci i tag (sintassi LINQ Reporting Engine). Carichi il .docx come dati binari, incolla o carica la corrispondenza JSON/XML/CSVe ricevere un prodotto finito PDF per ogni esecuzione.
Prima di iniziare
template.docx è un layout di fattura. I valori dinamici utilizzano <<[InvNr]>>, <<[nomeazienda1]>>, <<[nomeprodotto]>>e tag simili. I nomi dei campi fanno distinzione tra maiuscole e minuscole e devono corrispondere esattamente alle chiavi dei dati.data.json (consigliato), test.xml, O test.csv. Tutti e tre hanno gli stessi valori di fattura. Scegli il Tipo di dati del documento nel nodo per corrispondere al formato del file fornito.Pacchetto di file di esempio
Scarica tutti e quattro i file qui sotto. Sono progettati per funzionare insieme: un modello più tre formati di dati equivalenti.
<<[campo]>> tagCosa contengono i file di esempio?
Layout del modello (template.docx)
Il modello di esempio è una pagina singola fattura con etichette fisse e campi di unione dinamici:
| Sezione Documenti | Etichetta statica (fissa nel modello) | Tag di unione (compilato dai dati) |
|---|---|---|
| Intestazione | FATTURA | (statico) |
| Metadati della fattura | Fattura # | <<[InvNr]>> |
| Metadati della fattura | Importo della fattura | <<[invAmt]>> |
| Metadati della fattura | Data della fattura | <<[invDate]>> |
| Metadati della fattura | DOPO # | <<[invPO]>> |
| Metadati della fattura | Periodo di fatturazione | <<[from]>> A <<[to]>> |
| Fatturato a | FATTURATO A | <<[companyName1]>>, <<[companyName2]>>, <<[addressline1]>>, <<[addressline2]>>, <<[country]>> |
| Riga degli articoli esterni | Descrizione / Prezzo / IVA % / IMPORTO (USD) | <<[productName]>>, <<[price]>>, <<[vat]>>, <<[amount]>> |
:::suggerimento Sintassi del tag di unione
I modelli Word di PDF4me utilizzano <<[fieldName]>> (doppie parentesi angolari con parentesi quadre). Questo è diverso da HTML sintassi dei baffi ({{fieldName}}). Vedi il Guida alla sintassi dei modelli Word cicli for, condizioni e stringhe di formato.
:::
Mappatura dei campi su tutti i file di dati
Ogni valore dinamico nel modello corrisponde a una chiave in data.json, UN XML elemento in test.xml, o un CSV colonna in test.csv:
| Template tag | JSON key (data.json) | XML element (test.xml) | Sample value |
|---|---|---|---|
<<[companyName1]>> | companyName1 | CompanyName1 | Muster AG |
<<[companyName2]>> | companyName2 | CompanyName2 | Hans Muster |
<<[addressline1]>> | addressline1 | AddressLine1 | example street |
<<[addressline2]>> | addressline2 | AddressLine2 | 8000 Zürich |
<<[country]>> | country | Country | Switzerland |
<<[productName]>> | productName | ProductName | PDF4me |
<<[price]>> | price | Price | 1000 |
<<[vat]>> | vat | VAT | 8.00 |
<<[amount]>> | amount | Amount | 1000 |
<<[InvNr]>> | InvNr | InvoiceNumber | 202311InV |
<<[invAmt]>> | invAmt | InvoiceAmount | 1000 |
<<[invDate]>> | invDate | InvoiceDate | 2023-11-24 |
<<[invPO]>> | invPO | PurchaseOrder | 1234567 |
<<[from]>> | from | FromDate | 2023-10-24 |
<<[to]>> | to | ToDate | 2023-10-24 |
Panoramica del flusso di lavoro
Il modo più veloce per testare il pacchetto di campioni in n8n:
Manual Trigger → Read Binary File (template.docx) → PDF4me Generate Document (Single) → (optional) Write Binary File
| Fare un passo | n8n nodo | Scopo |
|---|---|---|
| 1 | Grilletto manuale | Avvia il flusso di lavoro su richiesta |
| 2 | Leggere file binario | Carichi template.docx in proprietà binaria data |
| 3 | PDF4me → Genera documento (singolo) | Unisce modello + dati, produce un output PDF |
| 4 | Scrivi file binario (opzionale) | Salvataggi generated_document_output.pdf su disco |
/generate-document-single-full-word.png)
Configurazione di destinazione: modello Word da binario + JSON incollato Testo dei dati del documento + PDF produzione
Passaggio 1: Scarica e posiziona i file di esempio
- Scaricamento
template.docxEdata.jsondal Pacchetto di file di esempio Sopra. - Salva entrambi i file da qualche parte n8n possono leggerli, ad esempio
C:\pdf4me-samples\su un'istanza self-hosted oppure caricali su Google Drive/Dropbox se preferisci i trigger cloud in un secondo momento. - Download facoltativo
test.xmlOtest.csvse vuoi testare XML O CSV tipi di dati invece di JSON.
Passaggio 2: creare il n8n Flusso di lavoro
- In n8n, creare un nuovo flusso di lavoro.
- Aggiungi un Grilletto manuale nodo (o qualsiasi trigger si preferisca per la produzione).
- Aggiungi un Leggere file binario nodo dopo il trigger.
- Aggiungere PDF4me → Genera documento (singolo) dopo aver letto il file binario.
- Collega i nodi in sequenza.
Passaggio 3: Carica il modello di Word (Read Binary File)
Configurare il Leggere file binario nodo:
| Campo | Valore |
|---|---|
| Percorso del file | Percorso completo del file scaricato template.docx |
| Nome della proprietà | data (predefinito; questo diventa la proprietà binaria PDF4me letture del nodo) |
Esegui questo nodo una volta e conferma che l'elemento di output mostra un campo binario denominato data con nome file template.docx.
Passaggio 4: Configurare PDF4me Genera documento (singolo)
Apri il PDF4me nodo e imposta questi campi. I valori seguenti corrispondono esattamente al pacchetto di esempio.
Impostazioni principali
| Campo | Valore | Note |
|---|---|---|
| Credenziali per connettersi con | Tuo PDF4me credenziale | Ottenere API chiave |
| Risorsa | Generate | |
| Generare operazioni | Genera documento (singolo) | |
| Tipo di file modello | Modello Word PDF4me | Partite .docx con <<[field]>> tag |
| Tipo di output | Utilizzo Word se hai bisogno di un file unito modificabile .docx Invece |
Input del modello (da Leggi file binario)
| Campo | Valore |
|---|---|
| Tipo di input del file modello | Dati binari |
| Proprietà binaria del modello | data |
| Tempo di creazione del file modello | template.docx |
Dati del documento (incolla JSON da data.json)
| Campo | Valore |
|---|---|
| Tipo di immissione dati del documento | Testo |
| Tipo di dati del documento | JSON |
| Testo dei dati del documento | Incolla l'intero contenuto di data.json (vedi il blocco sottostante) |
{
"companyName1": "Muster AG",
"companyName2": "Hans Muster",
"addressline1": "example street",
"addressline2": "8000 Zürich",
"country": "Switzerland",
"productName": "PDF4me",
"price": 1000,
"vat": 8.0,
"amount": 1000,
"InvNr": "202311InV",
"invAmt": 1000,
"invDate": "2023-11-24",
"invPO": "1234567",
"from": "2023-10-24",
"to": "2023-10-24"
}
Opzioni di output
| Campo | Valore |
|---|---|
| Mantenere PDF Modificabile | Off (default) |
| Nome dell'output dei dati binari | data (predefinito) |
Passaggio 5: Eseguire e verificare PDF
- Fare clic Eseguire il flusso di lavoro (o scappare dal PDF4me nodo).
- Apri il PDF4me output del nodo. Sotto Binario, apri il file nella proprietà
data(nome filegenerated_document_output.pdf). - Confermare che la fattura emessa mostri quanto segue:
- Fattura # →
202311InV - Fatturato a → Muster AG / Hans Muster / example street / 8000 Zurigo / Svizzera
- Voce di riga → PDF4me, prezzo 1000, IVA 8,00, importo 1000
- Periodo di fatturazione →
2023-10-24A2023-10-24
- Fattura # →
Se un campo viene visualizzato vuoto, confronta il nome del tag in template.docx con il JSON chiave. Devono corrispondere esattamente (maiuscole e minuscole incluse: InvNr non invNr).
Passaggio 6: Salvare l'output (facoltativo)
Aggiungi un Scrivi file binario nodo dopo PDF4me:
| Campo | Valore |
|---|---|
| Nome del file | invoice-output.pdf (oppure usa un'espressione) |
| Nome della proprietà dati | data |
| Percorso di output | Cartella dove n8n dovrebbe scrivere il file |
Formati dati alternativi
Lo stesso template.docx funziona con tutti e tre i file di dati nel pacchetto di esempio. Solo il Tipo di dati del documento e variazione del carico utile.
Opzione A: JSON file come binario (data.json)
- Aggiungi un secondo Leggere file binario nodo per
data.json. - Utilizzare un Unire nodo per combinare il binario del modello e il binario dei dati in un unico elemento (oppure eseguire il caricamento dei dati in un ramo separato).
- In PDF4me: Tipo di immissione dati del documento = Dati binari, Tipo di dati del documento = JSON, Proprietà binaria del documento =
data, Nome del file di dati del documento =data.json.
:::attenzione Conflitto di nomi di proprietà binarie
Quando il modello e i dati utilizzano entrambi la proprietà data sullo stesso elemento, si sovrascrivono a vicenda. Utilizzare nomi di proprietà separati (ad esempio template E dataFile) oppure unisci elementi da due nodi Leggi file binario.
:::
Opzione B: XML test.xml)
Impostato Tipo di dati del documento A XML e incolla il contenuto di test.xml:
<?xml version="1.0" encoding="UTF-8"?>
<Invoice>
<CompanyName1>Muster AG</CompanyName1>
<CompanyName2>Hans Muster</CompanyName2>
<AddressLine1>example street</AddressLine1>
<AddressLine2>8000 Zürich</AddressLine2>
<Country>Switzerland</Country>
<ProductName>PDF4me</ProductName>
<Price>1000</Price>
<VAT>8.00</VAT>
<Amount>1000</Amount>
<InvoiceNumber>202311InV</InvoiceNumber>
<InvoiceAmount>1000</InvoiceAmount>
<InvoiceDate>2023-11-24</InvoiceDate>
<PurchaseOrder>1234567</PurchaseOrder>
<FromDate>2023-10-24</FromDate>
<ToDate>2023-10-24</ToDate>
</Invoice>
Opzione C: CSV test.csv)
Impostato Tipo di dati del documento A CSV e incolla il CSV corpo (riga di intestazione + una riga di dati):
companyName1,companyName2,addressline1,addressline2,country,productName,price,vat,amount,InvNr,invAmt,invDate,invPO,from,to
"Muster AG","Hans Muster","example street","8000 Zürich","Switzerland","PDF4me",1000,8.00,1000,"202311InV",1000,"2023-11-24","1234567","2023-10-24","2023-10-24"
CSV le intestazioni di colonna corrispondono a JSON chiavi direttamente, che corrispondono a <<[fieldName]>> tag nel modello.
Modelli di flusso di lavoro di produzione
Metodi comuni per fornire modelli e dati in produzioneOnce the sample test works, replace the Manual Trigger and Read Binary File nodes with these patterns.
- Il trigger di Google Drive/Dropbox/OneDrive si attiva alla creazione di un nuovo file.
- Scarica i recuperi dei nodi
template.docx(oppure utilizzare un percorso modello fisso). - Costruire JSON in un Codice O Impostato nodo da CRMCampi del foglio di calcolo.
- PDF4me unioni e output PDF alla posta elettronica o all'archiviazione.
- Il webhook riceve il payload dell'ordine/fattura.
- Modello caricato una volta da URL o archivio binario.
- Mappa il corpo del webhook a Testo dei dati del documento con un'espressione.
- Le chiavi devono ancora corrispondere
<<[fieldName]>>tag nel modello.
- Ospite
template.docxEdata.jsonin pubblico HTTPS URLs. - Impostato Tipo di input del file modello = URL, URL del file modello = collegamento al modello.
- Impostato Tipo di immissione dati del documento = URL, URL del file di dati del documento = collegamento dati.
- Non è necessario scaricare alcun nodo in anticipo.
Domande frequenti
Guide correlate
- Panoramica della generazione del documento (singolo).: tutti i parametri, i campi di output e i tipi di modello
- Sintassi del modello Word:
<<[field]>>tag, cicli, condizioni, formattazione - Genera PDF dal modello di Word in Make: stesso schema di campionamento in Make