---
title: WMS Android
description: Android WMS je mobilni terminal Gath WMS sustava — Android aplikacija (trenutna verzija 0.7.9) za ručne skladišne terminale s ugrađenim barkod skenerom. Skladištar na uređaju izvršava WMS naloge (ulaz, izlaz, inventura, premještaj), provjerava stanja i održava barkodove, a nadglednik može…
url: "https://dokumentacija.ep.hr/docs/wms-android/"
updated: "2026-07-28"
category: Specifična podešenja
tags:
  - Gath
  - wms
---

# WMS Android

Android WMS je mobilni terminal Gath WMS sustava — Android aplikacija (trenutna verzija 0.7.9) za ručne skladišne terminale s ugrađenim barkod skenerom. Skladištar na uređaju izvršava WMS naloge (ulaz, izlaz, inventura, premještaj), provjerava stanja i održava barkodove, a nadglednik može dodjeljivati naloge uređajima kroz mobilnu Centralu.

Aplikacija je pandan desktop alatu WMS Remote HandHeld (opisan u općim uputama „WMS — sustav upravljanja skladištem”) — radi nad istim WMS nalozima i istom bazom, ali preko EPAndroid REST servisa (konzolni servis iz GATH SERVISI/console-services, projekt EPAndroid).

Tok podataka: Android WMS aplikacija (ručni terminal) komunicira HTTPS/JSON pozivima s EPAndroid servisom (token, WMS nalozi, šifrarnici, upisi), koji dalje čita/piše u Gath bazu (WmsNalogH/B/HH, WmsKartica...).

Skeniranje: aplikacija NE koristi kameru. Namijenjena je terminalima čiji hardverski skener radi kao tipkovnica (keyboard-wedge) i na kraju barkoda šalje Enter. Skenirani tekst ulazi u polje Scan; gumb Scan služi kao ručna potvrda istog unosa.

### 1. Kako uređaj i korisnik dobivaju pristup

| Pojam | Objašnjenje |
| --- | --- |
| Device ID | Prvih 8 znakova Android ID-a uređaja — prikazan u Postavkama (Device ID: ...). To je HandHeld šifra uređaja prema serveru; po njoj server zna koje naloge i module uređaj smije vidjeti. |
| Servisni račun | Username/Password u Postavkama — račun za spajanje na EPAndroid servis (dobiva token). Nije korisnik-skladištar. |
| Korisnik (skladištar) | Prijavljuje se na početnom ekranu svojom lozinkom. Provjera ide protiv lokalno sinkroniziranog šifrarnika korisnika programa — zato je nakon promjena korisnika u Gathu potrebna sinkronizacija (§2, korak 4). Šifra prijavljenog korisnika upisuje se uz svako knjiženje. |
| Moduli po uređaju | Server (postavke mobilnog uređaja u Gathu — šifrarnik HandHeld uređaja → Postavke mobitela) određuje koji su moduli vidljivi na uređaju: Ulaz, Izlaz, Inventura, Premještaj, Shipping, Info, Barcode, Centrala. Aplikacija ih dohvaća pri svakoj prijavi. |

### 2. Prvo postavljanje uređaja (administrator)

1. Instalirajte aplikaciju i pokrenite je.
2. Prijavite se s admin / admin — poseban servisni način rada u kojem su vidljive samo Postavke (sve WMS stavke izbornika su skrivene).
3. U Postavke → Postavke spajanja na servis upišite: Server (IP adresa EPAndroid servisa), Port, Skladište (šifra WMS jedinice), Username i Password (servisni račun). Pritisnite Testiraj vezu — očekujte poruku „Konekcija na server je uspješna.” (veza je HTTPS; samopotpisani certifikat je prihvaćen). Ako nešto nedostaje, javlja se „Nisu uneseni svi parametri. Unesite i pokušajte ponovno.”.
4. Napravite sve tri sinkronizacije (svaka ima svoj gumb i prikazuje vrijeme zadnje sinkronizacije): sinkronizaciju šifrarnika pozicija (potreban za prepoznavanje barkodova pozicija 92...), sinkronizaciju korisnika programa (potreban za prijavu skladištara!) i sinkronizaciju šifrarnika artikala (potreban za inventuru i brže prepoznavanje; dohvat ide stranično pa kod velikih šifrarnika potraje). Nakon svake sinkronizacije javlja se koliko je zapisa učitano (npr. „Učitano je N pozicija.”).
5. Po potrebi uključite Koristi šaržu (praćenje šarže/LOT-a pri skeniranju). Kad je isključeno, skeniranje šarže javlja poruku „Na uređaju je isključeno skeniranje šarže.”, a stavke istog artikla spajaju se u jedan red.
6. Spremite postavke (kvačica u traci) — „Postavke spremljene. Potrebna je ponovna prijava.” — aplikacija se vraća na prijavu.

