SlideShare a Scribd company logo
Introduction to Multiple Form Applications
http://ebiztechnics.blogspot.com
Objectives
‱ Call one form from another from module
‱ Define Multiple form functionality
http://ebiztechnics.blogspot.com
Multiple Form Applications
‱ Behavior:
– Flexible navigation between windows
– Single or multiple database connections
– Transactions may span forms, if required
– Commits in order of opening forms, starting with current form
‱ Links:
– Data is exchanged by global variables or parameter lists
– Code is shared as required, through libraries and the database
http://ebiztechnics.blogspot.com
Multiple Form Sessions
Form A
Forms
Runtime
Global variables
Form B
Open
Form C
Open
Form D
Open
http://ebiztechnics.blogspot.com
OPEN_FORM Built-in
MDI
FORM A
MDI
FORM A
Modeless
FORM B
OPEN_FORM
http://ebiztechnics.blogspot.com
Implementing Multiple Forms
1. Define windows and positions for each form.
2. Plan global variables and their names.
3. Implement triggers to:
‱ Open other forms
‱ Initialize global variables from calling forms
‱ Use global variables in opened forms
http://ebiztechnics.blogspot.com
Linking by Global Variables
Employees
Departments
GLOBAL.dept_id
Deptno
http://ebiztechnics.blogspot.com
Opening Another Forms
:GLOBAL.dept_id:=:DEPT.deptno;
OPEN_FORM(‘employees’);
‱ Control passes immediately to the Employees form—no statements
after OPEN_FORM are processed.
‱ If the Activate_Mode argument is set to NO_ACTIVATE, you retain
control in the current form.
‱ The transaction continues unless it was explicitly committed before.
http://ebiztechnics.blogspot.com
Restricted Query at Startup
Execute_Query;
:EMP.deptno := :GLOBAL.dept_id;
When-New-Form-Instance - Form Level
Pre-Query - Block Level
http://ebiztechnics.blogspot.com
Global Variables in Opened Form
‱ Assign Global variables values in opened form with
DEFAULT_VALUE Built-in.
‱ DEFAULT_VALUE ensures the existence of global variables.
‱ You can use global variables to communicate that the form is running.
‱ Pre-Form Example:
DEFAULT_VALUE(‘ ‘,‘GLOBAL.dept_id’);
http://ebiztechnics.blogspot.com
Conditional Opening
:GLOBAL.dept_id := :DEPT.deptno;
IF ID_NULL(FIND_FORM(’EMPLOYEES’)) THEN
OPEN_FORM(’EMPLOYEES’);
ELSE
GO_FORM(’EMPLOYEES’);
END IF;
http://ebiztechnics.blogspot.com
Closing a Form with EXIT_FORM
‱ The default functionality is the same as for the Exit key.
‱ The Commit_Mode argument defines action on uncommitted changes.
ENTER;
IF :SYSTEM.FORM_STATUS = ’CHANGED’ THEN
EXIT_FORM( DO_COMMIT );
ELSE
EXIT_FORM( NO_COMMIT );
END IF;
http://ebiztechnics.blogspot.com
Summary
‱ The OPEN_FORM built-in provides multiple concurrent
forms in a session.
‱ Forms communicate through global variables:
– Load key values in the parent form
– Use global values in opened forms for
When-New-Form-Instance and Pre-Query
http://ebiztechnics.blogspot.com
Ad

Recommended

Oracle Forms Creation
Oracle Forms Creation
Sekhar Byna
 
Oracle Forms : Coding ..
Oracle Forms : Coding ..
Sekhar Byna
 
Oracle Forms: Non input Items
Oracle Forms: Non input Items
Sekhar Byna
 
Oracle Forms: create debug triggers
Oracle Forms: create debug triggers
Sekhar Byna
 
Oracle Forms: Messages
Oracle Forms: Messages
Sekhar Byna
 
