====== 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