Sinkronizacije povremeno ponovite (novi korisnici, nove pozicije, novi artikli). Poruka „Skenirana pozicija ne postoji u lokalnom šifrarniku pozicija.” znak je da treba sinkronizirati pozicije.

### 3. Prijava skladištara

Na početnom ekranu upišite Korisničko ime i Lozinku (kvačica Ostanite prijavljeni pamti podatke za sljedeće pokretanje) i pritisnite Prijava. Lozinka se provjerava lokalno u sinkroniziranom šifrarniku korisnika, a zatim se sa servera dohvaća token.

Najčešće poruke:

- „Nije postavljena IP adresa servera u postavkama.” — uređaj još nije postavljen (§2);
- „Nije moguće spajanje na bazu. Provjerite postavke spajanja.” — nedostaje servisni Username/Password;
- „Krivo korisničko ime ili lozinka.” — korisnik ne postoji lokalno — provjerite lozinku ili sinkronizirajte korisnike;
- „Greška tijekom učitavanja parametara.” — server nije dostupan ili uređaj nema podešene module; otvaraju se Postavke.

Nakon prijave otvara se prvi omogućeni modul; zaglavlje izbornika prikazuje verziju aplikacije i prijavljenog korisnika (Korisnik: ...).

### 4. Navigacija i zajednički elementi

Izbornik se otvara povlačenjem s lijevog ruba ili hamburger ikonom. Svaki modul ima svoju boju radi brzog snalaženja:

| Modul | Boja | Namjena |
| --- | --- | --- |
| Ulaz | zelena | zaprimanje robe (ULZ nalozi) |
| Izlaz | žuta | komisioniranje (IZL nalozi) |
| Inventura | svijetloplava | popis stanja (INV nalozi) |
| Premještaj | roza | premještaj između pozicija (PRM nalozi) |
| Shipping | ljubičasta | rezervirano — modul još nije u funkciji |
| Info | narančasta | upiti (artikl/pozicija/barkod) |
| Barcode | crvenkasta | dopuna barkodova i pivot pozicija artikala |
| Centrala | — | dodjela naloga uređajima (nadglednik) |

Zajednički elementi radnih modula:

- padajući izbornik naloga (prikaz broj (izvor)) — samo nalozi dodijeljeni ovom uređaju; bez naloga: poruka „Nema aktivnih naloga”;
- polje Scan + gumb Scan — svako skeniranje/unos, Enter potvrđuje;
- panel detalja odabrane stavke — polja koja još treba skenirati su plava, potvrđena postaju crna; greške se ispisuju crveno;
- lista stavki (Pozicija/Artikal | Količina) — odabrana stavka je narančasto uokvirena;
- gumbi Prihvati (upis na server) i Poništi (odustajanje od unosa u tijeku);
- ikone u traci: osvježi (ponovno učitava naloge) i ? (pomoć — Lista prefiksa).

#### Prefiksi barkodova

Aplikacija polja prepoznaje po dvoznamenkastom prefiksu (popis je dostupan i u aplikaciji pod ? — Lista prefiksa):

| Prefiks | Značenje |
| --- | --- |
| 01 | Šifra artikla |
| 02 | Barkod |
| 10 | Šarža |
| 15 | Rok trajanja |
| 30 | Količina u paketima |
| 31 | Količina u paletama |
| 37 | Količina (decimalna) |
| 70 | Serijski broj |
| 92 | Pozicija |

