HP3000-L Archives

January 1997, Week 2

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Steve Miller <[log in to unmask]>
Reply To:
Steve Miller <[log in to unmask]>
Date:
Thu, 9 Jan 1997 14:30:00 EST
Content-Type:
text/plain
Parts/Attachments:
text/plain (67 lines)
I posted this on the Powerhouse list, but am also posting it here, due to the
expertise I've seen on this list (and the fact that it may be a problem with
MPE not Powerhouse - though not likely).

I am running QTP 7.29 on an HP 3000 (MPE-iX 5.0).  The program access several
system variables using the GETSYSTEMVAL function.

Briefly, the program gets 2 date ranges, then reads a sorted flat file,
accumulating totals in fields based on the ship date (if the ship date falls
in range 1, accumulate in CASES1; if range 2, accumulate CASES2, etc.)

This seems to work fine, up to a point.  Then, suddenly, my FRDATE, TODATE and
the rest go to zero, thus causing the range checks to fail.  I confirmed this
by adding a second subfile that put out a record for every input record, adding
the four dates.  This seems to happen around 110,000 records into a 366,000
record file.  I end up with lots of output records with zero counts/totals.

The actual system variables are not being corrupted, as the next program in the
job also uses them, and they show up fine.  Any ideas would be welcome.  Sales
people hovering outside my door as it's their report screwing up.  Here is a
bit of code:

  ACC NEWSALES LINK %ITEM TO %ITEM OF ITEMS OPT

  SET LOCK FILE UPDATE

  SET PRO LIM 1500000

  DEF SHIPINV CHAR*4 = GETSYSTEMVAL('SHIPINV')
  DEF FRDATE  DATE    = NCONVERT(GETSYSTEMVAL('FRDATE'))
  DEF TODATE  DATE    = NCONVERT(GETSYSTEMVAL('TODATE'))
  DEF FRDATE2 DATE    = NCONVERT(GETSYSTEMVAL('FRDATE2'))
  DEF TODATE2 DATE    = NCONVERT(GETSYSTEMVAL('TODATE2'))

  DEF TDATE DATE = DATE-INVOICE OF NEWSALES IF SHIPINV = 'INV' &
              ELSE DATE-SHIP OF NEWSALES

  DEF R1    CHAR*1  = 'Y' IF TDATE >= FRDATE  AND TDATE <= TODATE  ELSE 'N'
  DEF R2    CHAR*1  = 'Y' IF TDATE >= FRDATE2 AND TDATE <= TODATE2 ELSE 'N'

  TEMP IT-CASES1 ZONED*12
  TEMP IT-CASES2 ZONED*12
  TEMP IT-SALES1 ZONED*12
  TEMP IT-SALES2 ZONED*12

  ITEM IT-CASES1 SUB CASES           IF R1 = 'Y' RESET AT %ITEM
  ITEM IT-CASES2 SUB CASES           IF R2 = 'Y' RESET AT %ITEM
  ITEM IT-SALES1 SUB SL-SALES-AMOUNT IF R1 = 'Y' RESET AT %ITEM
  ITEM IT-SALES2 SUB SL-SALES-AMOUNT IF R2 = 'Y' RESET AT %ITEM

  SUBFILE WXSAL601 AT %ITEM SIZE 1500000  INCLUDE  &
    CUSTOMER, &
    SHIP-TO,  &
    %ITEM OF NEWSALES, &
    PK,       &
    DSCR,     &
    IT-NET-WEIGHT, &
    IT-UNIT-OF-MEAS, &
    IT-CASES1, &
    IT-CASES2, &
    IT-SALES1, &
    IT-SALES2

Thanks,
Steve Miller
[log in to unmask]

ATOM RSS1 RSS2