Home > Store

Oracle PL/SQL by Example

Register your product to gain access to bonus material or receive a coupon.

Oracle PL/SQL by Example

Book

  • Sorry, this book is no longer in print.
Not for Sale

Description

  • Copyright 1997
  • Edition: 1st
  • Book
  • ISBN-10: 0-201-63445-7
  • ISBN-13: 978-0-201-63445-7

If you are working with Designer/2000, Oracle's powerful set of tools for information systems design and generation, this book will serve as your indispensable guide. Not only does it provide detailed and understandable documentation for every component of Designer/2000, it also shows how and when each of these tools comes into play in the context of the information systems development life-cycle. You will learn how these tools operate, how they should be used, and most importantly, how to adapt the information systems development process to take full advantage of their capabilities.

The Oracle® Designer/2000 Handbook includes:
* documentation for all of Designer/2000's strategy, analysis, design, and code-building tools, including the Process Modeller, the Entity-Relationship Diagrammer, the Database Design Wizard, the Data Diagrammer, the Application Design Wizard, the DDL Generator, and much more;
* an overview of the development process, with a work flow road map detailing the specific steps to take when building an application with Designer/2000;
* information on designing and generating forms and reports, including use of the Module Data Diagrammer, templates, and User Preferences;
* advice on how to customize the Designer/2000 toolset to improve your productivity;
* an explanation of how to capture existing applications with Designer/2000.

As you discover the purpose and significance of each Designer/2000 tool, you will gain invaluable insight into the software development process and how you can use Designer/2000 to create systems that better serve your clients.



0201634457B04062001

Downloads

Source Code

Click below for Source Code related to this title:
colrenam.sql

d2fkchk.sql

d2ukchk.sql

fsurvey.zip

index.asis

kcreseq.sql

modrenam.sql

noopt.sql

samecmt.sql

smplpgm.sql

Sample Content

Table of Contents



Preface.

I. INTRODUCTION.

Overview of Contents.

Conventions Used in This Book.

How to Get the Most Out of This Book.

1. The Philosophy of Software Engineering.

Progress of Development Work and Decision Compression.

Is Designer/2000 Difficult to Learn and Use?

The Development Team.

Magic versus Technology.

Cross-Checking.

II. COMPONENTS OF THE DESIGNER/2000 PRODUCT.

2. Designer/2000 Components.

Brief Description of Designer/2000 Components.

Primary and Secondary Access Elements (PACs and SACs).

III. OVERVIEW OF WORK FLOW WITH DESIGNER/2000.

3. The Full-Life Cycle Approach.

Functions and Entities.

Function to Entity Cross-References.

Business Units and Their Function Associations.

Transformation of Strategy and Analysis Phases into the Design and Implementation Phases Within the Designer/2000 Repository.

Refinement of the Database Design, Part 1.

Program Transformation.

Menu Transformation.

Refinement of the Database Design, Part 2.

Refinement of Module Design After Module Is Created with Default Design Utilities.

Template Design and Module Generation.

Generation.

User Documentation.

4. Alternative Work Flow: Straight to Design.
5. Alternative Work Flow: Capturing an Existing Application.

Reverse Engineer the Data Design.

Refine the Reverse-Engineered Data Design.

Reverse Engineer the Programs.

Create a Default Logical Data Model and Logical Function Model.

Continue with (Re)Design.

IV. TOOLS THAT SPAN THE DEVELOPMENT LIFE CYCLE.

General GUI Characteristics.

Two Dreadfully Important Commands to Understand (How Not to Delete Something Accidentally).

6. The Help System.

How to Get Help On-Line.

Annotating the Help Text.

Cue Cards.

On-Line Tutorial.

Suggested Exercises: 1.

7. Repository Object Navigator.

Application Window.

Object Hierarchy Window.

Properties Window.

Application Window: Application System Commands.

Application Window: Navigation Commands.

Application Window: General Commands.

