Perguntas e Respostas usadas em Entrevistas de Progress 4GL – ADM2

1.   What is Smart objects in Progress 4GL?

               We can play in around with the object we called as smart object.



Less development effort

  1. What are the types of smart object?

They are 9 Types:

Ø       Smart Window.

Ø       Smart Frame.

Ø       Smart Dialog.

Ø       Smart Data browser.

Ø       Smart Data Viewer.

Ø       Smart Folder.

Ø       Smart Panel.

Ø       Smart Data Object.

Ø       Smart Filter.

  1. What is smart container?

Collection of smart object can be placed on the smart container.

               What is smart data object(SDO)?

                 The  only one smart object which connect the database.

            4. Frequently used functions for SDO?

            Before  going to use the following functions you should have the handle.

                                1. Open Queryà Refresh the data (all the rows).

 2. GetrowIndentàcurrent record.

               3. RowIdWhereàPass the dynamic query.

               4. SetQueryWhereàChange the existing value

                GetQueryWhereàwhere condition.

               5. SetQuerySort/GetQuerySort

               6. FetchRowIdent.

              7. RefreshRowàRefresh the current row.

              8. Addrow

              9. Deleterow         

             10. Copyrow.

                           11. ColumnValue

                           12. GetColumnStringValue.

                 5. Pre-defined functions in ADM2

               Adm-create-objects:(Progress Generated procedure) no override

                                                All the smart objects can be seen with pageno.

                Smart Folder(Tab strip)

                                                We can place the objects in different pages.

                Smart window

                                                It’s a parent smart object.

                Smart Frame/System Dialog

                                                Its like child of smart window.

                Smart Data Object(SDO)

                                Only one object that directly connects to the database.

6.       What are the types of smart panel?

They are two panels:

                Update panel.

                Navigational panel.

             7. How many files will be created while creating SDO?

They are five files:

1)        .W                     

2)        .R              

3)        _CL.R

4)        _CL.W

5)        .I

.W,.RàIt has procedure and function which need database connection.

-CL.W,-CL.Rà It has procedure and function which do not require database function.

.ià It has all field informations.

           8. What are the types of validation?

Client Level Validation

Validation in SDO:

In viewer we are make validation in the procedure of rowobjectvalidate

Validation in viewer:

In SDO we are using add-record, update-record, write-record

Server Level Validation.

                                In server side validation we are using the procedure in SDO





9.       How will you hide & view the smart object?

To Hide Object :

Run HideObject <Object name>

To View Hidden Object :

Run ViewObject <Object name>

10.    What are the types of row object table?

1.       Row Object table.

2.       Row Object Update Table.

11.    Where will you put validation in SDO?

For client side validation we are using the procedure


For server side validation we are using the following procedure





12.    How will you get viewer handle from SDO?


Dynamic-Function (‘getUpdateSource’).



13.    How will you get SDO handle from Browser/Viewer?


Dynamic-Function (‘getDataSource’).



14.    How will you get container handle from Browser/Viewer/SDO?


Dynamic-Function (‘getContainerSource’).



15.    How to get query for SDO?


Dynamic-Function (‘getQueryWhere’ IN <SDO handle>).


                                Dynamic-Function(‘getquerywhere’ in h_dcust1000).

16.    How to get the where clause to the SDO?


Dynamic-Function (‘getQueryWhere’ IN <SDO handle>, <Where Clause Condition>).


                          Dynamic-Function(‘getquerywhere’ in h_dcust1000,where_clause:screen-value).

17.    How to open query in SDO?


Dynamic-Function (‘OpenQuery’ IN <SDO handle>).


                                Dynamic-function(‘openquery’ in h_dcust1000).

18.    What is the flow of smart object?

                                                               i.      Construct Object

                                                             ii.      Initialize

                                                           iii.      Main  Block

19.    How to select a particular page?


Run selectPage(<page no>)


                                Run selectpage (‘1’).

20.    How to Hide/View object?

To Hide an object :

Widget : Hidden = true.

To View a hidden object:

Widget : Hidden = false.

21. What are the types of smart links?

                                                               i.      Data

                                                             ii.      Update

                                                           iii.      Table IO

                                                           iv.      Page

                                                             v.      Navigation

                                                           vi.      GroupAssign

SourceLink TypeDestination
Navigation PanelNavigationSDO
Update PanelTableIOViewer

21.    How to add /Remove link during Runtime?

Adding link in runtime :


Run addLink(<Source>,<Type of link>,<Destination>)


                Run addlink(h_vcust1000,update,h_dcust1000).

                Removing link in runtime :


Run removeLink (<Source>,<Type of link>,<Destination>)


                Run removeLink (h_vcust1000, update, h_dcust1000).

22.    What is data available procedure?

Data Available procedure will hold the currently selected row of the browse widget.

23.    How to get particular field value?

Getting particular field value :

                Dynamic-function(‘column-name’ In handle-variable name,“cust-num”).

Dynamic-function(‘columnstringvalue’ In handle-variable name “name”).

                Rowobject . <field name> : Screen-Value



24.    How to add more then one buffer into query handle?

Using Add-Buffer method we can add more buffer into the query handle.




25.    How to get RowIdent in SDO?

dynamic-function(‘getRowident’ IN SDO_hdl)

26.    How will you convert RowIdent to RowId?

Using the to-rowID() method we can convert the rowident into row id


rowID(<table-name>) = to-rowID(dynamic-function(‘getRowident’ IN SDO_hdl))

27.    What is smart filter in Progress 4GL?

This is used to search the records based on the SDO fields with different criteria like begins contains equal, not equal, greater then, less then etc….

28.    How to get the current page in Progress 4GL?

Using this method we can get the current page


Define variable lv_int as integer no-undo.

lv_int = getCurrentPage ()

Veja a parte 2


Formado pela FPJ (Faculdade Politecnica de Jundiai), atualmente atuando como analista de sistemas. Trabalha há mais de 10 anos com analise, desenvolvimento e customização de sistemas desenvolvidos em Progress 4GL como Magnus, EMS e HCM. Atua também com desenvolvimento web, utilizando a ferramenta WebSpeed.

Você pode gostar...

1 Resultado

  1. 2 de julho de 2021

    […] Veja mais Entrevistas de Progress 4GL […]

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *