Você está na página 1de 10

Oracle Apps 11i Interview Questions

1. Why do we call FND SRWINIT from Before Report Trigger


A. FND SRWINIT fetches concurrent request information and sets up the profile options. It must be
included if one is using any ORACLE APPLICATION OBJECT LIBRARY features in his report (such as
concurrent processing)

2. Why do we call FND SRWEXIT from After Report Trigger


A. FND SRWEXIT frees all the memory allocations done in other Oracle Applications user exits. It
must be included if one is using any ORACLE APPLICATION OBJECT LIBRARY features in his report
(such as concurrent processing)

3. Why do we call FND FLEXSQL from the Before Report Trigger?


A. One need to pass the concatenated segment values from the underlying code combinations table to
the user exit so that it can display appropriate data and derive any description and values from
switched value sets as needed. One gets this information by calling the AOL user exit FND
FLEXSQL from the before report Trigger.

4. If u call the user exit FND FLEXSQL with MODE = “ WHERE” from the Before Report Trigger. What
will it do?
This user exit populates a lexical parameter that you specify with the appropriate SQL fragment at run
time. You include this lexical parameter in the WHERE clause of the report query. This user exit is
called once for each lexical to be changed.

5. If u call the user exit FND FLEXSQL with MODE = “ ORDER BY” from the Before Report Trigger.
What will it do?
A. This user Exit populates the lexical parameter that one specifies with the appropriate SQL fragment
at run time. One includes this lexical parameter in the ORDER BY clause of the report query. This
user exit is called once for each lexical to be changed.

6. How can we display flexfield segment values, descriptions, and prompts on the report?
A. Create a formula Column. Call the user exit FND FLEXIDVAL as the formula for this column. This
user exit automatically fetches more complicated information such as descriptions and prompts so that
one does not has to use complicated table joins to the flex field tables.

7. Name some options of the FND FLEXSQL user exit


A CODE, APP_SHORT_NAME, OUTPUT, MODE, DISPLAY, SHOWDEPSEG, NUM or MULTINUM,
TABLEALIAS, OPERATOR, OPERAND1, OPERAND2.

8. Describe CODE option of the FND FLEXSQL user exit