Application Window: Property Commands.

Object Hierarchy Window Commands.

Properties Window Commands.

8. Repository Reports.

Reports That Should Become Your Best Friends.

Custom Reports.

Section V. CONCEPTS THAT SPAN THE DEVELOPMENT LIFE CYCLE.

9. Application Systems Within Designer/2000.

What Does Designer/2000 Mean by "Application System"?

10. Domains.

When Should I Use a Domain?

Can I Use Domains Instead of Reference Entities?

Domain Hierarchies.

Why Use Domains?

Domain Properties.

Domain Allowable Values.

Useful Domain Reports.

Useful Domain Utilities.

11. Document.

A Useful Document Report.

Suggested Exercises: 2.

VI. DESIGNER/2000 STRATEGY AND ANALYSIS TOOLS.

12. Entity Relationship Diagrammer.

Diagram Syntax.

Diagram Commands.

Embedded Objects in the Diagram.

Entity Definition Tab (Edit Entity).

Synonym Definition Tab (Edit Entity).

Relationship Definition Tab (Edit Relationship).

Attributes Tab (Edit Entity).

Attribute Detail Tab (Edit Entity).

Attribute Values Tab (Edit Entity).

Unique Identifier Definition Tab (Edit Entity).

Text Tab (Edit Entity).

Useful Entity, Attribute, or Relationship Reports.

Suggested Exercises: 3.

13. Function Hierarchy Diagrammer.

Diagram Syntax.

Diagram Commands.

Function Definition Tab (Edit Function).

Common Function Tab (Edit Function).

Triggers Tab (Edit Function).

How Can We Use Functions Triggering Functions?

Function Entity Usages Tab (Edit Function).

Defining Function/Entity Associations: The CRUDMatrix.

Function Attribute Usages Tab (Edit Function).

Useful Function Reports.

Suggested Exercises: 4.

14. Dataflow Diagrammer.

Role of Dataflow Diagrams Within Designer/2000.

Definitions of Terms.

Diagram Commands.

Datastore Definition Tab (Edit Datastore).

Datastore Contents Tab (Edit Datastore).

Dataflow Definition Tab (Edit Dataflow).

Dataflow Contents Tab (Edit Dataflow).

Useful Dataflow and Datastore Reports.

15. Matrix Diagrammer.

Diagram Commands.

Useful Matrix-Oriented Reports.

Suggested Exercises: 5.

16. Process Modeller.

Diagram Layout.

But We Aren't Re-engineering Our Business! Should We Use the Process Modeller Anyway?

How Does the Oracle Process Modeller Help?

Why Is This Diagrammer Presented "Out of Order"?

Diagram Element Types.

Diagram Display Modes.

Definition of Terms.

Diagram Commands.

Organization (Business Unit).

Main Tab (Edit Process Step).

Specific Tab (Edit Process Step).

Resources Tab (Edit Process Step).

Multimedia Tab (Edit Process Step).

Multimedia Select Dialog Box.

Main Tab (Edit Flow).

Specific Tab (Edit Flow).

Resources Tab (Edit Flow).

Multimedia Tab (Edit Flow).

Useful Process Modeller Reports.

Suggested Exercises: 6.

17. Completing the Strategy and Analysis Phases.

VII. TRANSFORMING THE LOGICAL DATA MODEL INTO THE PHYSICAL DATA DESIGN.

18. Database Design Wizard.

Database Design Wizard Tabs.

Prepare Physical Definitions.

Table Mappings Tab (Database Design Wizard).

Run Options Tab (Database Design Wizard).

Options Tab (Database Design Wizard).

Column Mappings, Primary Keys, and Foreign Keys Tabs (Database Design Wizard).

Indexes Tab (Database Design Wizard).

Summary of the Work Process Up to Data Transformation.

Suggested Exercises: 7.

Gee Whiz!! Where Did All Those Horrible Column Names Come from? And Where Did Those EXTRA Columns Come from?!

