SlideShare a Scribd company logo
5
Most read
10
Most read
Flexible Coding in Forms
http://ebiztechnics.blogspot.com
Objectives
• Explain Flexible Coding
• Advantages of using system variables
• Identify built-in subprograms that assist flexible coding
• Write code to reference objects by internal ID
http://ebiztechnics.blogspot.com
Flexible Coding
• What do you mean by Flexible Coding?
• Is generic code
• Is reusable
• Avoid hard coded object names
• Make maintenance easier
• Increases Productivity
http://ebiztechnics.blogspot.com
System Variables
• Input focus:
– SYSTEM.CURSOR_BLOCK
– SYSTEM.CURSOR_RECORD
– SYSTEM.CURSOR_ITEM
– SYSTEM.CURSOR_VALUE
http://ebiztechnics.blogspot.com
System Variables
• Trigger focus:
– SYSTEM.TRIGGER_BLOCK
– SYSTEM.TRIGGER_RECORD
– SYSTEM.TRIGGER_ITEM
Note: prefix colon (:) before these variables
Example: :SYSTEM.CURSOR_ITEM
http://ebiztechnics.blogspot.com
Examples
• IF :SYSTEM.CURSOR_BLOCK=‘DEPT’ THEN
GO_BLOCK(‘EMP’);
ELSIF :SYSTEM.CURSOR_BLOCK=‘EMP’ THEN
GO_BLOCK(‘SALGRADE’);
ELSIF :SYSTEM.CURSOR_BLOCK=‘SALGRADE’ THEN
GO_BLOCK(‘DEPT’);
END IF;
http://ebiztechnics.blogspot.com
GET_”object”_PROPERTY Built-ins
• GET_APPLICATION_PROPERTY
• GET_FORM_PROPERTY
• GET_BLOCK_PROPERTY
• GET_RELATION_PROPERTY
• GET_RECORD_PROPERTY
• GET_ITEM_PROPERTY
• GET_ITEM_INSTANCE_PROPERTY
• GET_LOV_PROPERTY
• GET_RADIO_BUTTON_PROPERTY
• GET_MENU_ITEM_PROPERTY
• GET_CANVAS_PROPERTY
• GET_TAB_PAGE_PROPERTY
• GET_VIEW_PROPERTY
• GET_WINDOW_PROPERTY
http://ebiztechnics.blogspot.com
SET_”object”_PROPERTY Built-ins
• SET_APPLICATION_PROPERTY
• SET_FORM_PROPERTY
• SET_BLOCK_PROPERTY
• SET_RELATION_PROPERTY
• SET_RECORD_PROPERTY
• SET_ITEM_PROPERTY
• SET_ITEM_INSTANCE_PROPERTY
• SET_LOV_PROPERTY
• SET_RADIO_BUTTON_PROPERTY
• SET_MENU_ITEM_PROPERTY
• SET_CANVAS_PROPERTY
• SET_TAB_PAGE_PROPERTY
• SET_VIEW_PROPERTY
• SET_WINDOW_PROPERTY
http://ebiztechnics.blogspot.com
Object ID
Finding and Object ID:
Alt_id :=
FIND_ALERT(’Del_alert’)
Referencing an Object by ID:
...SHOW_ALERT(Alt_id)
Referencing and Object by Name:
...SHOW_ALERT(‘Del_alert’)
http://ebiztechnics.blogspot.com
FIND_ Built-ins
• FIND_FORM FORMMODULE
• FIND_BLOCK BLOCK
• FIND_ITEM ITEM
• FIND_RELATION RELATION
• FIND_LOV LOV
• FIND_WINDOW WINDOW
• FIND_VIEW VIEW
• FIND_CANVAS CANVAS
• FIND_ALERT ALERT
• FIND_EDITOR EDITOR
http://ebiztechnics.blogspot.com
Using Object IDs
• Declare a PL/SQL variable of the same data type.
• Use the variable for any later reference to the object.
• Use the variable within the current PL/SQL block only.
http://ebiztechnics.blogspot.com
Example
DECLARE
item_var item;
BEGIN
item_var := FIND_ITEM(:SYSTEM.CURSOR_ITEM);
SET_ITEM_PROPERTY(item_var,
visual_attribute,
‘va_blue’);
END;
http://ebiztechnics.blogspot.com
Using Object IDs
• A PL/SQL variable has limited scope.
• An .id extension:
– Broadens the scope
– Converts to a numeric format
– Enables assignment to a global variable
– Converts back to the object data type
http://ebiztechnics.blogspot.com
Summary
• User System Variables
– To avoid hard coded object names
– Make maintenance easier
• Use GET_”object”_PROPERTY Built-ins to get and
SET_”object”_PROPERTY Built-ins to Set the object properties at
run time.
• Use FIND_”object” functions to find the internal Object Ids.
http://ebiztechnics.blogspot.com
Ad