A. Specify the flex field code for the report (for example, GL#, MCAT).

9. Describe the APP_SHORT_NAME option of the FND FLEXSQL user exit


A. Specifies the short name of the application that owns the flex field (for example: SQLGL, INV)

10. Describe the OUTPUT option of the FND FLEXSQL user exit
A. Specify the name of the lexical parameter to store the SQl fragment. One uses this lexical later in the
report when defining the SQL statement that selects the flexfield values. the datatype of this
parameter should be character.

11. Describe the MODE option of the FND FLEXSQL user exit
A. Specify the mode to use to generate the SQL fragment . valid mode are :
SELECT: Retrieves all segments values in an internal (non- displayable format.
WHERE: Restrict the query by specifying constraints on flexfield columns. The fragment returned
includes the correct decode statement if one Specify MULTINUM. One must also specify an
OPERATOR and OPERANDS.
HAVING: Same calling procedures and functionality as WHERE.
ORDER BY: Order required information by flexfield columns. The fragment Orders
your flexfield columns and separates them with a comma. The fragment returned includes the
correct decode statement I one specify MULTINUM.

12. Describe the DISPLAY option of the FND FLEXSQL user exit
A. One uses the DISPLAY token with the MODE token . the DISPLAY parameter allows you to specify
segments that represent specified flexfield qualifiers or specified segments numbers , where the
segment numbers are the order in that the segments appear in the flexfield window, not the segment
number specified in the Define Key Segments form.
Eg. If your MODE is SELECT and you specify DISPLAY = “ALL” then the SELECT statement
includes all the segments of the flexfield. . Similarly, if your MODE is WHERE and you specify
DISPLAY = “ALL” , then your WHERE clause includes all segments.

13. Describe the SHOWDEPSEG option of the FND FLEXSQL user exit
A. SHOWDEPSEG = “N” disables automatic addition of depended upon segments to the order criteria.
The default is “Y” . This token is valid only for MODE = “ODER BY” In FLEXSQL.

14. Describe the NUM option of the FND FLEXSQL user exit
A. Specify the name or lexical or source column that contains the flexfield structure information. If the
flexfield uses just one structure, specify NUM only and use a lexical parameter to hold the value. If
the flexfield uses multiple structures, specify MULTINUM only and use a source column to hold the
value. The default value is 101.

15. Describe the TABLE ALIAS option of the FND FLEXSQL user exit
A. You use TABLE ALIAS if your SELECT joins to other flexfield tables or uses a self – join.

16. Describe the OPERATOR option of the FND FLEXSQL user exit
A. Specify an operator to use in the WHERE clause.

17. Describe the OPERAND1 option of the FND FLEXSQL user exit
A. Specify an operand to use in the WHERE clause,

18. Describe the OPERAND2 option of the FND FLEXSQL user exit
A. Specify a second operand to use with OPERATOR = “BETWEEN”

19. Where is FND FLEXIDVAL user exit used


A. Call this user exit to populate fields for display. You pass the key flex fields data retrieved by the
query into this exit from the formula column. With this exit you can display values, descriptions and
prompts by passing appropriate token (any one of VALUE, DECRIPTION<APROMPT or LPROMPT).

21. Name the interface tables used for the customer interface?
A. 1. RA_CUSTOMERS_INTERFACE_ALL
2. RA_CUSTOMER_BANKS_INT_ALL
3. RA_CUST_PAY_METHOD_INT_ALL
4. RA_CUSTOMER_PROFILES_INT_ALL
5. RA_CONTACT_PHONES_INT_ALL

22 What is the name of the column in CUSTOMER_INTERFACE_TABLE that indicates whether you
are inserting new or updating existing information?
A: When importing data into the interface tables, the column INSERT_UPDATE_FLAG indicates
whether you are inserting new or updating existing information. This column is required in
RA_CUSTOMERS_INTERFACE.

23 If the INSERT_UPDATE_FLAG is not set correctly or the required column is missing the value, will
CUSTOMER INTERFACE reject the entire record or just the attributes u want to update?
A Reject the entire record.

24 List some of the required columns for the RA_CUSTOMERS_INTERFACE?


A. ORIG_SYSTEM_CUSTOMER_REF
INSERT_UPDATE_FLAG
CUSTOMER_NAME
CUSTOMER_NUMBER (if you are not using Automatic Customer Numbering)
CUSTOMER_STATUS
LAST_UPDATED_BY
LAST_UPDATE_DATE
CREATED_BY
CREATION_DATE
If you are importing an address and a business purpose, you must also populate the following
columns:
PRIMARY_SITE_USE_FLAG (if you are inserting an address)
LOCATION (if you are not using Automatic Site Numbering)
SITE_USE_CODE (if you are inserting an address)
ADDRESS1

25 List some of the production tables that Customer Interface transfers customer data from the
interface tables into?
A. AR_CUSTOMER_PROFILES
AR_CUSTOMER_PROFILE_AMOUNTS
RA_ADDRESSES
RA_CONTACTS
RA_CUSTOMERS
RA_CUSTOMER_RELATIONSHIPS
RA_CUST_RECEIPT_METHODS
RA_PHONES
RA_SITE_USES
AP_BANK_ACCOUNT_USES
AP_BANK_ACCOUNTS
AP_BANK_BRANCHES

26. What validation must be given on the customer_number?


A Must be null if you are using Automatic Customer Numbering. Must exist if you are not using
Automatic Customer Numbering. This value must be unique within RA_CUSTOMERS.

27 What validation must be given on the CUSTOMER_STATUS?


A Must equal ’A’ for Active or ’I’ for Inactive.

28 Name some of the Oracle receivables Interfaces?


A a) Auto Invoice
b) Auto Lockbox
c) Customer Interface
d) Sales Tax rate Interface
e) Tax Vendor Extension

29 Give some of the Oracle Payables interface?


A. a) Credit Card Transaction Interface
b) Invoice Import Interface
c) Payables Open Interface
d) Purchase Order Matching

30. Name some of the oracle general ledger Interface?


A a) Budget Upload
b) Importing Journals
c) Loading Daily rates

31. What are the names of the parameters u pass to the Procedure which u register in the apps?
A. 1) retcode in varchar2
2) errbuf in varchar2

32. What is the use of Auto lock Box?


A Auto Lockbox (or Lockbox) is a service that commercial banks offer corporate customers to
enable them to outsource their accounts receivable payment processing.
33. Auto Lockbox is a three-step process, what are those?
A. a) Import
b) Validation
c) PostQuickCash

34. What is the order in which Autolock box searches for the types of the matching number?
A. 1. Transaction Number
2. Sales Order Number
3. Purchase Order Number
4. Consolidated Billing Invoice Number
5. Other, user-defined number.