Two Problems and an Example.

Getting Better Foreign Key Column Names.

A Snippet of Interesting Code.

Limitations and Warnings.

But What About Those Extra Columns?

Can I Safely Get Rid of Some of Those Columns?

VIII. DESIGNER/2000 DATA DESIGN TOOLS.

19. Data Diagrammer.

Diagram Syntax.

Table Definition Tab (Edit Table).

Column Definition Tab (Edit Table).

Column Display Tab (Edit Table).

Key Constraints Tab (Edit Table).

Constraints.

Validation Tab (Edit Table).

Defining Views and Snapshots.

View Definition Tab (Edit View).

Defining a View.

Base Relations Tab (Edit View).

Base Cols Tab (Edit View).

Completing the Definition of a View.

Snapshot Definition Tab (Edit Snapshot).

Completing the Definition of a Snapshot.

Useful Database Design Reports.

The Table Quality Control Report Explained.

Suggested Exercises: 8.

IX. DESIGNER/2000 PROGRAM DESIGN TOOLS.

A Brief Overview of the Generation Process.

Inputs to the Generators.

The Generation Process.

20. Application Design Wizard.

What to Expect.

Rules of Operation.

Application Design Wizard Checklist.

21. Module Structure Diagrammer.

Structure of This Section.

Using the Module Structure Diagrammer.

Definition of Terms.

Diagram Syntax.

Diagram Commands.

How the Generators Implement the Module Network.

22. Defining Modules.

Module Definition Tab (Edit Module).

Implements Tab (Edit Module).

User Access Tab (Edit Module).

Group Access Tab (Edit Module).

Suggested Exercises: 9.

Defining Characteristics for Client Module Types.

Client Details Definition Tab (Edit Module).

Parameters Tab (Edit Module).

Using Parameters in a Report.

Completing the Definition of a Forms or Report Module.

Defining PL/SQL Server Code Modules.

Server Details Definition Tab (Edit Module).

Parameters Tab (Edit Module).

Program Data Tab (Edit Module).

Datastructure Tab (Edit Module).

Sample PL/SQL Package-Declarative Method.

Sample PL/SQL Package-Free Format Method.

Sample PL/SQL Package-Operating System Method.

23. Module Data Diagrammer.

Diagram Syntax.

Definition of Terms.

Diagram Commands.

Table Details Tab (Detailed Usages for Screen Module).

Table Layout Tab (Detailed Usages for Screen Module).

Table Text Tab (Detailed Usages for Screen Module).

Usage Tab (Detailed Usages for Screen Module).

Column Detail Tab (Detailed Usages for Screen Module).

Column Display Tab (Detailed Usages for Screen Module).

Column Text Tab (Detailed Usages for Screen Module).

Suggested Exercises: 10.

Defining Report Modules.

Table Details Tab (Detailed Usages for Report Module).

Column Detail Tab (Detailed Usages for Report Module).

Column Display Tab (Detailed Usages for Report Module).

Column Text Tab (Detailed Usages for Report Module).

Module Data Usage Utilities.

24. Module Logic Navigator.

Features.

Commands.

Useful Module Reports.

Suggested Exercises: 11.

25. Preferences Navigator.

Definition of Terms.

Commands.

X. DESIGNER/2000 CODE BUILDING TOOLS.

26. Server Generator.

Utilities to Generate DDL.

Selection Tab (Generate DDL).

Objects Tab (Generate DDL).

Options Tab (Generate DDL).

Utilities to Reconcile Repository Object Definitions.

27. Generate Module and Generate Module As.

Generate, Regenerate, Reverse-Engineer? What's the Difference?

Generate Tab (Generate Form).

Form Option Tab (Generate Form).

Other Tab (Generate Form).

Generating Menus with Security.

28. Code Templates.

What Effect Do Templates Have?

Forms-Specific Template Information.