Recommended

Oracle Forms : Reusable Components
Oracle Forms : Reusable Components
Sekhar Byna
 
Oracle Forms: create debug triggers
Oracle Forms: create debug triggers
Sekhar Byna
 
Oracle Forms Triggers
Oracle Forms Triggers
Sekhar Byna
 
Oracle Forms- key triggers
Oracle Forms- key triggers
Sekhar Byna
 
Oracle Forms : Validation Triggers
Oracle Forms : Validation Triggers
Sekhar Byna
 
Oracle Forms : Multiple Forms
Oracle Forms : Multiple Forms
Sekhar Byna
 
Oracle Forms: Menu
Oracle Forms: Menu
Sekhar Byna
 
Oracle Forms: Messages
Oracle Forms: Messages
Sekhar Byna
 
Oracle Apps - Forms
Oracle Apps - Forms
Bhaskara Reddy Sannapureddy
 
Oracle Forms: Master Detail form
Oracle Forms: Master Detail form
Sekhar Byna
 
Oracle Forms Triggers
Oracle Forms Triggers
Sekhar Byna
 
Oracle Forms-Canvas types
Oracle Forms-Canvas types
Sekhar Byna
 
Oracle Forms Creation-List of Values (LOV)
Oracle Forms Creation-List of Values (LOV)
Sekhar Byna
 
Oracle Forms: Non input Items
Oracle Forms: Non input Items
Sekhar Byna
 
Oracle Forms : Transnational Triggers
Oracle Forms : Transnational Triggers
Sekhar Byna
 
Oracle Forms: Introduction to multiple Forms
Oracle Forms: Introduction to multiple Forms
Sekhar Byna
 
Oracle Forms Tutorial (www.aboutoracleapps.com)
Oracle Forms Tutorial (www.aboutoracleapps.com)
magupta26
 
Oracle Forms Mouse triggers
Oracle Forms Mouse triggers
Sekhar Byna
 
Oracle Forms : Query Triggers
Oracle Forms : Query Triggers
Sekhar Byna
 
Forms 6i guide
Forms 6i guide
Vinay Kumar
 
Oracle Form material
Oracle Form material
Rajesh Ch
 
Oracle Forms Creation
Oracle Forms Creation
Sekhar Byna
 
PHP - Introduction to Object Oriented Programming with PHP
PHP - Introduction to Object Oriented Programming with PHP
Vibrant Technologies & Computers
 
Oracle Forms: Record Groups
Oracle Forms: Record Groups
Sekhar Byna
 
Selenium Locators
Selenium Locators
Satyam Pandey
 
forms builder
forms builder
Shoeb Shabibi
 
Oracle Forms : Timers
Oracle Forms : Timers
Sekhar Byna
 
PL/SQL Fundamentals I
PL/SQL Fundamentals I
Nick Buytaert
 
Oracle Forms Introduction
Oracle Forms Introduction
Sekhar Byna
 
Oracle Forms Creation part 3
Oracle Forms Creation part 3
Sekhar Byna
 

More Related Content

What's hot (20)

Oracle Apps - Forms
Oracle Apps - Forms
Bhaskara Reddy Sannapureddy
 
Oracle Forms: Master Detail form
Oracle Forms: Master Detail form
Sekhar Byna
 
Oracle Forms Triggers
Oracle Forms Triggers
Sekhar Byna
 
Oracle Forms-Canvas types
Oracle Forms-Canvas types
Sekhar Byna
 
Oracle Forms Creation-List of Values (LOV)
Oracle Forms Creation-List of Values (LOV)
Sekhar Byna
 
Oracle Forms: Non input Items
Oracle Forms: Non input Items
Sekhar Byna
 
Oracle Forms : Transnational Triggers
Oracle Forms : Transnational Triggers
Sekhar Byna
 
Oracle Forms: Introduction to multiple Forms
Oracle Forms: Introduction to multiple Forms
Sekhar Byna
 
Oracle Forms Tutorial (www.aboutoracleapps.com)
Oracle Forms Tutorial (www.aboutoracleapps.com)
magupta26
 