Oracle Forms- key triggers
Oracle Forms- key triggers
Sekhar Byna
 
Oracle Forms : Validation Triggers
Oracle Forms : Validation Triggers
Sekhar Byna
 
Oracle Forms : Reusable Components
Oracle Forms : Reusable Components
Sekhar Byna
 
Oracle Forms : Multiple Forms
Oracle Forms : Multiple Forms
Sekhar Byna
 
Oracle Forms Triggers
Oracle Forms Triggers
Sekhar Byna
 
Oracle Forms Triggers
Oracle Forms Triggers
Sekhar Byna
 
Oracle Forms-Canvas types
Oracle Forms-Canvas types
Sekhar Byna
 
Oracle Forms: Master Detail form
Oracle Forms: Master Detail form
Sekhar Byna
 
Oracle Forms Creation-List of Values (LOV)
Oracle Forms Creation-List of Values (LOV)
Sekhar Byna
 
Oracle Forms: Menu
Oracle Forms: Menu
Sekhar Byna
 
Oracle Forms : Transnational Triggers
Oracle Forms : Transnational Triggers
Sekhar Byna
 
Oracle Forms Tutorial (www.aboutoracleapps.com)
Oracle Forms Tutorial (www.aboutoracleapps.com)
magupta26
 
Forms 6i guide
Forms 6i guide
Vinay Kumar
 
Oracle Forms : Query Triggers
Oracle Forms : Query Triggers
Sekhar Byna
 
Oracle Forms Mouse triggers
Oracle Forms Mouse triggers
Sekhar Byna
 
Oracle Apps - Forms
Oracle Apps - Forms
Bhaskara Reddy Sannapureddy
 
Oracle Forms: Data Blocks on Different Sources
Oracle Forms: Data Blocks on Different Sources
Sekhar Byna
 
Oracle forms developer 10g vol1
Oracle forms developer 10g vol1
abdull466
 
Oracle Form material
Oracle Form material
Rajesh Ch
 
Reports 6i
Reports 6i
Senthamarai B
 
Controls
Controls
teach4uin
 
Asp.net server controls
Asp.net server controls
Raed Aldahdooh
 
JAVA SCRIPT
JAVA SCRIPT
Go4Guru
 
Oracle forms les24
Oracle forms les24
Abed Othman
 
Les25
Les25
Sudharsan S
 

More Related Content

What's hot (20)

Oracle Forms : Multiple Forms
Oracle Forms : Multiple Forms
Sekhar Byna
 
Oracle Forms Triggers
Oracle Forms Triggers
Sekhar Byna
 
Oracle Forms Triggers
Oracle Forms Triggers
Sekhar Byna
 
Oracle Forms-Canvas types
Oracle Forms-Canvas types
Sekhar Byna
 
Oracle Forms: Master Detail form
Oracle Forms: Master Detail form
Sekhar Byna
 
Oracle Forms Creation-List of Values (LOV)
Oracle Forms Creation-List of Values (LOV)
Sekhar Byna
 
Oracle Forms: Menu
Oracle Forms: Menu
Sekhar Byna
 
Oracle Forms : Transnational Triggers
Oracle Forms : Transnational Triggers
Sekhar Byna
 
Oracle Forms Tutorial (www.aboutoracleapps.com)
Oracle Forms Tutorial (www.aboutoracleapps.com)
magupta26
 
Forms 6i guide
Forms 6i guide
Vinay Kumar
 
Oracle Forms : Query Triggers
Oracle Forms : Query Triggers
Sekhar Byna
 
Oracle Forms Mouse triggers
Oracle Forms Mouse triggers
Sekhar Byna
 
Oracle Apps - Forms
Oracle Apps - Forms
Bhaskara Reddy Sannapureddy
 
Oracle Forms: Data Blocks on Different Sources
Oracle Forms: Data Blocks on Different Sources
Sekhar Byna
 
Oracle forms developer 10g vol1
Oracle forms developer 10g vol1
abdull466
 