Dodatno: broj do 2 znamenke upisan u Scan polje = izravna količina (npr. 5); barkod bez prefiksa tretira se kao barkod artikla. Kod prefiksa količine (30 / 31 / 37) vrijednost mora imati najviše 7 znamenki — inače se cijeli unos tretira kao barkod. Artikli sa serijskim brojevima označeni su s „(S)” — serijski brojevi skeniraju se prefiksom 70.

#### Uvjeti za Prihvati

Prije upisa aplikacija provjerava (redom):

1. prijavljen korisnik → inače „Korisnik nije prijavljen. Pokušajte se prijaviti ponovno.”;
2. skeniran artikl → „Barkod artikla nije skeniran. Nije moguć upis.”;
3. skenirana pozicija → „Pozicija nije skenirana. Nije moguć upis.”;
4. količina veća od 0 → „Količina nije skenirana. Nije moguć upis.”;
5. skeniran rok trajanja (ako ga stavka ima) → „Rok trajanja nije skeniran. Nije moguć upis.”.

Tek kad je sve zadovoljeno, stavka se šalje na server. Uspješan upis: poruka „Uspješno upisano”; greška servera: „Neuspješan upis. Greška: ...”.

### 5. Ulaz (zaprimanje)

1. Odaberite ulazni nalog u padajućem izborniku.
2. Skenirajte artikl — stavka se označava, panel pokazuje što još nedostaje (plava polja).
3. Skenirajte redom (prema stavci): šaržu (10), rok trajanja (15), serijske brojeve (70), količinu (broj, 30 paketi, 31 palete, 37 decimalno).
4. Skenirajte poziciju (92...) na koju robu odlažete.
5. Prihvati — panel Izdvojiti: pokazuje preostalu količinu; kad je sve zaprimljeno, nalog nestaje s popisa.

### 6. Izlaz (komisioniranje)

Redoslijed je pozicija-prvo:

1. Odaberite izlazni nalog — u zaglavlju se prikazuju partner i grad.
2. Skenirajte poziciju — aplikacija skače na prvu stavku te pozicije. Pozicije nema na dokumentu → crvena poruka „Dokument ne sadrži skeniranu poziciju”.
3. Skenirajte artikl (mora biti na toj poziciji dokumenta), zatim količinu/šaržu/rok/serijske po potrebi. Prekoračenje količine blokira poruka „Količina ne smije ići u minus.”.
4. Prihvati upisuje izuzimanje; Izdvojiti: pokazuje ostatak.

### 7. Inventura (popis)

1. Odaberite inventurni nalog. Lista prikazuje zadnje skenirano na vrhu; nepopisane stavke pokazuju knjižnu količinu i prigušene su.
2. Skenirajte poziciju koju popisujete (može i naknadno — pozicija skenirana uz odabranu stavku preznačuje njenu poziciju).
3. Skenirajte artikl — dodaje se kao popisna stavka (mora postojati u lokalnom šifrarniku artikala — inače „Skenirani artikal ne postoji u lokalnom šifrarniku pozicija.”, pa sinkronizirajte artikle).
4. Skenirajte količinu — u inventuri količina prepisuje brojku (ponovno skeniranje ispravlja, ne zbraja). Panel prikazuje Izdvojeno: (popisano).
5. Prihvati za svaku stavku. Razlike prema knjižnom stanju obračunava server/Gath.

### 8. Premještaj

Dva načina rada:

- Postojeći nalog premještaja — odaberite PRM nalog i radite kao u Izlazu (pozicija → artikl → količina → nova pozicija → Prihvati).
- Novi premještaj s uređaja — gumb Novi (ili automatski kad nema aktivnih PRM naloga): skenirajte izvornu poziciju (aplikacija dohvaća sve artikle s nje — poruka „Artikala na poziciji: N”; prazna pozicija: „Nema artikala na ovoj poziciji.”), skenirajte artikl s pozicije i količinu koju premještate, skenirajte odredišnu poziciju (92...), Prihvati — server kreira novi nalog premještaja i vraća poruku „Novi nalog: PRM-N”.