Oracle Forms Mouse triggers
Oracle Forms Mouse triggers
Sekhar Byna
 
Oracle Forms : Query Triggers
Oracle Forms : Query Triggers
Sekhar Byna
 
Forms 6i guide
Forms 6i guide
Vinay Kumar
 
Oracle Form material
Oracle Form material
Rajesh Ch
 
Oracle Forms Creation
Oracle Forms Creation
Sekhar Byna
 
PHP - Introduction to Object Oriented Programming with PHP
PHP - Introduction to Object Oriented Programming with PHP
Vibrant Technologies & Computers
 
Oracle Forms: Record Groups
Oracle Forms: Record Groups
Sekhar Byna
 
Selenium Locators
Selenium Locators
Satyam Pandey
 
forms builder
forms builder
Shoeb Shabibi
 
Oracle Forms : Timers
Oracle Forms : Timers
Sekhar Byna
 
PL/SQL Fundamentals I
PL/SQL Fundamentals I
Nick Buytaert
 
Oracle Forms: Master Detail form
Oracle Forms: Master Detail form
Sekhar Byna
 
Oracle Forms Triggers
Oracle Forms Triggers
Sekhar Byna
 
Oracle Forms-Canvas types
Oracle Forms-Canvas types
Sekhar Byna
 
Oracle Forms Creation-List of Values (LOV)
Oracle Forms Creation-List of Values (LOV)
Sekhar Byna
 
Oracle Forms: Non input Items
Oracle Forms: Non input Items
Sekhar Byna
 
Oracle Forms : Transnational Triggers
Oracle Forms : Transnational Triggers
Sekhar Byna
 
Oracle Forms: Introduction to multiple Forms
Oracle Forms: Introduction to multiple Forms
Sekhar Byna
 
Oracle Forms Tutorial (www.aboutoracleapps.com)
Oracle Forms Tutorial (www.aboutoracleapps.com)
magupta26
 
Oracle Forms Mouse triggers
Oracle Forms Mouse triggers
Sekhar Byna
 
Oracle Forms : Query Triggers
Oracle Forms : Query Triggers
Sekhar Byna
 
Oracle Form material
Oracle Form material
Rajesh Ch
 
Oracle Forms Creation
Oracle Forms Creation
Sekhar Byna
 
PHP - Introduction to Object Oriented Programming with PHP
PHP - Introduction to Object Oriented Programming with PHP
Vibrant Technologies & Computers
 
Oracle Forms: Record Groups
Oracle Forms: Record Groups
Sekhar Byna
 
Oracle Forms : Timers
Oracle Forms : Timers
Sekhar Byna
 
PL/SQL Fundamentals I
PL/SQL Fundamentals I
Nick Buytaert
 

Viewers also liked (7)

Oracle Forms Introduction
Oracle Forms Introduction
Sekhar Byna
 
Oracle Forms Creation part 3
Oracle Forms Creation part 3
Sekhar Byna
 
Oracle Forms: Data Blocks on Different Sources
Oracle Forms: Data Blocks on Different Sources
Sekhar Byna
 
Oaf personalization examples
Oaf personalization examples
Madhurima Chatterjee
 
Oracle ERP
Oracle ERP
Mayuree Srikulwong
 
Introduction to Oracle Financials
Introduction to Oracle Financials
hasan2000
 
Oracle ERP Introduction
Oracle ERP Introduction
Nitin Maheshwari
 
Oracle Forms Introduction
Oracle Forms Introduction
Sekhar Byna
 
Oracle Forms Creation part 3
Oracle Forms Creation part 3
Sekhar Byna
 
Oracle Forms: Data Blocks on Different Sources
Oracle Forms: Data Blocks on Different Sources
Sekhar Byna
 
Introduction to Oracle Financials
Introduction to Oracle Financials
hasan2000
 
Ad

Similar to Oracle Forms : Coding .. (20)

Les22
Les22
Sudharsan S
 
Oracle forms les22
Oracle forms les22
Abed Othman
 
Programming Design Guidelines
Programming Design Guidelines
intuitiv.de
 
Module9-1-Final-Project-ErikWHouse
Module9-1-Final-Project-ErikWHouse
Erik House
 
School management system
School management system
Soumya Behera
 
Maintaining Code
Maintaining Code
Kelly Bauer
 
The View - Lotusscript coding best practices
The View - Lotusscript coding best practices
Bill Buchan
 
