Sie sind auf Seite 1von 12

UPUTSTVO ZA PROGRAMERE

- za prilagodbu softvera na TREMOL ureajima SADRAJ


1.
2.
3.
4.
5.
6.

UVODNE NAPOMENE .................................................................................................................. 2


OGRANIENJA .............................................................................................................................. 3
OPA PRAVILA ............................................................................................................................. 4
KREIRANJE DOKUMENATA ZA TREMOL FISKALNE UREAJE ....................................... 6
OPIS NAJEIH GREKI ......................................................................................................... 11
NAJEE POSTAVLJANA PITANJA ...................................................................................... 12

Napomena: Kd ili dio kda je oznaen kurzivom.

04/2011

1. UVODNE NAPOMENE
Ovo su napomene na koje svi programeri moraju obratiti panju prije poetka kreiranja xml fajlova.
Prije putanja u rad fiskalnog ureaja, vano je ispotovati sljedee stvari:
1.1 Priprema baza
a) Napraviti izvjetaj po artiklima sa nuliranjem i izvrit reset artikala iz fiskalnog ureaja sa sljedeim
sadrajem xml fajla:
<?xml version="1.0" encoding="utf-8" ?>
<TremolFpServer Command="DirectIO">
<DirectIO Command="1" Data="0" Object="K00000;F142HZ
</TremolFpServer>

;0;$"/>

b) Provjeriti putanju Items.txt fajla u OPOS Manager-u (za S i M modele je to Items_TremolECR.txt, za


T260F je Items_TremolFP.txt), isto tako provjeriti postojanje istog na zadatoj lokaciji. Ukoliko fajl ne
postoji, izvriti kreiranje istog sa nazivom koji je naveden u OPOS Manager-u, a ukoliko postoji, sav
sadraj fajla OBRISATI. To se radi kao preventiva u cilju ispravnog rada fiskalnog sustava, jer fiskalni
ureaj u taj fajl smjeta svoje podatke, i svaki put iste osvjeava ili dodaje nove, ukoliko su novi dodani u
fiskalni ureaj.
c) Ukoliko je ve postojao neki fiskalni ureaj u OPOS Manager-u koji se koristio prije toga, moete
kreirati novi fiskalni ureaj sa novom bazom za artikle i isto tako potujui napomene iz prve dvije stavke,
kreirati Items.txt i obrisati artikle iz fiskalnog ureaja.
1.2 Provjera postavki u OPOS Manager-u
U OPOS Manageru provjeriti licencni klju, svaki IBFU ima jedinstven klju (ukoliko klju nije doao na
omotu CD-a, isti moete zatraiti putem mail-a servis_fiskalizacija@kimtec.ba). Takoer, provjeriti
brzinu (treba postaviti na 115200 bps), kao i port koji koristi ureaj.
1.3 Definiranje postavki u FPServer-u
U FPServer-u treba navesti ulazni direktorij u koji e se smjetati xml fajlovi, direktorij u koji e se
smjetati xml fajlovi koji su uspjeno proli, kao i direktorij za fajlove koji iz nekog razloga nisu proli.
Takoer, treba izabrati i ureaj koji je ve definiran u OPOS Manageru.
Postavke FPServer-a se uvaju u fajlu
C:\Documents and Settings\<USER>\Application Data\Tremol\FP_Server.config gdje je USER korisnik
logiran na Windows. Ako FPServer gubi postavke, treba provjeriti postojanje navedenog fajla i po
potrebi ga kreirati na pomenutoj lokaciji.

