#

| Chapter 5 PL/Vision Package Specifications |

## 5.2 p: a DBMS_OUTPUT Substitute

The `p` (Put) package provides a powerful, flexible substitute (and one that requires minimal typing) for Oracle's builtin DBMS_OUTPUT.PUT_LINE package. See Chapter 7, p: A Powerful Substitute for DBMS_OUTPUT for details.

### 5.2.1 Toggling output from the p package

`PROCEDURE turn_on;`

  Turn on output from the `p.l` procedure (the default). Equivalent to calling DBMS_OUTPUT.ENABLE to enable output from DBMS_OUTPUT.

`PROCEDURE turn_off;`

  Turn off output from the `p.l` procedure. This setting can be overridden in a particular call to `p.l` by specifying TRUE for the final `show` argument.

### 5.2.2 Setting the line separator

`PROCEDURE set_linesep (linesep_in IN VARCHAR2);`

  Sets the character(s) to be recognized as the line separator in your PL/SQL code (default is `=`). A line that consists only of the line separator will be displayed by `p.l` as a blank line.

`FUNCTION linesep RETURN VARCHAR2;`

  Returns the line separator character(s).

### 5.2.3 Setting the line prefix

`PROCEDURE set_prefix (prefix_in IN VARCHAR2 := c_prefix);`

  Sets the character(s) used as a prefix to the text displayed by the `p.l` procedure.

  The `c_prefix` constant is defined in the p package as CHR(8).

`FUNCTION prefix RETURN VARCHAR2;`>

  Returns the prefix character(s).

### 5.2.4 The overloadings of the l procedure

>     PROCEDURE l
>        (date_in IN DATE, mask_in IN VARCHAR2 := PLV.datemask,
>         show_in IN BOOLEAN := FALSE);

>     PROCEDURE l (number_in IN NUMBER, show_in IN BOOLEAN := FALSE);

>     PROCEDURE l (char_in IN VARCHAR2, show_in IN BOOLEAN := FALSE);

>     PROCEDURE l
>        (char_in IN VARCHAR2, number_in IN NUMBER, show_in IN BOOLEAN := FALSE);

>     PROCEDURE l
>        (char_in IN VARCHAR2, date_in IN DATE,
>         mask_in IN VARCHAR2 := PLV.datemask, show_in IN BOOLEAN := FALSE);

>     PROCEDURE l (boolean_in IN BOOLEAN, show_in IN BOOLEAN := FALSE);

>     PROCEDURE l
>        (char_in IN VARCHAR2, boolean_in IN BOOLEAN,
>         show_in IN BOOLEAN := FALSE);

>     PROCEDURE l
>        (file_in IN UTL_FILE.FILE_TYPE, show_in IN BOOLEAN := FALSE);

The version of `l` that displays the contents of a UTL_FILE file handle can only be used in PL/SQL Releases 2.3 and beyond (and is only installed when you run the `plvinstf.sql` script).

If you pass TRUE for the `show_in` argument, you will always see output from that call to `p.l` -- even if you have called `p.turn_off` earlier in the session (but only if you have enabled output from DBMS_OUTPUT).

5.1 Common Package Elements |  | 5.3 PLV: Top-Level Constants and Functions

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