Resources

The OpenEdge Advanced Business Language, or OpenEdge ABL (formerly known as Progress 4GL) is a fourth-generation programming language which uses an English-like syntax. Applications developed with this language are portable across computing systems, it uses its own integrated relational database and programming tool which is called the “appbuilder”.

Progress Programmers Pal (3P), is a notepad++ plug-in designed to help Openedge ABL developpers, 3P is a free and open-source software release under GPL License.

OpenEdge community groups

OpenEdge is supported by a wide range of communities. The following list is a snapshot of the major groups of Progress OpenEdge users. Whenever a question needs an answer or some information is wanted, these places are right.

Progresstalk – Classical forum
http://www.progresstalk.com/

Google Plus
https://plus.google.com/communities/104159207020222808661
This group is for discussions and informations about Progress OpenEdge topics like ABL, 4GL, DB, .NET, HTML5, cloud and third party integration.

LinkedIn Groups
https://www.linkedin.com/groups/50228
Progress Software Users – The official group of Progress Software, with about 6500 members.

https://www.linkedin.com/groups/1997072
Progress OpenEdge Users/Developers – The independent developers group, about 3000 members.

https://www.linkedin.com/groups/162393
Progress User Group (PUG) – This group focus on the activities of the Progress User Groups (PUGs) and the yearly large conference held in EU and US (2600 members).

Twitter
Various accounts, ProgressSW is the official account of Progress Software. Good keywords are ‘OpenEdge’ and ‘Telerik’

A part of Progress since 2014, Telerik by Progress is committed to giving developers the tools they need to harness and master the technological evolution shaping our society and the world. From innovative approaches to native, web and hybrid development, to time-saving tooling and testing products, developers rely on the quality and dependability of Progress to create transformative experiences.

The XenCraft Word Parser for Progress (XenWORD) is a shared library that parses text into words using the Progress word rules table, the same rules used for database word indexes. This gives developers and users the ability to review how the text is being parsed, to confirm the correct rules are being used or to experiment with new rules. The library can also be used more generally for text parsing and manipulation.

WizTOM for PROGRESS is a highly efficient technology for localizing Progress applications. You can use it to add languages to your application to reach global markets, to expand your base of users in your local market, or to customize applications for individual clients. If you struggle with maintaining homebrew localization tools and processes, or have projects that have outgrown Progress Translation Manager, WizTom can relieve you of unwieldy localization processess and bring you to a modern and supported methodology.

Each of these free tools comes with a document explaining the principles and how to use them:
·  dbreport – A great tool with two purposes:
1. Reviewing the DB schema more quickly and easily than any other tool we’ve seen
2. Changing views and retrieving data in a dynamic browser for any table.
·  v9schema
A superb tool for analyzing and converting your V8 (or existing V9) DB into V9 areas. For either version, it helps generate both the multi-volume structure with distinct record-per-block settings if desired. It also helps analyze current tables and will generate a DF for with tables in designated areas. A graphical-only tool to read the DB analysis output and allow you to create an well-tuned V9 DB structure.
·  perfmon
A terrific tool to help you analyze where your code is slow. It is based on the Progress performance analyzer tool, but goes beyond this tool to give you more granularity in understanding where the problems lie and why.
·  debugger
A personal debugger which you can use whether you have character or GUI. It allows you to insert your own code (of course, you’re finding someone else’s bugs) and do a large variety of things that aren’t possible with the Progress debugger.
·  vst dashboard
A starting point for building your own VST “dashboard”; this tool includes several useful metrics, and enough clear, documented code to help you monitor your system and build your own.

Prolint is an open source tool for automated source code review of Progress 4GL code. It reads one or more sourcefiles and examines it for bad programming practices or violations against coding standards. Prolint does not change or rewrite source code, it is no beauty.p. Prolint works with a customizable library of rules. A rule is a specific test that Prolint can perform on source code. Every rule has a ‘severity-level’ ranging from 0 to 9 (0=informational, 9=severe violation). One can easily customize the severity levels to company preferences. One can also switch rules on/off and save these settings in any number of profiles.

