KCDRS

Instrukcja przygotowania KCFirmy, konfiguracji robota i automatycznej kontroli opakowań kaucyjnych.

Wersja programu 1.0.0.0 KCFirma / Windows / Win32 Integracja Zwrotka.com opcjonalna
01 · Informacje ogólne

Do czego służy KCDRS

KCDRS wspomaga obsługę opakowań kaucyjnych w KCFirma. Program może reagować na nowo utworzone lub zmodyfikowane kartoteki towarowe, sprawdzać wymagane opakowanie i automatycznie doprowadzać przypisanie w bazie do właściwego stanu.

Automatyczna korekta

Po zmianie kartoteki robot może dodać brakujące opakowanie, usunąć opakowanie, którego być nie powinno, albo zmienić błędne przypisanie.

Zwrotka.com

Najpewniejszy wariant wykorzystuje API Zwrotka.com do ustalenia frakcji opakowania na podstawie kodu EAN.

Raport zgodności

Można hurtowo sprawdzić istniejące towary w wybranej grupie i otrzymać raport HTML bez modyfikowania kartotek.

Główne okno programu KCDRS
Główne okno KCDRS. Robot może pracować cyklicznie w tle; log pokazuje bieżący stan i wykonane operacje.
02 · Zakres działania

Trzy funkcje programu — nie należy ich mylić

1. Praca bieżąca — lokalna

Nowy lub zmodyfikowany towar trafia do mechanizmu „Towary dla DRS”. KCDRS ustala opakowanie na podstawie skonfigurowanej pary grupa towarowa → opakowanie.

2. Praca bieżąca — API

Po pojawieniu się informacji o zmianie kartoteki KCDRS sprawdza EAN w Zwrotka.com i na tej podstawie dodaje, usuwa albo zmienia opakowanie w KCFirma.

3. Raport hurtowy

Wybrana grupa jest sprawdzana towar po towarze w API Zwrotka.com. Ta funkcja niczego nie zmienia w bazie. Wynik trafia do raportu HTML.

Najważniejsza różnicaPraca bieżąca służy do automatycznej korekty kartotek. Raport serwisowy służy wyłącznie do kontroli istniejących danych.
03 · Środowisko

Wymagania

  • program KCFirma i dostęp do jej bazy .dan lub .mdb,
  • 32-bitowy sterownik Microsoft Access/ACE zgodny z aplikacją Win32,
  • prawo odczytu i zapisu bazy oraz katalogu programu KCDRS,
  • wspólny katalog wymiany dostępny zarówno dla KCSerwera, jak i KCDRS,
  • dla trybu API: aktywna usługa Zwrotka.com, połączenie z Internetem oraz ID/Secret przekazane przez firmę Zwrotka lub dostępne w panelu market.ezwrotka.com,
  • dla silnika Indy: dołączone do archiwum biblioteki OpenSSL obok programu.
Przed pierwszym wdrożeniem wykonaj kopię bazy.KCDRS modyfikuje kartoteki towarowe, a część funkcji serwisowych może zmieniać ustawienia wielu grup jednocześnie.
04 · Przygotowanie KCFirmy

Utwórz towary reprezentujące opakowania kaucyjne

Przed konfiguracją robota w KCFirma muszą istnieć towary reprezentujące opakowania, które KCDRS będzie przypisywał do produktów. Dla typowego wdrożenia należy przygotować co najmniej trzy pozycje odpowiadające podstawowym frakcjom:

  • Butelka PET kaucja — opakowania z tworzywa,
  • Puszka kaucja — opakowania metalowe,
  • Butelka szkło kaucja — opakowania szklane.

Nazwy są przykładowe. Istotne jest, aby pozycje istniały w kartotece i można było je jednoznacznie wskazać w konfiguracji KCDRS.

05 · Mechanizm wykrywania zmian

Utwórz w KCFirma mechanizm „Towary dla DRS”

