Oracle Forms 4.5 FAQ
Can on bypass the Oracle login screen?
The first thing that the user sees when using runform is the Oracle logon prompt asking them for their username, password, and database to connect to. You can bypass this screen or customise it by displaying your own logon screen. Eg:ON-LOGIN
declare
uname varchar2(10);
pass varchar2(10);
begin
uname := 'username';
pass :='password';
logon(uname, pass||'@connect_database');
end;
Can one issue DDL statements from Forms?
DDL (Data Definition Language) commands like CREATE, DROP and ALTER are not directly supported from Forms because your Form is 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 an reserved word.
- FORMS_DDL('CREATE TABLE X (A DATE)');
Can one execute dynamic SQL from Forms?
Yes, use the FORMS_DDL built-in or call the DBMS_SQL database package from Forms. Eg:- FORMS_DDL('INSERT INTO X VALUES (' || col_list || ')');
Forms won't allow me to use restricted built-in's. What should I do?
How to get around the "can't use a restricted built-in in built-in XXX" message:1. Create a TIMER at the point where you want the navigation to occur. Eg. create_timer('TIMER_X', 5, NO_REPEAT);
2. Code a WHEN-TIMER-EXPIRED trigger to handle the navigation
DECLAREDirty but effective (didn't Oracle promise to fix this feature?).
tm_name VARCHAR2(20);
BEGIN
tm_name := Get_Application_Property(TIMER_NAME);
IF tm_name = 'TIMER_X' THEN
Go_Item('ITEM_X');
END IF;
END;
Can one change the mouse pointer in Forms?
The SET_APPLICATION_PROPERTY build-in in Oracle Forms allow one to change the mouse pointer. Eg:SET_APPLICATION_PROPERTY(CURSOR_STYLE, BUSY);
Why doesn't my messages show on the screen?
Regardless of whether you call the MESSAGE() built-in with ACKNOWLEDGE, NO_ACKNOWLEDGE, or with no mode specification at all, your message may or may not be displayed. This is because messages are displayed asynchronously. To display messages immediately, use the SYNCHRONIZE build-in:message('...'); synchronize;
This can also be used to execute a query while the user is looking at the results of a previous query.
2 comments:
Brilliant blog I visit this blog it's incredibly awesome. Curiously, in this blog content formed doubtlessly and sensible. The substance of information is helpful.
Oracle Fusion HCM Online Training
Oracle Fusion Financials Online Training
I would like to thank you for the efforts you have made in writing this article. I am hoping the same best work from you in the future as well.
Spark and Scala Online Training
Spark Scala Training
Hyderabad
Post a Comment