Vai al contenuto principale

Panoramica

La nostra app ha bisogno di due oggetti personalizzati: modelli di documenti (cosa scrivere) e documenti (il risultato generato). Le definiamo. Scaffold each entity file with the CLI — genera un UUID valido e la cartella giusta per te:
Di seguito mostriamo i file finiti.
Ogni costante *_UNIVERSAL_IDENTIFIER vive in src/constants/universal-identifiers.ts ed è importata dove utilizzata. Gli snippet seguenti omettono tali importazioni per brevità: mantienile nei tuoi file.

L’oggetto del modello

Un modello ha un name, un body con {{placeholders}}, e un target che dice se è scritto per una persona o un’azienda. Il body è un campo RICH_TEXT, quindi Twenty gli dà un editor completo di testo ricco.
I valori dell’opzione SELECT devono essere in UPPER_CASE (PERSON, non person) e il valore defaultValue è racchiuso tra virgolette aggiuntive: `'PERSON'`. L’label è ciò che vedono gli utenti.

L’oggetto del documento

Il documento generato memorizza il content renderizzato e un status. Definisci allo stesso modo, con una selezione status di DRAFT / GENERATED. File completo: document.object.ts.

Collegarli con una relazione

Ogni documento deve riportare il modello da cui proveniva. Le relazioni sono bidirezionali — si definiscono entrambi i lati, ciascuno nel proprio file di campo.
L’altro lato (template-documents-relation.field.ts) è un campo RelationType.ONE_TO_MANY chiamato documents che punta il senso opposto. Vedi Relations per il modello completo.

Vedere in venti

Con twenty app dev in esecuzione, apri Impostazioni → Modello dati. Entrambi gli oggetti appariranno, etichettati con la tua app.
Impostazioni del modello di dati che mostrano i modelli di documenti e documenti

Entrambi gli oggetti personalizzati, di proprietà dell'app Generatore di documenti.

Crea un modello con cui eseguire i test: chiamalo Proposta commerciale, imposta Destinazione su Persona e incolla un corpo con alcuni segnaposto:
Un record modello di proposta di vendita con corpo segnaposto

Un record di modello. Il corpo mantiene i segnaposto finché non viene generato un documento.

Dopo questo passaggio: hai oggetti documentTemplate e document, collegati da una relazione e un modello da cui generare. Successivamente, la logica che lo riempie.
card-page-tutorial-documents
Avanti: generare documenti →
Scrivi la funzione logica che riempie il modello.