Forms Interview Questions & Answers

download Forms Interview Questions & Answers

of 17

Transcript of Forms Interview Questions & Answers

  • 8/12/2019 Forms Interview Questions & Answers

    1/17

    1. What is canvas?1. Canvases guides the layout of the blocks / records / items. A Content CanvasView (orsimply Content View) is the base view that occupies the entire content pane of the windowin which it is displayed. You will usually define at least one content canvas view for eachwindow in your application.

    A canvas is an object that can be displayed on the screen. The canvas may contain buttons,graphics, display items and text items.-------------| xxxx zzz || xxxx zzz || xxxx zzz || [SAVE] |-------------

    The canvas may be smaller or larger than the screen size. One canvas may be stacked on top ofanother canvas so that the user might see several canvases at the same time.-------------| 1 |

    | ----- || | 2 | || ----- |-------------

    A large canvas might only be partially visible to the user. This is known as a "view" of thecanvas. If the cursor navigates to an enterable item on a canvas, then the canvas becomesvisible to the user. However, when the cursor leaves the items on the canvas, the canvaswill not automatically be hidden from view unless another canvas covers it.-------------

    | vvvvvv || vvvvvv || vvvvvv || || |-------------

    2. How many types of canvas are there in a form?2. There are 5 types are canvas are there in a forma) Contant Canvas.b) Stacked Canvas.a) Horizontan Tool Bar.b) Varitacal Toll Bar.

    c) Tab Canvas.

    3) Can you have a form without a Canvas?3) No, Canvas Object Physical represent table columns.

    4) Does a stacked canvas require a content canvas?4) Yes, Sometime the number of columns in the table cannot contained on a standared canvasor the system require that information on the form be displayed either on a click of a button

  • 8/12/2019 Forms Interview Questions & Answers

    2/17

    or on some condition being set for the system.

    Multiple canvases can be placed on the same form. Additional items can be included in the secondcanvas and code can be written to make the canvas visible/ invisible when a button is pressed.

    Since the canvas is placed on the window the size of the canvas is restricted tothe size of thewindow. Similarly if the window is resized, the canvas must be resized. The typeof the canvasdetermined the canvas-resizing behavior. The default value for the canvas type is "contant".This property value ensure that the canvas is automatically resized horizontallyand varticallybased on the size of the window.

    There may be a need to place some items on the contant canvas and other items ona new canvassuch that the contant canavs and the new canvas are stacked one on top of the other.

    A canvas that can be stacked on the contant canvas is called a "Stacked Canvas".The stacked

    canvas is displayed in the same window along with the window's contant canvas. There can beany number of stacked canvases placed on the content canvas.

    If the form includes multilpe canvases, a common practice is to make the stackedcanvas visibleor invisible programmatically.

    5) What is tab canvas?5) Just like the paper form is made of multiple pages, the data entry form couldalso be createdwith multiple pages. The type of canvas that can include multiple tab pages is called "Tab canvas".

    6) what is the difference between horizontal and varitical toolbar?6)

    7) What are the basic concepts of Oracle Forms?7) Forms functionality is driven by user events (such as pressing a key) and navigation events(such as the cursor about to enter/leave a field). These events are identified by triggers ina form.These triggers fall into several groups:PRE - Fires prior to an eventPOST - Fires after an event

    WHEN - Fires when an event occursKEY - Fires when the corresponding key is pressedON - Replaces default event processing

    These triggers include events such as:1. PRE and POST triggers for the form, block, row, and item.2. PRE and POST triggers for row inserts, updates, and deletions.3. WHEN triggers fire as a direct result of an event such as the user clicking on abutton (WHEN-BUTTON-PRESSED) or the cursor navigating to a new item and readying

  • 8/12/2019 Forms Interview Questions & Answers

    3/17

    for user input(WHEN-NEW-ITEM-INSTANCE).4. Keys the user can press on their keyboard like the Tab button (KEY-NEXT-ITEM)orF10 (KEY-COMMIT).5. ON triggers fire when an event occurs. For example, ON-MESSAGE fires when forms is about toissue a message. This gives the developer an opportunity to trap and replace particularmessages with custom messages.

    By adding PL/SQL code to a trigger you can:1. Alter the way a trigger would ordinarily work. For instance, by creating a KEY-ENTQRY ona field with: null; you will prevent the user from pressing F8.2. Supplement the way something works - for instance by creating a KEY-DELREC trigger ona block with code that asks the user if they "really" want to delete that recordbeforeissuing the delete_record;.

    Trigger Scope: If you create a KEY-EXEQRY on a field with: null; then you will prevent the userfrom pressing F8 while the cursor is in that field. If, instead, you attach the

    same triggerto a block, then you will prevent the user from pressing F8 while the cursor isanywhere inthat block. If, instead, you attach the same trigger to the form, then you willprevent theuser from pressing F8 anywhere within the form.

    You can override high level triggers at a lower level. For example, if you havedisabled F7 atthe form level, you can add a KEY-ENTQRY to a block with: enter_query; that willallow theuser to press F7 to enter a query while the cursor is in that block. This meansthat F7 will

    work in that block but nowhere else in the form.

    8) What is the difference between base table block and control block.8) Blocks (Base Table vs. Control): A most basic concept in a form is blocks. Blocks arebasically comprised of 2 types:1. Control block - A block not associated with a table. This block is usually asingle row blockthat has no interaction with the database.2. Base table block - this is associated with a table. You do not have to code any SQL statements. Forms will automatically:A. Query rows of data from the table (execute_query)B. Insert a new row below the current row (create_record)

    C. Delete the current row (delete_record)D. Update rows (by the user typing values on a queried row)E. Handle row lockingF. Make all these database changes permanent at commit time

    Base Table and Control Items: An item in a base table block that relates directly to a basetable column is a base table item. An item that does not relate to a database column is acontrol item. Base table blocks can contain both base table items and control it

  • 8/12/2019 Forms Interview Questions & Answers

    4/17

    ems.

    For example, a base table block might contain four base table items that displayquerieddatabase values and a fifth item that displays calculated values but does not correspond to anycolumn in the base table. The fifth item would be a control item populated by anassignmentstatement in the trigger that does the calculation.

    Because control blocks are not associated with database tables, none of the items they containcan be base table items. (You can, however, populate control items with databasevalues bywriting your own SQL statements in trigger code.)

    Control items can be used to do the following:* Display totals, averages, rankings, and other summary information calculated from valuesin base table items and database tables.* Accept input from operators that is required by the application, but that is not storedin the database.* Display "look-up values," that is, database values derived from a table other

    than the basetable of the block.You can also reference the values of control items in code, much like local andglobal variables.Buttons and chart items are always control items. Because these items do not store values,they cannot relate to columns in the database.

    Item in a block -Items are the interface objects that display information to operators andallow them to interact with your application. A field in the base table in the database oranother field, other fields may be buttons, check boxes, etc.

    1. Button: A rectangle with a text label or an icon graphic inside.2. Chart item: A bordered rectangle of any size that can display a chart or other displaygenerated by Oracle Graphics. Operators cannot navigate to or manipulate chart items.3 Check box: A text label with a graphic state indicator that displays the current value aseither checked or unchecked. Selecting a check box toggles it to the opposite state.4. Display item: A read-only text box whose value must be fetched or assigned programmatically.Operators cannot navigate to a display item or edit the text it contains.5. Image item: A bordered rectangle of any size that can display images fetched

    from thedatabase or read in from the file system.6. List item: A list of choices displayed as either a poplist (sometimes calleda drop list),a t-list (sometimes called a list box), or a combo box.7. Radio group: A group of radio buttons, one of which is always selected.8. Text item: A single- or multi-line text box that supports a variety of data types,format masks, and editing capabilities.9. OLE container: An area that stores and displays an OLE object that is created

  • 8/12/2019 Forms Interview Questions & Answers

    5/17

    from anOLE server application.10. VBX control: A custom control that simplifies the building and enhancing ofuser interfaces.

    Each item in a form (text item, image item, radio group, and so on), belongs toa block.Blocks are logical containers that have no physical representation--only the items containedin a block are visible in the application interface. However, like other objects,blocks have properties, and can be created, copied, and modified in the Designer.

    Blocks provide a mechanism for grouping related items into a functional unit forstoring,displaying, and manipulating records. Just as tables in the database consist ofrelatedcolumns and rows, blocks contain related items that display data records.

    There is no practical limit to the number of blocks that can be defined in a form.A block is a logical grouping only; the items in a block can be placed on different

    canvas-views and can be displayed in different windows.

    9) How do blocks relate to each other?9) The relationship between block represent the relationships of an ER schema.It can also represent relationship between tables in the relational data model based onforeign keys. It can specify a "join condition" between a "master" and "detail"blocks.

    10) Which trigger are created when master -detail relation?10) Master detail property

    * NON-ISOLATED (default)a) on check delete masterb) on clear detailsc) on populate details

    * ISOLATEDa) on clear detailsb) on populate details

    * CASCADEa) per-deleteb) on clear detailsc) on populate details

    11) How to use Dynamic SQL in Form?11) The reason why you would want do to do this is because, like in database procedures,you can't use DDL such as DROP TABLE 'table_name' directly in PL/SQL with Forms.The way to do it is with the buit-in EXEC_SQL package.The same thing can also be accomplished with the FORMS_DDL built-in but that only applies to thecurrent database connection, with the EXEC_SQL package its possible to have data

  • 8/12/2019 Forms Interview Questions & Answers

    6/17

    baseconnections to multiple databases and also execute non-oracle database procedures.

    12) What the relationships were between canvases, views and windows?12)a) Multiple canvases with only one window : The most common problem I've found in this scenariois that you click a button on your main canvas or some other action is performed, the resultof which is you expect to see a secondary canvas popping up containing some sortof usefulinformation for the user to see or act upon. The thing is the user only sees itfor about100th of a second, if they're lucky, before it miraculously disappears again.What's going on here, after all your button or whatever does a SHOW_VIEW('CANVAS

    _NAME');it's supposed to display the secondary canvas isn't it? Yes, and it does howeverit will onlywork correctly if the secondary canvas is of type STACKED. Changing the propertytothis should solve your problem. Another way of doing it without changing the property ofthe canvas depends on your canvas having an item on it that you can do a GO_ITEM

    on.If it does then do your GO_ITEM just before the SHOW_CANVAS and it should work correctly.You will find though that using this method means the secondary canvas takes upthe wholeof your window obscuring all of your primary canvas and you can't use its viewport propertiesas you can with stacked canvases.

    b) Multiple canvases and multiple windows: This is similar to the previous problem inthat you click a button on your main window or some other action is performed and you

    expect to see a secondary canvas popping up in a separate window of its own.This time though the user only sees the window itself with none of the useful information on it.What's going on here, after all your button or whatever does a SHOW_WINDOW('WINDOW_NAME');it's supposed to display the secondary window isn't it? It does, however it willonlywork correctly if you also do a SHOW_VIEW('CANVAS_NAME') too. Note that the calling windowwill still have the focus (i.e. be on top). If you want the called window to beon topyou either need to click on it or do a GO_ITEM to an appropriate navigable fieldon the called

    window. If there isn't one available a work-around is to create a dummy item anddisguise itby making its background colour the same as the called window and ensuring its BORDER BEVELis set to NONE. One last check if things still aren't going right is to make sure that yoursecondary canvas window property is pointing to the correct window.

    While I was on the subject I thought I'd just bring up a couple of points on therelationships

  • 8/12/2019 Forms Interview Questions & Answers

    7/17

    between canvases, viewports and windows which is crucial to remember if you wantto writegreat forms applications.

    From a developers standpoint, canvases and forms are interchangeable in as muchas canvasesare where you put your form items, buttons, text and so on. Whether or not the usersees all those things is another matter of course and that's where windows and viewports come in.In general, content canvases don't have viewports associated with them and willdisplay in thewhole of the window they are assigned to. Therefore if the window is big enough,the userwill see everything that's on them. Stacked canvases on the other hand can havea viewportthat can be thought of as being a sub-window within the canvas. The user will only see thingson the canvas which are inside the viewport. And because you can programmatically control thesize and position of the viewport it means that you can choose to display, or not, as thecase may be, only the things you want your user to see.

    13) What are the types of triggers and how the sequence of firing in text item13) Triggers can be classified as Key Triggers, Mouse Triggers, Navigational Triggers,

    1. Key Triggers: Key Triggers are fired as a result of Key action.a) Key-next-Item: Tab or Enter.b) Key-ExeQry: F8c) Key-NxtBlk: Shift F5d) Key-Commit: F10

    2. Action Trigger: Trigger that get executed due to user interaction are calledAction Triggers. action triggers are associated with specific objects.a) When-Button-Pressed: Pressing a button.

    b) When-CheckBox-Changed: Clicking a check box.c) When-Image-Pressed: Clicking the image.d) When-List-Changed: A List item is selected.e) When-Radio-Changed: Clicking on a Radio Button.f) When-Window-Activated: When focus is on a specific whindow.g) When-Window-Closed- When a window is closed.

    3. Mouse Triggers: Mouse Triggers are fired as a result of the mouse navigation.a) When-Mouse-Clickb) When-Mouse-DoubleClickc) When-Mouse-Downd) When-Mouse-Enter

    e) When-Mouse-Leavef) When-Mouse-Moveg) When-Mouse-Up

    4. Navigational Triggers: These Triggers are fired as a result of Navigation. for example when the cursor navigates out of a text item to another text item thePost-Text-Item trigger for the current text item and Pre-Text-Item trigger for the next text item it moves to will both firein sequence.

  • 8/12/2019 Forms Interview Questions & Answers

    8/17

    1 Pre-Text-Item and Post-Text-item.2. When-New-Instance.

    We cannot call restricted procedures like go_to('my_block.first_item') in the Navigationaltriggers but can use them in the Key-next-item.The Difference between Key-next and Post-Text is an very important question. Thekey-next isfired as a result of the key action while the post text is fired as a result ofthemouse movement. Key next will not fire unless there is a key event.

    Example(1) The sequence of firing in a text item are as follows: a) pre-text-item b) when-new-item-instance c) key-next-item d) when-validate-item

    e) post-text-item

    Example(2) If there are two text items in a block, say text1 and text2. If the focus is on text2 and user moves the cursor to text1 by doing shift tab, then which triggers will fire? In what order? a) Key-Prev-item b) When-validate-item

    c) post-text-item d) Pre-text-item e) When-new-item-instance

    Example(3) As soon as form open in the memory, a series of navigational triggersare executed.The sequence of trigger that fire when a form is invoked are as follows-1. Pre-Form2. Pre-Block3. Pre-Record4. Pre-Text-Item5. When-New-Form-Instance6. When-New-Block-Instance

    7. When-New-Record-Instance8. When-New-Item-Instance

    14) The difference between when_validate_item trigger and key_next_item triggerin Oracle Forms.14) WHEN-VALIDATE-ITEM trigger fires to check the value of an item to insure itis valid. Thetiming of this event may vary but one of the most common is when the user entersa value andcauses the cursor to try to exit the item by pressing the TAB key or using the mouse to clickelsewhere in the form. This trigger can also fire when then user attempts to leave a record

    that has been marked for insertion or change.

    KEY-NEXT-ITEM fires only when the user presses the TAB key. You should also notethatWHEN-VALIDATE-ITEM trigger is a restricted procedure, so you cannot use navigationbuilt-ins (such as GO_BLOCK). There are no such restrictions with KEY-NEXT-ITEM. So we shouldnot validation code in KEY-NEXT-ITEM.

  • 8/12/2019 Forms Interview Questions & Answers

    9/17

    15) Is forms is a object oriented tool ? why?15) yes, partially. 1) PROPERTY CLASS - inheritance property 2) OVERLOADING : procedures and functions.

    16) What are property classes ? Can property classes have trigger?16) property class & visual attribute?Ans: Property Class: A property class is a named object that contains a list ofpropertiesand their settings. Once you create a property class you can base other objectson it.An object based on a property class can inherit the setting of any property in the classthat makes sense for that object.

    Property class inheritance is a powerful feature that allows you to quickly define objectsthat conform to your own interface and functionality standards. Property classesalso allowyou to make global changes to applications quickly.

    Property class assignment cannot be changed programmatically. By simply changingthe definitionof a property class, you can change the definition of all objects that inherit properties

    from that class.

    For example we can create a property class object, with properties mentioned below and attach itto all the push buttons in the product form.

    Name : PClass_Button.Width : 23Height: 23Iconic: YesBackground Color: GrayCanvas: Product_can

    Visual attribute: Visual attributes are the font, color, and pattern propertiesthat you setfor form and menu objects that appear in your application's interface. Visual attributes caninclude the following properties:1. Font properties: Font Name, Font Size, Font Style, Font Width, Font Weight2. Color and pattern properties: Foreground Color, Background Color, and Fill Pattern,Char mode Logical Attribute.

    17) Diff. between VAT and Property Class? imp17) Named visual attributes define only font, color, and pattern attributes;property classes can

    contain these and any other properties.You can change the appearance of objects at runtime by changing the named visualattributeprogrammatically; property class assignment cannot be changed programmatically.When an object is inheriting from both a property class and a named visual attribute, thenamed visual attribute settings take precedence, and any visual attribute properties in theclass are ignored.

  • 8/12/2019 Forms Interview Questions & Answers

    10/17

    18) If you have property class attached to an item and you have same trigger written for theitem. Which will fire first?18) Item level trigger fires, If item level trigger fires, property level trigger won't fire.Triggers at the lowest level are always given the first preference. The item level triggerfires first and then the block and then the Form level trigger.19) What are record groups? Can record groups created at run-time?19) A record group is an internal Oracle Forms data structure that has a column/row frameworksimilar to a database table. However, unlike database tables, record groups areseparateobjects that belong to the form module in which they are defined. A record groupcan havean unlimited number of columns of type CHAR, LONG, NUMBER, or DATE provided thatthe totalnumber of columns does not exceed 64K.

    Record group column names cannot exceed 30 characters. Programmatically, recordgroups can beused whenever the functionality offered by a two-dimensional array of multiple data types is

    desirable.

    TYPES OF RECORD GROUP:1. Query Record Group: A query record group is a record group that has an associated SELECTstatement.The columns in a query record group derive their default names, data types, andlengths fromthe database columns referenced in the SELECT statement. The records in a query record groupare the rows retrieved by the query associated with that record group.2. Non-query Record Group: A non-query record group is a group that does not have an associated

    query, but whose structure and values can be modified programmatically at runtime.3. Static Record Group: A static record group is not associated with a query; rather, you defineits structure and row values at design time, and they remain fixed at runtime.

    20) What is mouse navigate property of button?20) When Mouse Navigate is True (the default), Oracle Forms performs standard navigation tomove the focus to the item when the operator activates the item with the mouse.

    When Mouse Navigate is set to False, Oracle Forms does not perform navigation (a

    nd theresulting validation) to move to the item when an operator activates the item with the mouse.

    21) What is MDI form? how u will attach vertical toolbar in the form?21) MDI(Multiple Document Interface): Specifies whether the window is a Documentwindow or aDialog window. Document and dialog windows are displayed differently on windowmanagers thatsupport a Multiple Document Interface (MDI) system of window management.

  • 8/12/2019 Forms Interview Questions & Answers

    11/17

    Attachment Of vertical toolbar.On Microsoft Windows, specifies the toolbar canvas that should be displayed as averticaltoolbar on the MDI application window. The canvas specified must have the CanvasType propertyset to Vertical Toolbar.Applies to formSet Form BuilderDefault NullRequired/Optional optional

    22) Can object group have a block?22) Yes , object group can have block as well as program units.

    23) What are user-exits? What is Foreign function?23) It invokes 3GL programs.

    Foreign functions are subprograms written in a 3GL programming language that allow you tocustomize your Oracle Forms applications to meet the unique requirements of yourusers.Foreign functions are often used to enhance performance or provide additional functionality toOracle Forms.

    In Oracle Forms, you can invoke a foreign function from a user exit interface. Auser exitinterface allows you to call a foreign function by using the USER_EXIT built-infrom a triggeror a user-named subprogram. Invoking a foreign function from the USER_EXIT built-in returns aninteger value to Oracle Forms indicating success, failure, or a fatal error. Following theexecution of the USER_EXIT built-in, the values of the error variables in OracleForms--FORM_FAILURE, FORM_FATAL, and FORM_SUCCESS--are set accordingly.

    Foreign functions that you invoke from a user exit interface are contained in an

    Oracle Formsdynamic link library or linked with Oracle Forms Runform. Creating a user exit interface toa foreign function requires you to link additional files to Oracle Forms dynamiclink librariesor Oracle Forms Runform. The additional files provide information about the userexit interfacesand the entry points that allow Oracle Forms to invoke foreign functions from auser exitinterface.

    24) Can you pass values to-and-fro from foreign function? how?24) Yes . You obtain a return value from a foreign function by assigning the ret

    urn value to anOracle Forms variable or item. Make sure that the Oracle Forms variable or itemis the samedata type as the return value from the foreign function.After assigning an Oracle Forms variable or item value to a PL/SQL variable, pass the PL/SQLvariable as a parameter value in the PL/SQL interface of the foreign function.The PL/SQLvariable that is passed as a parameter must be a valid PL/SQL data type; it mustalso be the

  • 8/12/2019 Forms Interview Questions & Answers

    12/17

    appropriate parameter type as defined in the PL/SQL interface.

    25) What is IAPXTB structure?25) The entries of Pro*C and user exits and the form which simulate the Pro*C or user_exitare stored in IAPXTB table in database.

    26) Can you call WIN-SDK thru user exits?26) Yes.

    27) Does user exits supports DLL on MSWINDOWS ?27) Yes.

    28) What is path setting for DLL?28) Make sure you include the name of the DLL in the FORMS45_USEREXIT variable of theORACLE.INI file, or rename the DLL to F45XTB.DLL. If you rename the DLL to F45XTB.DLL,replace the existing F45XTB.DLL in the \ORAWIN\BIN directory with the new F45XTB.DLL.

    29) How is mapping of name of DLL and function done?29) The dll can be created using the Visual C++ / Visual Basic Tools and then the dll is put in

    the path that is defined the registery.

    30) what is pre compiler?30) It is similar to C pre compiler directives.

    31) Can you connect to non - oracle datasource ? How?31) Yes .

    32) what are key-mode and locking mode properties? level ?32) 1. Key Mode: Specifies how oracle forms uniquely identifies rows in the database. This isproperty includes for application that will run against NON-ORACLE datasources.Key setting: unique (default.), udateable, n-updateable.

    2. Locking mode: Specifies when Oracle Forms should attempt to obtain database locks on rowsthat correspond to queried records in the form.a) immediate b) delayed

    33) What are savepoint mode and cursor mode properties ? level?33) 1. Specifies whether Oracle Forms should issue savepoints during a session.This property isincluded primarily for applications that will run against non-ORACLE data sources.For applications that will run against ORACLE, use the default setting.2. Cursor mode - define cursur state across transaction Open/close.

    34) What is transactional trigger property?34) Identifies a block as transactional control block. i.e. non - database blockthat oracleforms should manage as transactional block.(NON-ORACLE datasource) default - FALSE.

    35) What is OLE automation ?35) OLE automation allows an OLE server application to expose a set of commandsand functions

  • 8/12/2019 Forms Interview Questions & Answers

    13/17

    that can be invoked from an OLE container application. OLE automation providesa way for anOLE container application to use the features of an OLE server application to manipulate anOLE object from the OLE container environment. (FORMS_OLE)

    36) What are OPEN_FORM, CALL_FORM, NEW_FORM? diff?36)OPEN FORM: When one form invokes another form by executing OPEN_FORM, the firstform remainsdisplayed, and operators can navigate between the forms as desired. An opened form can sharethe same database session as the form from which it was invoked, or it can create a separatesession of its own. For most GUI applications, using OPEN_FORM is the preferredway toimplement multiple-form functionality.

    CALL_FORM: It calls the other form. but parent remains active, when called formcompletesthe operation, it releases lock and control goes back to the calling form. Whenyou call a form,Oracle Forms issues a savepoint for the called form. If the CLEAR_FORM functioncauses a

    rollback when the called form is current, Oracle Forms rolls back uncommitted changes to thissavepoint.

    When one form invoke another from by executing CALL_FORM, when form A call formB, form Bbecomes the active form in the session, but from A remain in memory. If the operator exits fromform B form A again become the active form.

    NEW_FORM : When one form invokes another form by executing NEW_FORM, Oracle Forms exits thefirst form and releases its memory before loading the new form. Calling NEW_FORM

    completelyreplaces the first form with the second. If there are changes pending in the first form,the operator will be prompted to save them before the new form is loaded.

    37) What is call form stack?37) When successive forms are loaded via the CALL_FORM procedure, the resultingmodule hierarchyis known as the call form stack.

    38) Can u port applictions across the platforms? how?38) Yes we can port applications across platforms.Consider the form developed ina windows

    system.The form would be generated in unix system by using f60gen my_form.fmb scott/tiger

    39) Can a button have icon and lable at the same time ?39) NO

    40) what is library where do use?40) A library is a collection of subprograms, including user-named procedures, functions,and packages. Libraries provide a convenient means of storing client-side progra

  • 8/12/2019 Forms Interview Questions & Answers

    14/17

    m units andsharing them among multiple applications.Once you create a library, you can attach it to any other form, menu, or librarymodule.Then, you can call library program units from triggers, menu item commands, anduser-namedroutines you write in the modules to which you have attached the library.The same library can be attached to multiple forms and menus. Conversely, a single form or menucan have more than one attached library.

    41) What is Current record attribute property?41) Specifies the named visual attribute used when an item is part of the current record.Current Record Attribute is frequently used at the block level to display the current row in amulti-record If you define an item-level Current Record Attribute, you can display apre-determined item in a special color when it is part of the current record, but you cannotdynamically highlight the current item, as the input focus changes.

    42) Can u change VAT at run time?42) Yes. You can programmatically change an object's named visual attribute sett

    ing to change the font, color, and pattern of the object at runtime.

    43) Can u set default font in forms?43) Yes. Change windows registry(regedit). Set form45_font to the desired font.

    44) Can u have OLE objects in forms?44) Yes.

    45) Can u have VBX and OCX controls in forms?45) Yes.

    46) What r the types of windows (Window style)?46) Specifies whether the window is a Document window or a Dialog window.

    47) What is OLE Activation style property?47) Specifies the event that will activate the OLE containing item.

    48) Can u change the mouse pointer? How?48) Yes. Specifies the mouse cursor style. Use this property to dynamically change the shapeof the cursor.

    49) What are the Various Block Coordination Properties?49) The various Block Coordination Properties area) ImmediateDefault Setting. The Detail records are shown when the Master Records are shown.

    b) Deffered with Auto QueryOracle Forms defer fetching the detail records until the operator navigates to the detail block.c) Deffered with No Auto QueryThe operator must navigate to the detail block and explicitly execute a query

    50) How do you use the same lov for 2 columns50) We can use the same lov for 2 columns by passing the return values in globalvalues and using the global values in the code.

  • 8/12/2019 Forms Interview Questions & Answers

    15/17

    51) What is the difference between static and dynamic lov51) The static lov contains the predetermined values while the dynamic lov contains values thatcome at run time.

    52) Can you issue DDL in forms?52) Yes, but you have to use FORMS_DDL.

    DDL (Data Definition Language) commands like CREATE, DROP and ALTER are not directly supportedfrom Forms because your Forms are not suppose to manipulate the database structure.A statement like CREATE TABLE X (A DATE); will result in error:Encountered the symbol "CREATE" which is a reserved word.

    However, you can use the FORMS_DDL built-in to execute DDL statements. Eg:FORMS_DDL('CREATE TABLE X (A DATE)'). FORMS_DDL can also be used to create dynamic SQLstatements at runtime. The FORMS_SUCCESS built-in can be used to determine if the last executedbuilt-in was successful.

    We can use the FORMS_DDL built-in or call the DBMS_SQL database package from Forms for dynamic

    SQL statement.

    Eg: FORMS_DDL('INSERT INTO X VALUES (' || col_list || ')');

    Just note that FORMS_DDL will force an implicit COMMIT and may de-synchronize the Oracle FormsCOMMIT mechanism.

    53) What is the difference between Query->Execute and Query->Enter->Query->Execute?53) Query->Execute: It will retrieve ALL records from a base table.In SQL SELECT * from tablename

    Query->Enter->Query->Execute: Allows you to select particular tuples of a base table.SELECT * FROM tablename WHERE condition

    54) Are you familiar with all the varieties of search possible in theQuery->Enter->Query->Execute mode?54) relational operators for comparison, wild cards

    55) Are you aware of the different techniques that you can use for the data entry process?55)a) You can manually enter a value.a) You can set up a LOV and select values from the LOV into specified items of a

    block.

    56) What kind of item is item-id? How is it different from other items in the base-table block?56) The item item_id is a text item whose Navigation Enabled property is set toFalse.This property is set to False since the value is not entered by the user but isobtained byexecuting some code in the form to automatically generate its value.

  • 8/12/2019 Forms Interview Questions & Answers

    16/17

    57) Is item-id the same as the item labeled TotalValue in the item block?57) I think they are both text items but the Navigation Enabled property is true.I believe in this case data entry by the user is also allowed.If you wanted to make sure there was no data entry from the user or from a programunit then you can use a Display item instead of a text item.

    58) What other kind of special items are supported?58) radio group, list items, etc.

    59) Do you understand the functionality of a LOV?59) A list of values is similar to a List Box in Access: A user selects one ofthe data recordsfrom the list, and the selected record values are inserted into one or more datafields on theform.For the purchase order, we will create a list box to display the supplier name,city and state.This will allow the end-user to select the supplier from the list, rather than memorize thesupplier codes.

    61) Do you understand how Oracle supports referential integrity based on foreign

    keys?61) Through the join condition in the master block and detail block specification.The forms environment will force you to delete all rows in a detail block that make areference to a row in a master block.

    62) Do you know how to modify the number of records displayed in a multi-recordblock?62)1) Click on the Block you wish to modify2) Open the properties window3) Find the Records Displayed Field and enter in the # of rows.

    63) Do you know how to change font, color, etc., for any item?63)1) Click on the item whose *** you wish to change (navigator or layout).2) Choose Format->Font, Color, etc, or do it through properties.

    64) What are the two modes available in runtime?64)1) Normal -- this is where you do new data entry2) Query -- this is where you work with existing records

    65) What is a trigger?65) What are the three levels of triggers, and when does each get "fired" or exe

    cute?Item level trigger - fires when a specific item is usedBlock level trigger - fires when any item in the block is usedForm - fires when any item in the form is used

    66) List three examples of triggers you could use (1 at each level).Do you understand their functionality?66) Update a field - item levelUpdate a record - block levelFilling in all of the fields in the form - form level

  • 8/12/2019 Forms Interview Questions & Answers

    17/17

    67) How do you make an item "read only"?67)1) Choose the item2) Open the properties window and find the field Item Type.3) Double click on the field until Display Item is shown.

    68) What is SECURE property?68) Hides characters that the operator types into the text item. This setting is typicallyused for password protection.

    69) Can you store pictures in database? How?69) Yes , in long Raw datatype.

    70) which system variables can be set by users?70)SYSTEM.MESSAGE_LEVELSYSTEM.DATE_THRESHOLDSYSTEM.EFFECTIVE_DATESYSTEM.SUPPRESS_WORKING

    71) What are object group?71) An object group is a container for a group of objects. You define an object

    group whenyou want to package related objects so you can copy or reference them in anothermodule.

    72) What are referenced objects? Can you store objects in library?72) Referencing allows you to create objects that inherit their functionality and appearancefrom other objects.Referencing an object is similar to copying an object, except that the resultingreferenceobject maintains a link to its source object. A reference object automatically inherits anychanges that have been made to the source object when you open or regenerate the

    module thatcontains the reference object.

    73) What are timers ? when when-timer-expired does not fire?73) The When-Timer-Expired trigger can not fire during trigger, navigation, or transactionprocessing.

    74) What are ALERT?74) An ALERT is a modal window that displays a message notifying operator of some applicationcondition. There are three styles od alert: Stop, Caution, and Note.