================ Troubleshooting ================ .. contents:: :depth: 2 :local: Probleme la conectare server ***************************** Mesaj: *"Date de autentificare invalide"* Verificati firma, utilizatorul si parola. In ERP, contul trebuie sa aiba drepturi pe modulul Logistica / Vanzari. Daca parola a fost schimbata recent in ERP, trebuie sa o actualizati si in aplicatie (campul parola din login). Mesaj: *"Timeout — server-ul nu raspunde"* Verificati: - conexiunea WiFi a dispozitivului (pe EA660: pull down notificari → WiFi) - adresa serverului (cu/fara prefix ``https://``, cu/fara port) - daca server-ul ERP e accesibil din alt browser pe alt device din aceeasi retea Mesaj: *"Introduceti o adresa valida"* Campul *Adresa server* este gol. Completati cu ``host`` sau ``host:port`` (ex: ``testmobil-fsa-01.emsysapp.com``). Login pare ca trece dar lista DL e goala Posibile cauze: - utilizatorul nu are drepturi pe niciun DL — verifica in ERP daca este definit ca operator pe Vanzari pentru cel putin un punct de lucru; - server-ul a primit cererea dar a returnat lista goala (orice DL anterior a fost aprobat sau anulat). Apasa **Refresh** in lista DL si reverifica. Probleme la scanare ******************** Scanner-ul hardware nu raspunde la declansatorul fizic Verifica setarea din *Setari → Tip scanner*. Daca e setat pe **Camera**, scanner-ul hardware Unitech e dezactivat. Schimba pe **Scanner** si revino in ecranul de detaliu DL. Daca este pe Scanner si totusi nu functioneaza: - reporneste aplicatia (kill din task switcher Android + relansare); - verifica daca o alta aplicatie (Unitech Scan2Key, ScanService) e in foreground si captureaza scanarile. Codul scanat apare in alt camp / nu in zona de DL Aplicatia injecteaza codurile in fluxul de scan al DL-ului doar cand ecranul de **Detaliu DL** este activ. Pe alte ecrane (lista DL, setari), scanarile sunt ignorate. Daca codurile apar in tastatura virtuala sau in alt input (cazat in alta aplicatie), inseamna ca Scan2Key e activat la nivel de sistem — dezactiveaza-l din setarile Unitech Scan Service. Aplicatia citeste cod necunoscut desi articolul e pe DL Verifica in dialogul de **Reset** (long press pe pozitia respectiva) lista codurilor de bare configurate pentru acel articol in ERP. Daca codul scanat nu apare in lista, trebuie adaugat in ERP la articolul respectiv. Beep-ul de eroare nu se aude diferit de beep-ul scanner-ului Beep-ul de eroare este un WAV custom redat prin difuzorul telefonului — verifica volumul media (NU volumul de ring/notificari). Pe EA660, butoanele de volum lateral controleaza media volume cand aplicatia foloseste audio. Probleme la preluare ********************* Mesaj: *"Preluare refuzata"* DL-ul a fost preluat intre timp de alt utilizator. Apasa **Refresh** pe lista DL — DL-ul va aparea acum cu fundal gri (preluat de altul). Daca e urgent, contacteaza utilizatorul care l-a preluat sa il elibereze (sau seful de tura sa anuleze preluarea din ERP). Buton **Preluare** nu raspunde / aplicatia inghetza Probabil server-ul ERP raspunde lent. Asteapta 30 secunde. Daca nu se intampla nimic, kill aplicatia si rescaneaza lista — uneori operatia a reusit pe server dar UI-ul nu a primit raspunsul. DL preluat dar nu apare in filtrul *Preluate* Apasa pe butonul **Refresh** (in bara de titlu lista DL) sau face pull-to-refresh. Aplicatia re-incarca lista de pe server cu starile actualizate. Probleme la aprobare ********************* Buton **APROBA DL** este gri (disabled) Inseamna ca cel putin o pozitie are q_scan ≠ q_doc. Scaneaza toate pozitiile pana cand cantitatea scanata (cifra mare, jos in coloana DL/Scan) este egala cu cantitatea ordonata (cifra mica, sus). Toate randurile trebuie sa fie **verde deschis**. Daca o pozitie are q_scan > q_doc (rand rosu), fa long press pe rand → **Undo ultima** sau **Reseteaza tot** pentru a corecta. Pozitie cu q_scan partial — DL-ul nu poate fi aprobat Acesta este comportament normal — DL-ul livreaza fizic mai putin decat ordoneaza ERP-ul. Optiunile sunt: 1. Daca stocul scriptic e gresit (de ex. ERP zice 100 dar in stoc real sunt 80), apasa **TRIMITE Q** (albastru). ERP-ul (un alt utilizator) corecteaza DL-ul la cantitatea reala. Apoi tu faci pull-to-refresh in detaliu — q DL se actualizeaza la cantitatea corectata. Acum q_scan = q_doc si APROBA devine activ. 2. Daca clientul accepta livrare partiala, ERP-ul reduce DL-ul. Idem cu (1). Aprobarea a fost trimisa dar DL-ul tot apare ca preluat de mine Pe server-ul ERP, endpoint-ul ``restLivrariAprobare`` este in dezvoltare (skeleton) — POST-ul ajunge la server dar starea DL-ului ramane neschimbata in ERP. Functional, aplicatia marcheaza DL-ul ca aprobat local (filtrul Aprobate il afiseaza), dar la urmatorul refresh poate sa reapara ca preluat. Aceasta limitare server-side va fi rezolvata in versiunile urmatoare de ERP. Probleme cu cantitati / scanari ******************************** Q scanata locala s-a pierdut la redeschiderea DL-ului Aplicatia salveaza fiecare scanare in SQLite local. Daca cantitatile dispar: - verifica daca DL-ul a fost aprobat extern (de alt utilizator din ERP) — atunci nu mai e accesibil pentru editare; - verifica daca ai facut **Anulare preluare** din greseala — operatia sterge SQLite-ul pentru acel DL. Pentru a evita pierderea muncii: dupa fiecare sesiune de scanare lunga, apasa **TRIMITE Q** ca sa salvezi cantitatile si in ERP, ca backup. Suma scanarilor individuale nu se potriveste cu q scan total Ne contactati — este un bug care nu ar trebui sa se intample. ``appendScan`` si ``resetQScan`` sunt operatii atomice in SQLite. Daca s-a intamplat, probabil un crash a aparut intre operatii pe un dispozitiv foarte vechi cu SQLite corupt. Cum sa stergem complet datele aplicatiei ***************************************** In situatii rare cand aplicatia se comporta neasteptat (cache corupt, baza de date in stare invalida): 1. Settings Android → Apps → **EMSYS Logistics** → Storage → **Clear Data** 2. Toate datele locale sunt sterse: utilizator, parola, DL-uri cache-ate, profiluri QR. 3. La urmatoarea deschidere, aplicatia porneste ca prima instalare: - Limba: Română (default) - Tip scanner: Scanner - Profil QR: Implicit - Login: campuri goale (cu adresa server pre-completata) .. warning:: Stergerea datelor NU sterge DL-urile de pe server. Toate cantitatile **deja trimise** prin TRIMITE Q sau aprobate raman in ERP. Doar cantitatile scanate **dar netrimise** se pierd. Versiune aplicatie + log ************************* Pentru rapoarte de bug, includeti: - versiunea aplicatiei (vizibila in setari de Android → Apps → EMSYS Logistics → Versiune); - modelul terminalului (de ex. Unitech EA660 Gen 3); - versiunea Android; - pasii exacti care reproduc problema; - daca posibil, screenshot al ecranului in momentul erorii.