Baza jest dostępna technicznie i to kusi. Granica przebiega tam, gdzie kończy się odczyt.
Odczyt
Bezpieczny i użyteczny. Podstawa raportów, kontroli jakości danych i integracji jednokierunkowych.
Poza zestawieniami odczyt sprawdza się w porządkowaniu kartotek: wyszukiwaniu duplikatów, pozycji bez kodu, kontrahentów z niekompletnymi danymi. To praca, której w standardowych narzędziach zwykle nie ma, a która zwraca się od razu. Zastosowania raportowe opisuje szerzej tekst o raportach własnych.
Zapis
Pomija kontrole, wyliczenia i powiązania między dokumentami. Skutki ujawniają się przy zamknięciu okresu albo inwentaryzacji.
Warto rozumieć, dlaczego tak się dzieje. Dokument w systemie to nie jeden wpis, tylko zestaw powiązanych zapisów: pozycje, stan magazynowy, rozrachunek, numeracja, ewidencja podatkowa. Program pilnuje, żeby powstały razem. Polecenie wpisane z boku zmienia jeden fragment i zostawia resztę bez zmian. Nikt tego nie zauważy, dopóki suma się nie rozjedzie.
Konto o ograniczonych prawach
Osobne, tylko do odczytu, tylko do potrzebnych tabel. Korzystanie z konta administracyjnego nie ma uzasadnienia.
Osobne konto ma jeszcze jedną zaletę: widać, które obciążenie pochodzi od integracji, a które od pracy użytkowników. Przy szukaniu przyczyny spowolnienia to pierwsza informacja, której się szuka.
Warunki wsparcia
Ingerencja bezpośrednia może oznaczać utratę pomocy producenta. Warto sprawdzić, zanim ktokolwiek napisze pierwsze polecenie.
To pytanie zadaje się dostawcy przed rozpoczęciem prac, a nie po awarii. Odpowiedź bywa różna dla odczytu i dla zapisu, więc warto pytać o oba przypadki osobno i zachować odpowiedź na piśmie.
Zmiany struktury
Aktualizacje przebudowują tabele. Każde rozwiązanie oparte na bezpośrednim odczycie wymaga potem sprawdzenia.
Najgorszy wariant to zapytanie, które po zmianie wersji nadal działa, ale zwraca inne dane — bo pole zaczęło znaczyć coś innego albo doszedł nowy rodzaj dokumentu. Dlatego kontrola po aktualizacji polega na porównaniu wyniku z okresem sprzed zmiany, a nie na sprawdzeniu, czy raport się otworzył.
Obciążenie
Zapytania obejmujące dużą część bazy w godzinach pracy spowalniają system wszystkim. Kopia do analiz rozwiązuje to trwale.
Jeżeli firma odczuwa spowolnienie, warto najpierw sprawdzić, co i jak często odpytuje bazę. Zbyt częste odpytywanie przez integracje jest jedną z typowych przyczyn opisanych przy wydajności systemu. Bywa, że wystarczy zmienić rytm odpytywania z minutowego na kilkuminutowy, żeby problem zniknął.
Kiedy w ogóle nie sięgać do bazy
Gdy dane da się pobrać drogą przewidzianą przez producenta. Rozwiązanie oparte na mechanizmach systemu przetrwa aktualizacje, rozwiązanie oparte na strukturze tabel wymaga sprawdzenia po każdej z nich. Ten koszt ponosi się co pół roku, więc warto go policzyć na starcie, a nie po fakcie.
Praktyczna zasada brzmi więc: baza do patrzenia, mechanizmy producenta do działania. Odczyt tak, o ile jest ograniczony uprawnieniami i opisany. Zapis nie, niezależnie od tego, jak prosta wydaje się zmiana i jak bardzo goni termin. Kilka minut zaoszczędzonych na skrócie potrafi kosztować dni pracy przy uzgadnianiu stanów. Szerzej o dopuszczalnych drogach przekazywania danych piszemy w tekście o wymianie danych z systemem.