Essbase Calculations: Elements of Style
Essbase Calculations: Elements of Style
Alithya
 
Cobol basics 19-6-2010
Cobol basics 19-6-2010
SivaprasanthRentala1975
 
Mastering ASP NET with Visual C 1st Edition A. Russell Jones
Mastering ASP NET with Visual C 1st Edition A. Russell Jones
llancojenem63
 
Lenvica Attend Hrm
Lenvica Attend Hrm
Francis Victor
 
Visualbasic tutorial
Visualbasic tutorial
Andi Simanjuntak
 
Mastering ASP NET with Visual C 1st Edition A. Russell Jones
Mastering ASP NET with Visual C 1st Edition A. Russell Jones
gezanejerzu
 
COM 211 PRESENTATION.pptx
COM 211 PRESENTATION.pptx
AnasYunusa
 
Cobol programming language
Cobol programming language
Burhan Ahmed
 
CAL PROGRAMMING GUIDE Programming Conventions
CAL PROGRAMMING GUIDE Programming Conventions
Gerardo Renteria
 
Test Bank for Introduction to Programming Using Visual Basic 10th Edition Sch...
Test Bank for Introduction to Programming Using Visual Basic 10th Edition Sch...
selmasalsakr
 
Vb
Vb
Kuldeep Sharma
 
Bca1020 programming in c
Bca1020 programming in c
smumbahelp
 
3.6
3.6
Samimvez
 
Oracle forms les22
Oracle forms les22
Abed Othman
 
Programming Design Guidelines
Programming Design Guidelines
intuitiv.de
 
Module9-1-Final-Project-ErikWHouse
Module9-1-Final-Project-ErikWHouse
Erik House
 
School management system
School management system
Soumya Behera
 
Maintaining Code
Maintaining Code
Kelly Bauer
 
The View - Lotusscript coding best practices
The View - Lotusscript coding best practices
Bill Buchan
 
Essbase Calculations: Elements of Style
Essbase Calculations: Elements of Style
Alithya
 
Mastering ASP NET with Visual C 1st Edition A. Russell Jones
Mastering ASP NET with Visual C 1st Edition A. Russell Jones
llancojenem63
 
Mastering ASP NET with Visual C 1st Edition A. Russell Jones
Mastering ASP NET with Visual C 1st Edition A. Russell Jones
gezanejerzu
 
COM 211 PRESENTATION.pptx
COM 211 PRESENTATION.pptx
AnasYunusa
 
Cobol programming language
Cobol programming language
Burhan Ahmed
 
CAL PROGRAMMING GUIDE Programming Conventions
CAL PROGRAMMING GUIDE Programming Conventions
Gerardo Renteria
 
Test Bank for Introduction to Programming Using Visual Basic 10th Edition Sch...
Test Bank for Introduction to Programming Using Visual Basic 10th Edition Sch...
selmasalsakr
 
Bca1020 programming in c
Bca1020 programming in c
smumbahelp
 
Ad

More from Sekhar Byna (7)

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: 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 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: 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
 

Recently uploaded (20)

Sysinfo OST to PST Converter Infographic
Sysinfo OST to PST Converter Infographic
SysInfo Tools
 
Simplify Insurance Regulations with Compliance Management Software
Simplify Insurance Regulations with Compliance Management Software
Insurance Tech Services
 
OpenChain Webinar - AboutCode - Practical Compliance in One Stack – Licensing...
OpenChain Webinar - AboutCode - Practical Compliance in One Stack – Licensing...
Shane Coughlan
 
AI for PV: Development and Governance for a Regulated Industry
AI for PV: Development and Governance for a Regulated Industry
Biologit
 
Zoho Creator Solution for EI by Elsner Technologies.docx
Zoho Creator Solution for EI by Elsner Technologies.docx
Elsner Technologies Pvt. Ltd.
 
Building Geospatial Data Warehouse for GIS by GIS with FME
Building Geospatial Data Warehouse for GIS by GIS with FME
Safe Software
 
On-Device AI: Is It Time to Go All-In, or Do We Still Need the Cloud?
On-Device AI: Is It Time to Go All-In, or Do We Still Need the Cloud?
Hassan Abid
 
Canva Pro Crack Free Download 2025-FREE LATEST
Canva Pro Crack Free Download 2025-FREE LATEST
grete1122g
 
Decipher SEO Solutions for your startup needs.
Decipher SEO Solutions for your startup needs.
mathai2
 
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
NEW-IDM Crack with Internet Download Manager 6.42 Build 27 VERSION
NEW-IDM Crack with Internet Download Manager 6.42 Build 27 VERSION
grete1122g
 