Interaction Between the Template and Preferences.

Reports-Specific Template Information.

29. Regenerate Form.

Customizing Generated Forms Code: Regeneration.

A Helpful Regeneration Report.

30. Reference Values, Help Text, and Code Controls.

Suggested Exercises: 12.

31. Advanced Tips and Tricks.

How Do I get the DDL Generator to Recognize Schemas?

What If I Don't Know the Tablespace Names?

Specifying the Template at Generate Time.

Getting Generated Error Messages in Languages Other Than English.

Navigation Tips.

Automatically Querying a Block on Entry to the Form.

Automatically Querying Based on Prior Context from Another Form.

Context-Showing Users What's Next on the Form (or What's Past).

Creating One Form for Both Character and GUI Mode.

Security.

Filtering What RON Shows.

XI. CUSTOMIZING YOUR DESIGNER/2000 TOOLSET.

32. The Underlying Repository Database Design.

Repository Objects.

Properties and Property Types.

Suggested Exercises: 13.

Answers to Exercises.

33. User Extensibility.
34. Creating Your Own Utilities and Reports: Using the API.

Why Use the API?

Components of the API.

Major Components of an API Program.

A Sample API Program.

API Components and Their Use.

Where to Find More Information.

Suggested Exercises: 14.

XII. MANAGING THE DESIGNER/2000 REPOSITORY.

35. Repository Administration.

Maintain Users Tab.

Granting a User Access to an Application.

Sharing and Transferring Objects.

Performance Tips.

Code Configuration Control.

XIII. GOING BACKWARD: CAPTURING AN EXISTING APPLICATION.

36. Reverse Engineer DDL.

Reverse Engineering DDL.

Sample Utility-The Case of the Missing Constraints.

37. Reverse Engineer Forms and Reports.
38. Utility to Table Entity Retrofit.

Things to Check Before You Retrofit.

Running the Retrofit Utility.

Refining the Retrofitted Logical Data Model.

XIV. ASSIMILATING DESIGNER/2000 INTO YOUR SOFTWARE DEVELOPMENT PROCESS.

Keep an Eye on the Big Picture.

Consider the Way You Work.

A. Installing the Sample Applications.
B. Sample Survey.

Survey 1: About Designer/2000.

Survey 1 Answers.

C. Suggestions for Further Reading.
D. Web Site Contents.
E. Detailed Tasks of a Designer/2000 Project.

Purpose of This Appendix.

Beginning a New Application.

Upper Case Phase One: Strategy Stage.

Upper Case Phase Two: Analysis Stage.

Lower Case Phase One: Design Stage.

Lower Case Phase Two: Build Stage.

Index. 0201634457T04062001

Preface

To our colleagues

This is the traditional place where authors explain what prompted them to write, as well as acknowledge those who helped with, or patiently endured, the writing of the book. It is traditional to bury at least one trenchant observation in this otherwise expendable prose so that the perceptive reader will at least skim through the passage. Allow us to be slaves to tradition in this one matter!

We could explain that we wrote this to promote a better understanding of Designer/2000, hoping to provide useful and pragmatic assistance to our professional colleagues in their daily work; and for students learning Designer/2000 as part of their curriculum. That would certainly be true, but not the whole truth.

One person mentioned that they couldn't write such a book, for they didn't know the tool well enough to do so. Our response? That we didn't either, but we expected to by the time we had finished writing! This was a learning opportunity for all involved, and not just limited to Designer/2000.

Perhaps the most important lesson was that a book of about five hundred pages is not the same amount of work as twenty papers twenty-five pages long. It is much more effort, by several orders of magnitude! Why this surprised us is a mystery; for we've long known that a five-hundred-entity application is far more difficult than twenty applications with twenty-five entities each.

