Skip to content

Billing & finance

Performance breakthrough & rescue

Industry
Financial services
Status
Optimized & migrated
Duration
12 months
Author
Bernhard Reiter
Published

We took over a failed migration (DOS → VFP9/VFX). Through deep VFP expertise, including targeted Rushmore optimization of the queries, we reduced the runtime of a critical billing process from 20 hours to 4 hours. After migrating the full application and moving to PostgreSQL, runtime dropped to under 15 minutes.

Questions that come up in exactly this kind of project

The following points are regularly decisive for this type of legacy system - and the reason a migration rarely fails because of the programming language.

Our DBFs are a mess (codepages, 'deleted' flag, memos)...

That is the normal case. Our process includes a deep data audit. We know how to migrate `Memo` fields, correctly handle `codepages` (character sets such as Windows-1252) and preserve the semantics of the `SET DELETED` command. We clean up organically grown structures and move them into a clean relational SQL schema, including proper `NULL` handling instead of empty strings. That also resolves historical `codepage` issues and enables real `UTF-8` support, for example for German and Chinese. We are equally familiar with `ODBC` pitfalls such as `varchar(max)` issues and address them during data model refactoring.

What about VFP specifics such as `SET ANSI`/`EXACT`?

These commands fundamentally change how VFP compares data, for example `SET EXACT` for string comparisons. We understand that semantics in detail. During the audit, we identify those `SET` commands and preserve the behavior through `golden master` tests, meaning automated test cases that validate the legacy behavior 1:1 so the new system remains functionally identical.

Our app uses a VFP framework (Acodey, Visual Extend). Is that a problem?

Quite the opposite. That is an advantage. We know these architectures well. Our expertise explicitly covers migrations of applications built on established VFP frameworks such as Visual Extend (VFX) or component libraries like Acodey (from ProLib). We understand how those frameworks work, including the "magic" parts, and can transfer their specific logic into modern, framework-independent structures.

How do you safeguard performance on the web? VFP is very fast locally.

That is a valid concern. The gap between local DBFs and web latency is real. We address performance through (1) a clean API architecture instead of direct database access, (2) intelligent caching of master data and (3) optimized queries and index design. Together with you, we define performance targets (KPIs) for your most critical screens and business processes.

Does this sound like your system?

Then let us spend 45 minutes on it. No obligation, no cost, and an honest assessment at the end - including when that assessment is: keep running it safely for now.

Request a strategy call

Back to the overview