PowerBuilder in more than one language

We built bespoke software that translates a PowerBuilder application dynamically into any language, because a client needed it and nothing off the shelf would do.

Request a free application review +44 (0)1293 562730
Any language
software we built to do it
Appeon-approved
consulting partner
PB v4 → PB2025
every release in between
CET ±1
one hour from most of Europe

Why this is harder than it sounds

A PowerBuilder application written in the 1990s or 2000s was almost never written with translation in mind. There was no reason for it to be. The business was in one country and it stayed that way for fifteen years.

So the text lives everywhere: embedded in window objects, in DataWindow column headings, in hard-coded message boxes, in validation errors written by a developer who has long since left. Layouts are sized for the original language, which is a problem the first time a German compound noun arrives in a field built for English. Dates, numbers and currency formatting are frequently assumed rather than configured.

None of that is insurmountable. It is, however, exactly the kind of work that gets badly underestimated by anyone who has not done it, and it is the reason the usual answer to "can we have it in Danish?" is a quote for a rewrite.

What we did instead

For COWI we developed a piece of software that translates the application dynamically into any language. One application, one release cycle, and a new language becomes a content exercise rather than a development project.

The COWI programme

COWI's Caretaker application was stuck on PowerBuilder 7. Among the things blocking the migration was translation software that no longer worked — so the language problem and the version problem were tangled together, which is more common than you would think.

We proposed three phases with clearly defined deliverables and direct business benefit at each step. That structure mattered practically as well as commercially: it reduced the time we had to hold the Caretaker source, so COWI's own developers could keep working with minimal interruption.

Phase one was the migration to the latest available PowerBuilder release. Phase two was the bespoke translation software. Phase three modernised the interface and brought it onto current Windows platforms.

1migrate off PB7
2dynamic translation
3modern interface

What a language project actually involves

Finding the text

Locating every string a user can see, across windows, DataWindows, menus, messages and validation, including the ones nobody remembers writing.

Separating it out

Getting that text out of the code and into something that can be swapped at runtime, without changing what the application does.

Making the layout cope

Fields and labels sized for one language rarely fit another. This is the unglamorous half of the work and it is where the time goes.

Formats and data

Dates, decimal separators, currency and character handling, plus whatever the database is doing about collation underneath.

We build the mechanism. The wording stays with you and your people, because they know your terminology.

Questions people ask us about this

Can a PowerBuilder application be made multi-lingual without rewriting it?

Yes. We built bespoke software for COWI that translates their PowerBuilder application dynamically into any language, as the second phase of a three-phase programme. The application itself was not rewritten.

Why not just build a separate version for each language?

Because you then have several codebases to keep in step, and every change has to be made and tested more than once. It works for two languages and becomes a maintenance problem at four. Translating dynamically keeps one application and one release cycle.

What makes localising a PowerBuilder application harder than a modern web app?

Older PowerBuilder applications were rarely written with translation in mind. Text tends to be embedded in windows, DataWindow column headings and hard-coded messages rather than held in resources, and layouts are often sized for the original language. Date, number and currency formatting is frequently assumed rather than configured.

Do you handle the translation itself?

No. We build the mechanism that lets your application present a language; the wording is yours, because your people know your terminology and your regulator does not accept approximations.

Talk to us about your application

Tell us the PowerBuilder version you are on, the database behind it, which countries it runs in and what is prompting the question. We will give you an honest read on your options, including whether the answer is to do nothing for now. The initial review of your application is free of charge.

Telephone: +44 (0)1293 562730

Email: sales@powersoft-services.co.uk

Appeon approved consulting partner