2. OGRANIENJA
2.1 Nazivi artikala:
a) U nazivu artikla ne smiju biti sljedei znakovi: & , < , > , " , ', /
b) Makisimalna duina naziva artikala za Tremol S i M ureaje je 20 znakova.
c) Makisimalna duina naziva artikala za Tremol T260F je 32 znaka.
d) Znak na 20. poziciji u nazivu artikla u xml-u ne smije biti space (razmak).
2.2 Decimalna mjesta za koliinu:
a) Na Tremol M i S, koliina moe biti u formatu cijelog broja sa minimalno 5 brojeva, odnosno
decimalnog broja sa minimalno etiri broja i decimalnim zarezom. Ispravni primjeri su: 10.85, 123.6,
48952, 7.159, dakle ukupno 5 znakova ukljuujui i decimalni zarez, kako je i definirano Zakonom.
b) Na Tremol T260F koliina moe biti na maksimalno 3 decimale.
2.3 Decimalna mjesta za cijenu:
Cijene (parametar Price) moraju biti na maksimalno 2 decimale, kao i iznos plaanja (parametar Amount).
2.4 Duina stringova na klijentskom raunu:
IBK broj: 13 znakova
Ostali parametri klijenta (grad, adresa itd.): do 18 znakova
U sluaju da se IBK poalje sa manje ili vie od 13 znakova, FPServer e vratiti syntax error.
2.5 Maksimalni parametri na raunu
T260F
Maksimalna koliina po stavci

999999.990

Maksimalni iznos rauna


Maksimalna cijena po stavci
Maksimalni dnevni iznos
Maksimalni broj stavki po
raunu

9999999.99
999999.99
21474836.47

Tremol M i S
9.999
99.99
999.9
99999
9999999.99
999999.99
21474836.47

500

500

3. OPA PRAVILA
3.1 Stope poreza za poduzea koji nisu u sustavu PDV-a:
Za sve artikle upisiva se parametar VatInfo=1.
3.2 Stope poreza za poduzea koji su u sustavu PDV-a:
Za artikle koji se prodaju sa porezom upisiva se parametar VatInfo=2, a za artikle osloboene poreza
VatInfo=4
3.3 Izmjena porezne stope artikla :
Izmjena porezne stope za pojedine artikle se obino rade ukoliko se radi o raunima ka ino-partnerima
kojima se ne zaraunava porez.
Izmjena porezne stope za ve programirani artikal nije dozvoljena u zabranjenom periodu. Jedna od
najee koritenih metoda je definiranje drugog naziva artikla (dodati toku ili sl.) kako ne bi dolazilo do
konflikta s ve definiranom poreznom stopom.
Bitno je spomenuti da e ureaj, iako promjenimo poreznu stopu u xml-u, ispisati raun, ali sa
prvom programiranom poreznom stopom!
3.4 Reklamirani raun - Refund receipt
Kod reklamiranog rauna je vano napomenuti da se sav reklamirani promet vraa iz gotovinskog prometa
fiskalnog ureaja, stoga je bitno prije ispisa reklamiranog rauna koji nije plaen gotovinski, poslati fajl
CASH IN koja izgleda ovako:
<?xml version="1.0" encoding="utf-8" ?>
<TremolFpServer Command="CashIn">
<Cash Amount="35.00" />
</TremolFpServer>
i tek nakon toga kreirati reklamirani raun.
U protivnom, ukoliko se izvri reklamirani raun koji je plaen Virmanski, Kartica ili ek bez prethodnog
slanja fajla CASH IN moe doi do greke OPOS_EFPTR_BAD_ITEM_AMOUNT.
Ne moe se reklamirati artikal koji ne postoji u bazi.
Prvi raun unutar novog fiskalnog dana ne moe biti reklamirani, jer nema nikakve gotovine.
CASH IN fajl nije potrebno slati ukoliko ima dovoljno gotovinskog prometa unutar fiskalnog ureaja.
Uobiajeno je da se uvijek alje cash-in fajl u vrijednosti rauna koji se treba reklamirati, i to samo
ako se reklamira raun koji NIJE plaen gotovinski.
Jo jedna bitna stvar je da se u reklamiranim raunima izostavi parameter Amount, jer e doi do
dupliranja iznosa!
3.5 Programiranje i izmjena operatera u radu
Za programiranje operatera kroz xml koristimo samo jednom sljedei kod :
<?xml version="1.0" encoding="utf-8" ?>
<TremolFpServer Command="DirectIO">
<DirectIO Command="1" Data="0" Object="J1;Smjena1
</TremolFpServer>
gdje je:
J1 redni broj operatera (obavezan format, J + redni broj)

;00000" />

