4GL Query Optimizer Base Line.
If a company wants to back this project I believe we can have a running version within 2 to 3 month.
It is up to us to build one.
Unzip the files, make sure they're on the PROPATH and that's it.
Reads output from a LOG-MANAGER:LOG-ENTRY-TYPE = "4GLTRACE:4" and reports the line number, date, time, statement elapsed time, total elapsed time, nesting level, action, action adjective, and remaining data in a columnar format
Adapter to send and receive XML messages to and from an ESB. In this first version Sonic. Also usable to generate XSD's that can be used during a design phase.
Working on getting the source cleaned to put it here.
More detail at ABLaUML book
--- SPANISH version follows ---
ABLaUML is an Thomas Mercer-Hursh (firstname.lastname@example.org) ABL2UML (http://www.oehive.org/ABL2UML) derivative work.
We use ABLaUML to model legacy procedural systems. In order to do that we take the original code and convert it to object oriented code, changing the monolitic generation model into a model of discret succesive generation tasks.
JSON Parser for Progress ABL is a "wrapper" for the cJSON parser - ultra-lightweight, portable, single-file, simple-as-can-be ANSI-C compliant JSON parser.
The reader object can be used to load and parse a JSON string from either a file on the file system or from a character, longchar or memptr variable.
Converts progress app builder aliases to open edge architect macros.
Alon test project in Sandbox group
AutoDox is an automated code documentor which uses Proparse to find significant features in your programs and then output details of these features in HTML documents. Some features so far reported in the generated documents are a program's parameters, internal procedures and functions, as well as comments where possible.
Issue tracker for Progress Software's AutoEdge reference implementation of OERA.
This Procedure allows you to export almost any browser-content to an excel-sheet via a simple run-statement
This is a dynamic browserwindow, browse_exp.p in the zipfile, fed from a minimal repository to get the specific UI and query. It should compile starting from 9.1D as its most modern language-element is the CALL object. You can easily maintain the repository with the "browserbuilder" utility that I have put in this package also.
A tool like the DataDigger is something that should have been shipped with Progress out of the box.
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)
A sample use:
<?xml version="1.0" ?> <Books> <Book> <Title subject="SciFi" entry="one">War OF The Worlds</Title> </Book> <Book> <Title subject="SciFi" entry="two">Battlestar Galactica</Title> </Book> <Book>
A set of routines to aid with developing software containing dynamic queries. It greatly simplifies coding and readability.
With Progress Version 9.1, a very powerful feature was added to the language – dynamic queries.
Great as they are – it takes a lot of work to make use of this new feature. It is the purpose of this tool kit to aid with simplifying dynamic queries for the developer.
The tool kit provides a set of functions that can be used to open, navigate, extract data from, and close dynamic queries in a straight forward and easy to use manner.
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
DEF TEMP-TABLE ttnewCustomer LIKE Customer.
BUFFER-COPY customer TO ttnewcustomer.
DEF TEMP-TABLE ttoldCustomer LIKE customer.
BUFFER-COPY oldcustomer TO ttoldCustomer.
This is my first project, it's really buggy at the moment and i would like the help from anyone willing to optimize this email program. I don't have any documentation or anything out yet i just wanted to use this to get it out and fix some problems.
Some of the main features at the moment are Read receipts delivery receipts, send on behalf of, and outlook Security bypass.
Im using the mapi email and using a redemption.dll to bypass security this is optional. This was created to test out some mailitem properties and then we decided to use it with our customer invoice reports.
In this example function you pass to it the format you want YYYYMMDD YYMMDD ISO etc. along with date and time delimiters you wish to use. This does use the NOW statement which is not in older versions.
This simple library of functions and procedures contains three major procedures...
inputXLS() --input to temp-tables an xls/xlsx file using Windows Excel API (requires installed Excel)
outputXLS() --output to xls/xlsx file using Windows Excel API (fully featured but very slow for large spreadsheets)
outputXML() --output to Excel XML Spreadsheet 2003 format using OE datasets (super fast and does not require Excel or even Windows)
...with four support functions...
The goal of this project is to make possible to access Progress database from any external program that can use sockets. The server (broker and agents) are written in Progress 4GL and made use of sockets capabilities of Progress V9.
The included program allows the generation of include files containing pre-processor definition for all of the constants within any type library. Type libraries may either be specific type library files (.olb,.tlb) or can be contained within .exe,.dll or .ocx files.
I typically need to know constants when working with COM or ActiveX objects in the 4GL. Often, the documentation for such objects refers to various property values by the name of the constant. This is because most documentation is geared towards development environments where the constant values will automatically be made available to the developer. Such is not the case for Progress.
A password meter written in ABL.
It is database independent and uses the first connected database for the session.
By default it has 2 levels of strength that can be easily checked for and/or required: Strong Passwords and Xtra Strong Passwords
It checks for the following:
Required for strong passwords:
Length of 12 to 24 characters
Use of all 4 types of characters
Not the same as the previous 5 passwords
No personal names (first or last) and no company names or company acronym (hard-coded).
Required for Xtra strong passwords:
At least 2 upper case letters used
Sometimes it's neccessary to add a Caption in the titlebar to give extra information to the user of your application. The attached file does this, and makes sure the window got redrawn when windows triggers arive.
As you can see, many instances of msgblst32 are added on this window. The goal is to make it more the controlling window which always catches the events on the underlaying session applications. As every window needs its own ocx, I provided 40 instances which are hopefully enough to maintain every window.
This project is for the maintenance and support of John Green's "jpjvm" DLL, which loads a JVM into a Progress/OpenEdge session.
Lightweight, fast and extensible message queue bridge that can connect different message providers such as Progress Sonic MQ or IBM WebSphere MQ (former MQ Series). Plugins for JMS and MQI are provided.
The project is hosted on sourceforge.net.
Justus is a toolset for Progress 4GL that helps developers to increase quality of your projects. Justus includes a simplified 4GL parser and a test coverage tool to identify gaps on Test phase.
Future releases also include a search tool, white-box tests and dependency checker.
** Looking for Volunteers **
KsvPlugin for OEA is a set of useful tools which allows you to make your work with OpenEdge Architect more productive and less painful. It softens project-centric paradigm of Eclipse allowing you to develop in good old way of Procedure Editor. The set includes some tools which were developed for Ksv Editor (a modification of Procedure Editor).
There's a very good plugin for Eclipse which integrates Eclipse with Microsoft Visual SourceSafe. It's org.vssplugin developed by Marcus Nylander, unfortunately it's not been updated since 2007. The latest version is 1.6.2 and it was developed for Eclipse 3.2, so it doesn't work with 3.4 and higher. Since I work with a quite unique VSS configuration I desperately needed to modify this plugin but before that I had to make it work on Eclipse 3.4.
Maia is a Progress ABL code generator that takes a user-defined template and produces clean, understandable, consistent code. If you have ever copied and pasted a block of code, then Maia is for you. Maia removes the need for manual code duplication.
Even better, Maia removes the need for the vast majority of dynamic coding, making your code understandable to the programmer that follows you
Identifies possible memory leaks and their source by extracting those lines from logmanager output that point at created objects that are not deleted later on or allocated space that is not (fully) deallocated.
This analyser goes a bit further than http://www.oehive.org/node/846 and can handle OE 10.2A extra's
Use Ed4W as a code editor for Progress, including syntax check and intelligent code expansion.
This is the project for tracking work on the OERA Open Source Initiative. Use it for feature requests, issue tracking, bug reports and the like. Use the forum for general discussion and add comments to individual pages of content as appropriate.
A set of classes and programs to allow you to use client and server sockets in the Openedge ABL
This is a collection of functions and procedures that provide an API to the OpenOffice.org Calc spreadsheet application. These were developed in Progress 9.1D using OpenOffice.org version 1.1.2 and have not yet been verified to work with version 2+.
This collection of functions and procedures will allow you to programmatically create Calc spreadsheets, add data, format columns, rows and cells and more!
PCT (Progress Compilation Tools) is a set of ANT tasks, designed to compile Progress® procedures and dump/load databases.
PCT is distributed under the Apache License.
This project was born due to the lack of automated Progress® code compiler. PCT is a command-line based tool, so it can be run in batch mode, to generate nightly builds for example. However, as PCT is a set of ANT tasks, your compilation tasks can be run using a graphical frontend to ANT.
This project is for support, maintenance, and continued enhancements to PDF Include. PDF Include is a set of 4GL/ABL programs which allow you to generate PDF reports.
PRO/Dox by Gordon Campbell takes AutoDox in two whole new directions. First, it generates XML instead of HTML, so that documentation can more easily be rendered in other formats (Word, PDF, etc). Second, it generates wire-frame diagrams of the frames it finds in your source code!
The procedure manager provides a standardized way of managing when a persistent or super procedure is instantiated, which procedures parent it, how many procedure instances are created, and when they are deleted.
The primary application for this program is enabling writing new PP/SP code with OO style structures, which enables easier development of new code and upgrading existing legacy applications with minimal code impact.
This profiler identifies performancebottlenecks in your application by analysing the logfile you create with the log-manager.
Progress Fuse Adapter
Written in OO ABL and supports the stomp protocol.
Code comments in Dutch
Prolint reads your source code and looks for bugs and does suggestions for improvements. This Prolint project works in conjuction with the Prolint group
If you have an idea for a new rule, please use the Issue Tracker and use the combo-boxes to specify "component=rule" and "category=feature request".
But of course you can use the Issue Tracker for other issues too.
This project is for maintenance and continued enhancements to Joanju's 4gl/ABL parser.
This project gathers various utilities related to parsing code. This includes tools for viewing or converting Proparse's syntax tree, utilities for find and report, utilities for search and replace, etc.
This project is for maintenance and continued enhancements to the ProRefactor libraries for working with Proparse's syntax tree. Includes tree parsing, symbol tables, persistent storage of the syntax trees, project configuration, Eclipse integration, etc.
The ProStyle project uses various features from Proparse in order to pretty-print P4GL/ABL.
ProUnit is a Unit Test Framework designed to improve Progress applications quality. Specially focused on automation, ProUnit is better used with Continuous Integration and build scripting tools like PCT, ANT, Bamboo, Hudson, etc.
A reusable .p that gives you the contents of an xml in two temp-tables (elements and attributes).
See the fileheader for a how-to-use.
Another option to export a static temp-table to a new Excel file (Windows ONLY)
svnhook is a subversion hook for the old editor and appbuilder.
svnhook is compatible with Progress version 9 or higher and works on both Windows and UNIX/Linux.
svnhook is based on The Progress Standard Libraries version 01.01.02 or higher.
The Zip file comes with a procedure for loading files into your repository.
I recommend TortoiseSVN with WinMerge for browsing through your repository.
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
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¦
This is where "The OpenEdge Hive" is maintained and built. You can find site documentation, submit bugs and feature requests if something on the website does not work well, and you can discuss the features of this website in the Hive group. Submit specific issues on the The Hive Project Issue Tracker and more general discussion on the The Hive Group Forum
The Progress Standard Libraries In general the libraries are compatible with Progress version 9 and upwards and are O/S neutral, unless noted differently. To install the libraries place the slib/ directory in a directory on your PROPATH and you're ready to go, no need to change your PROPATH. I usually just copy the slib dir to every project I do. To use a library add the library include file to the external procedure file. Although the libraries are essentially persistent super procedures.
Thing is a free UNIX and Windows® Progress® data editor, table editor, browser, searcher, field locator and dictionary display tool useful for program development.
The project creates Word documents using the Office Automation object based on user selected database content.