Sablon de oferta personalizat

Am implementat opțiunea de a construi și emite oferte pe baza unor șabloane predefinite de către tine astfel încât documentul final să aibă un design personalizat.

Primul pas pentru a emite o ofertă pe baza unui șablon personalizat este să construiești șablonul respectiv.

Vom exemplifica mai jos folosind un șablon pentru o ofertă personalizată. Rezultatul final va fi ca în documentul de mai jos:

Acesta este un exemplu simplu și în acest post vei învăța cum să îți construiești propriul șablon pe baza căruia să emiți oferte.

Pregătirea fișierului-șablon

Pentru a genera o ofertă pe baza unui șablon este nevoie să construiești fișierul-șablonul.

Acesta poate fi în unul din următoarele formate: xHTML, ODT, ODS, DOCX, XLSX și poate avea o mărime maximă de  10 MB.

Pentru oferta de mai sus am folosit următorul șablon: Offer (click pe denumire pentru a descărca fișierul).

Vei observa faptul că fișierul-șablon conține multe variabile. Acestea au rolul de a prelua datele din sistem și vor fi înlocuite cu valorile corespunzătoare.

Poți elimina sau adăuga coloane după cum ai nevoie.

Pentru a se adăuga pe ofertă toate articolele pe care le-ai selectat din sistem, este nevoie să adaugi în șablonul tău cele două rânduri din imaginea de mai sus (doar coloanele de care ai nevoie). Astfel, este nevoie ca la după denumirea câmpului de pe primul rând să incluzi „[i]

NumeCâmp[i]

Iar apoi, pe următorul rând vei scrie la finalul numelui câmpului „[i+1]„:

NumeCâmp[i+1] 

Aceste paranteze pătrate sunt obligatorii pentru toate coloanele pe care le vei include în șablonul tău pentru ca sistemul să preia corect toate articolele de pe ofertă.

Variabile pe care le poți folosi pentru ofertele tale

În exemplul de mai sus am folosit câteva variabile din sistem ca și coloane pentru ofertă: cod produs, produs (denumirea), descrierea, prețul net și totalul (prețul brut).

Pentru a utiliza variabilele de mai jos în cardul fișierului-șablon, este nevoie să creezi un text de forma:
{d.Offer.NumeVariabilă} pentru variabile legate de datele clientului, alte emitentului sau ofertei în general și {d.Other.Items.NumeVariabilă} pentru variabile legate de articole/servicii (în acest ultim caz se va folosi obligatoriu și [i] iar pe următorul rând [i+1] între „Items” și denumirea variabilei utilizate: de exemplu, d.Other.Items[i].Name).

Trebuie să știi că poți folosi ca și variabile în fișierul-șablon orice câmpuri din sistem iar pentru a te ajuta vom enumera mai jos aceste variabile:

Variabile pentru datele CLIENTULUI:

CustomerName => Numele clientului căruia i se emite oferta
CustomerCounty => Județul clientului
CustomerPostalCode => Codul poștal al clientului
CustomerCity => Orașul clientului
CustomerAddress => Adresa clientului
CustomerAccountNumber => Contul bancar al clientului
CustomerVatNumber => Numărul din Registrul Comerțului pentru client
CustomerEUVatNumber => Numărul european din Registrul Comerțului pentru client
CustomerRegistrationNumber => Codul Unic de Înregistrare (CUI) al clientului

Variabile pentru datele EMITENTULUI:

VendorName => Numele emitentului (al tău) 
VendorPostalCode => Codul poștal al emitentului 
VendorCity => Orașul emitentului 
VendorAddress => Adresa emitentului 
VendorIBAN => Contul bancar al emitentului 
VendorSWIFT => Codul SWIFT al emitentului 
VendorVatNumber => Numărul din Registrul Comerțului al emitentului 
VendorEUVatNumber => Numărul european din Registrul Comerțului al emitentului 
VendorRegistrationNumber => Codul Unic de Înregistrare al emitentului

Variabile pentru OFERTĂ:

Number => Seria și numărul ofertei (generate automat de către sistem)
Subject => Conținutul câmpului "Subiect" 
PaymentMethod => Metoda de plată 
Issued => Data emiterii 
CurrencyCode => Moneda 
ConversionRate => Rata de schimb valutar aplicată (dacă este cazul) 
AmountNet => Total (net) 
AmountVat => Total TVA 
Amount => Total (brut)

Variabile pentru ARTICOLE/SERVICII:

SKU => Codul articolului
EAN => Codul EAN
Name => Denumirea
Description => Descrierea 
PriceNet => Prețul net
VAT => Valoarea TVA
Quantity => Cantitatea
UnitName => Unitatea de măsură
Price => Prețul (net sau brut în funcție de setări)
SumNet => Total net (preț x cantitate)
SumVAT => Total TVA
Sum => Total
Product_CurrencyCode => Moneda