Microsoft-365-Administrator-s-Guide1.pdf
Microsoft-365-Administrator-s-Guide1.pdf
mazharatknl
 
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
 
Threat Modeling a Batch Job Framework - Teri Radichel - AWS re:Inforce 2025
Threat Modeling a Batch Job Framework - Teri Radichel - AWS re:Inforce 2025
2nd Sight Lab
 
Y - Recursion The Hard Way GopherCon EU 2025
Y - Recursion The Hard Way GopherCon EU 2025
Eleanor McHugh
 
University Campus Navigation for All - Peak of Data & AI
University Campus Navigation for All - Peak of Data & AI
Safe Software
 
Which Hiring Management Tools Offer the Best ROI?
Which Hiring Management Tools Offer the Best ROI?
HireME
 
From Data Preparation to Inference: How Alluxio Speeds Up AI
From Data Preparation to Inference: How Alluxio Speeds Up AI
Alluxio, Inc.
 
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
Humans vs AI Call Agents - Qcall.ai's Special Report
Humans vs AI Call Agents - Qcall.ai's Special Report
Udit Goenka
 
Sysinfo OST to PST Converter Infographic
Sysinfo OST to PST Converter Infographic
SysInfo Tools
 
Simplify Insurance Regulations with Compliance Management Software
Simplify Insurance Regulations with Compliance Management Software
Insurance Tech Services
 
OpenChain Webinar - AboutCode - Practical Compliance in One Stack – Licensing...
OpenChain Webinar - AboutCode - Practical Compliance in One Stack – Licensing...
Shane Coughlan
 
AI for PV: Development and Governance for a Regulated Industry
AI for PV: Development and Governance for a Regulated Industry
Biologit
 
Zoho Creator Solution for EI by Elsner Technologies.docx
Zoho Creator Solution for EI by Elsner Technologies.docx
Elsner Technologies Pvt. Ltd.
 
Building Geospatial Data Warehouse for GIS by GIS with FME
Building Geospatial Data Warehouse for GIS by GIS with FME
Safe Software
 
On-Device AI: Is It Time to Go All-In, or Do We Still Need the Cloud?
On-Device AI: Is It Time to Go All-In, or Do We Still Need the Cloud?
Hassan Abid
 
Canva Pro Crack Free Download 2025-FREE LATEST
Canva Pro Crack Free Download 2025-FREE LATEST
grete1122g
 
Decipher SEO Solutions for your startup needs.
Decipher SEO Solutions for your startup needs.
mathai2
 
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
NEW-IDM Crack with Internet Download Manager 6.42 Build 27 VERSION
NEW-IDM Crack with Internet Download Manager 6.42 Build 27 VERSION
grete1122g
 
Microsoft-365-Administrator-s-Guide1.pdf
Microsoft-365-Administrator-s-Guide1.pdf
mazharatknl
 
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
 
Threat Modeling a Batch Job Framework - Teri Radichel - AWS re:Inforce 2025
Threat Modeling a Batch Job Framework - Teri Radichel - AWS re:Inforce 2025
2nd Sight Lab
 
Y - Recursion The Hard Way GopherCon EU 2025
Y - Recursion The Hard Way GopherCon EU 2025
Eleanor McHugh
 
University Campus Navigation for All - Peak of Data & AI
University Campus Navigation for All - Peak of Data & AI
Safe Software
 
Which Hiring Management Tools Offer the Best ROI?
Which Hiring Management Tools Offer the Best ROI?
HireME
 
From Data Preparation to Inference: How Alluxio Speeds Up AI
From Data Preparation to Inference: How Alluxio Speeds Up AI
Alluxio, Inc.
 
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
Humans vs AI Call Agents - Qcall.ai's Special Report
Humans vs AI Call Agents - Qcall.ai's Special Report
Udit Goenka
 