Smjena1 naziv operatera (ovaj string mora biti duine 20 znakova, tako da su prazna mjesta obavezna)
0000 lozinka operatera (mora biti 4 znaka)
Kod potrebe za mijenjanjem operatera u radu koristi se sljedei format kod kreiranja rauna:
Iza Command="Receipt" dodajemo Operator =J1;1234 gdje se J1 i lozinka mijenjaju u ovisnosti o
kojem se operateru radi.
Ukoliko se parametar Operator izostavi, a programiran je u ureaju, doi e do greke
OPOS_EFPTR_WRONG_STATE.

4. KREIRANJE DOKUMENATA ZA TREMOL FISKALNE UREAJE


Korijenski vor XML-a je TremolFpServer
Command definira tip radnji u datoteci. Razliiti tipovi radnji su ispod opisani, zajedno sa njihovim
obaveznim i opcionalnim atributima.
U jednoj datoteci mogue je imati samo jedan naredbeni atribut!!!
1. Definiranje PRODAJNIH, FAKTURNIH, POVRATNIH I POVRATNO-FAKTURNIH potvrda
2. Definiranje prodajnih faktura sa novim klijentom-komitentom
3. Ispis izvjetaja
4. Ispis kopije dokumenta
5. Definiranje NEFISKALNIH potvrda
6. Definiranje UPLATNIH i ISPLATNIH potvrda
7. Prikaz informacija na displeju za kupca spojenim na fiskalni ureaj
8. Preuzimanje EJ
9. Sinkronizacija baza podataka klijenta i artikala izmeu fiskalnog ureaja i raunala
4.1 Definiranje PRODAJNIH, FAKTURNIH, POVRATNIH I POVRATNO-FAKTURNIH
potvrda
Atributi korijenskog vora definiraju tip i parametre dokumenta.
Atributi za tip dokumenta su sljedei:
PRODAJA: Command="Receipt"
FAKTURA: Command="Receipt" ClientID="<client_code>"
POVRAT: Command="Refund" RefundReceipt="<broj dokumenta>"
POVRATNA FAKTURA: Command="Refund" RefundReceipt="<broj dokumenta>"
ClientID="<client_code>"
Opcionalni atributi:
DeviceName ukoliko je definiran dokument e se ispisivati na specificiranom OPOS ureaju
Description = "<tekst prikazan u stupcu log operation >" u Tremol FP Server suelju
Continue = "1" nastavlja ve otvorenu potvrdu; "2" ponitava otvorenu potvrdu
4.1.1 Definicija detalja potvrde
Svaka transakcija je zaseban <Item <transaction data> />
Code = "<ifra artikla> ili <barkod artikla>" ifra artikla iz interne baze podataka ureaja ili barkod
Opcionalni atributi:
Quantity = "<koliina>" Koliina artikla za liniju potvrde. Osnovna vrijednost je 1. Negativna
vrijednost za ponitenu transakciju
Discount = "<vrijednost>%"- Postotak popusta za liniju potvrde. Nakon vrijednosti je potreban znak "%".
Surcharge = "<vrijednost>%"- Postotak dodatka za liniju potvrde. Nakon vrijednosti je potreban znak
"%".
4.1.2 Odabir artikla po nazivu, dodaj novi po potrebi
Description = <Naziv artikla>. ifra artikla e biti pronaena unutar baze artikala. Ukoliko naziv ne
postoji, novi artikal e biti programiran na prvu slobodnu poziciju unutar baze artikala.
Price = <Cijena artikla> - nova cijena
VatInfo = <ifra porezne grupe> gdje je (1 = A, 2 = E, 3 = J, 4 = K, 5 = M)
UnitName = <Jedinica mjere> mogue su: g, kg, t, l, m, m2, m3; (Opcionalno)
Primjer:

<Item Description="Test novi artikal" Quantity="4" Price="2.95" VatInfo="2" Department="4"