KCFirma nie udostępnia KCDRS znacznika czasowego informującego, że kartoteka towarowa została właśnie utworzona lub zmieniona. Dlatego KCDRS wykorzystuje istniejący mechanizm eksportu danych dla etykiet elektronicznych / wag i sprawdzarek cen. Mechanizm ten tworzy pliki informujące o towarach, które wymagają ponownego przetworzenia.

  1. W KCFirma przejdź do Administracja → Konfiguracja → Sprzęt → Wagi i sprawdzarki cen.
  2. Utwórz nową konfigurację urządzenia, np. pod nazwą Towary dla DRS. Nazwę warto zapamiętać — pojawi się później w ustawieniach grup i w funkcji serwisowej KCDRS.
  3. Skonfiguruj urządzenie zgodnie z przykładem. Numer „WAGA” może być dowolnym wolnym numerem.
  4. Ustaw katalog wymiany, np. D:\TowaryDlaDRS. Katalog musi być dostępny dla procesu KCSerwera oraz dla konta uruchamiającego KCDRS.
  5. Ten sam katalog wskaż później w KCDRS jako Folder Plików Etykiet.
Konfiguracja urządzenia Towary dla DRS
Przykładowa konfiguracja mechanizmu. Najważniejszy jest katalog wymiany — musi być wspólny dla KCSerwera i KCDRS.
Pliki CSV generowane przez KCFirma
Przykładowy katalog z plikami generowanymi przez mechanizm KCFirma.
06 · Kartoteki

Włącz wysyłanie zmian dla odpowiednich grup towarowych

Aby utworzenie lub modyfikacja kartoteki skutkowała pojawieniem się informacji w folderze „Towary dla DRS”, odpowiednie grupy towarowe muszą mieć włączone utworzone urządzenie.

  1. Wejdź w Kartoteki → Grupy towarowe.
  2. Wybierz grupę i użyj funkcji Popraw.
  3. Przejdź do zakładki Wagi i sprawdzarki cen.
  4. Zaznacz urządzenie Towary dla DRS i zapisz grupę.
Menu Grupy towarowe w KCFirma
Wejście do kartoteki grup towarowych.
Przy dużej liczbie grup nie trzeba robić tego ręcznie.W KCDRS wybierz Serwis, wskaż urządzenie „Towary dla DRS” i użyj Aktualizuj. Program ustawi flagę tego urządzenia we wszystkich grupach towarowych. Przy setkach grup oszczędza to bardzo dużo czasu.
Aktualizacja urządzenia we wszystkich grupach przez KCDRS
Funkcja serwisowa ustawia wskazane urządzenie we wszystkich grupach. Operacja obejmuje całą bazę grup i powinna być wykonywana świadomie.
07 · Konfiguracja robota

Skonfiguruj KCDRS

Większość ustawień jest wspólna dla obu trybów. Wskaż bazę KCFirma, interwał pracy i wybrany sposób komunikacji HTTP. Następnie skonfiguruj jeden z dwóch sposobów ustalania opakowania.

Zanonimizowana konfiguracja KCDRS
Konfiguracja KCDRS. Dane dostępowe i ścieżka na zrzucie są demonstracyjne.

7.1. Tryb API Zwrotka.com — zalecany

W trybie API KCDRS odczytuje kody EAN z nowych plików utworzonych przez mechanizm KCFirma i pyta Zwrotka.com o właściwą frakcję opakowania. Następnie porównuje wynik z bieżącym stanem kartoteki.

Zmiana kartoteki
KCFirma
Nowy plik
import_*.csv
Sprawdzenie EAN
Zwrotka.com
Korekta opakowania
KCFirma

W sekcji API Zwrotka.com należy połączyć frakcje zwracane przez usługę z przygotowanymi wcześniej towarami-opakowaniami. Przykładowo:

FrakcjaPrzykładowe opakowanie w KCFirma
Tworzywa sztuczne (PET)Butelka PET kaucja
Metal (Puszka)Puszka kaucja
SzkłoButelka szkło kaucja
W trybie API można objąć mechanizmem nawet wszystkie grupy towarowe.KCDRS sam rozpoznaje na podstawie EAN, czy towar wymaga opakowania kaucyjnego. Dzięki temu nie trzeba ręcznie przewidywać, w których grupach pojawią się takie produkty.

7.2. Procedura lokalna

Procedura lokalna nie korzysta z Zwrotka.com. Administrator tworzy w KCDRS powiązania grupa towarowa → opakowanie. Towar z danej grupy otrzymuje skonfigurowane opakowanie.