That problem is the root of many software development failures. Many project leaders cut their teeth on small projects. They wonder why those who are working on larger projects are soooo slow and so bureaucratic. They often get their opportunity to work on large projects because of their successful track record on previous, smaller projects. Many of the techniques that they use to be successful on smaller projects do not scale up, just as some hardware/software solutions do not. Unfortunately, neither limitation is usually discovered until the appropriate level of stress is placed upon the system!

We have attempted to provide some guidance on proper usage as well as the reasoning behind the guidelines, hopefully in an entertaining manner. We hope that the reader will learn and follow the software development processes that underlie all good tools like Designer/2000. We have included a small list of suggested readings at the end of this book. All are worth reading, so have at them and enjoy!



0201634457P04062001

Updates

Submit Errata

More Information

InformIT Promotional Mailings & Special Offers

I would like to receive exclusive offers and hear about products from InformIT and its family of brands. I can unsubscribe at any time.

Overview


Pearson Education, Inc., 221 River Street, Hoboken, New Jersey 07030, (Pearson) presents this site to provide information about products and services that can be purchased through this site.

This privacy notice provides an overview of our commitment to privacy and describes how we collect, protect, use and share personal information collected through this site. Please note that other Pearson websites and online products and services have their own separate privacy policies.

Collection and Use of Information


To conduct business and deliver products and services, Pearson collects and uses personal information in several ways in connection with this site, including:

Questions and Inquiries

For inquiries and questions, we collect the inquiry or question, together with name, contact details (email address, phone number and mailing address) and any other additional information voluntarily submitted to us through a Contact Us form or an email. We use this information to address the inquiry and respond to the question.

Online Store

For orders and purchases placed through our online store on this site, we collect order details, name, institution name and address (if applicable), email address, phone number, shipping and billing addresses, credit/debit card information, shipping options and any instructions. We use this information to complete transactions, fulfill orders, communicate with individuals placing orders or visiting the online store, and for related purposes.

Surveys

Pearson may offer opportunities to provide feedback or participate in surveys, including surveys evaluating Pearson products, services or sites. Participation is voluntary. Pearson collects information requested in the survey questions and uses the information to evaluate, support, maintain and improve products, services or sites, develop new products and services, conduct educational research and for other purposes specified in the survey.

Contests and Drawings

Occasionally, we may sponsor a contest or drawing. Participation is optional. Pearson collects name, contact information and other information specified on the entry form for the contest or drawing to conduct the contest or drawing. Pearson may collect additional personal information from the winners of a contest or drawing in order to award the prize and for tax reporting purposes, as required by law.

Newsletters

If you have elected to receive email newsletters or promotional mailings and special offers but want to unsubscribe, simply email information@informit.com.

Service Announcements

On rare occasions it is necessary to send out a strictly service related announcement. For instance, if our service is temporarily suspended for maintenance we might send users an email. Generally, users may not opt-out of these communications, though they can deactivate their account information. However, these communications are not promotional in nature.

Customer Service

We communicate with users on a regular basis to provide requested services and in regard to issues relating to their account we reply via email or phone in accordance with the users' wishes when a user submits their information through our Contact Us form.

Other Collection and Use of Information


Application and System Logs

Pearson automatically collects log data to help ensure the delivery, availability and security of this site. Log data may include technical information about how a user or visitor connected to this site, such as browser type, type of computer/device, operating system, internet service provider and IP address. We use this information for support purposes and to monitor the health of the site, identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents and appropriately scale computing resources.

Web Analytics

Pearson may use third party web trend analytical services, including Google Analytics, to collect visitor information, such as IP addresses, browser types, referring pages, pages visited and time spent on a particular site. While these analytical services collect and report information on an anonymous basis, they may use cookies to gather web trend information. The information gathered may enable Pearson (but not the third party web trend services) to link information with application and system log data. Pearson uses this information for system administration and to identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents, appropriately scale computing resources and otherwise support and deliver this site and its services.

Cookies and Related Technologies

