Bądźmy szczerzy – nie każdą czynność należy automatyzować. Częstokroć koszt automatyzacji przewyższa osiągnięte korzyści, zwłaszcza w przypadku zadań wykonywanych sporadycznie. Jeśli jednak wykonujemy jakieś podobne prace lub chcemy zapewnić sobie powtarzalność osiąganych wyników, warto nad automatyzacją zastanowić się poważniej.
Z problemem powtarzalnych zadań borykał się jeden z moich Klientów. W początkowym okresie wdrożenia nowego systemu finansowo-księgowego importy dokumentów sprzedaży dokonywane były ręcznie. Wiązało się to z przetwarzaniem plików, wyszukiwaniem w nich błędów, dodawaniem nowych kontrahentów, scalaniem i dzieleniem danych – jednym słowem z ogromną liczbą powtarzalnych czynności. O ile dla takiej operacji wykonywanej raz w miesiącu można się jeszcze zastanawiać, czy należy ją automatyzować (moim zdaniem – tak!), o tyle dla dziesięciu importów miesięcznie, wykonywanych z różnych źródeł i w różnych formatach, odpowiedź staje się oczywista. Doszło do tego, iż w chwili otrzymania plików do zaimportowania dział IT Klienta dosłownie „korkował się” na kilka dni. Nie bez znaczenia jest również fakt, iż z uwagi na słabo udokumentowany przebieg procesu niemożliwe było przekazanie obowiązków między pracownikami.
Moim zadaniem stało się uporządkowanie tego procesu i dostarczenie Klientowi wygodnego i wydajnego narzędzia do przetwarzania danych z źródeł zewnętrznych. Dodatkowym celem, jaki sobie postawiliśmy, było takie przygotowanie aplikacji, by ewentualne modyfikacje importów, dodawanie nowych źródeł, itp. wykonywane były samodzielnie przez personel działu IT Klienta – a więc konfiguracja musiała być maksymalnie elastyczna.
W pierwszym etapie przeprowadziłem analizę istniejących importów. Opracowana w ten sposób dokumentacja stała się podstawą przygotowania ujednoliconego procesu przetwarzania importowanych dokumentów sprzedaży.
W etapie drugim, zgodnie z przyjętymi wyżej założeniami, przygotowałem niewielką aplikację, której zadaniem było dokonywanie importów. Przebieg importu, wykonywane kroki, lokalizacja i format danych wejściowych, ich walidacja i zgłaszane komunikaty zaszyte zostały w plikach konfiguracyjnych. Interfejs aplikacji tworzony jest dynamicznie na podstawie plików konfiguracyjnych, dzięki czemu możliwe jest wydzielenie części importów i przekazanie ich wyłącznie uprawnionym do tego użytkownikom, znajdującym się bezpośrednio w dziale finansowo-księgowym.
Korzyści dla Klienta: