Scott Auge's blog

Voleso HTML Templating Tool Open Sourced

The first time one needs to rework the HTML for look and feel in an application, one quickly learns about the need for separating the HTML from the application code. HTML Mapping was an attempt at this, however, there is still the need for a Progress Development License as well re-compiling on changed code.

Other languages have encountered this need – PHP with the Smarty template processor as well the various one's used in the C and C++ world. These processors do not require re-compiling and allow for HTML designers to work outside of the application code environment.

EQN II Symbolic Mathematics Library Released

EQN II is ready for release! Open Source symbolic mathematics library available for Progress ABL/4GL here

Calling out to a C++ class from the Progress ABL

On a programmer mailing list, there was a question about how to call out to a class in C++ from the Progress ABL. The following gives an example of doing so.

First, here is a bit of C++ code that hopefully illustrates a wrapper on how to call out to a class from the Progress interface (explanation follows):

------------ 2.cpp -----------

extern "C" {

int TestRoutine () ;


class A {

 private :

 int A1;

 public :

 int SetA1 (int V) {

   A1 = V;


 int GetA1 () {

   return A1;


}; // class A

int TestRoutine () {

Print versions of the Progress E-Zines are now available

It has been noted that once something is on the internet, it is there forever. Apparently, this is somewhat wrong for certain types of information. The Progress E-Zine collection continues to be available on the internet, but often it is tucked away in corners that are hard to find.

With this in mind, a three volume set of the E-Zines in bound printed form are now available. No more binders full of printer paper versions of the monographs, simply reach into the book shelf for the bound copy and enjoy.

The books can be purchased from these locations:

Using Object Oriented Programming For Custom Programming In A SaaS Application

In the SaaS world, often customers will want their own customizations into the source code specific to how they want to do business with your software.

Here is a point where object oriented programming stands out. By crafting your programming in such a way that basic functionality is enhanced - you can use different classes specific to particular customers for enhanced implementation.

Since we are going to potentially be using one of multiple classes, we need to have an interface describing the methods available in the class.

OOP Mail Classes in Progress ABL/4GL Available

A new library of Amduus Classes I am putting together includes some code for sending email in Progress 10.1a or better programs.

Example call in HTML with embedded images and an attachment.

define variable M as com.amduus.mail.MailBySendmail no-undo.
define variable HTML as character no-undo.

M = new com.amduus.mail.MailBySendmail().

M:ToEmail = "sauge@localhost".
M:FromEmail = "root@localhost".
M:BCCEmail = "root@localhost".
M:Subject = "Test 1".

HTML = "<html><body>"
+ 'This is a <b>test</b> <img src="cid:y1"> email'

Video on calling web services from the 4GL/ABL

I have a video up on on how to call out to web services with example coding.

The video can be seen at

Book on object oriented programming available

I have a book on object oriented programming in the ABL language available at

Video on setting up Webspeed on MS Windows

Since it is asked quite often in the Progess community how to set up a broker in the MS Widnows environment, here is a little video on how to accomplish this.

View the video at

Federal Contracts Database

For those who may be looking for something to do, perhaps this can be a lead. There is going to be a lot of work available through the government! If you nab one, don't forget who alerted you to it.

Syndicate content