Oracle Form material
Oracle Form material
Rajesh Ch
 
Reports 6i
Reports 6i
Senthamarai B
 
Controls
Controls
teach4uin
 
Asp.net server controls
Asp.net server controls
Raed Aldahdooh
 
JAVA SCRIPT
JAVA SCRIPT
Go4Guru
 
Oracle Forms : Multiple Forms
Oracle Forms : Multiple Forms
Sekhar Byna
 
Oracle Forms Triggers
Oracle Forms Triggers
Sekhar Byna
 
Oracle Forms Triggers
Oracle Forms Triggers
Sekhar Byna
 
Oracle Forms-Canvas types
Oracle Forms-Canvas types
Sekhar Byna
 
Oracle Forms: Master Detail form
Oracle Forms: Master Detail form
Sekhar Byna
 
Oracle Forms Creation-List of Values (LOV)
Oracle Forms Creation-List of Values (LOV)
Sekhar Byna
 
Oracle Forms: Menu
Oracle Forms: Menu
Sekhar Byna
 
Oracle Forms : Transnational Triggers
Oracle Forms : Transnational Triggers
Sekhar Byna
 
Oracle Forms Tutorial (www.aboutoracleapps.com)
Oracle Forms Tutorial (www.aboutoracleapps.com)
magupta26
 
Forms 6i guide
Forms 6i guide
Vinay Kumar
 
Oracle Forms : Query Triggers
Oracle Forms : Query Triggers
Sekhar Byna
 
Oracle Forms Mouse triggers
Oracle Forms Mouse triggers
Sekhar Byna
 
Oracle Forms: Data Blocks on Different Sources
Oracle Forms: Data Blocks on Different Sources
Sekhar Byna
 
Oracle forms developer 10g vol1
Oracle forms developer 10g vol1
abdull466
 
Oracle Form material
Oracle Form material
Rajesh Ch
 
Controls
Controls
teach4uin
 
Asp.net server controls
Asp.net server controls
Raed Aldahdooh
 
JAVA SCRIPT
JAVA SCRIPT
Go4Guru
 

Similar to Oracle Forms: Introduction to multiple Forms (16)

Oracle forms les24
Oracle forms les24
Abed Othman
 
Les25
Les25
Sudharsan S
 
Oracle forms 6_i__1_
Oracle forms 6_i__1_
shashi.vaichal
 
MS Access - Create Form.pdf
MS Access - Create Form.pdf
SRReliability
 
Les02
Les02
Sireen8
 
Oracle Forms: Record Groups
Oracle Forms: Record Groups
Sekhar Byna
 
D2 k word_format
D2 k word_format
Bharath Chowdhary
 
Access 2 day course
Access 2 day course
scacpa
 
11i10 ATFormPersonalization_HRDv2[1].ppt
11i10 ATFormPersonalization_HRDv2[1].ppt
ssuser0de269
 
CIS 245 Final Review
CIS 245 Final Review
Randy Riness @ South Puget Sound Community College
 
Oracle developer interview questions(entry level)
Oracle developer interview questions(entry level)
Naveen P
 
Tutorial de forms 10g
Tutorial de forms 10g
miguel
 
Dbms fast track 2/3
Dbms fast track 2/3
Dr. C.V. Suresh Babu
 
Vb6 ch.6-3 cci
Vb6 ch.6-3 cci
Fahim Khan
 
D17251 gc20 47_us
D17251 gc20 47_us
Karno Nur Cahyo
 
forms builder
forms builder
Shoeb Shabibi
 
Oracle forms les24
Oracle forms les24
Abed Othman
 
Oracle forms 6_i__1_
Oracle forms 6_i__1_
shashi.vaichal
 
MS Access - Create Form.pdf
MS Access - Create Form.pdf
SRReliability
 
Les02
Les02
Sireen8
 
