Termék felvitele
Az + Új termék gombbal. A vonalkód mezőnél a 📷 ikonnal be lehet
olvasni a kódot a telefon kamerájával, és ha az adatbázisokban megvan, a nevet és a
képet magától kitölti. A mikrofon ikonnal diktálni is lehet a szöveges mezőkbe.
Raktárak
A terméklista fölött lapfülek vannak: minden termék egy raktárhoz
tartozik, és a fülekkel lehet váltani köztük. A fül mellett ott a raktárban lévő
termékek száma, alatta pedig a telephely adatai — cím, telefon, nyitvatartás.
Az ⚙️ Raktár adatai gombbal átnevezhető és kitölthető a telephely
címe, elérhetősége, nyitvatartása. A + Új raktár gombbal újat
hozhatsz létre. Terméket a saját űrlapján lehet átrakni másik raktárba.
Raktár törlésekor a benne lévő termékek nem vesznek el: átkerülnek
egy másik raktárba, és a program megmondja, hányat mozgatott. Az utolsó raktár nem
törölhető.
Rendelés rögzítése
A Rendelések fülön. A beszerzési ár nettó, az
ajánlott fogyasztói ár bruttó — a mezők alatt is ott van. Ha a
beszállító még nincs felvéve, az Új beszállító gombbal rögtön
létrehozható, nem kell kilépni a rendelésből.
Függőben lévő rendelések
A fejlécben lévő 🔔 harang mutatja, hány rendelés vár még: leadva, összekészítés
alatt vagy úton. Rákattintva kinyílik a lista, a legrégebben várakozóval elöl.
E-mail értesítést az Eszközök → Értesítések alatt lehet beállítani
— óránként, kétóránként vagy naponta, csendes idősávval együtt.
Bevételezés számláról
Eszközök → 🧮 Bevételezés számláról. Elsősorban a NAV-ból dolgozik:
a beszállítóid tételesen bejelentik a számlákat, onnan pontosan beolvasható.
Ha a számla még nincs fent a NAV-nál — a beszállítónak van néhány
napja bejelenteni, az áru viszont már megjött —, ugyanitt fel lehet tölteni a kézbe
kapott számlát PDF-ben, Excelben vagy CSV-ben, vagy be lehet másolni
a szövegét. A kiolvasott sorokat ugyanaz a képernyő mutatja, mint a NAV-osokat:
soronként eldöntöd, melyik meglévő termékhez tartozik, mit veszel fel újként, és mit
hagysz ki.
Fénykép és beszkennelt papír
A papírszámlát is be lehet olvasni: a 📷 Lefényképezem gomb telefonon
egyből a hátsó kamerát nyitja, a 📄 Számla feltöltése pedig elfogadja
a JPG-t és a PNG-t. A csak képet tartalmazó, beszkennelt PDF-et is felismeri: kiszedi
belőle az oldalak képét, és azokat olvassa el.
Ez karakterfelismerés, tehát lassabb: egy lap a szerveren fél-egy
perc is lehet. Amíg dolgozik, a felület számolja a másodperceket.
Amit tudni kell róla: a neveket, cikkszámokat és dátumokat
megbízhatóan olvassa, az árakat nem mindig — mérve egy tiszta
szkennelésen ötből két ár ment félre. Ezért a program a számla nettó
végösszegével hitelesíti a sorokat: ha a nettók összeadva kiadják, akkor
az összegek jók, és a hibás egységárat visszaosztva ki is javítja. A kiolvasott
értéket ilyenkor áthúzva odaírja mellé, hogy lásd, min változtatott.
Ha a végösszeg nem jön ki, azt sárga sávban kiírja: olyankor minden sort
nézz át, mielőtt bevételezel. Bevételezés előtt egyébként is minden sor javítható.
A szkennelés minősége mindennél többet számít. 300 DPI, egyenesen
behelyezve, jó kontraszttal. Halvány, ferde vagy zajos képnél a felismerés
használhatatlan — ezt a program is jelzi. Utólag felnagyítani nem segít, mert a
zajt is nagyítja; olyankor inkább szkenneld be újra.
Excel be és ki
Mind a négy listánál van export és import. Az import nem törli a
meglévőt: ami hiányzik, azt pótolja, ami már ki van töltve, azt nem írja felül.
A vásárlóknál a Számlázz.hu oszlopneveit is felismeri.
Partnerek a NAV-ból
Eszközök → 🏢 Partnerek a NAV-ból. A NAV minden számládat ismeri,
tehát a partnerek névsora ott pontosabban megvan, mint bárhol máshol — oda a másik
fél is bejelenti. A beérkező számla kiállítója beszállító, a kimenő számla vevője
vásárló.
Adószám szerint vonja össze őket, tehát ha ugyanaz a cég háromféle írásmóddal
szerepel a számlákon, akkor is egy sor lesz belőle. Megmutatja, ki van már felvéve
és ki nem — csak az újakat lehet kijelölni. Kérheted, hogy a székhelycímet is
lekérdezze a NAV-tól; az partnerenként egy külön kérés, ezért lassabb.
Bankszámlaszámok a bankból
Ugyanabban az ablakban, a NAV-os rész alatt: Bankszámlaszámok pótlása.
A netbankból kiexportált partnerlistát (CSV vagy Excel) kell betölteni, és a program
név szerint párosítja a partnereidhez — a banki export ugyanis
adószámot nem tartalmaz. A cégjogi utótag (Kft., Zrt., Bt.) és az ékezet nem
számít, tehát a „Metman Kft." és a „Metmann Kft" is összeér.
Akinek már van számlaszáma a programban, annál nem lehet
kijelölni semmit: azt te vitted be, azt nem írja felül. Ahol csak részleges a
névegyezés (például „Depiend" → „Depiend Plusz Kft."), ott ezt oda is írja a sor
alá — érdemes ránézni, mielőtt beírod.
Nyomtatás
🖨️ gomb van a terméklistán, a beszállítóknál, a
vásárlóknál, az árajánlatnál és a
katalógusban. A katalógus egészét nem lehet kinyomtatni — az
százezres nagyságrend —, csak amit kijelölsz; a kijelölés lapozáskor is megmarad.
Ha kijelöltél sorokat, azokat nyomtatja; ha nem, az egész szűrt listát.
Nem a képernyőt teszi papírra: külön nyomtatvány épül, rajta a cégfejléc, a dátum,
hogy mire szűrtél, és a teljes lista — nem csak az az 50 sor, ami éppen
látszik.
A terméklistánál kétféle van: a sima Terméklista, és a
Leltárív, amin üres „Megszámolt" és „Eltérés" rubrika van
aláírásvonallal — azt számolás közben kézzel lehet kitölteni.
A nyomtatót a böngésző nyomtatási ablakában válaszd ki, ami a
gombra megnyílik. Ott jelenik meg a gépre telepített összes nyomtató, és ott lehet
PDF-be is menteni. A programban nincs külön nyomtatóválasztó: weboldal a gép
nyomtatóit nem tudja felsorolni.
A fejlécben a céged neve és székhelye a NAV-tól jön, az adószámod alapján — nem
kell külön beírni sehova, és nem is tud elavulni.
Árajánlat és a katalógus
Az árajánlat tételsoraiban a 🔎 gombbal rá lehet keresni a
beszállítói katalógusban, és egy kattintással beírni a nevet és az árat. A
katalógusban fordítva is megy: kijelölsz néhány terméket, és a
🧾 Árajánlatba gombbal mind bekerül.
Az ajánlatba az eladási ár kerül, nem a beszerzési — az ügyfélnek
szóló papíron az a helyes.
Kuka
Ami törlődik, nem vész el azonnal: az Eszközök → Kuka alatt
visszaállítható. Véglegesen csak onnan lehet törölni.
Fajtánként van egy Mind jelölő is — ez az összes ott
lévő tételre vonatkozik, nem csak a képernyőn látszókra. Így egy elrontott
leltár-betöltés több ezer terméke is egy mozdulattal visszahozható. Az egyes
tételek mellett jelölőnégyzet van, ha csak néhányat akarsz.
Mi a katalógus?
Nem a saját készleted, hanem az, hogy mit lehet megvenni a
beszállítóktól. Külön adatbázisban van, a saját terméklistádhoz nem nyúl. A
találatból egy gombbal lehet bevételezni a raktárba — akkor keletkezik termék.
Katalógus építése az árlistákból
Eszközök → Katalógus kezelése. Töltsd fel a beszállító adatlapján
az árlistáját, itt pedig jelöld be, kiét akarod, és nyomd meg a
Katalógus építése gombot. A program felismeri az oszlopneveket,
kiolvassa az árakat, és felépíti a keresőt. A régi katalógus félretéve megmarad.
Ugyanitt van a „Honnan van adatunk?" táblázat: beszállítónként
látod, van-e feed-linkje, feltöltött árlistája, belépője, és hány terméke van bent.
Egy beszállítóhoz több árlista is tartozhat. A Tisza Híd például
Ganteline-t és Cervát is hoz, külön listákkal — az adatlapon mindet fel lehet
tölteni, és mellé írni a márkát. Az építés mindegyiket beolvassa, és külön sorban
kiírja, melyikből hány termék jött.
Árkereső
Eszközök → Árkereső. Beírod a termék nevét vagy cikkszámát, és
megmutatja, melyik beszállítónál mennyibe kerül, a legolcsóbbal kiemelve. Két
dolgot külön megjelöl, mert enélkül rossz döntés születne: csomagolás-gyanú
(az egyik a darabot árazza, a másik a csomagot) és gyanús ár (tízszeres
fölötti eltérés — az elgépelés, nem üzlet).
Leltár betöltése
Eszközök → Leltár betöltése. Előbb csak megmutatja, mi történne;
írni csak a második gombra fog. A kipipálás jelét és a készlet-cellába csúszott
cikkszámot magától letakarítja.
A data mappát soha ne cseréld egészben. A katalógus
mellett ott van a db.json is, és abban van az összes terméked,
rendelésed, vásárlód és a bejelentkezésed. A katalógust a felületről kell cserélni.
Ugyanígy kézzel ne bántsd a .env és az uploads/ tartalmát.
Mindennapi parancsok
A program mappájából: /home/www/arufelvitele.nagyuzlethaz.hu
| Mit akarsz | Parancs |
| Újraindítás | pm2 restart arufelvitele |
| Fut-e, mióta | pm2 list |
| Mit írt ki | pm2 logs arufelvitele --lines 30 --nostream |
| Melyik verzió van a lemezen | node -p "require('./package.json').version" |
| Van-e helyben módosított fájl | git status --porcelain --untracked-files=no |
| A számla-beolvasó próbája | node scripts/szamla-proba.js |
| Felismerés nyelvi adata | node scripts/ocr-nyelv-letolt.js |
Karakterfelismerés a szerveren
A szkennelt számla felismerése egy lapnál fél-egy perc. Két dolog kell hozzá,
egyszer:
-
Nyelvi adat. Az első beolvasásnál magától letölti (~5,8 MB a
tessdata/ mappába). Frissítés után egyszer lefuttatva előre is
megvan: node scripts/ocr-nyelv-letolt.js
-
Hosszabb nginx-türelem. Az alapértelmezett 60 másodperc elvágná
a felismerést 504-gyel. A
location / blokkba kell:
proxy_read_timeout 300s;
proxy_send_timeout 300s;
client_max_body_size 50m;
Utána nginx -t && systemctl reload nginx.
Frissítés parancssorból
Ha a Frissítés gomb valamiért nem jó, ez ugyanazt csinálja:
git pull --ff-only && npm install --omit=dev --no-audit --no-fund && pm2 restart arufelvitele
Utána a böngészőben Ctrl+F5, különben a régi JavaScript jöhet
vissza a gyorsítótárból, és úgy tűnhet, nem történt semmi.
Ha elakad
„⚠️ Frissítés akadályozva", vagy a gomb nem csinál semmit
A frissítés szándékosan leáll, ha verziókövetett fájl helyben módosult — nem akar
kézi munkát eldobni. A gombra kattintva kiírja, melyikről van szó. A leggyakoribb
ok egy kézzel futtatott npm install <csomag>: az beleír a
package.json-be.
git checkout -- package.json package-lock.json
Bad Gateway — a program el sem indul
Valamelyik require elszállt, jellemzően hiányzó csomag miatt. A napló
megmondja, melyik; utána telepítés és újraindítás.
pm2 logs arufelvitele --lines 30 --nostream
Process or Namespace arufelvitele not found
A pm2-démon elfelejtette a bejegyzést, jellemzően pm2 update után. Az
adat és a kód ilyenkor érintetlen. Ha a pm2 resurrect nem hozza
vissza, indítsd újra és mentsd el a listát.
pm2 start server.js --name arufelvitele && pm2 save
npm error code ETARGET
A package.json olyan csomagverziót kér, ami nincs az npm registryben.
A program ilyenkor a régi kóddal fut tovább — a javítás után a fenti parancssoros
frissítés viszi végig.