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

AMQQATR0.m

Go to the documentation of this file.
  1. AMQQATR0 ; IHS/CMI/THL - MAKES CODE FOR DYNAMIC SEARCH OPTIMIZATION ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. ;-----
  1. FILTERB ; ENTRY POINT FROM AMQQATR
  1. I $P(AMQQECPR,";",2)'="" G FB2
  1. S Z=$P(AMQQECPR,";")
  1. D FBT
  1. S AMQQECMP="I AMQQEVAL"_AMQQESBL_Z
  1. Q
  1. ;
  1. FBT S Z=$S(Z?1.N1"/"1.N:(+Z/$P(Z,"/",2)),$E(Z)="N":0,$E(Z)="F":1,1:-1)
  1. Q
  1. ;
  1. FB2 S Z=$P(AMQQECPR,";")
  1. D FBT
  1. S X(1)=Z,Z=$P(AMQQECPR,";",2)
  1. D FBT
  1. S X(2)=Z
  1. I AMQQESBL="><" S X(3)=.0000000001,X(1)=X(1)-X(3),X(2)=X(2)+X(3),AMQQECMP="I AMQQEVAL>"_X(1)_",AMQQEVAL<"_X(2) Q
  1. S AMQQECMP="I AMQQEVAL<"_X(1)_"!(AMQQEVAL>"_X(2)_")"
  1. Q
  1. ;
  1. FILTERD ; ENTRY POINT FROM AMQQATR
  1. FILTERN ; ENTRY POINT FROM AMQQATR
  1. I $P(AMQQECPR,";",2)="" S AMQQECMP="I AMQQEVAL"_AMQQESBL_+AMQQECPR Q
  1. S X(1)=+AMQQECPR
  1. S X(2)=$P(AMQQECPR,";",2)
  1. S AMQQECMP="I AMQQEVAL<"_X(1)_"!(AMQQEVAL>"_X(2)_")"
  1. I AMQQESBL="><"!(AMQQESBL="=") S X(3)=.0000001,X(1)=X(1)-X(3),X(2)=X(2)+X(3),AMQQECMP="I AMQQEVAL>"_X(1)_",AMQQEVAL<"_X(2) Q
  1. Q
  1. ;
  1. DATE S AMQQECMP="I 1",X=$P(AMQQESBL,";")
  1. S AMQQEVAL=0
  1. I X'="<",X'="'>" S AMQQEVAL=$P(AMQQECPR,";")-.0000001
  1. I AMQQENCO=2 S AMQQECMP="I AMQQEVAL>"_$P(AMQQECPR,";",2)
  1. Q
  1. ;
  1. FILTERS ; ENTRY POINT FROM AMQQATR
  1. S AMQQECMP="I AMQQEVAL"_AMQQESBL_""""_$P(AMQQECPR,":")_""""
  1. Q
  1. ;
  1. FILTERF ; ENTRY POINT FROM AMQQATR
  1. I AMQQECPR[";" S AMQQECMP="I AMQQEVAL]"""_$P(AMQQECPR,";")_""",AMQQEVAL']"""_$P(AMQQECPR,";",2)_""",AMQQEVAL"_"'=""""" Q
  1. I AMQQESBL="$" S AMQQECMP="I $E(AMQQEVAL,1,"_$L(AMQQECPR)_")="""_AMQQECPR_"""" Q
  1. I AMQQESBL="#" S AMQQECMP="I $E(AMQQEVAL,"_($L(AMQQEVAL)-$L(AMQQECPR)+1)_",99)="""_AMQQECPR_"""" Q
  1. S AMQQECMP="I AMQQEVAL"_AMQQESBL_""""_AMQQECPR_""""
  1. Q
  1. ;
  1. FILTERA ; ENTRY POINT FROM AMQQATR
  1. N %
  1. S %DT=""
  1. S X="T+1"
  1. D ^%DT
  1. S X(3)=Y
  1. S X(1)=+AMQQECPR
  1. S X(2)=$P(AMQQECPR,";",2)
  1. I AMQQESBL="'<" S X(1)=X(1)-1,AMQQESBL=">" G FAG
  1. I AMQQESBL="'>" S X(1)=X(1)+1,AMQQESBL="<" G FAL
  1. FAG I AMQQESBL=">" S Z(1)=0,Z(2)=X(3)-((X(1)+1)*10000),AMQQESBL="><" G FSET
  1. FAL I AMQQESBL="<" S Z(2)=99999999,Z(1)=DT-(X(1)*10000),AMQQESBL="><" G FSET
  1. I AMQQESBL="=" S Z(1)=DT-((X(1)+1)*10000),Z(2)=X(3)-(X(1)*10000),AMQQESBL="><" G FSET
  1. I AMQQESBL="'=" S Z(1)=DT-(X(1)*10000),Z(2)=X(3)-((X(1)+1)*10000),AMQQESBL="'><" G FSET
  1. I AMQQESBL="><" S Z(1)=DT-(X(2)*10000),Z(2)=X(3)-(X(1)*10000) G FSET
  1. S Z(1)=DT-(X(1)*10000)
  1. S Z(2)=X(3)-(X(2)*10000)
  1. FSET I AMQQESBL="><" S AMQQECMP="I AMQQEVAL>"_Z(1)_",AMQQEVAL<"_Z(2) Q
  1. S AMQQECMP="I AMQQEVAL>"_Z(1)_"!(AMQQEVAL<"_Z(2)_")"
  1. Q
  1. ;
  1. FILTERC Q
  1. ;