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
3
votes
1 answer

Calling a procedure from another file

I'm trying to call a procedure which is is another file. What I've got so far results in an error: test.p DEFINE VARIABLE tmp AS CHARACTER. RUN sumWords.p(INPUT "Hello", INPUT "World", OUTPUT tmp). DISPLAY tmp. sumWords.p PROCEDURE…
sander
  • 1,426
  • 4
  • 19
  • 46
3
votes
2 answers

Convert DD-MMM-YYYY HH:MM:SS.SSS to Progress DATETIME-TZ

Is there an easy way to convert a date time value in format DD-MMM-YYYY HH:MM:SS.SSS to Progress DATETIME-TZ. For example, I am trying to store "15-Sep-2017 20:51:14.566" date in to Progress ABL variable whose datatype is datetime-tz with format…
Austin
  • 1,237
  • 1
  • 11
  • 22
3
votes
2 answers

Last Imported Line Is Empty Input Stream Progress

I have made a script that does an import of an CSV file. It work perfect however when I import it into a temp table the last record in my temp table is an empty one. I've tripled checked the CSV and it doesn't contain any empty lines. This is my…
Gaetano Herman
  • 524
  • 6
  • 22
3
votes
2 answers

How to add a date condition to for each loop in Progress 4GL query?

I have difficulties with a query I have to change to limit the data I export from a Progress database. I export "myorderdate" to a text file. However, I have to limit the data to only orders after year 2012. OUTPUT STREAM s1 TO…
DamianS1987
  • 302
  • 1
  • 3
  • 13
3
votes
2 answers

Multithreading in OpenEdge

Is there any concept like multithreading in OpenEdge? If so, please give me a brief about it. I want to create a snake game in OpenEdge. For that, the user has to control the object but once the application has started, no user interaction is…
D_Animus
  • 43
  • 9
3
votes
3 answers

OpenEdge 10.2A - INPUT THROUGH set does not work after Windows Update 1703 on Windows 10

We were using below code to get the name of the computer. def new shared var cHost as char format "x(40)" no-undo. INPUT THROUGH hostname NO-ECHO. SET cHost. INPUT CLOSE. DISPLAY chost. After we have updated our computers (Windows 10 - 1703),…
aza
  • 115
  • 13
3
votes
1 answer

How to trim a string based on specific criteria in progress openedge 4gl?

ABC+123:xy+123++23'EFG+123:xy+123++23'GHI+123:xy+123++23+mki+123'LMV++123:xy' I have above string . Apostrophe(') acts as a terminator which denotes end of segments . Hence ABC+123:xy+123++23 is a segment , its start tag is three chars ABC which is…
mac100
  • 137
  • 2
  • 13
3
votes
1 answer

How to write this IF statement in a CASE in Progress 4GL?

I'm trying to give the user the opportunity to filter on an image. In my code I will receive a string like ASSIGN img = "images\green.png". I think it would be best to write the following IF statement in a CASE, but I don't know how, since you…
3
votes
3 answers

Progress-gl - What's benefit of placing variable declaration on top of the procedure

I've been doing Progress 4GL for 8 years though it's not my main responsibility. I do C++ and Java a lot more. When programming in other language it's suggested to have the declaration close to the usage. With 4GL however I see people place the…
3
votes
3 answers

Using Break By for Multiple Fields

I would like to ask how to use multiple break by in a for each statement. Sample: Car Code Color Code 0001 002 0001 002 0001 001 0005 003 0005 002 0007 001 0008 001 0008 005 0008 001 My code…
noob
  • 165
  • 3
  • 18
3
votes
2 answers

Progress 4gl format string with constants

Is there a way to format a string in Progress with a specific character? An example is showing an SSN with x's for the first 6 numbers. I've attempted to use the String function, but it does not respect the letter x being sent in with the…
Stacked
  • 263
  • 1
  • 3
  • 8
3
votes
2 answers

How do you retrieve a date value from a buffer-field in Progress Openedge?

I've got a buffer which contains a mix of data, number and character fields. I am getting the displaying the values of the fields, but for some reason date fields return "?" when I try to add them to a string. I still get ? even if I do ASSIGN…
Screwtape
  • 1,337
  • 2
  • 12
  • 27
3
votes
2 answers

How to query same table twice in Progess OpenEdge Procedure?

In this example, I have two tables; Order Header (oe-hdr) and Location (location). The order header table contains two fields (sale-location-key and ship-location-key) which have an associated location name in the location table. If I were to use…
FancyPanda
  • 85
  • 1
  • 10
3
votes
3 answers

Progress if statement

I'm a progress noob, actually having problem with basic blocks. Below the issue is in my if else statement. It works fine when its just if, then, else then, but when I want to put in more than one statement into the if portion, I have to put it in…
Stephen Kennedy
  • 529
  • 5
  • 18
3
votes
3 answers

How to write data to CSV file in ABL coding

I populated a temp from a query, and the temp table looks like, ttcomp.inum ttcomp.iname ttcomp.iadd There are 5000 records in this temp table and now i wanted to write in a CSV file. I think it could be done with output stream but i don't know…
user3427690
  • 81
  • 1
  • 2
  • 5