Oracle Forms: Record Groups
Oracle Forms: Record Groups
Sekhar Byna
 
Access 2 day course
Access 2 day course
scacpa
 
11i10 ATFormPersonalization_HRDv2[1].ppt
11i10 ATFormPersonalization_HRDv2[1].ppt
ssuser0de269
 
Oracle developer interview questions(entry level)
Oracle developer interview questions(entry level)
Naveen P
 
Tutorial de forms 10g
Tutorial de forms 10g
miguel
 
Vb6 ch.6-3 cci
Vb6 ch.6-3 cci
Fahim Khan
 
Ad

More from Sekhar Byna (10)

Oracle Applications R12 architecture
Oracle Applications R12 architecture
Sekhar Byna
 
oracle APPS: Weekly Update
oracle APPS: Weekly Update
Sekhar Byna
 
Oracle APPS :Receivables Auto Invoice
Oracle APPS :Receivables Auto Invoice
Sekhar Byna
 
Oracle apps online training
Oracle apps online training
Sekhar Byna
 
Oracle Forms : Timers
Oracle Forms : Timers
Sekhar Byna
 
Oracle Forms: Oracle Server features
Oracle Forms: Oracle Server features
Sekhar Byna
 
Oracle Forms :Object Features In forms
Oracle Forms :Object Features In forms
Sekhar Byna
 
Oracle Forms :Window and Canvases
Oracle Forms :Window and Canvases
Sekhar Byna
 
Oracle Forms Creation part 3
Oracle Forms Creation part 3
Sekhar Byna
 
Oracle Forms Introduction
Oracle Forms Introduction
Sekhar Byna
 
Oracle Applications R12 architecture
Oracle Applications R12 architecture
Sekhar Byna
 
oracle APPS: Weekly Update
oracle APPS: Weekly Update
Sekhar Byna
 
Oracle APPS :Receivables Auto Invoice
Oracle APPS :Receivables Auto Invoice
Sekhar Byna
 
Oracle apps online training
Oracle apps online training
Sekhar Byna
 
Oracle Forms : Timers
Oracle Forms : Timers
Sekhar Byna
 
Oracle Forms: Oracle Server features
Oracle Forms: Oracle Server features
Sekhar Byna
 
Oracle Forms :Object Features In forms
Oracle Forms :Object Features In forms
Sekhar Byna
 
Oracle Forms :Window and Canvases
Oracle Forms :Window and Canvases
Sekhar Byna
 
Oracle Forms Creation part 3
Oracle Forms Creation part 3
Sekhar Byna
 
Oracle Forms Introduction
Oracle Forms Introduction
Sekhar Byna
 
Ad

Recently uploaded (20)

IDM Crack with Internet Download Manager 6.42 Build 41 [Latest 2025]
IDM Crack with Internet Download Manager 6.42 Build 41 [Latest 2025]
pcprocore
 
Simplify Insurance Regulations with Compliance Management Software
Simplify Insurance Regulations with Compliance Management Software
Insurance Tech Services
 
From Code to Commerce, a Backend Java Developer's Galactic Journey into Ecomm...
From Code to Commerce, a Backend Java Developer's Galactic Journey into Ecomm...
Jamie Coleman
 
AI for PV: Development and Governance for a Regulated Industry
AI for PV: Development and Governance for a Regulated Industry
Biologit
 
Decipher SEO Solutions for your startup needs.
Decipher SEO Solutions for your startup needs.
mathai2
 
arctitecture application system design os dsa
arctitecture application system design os dsa
za241967
 
Which Hiring Management Tools Offer the Best ROI?
Which Hiring Management Tools Offer the Best ROI?
HireME
 
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
Advance Doctor Appointment Booking App With Online Payment
Advance Doctor Appointment Booking App With Online Payment
AxisTechnolabs
 
Azure AI Foundry: The AI app and agent factory
Azure AI Foundry: The AI app and agent factory
Maxim Salnikov
 
