June 2002: Volume 12 Number 1

The Internet | Powerflex support services | SQL Direct delivers results | EURO symbol in Powerflex | Products Update

The Internet, The Internet and The Internet

David Bennett – Powerflex Corporation – Australia

Question: what are the three most important factors affecting the software and business systems of the future? Answer: the Internet, the Internet and the Internet. Trite, but true. And you can depend on Powerflex technologies to take you there.

You can already use PFXplus on the Web in a number of ways. You can write CGI scripts using PFXplus running on either a Unix or a Windows platform. PFXweb provides a language and database engine for writing content delivery and forms-based Web sites. Those building solutions using other vendors' tools know they can depend on PFXodbc and PFXcrystal.

There are already many ways to use PFXplus on the Internet

Many of our customers have delivered great computer systems to businesses, running well on high-speed local area networks. They have then been asked to provide something similar to a branch office or across a wide area network, and found that performance suffers. There are several solutions to this problem, including Unix, telnet-style emulators, Citrix Metaframe and Microsoft Terminal Server.

Our customers tell us they want more. They have a large investment in existing applications, both in actual source code and in knowledge built up over years. They have looked at the products and techniques being offered for Web development, and that learning curve is steep.

Our customers tell us they want to be able to develop and deliver their business applications using the techniques they are familiar with, building on their existing source code. They remind us how easy it was to move between MS-DOS, Unix and Windows, and they want us to offer the same ease of development for the Internet. They also want the user experience and productivity of a graphical user interface.

A novel approach

The good news is that we have a solution. We have devised a novel approach that will allow PFXplus programs to be deployed across an intranet, extranet or the Internet with far better performance and user experience than any of the existing possibilities. Most existing programs could be converted at low cost, and new programs could be written using familiar procedural programming techniques.

We hope to be making an announcement shortly, and will be looking for beta testers. Please contact this office by phone (+61 3 9888 5833) or email pfxsales@pfxcorp.com if you would like to take part.

Top of Page

Powerflex Support Services

Chris Babarczy – Powerflex Corporation – Australia

Powerflex Corporation provides a comprehensive range of support services to meet the needs of all customers, be they new or experienced Powerflex users, with provision for both critical and non-urgent enquiries. This article gives a brief overview of these services and explains what you need to do to make best use of them.

Two levels of support

Two levels of support are provided depending on the urgency of the problem. Priority One support provides you with a response within one working day to problems reported by phone, fax or email. Priority Two support guarantees a turnaround of 5 working days for problems reported by fax or email.

Support for current versions is free

Much of the support provided by Powerflex is free. Free support includes:

All other support is chargeable including detailed programming advice and support for old releases.

Powerflex support plans

If the support you require is chargeable, there are two ways to obtain it.

The first is to subscribe to one of our Support Plans. Powerflex Support Plans are available for low annual subscriptions and are the best way to ensure that you get the most immediate response to your questions.

The range of Support Plans available are designed to suit most requirements and combine different numbers of pre-paid Priority One calls along with unlimited Priority Two support. Support Plan details are available on our web site at www.pfxcorp.com. If the Support Plans listed on the web site do not meet your requirements then call us and we will create a tailored support plan to your exact needs.

The second method of paying for support calls is pay for them as you need them.

Requesting support

In the event that you require support you can do so by contacting us by phone, fax or email (see details below) ensuring you provide the following details:

For a limited time, you can purchase a Priority Support Plan Extended for only AUD$440. This entitles you to 6 Priority One support calls and unlimited Priority Two support over 12 months. Act quickly as our support prices are about to increase.

To take advantage of this offer or find out more about Powerflex support services please contact me on the above phone or fax or by email (pfxsales@pfxcorp.com).

Top of Page

SQL Direct Delivers Results

Eva Meisel – Powerflex Corporation – Australia

PFXplus SQL Direct is the youngest runtime in the PFXplus 5.0 Win32 series and is an extremely powerful yet not very well known tool. Read the article, then take advantage of the very special offer on this exciting technology.

Who needs SQL Direct

What is this SQL Direct?

PFXplus SQL Direct is a Powerflex runtime that allows applications written in Powerflex to access data from other database systems. The only condition for success is that an ODBC data source can be created from the third party database.

What does this mean for you?

Developers writing applications in many languages, for example VB, FoxPro, Delphi and many more, can use our PFXodbc driver to access Powerflex data in their applications. But what will you do if you need to write a PFXplus application and some of the data you wish to work with are stored in let's say MS Access, FoxPro or some other database?

