II Opis techniczny e-Planus Retail®
1. Serwisy e-Planus® Retail
c. Zarządzanie cenami
Ceny w systemie są również zarządzane przez serwisy asynchroniczne, co daje wielokrotną
możliwość użycia tych samych procedur, niezależnie od źródła zmiany cen (wewnętrzne
lub zewnętrzne). Zarówno sprzedaż jak i przesyłanie cen są zarządzane przez ten
sam mechanizm.
W e-Planus proces centralnego zarządzania cenami polega na okresowym sprawdzaniu
kalendarzy cen i publikowanie startów i zakończeń zmian cen (daty i kwoty) dla docelowych
grup obiektów. Zmiany cen mogą być zarządzane na następujących poziomów:
- Cała organizacja,
- Formuła,
- Grupa obiektów,
- Pojedyńczy obiekt.
Każdy obiekt, zależnie od konfiguracji, subskrybuje odpowiednie kanały publikacji.
Przychodzące komunikaty są przetwarzane przez osobne obiekty równolegle dla każdego
sklepu. Każdy sklep posiada swój własny stos cenowy. Oznacza to, że tylko zmiany
cen są publikowane w systemie i komponent warstwy sklepu decyduje jaka zmiana będzie
obowiązująca po zakończeniu obowiązywania ostatnio używanej ceny. Takie podejście
daje możliwość implementacji skomplikowanych schematów zarządzania cenami bez ryzyka
przeciążenia systemu.
d. Generacja zamówień
Serwis generowania zamówień jest używany zarówno z interfejsu końcowego użytkownika
(umożliwienie na żądanie wygenerowania propozycji zamówienia) jak i przez serwis
pracujący w tle oparty na kalendarzu zamówień. Algorytm generowania zamówień może
być korygowany przez informacje o sezonowości. System uwzględnia dwa schematy sezonowości:
- Sezonowość typu I - podczas okresów sezonowych, wyliczana w oparciu o wysokość średniej
sprzedaży, ilość towaru do zamówienia ulega zwiększeniu lub zmniejszeniu o zdefiniowany
procent. Taki schemat ma zastosowanie dla zamawiania napojów, lodów i innych towarów
sprzedawanych przez cały rok, na które jednak popyt wzrasta w pewnych okresach.
- Sezonowość typu II - schemat ma zastosowanie dla towarów, które praktycznie są sprzedawane
w krótkich okresach (np. ozdoby choinkowe). Dla takich towarów wyliczanie średniej
sprzedaży na początku jak i na końcu okresu sprzedaży jest bezcelowe. Dla takich
towarów ilość do zamówienia obliczana jest na początku okresu sprzedaży, a po jego
zakończeniu towary te praktycznie przestają być zamawiane.
e. Obsługa systemu kasowego (Front Office)
System może obsługiwać różne systemy kasowe w tej samej instalacji. Każdy sklep
może posiadać inny system kasowy. Wszystkie systemy kasowe są obsługiwane przez
taki sam mechanizm, różnice mogą dotyczyć:
- Formatu plików,
- Zakresu informacji wymienianych z systemem Back Office,
- Poziomu agregacji informacji o sprzedaży (paragony i dzienna sprzedaż).
Standardowa instalacja może obsługiwać następujące systemy kasowe:
- System e-Planus® Retail Front Office,
- IBM SA,
- Siemens Position.
Inne interfejsy obsługi systemów kasowych mogą zostać przygotowane na żądanie użytkownika.
Poniżej opisana została komunikacja z systemem kasowym na podstawie e-Planus
®
Front Office. SKG zapewnia własny system kasowy, oparty na Linux, którego jednym
z głównych założeń jest zmniejszenie liczby urządzeń pracujących w sklepie do minimum.
Każda kasa jest samodzielnym urządzeniem, pracującym niezależnie od innych urządzeń
i komunikującym się z centralnym systemem Back Office jeśli jest to potrzebne. Jeśli
nie, dane są gromadzone w lokalnej bazie danych i czekają na możliwość przesłania
do systemu centralnego.
Z systemem e-Planus
® Back Office kasy komunikują się przez serwis Web,
używając protokołu SOAP. Komponent umożliwiający pracę serwisu Web współpracuje
z serwisem e-Planus
® opartym o komunikaty. Każda kasa posiada własną
kolejkę ładowania danych. Procesy na kasie wysyłają zapytanie do serwisu Web, czy
nie oczekują tam dla nich w kolejce jakikolwiek komunikaty. Kanał ten może być używany
nie tylko do ładowania danych, ale także do przesyłania różnych poleceń do kasy
a nawet aktualizacji wersji oprogramowania kasowego. Komunikaty są odczytywane z
kolejki w dwóch fazach, w trybie potwierdzenia. W pierwszym etapie zawartość komunikatu
jest przekazywana do kasy, ale jeszcze czeka w kolejce na potwierdzenie procesu.
Po pozytywnym zatwierdzeniu sygnał jest przesyłany do serwisu Web i komunikat jest
na stałe usuwany z kolejki. Jeżeli komunikat nie zostaje potwierdzony (np. kasa
może być restartowana podczas procesu) zostanie on przesłany w następnym poleceniu.
Jeżeli kasa nie pracuje przez dłuższy czas, wszystkie wysłane komunikaty czekają
w kolejce i są gotowe do wysłania, gdy kasa rozpocznie pracę.
Schemat komunikacji systemu kasowego e-Planus® Retail
Podobna technika została zastosowana do wysyłania informacji z kasy do systemu Back
Office. Dla takiego procesu istnieje wspólna kolejka w sklepie, która jest ładowana
poprzez serwis Web ze wszystkich kas w sklepie. Informacja jest odczytywana z kolejki
przez konfigurowalną liczbę wątków, umożliwiając właściwą regulację ładowania systemu.
Paragony odczytane z kolejki są składowane w bazie paragonów do dalszej obsługi
i w tym samym procesie agregowane do jednego dokumentu sprzedaży dla sklepu. Także
informacja o płatnościach z paragonów jest agregowana w przepływie dokumentów kasowych
umożliwiając automatyczne przygotowanie raportów przepływu gotówki.