Here are OpenEdge ABL (Progress 4GL) interview questions and answers for freshers as well as experienced candidates to get their dream job.
1) What is the way to make a makefile for progress OpenEdge ABL?
You can use JAR file PCT to make a makefile for progress OpenEdge ABL, it is used in an ANT script and manages progress compilation with many other options like multi-threading or just recompiling what is required.
4) In there any automatic way in OpenEdge to know which rows are the latest one that have been added to an OpenEdge table?
There is no automatic way in OpenEdge to know which row is added latest, however the only way to state this is by applying a sequence or by time stamping the record
In case if you are looking for changes without applying schema changes, you can record changes using session or DB triggers to capture updates to the DB and to save that that log activity
Another way is taking periodic back of the database, and then use queries to compare the current DB with the backup DB and get the differences that way
Maintain a db on the customer site with the content of the last table dump. Next time when you want to get any deltas details from the customer, compare that table with the current table
5) Explain how to decorate classes, properties and methods with attributes in progress OpenEdge ABL with .NET bridge?
It is not possible to use an attribute from C# in ABL code. In order to do that you have to create instances from the C# class and then inherit this class in ABL and then make some wrappers if necessary.
6) Mention what are the types of partitioning does OpenEdge allows?
OpenEdge allows three types of partitioning
List partition: Partitioning is done by group based on a field or areas like reporting for a specific country only
Data range partition: Partitioning based on a range of data
Sub-partitioning: Group based on the combination of the above options
7) Mention what is the advantage of using OpenEdge ABL?
ABL makes easy to leverage business terminology and statements to quickly express and understand rich business rules
Single line in ABL saves the time which would be hundreds of lines of codes in another language
It enables developers to integrate and combine classes with procedures and vice versa
It is the only mainstream development language that offers built-in capabilities to access, manipulate and store data from different data sources
It converts ABL structures to XML documents, i.e. data= .xml
There is no requirement to write your own code using SAX or DOM
It supports in and out of XML to ABL objects
8) How you decide whether you should use a property or a variable in OpenEdge ABL?
You can use property if you plan on accessing the value from outside the current class. Likewise, if you only need it inside the class, use a variable. If no one else is supposed to see the value, then value is “state” and not “property”.
9) Mention how big the DB cache and how long will the DB cache stays?
DB cache is sized by the value of the –B configuration parameter. It is created in memory when the database is created and deleted when the database is shut down.
10) Explain whether DB cache is available across different progress sessions even though each session has made its own DB connection?
When run in multi-user mode, the primary broker for the database creates the buffer cache in one or more shared memory segments. These segments are directly accessed by server processes that access the database on behalf of clients, by self-serving clients that carries the client and server code in the same process and by database utility programs and various supporting processes. All of the processes must be running on the same machine as the primary broker process.
11) Explain what is SonicMQ?
SonicMQ offers connectivity to the internet and support for application servers and other industry servers. It provides an interface between OpenEdge ABL and messaging backbone.
12) Mention what are the tools that can be helpful in developing applications by OpenEdge ABL?
Various tools which can be helpful in developing applications are
OpenEdge development server
Open client toolkit
Open client toolkit
13) What OpenEdge development server tool does?
OpenEdge server tool run and validate code for distributed applications on the development scaled Appserver, Transaction Server, Progress Web speed, OpenEdge RDBMS, and client networking.
14) What does OpenEdge debugger does?
OpenEdge debugger does
It validates applications quickly and thoroughly
Check the contents of buffers and variables
Trace processing events
Trace and correct errors in application logic or data handling in any OpenEdge application component
Trace processing events
Access state information
15) Explain how data dictionary can be helpful in OpenEdge ABL?
In OpenEdge ABL, data-dictionary
Maintain and create database definitions, application defaults, and business rules
Automatically uses data dictionary defaults with the ABL when you build new application components
It acts as a central storage mechanism for all database information to insulate you from specific details of each database type and location
These interview questions will also help in your viva(orals)