It is time to check out the PFXplus SQL Direct capabilities!

What does SQL Direct do

The SQL Direct basically enables you to use standard SQL statements within a PFXplus program in order to query third party databases.

The PFXplus language uses the following commands to connect to and communicate with the third party database:

Apart from these Powerflex commands there are the SQL statements to be used to retrieve and modify the third party data.

The process of using PFXplus SQL Direct to extract data can be summed up in the following steps.

Prepare the data source

In your system's ODBC Administrator, create a User DSN data source from the required database. In our sample I used a data source created from the supplier.dfb FoxPro table that is part of the Visual FoxPro 6.0 sample database Tastrade. Only those fields (columns) of supplier.dfb that are needed for the sample program are listed in Figure 1.

Click to see Figure 1 - FoxPro sample database

The odbc data source with a User DSN "foxdata" is now prepared :

Figure 2

Figure 2

Prepare your PFX

In the sample program you can access "foxdata", and neither of the user or password is required when the odbc data source is created from the supplier.dfb table with the Visual FoxPro driver. This leaves the connection string declared for the "foxdata" source with default pfxuser and password values.

Use our TOOLBOX, PTFSE utility or any other preferred method to create a native Powerflex file suppl.dat. The sample file has the structure shown here in Figure 3.

Figure 3

Figure 3

All you need is the following simple code and the required records/fields from a FoxPro data table are turned into a native Powerflex table.