### 9. Info (upiti)

Skenirajte bilo koji artikl, barkod ili poziciju: panel prikazuje osnovne podatke, a lista (Pozicija/Artikal | Količina/Raspol.) stanja po pozicijama s raspoloživim količinama. Bez rezultata: „Nema podataka uz traženi barkod.”.

Modul je samo za pregled — ništa se ne knjiži.

### 10. Barcode (dopuna barkodova i pivot pozicija)

1. Skenirajte/upišite šifru ili barkod artikla — prikazuju se šifra, naziv i barkod te lista pivot pozicija artikla (Pivot pozicija | Kapacitet | Prioritet).
2. Ikonom dodaj barkod otvara se dijalog „Unos novog barkoda” — skenirajte novi barkod i potvrdite s Unos (barkod ne smije već postojati).
3. Ikonom dodaj poziciju otvara se „Unos nove pivotne pozicije” — skenirajte poziciju (92...; mora postojati u lokalnom šifrarniku, inače „Nepoznata pozicija, ažurirajte šifrarnik pozicija i skenirajte ponovno.”).

Uspjeh: „Uspješno uneseno” i podaci artikla se osvježavaju.

### 11. Centrala (nadglednik)

Mobilna verzija WMS centrale — pregled svih otvorenih naloga skladišta i dodjela uređajima.

Lista naloga (Tip | Doc. | Izvor | Nalog): slobodni nalozi su obojani po tipu (ulaz zeleno, izlaz žuto, premještaj roza, inventura plavo) i sortirani na vrh; nalozi već dodijeljeni nekom uređaju su tamnozeleni. Bez naloga: „Nema aktivnih naloga”.

Dodir naloga otvara detalje: podaci naloga (partner, grad, datum), Dodijeljeni uređaji i Artikli na nalogu.

Dodjela: ikona za dodjelu → „Dodijeli nalog uređaju:” → dodirnite uređaj s popisa — poruka „Nalog dodjeljen uređaju.” (nema uređaja: „Nema aktivnih uređaja.”).

Odjava uređaja: dodirnite dodijeljeni uređaj → potvrda „Želite li odjaviti uređaj ... s naloga?” → Odjava — poruka „Uređaj odjavljen s naloga.”.

### 12. Sistem

- Postavke — vidi §2 (spajanje, sinkronizacije, Koristi šaržu).
- Ažuriranje aplikacije — provjerava dostupnost nove verzije i nudi preuzimanje i instalaciju („Dostupna je nova verzija aplikacije ... Želite li ažurirati?”; nema novije: „Nema nove verzije aplikacije.”); provjera se radi i automatski pri ulasku u aplikaciju. Potrebna je dozvola instalacije iz nepoznatih izvora na uređaju.
- Odjava korisnika — povratak na ekran prijave (uz potvrdu „Jeste li sigurni?”).
- Kraj rada — zatvaranje aplikacije (uz potvrdu „Želite li izaći iz aplikacije?”; isto radi tipka Natrag).

### 13. Najčešće poruke i rješenja

