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

AMQQN1.m

Go to the documentation of this file.
  1. AMQQN1 ; IHS/CMI/THL - NATL LANGUAGE PRELIMINARY PASS ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. ;-----
  1. RUN D SUBJ
  1. W $C(13),?79,$C(13)
  1. I '$D(AMQQFAIL),$D(AMQQNSBJ),$D(AMQQFEN2) W !!,"Sorry...You cannot change the subject of your search",!!,*7 H 3 S AMQQQUIT="",AMQQFAIL=-1 G EXIT
  1. I '$D(AMQQNSBJ),$D(AMQQSAUT),'$D(AMQQFAIL) I $L(AMQQSAUT,U)>3 S (AMQQNSBJ,Y)=AMQQSAUT D AUTO1^AMQQ1
  1. I $D(AMQQQUIT) G EXIT
  1. I '$D(AMQQNSBJ) S AMQQFAIL=4 G EXIT
  1. S AMQQSAUT=AMQQNSBJ
  1. S AMQQCCLS="P"
  1. EXIT ;
  1. Q
  1. ;
  1. SUBJ S %="LIVING PATIENTS^PATIENTS^INFANTS^FEMALES^MALES^BOYS^GIRLS^MEN^WOMEN"
  1. F I=1:1 S A=$P(%,U,I) Q:A="" I X[A D PAT G SUBEXIT
  1. I X'["OF " G SUBJ1
  1. F Y=1:1 S Z=$P(X," ",Y) I Z="OF" Q
  1. I $P(X," ",Y+3)'="" S Z=$P(X," ",Y+1,Y+3) D SB1 I $D(AMQQNSBJ) D SB2 Q
  1. I $P(X," ",Y+2)'="" S Z=$P(X," ",Y+1,Y+2) D SB1 I $D(AMQQNSBJ) D SB2 Q
  1. SUBJ1 I X'["'S",X'["S'" Q
  1. F Y=1:1 S Z=$P(X," ",Y) I Z["S'"!(Z["'S") Q
  1. I Y>2 S Z=$P(X," ",Y-2,Y) D SB1 I $D(AMQQNSBJ) D SB2 Q
  1. S Z=$P(X," ",Y-1,Y) D SB1 I $D(AMQQNSBJ) D SB2
  1. Q
  1. ;
  1. SB1 S %=Z
  1. I %["'S" S %=$P(%,"'S")_$P(%,"'S",2) G SB10
  1. I %["S'" S %=$P(%,"S'")_"S"_$P(%,"S'",2)
  1. SB10 W !
  1. N X,Y,Z
  1. S X=%,AMQQXX=""
  1. D ^AMQQ2
  1. I '$D(Y) W:'$D(AMQQNECO) !!,"Sorry, I'm unable to determine the SUBJECT of the query...The search is aborted",!!,*7 S AMQQFAIL=1 Q
  1. S AMQQNSBJ=Y
  1. D AUTO1^AMQQ1
  1. SUBEXIT K %,A,Z
  1. Q
  1. ;
  1. SB2 S Z=Z_" "
  1. S X=$P(X,Z)_$P(X,Z,2,99)
  1. I X["OF " S X=$P(X,"OF ")
  1. Q
  1. ;
  1. PAT S X=$P(X,A)_" "_$P(X,A,2)
  1. F Q:X'[" " S X=$P(X," ")_" "_$P(X," ",2,99)
  1. I $E(X)=" " S X=$E(X,2,240)
  1. I X[" OF " S X=$P(X," OF ",1)_" "_$P(X," OF ",2,99)
  1. S AMQQNSBJ=A
  1. S AMQQCCLS="P"
  1. N X
  1. S X=A
  1. S AMQQXX=""
  1. D AUTO^AMQQ1
  1. Q
  1. ;