Search This Blog

Oracle forms Questions


1. What is Oracle Forms ?

Oracle Forms are the user interfaces that are developed to present the data to the user. This data can be presented once retrieved from the Oracle database. Forms are created at source as .fmb files and later compiled into .fmx (executable file).

 


2. Difference between Frame, Item and Block ?

Frame is used to arrange data block items. Item are Members of data block. Block provides a mechanism for grouping related items into a functional unit for storing, displaying and manipulating Records.

 


3. Difference between Window, Canvas and View Port ?

Window is a container for all visual objects that make up a form application. Window performs functionality such as scrolling, moving and re-sizing.
Canvas is a surface inside a window on which visual objects can be placed. A canvas is assigned to a window.
View port is a visible portion of canvas.

 


4. Types of Canvas

1)      Content Canvas, 2)      Stacked Canvas, 3)      Toolbar Canvas :- a)      Vertical Toolbar , b)      Horizontal toolbar  4)  Tab Canvas
Stacked canvases are the canvas which you can attach to a another canvas or window to show its contents. basically it is extension of content canvas which can be display or hide dynamically. The main advantage of stacked canvas is to extend the size of the content canvas. Suppose
If you want to create a form with 50 columns and 50 rows, if you place all 50 columns in content canvas you have to scroll the complete form to see the 50th column. Instead of that if you create a stacked canvas with say example for 30 columns out of 50 then you need not to scroll the complete form, you can scroll the stacked canvas part so that the remaining 20 columns will remain constant.
Read more...



5. Can we invoke one form from another in a multi-forms application?

OPEN_FORM: It opens up the requested form along with the current form and the user can navigate to both the forms in the same session.
NEW_FORM: It will also open up a new form but after exiting from the current form.
CALL_FORM: It will open the requested form by keeping the parent form active but hidden. Once exited from the requested form, control goes back to the parent form.
Read more...

 


6. What is Forms Trigger ?

Triggers are blocks of PL/SQL code that are written to perform tasks when a specific event occurs within an application.

 


7. Type of Trigger

Block Processing Triggers, Interface Event Triggers, Master/Detail Triggers, Message-Handling Triggers, Validation Triggers, Navigational Triggers, Transactional Triggers, Query-Time Triggers. Read more..

 


8. Sequence of triggers to get fired by Oracle Forms ?

Pre-form-->Pre-block-->Pre-record-->Pre-text item-->When-new-form-instance-->When-new-block-instance-->When-new-record-instance-->When-new-item-instance-->Post-text_item-->Post-Record-->Post-Block-->Post-Form



9. Sequence of Trigger Fire while Committing ?

KEY Commit--> Pre Commit-->Pre/On/Post Delete-->Pre/On/Post Update-->Pre/On/Post Insert-->On commit-->Post Database Commit



10. Master-Detail Relation (Triggers/Procedures/Properties) ?

On-Clear-Details, On-Populate-Details, On-Check-Delete-Master,

Isolated: - Masters Can be deleted when Child is existing
Non- Isolated: - Masters Cannot be deleted when Child is existing.
Cascading: - Child Record Automatically Deleted when Masters is deleted.

On-Clear-Details-It is form level trigger. When we clear the master record, the corresponding child records are cleared automatically.
On-Populate-Details-It is a block level trigger. Retrieves child record automatically, whenever the master( parent ) row is retrieved on to the screen.
On-Check-Delete-Master - It will not allow to remove parent row when depending child row exists.
Read more...

 


11. Messages and Alerts ?

Messages and Alerts are the form of communication between the application and the User. Read more...

 


12. Message Severity level in Oracle Forms ?

Message Severity Level is used to suppress messages according to the severity level. There are six different severity levels that the we can affect: 0, 5, 10, 15, 20, and 25. The default value is 0 for all messages. If the severity level is greater than 25 than the Message cannot be suppressed.  system.message_level='25'

 

 

13. When can the Triggers in oracle forms can be failed? 

During an Un-handled exception, By raising built-in exception FORM_TRIGGER_FAILURE. Means failing a trigger in a controlled manner.

 


14. Difference between ON-ERROR and ON-MESSAGE Trigger ?

ON-ERROR Trigger fires whenever an Oracle Forms causes an error message to display.
ON-MESSAGE Trigger fires whenever an Oracle Forms causes a message to display.

 


 15. LOV? Explain its types

LOV (List of Values): LOV is a list of values populated in a pop-up window and is displayed to the end-user for selection.
Types of LOV:- Static LOV: Contains the predetermined values. And Dynamic LOV: Contains values that come at runtime.

 


16. Difference Between Lov & List Item?
Lov is a property where as list item is an item. A list item can have only one column, lov can have one or more columns.

 


17. Different Display Styles Of List Items?

Pop_list,  Text_list,  Combo box

 


18. Editors ? Explain different types of editors in Oracle Forms ?

