OE Techniques and Coding

Code samples, whitepapers, and discussion on techniques for using various ABL features and solving various requirements faced in writing ABL code.


Code Samples

Small fragments of ABL code which illustrate some principle or technique


Coding Standards and Best Practice

Discussions and Examples related to coding standards and best practices in developing ABL applications


Components & Managers

Code samples which are unifed components or managers ready to be incorporated in other code


Interfaces to Other Languages or Databases

Code and tools for creating a connection between ABL applications and other language systems or databases


OOABL

Code, discussions, and whitepapers related to the use of object-oriented techniques in coding ABL applications.


Operating System and Application Interfaces

Information and examples for interfacing ABL applications to the operating system and common applications such as word processors, spreadsheets, and e-mail


ProDataSets

Documentation and examples on how to use ProDataSets


Reporting

Code, discussions, and whitepapers related to reporting from ABL applications


UI design guidelines

General User Interface design and review guidelines


Web Services & Other Integration Technologies

Whitepapers and code samples related to webservices and other related integration technologies.


Web UI Development

This section covers WebSpeed, Ajax, eScript and any other technology for creating and deploying browser user interfaces (WUI).


XML

Tools and samples related to the use of XML


Testing character values to see if they are integer, decimal or character values.

This set of examples show various methods to test for character, integer, and decimal values.
The various test methods came from a discussion on the PEG and suggestions by members and myself.

Typical time results per 100,000 iterations of the functions.

+--------------------------------------------------+
¦-123                                              ¦
¦                                                  ¦
¦fn-ISCHAR-loop:   31510 ms no  Loop method        ¦
¦fn-ISCHAR:         3681 ms no  DEC(x) error method¦

Include Unit Code at the bottom of your class files

One of the important things in software development is to do unit testing - that is a set of tests the programmer can do on a piece of code to be assured it is most likely working the way one wants it to.

Surprisingly it is rare to find unit test code as part of a source code file. If it is created at all (horror), it is usually tucked away on some developers disk someplace or simply thrown away!

What I have found helpful for myself as well as others working the same code, is to place a comment at the end of the program with the unit test code.


Dynamic Transaction (record write,delete.create)

have two procedures that work that can called from trigger level within trigger. They passed a number of paramters including one temp-table containing create/delete information , the 2nd program accepts the current new record and the old record

WRITE TRIGGER

DEF TEMP-TABLE ttnewCustomer LIKE Customer.
CREATE ttnewcustomer.
BUFFER-COPY customer TO ttnewcustomer.
DEF TEMP-TABLE ttoldCustomer LIKE customer.
CREATE ttoldcustomer.
BUFFER-COPY oldcustomer TO ttoldCustomer.


Temp-table to COM Excel

This is a procedure i wrote some years ago now. want to do the same for xml csv , then seperate one for pdf and rtf templates if you want full details of project let me know


Una rutina para escribir con letras una cantidad, hasta 999,999,999,999.99

Here is this routine to translate a qty to string, it is spanish, right now, but I guess that is easy to translate to other idioms, in fact, I would like to know if you translate this to other languages.


TIPS FOR A PRO DATASET DEVELOPER

There have been a number of major milestones in Progress releases. The first that comes to mind in more recent times was the introduction of the appserver. Since then there have been other significant introductions such as super procedures, processing handles, and object orientated code. Another recent significant feature, which is the text of this paper, is the prodataset.


DB2Excel

Hi guys,
I tried to create a program that will generate code that will export table contents to excel
and wanted other people to test my project. (P.S. Please excuse my coding, I'm just a starter with progress :}).

This program is created using Openedge 10.1B and tested using Microsoft Excel 2007
DB2Excel is a program that automatically generates code for importing data to excel.

Step 1: db2Excel Collects tables from the database and makes them available for selection.
(if needed for schema preview, you can edit the source code to view system tables)


OO classes in subversion

I've just uploaded the OO class stuff into subversion, so all the changes and enhancements that are coming can be integrated ;)

The subversion link is svn://oehive.org/oosockets/trunk

Let's see all those updates ...


OO Sockets in OpenEdge

A set of classes and programs to allow you to use client and server sockets in the Openedge ABL


OO Socket Sample Code

Using sockets with the 4gl and classes is an "interesting" exercise. This book contains examples of how to use classes and sockets for a client and server system. There are examples of how to use the client to connect to a web page and download the source. There is also a client / server system that uses XML to pass messages between the server and clients.

General Principles


Syndicate content