Development Tools Group

This is a group for keeping track of all ABL development support tools on the Hive


Thank you

This page is intended to provide recognition for people who have contributed to the development of this utility. I will probably forget someone, for which apologies are offered, but I will try.

  • James Palmer - testing and interaction about problems.
  • Simon Prinsloo - testing and interaction about problems.
  • Stefan Houtzager - testing, feedback on issues and actual code to fix problems and add features, and a sample report.

DataDigger 19

DataDigger 19

Questions and Answers

This section is intended to provide information on various questions which have come up in the use of this tool.

  • Q: Originally, the compile phase expected the empty schema files to be available single user. This is a problem if I try to use my regular development DB. A: As of 0.59 You can change this behavior if you want by the use of the chDataBaseConnectParams variable.

Analysis & Reporting

In addition to targeted queries related to specific enhancement or maintenance projects, we will be exploring a number of possible analysis functions including:

  • Impact Analysis – What code will be impacted by a change to this table? What code will be impacted by a change to this other code?
  • Restructuring Analysis – Natural units of code for possible services in an SOA or to consolidate functionality in a single code unit.
  • Structure Analysis – Overview of a function which is about to be modified.

Roadmap & Wish List

Some of the items on the roadmap include:

  • Block Resolution – Map blocks to Compile SubUnits and create Run and Table Compile SubUnit Links.
  • Persistent Resolution – Find unresolved calls which can be resolved to persistent and super procedures.
  • Load Saved Dynamic Calls – Resolve fresh load from resolutions saved previously.
  • Unresolved Dynamic Call Report.
  • Manual Dynamic Call resolution.
  • Mapping of Symbol (variable, buffer, etc.) to Scope and Block
  • Tracking of non-shared symbols.
  • Collecting WHERE clause
  • Unused Code report.

Change Log

See below for pre-1.00 log
1.01 - Initial Proparse release. Includes tracking of shared variables
1.02 - Convert to case insensitive GUID keys
1.03 - Add all shared object types - buffer, browse, dataset, frame, menu, query,
          stream, temp-table, variable, and work-table.
1.04 - Change compilable test to look for XREF
1.05 - Add Proparse buffer tracking to BuildBlocks to resolve buffer names to
          tables
1.06 - Bug fixes in BuildBlocks


The Driver Class

To run ABL2DB one runs launcher_abl2db.p whose configuration is discussed in the Configuration section. it sets up the overall log (one can add additional tracking if desired for debugging), creates the Driver class, initializes the Driver class with the configuration values, and then executes the Initialize() method which tests some preconditions, and the Process() method which does the actual work.


Configuration for Site Specific Setup and Characteristics

The primary tailoring occurs in the launch program, abl2db_launcher.p which is found at the top of the src directory. At the top of this program you will find a section of variable definitions labelled Application Specific Definitions. You need to edit the initial values for these definitions to match your application.


Installation

This tool has been designed for easily customization for site specific requirements. Installation instructions below assume installation in the context of PDSOE, but are easily adapted to batch operation, which is likely to be the norm for day to day operation.


ABL2DB - Databasing ABL information for Analysis

The ABL compiler provides some valuable tools for analyzing individual compile units, but this information can become far more valuable if systematically gathered into a database and supplemented with other information and analysis tools. Presentation on this project can be found at http://cintegrity.com/content/Databasing-ABL-Code-and-Data-Relationships and http://cintegrity.com/content/How-Can-I-Fix-Applied-Use-ABL2DB%0B-Real-W... .


chr(160) needs to be chr(49824) if cpinternal is utf-8

Hello,

datadiggerlib.p and wdatadigger.w use chr(160), which is a non breaking space in ASCII, in their logic. This should be changed to a variable cNBSP:

DEFINE VARIABLE cNBSP AS CHARACTER  NO-UNDO.
IF SESSION:CPINTERNAL = "utf-8" THEN 
  ASSIGN cNBSP = chr(49824). 
ELSE 
  ASSIGN cNBSP = chr(160). 

Thanks,

Jan

ps.: The reason: chr(160) is invalid in utf-8, as a result the following code for prowin32 -cpinternal utf-8 :

MESSAGE REPLACE("a" + CHR(160) + "b", CHR(160), "~n")
  VIEW-AS ALERT-BOX INFO BUTTONS OK.

gives you this message:


libxlsx Project

Hi all.

Does anyone know what happend to the libxlsx project?

Regards


does nothing or is not working?

I added the directory in which the programs are and the output directory in the propath.
It is working for over an hour now for just 1 database.

Not a clue what is happening... (or not?)


Failed to deploy Web Service for :wsa1. WSA request error: CONNECT FAILLURE

Hi Experts,

AIX, OpenEdge 10.1A, Apache Tomcat 5.5

I am trying to deploy a web service but getting this error

Failed to deploy Web Service for :wsa1.
WSA request error: CONNECT FAILLURE.

OR

Failed to deploy Web Service for :wsa1.
WSA request error: REQUEST FAILLURE.

I tried all the steps mentioned by Progress knowledge base.
http://knowledgebase.progress.com/articles/Article/P19723

But could not get the right solution

Any help is highly appreciated.


This copy of slibxlsx.p has expired.

Hello,

I'd like to test your XLSX-Tool (incl. generation of the template), but when I run the code the following error message appears:

"This copy of slibxlsx.p has expired."

Im using the "10.2b02-win-32bit-rcode.zip" on 10.2B06.

I hope you can explain/help!?

Thanks in advance,
Gerald


#
Syndicate content