UnitName="kg" />
U sluaju VatInfo, Department, i UnitName atributi e biti upotrebljeni za novi artikal
4.1.3 Definicija naina plaanja (opcionalno).
Ukoliko nije definirana, ukupan iznos za dokument e biti plaen u gotovini
Svaki nain plaanja je u formatu: < Payment <payment data> />
Type="<nain plaanja>" nain plaanja moe biti jedan od: "Gotovina", "ek", "Kartica",
"Virman"
Amount="<iznos>"
4.1.4 Opcionalne reklamne poruke nakon plaanja
<AdditionalLine Message="Linija sa proizvoljnim tekstom 1" />
<AdditionalLine Message=" Linija sa proizvoljnim tekstom 2" />
Primjer 1:
<TremolFpServer Command="Receipt" Description="*** DEMO RAUN ***">
<Item Code="1" Quantity="1.905" Discount="2.5%" />
<Item Code="2" Quantity="2.98" Surcharge="1%" />
<Payment Type="Virman" Amount="1" />
<Payment Type="Gotovina" Amount="100.95" />
<AdditionalLine Message="Linija sa proizvoljnim tekstom 1" />
<AdditionalLine Message="Linija sa proizvoljnim tekstom 2" />
</TremolFpServer>
Primjer 2:
<TremolFpServer Command="Receipt" Description="*** DEMO RAUN ***">
<Item Description="Test new item" Quantity="4" Price="2.95" VatInfo="1" Department="4"
UnitName="kg"/>
<Payment Type="Virman" Amount="1" />
<Payment Type="Gotovina" Amount="100.95" />
<AdditionalLine Message="Linija sa proizvoljnim tekstom 1" />
<AdditionalLine Message="Linija sa proizvoljnim tekstom 2" />
</TremolFpServer>

4.2 Definiranje prodajnih faktura sa novim klijentom-komitentom


CompanyID = <13 Brojeva za IDBroj Firme> - Ukoliko klijent sa ovim ID brojem ve postoji u bazi,
podaci o firmi (NazivFirme, adresa, itd.) e biti spremljene. U suprotnom e se dodati novi zapis unutar
baze podataka.
CompanyName = <Naziv Firme>
CompanyHQ = <Sjedite Firme >
CompanyAddress = <Adresa Firme>
CompanyCity = <Grad>
Primjer:
<TremolFpServer Command="Receipt" CompanyID="1234567890777" CompanyName="TEST Firma
d.o.o." CompanyHQ="HQ" CompanyAddress="Adresa 1" CompanyCity="Grad" Description="***
INVOICE RECEIPT ***">
<Item Description="Test novi artikal 2" Quantity="4" Price="2.95" VatInfo="1" Department="4"
UnitName="kg" />
</TremolFpServer>

4.3 Ispis izvjetaja


Command="Report"
Type="<tip izvjetaja>" Valjane vrijednosti za atribut Tip: DailyX, DailyZ, ItemX, ItemZ, DepartmentX,
DepartmentZ, OperatorX;N, OperatorZ;N, Date, Block
Ukoliko Type = "OperaterX;N" ili "OperatorZ;N" N je broj operatera
Ukoliko Type = "Date" potrebni su atributi Start="<datum>" End="<datum>" u formatu GGGG-MMDD
Ukoliko Type = "Block" potrebni su atributi Start="<broj poetnog bloka >" End="<broj zavrnog
bloka>"
Primjeri:
4.3.1 Dnevni X izvjetaj
<TremolFpServer Command="Report" Type="DnevniX" />
4.3.2 Izvjetaj o operateru bez zeroinga za operatera 0
<TremolFpServer Command="Report" Type="OperatorX;0" />
4.3.3 Izvjetaj prema datumu
<TremolFpServer Command="Report" Type="Date" Start="2010-09-01" End="2010-09-30" />
4.3.4 Izvjetaj prema blokovima
<TremolFpServer Command="Report" Type="Blok" Start="1" End="20" />

4.4 Ispis kopije dokumenta


Command="PrintDuplicate"
Type = "0" PRODAJNA potvrda, - "1" POVRATNA potvrda; "2" Dnevni izvjetaj; "4" -Presjek
Stanja; "5" -Periodino Izvjee
Document = "<broj dokumenta>"
Primjer:
<TremolFpServer Command="PrintDuplicate" Type="0" Document="1" />

4.5 Definiranje NEFISKALNIH potvrda


Command="NonFiscal"
Jedan ili vie vorova sa proizvoljnim tekstom:
<Print Data="Linija sa proizvoljnim tekstom 1" />
<Print Data="Linija sa proizvoljnim tekstom 2" />
Druga sintaksa:
<Print>Linija sa proizvoljnim tekstom 3</Print>
Primjer:
<TremolFpServer Command="NonFiscal"
<Print Data="Linija sa proizvoljnim tekstom 1" />
<Print Data="Linija sa proizvoljnim tekstom 2" />
<Print>Linija sa proizvoljnim tekstom 3</Print>

