Preparing for OCP Exam 3:Build Internet Applications 1 3
1 Introduction to Oracle Forms 6i 3
Overview of the Oracle Forms 6i Package 4
Features and Benefits of Using Oracle Forms 6i 4
Component Groups in Oracle Forms 6i 6
Introduction to Oracle Forms 6i Builder Tools 7
Builder Tools for Project Management 8
Builder Tools for Front-End Development 8
Builder Tools for Back-End Development 9
Chaptet Summary 13
Two-Minute Drill 15
Chapter Questions 16
Answers to Chapter Questions 21
2 Form Builder 25
Working in the Form Builder Environment 26
Identifying the Main Form Buildre Executables 27
Identifying the Main Components of Form Builder 28
Identifying the Main Objects in a Form Module 29
Creating Basic Form Modules 31
Creating a Form Module 32
Using the Data Block Wizard to Create and Modify Data Blocks 33
Creating and Modifying Layouts Using the Layout Wizard 38
Saving Compiling and Running a Form Module 44
Form Builder File Formats and Their Characteristics 46
Creating Data Blocks with Relationships 48
Running a Master/Detail Form Module 51
Running a Form Builder Application 51
Understanding the Runtime Environment 52
Navigating a Form Builder Application 54
Understanding the Two Modes of Forms Runtime Operation 57
Retrieving Data into a Form Builder Application 58
Inserting Updating and Deleting Records 61
Displaying Database Errors Using the Help Facility 62
Chaptet Summary 64
Two-Minute Drill 65
Chapter Questions 67
Answers to Chapter Questions 72
3 Forms Desing Ⅰ 75
Working with Data Blocks and Frames 76
Property Palette Components 77
Manipulating Properties 80
Controlling the Behavior of Data Blocks 81
Controlling Frame Properties 83
Creating Blocks That Do Not Correspond to a Database Object 84
Deleting Data Blocks and Their Components 85
Working with Text Items 87
Introduction to Text Items 88
Modifing a Text ltem s Appearance 88
Controlling the Data in a Text ltem 89
Modifying the Navigational Behavior of a Text ltem 91
Enhancing the Relationship Between the Text ltem and a Database 92
Modifying the Functionality of a Text ltem 92
Including Help Messages in Your Applications 93
Creating LOVs and Editors 95
Introduction to LOVs and Editors 96
Creating LOVs 100
Creating Editors 104
Chapter Summary 106
Two-Minute Drill 109
Chapter Questions 112
Answers to Chapter Questions 121
4 Forms Design 11 127
Creating Additional Input ltems 128
Introdction to ltem Types that Allow Input 128
Creating a Check Box 130
Creating a List Item 132
Creating a Radio Group 133
Creating Noninput Items 137
Introduction to Item Types that Do Not Allow Input 138
Creating an Image Item 139
Creating a Display Item 139
Creating a Sound Item 144
Creating a Button 147
Creating a Calculated Field 149
Creating Windows and Content Canvases 150
Introduction to Windows and Content Canvases 150
Window and Content Canvases Properties 151
Displaying a Form Module in Multiple Windows 154
Working with Other Canvases 154
Introduction to Canvas Types 155
Creating an Overlay Effect Using Stacked Canvases 156
Creating a Toolbar 158
Creating a Tabbed Interface 159
Chapter Summary 163
Two-Minute Drill 165
Chapter Questions 168
Answers to Chapter Questions 173
5 Working with Triggers 175
Introduction to form Triggers 176
Definition of a Trigger 176
Form Trigger Categories 177
Form Trigger Types and Scope 178
Form Trigger Properties 178
How to Produce Triggers 178
Writing Trigger Code 180
Understanding the Use of Built-In Subprograms 181
Introduction to the When-Window-Closed Trigger 184
Supplementing the Functionality of Input Items 186
Addign Functionality to Form Items 186
Supplementign the Functionality of Noninput Items 187
Using Query Triggers 189
Data Block Query Process and Triggers 189
Writing Triggers That Screen Query Conditions 191
Writing Triggers to Supplement Query Results 194
Debugging Triggers 195
Running a Form Module in Debug Mode 195
Understanding the Components of the Debugger 197
Debugging PL/SQL Code 199
Chapter Summary 201
TWO-Minute Drill 203
Chapter Questions 206
Answers to Chapter Questions 210
6 Forms Processing 213
Forms Runtime Messages and Alerts 214
Introduction to the Default Messaging 215
Handling Errors Using Built-In Subprograms 216
Controlling System Messages 218
Creating and Controlling Alerts 219
Data Validation 222
Effects of Validation Unit on a form 222
Introduction to Form Builder Validation Properties 223
Controlling Validation Using Triggers 223
Navigation 225
Internal versus External Navigation 225
Using Navigation Triggers 226
Transaction Processing 229
Introdction to Built-Ins That Cause Navigation 229
Commit Processing Transaction Processing and Triggers 231
Allocating Automatic Sequence Numbers to Records 237
Implementing Array DML 239
Chapter Summary 240
Two-Minute Drill 242
Chapter Questions 244
Answers to Chapter Questions 247
7 Forms Programming 249
Writing Flexible Code 250
Flesible Code and System Variables 250
Built-In Subprograms that Assist Flexible Coding 254
Writing Code to Reference Objects by Internal ID 257
Writing Code to Reference Objects Indirectly 259
Inheriting Properties from Property Classer 260
Sharing Objects and Code 260
Grouping Related Objects for Reuse 263
Reusing Objects from an Object Library 264
Reusing PL/SQL code 265
Managing Multipe-Form Applications 266
Defining Multiple-Form Functionality 266
Calling One Form from Another 267
Chapter Summary 272
Two-Minute Drill 274
Chapter Questions 276
Answer to Chapter Questions 280
Preparing for OCP Exam 4:Build Internet Applications Ⅱ 285
8 Working with Menu Modules 285
Menu Components 286
Creating Menu Modules 286
Creating Saving and Attaching Menu Modules 288
Setting Menu Properties Using the Property Palette 292
Creating Menu Toolbars 292
Creating Pop-up Menus 295
Managing Menu Modules 296
Controlling the Menu Programmatically 297
Customizing Menu Modules with Substitution Parameters 298
Implementing Menu Security 299
Chapter Summary 300
Two-Minute Drill 303
Chapter Questions 305
Answers to Chapter Questions 309
9 Advanced Forms Programming 1 311
Redefining Function Keys 312
Programming Function Keys 312
Determining When Key Triggers Should Be Used 313
Responding to Mouse Events 315
Introduction to Mouse Events 315
Causing a Form Module to Respond to Mouse Movement 317
Causing a Form Module to Respond to Mouse Button Actions 318
Controlling Windows and Canvases Programmatically 319
Creating Trigger Code to Interact with Windows 319
Controlling Windows Programmatically 319
Controlling Canvases 321
Controlling Data Block Relationships 321
Definition of Block Coordination 322
Creating and Block Coordination 322
Characteristics of Relation-Handling Code 325
Implementing a Coordination-Type Toggle 331
Chapter Summary 332
Two-Minute Drill 334
Chapter Questions 337
Answers to Chapter Questions 341
10 Advanced Forms Programmign 343
Building Multiple-Form Applications 344
Different Ways to Invoke Forms 344
Building Robust Multiple-Form Transactions 346
Passing Data Between Forms Using Parameter Lists 348
Defining Data Sources 350
Introduction to Diverse Data Source Types 351
Selecting Appropriate Data Sources for Data Blocks 352
Working with Record Groups 355
Creating Record Groups at Design Time 356
Creating and Modifying Record Groups Programmatically 357
Building Dynamic List ltems by Using Record Groups 359
Using a Globab Record Group to Communicate Between Forms 360
Chapter Summary 362
Two-Minute Drill 364
Chapter Questions 366
Answers to Chapter Questions 370
11 Advanced Forms ProgrammingⅢ 373
Including Charts in Forms 374
Using the Chart Wizard Embed Charts in a Form 374
Applying Timers to Form Objects 377
Creating a Timer 377
Deleting a Timer 380
Modifying a Timer 381
Utilizing Reusable Components 382
Introduction to the Reusable Components 382
Using the Calendar Class in an Application 384
Using Server Features in Form Builder 384
Introduction to Oracle Server Features in Form Builder 385
Partitioning PL/SQL Program Units 385
Recognizing the PL/SQL8 Features Supported in Forms 6i 386
Handling Errors Raised by the Oracle Server 388
Performing DDL Commands 389
Chapter Summary 390
Two-Minute Drill 392
Chapter Questions 394
Answers to Chapter Questions 399
Indes 403