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
4
votes
2 answers

check file existance in progress 4GL

How to check existance of particular file by use of code. Eg. def var a as character. a = "abc.p" run value(a). ---> here first i want to check if abc.p exist in workspace or not.
MrNeilP
  • 349
  • 1
  • 5
  • 19
4
votes
1 answer

Static vs dynamic queries in OpenEdge

Question is very common, let's see pros and cons of each in OpenEdge in terms of code readability, flexibility and performance off course. Static queries: + readability: convenient `buffer.field` notation + performance: higher (supposedly, need…
Progressive
  • 61
  • 3
  • 9
4
votes
3 answers

what is the efficiency of an assign statement in progress-4gl

why is an assign statement more efficient than not using assign? co-workers say that: assign a=3 v=7 w=8. is more efficient than: a=3. v=7. w=8. why?
Bill
  • 1,237
  • 4
  • 21
  • 44
4
votes
3 answers

command to find the number of entries in a temp table

What is the command to find the number of entries/rows in a temp table? version 10.2b
Bill
  • 1,237
  • 4
  • 21
  • 44
3
votes
1 answer

How to programatically manipulate a popup menu on multiple dynamic widgets in Progress

Language: Progress 10.1C I have a Windows form, and on it I dynamically create a number of widgets (toggle-boxes in this case). I can create anything from 0 to 64 widgets, depending on how many do-hickies the user has in the current collection. As…
RobertT
  • 1,213
  • 10
  • 12
3
votes
4 answers

Implementing assertions in Progress 4GL

What is the best way of implementing assertions using Progress 4GL or WebSpeed?
Vlad Gudim
  • 23,397
  • 16
  • 69
  • 92
3
votes
1 answer

UNDO statement releases available buffer within class instance

I've added the test codes down below. TestClass has BUFFER variable inside itself which is available after the execution of it's CONSTRUCTOR. Everything works fine until the code executes any UNDO or (UNDO, THROW...). After this the class instance…
W0lfw00ds
  • 2,018
  • 14
  • 23
3
votes
0 answers

How to get rid of WARNING: Using -cpinternal UTF-8 is not supported for TTY clients. You may corrupt files or databases. (11994)

Interactive _progres on tty with -cpinternal utf-8 nags the user with WARNING: Using -cpinternal UTF-8 is not supported for TTY clients. You may corrupt files or databases. (11994) Press space bar to continue. Our database are all utf-8, and have…
carl verbiest
  • 1,113
  • 1
  • 15
  • 30
3
votes
2 answers

Move to the right cell in a Openedge browse

I need to move the cell selection in a browse to the cell on the right, when hitting the ENTER key. By default, ENTER moves the selection to the next record, in the same column. I need to change that behaviour in one particular…
Ezequiel
  • 75
  • 7
3
votes
1 answer

Progress 4GL, Is there a reason a buffer record would not be available in a finally block of an internal procedure? Is this expected behavior?

I have an internal procedure that defines a buffer for a temp table and creates a record for that tt using the buffer but the buffer is not available in the finally block Example define temp-table table1 no-undo field field1 as char . run…
3
votes
2 answers

Openedge : an If..then condition in Open Query - Performance issue

open query q for each notepad no-lock where notepad.ctrl-code = pCode and (if pE-num = 0 then notepad.k-num = pk-num else notepad.e-num = pe-num) my question is that - will the if condition in where clause causes the query to run slow?
3
votes
2 answers

How to leave out of FOR EACH statement in Progress?

I am struggling with getting only first 2 records from a table via FOR EACH. My goal is to read only first 2 records from a table, and save one field value to the variables. Let's say I have the table MyTable with fields PartNr, CreationDate,…
Smokus
  • 149
  • 1
  • 9
3
votes
2 answers

How to change the default format of DATE variables in OpenEdge Progress?

Default DATE format when displaying dates is DD/MM/YY I want to change that to DD.MM.YYYY This is just a simple program: DEFINE VARIABLE daDate AS DATE NO-UNDO. daDate = TODAY. MESSAGE daDate. Currently the output looks like this: 16/09/20 I…
Smokus
  • 149
  • 1
  • 9
3
votes
2 answers

Limiting SQL query to 10,000 results by where clause only, by string field

I have an interesting issue that I'm struggling to solve. I am retrieving data from a DB via a web API. I have direct DB access for testing, but my application will need to read the data via the API. In the API I can essentially provide the where…
Nik Weiss
  • 422
  • 7
  • 18
3
votes
2 answers

Progress 4GL: Regarding OUTPUT TO statement

What happens when I don't give directory path? Where the file is exported? DEFINE VARIABLE cPath AS CHARACTER NO-UNDO. cPath = STRING(MTIME) + "_user.out". OUTPUT TO VALUE (cPath). MESSAGE "In side a file". OUTPUT CLOSE.
Bharat
  • 177
  • 7
1 2
3
86 87