//	For readability some lines have  been broken
SQLEXEC "@connect foxdata,pfxuser,password"
open suppl
zerofile suppl
open_table file(999) 100
SQLOPEN ("SELECT supplier_id, company_name,
country FROM supplier WHERE (country='Australia' OR
country='Japan')  ORDER BY
country") as file(999)
SQLFETCH file(999)
while found
clear suppl
showln suppl.supplier_id
saverecord suppl
SQLFETCH file(999)
SQLCLOSE file(999)
SQLEXEC "@disconnect"

See the results

The SQL statement "SELECT …" ensures that only records with "Australia" or "Japan" in Country field and in that order are selected. Check the results in PFXbrowse (Figure 4).

Figure 4

Figure 4

To compile and execute the above sample program, the SQL add-on to the version 5.0 development kit is required.

To run applications using the SQL direct code either the "Execute Only Licence with SQL" or the "Execute Only Licence with SQL Direct" can be used. PFXplus SQL Direct licence is more cost effective than the full PFXplus SQL Mark 5 runtime.

Top of Page

The EURO Symbol in Powerflex

Gerard Nolan – Powerflex Corporation – Australia

The introduction of the Euro and the symbol to denote it, €, has caused a few minor annoyances for Powerflex programmers.

Before the Euro symbol is included in Powerflex applications or data files there are a few things that need to be done. Without these changes, the wrong character may be displayed or printed (see Figure 1).

Firstly, if you are currently using Microsoft Windows 95 or NT Workstation 4.0, you might need to add Microsoft euro currency support to your system. Information and downloads are available for these operating systems from the Microsoft website.

Microsoft Windows 98 and NT 5.0 automatically include the fonts and drivers necessary to support the euro.

Figure 1

Figure 1

The simple solution

If all data is currently stored as ANSI data and all Powerflex source code files are written using an ANSI editor, such as Notepad, there is very little left to do.

  1. Disable the translation of characters from MS-DOS based code pages to the Windows ANSI code page by turning iOemMode off. This can be achieved in either the relevant PFX.INI or the PFXplus Developer Runtime section of the Windows Registry.


  2. Set the console and GUI mode fonts to a font which includes the Euro symbol.

    sConsoleFont=Courier New

See Figure 2.

The alternative to the [MKRES] section of the relevant PFX.INI is the PFXplus Resource Maker section of the Windows registry.

Figure 2

Figure 2

In GUI applications, it is also important for the Euro character to be mapped correctly in the code page used by MKRES to interpret graphical characters during conversion.The default code page (437 or 850) will automatically convert the Euro symbol into the wrong character. This presents us with two options.

  1. Choose a character to translate from itself to the Euro symbol and map this element of the code page using tOemToAnsi. [MKRES]
    tOemToAnsi=@176 128


  2. Disable the character translations during compilation using iCodePage. [MKRES]

The disadvantage with the tOemToAnsi option is that whichever character you choose to translate from will not be able to appear anywhere in your code, except where you want to see the Euro symbol.

In the example, we have translated the OEM special character 176 into the Euro symbol and changed the character in our source code to the OEM special character 176.

Once all these steps have been followed the Euro symbol will appear in both the background text and data files (Figure 3).

Figure 3

Figure 3

Replacing a carefully chosen single character, however, is preferable to disabling character translations entirely with iCodePage=0, which may result in graphical characters not being displayed correctly in compiled programs.

One final important note is that all console mode programs should now be run with the PFLN runtime.

Non-ANSI data files

The problem for Powerflex users with data created using non-ANSI code pages is that there is no free character which can be used for the Euro symbol. Data in non-ANSI files will need to be converted to a code page which includes the Euro symbol, such as the Windows code page (1250).

The following steps are a broad outline of what may need to be done.

  1. With OEM Mode enabled, run a program which exports all data from file to an ASCII file on disk while executing OEM to ANSI conversion.
  2. Correct the collating sequence.
  3. With OEM mode disabled, read the ASCII data back into file and re-index.

In PFXbrowse

Once data is saved in the correct format, you may still see incorrect data when using PFXbrowse . If this is the case, disable OEM to ANSI translation in PFXbrowse with the following statement.


Alternatively, this configuration item can be set in the [PFXBROWSE] section of the Windows registry.


When printing, the font needs be one which contains the Euro symbol.


The Euro created problems for programmers when it was first introduced. However, the solution for Powerflex programmers is straight forward in its implementation of the new currency into PFXplus applications.

Top of Page

Products Update

Recent months have been particularly busy at Powerflex with a significant amount of work being undertaken on both new and existing products. Development of the .NET version of PFXplus is continuing as are enhancements to existing products and availability for new platforms. The major highlights are detailed below.


The beta testing of PFXweb is almost complete. PFXweb is a simple extension to PFXplus that opens up the world of Internet processing to your PFXplus applications. Keep checking our web site for details of the release of PFXweb .

New PFXbrowse

End-User and SQL versions of PFXbrowse have just been released. We have enhanced the already powerful PFXbrowse by including access to SQL databases. Developers will now also be able to distribute PFXbrowse to their customers without fear of data corruption because PFXbrowse End-User includes all the great file display capabilities of PFXbrowse without the ability to update data. The enclosed brochure contains details of a special offer for all versions of PFXbrowse . Hurry - this offer is for a limited time.

New Unix versions of PFXplus

A lot of interest has been shown recently in PFXplus for a variety of Unix systems. As a result, Powerflex have conducted feasibility testing or developed beta releases of PFXplus version 5.0 for most popular Unix platforms including Linux, AIX, Sun and SCO, Unixware and Open Unix 8.

If you are interested in obtaining a quote for PFXplus version 5.0 for a particular Unix platform or would like to participate in the beta testing of PFXplus version 5.0 for Linux then contact us by phone (+61 3 9888 5833) or email (pfxsales@pfxcorp.com) and we will be happy to assist you.

PFXplus HTML help

A new CD containing a HTML version of the PFXplus Help system will be released shortly. This has been developed for those users who want the convenience of a HTML help system which can be run on any standard browser on any platform. Details of availability and pricing will be available on our web site.

Top of Page

Current Versions of Powerflex Release Software

PFXplus Developer's Kit 16/32-bit 4.23
PFXplus Developer's Kit 32-bit/SQL 5.0
PFXplus Runtimes 2.63 to 5.0
PFXplus Unixware 5.0
PFXplus SCO 4.30
PFXplus Linux 4.41
PFX C-lib MSDOS—DOS-386 4.20
PFX C-lib for Windows 5.0
PFX C-lib for Windows with MS SQL 5.0
PFX C-lib for SCO Unix/Linux 4.41
PFXsort for DOS-386, Win32/SQL 5.0
PFXsort for Unixware 5.0
PFXsort SCO Unix/linux 4.41
PFXbrowse 32-bit with Btrieve 5.0
PFXbrowse 32-bit for Windows 5.0
PFXbrowse Linux 4.41
PFXbrowse SCO Unix 2.10
PFXodbc 32-bit for WIndows 5.0
PFXcrystal 32-bit for Windows 5.0
Service pack 1C for Windows 32 bit 5.0
PFXplus (Developer and Runtime),
PFXcrystal, PFXC-lib and PFXodbc
Service pack 1B(SQL) for Windows 32 bit 5.0
PFXplus (Developer and Runtime) and PFXC-lib

Top of Page