Predaj a popis jeho vnorených fragmentov
V otvorenom doklade sa fragment predaja delí na ďalšie menšie ragmenty, v ktorých sú tlačítka a zoznamy. Navzájom všetky fragmenty predaja spolupracujú a akcie v nich vyvolávajú reakcie v iných. Celý fragment predaja môže byť nahradzovaný v kontajeneri iným fragmentom, napríklad fragmentom Produkty, alebo fragmentom Doklady predaja. Toto ovplyvňujú akcie tlačidiel.
Poznámka: Reklamácia (Storno dokladu) celého dokladu je vysvetlená v NumPad a položkovitá v AddFunctions.
- Základné zobrazenie predaja a platby
- NumPad fragment
- Info fragment
- List fragment
- Universal fragment
- Inputs fragment
- Functions fragment
- AddFunctions fragment
- Input payments - platba dokladu
- Functions fragment - platba dokladu
- Účtenka - vratné obaly
Základné zobrazenie predaja a platby
Ak je v aplikácii aktuálne otvorený doklad predaja, potom tento obsahuje fragmenty, ktoré zabezpečujú jednotlivé funkcie. Na obrázkoch sú názvy fragmentov uvedené oranžovo. Popis podľa názvu je tu uvedený na ďalších stránkach.
NumPad fragment
Numerická klávesnica vykoná akciu podľa toho, či sa na tlačidlo klikne krátko, alebo dlhšie. Následujúci popis je pre dlhšie stlačenie:
Klávesy 8 a 5 - Pohyb po jednom riadku hore a dole. Aktuálna položka (produkt) sa zobrazuje v treťom riadku subfragmentu Informácie o doklade. Ak sa dosiahne okraj zoznamu, kurzor preskočí na jeho opačnú stranu.
![]()
Klávesy 7 a 4 - Inkrement a Dekrement množstva aktuálnej položky, teda zvyšovanie a znižovanie množstva po 1*. Ak sa pri - - má dosiahnúť množstvo menšie či rovno nule, tak sa akcia nevykoná a zobrazí sa upozornenie.
Klávesa 1 - Pripočíta k aktuálnemu množstvu vybranej položky množstvo nastavené v žltom tlačidle QTY. Po akcii sa tlačidlo QTY nevynuluje samo, kvôli predpokladu že aj iné položky sa zvýšia stejne. Je možné vynulovať či zmeniť QTY novým zadaním hodnoty.
Klávesa 9 - Je ekvivalent star/unstar, kedy sa aktuálna položka označí, čo je indikované jej modrým textom.
Klávesa 6 - Je ekvivalent stars/unstars. Označenie invertuje (otočí) stav všetkých položiek na stav označené, alebo neoznačené. Zmena závisí na stave prvej položky zoznamu.
Klávesa 0 - Výmaz všetkých označených položiek, bez potvrdenia.
Klávesa . - Zmena názvu položky (produktu). Pre špeciálne účely je možné zmeniť názov produktu. Táta funkcia nieje bežne potrebná.
Klávesa 3 - Prenos označených položiek do zásobníka a zo zásobníka. Prenáša sa celý riadok. Po prenose kláves 3 zmení farbu na červenú a v jej spodnom riadku popisu je množstvo položiek v zásobníku. Pre vykonanie úhrady položiek v zásobníku, je potrebné otvoriť nový doklad, teda následne dlhšie stlačiť žltú klávesu Doklady, stlačiť tlačidlo Predaj pre vytvorenie nového (prázdneho) dokladu a znova použiť dlhšie stlačenie klávesu 3 pre vybratie položiek zo zásobníka do nového dokladu, kedy sa objaví Snackbar s potvrdením akcie, na čo odpoveď sa očakáva ÁNO. Výber do zásobníka je možné kombinovať s klávesou 2.
Klávesa 2 - Prenos označených položiek do zásobníka. Prenáša sa zvolené množstvo aktuálnej položky. To sa navolí vo formulári aktivovanom touto klávesou 2. Formulár prenosu sa obsluje intuitívne jeho vlastnými klávesami + + a - - , alebo manuálnym zadaním. Akcia sa prejaví zmenou v tlačidle 3 (viz 3).
Klávesa +/- - Bežné využitie pri vystavení daňového dokladu je nepraktické. Predpoklad je využiť ju pre dodací list. Dlhšie stlačenie slúži pre vrátenie celého vybraného dokladu. Klasický postup je taký, že najprv pred predajom sa použije tlačidlo Doklady predaja a v zozname predajov sa klikne na doklad s príznakom “completed”. Následne sa stlačí Vybrať. Potom sa stlačí Predaj a v novom doklade je tak automaticky vložená kópia vybraného dokladu. Klávesa +/- teda dlhším stlačením volá “snackbar” s otázkou “Invertovať množstvá ?”. Po odpovedi ÁNO sa všetky položky invertujú na záporné. Servisná poznámka: v pozadí sa dosadí ku každej položke do príznaku “refId” kód dokladu z ktorého vrátenie je skopírované. Zároveň príznaky “itemTypeSK” sa nastavia na “V” a “itemType” na “REFUND”.
Reklamácia dokladu
- stlačiť tlačidlo "Doklady predaja"
- v zozname predajov kliknúť na doklad pre reklamáciu (má mať príznak “completed”)
- stlačiť "Vybrať"
- vôjsť do predaja - stlačiť "Predaj" a v novom doklade je tak automaticky vložená kópia vybraného dokladu
- dlhšie stlačenie klávesy "+/-" zobrazí otázkou: “Invertovať množstvá ?”
- po odpovedi ÁNO sa všetky položky invertujú na záporné
- vykonať platbu hotovosťou
Info fragment
Informácie o doklade sú vo vrchnej časti fragmetnu uvedené bielym textom na sivom podklade a obsahujú 3 riadky:
- Celková suma (Zhrnutie)
- Poznámka oddelená znakom | , kde pred je text a za může byť číslo stola
- Typ dokladu a počet položiek v doklade (za znakom #)
Krátke kliknutie na fragment vyvolá formulár na vstup poznámky pre doklad (napríklad text a číslo). Dlšie stlačenie zobrazí servisný formulár s dokladom v JSON.
List fragment
Zoznam položiek dokladu - produkty je skrolovateľný zoznam. Po kliknutí na riadok s položkou sa táto stáva aktuálnou, o čom sa zobrazí vo fragmente Info údaj v treťom riadku.
Dlhšie stlačenie zmení príznak označenia. Toto sa využije pri hromadných akciách ako výmaz položiek (klávesa 0), prenos do zásobníka (klávesa 3), prípadne iné.
V zozname je pohyb možný aj klávesami 8 a 5, avšak to je nepraktické.
Kliknutie na obrázok Info zobrazí formulár na zadanie poznámky k položke pre prípadnú tlač objednávky na slip tlačiarňach. Poznámky sa pridávajú do poľa a nieje možné ich editovať. Pozadie obrázka po akcii ostane ofarbené na žlto do opustenia dokladu.
Dlhšie stlačenie na obrázok Info zobrazí servisný formulár s JSON pre položku.
Universal fragment
Stručné zobrazenie vstupujúcich reťazcov z numerickej klávesnice slúži pre ich vizuálnu kontrolu. Editácia týchto údajov nie je možná, okrem výmazu.
Zmazať vstupjúce údaje indikované v tomto fragmente je možné klávesou C z frgamentu Functions.
Napravo od fragmentu Universal je textové pole s krátkymi informáciami o poslednej akcii. Kliknutím naň sa fragment List zväčší, alebo zmenší.
Inputs fragment
Vstupy dôležitých informácii zabezpečú 3 klávesy:
ID
Vyhľadanie produktu. Pred jej použitím je potrebné na numerickej klávesnici zadať reťazec ktorý sa zobrazí vo fragmente Universal.
Stlačenie ID sa pokúsi vyhľadať produkt podľa stĺpca “code” (short id code). Vstupujúce znaky teoreticky môžu byť zmiešaný reťazec znakov a čísel, avšak je to nepraktické a program nemá vstup pre nečíselné znaky (zatiaľ…).
Dlhšie stlačenie ID sa pokúsi vyhľadať produkt podľa stĺpca “id” (unique id). Jedná sa o číslo (int) ktoré DB stroj automaticky priradzuje pri vytvorení produktu.
Ak produkt bol nájdený, pridá sa do zoznamu položiek a ozve sa potvrdzovací tón (Confirm).
V prípade že produkt nebol nájdený, zobrazí sa Snackbar s informáciou a ozve sa obsadzovací tón (Busy).
QTY
Vstup množstva pre univerzálne použitie. Pred jej použitím je potrebné na numerickej klávesnici zadať reťazec ktorý sa zobrazí vo fragmente Universal.
Stlačenie QTY sa pokúsi vložiť zadaný reťazec do svojej hodnoty indikovanej v prvom riadku popisu. Ak bol zadaný očakávaný reťazec, potom sa nastaví na novú hodnotu. V opačnom prípade sa zobrazí Snackbar s informáciou o neočakávanom vstupe. Vynulovanie je možné opätovným stlačením QTY ak je Universal fragment prázdny. Hodnota v tomto tlačidle sa nuluje v závislosti od použitej následujúcej funkcie.
Ak má byť množstvo pridávaného produktu iné ako 1, potom použijeme túto klávesu pred hľadaním produktu. Ak je potreba zmeniť množstvo produktu v zozname, tak v rôznom poradí zvolíme nový stav QTY a kliknutie na produkt. Potom stalčíme žltú klávesu Nové Množ. z frgamentu Functions.
Ak sa má pripočítať nové množstvo k existujúcemu, potom zadáme nové množstv a klikneme na produkt. Pre pripočítanie dlhšie stlačíme klávesu 1.
PRC
Vstup ceny pre univerzálne použitie. Pred jej použitím je potrebné na numerickej klávesnici zadať reťazec ktorý sa zobrazí vo fragmente Universal.
Stlačenie PRC sa pokúsi vložiť zadaný reťazec do svojej hodnoty indikovanej v prvom riadku popisu. Ak bol zadaný očakávaný reťazec, potom sa nastaví na novú hodnotu. V opačnom prípade sa zobrazí Snackbar s informáciou o neočakávanom vstupe. Vynulovanie je možné opätovným stlačením PRC ak je Universal fragment prázdny. Hodnota v tomto tlačidle sa nuluje v závislosti od použitej následujúcej funkcie.
Ak má byť predajná cena pridávaného produktu iné ako z katalógu, potom použijeme túto klávesu pred hľadaním produktu. Ak je potreba zmeniť cenu produktu v zozname, tak v rôznom poradí zvolíme nový stav PRC a kliknutie na produkt. Potom stalčíme žltú klávesu Nová cena z frgamentu Functions.
Functions fragment
Tlačidlá zabezpečujú najčastejšie používané funkcie:
Používateľ
Funkcia nie je pripojená.
Fragment Users nahradí po stlačení tohoto tlačidla v hlavnom kontajneri predaja fragment POS. Najprv sa uloží rozpracovaný doklad, potom sa otvorí fragment používateľov a následne po výbere potrebného je k dispozícii tlačidlo Predaj.
C
Odstráni reťazec z fragmentu Universal.
Nové Množ.
Použije sa nakonci sekvencie úkonov pre zmenu množstva aktuálnej položky. Viz fragmety NumPad klávesa 1 a fragment Inputs klávesa QTY.
Nová cena
Použije sa nakonci sekvencie úkonov pre zmenu ceny aktuálnej položky. Viz fragment Inputs klávesa PRC.
% Zľava
Funkcia nie je pripojená.
Otvorí formulár pre typ a výšku zľavy. Zľava sa aplikuje na vybrané položky (viz fragment NumPad). Zľava jednotlivých položiek je posúdená podľa možnosti zakázať zľavu, či nekumulovať zľavy.
Doklady
Stlačením sa uloží rozpracovaný doklad, potom sa otvorí fragment Doklady predaja a následne po výbere potrebného sa tento prenesie do aktuálneho dokladu.
Dlhšie stlačenie uloží rozpracovaný doklad, potom ostane v menu.
Nájdi
Funkcia nie je pripojená.
Otvorí formulár so vstupom reťazca pre vyhľadávanie a voľbu stĺpcov ktoré sa do prehľadávania majú zahrnúť. V názve sa vyhľadáva aj podreťazec.
Katalóg
Fragment Doklady predaja nahradí po stlačení tohoto tlačidla v hlavnom kontajneri predaja fragment POS. Otvorí fragment s katalógom, kde sú kategórie a produkty. Následne po výbere potrebného produktu sa tento pridá do aktuálneho dokladu.
Scanner
Volá Sunmi Intent pre obsluhu scannera. Ten navráti kamerou nasnímaný kód. Hľadanie prebehne v stĺpci “barcode”. V prípade úspechu sa produkt pridá do zoznamu položiek dokladu.
Dlhšie stlačenie zobrazí formulár na manuálny, alebo trigger vstup kódu. (trigger je na novších Sunmi, napríkladV2s). Po potvrdení OK prebehne hľadanie.
Platiť
Zamení fragmenty v kontejneroch Universal a Functions, tak aby bolo možné zadať hradenú čiastku, zrealizovať platbu, či vytlačiť info o doklade, alebo výdajku, prípadne zahodiť aktuálny doklad.
AddFunctions fragment
RF
Reklamuje jeden produkt tak, že najprv s kladným množstvom produkt vložíme do položiek dokladu. Kliknutím na produkt ho vyberieme. Klikneme na RF čím sa zavolá Sunmi Intenet pre scanner. Načítame QR kód z dokladu, z ktorého reklamáciu uplatňujeme. Položka tak invertuje na zápornú. Servisná poznámka: v pozadí sa dosadí ku položke do príznaku “refId” kód dokladu z ktorého vrátenie je zosnímané. Zároveň príznaky “itemTypeSK” sa nastavia na “V” a “itemType” na “REFUND”.
Dlhšie stlačenie zobrazí formulár na manuálny, alebo trigger vstup kódu. (trigger je na novších Sunmi, napríkladV2s).
Fc
Zobrazí formulár s ponukou rôznych funkcií:
- Zabraziť položky zásobníka - ak existuje v zásobníku (viz NumPad: použitie klávesov 3 a 2) jedna či viac položiek, potom ich zobrazí v JSON formáte.
Input payments - platba dokladu
Vstupy súm platby zabezpečú 3 klávesy:
Cash
Vstup sumy pre hotovosť. Pred jej použitím je potrebné na numerickej klávesnici zadať reťazec ktorý sa zobrazí vo fragmente Universal.
Stlačenie Cash sa pokúsi vložiť zadaný reťazec do svojej hodnoty indikovanej v prvom riadku popisu. Ak bol zadaný očakávaný reťazec, potom sa nastaví na novú hodnotu. V opačnom prípade sa zobrazí Snackbar s informáciou o neočakávanom vstupe. Vynulovanie je možné opätovným stlačením Cash ak je Universal fragment prázdny.
V prípade že je zadaná suma vyššia ako suma dokladu, potom bude vypočítaný rozdiel pre vrátenie - výdavok.
Card
Vstup sumy pre platobný termiál (POI). Pred jej použitím je potrebné na numerickej klávesnici zadať reťazec ktorý sa zobrazí vo fragmente Universal.
Stlačenie Card sa pokúsi vložiť zadaný reťazec do svojej hodnoty indikovanej v prvom riadku popisu. Ak bol zadaný očakávaný reťazec, potom sa nastaví na novú hodnotu. V opačnom prípade sa zobrazí Snackbar s informáciou o neočakávanom vstupe. Vynulovanie je možné opätovným stlačením Card ak je Universal fragment prázdny.
V prípade že je zadaná suma vyššia ako suma dokladu, potom bude vypočítaný rozdiel uvedený po úspešnej úhrade na POI ako tips (tringelt) priamo na doklade platobnej brány.
Vou
V rámci platidiel je možné zadať aj výmenný poukaz (Voucher). Princíp je obdobný ako pri klávese Cash.
Functions fragment - platba dokladu
Platba
Po stlačení tlačidla sa zobrazí Snackbar s potvrdením že skutočne má prebehnúť hotovostná platba. Po odpovedi ÁNO prebehne platba tak, že aplikácia zašle pomocou ExecutorService Nexo protokol cez HTTP na localhost. Ak je doklad uložený do CHDU, teda kladne spracovaný, tak sa vytlačí na vstavanej tlačiarni. Samotný spôsob tlače či odoslania na mail ovplyvňujú nastavenia aplikácie. Ak gePOS je spustený na inom zariadení než Sunmi P2, namiesto localhost sa komunikuje cez IP nastavenú v nastaveniach aplikácie.
Platba kartou
Úhrada pomocou POI prebehne tak, že aplikácia sa rozhodne podľa toho na akom zariadení je spustená. Ak ide o zariadenie P2, potom sa volá Intent platobnej brány Besteron. Ak aplikácia je spustená na inom zariadení než Sunmi P2, namiesto Intent sa komunikuje cez IP nastavenú v nastaveniach aplikácie tak, že zašle pomocou ExecutorService request cez HTTP a čaká na response.
Pri zrealizovaní platby pokračuje aplikácia samostatne na zaevidovanie dokladu obdobne, ako pri tlačidle Platba.
C
Odstráni reťazec z fragmentu Universal.
Späť
Vráti sa k zadávaniu produktov, teda zamení fragmenty v kontejneroch Universal a Functions.
Zahodiť
- Ak sa jedná o nový doklad (príznak “isNew”), potom nenávratne vymaže položky predaja a vráti sa do menu.
- Ak sa jedná o doklad existujúci v zozname (príznak “open”), potom doklad aktualizuje a zmení príznak na “canceled” a vráti sa do menu
- Ak sa jedná o uhradený doklad (príznak “completed”), potom doklad aktualizovaný nebude a ani príznak sa nezmení. Toto sa využíva pre reklamáciu celého dokladu (viz NumPad)
Info
- krátke stlačenie - Volá tlačový formulár so zostaveným dokladom v skrátenej podobe. Doklad ostane aktívny.
- dlhé stlačenie - doklad po tlači uloží ako výdajka
Výdajka
- krátke stlačenie - volá tlačový formulár so zostaveným dokladom v plnohodnotnej podobe. Použitie je pre vystavenie nedaňového dokladu o výdaji produktov (čerpanie na palivové karty, či iné komodity fakturované v budúcnosti). Taktiež osoby ZŤP môžu za zákonom splnených podmienok vydávať takéto daňové doklady. Doklad ostane aktívny.
- dlhé stlačenie - doklad po tlači uloží uloží ako výdajka
LOGO
- krátke stlačenie - prepne odoslanie na preddefinovaný mail (Ukazateľ info mení farbu pozadia: ON=zelené, OFF=sivé)
- dlhé stlačenie - Štandardnou komunikáciou s POS (ako pri platbe) zobrazí formulár s Identifikačnými údajmi.
Účtenka - vratné obaly
Účtovanie vratných obalov zahŕňa špecifiká, ktoré je nutné dodržať, aby bolo možné doklad vystaviť. Spôsob a príklad vytvorenia vratných obalov v geCommerce je v článku Produkty ⇨ Vratné obaly - Besteron. Uvádza sa tam ako vytvoriť názov pre predávané (kladné) vratné obaly, aj vloženie riadiacej sekvencie do Description produktu, aby bolo možné obaly vykupovať.
Príklad predaja a výkupu v gePOS APK:
Pozn.: Príklad sa odvoláva na názvy a barkódy z hore uvedeného článku...
Krok | Tlačidlá |
Otvoriť nový doklad | Predaj ⇨ Predaj |
Predaj obalu | Výber produktu: VO: Vratný obal plech/PET + |
Výkup obalu |
Zadanie záporného množstva Výber produktu: Vratný obal plech/PET - |
Platba | Platiť ⇨ Platba (Hotovosť/Karta) |
Zadanie záporného množstva produktu: stlačiť +/-, potom množstvo (napríklad 1), stlačiť QTY
Výber produktu je možný viacero spôsobmi - napríklad: stlačiť Katalóg, alebo zadať PLU a stlačiť ID, alebo stlačiť dlho Skener a zadať barCode.
Platba kartou sa realizuje len ak je suma dokladu vyššia ako nula
Je nutné každý obal mať v produktoch dva krát - viac článok o geCommerce