Editors are used for special requirements such as: larger editing window, Search/Replace, cut, copy, paste etc. 1) Default Editor 2)System Editor 3)User-Named

 


 19. what is Property Classes ?

A Property Class is a named object that contains a list of properties and their settings. Read more...



19. what is Visual Attributes ?

Visual Attributes are the font, color and pattern properties that can be set for form and Menu objects. Visual Attributes includes the Font Properties such as Font name, font size, font style Font width etc. and color or pattern properties such as foreground color, background Color, Fill pattern etc. 

 


 20. What is Object Group ?

An object group is a container for a group of objects. You define an object group when you want to package related objects so you can copy or subclass them in another module. Object groups provide a way to bundle objects into higher-level building blocks that can be used in other parts of an application and in subsequent development projects.

 


21. What is Record Group ?

Record Group defines the data structure that is used to represent LOV and also used to exchange data between forms:- type Query , non query and Static. Read more...

 


22. Difference between Object Libraries and PL/SQL Libraries ?

Object Libraries are the collection of Form objects that can be used in other modules. Can contain simple objects, property classes, object groups and program units.
PL/SQL Libraries are the collection of PL/SQL Program units including procedures, Functions and packages whose code can be referenced and called from other modules.

 


23. what is OC4J ?

OC4J stands for Oracle Containers for J2EE. OC4J is preferred to run form applications. Oracle connectivity with JAVA is done through OC4J.

 


24. Difference between OPEN_FORM, CALL_FORM and NEW_FORM ?

OPEN_FORM: OPEN_FORM opens another form in a modeless window. The user can work on multiple forms concurrently. The user can navigate within multiple forms.

CALL_FORM: CALL_FORM calls another form in a Modal window. The user cannot navigate within different Forms. Requires to exit the called form before navigating back to the calling form. Forms are called in the same session.

NEW_FORM: NEW_FORM exits the current form and opens the new form as a parent window. NEW_FORM releases the memory by exiting the current form.

 


25. Methods for exchanging data between Oracle Forms ?

1)      Through Global variables- A global variable is a Form Builder variable whose value is accessible to triggers and subprograms in any module that is active during the current session. A global variable stores a character string of up to 255 characters in length

2)      Through Parameter Lists  - the parameter list is used to pass parameters between forms and reports.

Declare    p_id paramlist;     BEGIN
p_id := Get_Parameter_List('p_list');
IF NOT Id_Null(p_id) THEN
Destroy_Parameter_List('p_list');
END IF;
p_id := CREATE_PARAMETER_LIST ('p_list');
ADD_PARAMETER (p_id, 'P_EMPNO', text_parameter, EMP.empno);
ADD_PARAMETER (p_id, 'P_SALARY', text_parameter, EMP.sal);
OPEN_FORM ('emp_tran', activate, no_session, p_id);
END;

 


26. Sequence of firing Triggers at Form level ?

1) PRE-LOGON---> 2) ON-LOGON---> 3)POST-LOGON--->  4)PRE-FORM--->5) PRE-BLOCK---> 6)      WHEN-NEW-FORM-INSTANCE--> 7) WHEN-NEW-BLOCK-INSTANCE
8) WHEN-NEW-ITEM-INSTANCE---> 9) POST-BLOCk---> 10)  POST-FORM

 


27. Firing Triggers at Item level ?

1) PRE-TEXT-ITEM--> 2) WHEN-NEW-ITEM-INSTANCE---> 3) KEY-NEXT-ITEM---> 4) POST-CHANGE---> 5) WHEN-VALIDATE-ITEM---> 6) POST-TEXT-ITEM

 


28. What are System Variables ?

1)  System.Cursor_Block  2)  System.Cursor_Record 3)  System.Cursor_Item 4)  System.Last_Record 5)  System.Last_Query

 


29. Difference between Static & Dynamic LOV ?

The static LOV contains the predetermined values while the dynamic LOV contains values that come at run time

 


30. What is Key-next/Post-Text ?

Post-Text–Item: Fires during the Leave the Item process for a text item. Specifically, this trigger fires when the input focus moves from a text item to any other item.

Key-Next-Item: The key-next is fired as a result of the key action. Key next will not fire unless there is a key event.

 


31. Where can we configure keyboard shortcut in Oracle Forms?

fmrweb.res File



32. what is difference between COMMIT_FORM and FORMS_DDL('COMMIT') ?

COMMIT_FORM applies all changes, while FORMS_DDL('COMMIT') just commits current transaction. When you make some changes through Forms, records in database are not updated immediately, just locked (default behavior). When you issue POST_FORM, that changes are really applied (you may see a message: x records applied). COMMIT_FORM calls both POST_FORM and COMMIT, thus you obtain another message: x records applied and saved. When you call commit within PL/Sql, commit_form is called indeed. That's why in many cases you get an annoying message: no changes to apply.





No comments:

Post a Comment

Please share your feedback

Hello... Please share your valuable feedback in comment section on this blog , almost all the menus are updated now. Soon I will add more re...