Legacy · Access · VBA · DBF

Migracja starych programów: Access, VBA i DBF do SQL

Stara aplikacja często nadal trzyma ważny proces. Zamiast obiecywać natychmiastową wymianę, mogę najpierw udokumentować zależności, zabezpieczyć dane i wydzielić jeden potrzebny krok.

  • Access / VBA
  • DBF i aplikacje desktopowe
  • stare eksporty Excel
  • SQL
  • raporty i panele odczytowe
  • systemy dziedzinowe

Kiedy to jest Twój przypadek

Brzmi znajomo?

Firma pracuje na programie, który powstał lata temu: baza Access z makrami VBA, aplikacja czytająca pliki DBF, eksport do Płatnika, raport działający na jednym komputerze. Nikt tego nie chce ruszać, bo działa, i wszyscy się boją, bo nie ma dokumentacji ani kontaktu do autora. Zaczynam od kopii i opisania zależności, a nie od wymiany systemu.

  • Ważny raport działa tylko na komputerze jednej osoby i nikt nie zna całej procedury.

  • Plik Access, arkusz VBA albo baza DBF jest potrzebna, ale nie ma już wygodnego wsparcia.

  • Firma chce wyciągnąć dane do SQL lub raportu, lecz boi się naruszyć działającą aplikację.

  • Nowy system ma powstać później, ale dziś trzeba bezpiecznie obsłużyć jeden konkretny proces.

01

Migracja bazy DBF do SQL bez zatrzymywania firmy

Pliki DBF (dawne FoxPro, Clipper, stare programy magazynowe) da się przenieść do SQL Servera lub PostgreSQL etapami: najpierw kopia i inwentaryzacja tabel, potem mapowanie pól i typów, potem migracja próbna z porównaniem liczności i sum kontrolnych. Stare źródło zostaje do czasu, aż wynik przejdzie test.

02

Access, VBA i Płatnik po zmianie Office albo systemu

Po przejściu z Office 32-bit na 64-bit przestają działać deklaracje API, sterowniki ODBC i część makr. Podobnie bywa z eksportem do Płatnika, gdy zmieni się format pliku. Naprawiam jeden krytyczny raport albo jeden eksport, zamiast przepisywać całą aplikację.

03

Stary program jako źródło danych dla nowego systemu

Aplikacja legacy nie musi zniknąć, żeby dane trafiły do sklepu, portalu B2B albo panelu raportowego. Ograniczam zakres do jednego modelu danych, ustalam bezpieczny sposób odczytu i buduję na tym warstwę, którą można rozwijać dalej.

Nie musisz od razu wymieniać całej aplikacji.

Najpierw zabezpieczam kopię i ustalam, co naprawdę jest potrzebne. Czasem wystarczy raport albo eksport, a czasem warto przygotować migrację.

01

Access / VBA po przejściu z Office 32 na 64 bit

Sprawdzam deklaracje, sterowniki, połączenia i makra, które przestały działać po zmianie Office. Celem może być przywrócenie jednego krytycznego raportu, nie przebudowa całego systemu.

02

DBF → SQL z porównaniem danych

Przy migracji starej bazy ustalam tabele, klucze i pola używane w procesie, a potem porównuję liczność oraz wartości w kopii testowej. Nie zaczynam od usuwania starego źródła.

03

Delphi, VB6, ODBC i lokalne aplikacje desktopowe

Jeśli program działa tylko na jednym komputerze albo zależy od starego sterownika, mogę zacząć od inwentaryzacji, odczytu danych i opisania zależności.

04

Raport z programu, którego nikt nie chce przepisywać

Wydzielam potrzebne pola i reguły z istniejącej aplikacji, żeby przygotować raport lub eksport bez naruszania reszty procesu.

05

Stary system jako jeden koniec nowej integracji

Stary program może zostać źródłem danych dla portalu B2B, ERP albo własnego API. Najpierw ograniczam zakres do jednego modelu danych i sprawdzam sposób odczytu.

Co dostajesz

Zaczynam od małego zakresu, który można sprawdzić.

Dobieram narzędzia do konkretnego przepływu. Nie zakładam z góry wymiany systemu ani budowy dużej platformy.

01

Inwentaryzacja i kopia

Zaczynam od tego, co istnieje: plików, baz, wersji, zależności i sposobu wykonywania procesu.

  • kopia robocza i zakres dostępu
  • tabele, pliki oraz połączenia
  • osoby i kroki krytyczne dla procesu
02

Odczyt i dokumentacja

Opisuję struktury i reguły w uzgodnionym zakresie, żeby można było rozmawiać o danych bez zgadywania.

  • schemat danych
  • pola używane w raporcie
  • ręczne kroki i wyjątki
03

Raport lub nowy punkt dostępu

Jeśli wystarcza odczyt, zaczynam od raportu, eksportu albo małego panelu zamiast pełnej wymiany systemu.

  • odczyt z ograniczonego zakresu
  • eksport do uzgodnionego formatu
  • raport z kontrolą liczności
04

Plan etapowej migracji

Gdy modernizacja ma sens, dzielę ją na dane, procesy i testy, z warunkiem akceptacji przed kolejnym etapem.

  • mapowanie do nowego modelu
  • test porównawczy
  • plan powrotu i dokumentacja decyzji

Jak pracuję

Zakres i cena przed startem, potem wdrożenie etapami.

Pierwsza rozmowa jest bezpłatna. Cenę podaję po zobaczeniu procesu, nie z cennika. Jeśli da się to rozwiązać prościej albo gotowym narzędziem, mówię o tym na początku.

  1. 01

    Ustalamy, co musi działać nadal

    Najpierw zapisujemy najważniejszy proces i sytuacje, których nie wolno przerwać w trakcie analizy.

  2. 02

    Pracuję na kopii lub odczycie

    Zakres dostępu ustalamy pod cel. Nie modyfikuję produkcyjnych danych bez osobnego uzgodnienia.

  3. 03

    Porównuję wynik ze źródłem

    Raport lub eksport ma mieć sprawdzalną liczbę rekordów, pola kontrolne i listę wyjątków.

  4. 04

    Wybieramy następny mały krok

    Może nim być kolejny raport, adapter, migracja jednego modułu albo decyzja o pozostawieniu systemu bez zmian.

Zakres

Najpierw jeden przepływ, potem reszta. Zakres, kolejność prac i jedna cena na piśmie, zanim zacznę.

Dane

Logi, raport odrzuconych rekordów i dokumentacja. Przy aktualizacji ERP wiadomo, co się stało i gdzie szukać.

Opieka

Po wdrożeniu zostaję do obsługi i rozwoju. Płatna miesięcznie, bez umowy rocznej. Rozmawiasz ze mną, nie z działem.

Granice odpowiedzialności

Ustalamy je, zanim zacznę.

  • Nie wykonuję nieautoryzowanego reverse engineeringu ani nie obchodzę licencji, haseł lub zabezpieczeń.
  • Właściciel systemu potwierdza prawo do dostępu, eksportu i przetwarzania danych.
  • Nie obiecuję przepisania całej aplikacji bez poznania kodu, danych, zależności i krytycznych wyjątków.
  • Migracja nie zaczyna się od usunięcia starego systemu; najpierw potrzebny jest test i zaakceptowany punkt powrotu.

Przejmuję też rozwiązania, które zrobił ktoś inny: najpierw diagnoza cudzego kodu i logów, potem możliwie mała poprawka, na końcu dokumentacja przepływów i sposobu restartu.

Kontakt

Opisz, co dziś nie działa.

Wystarczy krótki opis: jakie systemy są zaangażowane, co robisz ręcznie i jaki wynik chcesz sprawdzać. Odpowiadam w 24 h. Rozmawiasz bezpośrednio ze mną.