Ajutor de redare
Păstrați logica pură în propriul fișier, astfel încât să fie ușor de testat unitar. Acest lucru nivelează o înregistrare în{{dot.path}} îi jefuiește și le înlocuiește.
Gestionarul
Gestionarul foloseșteCoreApiClient
pentru a citi și scrie date CRM. Încarcă șablonul, încarcă înregistrarea țintă, umple numărul
și creează un document.
loadRecordValues rulează o interogare diferită pentru o Persoană vs. o companie și aplatizează
rezultatul - vezi
load-record-values.ts.
Expuneți-l ca instrument și acțiune de flux de lucru
Un singurdefineLogicFunction poate purta mai multe declanşatoare. Aici, toolTriggerSettings
îl face apelabil de către agenții AI, iar workflowActionTriggerSettings îl transformă într-un pas
în constructorul fluxului de lucru vizual. Amândoi descriu datele lor cu ajutorul unei scheme JSON.
templateId și recordId —
vezi generate-document-input.schema.ts.
Acordă acces
Funcțiile logice funcționează ca rolul aplicației. Trebuie să citească șabloane și înregistrări și să creeze documente, așa că permiteți acest lucru însrc/roles/default-role.ts:
UPLOAD_FILE lasă funcţia să încarce PDF-ul generat în secţiunea următoare.
Vezi Roles pentru permisiunile cu bobul superior.
Atașează un fișier PDF real
Un câmp text redat este util, dar utilizatorii doresc un document adevărat. Hai să generăm un PDF şi să-l stocăm în înregistrare ca un fişier ce poate fi descărcat. În primul rând, daţi “document” obiectuluiFILES un câmp pentru a ţine fișierul PDF. Aplicațiile încarcă
în câmpurile lor proprii de fișiere, astfel încât acest câmp este ruta încărcării:
generate-document-pdf.ts.
Analizează Markdown-ul în tokeni cu marked.lexer, apoi îl aranjează cu
pdf-lib: titluri reale, pasaje bold/italic, liste cu buline și liste numerotate,
blocuri de citat și linii — o redare A4 finisată, pe mai multe pagini, a șablonului
în sine, mai degrabă decât un zid de text.

fonturile încorporate ale pdf-lib-ului folosesc codificarea WinAnsi, astfel încât accentele europene occidentale dau
din cutie; Hărțile ajutătoare nu pot codifica ghilimele, ghilimele și scadea cu caracterele
. Redarea scripturilor non-latine (chineză, arabă, chirilică) ar însemna
încorporarea unui font Unicode.
uploadFile trasee bytes
către câmpul de fișiere deținute de aplicație; id returnat este ceea ce salvați:

uploadFile țintește doar câmpurile fișierelor app-owned (astfel încât încărcările necesită întotdeauna o aplicație
care deține câmpul, plus steagul de rol UPLOAD_FILE). Acesta este motivul pentru care PDF
aterizează pe câmpul fișier al înregistrării - același model
aplicația pentru înregistrare
folosit pentru înregistrări.Următorul: Rute HTTP →
Serviți funcția de HTTP și redați documentele ca pagini web.