RTF Template
Az RTF template engine az eVIR rendszerben arra szolgál, hogy sablonok alapján generáljon olyan dokumentumokat, amelyeket a felhasználó tovább tud szerkeszteni, viszont a benne szereplő változókat a rendszer a generálás folyamán behelyettesíti az adatbázisokban szereplő adatokkal.
Koncepció
Tetszőleges szövegszerkesztővel elő kell állítani az RTF formátumú dokumentumot
A dokumentumban el kell helyezni a behelyettesítendő változókat (ld. lentebb)
A dokumentumot fel kell tölteni az eVIR-be a Törzsadatok→RTF Template menüpontban
Változók
kulcsszavak szintaxisa:
A változók komponenseit egy „_” aláhúzásjel választja el egymástól
Ez megfelel a perlben egy '→' dereferencia operátornak
A komponensek között található „_ _” (2 darab aláhúzásjel közvetlenül egymás után) megfeleltethető a hash kulcsban található aláhúzásjelnek, nem szeparátor az adatszerkezetben
Az „x” kulcs ( „_x_” formában ) tömb referencia indexét helyettesítő formula, amely olyan helyen használható, ahol tömböt dolgozunk fel. (ez jelenleg táblázatokban van)
RTF használata
Content-type: application/rtf
A példa RTF tartalmaz változó-kulcsszavakat, amelyeket a rendszer majd behelyettesíti adatokkal.
A kulcsszavak az *evir* prefixszel kezdődnek.
A kulcsszavak előre meghatározottak, és csak fejlesztéssel lehet változtatni, bővíteni a lehetőségeket
A (hagyományos) változók szükségtelen halmaza kihagyható, sorrendjük tetszőlegesen felcserélhető, egyben formázhatóak. (betűméret, fonttípus, stb)
Egy konkrét változó kulcsszava igény szerint akár többször is felhasználható, amennyiben ez szükségesnek
Táblázatok használata:
Az RTF template-ben ha olyan sorral találkozik az engine, ahol „_x_” jelet tartalmazó mezőre történik hivatkozás.
csak ugyanazon adatszerkezeten belüli mezők lehetnek egy táblázat soron belül (például evir_tetel_x_…)
akkor ott _x_ indexen végigiterálva többsoros táblázatot készít a template-ből az adatok alapján.
A táblázatok is tartalmazhatnak formázásokat, vagy soronként akár más struktúrájú változós mezőket.
Nincs olyan ismert megkötés, ami a következő engedményeket szándékosan tiltaná
egy táblázat cellában több változó is lehet
statikus szövegek is lehetnek,
ezek kombinálhatóak tetszés szerint
Minta szerződéshez
Szerződés
(RTF minta eVIR rendszerhez)
Partner név: evir_fej_nev
Partner címe: evir_fej_teljes__cim
Szerződésszám: evir_fej_szlaszam
Szerződés dátuma: evir_fej_datum
Számlázási időszak: evir_fej_szlaidoszak
Szerződés típus: evir_fej_szerztip
Számlázás módja: evir_fej_szlamod
Érvényesség kezdete: evir_fej_kezdet
Érvényesség vége: evir_fej_vege
Állapot: evir_fej_status
Következő teljesítés kezdete: evir_fej_next__telj__kezdet
Utolsó teljesítés vége: evir_fej_utolso
Netto össz.: evir_fej_ossz__netto evir_fej_penznem
ÁFA össz.: evir_fej_ossz__afa evir_fej_penznem
Brutto össz.: evir_fej_ossz__brutto evir_fej_penznem
Megjegyzés: evir_fej_megj
Leírás: evir_fej_leiras
(táblázat formátumban a tételek)
Tételek:
Cikkszám Megnevezés Netto egységár Menny Nettó Össz. áfa Brutto össz Megjegyzés
evir_tetel_x_cikkszam evir_tetel_x_megnevezes evir_tetel_x_netto evir_tetel_x_menny evir_tetel_x_ossz__netto evir_tetel_x_ossz__afa evir_tetel_x_tetel__ossz__brutto evir_tetel_x_megj
Tarifák:
Cikkszám Megnevezés Netto egységár Menny Nettó Össz. áfa Brutto össz. Megjegyzés
evir_tarifa_x_cikkszam evir_tarifa_x_megnevezes evir_tarifa_x_netto evir_tarifa_x_menny evir_tarifa_x_ossz__netto evir_tarifa_x_ossz__afa evir_tarifa_x_tetel__ossz__brutto evir_tarifa_x_megj