This site uses cookies and similar technologies to personalize content, measure traffic patterns, control security, track use and access of information on this site, and provide interest-based messages and advertising. Users can manage and block the use of cookies through their browser. Disabling or blocking certain cookies may limit the functionality of this site.

Do Not Track

This site currently does not respond to Do Not Track signals.

Security


Pearson uses appropriate physical, administrative and technical security measures to protect personal information from unauthorized access, use and disclosure.

Children


This site is not directed to children under the age of 13.

Marketing


Pearson may send or direct marketing communications to users, provided that

  • Pearson will not use personal information collected or processed as a K-12 school service provider for the purpose of directed or targeted advertising.
  • Such marketing is consistent with applicable law and Pearson's legal obligations.
  • Pearson will not knowingly direct or send marketing communications to an individual who has expressed a preference not to receive marketing.
  • Where required by applicable law, express or implied consent to marketing exists and has not been withdrawn.

Pearson may provide personal information to a third party service provider on a restricted basis to provide marketing solely on behalf of Pearson or an affiliate or customer for whom Pearson is a service provider. Marketing preferences may be changed at any time.

Correcting/Updating Personal Information


If a user's personally identifiable information changes (such as your postal address or email address), we provide a way to correct or update that user's personal data provided to us. This can be done on the Account page. If a user no longer desires our service and desires to delete his or her account, please contact us at customer-service@informit.com and we will process the deletion of a user's account.

Choice/Opt-out


Users can always make an informed choice as to whether they should proceed with certain services offered by InformIT. If you choose to remove yourself from our mailing list(s) simply visit the following page and uncheck any communication you no longer want to receive: www.informit.com/u.aspx.

Sale of Personal Information


Pearson does not rent or sell personal information in exchange for any payment of money.

While Pearson does not sell personal information, as defined in Nevada law, Nevada residents may email a request for no sale of their personal information to NevadaDesignatedRequest@pearson.com.

Supplemental Privacy Statement for California Residents


California residents should read our Supplemental privacy statement for California residents in conjunction with this Privacy Notice. The Supplemental privacy statement for California residents explains Pearson's commitment to comply with California law and applies to personal information of California residents collected in connection with this site and the Services.

Sharing and Disclosure


Pearson may disclose personal information, as follows:

  • As required by law.
  • With the consent of the individual (or their parent, if the individual is a minor)
  • In response to a subpoena, court order or legal process, to the extent permitted or required by law
  • To protect the security and safety of individuals, data, assets and systems, consistent with applicable law
  • In connection the sale, joint venture or other transfer of some or all of its company or assets, subject to the provisions of this Privacy Notice
  • To investigate or address actual or suspected fraud or other illegal activities
  • To exercise its legal rights, including enforcement of the Terms of Use for this site or another contract
  • To affiliated Pearson companies and other companies and organizations who perform work for Pearson and are obligated to protect the privacy of personal information consistent with this Privacy Notice
  • To a school, organization, company or government agency, where Pearson collects or processes the personal information in a school setting or on behalf of such organization, company or government agency.

Links


This web site contains links to other sites. Please be aware that we are not responsible for the privacy practices of such other sites. We encourage our users to be aware when they leave our site and to read the privacy statements of each and every web site that collects Personal Information. This privacy statement applies solely to information collected by this web site.

Requests and Contact


Please contact us about this Privacy Notice or if you have any requests or questions relating to the privacy of your personal information.

Changes to this Privacy Notice


We may revise this Privacy Notice through an updated posting. We will identify the effective date of the revision in the posting. Often, updates are made to provide greater clarity or to comply with changes in regulatory requirements. If the updates involve material changes to the collection, protection, use or disclosure of Personal Information, Pearson will provide notice of the change through a conspicuous notice on this site or other appropriate way. Continued use of the site after the effective date of a posted revision evidences acceptance. Please contact us if you have questions or concerns about the Privacy Notice or any objection to any revisions.

Last Update: November 17, 2020