35. What is application short name for General Ledger you specify in FND FLEXSQL user exit?
A. SQLGL

36 . What are validations to be done in Journal Import interface.


A. Batch level: Set of Books, Period Name, and Batch Name
Journal Level: Set of books, Period name, Source name, Journal entry name, Currency code,
Category name, Actual flag, Encumbrance type ID, User conversion type, Accounting date, Budget
version ID

37. What subclass in forms6i


A Specifies module, storage & name information about the source object and source module for a
referenced objects.

38. What is the clause in SQL * Loader to program to override data into table
A. REPLACE

39. How do you set profile in oracle applications In Application Developer responsibility?
A Open ‘Profile’ Function

40. What is the syntax for loading data through SQL * Loader from multiple files simultaneously
A. Sqlldr scott/tiger@orcl control = ctlfile
parfile -- parameter file: name of file that contains parameter specifications
parallel -- do parallel load (Default FALSE)

41 What is the table name for items in Oracle Inventory


A MTL_SYSTEM_ITEMS, MTL_CATEGORIES

42. Tell me names of important production tables & their purpose AP, AR, GL, PO
A AP: AP_INVOICES_ALL, AP_INVOICE_LINES_ALL
To store invoices
AR: RA_SHIPMENT_HEADERS/ _LINES, RA_CUSTOMERS, RA_CONTACTS
PO: PO_VENDORS, PO_VENDOR_SITES - For storing vendor data.

43. Name the interface tables used for the LockBox Interface
A Interface table : AR_PAYMENTS_INTERFACE_ALL
Lockbox transfers the receipts that pass validation to the Receivables interim tables
AR_INTERIM_CASH_RECEIPTS_ALL and AR_INTERIM_CASH_RCPT_LINES_ALL
When you run Post QuickCash, the receipt data is transferred from the QuickCash tables to the
following Receipt tables:
AR_CASH_RECEIPTS_ALL
AR_RECEIVABLES_APPLICATIONS_ALL
AR_CASH_RECEIPT_HISTORY_ALL

44 Name the interface tables used for the AutoInvoice Interface.


A AutoInvoice transfers transaction data from the interface tables
RA_INTERFACE_LINES_ALL,
RA_INTERFACE_SALESCREDITS_ALL, and
RA_INTERFACE_DISTRIBUTIONS_ALL
into the following Receivables tables:
• RA_BATCHES_ALL
• RA_CUSTOMER_TRX _ALL
• RA_CUSTOMER_TRX_LINES _ALL
• RA_CUST_TRX_LINE_GL_DIST_ALL
• RA_CUST_TRX_LINE_SALESREPS_ALL
• AR_PAYMENT_SCHEDULES_ALL
• AR_RECEIVABLE_APPLICATIONS_ALL
• AR_ADJUSTMENTS_ALL

REPORTS 6i

About User Exits

A user exit is a program that you write and then link into the Report Builder executable or user exit DLL
files. You build user exits when you want to pass control from Report Builder to a program you have
written, which performs some function, and then returns control to Report Builder.
You can write the following types of user exits:
 ORACLE Precompiler user exits
 OCI (ORACLE Call Interface) user exits
 non-ORACLE user exits
You can also write a user exit that combines both the ORACLE Precompiler interface and the OCI. User
exits can perform the following tasks:
 perform complex data manipulation
 pass data to Report Builder from operating system text files
 manipulate LONG RAW data
 support PL/SQL blocks
 control real time devices, such as a printer or a robot

You can use user exits for other tasks, such as mathematical processing. However, Oracle Corporation
recommends that you perform such tasks with PL/SQL within Report Builder.
Usage Notes
 Not all types of user exits can perform all of the described tasks. You can accomplish most of
these tasks only with ORACLE Precompiler user exits.
 Some details of implementing user exits are specific to each operating system.

Writing a user exit call

You can call the user exit from any place in which you can enter PL/SQL within Report Builder. Use the
following syntax:
Syntax
 [SRW.REFERENCE(:object_name_1);]
 [SRW.REFERENCE(:object2_name_2); ...];
 SRW.USER_EXIT('user_exit_name [argument_list]');