</TremolFpServer>
4.6 Definiranje UPLATNIH i ISPLATNIH potvrda
Command = "CashIn" or "CashOut"
<Cash Amount="<iznos>" />
Opcionalne poruke:
<AdditionalLine Message="Linija sa proizvoljnim tekstom 1" />
<AdditionalLine Message="Linija sa proizvoljnim tekstom 2" />
Primjer:
<TremolFpServer Command="CashIn"
<Cash Amount="99.99"/>
<AdditionalLine Message="Linija sa proizvoljnim tekstom 1" />
<AdditionalLine Message= Linija sa proizvoljnim tekstom 2" />
</TremolFpServer>
4.7 Prikaz informacija na displeju za kupca spojenim na fiskalni ureaj
Command = "LineDisplay "
Line1="Linija sa tekstom 1"
Line2="Linija sa tekstom 2"
Primjer:
<TremolFpServer Command="LineDisplay" Line1="Linija sa tekstom 1"Line2="Linija sa tekstom 2"/>
4.8 Preuzimanje EJ (elektronikog urnala)
Command = "ReadEJ"
Type = "0" Cijeli EJ; "1" Raspon podataka; "2" Raspon blokova
File = "<direktorij>"
Ukoliko je Type = "Date" potrebni su atributi Start="<datum>" End="<datum>" u formatu GGGGMM-DD
Ukoliko je Type = "Block" potrebni su atributi Start="<broj poetnog bloka>" End="<broj zavrnog
bloka>"
Primjeri:
4.8.1 Preuzimanje EJ prema datumu:
<TremolFpServer Command="ReadEJ" Type="1" Start="2010-09-01" End="2010-09-30"
File="c:\temp" />
4.8.2 Preuzimanje EJ prema blokovima
<TremolFpServer Command="ReadEJ " Type="2" Start="1" End="20" />
4.9 Sinkronizacija baza podataka klijenta i artikala izmeu fiskalnog ureaja i raunala
Atribut za tip sinkronizacije:
Command = "SyncClient" za bazu podataka klijenata ili "SyncItems" za bazu podataka artikala
Atributi:
Type = "1" Preuzimanje BP artikala sa ureaja na raunalo; "2" Auriranje BP sa raunala na ureaj
(dodavanje ili zamjena redaka); "3" Programiranje svih artikala sa raunala na ureaj.
File = "<mapa i naziv datoteke>" Naziv stavke datoteke baze podataka. Ovaj atribut se za Type="3"
ignorira. Osnovna datoteka je definirana u vrijednosti registra SyncClientDB/ SyncItemDB.
Primjeri:

4.9.1 Sinkronizacija baza podataka klijenata izmeu fiskalnog ureaja i raunala


<TremolFpServer Command="SyncClients" Type="1" File="c:\temp\clients.txt"
Description="Sinkronizacija klijentske BP " />
3.9.2 Sinkronizacija baza podataka artikala izmeu fiskalnog ureaja i raunala
<TremolFpServer Command="SyncItems" Type="1" File="c:\temp\fp_items.txt"
Description="Sinkronizacija BP artikala " />

10

5. OPIS NAJEIH GREKI


FPServer mi javlja greku "Greka: FP: OK; Command:
Syntax error.", u emu je problem?

Greka je u sintaksi xml datoteke, najei sluaj je


da IBK broj klijenta nije duine 13 znakova.
Nije unesen licencni klju u OPOS Manager-u
Izabran pogrean ureaj u FpServer-u

FPServer mi javlja greku OPOS_E_ILLEGAL, u emu je


problem?

Pogrena vrijednost parametra VatInfo u xml kodu


24-satna blokada - napraviti dnevni izvjetaj
Nesinkronizirane baze

FPServer mi javlja greku


"OPOS_EFPTR_WRONG_STATE", u emu je problem?

Najei razlog je da se alje xml bez parametara


