#

| Chapter 4 Getting Started with PL/Vision |

## 4.6 Summary of Files on Disk

The tables in this section list the scripts contained in subdirectories created by the installation procedure. These are in addition to the individual filenames of the PL/Vision packages listed earlier; note that all filenames are in dot notation, where the first component is the package name (e.g,. `PLVvu.code`).

### 4.6.1 Contents of the install Subdirectory

File | Description of Contents
--- | ---
>     plv*.spb
| Bodies of the PL/Vision packages.
>     plv*.sps
| Specifications of the PL/Vision packages.
>     plvdata.sql
| Creates the data structures needed to use PL/Vision. Most of this script consists of a series of INSERT statements to populate the `PLV_token` and `PLV_token_type` tables.
>     plvdpsyn.sql
| Drops all public synonyms for PL/Vision objects.
>     plvdsynl
| Drops all private synonyms for PL/Vision objects in a specified account.
>     plvgrant.sql
| Grants access to all PL/Vision objects to the specified account or to PUBLIC.
>     plvins23.sql
| Installs PL/Vision for all PL/SQL Releases 2.3 and above (the f indicates support for File I/O).
>     plvinst.sql
| Installs PL/Vision for all PL/SQL Releases 2.2 and below.
>     plvinsth.sql
| Installs PL/Vision online help text.
>     plvprem.sql
| Removes all PL/Vision packages and code elements.
>     plvpsyn.sql
| Creates public synonyms for all PL/Vision packages.
>     plvsize.sql
| Displays the size of PL/Vision stored code by accessing the USER_OBJECT_SIZE data dictionary.
>     plvsyn.sql
| Creates private synonyms for all PL/Vision packages for the specified account.
>     plvtrem.sql
| Removes all PL/Vision tables.

### 4.6.2 Contents of the test Subdirectory

File | Description of Contents
--- | ---
>     *.tst
| The disk contains a series of test scripts for many of the PL/Vision packages. They are generally named `PKG.tst` where PKG is the name of the package. Examples are `PLVtrc.tst` and `PLVexc.tst`. You can use these as a starting point for executing and trying out the PL/Vision packages.
>     isnum.spp
| A package containing multiple implementations of a function that returns TRUE if the string is a number, FALSE otherwise.
>     isnum.tst
| A test script to analyze the performance of the various functions in `isnum.spp`.
>     lower.spp
| A package used to test the conversion of code to upper- and lowercase using the PLVcase package.
>     mthtotal.sf
| A stored function which uses PLVfile to locate a specific line in a file and then return a value extracted from that line.
>     PLVexc1.spp
| The first version of PLVexc the author developed to provide high-level exception-handling capabilities. It is interesting to compare this iteration with the final version to see how the capabilities of PLVexc grew increasingly abstract and declarative.
>     showasci.sql
| Simple script to show the contents of the ASCII code table for the specified range of numbers.
>     showhelp.all
| Code used to implement a prototype for an online help mechanism.
>     spiral.all
| All of the different iterations of code that evolved in Chapter 3, The PL/SQL Development Spiral
>     testpkg.sql
| Tests the overhead required to retrieve a value from a packaged global versus a local variable.
>     timerep.sql
| A script that compares the performance of a string-repeating function for different implementations.
>     upcexc.spp
| Example of an application-specific exception-handling package built over the more generic PLVexc package.

### 4.6.3 Contents of the use Subdirectory