where:
object_name_n Is the name of an Report Builder parameter or column whose value will be passed to the
user exit in the user exit string. This causes Report Builder to build a dependency list: it will ensure that
each referenced object will contain the most recently computed or fetched value before it is passed to the
user exit. Note: You must reference each parameter or column separately. For details, see
"SRW.REFERENCE".
user_exit_nameIs the name of the user exit to which you are passing control. The user exit name may be
any length. (On some operating systems, the name may be at most 6 characters. Check with your
system administrator.)
argument_list Can contain the names of parameters and columns, constants, character strings, or any
combination thereof, that you wish to pass to the user exit. The argument list may be any length. Note:
The above syntax will need to be embedded in a PL/SQL program unit.

SRW.USER_EXIT
Description : This procedure calls the user exit named in user_exit_string. It is useful when you want to
pass control to a 3GL program during a report's execution.
Syntax
SRW.USER_EXIT (user_exit_string CHAR);
Parameters :
user_exit_string :Is the name of the user exit you want to call and any columns or parameters that you
want to pass to the user exit program.

SRW.REFERENCE
Description : This procedure causes Report Builder to add the referenced object to the PL/SQL
construct's dependency list. This causes Report Builder to determine the object's value just before firing
the PL/SQL construct. This is useful when you want to ensure that a column value passed to a user exit
is the most recently computed or fetched value.
Syntax
SRW.REFERENCE (:object CHAR|DATE|NUMBER);
Parameters
object Is the Report Builder parameter or column whose value needs to be ascertained before the
construct fires.

SRW.MESSAGE
Description :This procedure displays a message with the message number and text that you specify. The
message is displayed in the format below. After the message is raised and you accept it, the report
execution will continue.
MSG-msg_number: msg_text.
Syntax
SRW.MESSAGE (msg_number NUMBER, msg_text CHAR);
Parameters
msg_number Is a number from one to ten digits, to be displayed on the message line. Numbers less
than five digits will be padded with zeros out to five digits. For example, if you specify 123, it will be
displayed as SRW-00123.
msg_text Is at most 190 minus the msg_number alphanumeric characters to be displayed on the
message line.

Lexical References :
Lexical references are placeholders for text that you embed in a SELECT statement. You can use lexical
references to replace the clauses appearing after SELECT, FROM, WHERE, GROUP BY, ORDER BY,
HAVING, CONNECT BY, and START WITH.

You cannot make lexical references in a PL/SQL statement. You can, however, use a bind reference in
PL/SQL to set the value of a parameter that is then referenced lexically in SQL.
SELECT Clause
SELECT &P_ENAME NAME, &P_EMPNO ENO, &P_JOB ROLE FROM EMP
FROM Clause
SELECT ORDID, TOTAL FROM &ATABLE
WHERE Clause
SELECT ORDID, TOTAL FROM ORD WHERE &CUST
GROUP BY Clause
SELECT NVL(COMMPLAN, DFLTCOMM) CPLAN, SUM(TOTAL) TOTAL FROM ORD GROUP BY
&NEWCOMM
HAVING Clause
SELECT CUSTID, SUM(TOTAL) TOTAL FROM ORD GROUP BY CUSTID HAVING &MINTOTAL
ORDER BY Clause
SELECT ORDID, SHIPDATE, ORDERDATE, TOTAL FROM ORD ORDER BY &SORT
CONNECT BY and START WITH Clauses
Multiple Clauses
SELECT &COLSTABLE
COLSTABLE could be used to change both the SELECT and FROM clauses at runtime. For example,
you could enter DNAME ENAME, LOC SAL FROM DEPT for COLSTABLE at runtime.

Bind References :
Bind references (or bind variables) are used to replace a single value in SQL or PL/SQL, such as a
character string, number, or date. Specifically, bind references may be used to replace expressions in
SELECT, WHERE, GROUP BY, ORDER BY, HAVING, CONNECT BY, and START WITH clauses of
queries. Bind references may not be referenced in FROM clauses or in place of reserved words or
clauses.

You create a bind reference by entering a colon (:) followed immediately by the column or parameter
name. If you do not create a column or parameter before making a bind reference to it in a SELECT
statement, Report Builder will create a parameter for you by default.

SELECT Clause
SELECT CUSTID, NVL(COMMPLAN, :DFLTCOMM) COMMPLAN FROM ORD
WHERE Clause
SELECT ORDID, TOTAL FROM ORD WHERE CUSTID = :CUST
GROUP BY Clause
SELECT NVL(COMMPLAN, :DFLTCOMM) COMMPLAN, SUM(TOTAL) TOTAL FROM ORD GROUP BY
NVL(COMMPLAN, :DFLTCOMM)
HAVING Clause
SELECT CUSTID, SUM(TOTAL) TOTAL FROM ORD GROUP BY CUSTID HAVING SUM(TOTAL) >
:MINTOTAL
ORDER BY Clause
SELECT ORDID, SHIPDATE, ORDERDATE, TOTAL FROM ORD ORDER BY DECODE(:SORT, 1,
SHIPDATE, 2, ORDERDATE)