operatera, a koji je u ureaju ve isprogramiran sa
nekom lozinkom. Ukljuiti parametar
Operator="J1;1234", gdje je J1 broj operatera, a 1234
njegova lozinka ILI ukinuti lozinku operateru
(ostaviti 0 ), a xml ne mijenjati.

FPServer mi javlja greku


"OPOS_EFPTR_MISSING_DEVICES", u emu je
problem?

Potrebno je prikljuiti kabl za displej

FPServer mi javlja greku "OPOS_E_TIMEOUT", u emu


je problem?

Treba deaktivirati ureaj u Comm Tool-u

Na Windows-u 7, prolaze svi rauni, osim onih sa procentom


postotka sa dvije decimale, javlja mi greku
"OPOS_EFPTR_BAD_AMOUNT"
Prilikom ispisa reklamiranog rauna, FPServer mi javlja
greku "OPOS_EFPTR_BAD_ITEM_AMOUNT"
Prilikom ispisa rauna sa popustima, neki popusti se ne
prikazuju na raunu.

Na parametru Discount koristiti zarez umjesto toke,


na ostalim parametrima toku (za ovo e izai
update)
Nema dovoljne gotovine u gotovinskom prometu da
bi se izvrila reklamacija, poslati komandu CashIn ili
saekati da gotovinski promet bude jednak ili vei
iznosu reklamiranog rauna.
U OPOS Manager-u postaviti DeferredPrint
parametar na 1

11

6. NAJEE POSTAVLJANA PITANJA


Tremol
ureaj

Pitanje

Odgovor
Postaviti parametre kase na "Fisk. tamp 1" (Mode, Mode,
Podeavanja, 33333, 1, 11, Total, Total)

Kasa se preko CommTool-a ne moe


spojiti sa raunalom ?

Provjeriti licencni klju


Postaviti kasu u mod Line (Mode, Mode, Podeavanja,
33333, 7) ili
Postaviti kasu u mod "Prodaja"

M, T260F
S, M,
T260F

Koje su dimenzije logo na Tremol


ureajima?
Iako sam podesio kodnu stranu u xml-u,
opet mi se ne ispisuju nai dijakritici?

Za Tremol M je 224 x 80 piksela, za Tremol T260F je 448


x 160 piksela, format datoteke je .bmp, crno/bijelo,
izmjena se radi kroz CommTool
Prilikom kreiranja samog xml fajla kroz softversku
aplikaciju, unaprijed navesti koju e kodnu stranu taj xml
koristiti, i istu tu koristiti kroz kod
Koristite maksimalnu duinu znakova za naziv u xml kodu
(Tremol M = 20 znakova, T260F = 32 znaka)

S, M,
T260F

Artikli mi se duplaju u bazi artikala, zbog


ega?

Nemojte koristiti prazno mjesto (space) na 20. mjestu u


nazivu.
Ukoliko se programski "odsjeca" sve iza 20-og ili 32znaka, napraviti programsku provjeru da se neki artikli ne
duplaju na toj duini.

S, M,
T260F

Prilikom slanja rauna na ureaj, isti


raun mi se neprestano ispisuje!

S, M,
T260F

Svako jutro mi se gube postavke na


FpServeru, i iznova ih moram kucati!

S, M,
T260F

Kada ukljuim ureaj, ispie mi "GR. U


MEMORIJI"
Na displeju mi pie "Inicijalizacija SD...",
i nita se ne deava!

M
S, M,
T260F

Koja je razlika izmeu testnog ureaja i


testnog moda?

U postavkama FpServer-a, ulazni direktorij i direktorij


ukoliko je sve uredno izvreno ne smiju biti isti.
Iskljuite automatsku prijavu na Windows, i provjerite
postojanje datoteke C:\Documents and
Settings\<USER>\Application
Data\Tremol\FP_Server.config. U toj datoteci su postavke
FpServer-a
Potrebno je staviti jumper na konektore baterije i postaviti
vrijeme (sa servisnim jumperom)
Pritisnite Total za formatiranje SD kartice.
Testni ureaj je ureaj iji IBFU poinje sa ZK i
fiskaliziran je (samo u testne svrhe), dok je testni mod
stanje ureaja sa podeenim datumom/vremenom prije
same fiskalizacije

12

Das könnte Ihnen auch gefallen