|
SYS-CON.TV Webcasts
Comments
Did you read today's front page stories & breaking news?
SYS-CON.TV
|
Top Links You Must Click On
Cover Story PowerBuilder Cover Story: Introducing Enable
A framework-level tool for creating multilingual applications
By: Lluís Martorell
Nov. 10, 2005 07:15 PM
What do you do if suddenly your application has to be used in another country, or even in different areas of the same nation? English and French are spoken in Canada; Italian, French, and German are spoken in Italy; and Switzerland has four official languages.
As a PowerBuilder developer, you can now use Enable to make your applications multilingual. This solution allows you to maintain complete control over your executable at runtime, and without any duplication of the source code. End users and technical support personnel alike may well benefit from your application's new ability to change the active language dynamically. Enable, which tackles the technical and practical barriers to the development and maintenance of multilingual software, is a framework-level tool from Best In, an Italian PowerBuilder consultancy with extensive localization experience. This article looks at the reasons for adopting Enable, discusses the implementation work required, and describes Enable's technical characteristics. The closing case study illustrates the practical issues that emerged when Enabling an application for a company that serves the pharmaceutical industry.
Why Enable? You could avoid such issues by installing an emulator. Although the adaptation process is not easy, this approach is especially useful for users who don't have access to the application's source code, since they can rely on an overlay that intercepts calls to the operating system, searches a database for the required strings, and replaces them with the related translations. Ignoring the economic costs involved, this situation is not optimal for PowerBuilder developers since they lose control over their software at runtime. If you have a relatively small application, you might consider using the Translation Toolkit to generate separate monolingual source code for each foreign language, although there are maintenance issues to address. In this regard, many larger business applications evolve steadily, with new releases every few months. Here, experience of the code regeneration, recompilation, and redistribution cycle indicates a sharp rise in maintenance costs, as a function of both the number of languages involved and the frequency of the updates.
Enable Tackles All of the Issues Raised Above As a developer, you maintain full control over your software at all times, with Enable actually becoming part of your application framework. Although Enable allows the active language to be changed dynamically, you determine the degree of flexibility granted to the user. Dynamic change applies to all properties of all controls: windows (including those already open), reports, generated files, and communications with peripheral devices. Indeed, several languages can even be active at the same time if, for example, your end users need to invoice their clients in multiple foreign languages. This dynamic change takes place without affecting the functioning of the application. The DataWindow and Edit buffers remain unaltered, as do the end-user's selections; everything is retained when the language is changed. The ability to rapidly switch between languages facilitates the work of your support personnel who, as mentioned before, can flip/flop between languages without interfering with the user's activities. Last, the retention of one source code and one executable application means that new releases can be made by simply translating the new text strings and distributing the revised multilingual database. Even the addition of extra languages does not require changes to your code.
Technical Characteristics of Enable Enable comprises:
The multilingual database is a small flat file, in binary Unicode format, that contains the project settings as well as the source and translated strings. This database is created and modified by Enable Author and is optimized to be read by Enable Engine, regardless of the PowerBuilder platform/version actually used. The temporary file is written by Enable Engine, running in authoring mode, and is imported into the multilingual database using Enable Author's "Temporary file analysis" function. All current versions of PowerBuilder, from 8 to 10, are supported and Enable also works with PowerBuilder 5, 6.5, and 7 (deployed upon request). Enable supports all languages and all character sets. The use of Unicode characters requires the PowerBuilder 10 runtime and an operating system that supports Unicode, such as Windows 2000 or Windows XP. It is possible to stay with an earlier version of PowerBuilder if, for example, end users are still using operating systems that are not compatible with PowerBuilder 10. In this case, the earlier version is compiled using PowerBuilder 10 whenever Unicode characters are required. In addition, Enable also supports jargon, which is a variant of the official language such as English for end users (which is frequently different than that used by developers), and English for special purposes. Even the application's source code can be multilingual. This is important for the use of international libraries that have not been localized into the developer's native language, or when development is outsourced abroad. Reader Feedback: Page 1 of 1
Your Feedback
Enterprise Open Source Magazine Latest Stories . . .
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
|
SYS-CON Featured Whitepapers
Most Read This Week |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||