Questions tagged [progress-4gl]

The Progress 4GL is a multi-platform interpreted language typically used to build business applications and is now known as ABL.

With a first official commercial release in 1984, Progress 4GL was initially a procedural language and has since had object-oriented extensions added to the language starting with the OpenEdge 10.1 version. The language offers tight data binding to the Progress OpenEdge database and also runs on the OpenEdge AppServer.

The Progress 4GL is now known as the OpenEdge ABL (Advanced Business Language) and is produced by the OpenEdge division of Progress Software Corporation.

Hello World

DEFINE VARIABLE msg AS CHARACTER   NO-UNDO.
msg = "Hello World!".
MESSAGE msg VIEW-AS ALERT-BOX INFORMATION.

Useful links
Progress Software

Progress Official Developer Network

The OpenEdge Hive

Progress KnowledgeBase

Progress E-mailing list (PEG)

ProgressTalk Forums

Wikipedia
http://en.wikipedia.org/wiki/Progress_Software http://en.wikipedia.org/wiki/OpenEdge_Advanced_Business_Language

1293 questions
2
votes
1 answer

How to traverse through JsonArray of Integers in OpenEdge Progress 4gl?

I have a JsonArray of Integers example - [1000, 1001, 1002,.....,1100]. I need to traverse this JsonArray so that I can call my function one by one. I tried function Amen returns JsonObject (input code as JsonArray, input lang as char): def var…
Mr Voice
  • 145
  • 9
2
votes
3 answers

How to do logging in OpenEdge Progress?

I've found different ways to log something in Progress 4GL but none are satisfying: The simple MESSAGE statement has the drawback that it handles frames very badly: ON CHOOSE OF btn-Q4 DO: MESSAGE "Line 1". MESSAGE "Line 2". MESSAGE "Line…
Dominique
  • 16,450
  • 15
  • 56
  • 112
2
votes
1 answer

How to list all lines in a field with Progress 4GL

An address field in a Progress database evidently is multiple lines. So if I do something simple like: for each customer where customer-number = "123" no-lock. display customer-number customer-name customer-address. I get results…
Trey
  • 23
  • 2
2
votes
1 answer

Progress4gl how to lock yourself?

In an unit test, I need to verify that the program skip locked records when processing a table. I have been unable to setup a locked records because the test can't lock itself which make a lot of sense. Here is a sample of what I'm trying to…
AXMIM
  • 2,424
  • 1
  • 20
  • 38
2
votes
1 answer

How to send a SOAP headers in Progress 4GL

Hello Progress 4GL Developers, I would like to consume the UPS Tracking API in an ABL session. I have ran the WSDLAnalyser for the UPS WSDL and have followed the documentation. Here is an example of the request in XML that I wish to send (including…
Joseph Betts
  • 107
  • 1
  • 11
2
votes
2 answers

How to properly build and append a json file from variables

I'm practising programming an application that takes user input and then outputs it to a json file. I found a how to that explains how to do it. For the sake of length, I'm leaving out the input code and just including the json builder. ASSIGN …
Bazilby
  • 79
  • 1
  • 8
2
votes
1 answer

How to export xml file in progress 4gl?

I'm a rookie in progress 4gl. Can any one say how to export xml format like as follows using SAX-WRITER in Progress 4GL. Here is the format;
2
votes
1 answer

How to rethrow caught exception in progress 4gl?

I can't find any information on how to rethrow the same exception that I just caught. My catch expression looks like this: CATCH ex1 AS Progress.Lang.Error : MESSAGE ex1:NumMessages. DEFINE VARIABLE iteration AS INTEGER NO-UNDO. …
developer1
  • 527
  • 4
  • 27
2
votes
2 answers

Time taken to run a loop (Progress 4GL)

I wrote a query which contains multiple for each statements. The query is taking more than 20 minutes to fetch the data. Is there a way to check what time each loop started and ended. (How much time does each loop takes to execute and also the total…
2
votes
0 answers

Wrap 32 bit C++ dll in COM code which is 64bit and written in VB.net

We have unmanaged 32bit c++ dll and we want to wrap it in COM code which is 64bit and written in VB.net. The unmanaged dll method has parameter with pointer datatype and we are not able to fetch required response from the methods. Also, code…
2
votes
3 answers

How to use `export` with buffer handle?

Exporting the data of a table before deleting it work like a charm. Example : OUTPUT TO VALUE("C:\mytable.d") APPEND. EXPORT mybd.mytable. OUTPUT CLOSE. DELETE mybd.mytable. However, I've yet to make it work when using a buffer handle…
AXMIM
  • 2,424
  • 1
  • 20
  • 38
2
votes
3 answers

How to get 10 digit value in integer format?

I tried to get 10 digit format value from integer(actual format is 4 digit). But its trimming prefix zero and return the same value. Let me share what I tried. DEFINE VARIABLE idata AS INTEGER NO-UNDO. DEFINE VARIABLE iValue AS INTEGER…
Thiru
  • 231
  • 6
  • 20
2
votes
1 answer

Return a value to Progress 4GL from C SL function

I have been working with some interaction between Progress 4GL programs and C functions invoked from a Shared Library. I need to write a new function and add it to the SL, so my question is: Can Progress receive values returned from the SL C…
EMBT
  • 21
  • 2
2
votes
2 answers

Input-output through stream - Longchar Input

help with the following would be appreciated. I am trying to run an OS-command in progress using input-output through. Case: Run command: "echo 'this is a long string'" Capture output: "'this is a long string'" Issues are: My input string may be…
Screll
  • 266
  • 2
  • 12
2
votes
3 answers

Progress 4GL code analysis tool

I know the community around Progress 4GL is highly lacking in activity, but the people on SO are a surprisingly resourceful bunch of guys! I'm looking for a tool that is capable of creating a dependency tree for classes, include files, and other…
corsiKa
  • 81,495
  • 25
  • 153
  • 204