API Zwrotka.com

  • decyzja oparta na kodzie EAN i danych z usługi,
  • znacznie mniejsze ryzyko błędnego przypisania,
  • możliwość dodania, usunięcia lub zmiany opakowania,
  • wymaga aktywnej usługi i danych API.

Procedura lokalna

  • decyzja oparta wyłącznie na grupie towarowej,
  • prosta i niezależna od Internetu,
  • poprawność zależy od właściwego przypisania towarów do grup,
  • zalecana tam, gdzie struktura grup jest jednoznaczna i dobrze utrzymana.

7.3. Silnik HTTP

KCDRS udostępnia dwa mechanizmy komunikacji z usługą Zwrotka.com:

System — TNetHTTPClient

Preferowany. Jest bardzo szybki i powinien być pierwszym wyborem na nowszych systemach. Jako bezpieczny punkt odniesienia przy wdrożeniu przyjmujemy Windows 10 / Windows Server 2016 i nowsze. Na starszym systemie można go po prostu przetestować — jeśli działa poprawnie, nie ma potrzeby przechodzenia na Indy.

Indy — OpenSSL

Wariant zgodności dla starszych środowisk. Działa wolniej, ale jest wystarczający do bieżącej pracy. Wymaga bibliotek libeay32.dll i ssleay32.dll dostarczonych w archiwum programu.

Podział wersji Windows jest praktycznym zaleceniem, a nie sztywną blokadą programu.Jeżeli tryb systemowy na starszym Windows działa prawidłowo, można go używać. Jeśli pojawiają się błędy TLS/HTTP, przełącz program na Indy.
08 · Praca automatyczna

Co dzieje się po uruchomieniu robota

Po uruchomieniu KCDRS analizuje tylko towary, o których zmianie poinformował mechanizm „Towary dla DRS”. Dzięki temu nie skanuje bez potrzeby całej kartoteki przy każdym cyklu.

W trybie API

  1. KCDRS wykrywa nowy plik import_*.csv.
  2. Odczytuje EAN zmienionego towaru.
  3. Pyta Zwrotka.com o informację dotyczącą opakowania/frakcji.
  4. Porównuje wynik z opakowaniem zapisanym w KCFirma.
  5. Jeżeli opakowania brakuje — dodaje je.
  6. Jeżeli opakowanie jest błędne — zmienia je.
  7. Jeżeli towar nie powinien mieć opakowania, a ma je przypisane — usuwa je.

W trybie lokalnym

KCDRS korzysta z mapowania grup i na jego podstawie ustawia opakowanie właściwe dla grupy. Ponieważ metoda nie sprawdza EAN w zewnętrznym źródle, jej poprawność zależy od jakości struktury grup towarowych.

09 · Administracja

Funkcje serwisowe

Okno Serwis zawiera dwie niezależne funkcje: masową konfigurację urządzenia w grupach oraz hurtowy raport zgodności.

Okno opcji serwisowych KCDRS
Opcje serwisowe KCDRS.

Aktualizacja urządzeń

Wybierz z listy urządzenie utworzone wcześniej w Wagi i sprawdzarki cen, np. „Towary dla DRS”, i kliknij Aktualizuj. KCDRS ustawi wskazane urządzenie jako aktywne we wszystkich grupach towarowych.

Operacja dotyczy wszystkich grup.Przed wykonaniem na bazie produkcyjnej warto mieć aktualną kopię zapasową. Funkcja została przygotowana właśnie po to, aby nie zaznaczać urządzenia ręcznie w dziesiątkach lub setkach grup.
10 · Kontrola danych

Hurtowy raport zgodności istniejących kartotek

Raport jest przeznaczony do sprawdzania towarów, które istniały w bazie przed wdrożeniem KCDRS albo których poprawność chcemy skontrolować ponownie.

  1. Otwórz Serwis.
  2. Wybierz grupę towarową do sprawdzenia.
  3. Kliknij Raport.
  4. KCDRS sprawdzi towary z EAN w API Zwrotka.com i porówna wynik z opakowaniem zapisanym w KCFirma.
  5. Po zakończeniu zapisze raport HTML w katalogu raporty.
