Oluşturma yardımcısı
Saf mantığı kendi dosyasında tutun ki birim testi yapmak kolay olsun. Bu, bir kaydı{{dot.path}} belirteçlerine düzleştirir ve bunların yerine değerlerini koyar.
İşleyici
Handler, CRM verilerini okumak ve yazmak için oluşturulmuşCoreApiClient kullanır. Şablonu yükler, hedef kaydı yükler, gövdeyi doldurur ve bir document oluşturur.
loadRecordValues, Kişi ile Şirket için farklı bir sorgu çalıştırır ve sonucu düzleştirir — bkz.
load-record-values.ts.
Bunu bir araç ve iş akışı eylemi olarak kullanıma açın
Tek birdefineLogicFunction birden çok tetikleyici barındırabilir. Burada, toolTriggerSettings onu AI aracılarının çağırabileceği hâle getirir ve workflowActionTriggerSettings onu görsel iş akışı oluşturucusundaki bir adıma dönüştürür. Her ikisi de girdilerini bir JSON şemasıyla tanımlar.
templateId ve recordId değerlerini tanımlayan basit bir JSON şemasıdır — bkz. generate-document-input.schema.ts.
Erişim verin
Mantık işlevleri uygulamanın rolü olarak çalışır. Şablonları ve kayıtları okuması ve belgeler oluşturması gerektiğinden,src/roles/default-role.ts içinde buna izin verin:
UPLOAD_FILE, bir sonraki bölümde oluşturulan PDF’yi işlevin yüklemesine izin verir.
Daha ayrıntılı izinler için bkz. Roles.
Gerçek bir PDF dosyası ekleyin
Oluşturulmuş bir metin alanı kullanışlıdır, ancak kullanıcılar gerçek bir belge ister. Bir PDF oluşturalım ve onu kayıt üzerinde indirilebilir bir dosya olarak saklayalım. Önce, PDF’yi tutmak içindocument nesnesine bir FILES alanı verin. Uygulamalar kendi dosya alanlarına yükleme yapar, dolayısıyla yüklemenin yönlendirildiği yer bu alandır:
generate-document-pdf.ts.
Bu, Markdown’ı marked.lexer ile belirteçlere ayrıştırır, ardından bunları pdf-lib ile yerleştirir: gerçek başlıklar, kalın/italik metinler, madde ve numaralı listeler, alıntılar ve çizgiler — şablonun kendisinin duvar gibi bir metin yerine cilalı, çok sayfalı A4 işlenmesi.

pdf-lib’in yerleşik yazı tipleri WinAnsi kodlaması kullanır, bu nedenle Batı Avrupa aksanları kutudan çıktığı gibi oluşturulur; yardımcı, akıllı tırnak işaretlerini ve tireleri eşler ve kodlayamadığı karakterleri atar. Latin olmayan yazı sistemlerini (Çince, Arapça, Kiril) işlemek, bir Unicode yazı tipi gömmeyi gerektirir.
uploadFile, baytları uygulamanıza ait dosya alanına yönlendirir; döndürülen id, kaydettiğiniz değerdir:

uploadFile yalnızca uygulamaya ait dosya alanlarını hedefler (bu nedenle yüklemeler her zaman alanın sahibi olan bir uygulama ve ayrıca UPLOAD_FILE rol bayrağı gerektirir). Bu nedenle PDF, kaydın kendi file alanına düşer — call-recorder app uygulamasının kayıtlar için kullandığı desenle aynıdır.Sırada: HTTP rotaları →
Fonksiyonu HTTP üzerinden sunun ve belgeleri web sayfaları olarak oluşturun.