O'Reilly logo

Oracle SQL*Plus: The Definitive Guide, 2nd Edition by Jonathan Gennick

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Another Approach to Headers

That SQL*Plus writes all page headers into an HTML table bothers me. In the previous section's example, that table represents unwanted markup. The associated <table> tag also includes some unwanted attribute settings. One of those, width="90%", can cause you some grief depending on what it is that you want to accomplish in the way of formatting. An alternative, helpful approach is to dispense with using TTITLE altogether and use the PROMPT command to write page headings directly into the HTML output stream.

Example 6-6 shows a new version of the Project Hours and Dollars Report that uses PROMPT to write page headings to the HTML stream. Figure 6-4 shows the result as rendered using the stylesheet in Example 6-7. This example introduces the concept of using <div> tags to format different sections of your HTML page.

Example 6-6. A script that uses PROMPT to write HTML page headings

SET ECHO OFF SET PAGESIZE 50000 SET MARKUP - HTML ON - HEAD '<title>Project Hours and Dollars Report</title> - <link href="ex6-7.css" rel="stylesheet" type="text/css"/>' - BODY "" - TABLE 'class="detail"' - ENTMAP OFF - SPOOL ON --Format the columns COLUMN employee_name HEADING "<p class=left>Employee Name</p>" FORMAT A40 COLUMN project_name HEADING "<p class=left>Project Name</p>" FORMAT A40 COLUMN hours_logged HEADING "<p class=right>Hours</p>" FORMAT 9,999 COLUMN dollars_charged HEADING "<p class=right>Dollars Charged</p>" - FORMAT $999,999.99 --Turn off feedback and set TERMOUT ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required