Placeholder Columns :
A placeholder is a column for which you set the datatype and value in PL/SQL that you define. You can
set the value of a placeholder column in the following places:
 the Before Report Trigger, if the placeholder is a report-level column
 a report-level formula column, if the placeholder is a report-level column
 a formula in the placeholder's group or a group below it (the value is set once for each record of
the group)

PROCEDURE RUN_PRODUCT (product NUMBER, module VARCHAR2, commmode NUMBER,


execmode NUMBER, location NUMBER, paramlist_id VARCHAR2, display VARCHAR2);
Product :Specifies a numeric constant for the Oracle product you want to invoke: FORMS specifies a
Runform session. GRAPHICS specifies Graphics Builder. REPORTS specifies Report Builder. BOOK
specifies Oracle Book.
module Specifies the VARCHAR2 name of the module or module to be executed by the called product.
Valid values are the name of a form module, report, Graphics Builder display, or Oracle Book module.
The application looks for the module or module in the default paths defined for the called product.
commmode Specifies the communication mode to be used when running the called product. Valid
numeric constants for this parameter are SYNCHRONOUS and ASYNCHRONOUS.SYNCHRONOUS
specifies that control returns to Form Builder only after the called product has been exited. The end user
cannot work in the form while the called product is running. ASYNCHRONOUS specifies that control
returns to the calling application immediately, even if the called application has not completed its display.

Execmode : Specifies the execution mode to be used when running the called product. Valid numeric
constants for this parameter are BATCH and RUNTIME. When you run Report Builder and Graphics
Builder, execmode can be either BATCH or RUNTIME. When you run Form Builder, always set
execmode to RUNTIME.
Location : Specifies the location of the module or module you want the called product to execute, either
the file system or the database. Valid constants for this property are FILESYSTEM and DB.
Paramlist_name or paramlist_ID : Specifies the parameter list to be passed to the called product. Valid
values for this parameter are the VARCHAR2 name of the parameter list, the ID of the parameter list, or a
null string (''). To specify a parameter list ID, use a variable of type PARAMLIST.
Display : Specifies the VARCHAR2 name of the Form Builder chart item that will contain the display (such
as a pie chart, bar chart, or graph) generated by Graphics Builder. The name of the chart item must be
specified in the format block_name.item_name
PROCEDURE Run_Emp_Report IS
pl_id ParamList;
BEGIN
pl_id := Get_Parameter_List('tmpdata');
IF NOT Id_Null(pl_id) THEN
Destroy_Parameter_List( pl_id );
END IF;
pl_id := Create_Parameter_List('tmpdata');
Add_Parameter(pl_id,'EMP_QUERY',DATA_PARAMETER,'EMP_RECS');
Add_Parameter(pl_id, 'PARAMFORM', TEXT_PARAMETER, 'NO');
Run_Product(REPORTS, 'empreport', SYNCHRONOUS, RUNTIME,FILESYSTEM, pl_id, NULL);
END;

=============================================================================

FORMS 6i

System Variables

SYSTEM.DATE_THRESHOLD : Represents the database date requery threshold.


Default : 01:00 (Synchronization occurs after one minute of elapsed time.) This does not mean that Form
Builder polls the RDBMS once every minute. It means that whenever Form Builder needs to generate the
value for the system variables $$DBDATE$$, $$DBDATETIME$$, $$DBTIME$$, or
SYSTEM.EFFECTIVE_DATE, it updates the effective date by adding the amount of elapsed time (as
measured by the local operating system) to the most previously queried RDBMS value. If the amount of
elapsed time exceeds the date threshold, then a new query is executed to retrieve the RDBMS time and
the elapsed counter is reset.