Oracle Forms : Coding ..

  • 1. Flexible Coding in Forms http://ebiztechnics.blogspot.com
  • 2. Objectives • Explain Flexible Coding • Advantages of using system variables • Identify built-in subprograms that assist flexible coding • Write code to reference objects by internal ID http://ebiztechnics.blogspot.com
  • 3. Flexible Coding • What do you mean by Flexible Coding? • Is generic code • Is reusable • Avoid hard coded object names • Make maintenance easier • Increases Productivity http://ebiztechnics.blogspot.com
  • 4. System Variables • Input focus: – SYSTEM.CURSOR_BLOCK – SYSTEM.CURSOR_RECORD – SYSTEM.CURSOR_ITEM – SYSTEM.CURSOR_VALUE http://ebiztechnics.blogspot.com
  • 5. System Variables • Trigger focus: – SYSTEM.TRIGGER_BLOCK – SYSTEM.TRIGGER_RECORD – SYSTEM.TRIGGER_ITEM Note: prefix colon (:) before these variables Example: :SYSTEM.CURSOR_ITEM http://ebiztechnics.blogspot.com
  • 6. Examples • IF :SYSTEM.CURSOR_BLOCK=‘DEPT’ THEN GO_BLOCK(‘EMP’); ELSIF :SYSTEM.CURSOR_BLOCK=‘EMP’ THEN GO_BLOCK(‘SALGRADE’); ELSIF :SYSTEM.CURSOR_BLOCK=‘SALGRADE’ THEN GO_BLOCK(‘DEPT’); END IF; http://ebiztechnics.blogspot.com
  • 7. GET_”object”_PROPERTY Built-ins • GET_APPLICATION_PROPERTY • GET_FORM_PROPERTY • GET_BLOCK_PROPERTY • GET_RELATION_PROPERTY • GET_RECORD_PROPERTY • GET_ITEM_PROPERTY • GET_ITEM_INSTANCE_PROPERTY • GET_LOV_PROPERTY • GET_RADIO_BUTTON_PROPERTY • GET_MENU_ITEM_PROPERTY • GET_CANVAS_PROPERTY • GET_TAB_PAGE_PROPERTY • GET_VIEW_PROPERTY • GET_WINDOW_PROPERTY http://ebiztechnics.blogspot.com
  • 8. SET_”object”_PROPERTY Built-ins • SET_APPLICATION_PROPERTY • SET_FORM_PROPERTY • SET_BLOCK_PROPERTY • SET_RELATION_PROPERTY • SET_RECORD_PROPERTY • SET_ITEM_PROPERTY • SET_ITEM_INSTANCE_PROPERTY • SET_LOV_PROPERTY • SET_RADIO_BUTTON_PROPERTY • SET_MENU_ITEM_PROPERTY • SET_CANVAS_PROPERTY • SET_TAB_PAGE_PROPERTY • SET_VIEW_PROPERTY • SET_WINDOW_PROPERTY http://ebiztechnics.blogspot.com
  • 9. Object ID Finding and Object ID: Alt_id := FIND_ALERT(’Del_alert’) Referencing an Object by ID: ...SHOW_ALERT(Alt_id) Referencing and Object by Name: ...SHOW_ALERT(‘Del_alert’) http://ebiztechnics.blogspot.com
  • 10. FIND_ Built-ins • FIND_FORM FORMMODULE • FIND_BLOCK BLOCK • FIND_ITEM ITEM • FIND_RELATION RELATION • FIND_LOV LOV • FIND_WINDOW WINDOW • FIND_VIEW VIEW • FIND_CANVAS CANVAS • FIND_ALERT ALERT • FIND_EDITOR EDITOR http://ebiztechnics.blogspot.com
  • 11. Using Object IDs • Declare a PL/SQL variable of the same data type. • Use the variable for any later reference to the object. • Use the variable within the current PL/SQL block only. http://ebiztechnics.blogspot.com
  • 12. Example DECLARE item_var item; BEGIN item_var := FIND_ITEM(:SYSTEM.CURSOR_ITEM); SET_ITEM_PROPERTY(item_var, visual_attribute, ‘va_blue’); END; http://ebiztechnics.blogspot.com
  • 13. Using Object IDs • A PL/SQL variable has limited scope. • An .id extension: – Broadens the scope – Converts to a numeric format – Enables assignment to a global variable – Converts back to the object data type http://ebiztechnics.blogspot.com
  • 14. Summary • User System Variables – To avoid hard coded object names – Make maintenance easier • Use GET_”object”_PROPERTY Built-ins to get and SET_”object”_PROPERTY Built-ins to Set the object properties at run time. • Use FIND_”object” functions to find the internal Object Ids. http://ebiztechnics.blogspot.com

Editor's Notes

  • #5: Note: The best way to learn about system variables is to look at their values when a Form is running. You can examine the system variables by using the Debugger.
  • #12: Note: Use the FIND_ built-in subprograms only when referring to an object more than once in the Same trigger or PL/SQL program unit.