How Automation in Claims Handling Streamlined Operations
How Automation in Claims Handling Streamlined Operations
Insurance Tech Services
 
Automated Testing and Safety Analysis of Deep Neural Networks
Automated Testing and Safety Analysis of Deep Neural Networks
Lionel Briand
 
Introduction to Agile Frameworks for Product Managers.pdf
Introduction to Agile Frameworks for Product Managers.pdf
Ali Vahed
 
HYBRIDIZATION OF ALKANES AND ALKENES ...
HYBRIDIZATION OF ALKANES AND ALKENES ...
karishmaduhijod1
 
Best AI-Powered Wearable Tech for Remote Health Monitoring in 2025
Best AI-Powered Wearable Tech for Remote Health Monitoring in 2025
SEOLIFT - SEO Company London
 
Best Practice for LLM Serving in the Cloud
Best Practice for LLM Serving in the Cloud
Alluxio, Inc.
 
Test Case Design Techniques – Practical Examples & Best Practices in Software...
Test Case Design Techniques – Practical Examples & Best Practices in Software...
Muhammad Fahad Bashir
 
declaration of Variables and constants.pptx
declaration of Variables and constants.pptx
meemee7378
 
University Campus Navigation for All - Peak of Data & AI
University Campus Navigation for All - Peak of Data & AI
Safe Software
 
Heat Treatment Process Automation in India
Heat Treatment Process Automation in India
Reckers Mechatronics
 
IDM Crack with Internet Download Manager 6.42 Build 41 [Latest 2025]
IDM Crack with Internet Download Manager 6.42 Build 41 [Latest 2025]
pcprocore
 
Simplify Insurance Regulations with Compliance Management Software
Simplify Insurance Regulations with Compliance Management Software
Insurance Tech Services
 
From Code to Commerce, a Backend Java Developer's Galactic Journey into Ecomm...
From Code to Commerce, a Backend Java Developer's Galactic Journey into Ecomm...
Jamie Coleman
 
AI for PV: Development and Governance for a Regulated Industry
AI for PV: Development and Governance for a Regulated Industry
Biologit
 
Decipher SEO Solutions for your startup needs.
Decipher SEO Solutions for your startup needs.
mathai2
 
arctitecture application system design os dsa
arctitecture application system design os dsa
za241967
 
Which Hiring Management Tools Offer the Best ROI?
Which Hiring Management Tools Offer the Best ROI?
HireME
 
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
Advance Doctor Appointment Booking App With Online Payment
Advance Doctor Appointment Booking App With Online Payment
AxisTechnolabs
 
Azure AI Foundry: The AI app and agent factory
Azure AI Foundry: The AI app and agent factory
Maxim Salnikov
 
How Automation in Claims Handling Streamlined Operations
How Automation in Claims Handling Streamlined Operations
Insurance Tech Services
 
Automated Testing and Safety Analysis of Deep Neural Networks
Automated Testing and Safety Analysis of Deep Neural Networks
Lionel Briand
 
Introduction to Agile Frameworks for Product Managers.pdf
Introduction to Agile Frameworks for Product Managers.pdf
Ali Vahed
 
HYBRIDIZATION OF ALKANES AND ALKENES ...
HYBRIDIZATION OF ALKANES AND ALKENES ...
karishmaduhijod1
 
Best AI-Powered Wearable Tech for Remote Health Monitoring in 2025
Best AI-Powered Wearable Tech for Remote Health Monitoring in 2025
SEOLIFT - SEO Company London
 
Best Practice for LLM Serving in the Cloud
Best Practice for LLM Serving in the Cloud
Alluxio, Inc.
 
Test Case Design Techniques – Practical Examples & Best Practices in Software...
Test Case Design Techniques – Practical Examples & Best Practices in Software...
Muhammad Fahad Bashir
 
declaration of Variables and constants.pptx
declaration of Variables and constants.pptx
meemee7378
 