| Poruka | Uzrok / rješenje |
| --- | --- |
| Nije postavljena IP adresa servera u postavkama. | Uređaj nije konfiguriran — admin postavljanje (§2). |
| Nije moguće spajanje na bazu. Provjerite postavke spajanja. | Nedostaje servisni Username/Password ili je server nedostupan. |
| Krivo korisničko ime ili lozinka. | Provjerite lozinku; ako je korisnik nov, sinkronizirajte korisnike u Postavkama. |
| Greška tijekom učitavanja parametara. | Server nedostupan ili uređaj nema definirane module — provjerite vezu i postavke uređaja u Gathu. |
| Nema aktivnih naloga | Ovom uređaju nije dodijeljen nijedan nalog tog tipa — dodijelite ga u Centrali ili u Gathu. |
| Skenirana pozicija ne postoji u lokalnom šifrarniku pozicija. | Sinkronizirajte šifrarnik pozicija. |
| Skenirani artikal ne postoji u lokalnom šifrarniku pozicija. | (Inventura/skeniranje) Sinkronizirajte šifrarnik artikala. |
| Dokument ne sadrži skenirani artikal / skeniranu poziciju | Skenirano nije na odabranom nalogu — provjerite nalog/stavku. |
| Količina ne smije ići u minus. | Pokušaj upisa veće količine od preostale na stavci. |
| Na uređaju je isključeno skeniranje šarže. | Uključite Koristi šaržu u Postavkama (ako se šarže prate). |
| Trenutna stavka nema šaržu. | Stavka naloga ne traži šaržu — nastavite bez skeniranja šarže. |
| Krivi upisani rok trajanja. | Skenirani rok (15) ne odgovara stavci — provjerite rok. |
| Upisana vrijednost nije broj. | Kod skeniranja količine očekuje se broj. |
| Rok trajanja nije skeniran. Nije moguć upis. (i sl.) | Nedostaje obavezno polje — dovršite skeniranje pa Prihvati. |
| Nema podataka uz traženi barkod. | (Info/Barcode) Barkod/šifra ne postoji ili nema stanja. |
| Nepoznata pozicija, ažurirajte šifrarnik pozicija i skenirajte ponovno. | (Barcode) Sinkronizirajte pozicije pa ponovite unos. |
| Nema aktivnih uređaja. / Nije moguće dodijeliti nalog uređaju. | (Centrala) Nema slobodnih uređaja ili je dodjela odbijena na serveru. |
| Verzija servisa se ne podudara sa verzijom aplikacije. | Ažurirajte aplikaciju i/ili EPAndroid servis na usklađene verzije. |
| Konekcija na server nije uspješna. | Provjerite IP/port, mrežu i da EPAndroid servis radi. |

### 14. Napomene o verzijama

- 0.7.0–0.7.3 — dodana mobilna Centrala (dodjela i odjava uređaja s naloga); stariji EPAndroid servisi ne podržavaju Centralu.
- 0.7.5 — postavka Koristi šaržu; Info radi i po šifri artikla.
- 0.7.8 — ispravno decimalne količine (prefiks 37).
- 0.7.9 — boje vrsta naloga u Centrali.

### 15. Za administratore — tehnički sažetak

Aplikacija: native Android (Java), paket com.example.wms, minSdk 21; lokalna baza na uređaju je Room (SQLite). Arhitektura je MVVM (Fragment → ViewModel → Repository).

Server: konzolni servis EPAndroid (GATH SERVISI/console-services, EPAndroid.dpr + WebModuleAndroid.pas + DoProcedureAndroid.pas); radi nad istim tablicama kao desktop WMS (WmsNalogH/B/HH__, WmsKartica_..., WMSSerijskiBrojevi_...).

Protokol: HTTPS na https://: (samopotpisani certifikat prihvaćen), svi pozivi POST + JSON; token iz /gettoken (klijent androidwms) putuje u tijelu svakog zahtjeva.

Endpointi: /gettoken, /wmsmobilesetup, /wmsgetwarrantheader, /wmsgetwarrantbody, /wmssetscandata (knjiženje), /wmsgetpositions, /getkorisniciprograma, /getarticleforinv, /wmsgetarticleforposition, /wmsgetinfo, /wmsgetarticlebycodeorbarcode, /wmssetbarcodeorposition, /wmsgetopendocs, /wmsgetscaners, /wmssetscanerfordoc.

Lokalna baza na uređaju (Room): šifrarnik pozicija, korisnici programa, artikli — osvježavaju se isključivo ručnim sinkronizacijama iz Postavki.

Ažuriranje: novi APK preuzima se s https://ep.hr/update/app-debug-wms.apk; provjera verzije radi se pri ulasku i ručno (Sistem → Ažuriranje aplikacije).

Ograničenja aktualne verzije: nema kamere ni zvučnih signala; modul Shipping je prazan (rezerviran); nema SSCC/paleta ni komisionih kutija (za to služi desktop Remote HandHeld); redoslijed stavki izlaza dolazi sa servera (bez lokalnog komisionog puta).