A database reorganization can improve performance, eliminate fragmentation and reduce the size of the database … and it can take a lot of time. BravePoint’s ProD&L helps you get your time back by reducing the downtime required for a database reorganization to less than a few hours — regardless of the size of your database.

Maurits van Rijnen’s PL Explorer is a tool for easy viewing and adding/updating/deleting files within your Progress® PLs. It works without prolib and should maintain your procedure libraries even faster than prolib.

KSV Editor is a modification of the standard Progress Procedure Editor™ coming with the Progress development environment. It has a lot of useful features which facilitate programming on Progress 4GL. It allows writing programs both for GUI and CHUI modes as well as for earlier versions of Progress.

HTMLdictionary is Rich Uchytil’s DB schema presentation that is basically a reproduction of the data dictionary report you get from the database administration screen. Same data, but in a nice format and extended usefully: A link next to each field takes you to a page showing you every table that has that field name in it.

The Progress® WebClient® product is a major addition to the Progress® Software Corporation product line. WebClient® enables the development of true ‘thin client’ applications to be distributed, deployed and maintained over networks without ever doing any work on the client machine. The automatic deployment and update mechanism supports and implements the Application Service Provider (ASP) model where end users ‘rent’ applications on a pay-as-you-go basis and are automatically ensured of running the latest version of the application.
When organizations started deploying their WebClient® applications over the internet significant performance bottlenecks became apparent. While the applications do have acceptable performance over Local Area Networks and Intranets, traditional Progress® development environments prove to be too slow for delivery over the public internet, often still accessed by users through dial-up modems. When faced with the task of providing thousands of dial-up users access to central databases over the internet,Netsetup quickly recognized that an entirely new architecture was required to achieve this goal.
Extensive measurements revealed that traditional Progress® architectures suffer from three major bottlenecks when faced with internet deployment: too many AppServer calls, excessive data exchange, and large r-code deployment to the client.
The Dynamic WebClient® Architecture is based on the union of a single ‘Business Logic’ object on the server and a single ‘User Interface’ object on the client. Together, these two objects are capable of delivering full-blown Windows applications to the end user with sub-second response times over dial-up internet connections.
The use of bandwidth is typically much lower than a comparable HTML-based web application. A single user interaction results in just a single AppServer call, even if that interaction returns a screen full of browser and viewer data. Due to the stateless architecture a single application server can support thousands of concurrent users.
As a matter of fact, with the Dynamic WebClient® Architecture you do not have to wait for UMTS frequencies to become available to provide wireless access to your Progress® applications; a standard GPRS connection is sufficient to run DWA applications on your laptop. Even a 9.600 baud GSM connection can be used to access DWA applications from anywhere in the world. This claim leaves the major industry players out in the cold.
A development team led by internationally renowned Progress specialist Peter van Dam was instituted to develop a new WebClient® architecture for the internet.
The answer was found in the combination of a completely ‘dynamic’ approach, highly compressed intelligent data transfer, sophisticated caching techniques, and the use of a central repository to store application definitions.
Stateless AppServers ensure virtually unlimited scalability. The result is an internet deployment architecture for Windows applications with unparalleled performance: the Dynamic WebClient® Architecture.
The Dynamic WebClient® Platform is the development environment for applications based on the Dynamic WebClient® Architecture. This environment enables developers to rapidly (re)develop Progress® based Windows applications for deployment over the internet.
Using the Dynamic WebClient® Platform does not mean that the existing applications are to be completely rewritten. Often it is sufficient to redevelop specific key parts of the front-end, leaving the rest of the application intact.

The Progress Software Developers Network™ (PSDN) is a set of online and offline services designed to help developers write best-of-breed business applications using Progress® products and technologies. In the Code Sharesection you’ll find tons of code snippets up to complete solutions for various use cases well sorted in many categories, e.g. .NET sample code, Fathom jobs and library components, Progress 4GL programs, ADM2 smart objects, internet solutions with XML and WebSpeed’s SpeedScript, reporting, database maintenance …