Szállítási státusz és dátumok¶
Az Odoo alapértelmezett Értékesítés alkalmazása már önmagában is nyomon követi, hogy egy megerősített rendelés Nem szállított, Megkezdve, Részlegesen szállított vagy Teljesen szállított állapotban van-e, kizárólag a hozzá kapcsolt szállítási megbízások állapota alapján. A napi működésben ez nem elég: a raktári és értékesítési csapatoknak azt is tudniuk kell, mennyi ment ki fizikailag egy rendelésből, mikor indult az utolsó szállítmány, és mit kezdjenek egy olyan szállítással, amely sosem fog pontosan megegyezni a rendelt mennyiséggel (ömlesztett vagy folyékony áruk esetén), vagy amelyet teljesen töröltek. Emellett magyar cégeknél a könyvelési szabályok megkövetelik, hogy egy számla könyvelési dátuma és a teljesítési (szállítási) dátuma pontosan megegyezzen, amit a standard készlet-számlázási integráció helyesbítő számláknál csendben megtörhet. Ez az oldal a két eYssen modult dokumentálja, amelyek ezeket a hiányosságokat pótolják.
Szállítási státusz az értékesítési rendelésen¶
- menu
- Sales ‣ Orders ‣ open a confirmed order that has been partially delivered ‣ Other Info tab
- shows
- A confirmed sales order form (state = "sale") with a partially delivered order, on the "Other Info" tab, "Delivery" group. Shows the Delivery Status badge/field, the Delivery % progress bar and the Last Delivery Date field together.
- module
- eyssen_sale_delivery_status, sale_delivery_status_ws, eyssen_l10n_hu_sale_stock_delivery_date
- notes
- English UI, light theme, 1440px width.
Egy megerősített rendelésen az Egyéb infó fül Szállítás csoportja három kiegészítő jelzőt mutat, közvetlenül a szabványos Szállítási státusz mező után:
Szállítás % — a ténylegesen kiszállított mennyiség százalékos aránya a rendelt mennyiséghez képest, a
qty_deliveredés aproduct_uom_qtyértékek alapján számolva, minden olyan rendelési soron, amelynek terméke nem szolgáltatás. Csak akkor jelenik meg, amíg a rendelés megerősített állapotban van.Utolsó szállítás dátuma — a rendeléshez kapcsolt legutóbbi elvégzett, kimenő szállítás befejezési dátuma/időpontja (
picking_ids,state == 'done'éspicking_type_code == 'outgoing'szűrővel). Csak azokat a szállításokat tükrözi, amelyek már elhagyták a raktárt — nem az első szállítást (az a szabványoseffective_datemező, amely továbbra is külön jelenik meg).
Mindkét mező tárolt, és automatikusan újraszámolódik, amikor a rendelési sorok vagy a hozzá tartozó szállítmányok megváltoznak, így közvetlenül használhatók szűrőkben, csoportosításokban és az alább ismertetett jelentés-áttekintőben.
Törölt szállítások¶
A szabványos Szállítási státusz mező csak a Nem szállított, Megkezdve, Részlegesen szállított és Teljesen szállított állapotokat különbözteti meg — egy teljesen törölt rendelés így is Nem szállított-ként jelenik meg. Ez a modul egy ötödik értéket ad hozzá, a Törölve állapotot: ha egy rendelésnek van legalább egy szállítása, és minden szállítmánya Törölve állapotban van, a rendelés szállítási státusza ehelyett Törölve-ként jelenik meg.
Megjegyzés
A mező beépített súgószövege („Blue: Not Delivered/Started, Orange: Partially Delivered, Green: Fully Delivered”) az Odoo saját szövege, és nincs kibővítve az új állapottal. A modul által hozzáadott lista- és Kanban-nézetekben a Törölve állapot piros (veszély) színnel jelenik meg, hogy vizuálisan elkülönüljön a másik háromtól.
Kézi „Teljesen szállított” felülbírálás¶
- menu
- Sales ‣ Orders ‣ open a confirmed, not-fully-delivered order ‣ header
- shows
- The same order form, zoomed on the header, showing the "Fully Delivered" button next to the status bar (order not yet fully/cancelled delivered).
- module
- eyssen_sale_delivery_status, sale_delivery_status_ws, eyssen_l10n_hu_sale_stock_delivery_date
- notes
- English UI, light theme, 1440px width.
Ömlesztett vagy folyékony áruk esetén a kiszállított mennyiség szinte sosem egyezik pontosan a rendelt mennyiséggel, ezért a számított státusz örökre Részlegesen szállított marad, még akkor is, ha a szállítás a gyakorlatban teljesnek tekinthető. A fejlécben lévő Teljesen szállított gomb lehetővé teszi, hogy a felhasználó ezt kézzel felülbírálja egy megerősített rendelésen:
Kattintson a Teljesen szállított gombra a rendelés fejlécében. Ez beállítja a technikai Kényszerített teljes szállítás jelzőt (
force_full_delivery), és azonnal Teljesen szállított-ra számolja újra a szállítási státuszt, a ténylegesen kiszállított mennyiségektől függetlenül. A chatterben egy üzenet rögzíti, hogy a státuszt kézzel kényszerítették.A gomb csak azokon a megerősített rendeléseken érhető el, amelyek jelenlegi státusza még nem Teljesen szállított vagy Törölve, és eltűnik, amint a felülbírálás aktívvá válik.
Ekkor a helyén megjelenik egy Szállítási státusz visszaállítása gomb. Erre kattintva törlődik a felülbírálás, és a státusz ismét a tényleges kiszállított mennyiségek alapján számolódik újra, ami szintén egy chatterüzenetet naplóz.
- menu
- same order as above, after clicking "Fully Delivered" ‣ header + chatter
- shows
- An order where "Fully Delivered" has already been forced, showing the "Reset Delivery Status" header button and the chatter message logged by the override.
- module
- eyssen_sale_delivery_status, sale_delivery_status_ws, eyssen_l10n_hu_sale_stock_delivery_date
- notes
- English UI, light theme, 1440px width.
Fontos
A felülbírálás sosem nyúl a készlethez: egyik gomb sem hoz létre, töröl vagy hagy jóvá szállítmányt, mozgást vagy backordert. Csak azt változtatja meg, amit a Szállítási státusz mező jelez. A Törölve állapot mindig elsőbbséget élvez a felülbírálással szemben — ha a rendelés minden szállítása törölve van, a státusz Törölve-ként jelenik meg még akkor is, ha a Kényszerített teljes szállítás be van állítva.
Szállítási státusz a lista- és keresőnézetekben¶
- menu
- Sales ‣ Orders ‣ click the column-picker (sliders icon) at the top-right of the list and enable "Delivery %" and "Last Delivery Date"
- shows
- The Sales --> Orders list view with the Delivery Status column showing colored badges (green/orange/blue/red) and the Delivery % and Last Delivery Date optional columns enabled via the column-picker.
- module
- eyssen_sale_delivery_status, sale_delivery_status_ws, eyssen_l10n_hu_sale_stock_delivery_date
- notes
- English UI, light theme, 1440px width.
A Szállítási státusz oszlop alapértelmezésben be van kapcsolva (színes jelvény: zöld a Teljesen szállított, narancssárga a Részlegesen szállított, kék a Nem szállított/Megkezdve, piros a Törölve esetén) mind az listán, mind a Ajánlatok listán. A Szállítás % és az Utolsó szállítás dátuma opcionális (alapértelmezésben rejtett) oszlopként kerül hozzáadásra mindkét listához, az oszlopválasztóból bekapcsolva.
- menu
- Sales ‣ Orders ‣ click into the search bar ‣ Filters tab
- shows
- The search panel's Filters dropdown open on the Orders list, showing "Not Delivered", "Delivery Started", "Partially Delivered", "Fully Delivered", "Delivery Cancelled" and the "Group By: Delivery Status" option.
- module
- eyssen_sale_delivery_status, sale_delivery_status_ws, eyssen_l10n_hu_sale_stock_delivery_date
- notes
- English UI, light theme, 1440px width.
A rendelés keresőpanelje szállítási státuszonként egy-egy szűrőt kap — Nem szállított, Szállítás megkezdve, Részlegesen szállított, Teljesen szállított és Szállítás törölve —, valamint egy Utolsó szállítás dátuma dátumszűrőt és egy Csoportosítás: Szállítási státusz opciót.
Szállítási státusz áttekintő¶
- menu
- Sales ‣ Reporting ‣ Delivery Status
- shows
- The "Delivery Status" reporting list view, showing Order, Partner, Order Date, Commitment Date, Expected, First Delivery, Last Delivery, Delivery Status badge, Delivery % bar and Total columns.
- module
- eyssen_sale_delivery_status, sale_delivery_status_ws, eyssen_l10n_hu_sale_stock_delivery_date
- notes
- English UI, light theme, 1440px width.
Egy dedikált jelentésmenü, az , rendeléseken átívelő áttekintést nyújt, kizárólag a megerősített rendelésekre (state = 'sale') szűkítve. Listanézete egyesíti a rendelés hivatkozását, az ügyfelet, a rendelés dátumát, a Vállalt dátum, a Várható dátum (expected_date), az Első szállítás (a szabványos effective_date), az Utolsó szállítás (last_delivery_date), a Szállítási státusz jelvényt, a Szállítás % folyamatsávot, a rendelés végösszegét és az értékesítőt.
- menu
- Sales ‣ Reporting ‣ Delivery Status ‣ Pivot view button
- shows
- The same reporting action switched to the Pivot view, delivery status as columns and order month as rows, with Delivery % and Total as measures.
- module
- eyssen_sale_delivery_status, sale_delivery_status_ws, eyssen_l10n_hu_sale_stock_delivery_date
- notes
- English UI, light theme, 1440px width.
Ugyanez a művelet Pivot és Grafikon nézetet is kínál: a pivot a Szállítás % értéket és a rendelés végösszegét bontja le szállítási státusz szerint (oszlopok) és rendelési hónap szerint (sorok); a grafikon szállítási státuszonként oszlopdiagramként mutatja a rendelések teljes értékét.
Tényleges ügyfél-átvételi dátum¶
Az értékesítési rendelésen túl ez a modul egy Tényleges ügyfél-átvételi dátum (delivered_date) mezőt is hozzáad magához a szállításhoz (stock.picking). Ez egy technikai, csak olvasható mező, amelyet ez a modul egyetlen nézeten sem jelenít meg — azért létezik, hogy rögzítse azt a pillanatot, amikor a vevő ténylegesen átvette az árut (a futárkövetés jelentése alapján), ami érzékelhetően később is lehet, mint a date_done (amikor a raktár érvényesítette a szállítmányt, és átadta a futárnak).
A mezőt az idempotens _set_delivered() hook tölti ki, amely:
csak azokra a kimenő szállítmányokra vonatkozik, amelyek célhelye vevői helyszín;
csendben figyelmen kívül hagyja az üres/hamis időbélyeget; és
sosem írja felül a meglévő értéket — az első megerősített átvétel a mérvadó, a későbbi, eltérő időbélyeggel érkező hívások hatástalanok.
Megjegyzés
Az eyssen_sale_delivery_status csak a mezőt és ezt a hookot definiálja; a futárkövetési integrációk (pl. a GLS, a Foxpost és az MPL szállítási módok) hívják meg a _set_delivered()-et, amint észlelnek egy tényleges kiszállítási követési eseményt, és más eYssen modulok (például az RMA visszaküldési határidő logikája) olvassák ki a kapott dátumot. A részletekért nézze meg az adott modulok saját dokumentációját.
Magyar számla teljesítési dátumának konzisztenciája¶
- menu
- Accounting ‣ Customers ‣ Invoices ‣ open a HU corrective invoice ‣ Other Info tab
- shows
- A Hungarian customer invoice form, "Other Info" tab, showing the Delivery Date field next to the accounting Date field, both holding the same value; ideally a corrective invoice so the "Origin/Corrected invoice" link is also visible.
- module
- eyssen_sale_delivery_status, sale_delivery_status_ws, eyssen_l10n_hu_sale_stock_delivery_date
- notes
- English UI, light theme, 1440px width.
Az Odoo alapvető könyvelése minden számlán megőriz egy Teljesítési dátum mezőt (delivery_date). Ha a Készlet alkalmazás telepítve van, a sale_stock a számla minden újraszámolásakor automatikusan szinkronizálja ezt a mezőt a kapcsolódó értékesítési rendelés Tényleges dátum mezőjével (az első szállítás befejezési dátuma). Ettől függetlenül az eyssen_l10n_hu egy magyar NAV-előírást kényszerít ki könyveléskor: magyar cégnél a számla könyvelési Dátum mezőjének és a Teljesítési dátum mezőjének meg kell egyeznie, különben a Könyvelés megtagadja a műveletet a „The Accounting Date is not the same as the Fulfillment Date!” üzenettel. Ennek teljesítése érdekében a helyesbítő számlák és a jóváíró számlák mindkét dátumot közvetlenül az eredeti — az általuk helyesbített vagy sztornózott — számlától öröklik.
A modul által megoldott probléma a számítási sorrenddel kapcsolatos: mivel a sale_stock saját Teljesítési dátum újraszámolása mindig megpróbálja a mezőt az értékesítési rendelés tényleges dátumáról újra beállítani, ez a logika a telepített alkalmazások pontos kombinációjától függően az eyssen_l10n_hu „öröklés az eredeti számlától” logikája után is lefuthat — ezzel csendben ismét eltávolítva a helyesbítő számla teljesítési dátumát az eredeti számla dátumától, és megtörve a könyvelési dátum / teljesítési dátum egyezését Könyvelés időpontjában.
Az eyssen_l10n_hu_sale_stock_delivery_date egy kicsi, csak függőségi célú modul (nem ad hozzá sem nézetet, sem menüt, sem új mezőt), amely mindkét sale_stock és eyssen_l10n_hu modultól függ. A kettős függőség garantálja, hogy az account.move._compute_delivery_date() felülírása a sale_stock sajátja után fusson le, így a helyesbítőszámla-logikának mindig az övé az utolsó szó:
a már Könyvelt tételeket érintetlenül hagyja (egy könyvelt, már hash-elt tételen a
delivery_dateújraszámolása sosem történhet meg);bármely más tételen, ha van Eredeti számla mezője, vagy sztornó (
reversed_entry_id), mind a Teljesítési dátum, mind a Dátum az eredeti számla teljesítési dátumára kényszerítődik, visszavonva minden készlet által vezérelt újraszinkronizálást; ésbiztonsági hálóként, ha a Teljesítési dátum és a Dátum utólag is eltér egymástól, a Dátum a Teljesítési dátum-hoz igazodik (vagy fordítva, ha a Teljesítési dátum üres).
Fontos
Ez a logika szándékosan duplikálva van, sorról sorra, az eyssen_l10n_hu és az eyssen_l10n_hu_sale_stock_delivery_date között — a modulok saját kódkommentjei ezt kifejezetten megemlítik. Ha ez a viselkedés valaha megváltozik, mindkét modult együtt kell frissíteni, különben egy olyan magyar cég, ahol mind a sale_stock, mind az eyssen_l10n_hu telepítve van, de ez a modul hiányzik, pontosan abba a szinkronizálódási hibába futhat bele, amelynek megelőzésére ez a modul íródott.
Konfiguráció¶
Mindkét modul hagyományos Odoo alkalmazás, az menüből telepíthető; egyiknek sincs Beállítások kapcsolója.
A Sale Delivery Status (
eyssen_sale_delivery_status) asale_management, astockés asale_stockmodultól függ. A telepítése önmagában elég a plusz mezők, a lista-/keresőbővítések és a jelentésmenü megjelenéséhez — nincs további beállítási teendő.Az eYssen Sale Stock Delivery Date (
eyssen_l10n_hu_sale_stock_delivery_date) asale_stockés azeyssen_l10n_humodultól függ, és nem települ automatikusan, és más eYssen modul sem igényli. Telepítse kifejezetten minden olyan magyar cégen (ahol azeyssen_l10n_hutelepítve van), amely készlet által vezérelt értékesítési számlázást (sale_stock) is használ — ellenkező esetben az adott adatbázison a helyesbítő számlák kitéve maradnak a fent leírt teljesítésidátum-szinkronizálódási hibának.
Javaslat
A Teljesen szállított és a Szállítási státusz visszaállítása gombokhoz, valamint a rendelés űrlapján lévő szállítási mezőkhöz nem szükséges az értékesítési rendelésekhez való szokásos hozzáférésen túl semmilyen biztonsági csoport — ehhez a funkcióhoz nincs dedikált jogosultság.
Használat¶
Erősítsen meg egy szállítási útvonalú értékesítési rendelést a szokásos módon. Ahogy a szállítmányokat érvényesítik, a szabványos Szállítási státusz, valamint a modul Szállítás % és Utolsó szállítás dátuma mezője automatikusan frissül a rendelés Egyéb infó fülén.
Ha a rendelés minden szállítása törölve lesz, a státusz Törölve-re vált, ahelyett hogy Nem szállított maradna.
Ömlesztett/folyékony áruknál, amelyek sosem érik el pontosan a 100%-ot, kattintson a fejlécben a Teljesen szállított gombra, amint a szállítmány a gyakorlatban teljesnek tekinthető; kattintson később a Szállítási státusz visszaállítása gombra, ha a felülbírálást vissza kell vonni.
Használja a Szűrők és a Csoportosítás: Szállítási státusz opciókat az oldalon, vagy a dedikált áttekintőt, hogy átlássa a szállítások előrehaladását a rendelések között.
Azokon a magyar cégeken, ahol mindkét modul telepítve van, egy számla helyesbítése vagy sztornózása automatikusan összhangban tartja annak Teljesítési dátum és Dátum mezőjét az eredeti számlával — a helyesbítő számlán magán nincs szükség kézi dátumbevitelre.
Szállítási státusz az ügyfélportálon¶
A fent leírt szállítási jelzők az értékesítési rendelés űrlapján, a listákon és a jelentés-áttekintőn élnek — ezek back-office képernyők, amelyeket egy webshopvásárló sosem lát. A kis kísérőmodul, a sale_delivery_status_ws ugyanezeket a jelzőket a weboldal ügyfélportálján is közzéteszi, így a bejelentkezett ügyfelek maguk követhetik saját szállításaik előrehaladását, és nem kell az ügyfélszolgálathoz fordulniuk. Tisztán megjelenítő modul: nem ad hozzá sem beállítást, sem menüt, sem új mezőt — a be- és kikapcsolót az menüből történő telepítése jelenti —, és igényli az eyssen_sale_delivery_status modult (amelynek mezőit megjeleníti), a sale_stock modult és a Weboldal alkalmazást. Nem települ automatikusan; kifejezetten azokon az adatbázisokon kapcsolja be, ahol a webshop vásárlóinak látniuk kell a szállítás előrehaladását.
Rendelések listája¶
Amikor egy ügyfél bejelentkezik a weboldalon, és megnyitja a menüpontot, a rendelések listája két plusz oszlopot kap az Összesen oszlop után:
Szállítási státusz — rendelésenként egy színes, kapszula alakú jelvény. A portál szándékosan rövidebb, ügyfélbarát megfogalmazást használ, mint a backend szállítási státusz címkéi:
Backend szállítási státusz
Portáljelvény
Jelvény színe
Teljesen szállított
Kiszállítva
Zöld
Részlegesen szállított
Részleges
Sárga
Megkezdve
Megkezdve
Kék
Nem szállított
Függőben
Szürke
Törölve
Törölve
Piros
Szállítás % — a rendelés szállítási százaléka, egész számra lefelé kerekítve (jelenleg egy sablonhiba miatt dupla százalékjellel jelenik meg, pl. 42%% — lásd a megjegyzést a rendelés részletező oldala szakaszban). Csak azoknál a rendeléseknél jelenik meg, amelyeknek egyáltalán van szállítási státuszuk.
Megjegyzés
Keskeny (telefonszélességű) képernyőn mindkét oszlop rejtve marad, ugyanúgy, ahogy a szabványos portállisták (például a számlák listája) is elhagyják a másodlagos oszlopokat az olvashatóság megőrzése érdekében.
Rendelés részletező oldala¶
Ha ebből a listából megnyit egy rendelést, a rendelés portáloldalának Értékesítési információ táblázata legfeljebb három plusz sorral bővül:
Szállítási státusz: — ugyanaz a színes jelvény, mint a rendelések listájában;
Kiszállítva: — zöld folyamatsáv, amelynek felirata a rendelés szállítási százaléka;
Utolsó szállítás: — a legutóbbi befejezett szállítás dátuma (napon belüli időpont nélkül).
Megjegyzés
A modul jelenlegi verziójában a százalék dupla százalékjellel jelenik meg (pl. 42%%) — mind a rendeléslista Szállítás % oszlopában, mind ennek a sávnak a feliratában és szélességében. Mivel a 42%% nem érvényes CSS-szélesség, a sáv vizuálisan nem töltődik fel a szállítási százalékig, amíg ezt a sablonhibát ki nem javítják.
Minden sor csak akkor jelenik meg, ha a mögöttes értéke már be van állítva: egy ajánlat, vagy egy megerősített rendelés, amelyhez még nem tartozik szállítási megbízás, egyiket sem mutatja, a folyamatsáv sora pedig rejtve marad, amíg a kiszállított százalék még nulla.
Mivel az értékek közvetlenül az eyssen_sale_delivery_status által karbantartott mezőkből származnak, a portál mindig egyezik a back office-szal — a portál eltérő megfogalmazásától eltekintve. Egy kézzel Teljesen szállított-ra kényszerített rendelés a zöld Kiszállítva jelvényt mutatja az ügyfélnek, egy olyan rendelés pedig, amelynek minden szállítását törölték, a piros Törölve jelvényt.
Hatókör és modulok¶
eyssen_sale_delivery_status— hozzáadja a Szállítás %, az Utolsó szállítás dátuma és a Törölve szállítási státuszt az értékesítési rendelésekhez, a kézi Teljesen szállított felülbírálást, a szállítási státusz szerinti keresőszűrőket és listaoszlopokat, az áttekintőt, valamint a Tényleges ügyfél-átvételi dátum mezőt a szállításokon.eyssen_l10n_hu_sale_stock_delivery_date— összhangban tartja egy magyar helyesbítő/sztornó számla Teljesítési dátum mezőjét (teljesítési dátum) az eredeti számlával, függetlenül az értékesítési rendelés készlet által vezérelt tényleges dátumától, így azeyssen_l10n_huáltal kikényszerített NAV könyvelésidátum/teljesítésidátum-szabály továbbra is érvényben marad Könyvelés időpontjában.sale_delivery_status_ws— a bejelentkezett ügyfeleknek megjeleníti a szállítási státuszt (ügyfélbarát megfogalmazásban) és a szállítási százalékot a weboldalportál Rendeléseim listáján és a rendelés saját portáloldalán egyaránt, továbbá az utolsó szállítás dátumát kizárólag a rendelés saját portáloldalán.