HP 3000 Manuals

Improved RSPEC Lister with BRWSTOA(SR 1650-057539) [ HP ALLBASE/BRW Software Update Notice (A.01.50) ] MPE/iX 5.0 Documentation


HP ALLBASE/BRW Software Update Notice (A.01.50)

Improved RSPEC Lister with BRWSTOA(SR 1650-057539) 

This release introduces a new utility called BRWSTOA ("specification file
to ASCII").  This utility provides a more compact and simplified listing
of the BRW report definition than you currently get with BRWLIST.PUB.SYS
or than you get when you use the  List Report key on the Select Report
screen.


BRWSTOA is a new feature with this release and is not described in the HP ALLBASE/BRW Reference Manual for MPE/XL. However, other information about using the compile listing is found on pages 6-23, 10-2, 10-3, 16-3, and 19-8 of the manual.
To use BRWSTOA: Run BRWSTOA and answer the following prompts (user input description or example is underlined): Enter report specification file: specname/password Enter report Script file: myfile Enter project list option: (Minimum,First,Last,All): minimum The report script file created by BRWSTOA can be printed or displayed online by using MPE/iX printing commands or MPE/iX editors. The project list options available are: Minimum Lists only projected items that show non-default attributes on the Project Items screen (such as an alias). First Lists items when they are first referenced in a dictionary source table, but not in any later access tables. Last Lists all items contained in the final access table. All Lists all access table items. BRWSTOA makes extensive use of defaults to reduce the listing size. In the Lineset definitions, any item edit characteristic that matches the defaults in the BRWCONF file are not listed. The default output file for BRWSTOA is an 80-byte ASCII record, with no file code or CCTL codes.
NOTE There is no utility to read these ASCII files back into BRW RSPEC format.
BRWSTOA Conventions for Lineset Definitions In the Lineset Definitions section of the BRWSTOA report, the following conventions apply: * Text is treated as a pseudo item. The positioning information goes before the text, for example: TEXT 1,3 `Customer Name:' In this example, the text item is positioned in the first column of line 1. The text itself is enclosed in single quotes. No length is given because the length of the text can be seen. If the text is longer than will fit on one output line, it will be broken into two or more text fragments and placed on as many additional output lines as are needed. * Non-text items show the item name, position, line, length (as defined in the Define Lines screen): ITEM CUSTOMER-NAME 16,3,30 In the above example, the item, CUSTOMER-NAME is placed in the 16th column of the third line and has a length of 30 characters. The example on the next pages shows a BRWSTOA printout. <<--------------------------------------------------------------------------->> << B R W R E P O R T L I S T I N G >> << CUSTREP2.WATSON.BOOKS from FRI, OCT 22, 1993, 6:07 PM >> <<--------------------------------------------------------------------------->> DESCRIPTION 'Customer Details Report: Tutorial Lesson 3' REPORT WIDTH 132 PAGE LENGTH 60 RESET PAGES 1 SORT SEQUENCE ASCII FINAL ACCESS TABLE CUSTREP2-DATA <<--------------------------------------------------------------------------->> << F I N A L A C C E S S T A B L E >> << CUSTREP2-DATA >> <<--------------------------------------------------------------------------->> ACCESS TABLE CUSTREP2-DATA SOURCE TABLE CUSTOMERS LOCATION TOYDB.PUB.ITF3000 SOURCE TABLE ORDER-PRODUCTS JOIN CUSTOMERS.CUSTOMER-NO, ORDER-PRODUCTS.CUSTOMER-NO OPEN JOIN ORDER-PRODUCTS PROJECT CUSTOMERS.ADDRESS, << STRING 30 >> CUSTOMERS.CITY, << STRING 30 >> CUSTOMERS.CUSTOMER-NAME, << STRING 30 >> CUSTOMERS.CUSTOMER-NO, << STRING 6 >> ORDER-PRODUCTS.ORDER-DATE, << DATE >> ORDER-PRODUCTS.ORDER-NO, << STRING 8 >> ORDER-PRODUCTS.PRICE, << NUMERIC >> ORDER-PRODUCTS.PRODUCT-LINE, << STRING 2 >> ORDER-PRODUCTS.PRODUCT-NAME, << STRING 16 >> ORDER-PRODUCTS.PRODUCT-NO, << STRING 6 >> ORDER-PRODUCTS.QUANTITY, << INTEGER >> CUSTOMERS.SALES-AREA, << STRING 16 >> ORDER-PRODUCTS.SHIPMENT-DATE, << DATE >> CUSTOMERS.STATE, << STRING 30 >> CUSTOMERS.TABLE-REC-NUMBER, << INTEGER >> CUSTOMERS.TURNOVER, << NUMERIC OCCURS 12 >> CUSTOMERS.TURNOVER-MTD, << NUMERIC >> CUSTOMERS.TURNOVER-PY, << NUMERIC >> CUSTOMERS.ZIPCODE << STRING 6 >> UNPROJECT ORDER-PRODUCTS.CUSTOMER-NO, << STRING 6 >> ORDER-PRODUCTS.TABLE-REC-NUMBER << INTEGER >> <<--------------------------------------------------------------------------->> << A C C E S S T A B L E >> << ORDER-PRODUCTS >> <<--------------------------------------------------------------------------->> ACCESS TABLE ORDER-PRODUCTS SOURCE TABLE PRODUCTS LOCATION TOYDB.PUB.ITF3000 SOURCE TABLE ORDER-TABLE JOIN ORDER-TABLE.PRODUCT-NO, PRODUCTS.PRODUCT-NO PROJECT ORDER-TABLE.CUSTOMER-NO, << STRING 6 >> ORDER-TABLE.ORDER-DATE, << DATE >> ORDER-TABLE.ORDER-NO, << STRING 8 >> PRODUCTS.PRICE, << NUMERIC >> PRODUCTS.PRODUCT-LINE, << STRING 2 >> PRODUCTS.PRODUCT-NAME, << STRING 16 >> PRODUCTS.PRODUCT-NO, << STRING 6 >> ORDER-TABLE.QUANTITY, << INTEGER >> ORDER-TABLE.SHIPMENT-DATE, << DATE >> PRODUCTS.TABLE-REC-NUMBER << INTEGER >> UNPROJECT ORDER-TABLE.PRODUCT-NO, << STRING 6 >> PRODUCTS.QUANTITY, << INTEGER >> ORDER-TABLE.TABLE-REC-NUMBER << INTEGER >> <<--------------------------------------------------------------------------->> << A C C E S S T A B L E >> << ORDER-TABLE >> <<--------------------------------------------------------------------------->> ACCESS TABLE ORDER-TABLE SOURCE TABLE ORDERS LOCATION TOYDB.PUB.ITF3000 SOURCE TABLE ORDER-DETAILS LOCATION TOYDB.PUB.ITF3000 JOIN ORDER-DETAILS.ORDER-NO, ORDERS.ORDER-NO TABLE CONDITION { MONTH_OF (ORDER-DATE) = 6 << Selects only those orders placed in June. >> } PROJECT ORDERS.CUSTOMER-NO, << STRING 6 >> ORDERS.ORDER-DATE, << DATE >> ORDERS.ORDER-NO, << STRING 8 >> ORDER-DETAILS.PRODUCT-NO, << STRING 6 >> ORDER-DETAILS.QUANTITY, << INTEGER >> ORDER-DETAILS.SHIPMENT-DATE, << DATE >> ORDERS.TABLE-REC-NUMBER << INTEGER >> UNPROJECT ORDER-DETAILS.ORDER-NO, << STRING 8 >> ORDER-DETAILS.TABLE-REC-NUMBER << INTEGER >> <<--------------------------------------------------------------------------->> << L A Y O U T >> << >> <<--------------------------------------------------------------------------->> LAYOUT BREAK LEVEL 1 BREAK ON SALES-AREA BREAK LEVEL 2 BREAK ON CUSTOMER-NO BREAK LEVEL 3 BREAK ON ORDER-NO CALC ITEM ORDER-TOTAL: NUMERIC { PRICE * QUANTITY << This item finds the total value of an order by multiplying the price of the product by the quantity ordered. >> } <<--------------------------------------------------------------------------->> << L I N E S E T D E F I N I T I O N >> << REPORT FOOTER >> <<--------------------------------------------------------------------------->> REPORT FOOTER PAGE BEFORE TEXT 58, 2 '================' TEXT 21, 3 'Total Sales for All Sales Areas is:' ITEM TURNOVER-MTD 58, 3, 16 TOTAL R, 2 TEXT 21, 4 '----------------------------------- ================' TEXT 1, 5 ' ' <<--------------------------------------------------------------------------->> << L I N E S E T D E F I N I T I O N >> << PAGE HEADER >> <<--------------------------------------------------------------------------->> PAGE HEADER ABSOLUTE POSITION 1 ITEM &BOLD 5, 1, 60 TEXT 5, 1 'Page:' ITEM PAGE 11, 1, 3 EDIT MASK 'ZZ9' ITEM &UNDERLINE 24, 1, 23 TEXT 24, 1 'Customer Details Report: 2 Date:' ITEM DATE 67, 1, 8 ITEM &UNDERLINE 5, 3, 70 ITEM &UNDERLINE 5, 4, 70 <<--------------------------------------------------------------------------->> << L I N E S E T D E F I N I T I O N >> << DETAIL >> <<--------------------------------------------------------------------------->> DETAIL LINESET SUPPRESS { ORDER-NO = NO_VALUE << Suppress this lineset, which prints the details of each order, if the customer has no orders. >> } ITEM ORDER-NO 5, 1, 8 ITEM PRODUCT-NO 17, 1, 6 ITEM PRICE 30, 1, 8 EDIT MASK 'ZZZZ9', '.99' ITEM QUANTITY 41, 1, 4 EDIT MASK 'ZZZ9' ITEM ORDER-TOTAL 52, 1, 16 <<--------------------------------------------------------------------------->> << L I N E S E T D E F I N I T I O N >> << BREAK 1 HEADER >> <<--------------------------------------------------------------------------->> BREAK 1 HEADER ITEM &UNDERLINE 5, 1, 31 ITEM &BOLD 5, 1, 31 TEXT 5, 1 'Customer Details for Sales Area:' ITEM SALES-AREA 39, 1, 16 TEXT 1, 2 ' ' <<--------------------------------------------------------------------------->> << L I N E S E T D E F I N I T I O N >> << BREAK 1 FOOTER >> <<--------------------------------------------------------------------------->> BREAK 1 FOOTER TEXT 5, 2 'Total Sales for Sales Area:' ITEM SALES-AREA 40, 2, 16 TEXT 58, 2 '=' ITEM TURNOVER-MTD 62, 2, 16 TOTAL 1, 2 TEXT 1, 4 ' ' <<--------------------------------------------------------------------------->> << L I N E S E T D E F I N I T I O N >> << BREAK 2 HEADER >> <<--------------------------------------------------------------------------->> BREAK 2 HEADER ITEM &BOLD 5, 1, 9 TEXT 5, 1 'Customer:' ITEM CUSTOMER-NAME 17, 1, 30 ITEM &BOLD 50, 1, 7 TEXT 49, 1 'Number:' ITEM CUSTOMER-NO 59, 1, 6 ITEM &UNDERLINE 5, 3, 61 LINE SUPPRESS 4 { ORDER-NO = NO_VALUE << Suppress this line, which introduces the detail lines, if the customer has no orders. >> } ITEM &UNDERLINE 5, 4, 61 ITEM &BOLD 5, 4, 61 TEXT 5, 4 'Order No. Product No. Price Quantity Total for Order' LINE SUPPRESS 5 { order-no = no_value << Suppress this line, which introduces the detail lines, if the customer has no orders. >> } LINE SUPPRESS 6 { not (order-no = no_value) << Suppress this line, which warns if a customer has NO orders, if the customer has an order. >> } TEXT 9, 6 '*****************NO ORDERS FOR THIS CUSTOMER****************' TEXT 1, 7 ' ' <<--------------------------------------------------------------------------->> << L I N E S E T D E F I N I T I O N >> << BREAK 2 FOOTER >> <<--------------------------------------------------------------------------->> BREAK 2 FOOTER LINESET SUPPRESS { ORDER-NO = NO_VALUE << Suppress this lineset, which prints the total sales for the customer in the month, if the customer has no order. >> } ITEM &BOLD 5, 2, 19 TEXT 5, 2 'Sales for Customer' ITEM CUSTOMER-NAME 26, 2, 30 ITEM &BOLD 58, 2, 3 TEXT 58, 2 '=' ITEM TURNOVER-MTD 63, 2, 16 ITEM &UNDERLINE 63, 2, 16 TEXT 1, 3 ' ' <<--------------------------------------------------------------------------->> << S E L E C T I O N S E T >> << SET2 >> <<--------------------------------------------------------------------------->> SELECTION SET SET2 DEVICE DISC FILE CUSTDISC LASER


MPE/iX 5.0 Documentation