4D Write Pro: Esportazione in PDF con allegati!

Tradotto automaticamente da Deepl

Come già sapete, da 4D V20 R3, 4D Write Pro può esportare nei formati PDF/A2 e PDF/A3 (BLOG). Oltre alla firma, la differenza principale tra questi due formati è che il formato PDF/A3 può includere allegati. La buona notizia è che grazie a una nuova opzione di esportazione in 4D Write Pro, con 4D V20 R4 è possibile avere allegati durante l’esportazione!

Archiviazione alla potenza di 10

La firma PDF/A significa e garantisce che un documento di questo tipo sarà leggibile per decenni, come spiegato in questo BLOG.
Il formato PDF/A3 consente di inserire all’interno del PDF/A3 allegati di qualsiasi tipo (Word, Excel, PDF, Photoshop, ecc.).
Il vantaggio è che è possibile memorizzare tutte le informazioni necessarie su un argomento specifico in un unico documento.

Che il vostro settore di interesse sia legale, tecnico, medico, contabile, di sicurezza, edile, dei lavori pubblici o altro, se avete bisogno di archiviare documenti contenenti allegati, il PDF/A3 è il formato che fa per voi!

uno o più allegati

Lo standard PDF/A3 consente di inserire il maggior numero possibile di allegati. Per questo motivo la nuova opzione di esportazione, .files, è di tipo collezione.

Ogni elemento di questa raccolta è un oggetto con alcune semplici proprietà, alcune delle quali sono opzionali.

La prima e più evidente è la proprietà .file di tipo 4D.File indica il file fisico da includere nel PDF. Tuttavia, può essere sostituita dalla proprietà .data di tipo testo o BLOB. Queste due proprietà sono esclusive: se la proprietà .data è presente, la proprietà .file viene ignorata.

La proprietà .description è facoltativa, così come .mimeType, che in genere può essere dedotta dal contenuto di .file o .data.

Infine, .name è il nome del file che verrà estratto dal PDF. Questo è obbligatorio solo se è stata utilizzata la proprietà .data e non la proprietà .file. Altrimenti, per impostazione predefinita, avrà lo stesso nome del file originale definito in .file!

un semplice esempio di codice

Il codice seguente mostra come inserire due file fisici più un semplice testo inviato come dati.

$options:={}  // empty object
$options[wk files]:=[]  // empty collection

// 1st file (based on .file)
$fileInfo:={}
$fileInfo.description:="RTF formated text"
$fileInfo.file:=File(Folder(fk data folder).path+"Alpha.rtf")
$options[wk files].push($fileInfo)

// 2nd file  (based on .file)
$fileInfo:={}
$fileInfo.description:="Png picture"
$fileInfo.file:=File(Folder(fk data folder).path+"Bravo.png")
$options[wk files].push($fileInfo)

// 3rd file (based on .data)
$fileInfo:={}
$fileInfo.name:="Charlie.txt"  // will be used for extraction
$fileInfo.description:="raw text sent as data"
$fileInfo.data:="This is some raw text to be included as enclosure in the PDF and to be extracted as 'Charlie.txt'"
$options[wk files].push($fileInfo)

WP EXPORT DOCUMENT($document; "exportWithEnclosures.pdf"; wk pdf; $options)

Nota: quando si utilizza l’attributo wk files, la versione del PDF generato sarà automaticamente PDF/A3e l’opzione wk pdfa version, se presente, verrà ignorata.

Una volta eseguito, il documento PDF avrà il seguente aspetto (utilizzando Adobe Acrobat Reader™)

Conclusione (e da continuare!)

Allegare documenti all’interno di un singolo file PDF/A3 significa poter sfruttare appieno le possibilità offerte da questo standard. Ma non è tutto! Come vedrete presto, consentirà anche di generare fatture elettroniche inserendo un documento XML come primo file tra gli allegati! Restate sintonizzati!

Roland Lannuzel
- Product Owner ed esperto di 4D - Dopo aver studiato elettronica, Roland è passato all'IT industriale come sviluppatore e consulente, realizzando soluzioni per i clienti con una varietà di database e tecnologie. Alla fine degli anni '80 si è innamorato di 4D e lo ha utilizzato per scrivere applicazioni aziendali che includono sistemi di contabilità, fatturazione e posta elettronica. Entrato a far parte dell'azienda nel 1997, Roland ha dato il suo prezioso contributo progettando specifiche, strumenti di test e demo, oltre a formare e parlare alla comunità 4D in occasione di numerose conferenze. Continua a plasmare attivamente il futuro di 4D definendo nuove funzionalità e strumenti di sviluppo di database.