* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * RTSSGEN1.QGS - 04/18/01 - REV. 2 - Generate Tab Specs for Category Tables * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * To run this, enter: QGEN RTSSGEN1.QGS /# PERIOD 25 /# * * This QGEN run uses no input file, it generates the stub variable specs, * bases and table definitions used to tabulate the current period from * the information contained in table JWCATS and the first 5 instructions, * which get updated for each period. No other instructions get changed. * * Everything unique to the current period is contained in the included file, * so that is the only file that needs to be modified for each new period. * * The current period number is passed as the command line dictionary entry * ## PERIOD and used to identify the include file and name the output files. * * This file contains only common specs that do not change between periods. OUTAP1 rtst2-##PERIOD.qts ( 200 V LISTING rtssg-##PERIOD.lst SETUP ADDRMODE c RUNOPS RECYCLE ****************************************************************************** * Insert spec file containing all elements unique to the current period * ****************************************************************************** #INCLUDE RTSG1-##PERIOD.QGS ****************************************************************************** * The remainder of this spec file will not change from period to period * * unless the basic table layout is changed or new categories are added. * ****************************************************************************** * Table of Category Code Titles (Abbreviated) * ----------------------------- TABLE jwcodes A=2 F=35 E=60 04 FOREIGN TRAVEL 05 HEALTH & SCIENCE 06 TRAVEL & LEISURE 13 MAIN FEATURE ARTICLES 16 DO IT YOURSELF 29 KITCHEN PRIMER 30 RAPID GOURMET 31 COOKING THE EASY WAY 35 COOKING WITH PICTURES 58 CELEBRITY FEATURES END * Table of spec line templates for QTAB-II specs * ---------------------------------------------- TABLE specmask A=2 F=80 E=60 01 003c2@'&&'&018c3='pg#' B1 02 023c2@-3'cc' 3 11 S 12 _IA_003c2@'&&' B2 AVERAGE FOR CURRENT ISSUE: 13 TCURRENT ARTICLES vs. PAST 6 MONTH CATEGORY NORMS 14 END 16 VAR read&& L B32 17 003c2r'bb;ee' TTotal Readership Sample - 20 END 21 TABLE 22 MERGE PCELLS A.1 WT sample \ 23 TCELLS F,U RANK TT \ 24 ZCELLS ' ' SINGLE \ 25 TITLE B2,S,H,B1 POST H,S 26 R&&-GR jwcat&& hreadx subt-1 read&& 31 END END * ----------------------------------------------------------------------------- * The instructions that follow will write out the QTAB spec file by looping * through the tables defined previously for each page defined in table JWCATS * for the current issue. * This is all accomplished during the EOJ recycle pass - No input file is used * ----------------------------------------------------------------------------- sel1 all Turn on output in RECYCLE pass z1 add 307c2 Load # pages for loop limit * Write out stub VAR statememt line for current period 001c200* all Clear output area 001 mov 'VAR jwcat&& L S45R32' 010 mov 301c2 Load Period code in VAR name wrt all 001c200* all Clear output area * The following section retrieves the page/code/title information for each * article in the current issue and creates the actual stub specs & labels. * Spec definition templates are retrieved from TABLE specmask. * Page #, category code and article tile are retrieved from TABLE jwcats. * Category names are retrieved from TABLE jwcodes. * The current period code is inserted where appropriate. 309c2 add k0 Set page counter to zero 000 PP-z1 loop 000 000 000 000 001c200* all Clear output area 309c2 add 309c2 k1 Increment counter 201 tlu 309c2 jwcats Look up Article Info 311c2 add k1 01 = Article line 001 tlu 311c2 specmask Load Article specs 008 mov 301c2 Current Period 019 mov 201c3 Page # in Specs 034 ed 201c3'XXX' Page # in Text 039 mov 212c45 Article title wrt all Write it out 001c200* all Clear output area 311c2 add k2 02 = Category line 001 tlu 311c2 specmask Load Category specs 000 PC-3 loop 002 000 Category lines skpPC and 206c2b Skip if no category 010 mov 206c2 Category code 043 tlu 206c2 jwcodes Category name wrt all Write it out _PC_ nop _PP_ nop * The following section writes out the end of the stub variable * and the table definitions for the current period. * Spec definition templates are retrieved from TABLE specmask. * The current period code is inserted where appropriate. 311c2 add k11 Set counter to 11 001 tlu 311c2 specmask Load spec line 001c 1-150 loop 000 For max width of 150 034 mov '_' Run underline across wrt all Write it out 000 SX-60 loop 000 000 Remaining specs 001c200* all Clear output area 311c2 add 311c2 k1 Increment counter 001 tlu 311c2 specmask Load spec line skpSX and 001c80b Skip if nothing * Load period text in base 059 cmov 050c8@'Sample -' 261c30 Readership * Load current period where appropriate: 012 cmov 012c2@'&&' 301c2 Stub average line 010 cmov 010c2@'&&' 301c2 Base VAR names 002 cmov 002c2@'&&' 301c2 Table name 016 cmov 016c2@'&&' 301c2 Table Stub 039 cmov 039c2@'&&' 301c2 Table Base * Load norm period range end points 008 cmov 008c2@'bb' 303c2 Beginning 011 cmov 011c2@'ee' 305c2 End wrt all Write it out _SX_ nop drp1 all Turn off output END