Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: AMQQF2

AMQQF2.m

Go to the documentation of this file.
  1. AMQQF2 ; IHS/CMI/THL - MORE ANALYTIC FUNCTIONS ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. ;-----
  1. LAST N I,J,N,X,Y,Z,%
  1. S J=0
  1. F %=0:0 S %=$O(^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,%)) Q:'% S J=J+1,Y=$P(^(%),U,2) I Y S ^UTILITY("AMQQ",$J,"TMP",Y,%)=""
  1. S Z=J-AMQQCOMP
  1. I '$D(AMQQNOT),Z<1 G LAEXIT
  1. I '$D(AMQQNOT) D LA1 G LAEXIT
  1. I Z<1 K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN) G LAEXIT
  1. LA2 S (X,N)=0
  1. F S X=$O(^UTILITY("AMQQ",$J,"TMP",X)) Q:'X F Y=0:0 S Y=$O(^UTILITY("AMQQ",$J,"TMP",X,Y)) Q:'Y S N=N+1 I N>Z K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,Y)
  1. LAEXIT K ^UTILITY("AMQQ",$J,"TMP"),AMQQNOT
  1. Q
  1. ;
  1. LA1 S (X,I)=0
  1. F S X=$O(^UTILITY("AMQQ",$J,"TMP",X)) Q:'X F Y=0:0 S Y=$O(^UTILITY("AMQQ",$J,"TMP",X,Y)) Q:'Y K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,Y) S I=I+1 I I=Z G LA1EXIT
  1. LA1EXIT Q
  1. ;
  1. FIRST N I,J,N,Y,Z,%
  1. S J=0
  1. F %=0:0 S %=$O(^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,%)) Q:'% S J=J+1,Y=$P(^(%),U,2) I Y S ^UTILITY("AMQQ",$J,"TMP",Y,%)=""
  1. S Z=J-AMQQCOMP
  1. I '$D(AMQQNOT),Z<1 G FIEXIT
  1. I '$D(AMQQNOT) D FI1 G FIEXIT
  1. I Z<1 K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN) G FIEXIT
  1. FI2 S (X,N)=0
  1. F S X=$O(^UTILITY("AMQQ",$J,"TMP",X)) Q:'X F Y=0:0 S Y=$O(^UTILITY("AMQQ",$J,"TMP",X,Y)) Q:'Y S N=N+1 K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,Y) I N=AMQQCOMP G FIEXIT
  1. FIEXIT K ^UTILITY("AMQQ",$J,"TMP"),AMQQNOT
  1. Q
  1. ;
  1. FI1 S (X,I)=0
  1. F S X=$O(^UTILITY("AMQQ",$J,"TMP",X)) Q:'X F Y=0:0 S Y=$O(^UTILITY("AMQQ",$J,"TMP",X,Y)) Q:'Y S I=I+1 I I>AMQQCOMP K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,Y)
  1. Q
  1. ;
  1. HIGH N I,J,N,X,Y,Z,%
  1. S J=0
  1. F %=0:0 S %=$O(^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,%)) Q:'% S J=J+1,Y=+^(%),^UTILITY("AMQQ",$J,"TMP",Y,%)=""
  1. S Z=J-AMQQCOMP
  1. I '$D(AMQQNOT),Z<1 G HGEXIT
  1. I '$D(AMQQNOT) D HG1 G HGEXIT
  1. I Z<1 K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN) G HGEXIT
  1. HG2 S (X,N)=0
  1. F S X=$O(^UTILITY("AMQQ",$J,"TMP",X)) Q:'X F Y=0:0 S Y=$O(^UTILITY("AMQQ",$J,"TMP",X,Y)) Q:'Y S N=N+1 I N>Z K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,Y)
  1. HGEXIT K ^UTILITY("AMQQ",$J,"TMP"),AMQQNOT
  1. Q
  1. ;
  1. HG1 S (X,I)=0
  1. F S X=$O(^UTILITY("AMQQ",$J,"TMP",X)) Q:'X F Y=0:0 S Y=$O(^UTILITY("AMQQ",$J,"TMP",X,Y)) Q:'Y K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,Y) S I=I+1 I I=Z G HG1EXIT
  1. HG1EXIT Q
  1. ;
  1. LOW N I,J,N,X,Y,Z,%
  1. S J=0
  1. F %=0:0 S %=$O(^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,%)) Q:'% S J=J+1,Y=+^(%),^UTILITY("AMQQ",$J,"TMP",Y,%)=""
  1. S Z=J-AMQQCOMP
  1. I '$D(AMQQNOT),Z<1 G LOEXIT
  1. I '$D(AMQQNOT) D LO1 G LOEXIT
  1. I Z<1 K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN) G LOEXIT
  1. LO2 S (X,N)=0
  1. F S X=$O(^UTILITY("AMQQ",$J,"TMP",X)) Q:'X F Y=0:0 S Y=$O(^UTILITY("AMQQ",$J,"TMP",X,Y)) Q:'Y S N=N+1 K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,Y) I N=AMQQCOMP G LOEXIT
  1. LOEXIT K ^UTILITY("AMQQ",$J,"TMP"),AMQQNOT
  1. Q
  1. ;
  1. LO1 S (X,I)=0
  1. F S X=$O(^UTILITY("AMQQ",$J,"TMP",X)) Q:'X F Y=0:0 S Y=$O(^UTILITY("AMQQ",$J,"TMP",X,Y)) Q:'Y S I=I+1 I I>AMQQCOMP K ^UTILITY("AMQQ",$J,AMQQAG,AMQQUATN,Y)
  1. Q
  1. TYPES ;
  1. Q