multiple qtp updates from same subfile.

Nancy Tietz ntietz@mcare3.med.umich.edu
Wed, 16 Jun 1999 12:23:20 -0400


If this is HP mpe/ix... then try a file equate to reset the input file to
the QTP.  Seems odd that you would have to because you do exit then run QTP
again.

:FILE QZT160;ACC=INOUT

Or, you could try QTP AUTO=<progname>

nt

-----Original Message-----
From: Regan, John [mailto:JRegan@johncranesealol.com]
Sent: Wednesday, June 16, 1999 11:21 AM
To: 'powerh-l@lists.swau.edu'
Subject: multiple qtp updates from same subfile.


I have the "*" in front of the subfile name in the second pass.  I wish it
were that easy.  Here is a copy of the batch file and code for review.  Any
help with this would be appreciated.  The batch file runs as a comand file
from a session which is always logged on.

COMMENT PROGRAM: MMS005AC  (Batch File)
COMMENT PROCESSES REPLENISH T,160 TRANSACTIONS AND ODF UPDATES
FILE MMSFILE=!FN
FILE QUIZUSE=MMS005AZ.CANOE
MMIQUIZ
IF FINFO("QZT160","EXISTS") THEN
  FILE QUIZUSE=MMS005BZ.CANOE
  MMIQUIZ
  IF FINFO("TMPS160","EXISTS") THEN
    STREAMX TMPS160
    PURGE TMPS160
  ENDIF
  FILE QTPUSE=MMS005AT.CANOE
  QTP
  FILE QTPUSE=MMS005BT.CANOE
  QTP
  PURGE QZT160
ENDIF
RESET @

Quiz programs:
;PROGRAM: MMS005AZ
;SELECTS T,160 RECORDS FROM PIK FILES AND WRITES TO SUBFILE
ACCESS MMSFILE
DEFINE SOITM = NCONVERT(NOTES[6:8])
DEFINE SON CHAR*10 = ORDER-NO[1:10]
DEFINE PARTN CHAR*18 = PART-NO[1:18]
SELECT IF NOTES[1:4] = "T160" AND TRANS-CODE = "PIK" AND &
  (STATUS-CODE = "01" OR STATUS-CODE = "02")
SORT ON SON ON PARTN
REPORT SUMMARY SON SOITM PARTN ACTUAL-QTY SUB REQ-QTY SUB
SET SUBFILE AT PARTN NAME QZT160 SIZE 10000 KEEP
SET REPORT LIMIT 10000
GO
EXIT

Next quiz:

;PROGRAM: MMS005BZ
;CREATE JOB STREAM TMPS160 WHICH PROCESS TR,160 TRANSACTIONS
ACCESS *QZT160
SELECT IF ACTUAL-QTY > 0
DEFINE TQTY CHAR*8 = ASCII(ACTUAL-QTY)
DEFINE LOCC CHAR*2 = &
  "CS" IF SON[1:2] = "IS" OR SON[1:3] = "SIS" ELSE &
  "CO" IF SON[1:2] = "TS" OR SON[1:3] = "STS" ELSE &
  "AS" IF SON[1:2] = "BU" ELSE &
  SON[1:2] IF SON[1:1] NE "S" ELSE SON[2:2]
INITIAL HEADING TAB 1 "!JOB T160JOB,MIKEY.SEALOL;OUTCLASS=,1" SKIP &
  TAB 1 "!MM" SKIP TAB 1 "HOUR" SKIP TAB 1 "0" SKIP &
  TAB 1 "TR,160" SKIP
REPORT TAB 1 SON SKIP TAB 1 PARTN SKIP TAB 1 "CRAN" SKIP &
  TAB 1 " " SKIP TAB 1 TQTY SKIP TAB 1 "Y" SKIP TAB 1 &
  LOCC TAB 3 "TRANS" &
  SKIP TAB 1 SON SKIP TAB 1 "Y" SKIP TAB 1 " " SKIP &
  TAB 1 "E" SKIP TAB 1 "E"
FINAL FOOTING TAB 1 "E" SKIP TAB 1 "E" SKIP TAB 1 "!EOJ"
SET REPORT LIMIT 1000 DEVICE DISC NAME TMPS160
SET PAGE WIDTH 80 LENGTH 0
SET NOHEAD
GO
EXIT

Now QTP passes:

;PROGRAM: MMS005AT
;DELETES ODF RECORDS FOR COMPLETED "T160" ORDERS
ACCESS *QZT160 LINK SON TO ODSO OF ODF
SELECT IF ODQTY = ACTUAL-QTY AND ODINO = PARTN
OUTPUT ODF DELETE
GO
EXIT

Next qtp pass (This is where it fails.)

;PROGRAM: MMS005BT
;UPDATE ODF RECORD WITH ADJUSTED QUANTITIES AND CAROUSEL FLAG
ACCESS *QZT160 LINK SON TO ODSO OF ODF
SELECT IF ODQTY > ACTUAL-QTY AND ODINO = PARTN
DEFINE NEWODQTY = ODQTY - ACTUAL-QTY
OUTPUT ODF UPDATE
ITEM ODQTY FINAL NEWODQTY
ITEM ODFAS FINAL 0
GO
EXIT
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Subscribe: "subscribe powerh-l" in message body to majordomo@lists.swau.edu
Unsubscribe: "unsubscribe powerh-l" in message to majordomo@lists.swau.edu
powerh-l@lists.swau.edu is gatewayed one-way to bit.listserv.powerh-l
This list is closed, thus to post to the list, you must be a subscriber.
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Subscribe: "subscribe powerh-l" in message body to majordomo@lists.swau.edu
Unsubscribe: "unsubscribe powerh-l" in message to majordomo@lists.swau.edu
powerh-l@lists.swau.edu is gatewayed one-way to bit.listserv.powerh-l
This list is closed, thus to post to the list, you must be a subscriber.