University Campus Navigation for All - Peak of Data & AI
University Campus Navigation for All - Peak of Data & AI
Safe Software
 
Heat Treatment Process Automation in India
Heat Treatment Process Automation in India
Reckers Mechatronics
 

Oracle Forms: Introduction to multiple Forms

  • 1. Introduction to Multiple Form Applications http://ebiztechnics.blogspot.com
  • 2. Objectives ‱ Call one form from another from module ‱ Define Multiple form functionality http://ebiztechnics.blogspot.com
  • 3. Multiple Form Applications ‱ Behavior: – Flexible navigation between windows – Single or multiple database connections – Transactions may span forms, if required – Commits in order of opening forms, starting with current form ‱ Links: – Data is exchanged by global variables or parameter lists – Code is shared as required, through libraries and the database http://ebiztechnics.blogspot.com
  • 4. Multiple Form Sessions Form A Forms Runtime Global variables Form B Open Form C Open Form D Open http://ebiztechnics.blogspot.com
  • 5. OPEN_FORM Built-in MDI FORM A MDI FORM A Modeless FORM B OPEN_FORM http://ebiztechnics.blogspot.com
  • 6. Implementing Multiple Forms 1. Define windows and positions for each form. 2. Plan global variables and their names. 3. Implement triggers to: ‱ Open other forms ‱ Initialize global variables from calling forms ‱ Use global variables in opened forms http://ebiztechnics.blogspot.com
  • 7. Linking by Global Variables Employees Departments GLOBAL.dept_id Deptno http://ebiztechnics.blogspot.com
  • 8. Opening Another Forms :GLOBAL.dept_id:=:DEPT.deptno; OPEN_FORM(‘employees’); ‱ Control passes immediately to the Employees form—no statements after OPEN_FORM are processed. ‱ If the Activate_Mode argument is set to NO_ACTIVATE, you retain control in the current form. ‱ The transaction continues unless it was explicitly committed before. http://ebiztechnics.blogspot.com
  • 9. Restricted Query at Startup Execute_Query; :EMP.deptno := :GLOBAL.dept_id; When-New-Form-Instance - Form Level Pre-Query - Block Level http://ebiztechnics.blogspot.com
  • 10. Global Variables in Opened Form ‱ Assign Global variables values in opened form with DEFAULT_VALUE Built-in. ‱ DEFAULT_VALUE ensures the existence of global variables. ‱ You can use global variables to communicate that the form is running. ‱ Pre-Form Example: DEFAULT_VALUE(‘ ‘,‘GLOBAL.dept_id’); http://ebiztechnics.blogspot.com
  • 11. Conditional Opening :GLOBAL.dept_id := :DEPT.deptno; IF ID_NULL(FIND_FORM(’EMPLOYEES’)) THEN OPEN_FORM(’EMPLOYEES’); ELSE GO_FORM(’EMPLOYEES’); END IF; http://ebiztechnics.blogspot.com
  • 12. Closing a Form with EXIT_FORM ‱ The default functionality is the same as for the Exit key. ‱ The Commit_Mode argument defines action on uncommitted changes. ENTER; IF :SYSTEM.FORM_STATUS = ’CHANGED’ THEN EXIT_FORM( DO_COMMIT ); ELSE EXIT_FORM( NO_COMMIT ); END IF; http://ebiztechnics.blogspot.com
  • 13. Summary ‱ The OPEN_FORM built-in provides multiple concurrent forms in a session. ‱ Forms communicate through global variables: – Load key values in the parent form – Use global values in opened forms for When-New-Form-Instance and Pre-Query http://ebiztechnics.blogspot.com

Editor's Notes

  • #8: Note: It is possible to start up several instances of the same form,using OPEN_FORM, unless The application does appropriate tests before calling this built-in. For example, test a Flag (global variable) set by an opened form at startup, which the opened form could Reset on exit, or use the FIND_FORM built-in.