File | Description of Contents
--- | ---
>     code.sql
| Shortcut for executing `PLVvu.code` to see the source code for a stored object.
>     creind.sql
| Creates a single index using dynamic SQL.
>     dispfile.sql
| Displays the contents of a file using UTL_FILE and DBMS_OUTPUT (well, actually using the PL/Vision packages that in turn use those builtin packages).
>     dumpemp.sql
| Demonstration of use of PLVio to dump the contents of the `emp` table to a PL/SQL table (the PLVio target repository).
>     dumpprog.sql
| Dumps an program stored in the database out to an operating system file.
>     dumpprog.sql
| Dumps the source code for a program into an operating system file using the PLVfile package.
>     dynps.sql
| Demonstration of need to declare data structures as globals (in a package specification) if you are going to reference that data in a dynamically constructed PL/SQL block.
>     dynvar.sql
| Demonstration of code required to dynamically create a package containing a global variable, including use of PLVtmr to calculate performance of this action.
>     errm.sql
| Shortcut to execute `PLV.errm` to display the error message for an error code.
>     execall.sql
| Grants execute authority on the specified program unit to PUBLIC and then creates a public synonym for that program.
>     func.sql
| Shortcut to generate a function using the `PLVgen.func` program generator.
>     gendesc.sql
| Demonstration of use of `PLVobj.loopexec` and dynamic PL/SQL to generate a script that outputs a DESC statement for each specified object.
>     gentkn.sql
| Script that generates INSERT statements for the `PLV_token` and `PLV_token_type` tables.
>     haverr.sql
| Shows all the modules that have entries in USER_ERRORS. A good quick way to see if an installation script completed successfully.
>     help.sql
| Displays the top-level help for the specified program.
>     inctlg.sql
| Shows the contents of the `PLVctlg` table for a particular program.
>     inexc.sql
| Script to display contents of default PL/Vision exception log.
>     inline.sql
| Displays all lines of code from the specified program that contains a particular string, relying mainly on PLVobj.
>     inline2.sql
| Another version of inline that relies on PLVio to do the same job and requires much less code.
>     inlog.sql
| Script to display the contents of the default PL/Vision log.
>     inrfrnc.sql
| Displays the contents of the `PLVrfrnc` table for a particular program.
>     insrc.sql
| Quick glance at the contents of `PLV_source`, the default repository for source code when writing to a database table.
>     intree.sql
| Displays all elements which are dependent on the specified object, as is currently stored in the `PLVrfrnc` table.
>     listing.sql
| Displays the element listing or index from the PLVhlp online help for a given package.
>     login.sql
| Sample startup script for SQL*Plus (for PL/SQL Release 2.2 or earlier).
>     login23.sql
| Sample startup script for SQL*Plus (for PL/SQL Release 2.3 or later).
>     modprs.sql
| Shortcut script to generate and display the PL/SQL parser (via PLVprsps) of the specified program unit. The second argument of the script allows you to specify the type of identifiers to be retained in the parse. See the PLVprsps specification for the valid options for the second parameter.
>     more.sql
| Shows the next page of online help using the PLVhlp facility.
>     nameres.sql
| Provides a easy-to-call interface to the DBMS_UTILITY.NAME_RESOLVE builtin procedure.
>     nametoke.sql
| Shortcut script to execute the DBMS_UTILITY.NAME_TOKENIZE builtin and see the results.
>     now.sql
| Displays the current date and time.
>     plvcat.sql
| Script to call `PLVcat.module` to catalogue all PL/Vision packages.
>     recomp.sql
| Generates a SQL*Plus script to recompile and show errors for any program whose status is currently set to INVALID.
>     sepb.sql
| Shortcut for SHOW ERRORS PACKAGE BODY, which displays the errors for the specified package body.
>     setcase.sql
| Uses the PLVcase package to set or convert the case of one or more programs as specified. The script reads the source code from the data dictionary, writes it out to an operating system file, and then CREATE OR REPLACEs it back into the database.
>     sherr.sql
| Shortcut for a call to the `PLVvu.err` procedure. Accepts a single argument, the program for which you want to display errors.
>     showerr.sp
| An early version of the `PLVvu.err` procedure; this stored procedure displays error information.
>     showerr.sql showerr1.sp showerr2.sp
| Different implementations of scripts that provide an alternative to the SHOW ERRORS command of SQL*Plus
>     showlog.sql
| Shows the contents of the PL/SQL table-based PL/Vision log for the specified context entered on the current day.
>     showobj1.sql
| Example of use of PLVobj cursor-related elements to query and display all the objects that match the specified string.
>     showobj2.sql
| Another version of "show objects" that accomplishes the same task with a higher-level PLVobj element, `vu2pstab`.
>     showsrc.sql
| Quick and simple display of the specified lines (start and end range) source code for a particular program. You can also use `PLVvu.code` to take advantage of the full range of features of that utility.
>     ssoo.sql
| Executes Set ServerOutput On (hence, "ssoo") and sets the buffer size to one megabyte (the maximum).
>     vu.sql
| A SQL*Plus shortcut script to execute `PLVvu.code` to view your stored code.
>     vuindex.sql
| Allows you to view all indexes and their columns for the specified table.
>     zoom.sql
| Displays PLVhlp online help text for a specified topic.
>     zoomn.sql
| Displays PLVhlp online help text for a specified topic by number.

4.5 Using Online Help |  | 5. PL/Vision Package Specifications

Copyright (c) 2000 O'Reilly & Associates. All rights reserved.