SYSTEM.EFFECTIVE_DATE : Represents the effective database date. The variable value must always
be in the following format: DD-MON-YYYY HH24:MI:SS
Default : RDBMS date.
SYSTEM.FORM_STATUS represents the status of the current form. The value can be one of three
character strings: NEW,QUERY,CHANGED
SYSTEM.SUPPRESS_WORKING suppresses the "Working..." message in Runform, in order to prevent
the screen update usually caused by the display of the "Working..." message. The value of the variable is
one of the following two CHAR values: TRUE , FALSE
SYSTEM.TRIGGER_RECORD represents the number of the record that Form Builder is processing.
This number represents the record's current physical order in the block's list of records. The value is
always a character string.
SYSTEM.MODE indicates whether the form is in Normal, Enter Query, or Fetch Processing mode. The
value is always a character string. NORMAL ,ENTER-QUERY, Enter Query mode.
SYSTEM.FORM_STATUS represents the status of the current form. The value can be one of three
character strings: CHANGED , NEW , QUERY.
SYSTEM.MESSAGE_LEVEL stores one of the following message severity levels: 0, 5, 10, 15, 20, or 25.
The default value is 0.

PARAMETERS :
When you create a parameter, you specify its name, datatype, length, and default value.
To create a parameter :
1. In the Object Navigator, create a parameter.
To create a parameter, select the Parameters node in the Object Navigator and then choose
Navigator Create.
2. In the Property Palette, set the desired parameter properties:

In PL/SQL, you can reference and set the values of form parameters using bind variable syntax.
To reference a parameter: Preface the parameter name with the reserved word PARAMETER, as shown
in the following examples:
:PARAMETER.parameter_name := 'TOKYO'; OR
:block.item := :PARAMETER.parameter_name;

Canvas Types :
 Content
 Stacked
 Tab
 Horizontal Toolbar
 Vertical Toolbar

Visual Attributes :

Visual attributes are the font, color, and pattern properties that you set for form and menu objects that
appear in your application's interface. Visual attributes can include the following properties:
 Font properties: Font Name, Font Size, Font Style, Font Width, Font Weight
 Color and pattern properties: Foreground Color, Background Color, Fill Pattern, Charmode
Logical Attribute, White on Black

Every interface object has a Visual Attribute Group property that determines how the object's individual
visual attribute settings (Font Size, Foreground Color, etc.) are derived. The Visual Attribute Group
property can be set to Default, NULL, or the name of a named visual attribute defined in the same
module.
There are several ways to set the visual attributes of objects:
• In the Property Palette, set the Visual Attribute Group property as desired, then set the individual
attributes (Font Name, Foreground Color, etc.) to the desired settings.
• In the Layout Editor, select an item or a canvas and then choose the desired font, color, and
pattern attributes from the Font dialog and Fill Color and Text Color palettes.
• Define a named visual attribute object with the appropriate font, color, and pattern settings and
then apply it to one or more objects in the same module. You can programmatically change an
object's named visual attribute setting to change the font, color, and pattern of the object at
runtime.
• Subclass a visual attribute that includes visual attribute properties and then base objects on it that
inherit those properties.
• Create a property class that includes visual attribute properties and then base objects on it that
inherit those properties.

About named visual attributes : Setting the Visual Attribute Group property to a named visual attribute
defined in the same module specifies that the object should use the attribute settings defined for the
named visual attribute. A named visual attribute is a separate object in a form or menu module that
defines a collection of visual attribute properties. Once you create a named visual attribute, you can
apply it to any object in the same module, much like styles in a word processing program.

Applies to canvas, tab page, item, radio button

Property Classes :

A property class is a named object that contains a list of properties and their settings. Once you create a
property class you can base other objects on it. An object based on a property class can inherit the
setting of any property in the class that makes sense for that object.
Property class inheritance is an instance of subclassing. Conceptually, you can consider a property class
as a universal subclassing parent.
There can be any number of properties in a property class, and the properties in a class can apply to
different types of objects. For example, a property class might contain some properties that are common
to all types of items, some that apply only to text items, and some that apply only to check boxes.
When you base an object on a property class, you have complete control over which properties the object
should inherit from the class, and which should be overridden locally.
Property classes are separate objects, and, as such, can be copied between modules as needed.
Perhaps more importantly, property classes can be subclassed in any number of modules.
Menu Item Types

Separator Menu Item :


A separator menu item is displayed as a horizontal line (or other platform-specific visual element), and is
useful for visually grouping related items on the same menu. For example, you could use a separator to
isolate the radio items of one radio group from other menu items. You must set a separator item's
Command Type property to Null. End users cannot select a separator menu item.
Magic Menu Item :
Magic items provide a way to quickly create menu items for standard functions available in most GUI
applications. Form Builder provides the following magic item types: About, Copy, Clear, Cut, Paste, Help,
Quit, Undo, Window.
Plain Menu Item : Default menu item.
Radio Menu Item
Check Menu Item

Você também pode gostar