FTN FUNCTION ISPTH(IBASE,DSNUM,DINUM,ISTAT),92069-16061 REV.1912 781112 LOGICAL ISPTH INTEGER IBASE(10),DSNUM,DINUM,ISTAT(10) C C 9/15 CHANGE DUE TO CORRECTION OF DBINF'S 102, AND 202 CALLS C C CHANGE TO TAKE THE ABSOLUTE VALUE OF ITEMS RETURNED FROM DBINF C C C***************************************************************** C (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. ALL RIGHTS RESERVED C NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, REPRODUCED, OR C TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH OUT THE PRIOR C WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. C****************************************************************** C C C SOURCE: 92069-18096 C RELOC: 92069-16060 C C C****************************************************************: C C C C C C ABSTRACT: C C ISPTH IS A LOGICAL FUNCTION THAT DETERMINES WHETHER A C ITEM IS A PATH OF A SET. C C CALLING SEQUENCE: C C CALL ISPTH(IBASE,DSNUM,DINUM,ISTAT) C C WHERE: C C IBASE C IS THE BSE PARAMETER FOR THE DATA BASE C C DSNUM C IS THE DATA SET NUMBER C C DINUM C IS THE ITEM NUMBER C C ISTAT C IS A TEN WORD INTEGER ARRAY USED FOR ERROR RETURNS C FROM DBMS. ISTAT IS ZERO WHEN THERE ARE NO DBMS ERRORS C ELSE ISTAT CONTAINS THE ERROR CODE FROM DBMS. C C C ON EXIT: C C TRUE - DINUM IS A PATH OF DSNUM C FALSE - DINUM IS NOT A PATH OF DSNUM C C C C C INTEGER IBUF(49),D C$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ C C NEEDS NO COMMON DECLARATION C C$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ C DOES NOT NEED COMMON DATA D/104B/ C C C C C C BEGIN C C CALCULATE WHETHER THIS IS A PATH ITEM C ISPTH = .TRUE. CALL DBINF(IBASE,DSNUM,202,ISTAT,IBUF) IF(ISTAT .NE. 0) GOTO 265 CALL SGET (IBUF,17,ITYPE) IF(ITYPE .EQ. D) GOTO 282 C C MAKE CALL TO GET MASTER'S HASH KEY C CALL DBINF(IBASE,DSNUM,302,ISTAT,IBUF) IF(ISTAT .NE. 0) GOTO 265 IF(IABS(IBUF).NE. DINUM) GOTO 265 GOTO 284 C C GET ALL PATHS ASSOCIATED WITH DETAIL AND C SEE IF THIS ITEM IS ONE OF THEM C 282 CONTINUE CALL DBINF(IBASE,DSNUM,301,ISTAT,IBUF) IF(ISTAT .NE. 0) GOTO 265 DO 285 I=3,3*IBUF(1),3 IF( IABS(IBUF(I)) .EQ. DINUM) GOTO 284 285 CONTINUE 265 ISPTH = .FALSE. 284 CONTINUE RETURN END