Raport nie modyfikuje żadnej kartoteki.Jest to funkcja diagnostyczna. Ewentualne niezgodności można później poprawić świadomie lub doprowadzić do ponownego przetworzenia kartoteki przez mechanizm bieżący.
Przykładowy wynikZnaczenie
ZgodnePrzypisanie w KCFirma odpowiada danych z API.
Brak opakowaniaAPI wskazuje kaucję, a kartoteka nie ma opakowania.
Błędne przypisanieW kartotece wskazane jest inne opakowanie niż wynikające z API.
Nadmiarowe opakowanieAPI nie wskazuje kaucji, a towar ma opakowanie.
Brak kodu paskowegoBrak EAN uniemożliwia sprawdzenie online.
Uruchomienie raportu zgodności w KCDRS
Wybór grupy i uruchomienie raportu zgodności.
Raport bardzo intensywnie korzysta z API Zwrotka.com.Dla każdego sprawdzanego towaru wykonywane jest zapytanie do usługi. Nie uruchamiaj raportów bez potrzeby ani wielokrotnie dla dużych grup.
11 · Ochrona danych

Bezpieczeństwo i dobre praktyki

  • regularnie wykonuj kopie bazy KCFirma, szczególnie przed funkcjami serwisowymi,
  • nie uruchamiaj wielu kopii KCDRS dla tej samej bazy i tego samego katalogu wymiany,
  • ogranicz dostęp NTFS do katalogu programu — plik KCDRS.ini może zawierać ID i Secret API,
  • nie publikuj ani nie wysyłaj pliku INI wraz ze zgłoszeniami serwisowymi,
  • po zmianie mapowań wykonaj kontrolny raport reprezentatywnej grupy,
  • przy kopiowaniu bazy lub zmianach konfiguracyjnych zatrzymaj robota.
ID i Secret Zwrotka.com są danymi poufnymi.Zrzuty ekranu użyte w tej instrukcji zawierają wyłącznie dane demonstracyjne. Nie udostępniaj własnych danych dostępowych osobom nieupoważnionym.
12 · Diagnostyka

Najczęstsze problemy

ObjawCo sprawdzić
Brak połączenia z baząŚcieżkę do pliku, prawa użytkownika oraz obecność 32-bitowego silnika Access/ACE.
Nowe/zmienione towary nie są analizowaneCzy grupa ma zaznaczone urządzenie „Towary dla DRS”, czy KCSerwer tworzy pliki oraz czy KCDRS obserwuje ten sam folder.
Brak plików w folderze wymianyKonfigurację urządzenia w KCFirma i zaznaczenie urządzenia w grupach towarowych.
Błąd API Zwrotka.comID, Secret, adresy usług, dostęp do Internetu i silnik HTTP. W razie problemu z trybem systemowym przetestuj Indy.
Indy nie łączy się z usługąCzy obok EXE znajdują się właściwe biblioteki OpenSSL dostarczone z programem.
Raport trwa długoTo normalne dla dużej grupy — każdy towar z EAN wymaga osobnego zapytania do API.
13 · Odbiór wdrożenia

Checklista

KCFirma

  • Utworzono towary-opakowania PET, metal i szkło.
  • Utworzono urządzenie „Towary dla DRS”.
  • Ustawiono katalog wymiany dostępny dla KCSerwera i KCDRS.
  • Urządzenie zaznaczono w wymaganych grupach albo wykonano masową aktualizację z KCDRS.

KCDRS

  • Wskazano poprawną bazę KCFirma.
  • Wybrano tryb API lub procedurę lokalną.
  • W trybie API wpisano właściwe dane Zwrotka.com.
  • Zdefiniowano mapowania frakcji lub grup.
  • Folder plików etykiet wskazuje katalog skonfigurowany w KCFirma.
  • Wykonano próbę na kilku kartotekach i sprawdzono wynik w bazie.
  • Wykonano raport kontrolny dla przykładowej grupy.
Wdrożenie jest zakończone dopiero po potwierdzeniu wyniku w KCFirma.Sam status „Pracuje” oznacza, że robot działa, ale pierwsze wdrożenie powinno zostać zweryfikowane na rzeczywistych kartotekach i w raporcie.