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

ADEPQA3.m

Go to the documentation of this file.
  1. ADEPQA3 ; IHS/HQT/MJL - SEARCH PARAMS ; [ 03/24/1999 9:04 AM ]
  1. ;;6.0;ADE;**11**;JAN 15, 2002
  1. ;IHS/HMW
  1. ;Functions to set up search parameters
  1. ;
  1. PROV() ;EP - Returns "1/0^dfn,dfn,dfn" where dfn is dfn in provider file
  1. N DIR,ADEPRV,ADEFLG,DIC,ADEJ,ADEK,ADEY
  1. PRV1 S ADEPRV=""
  1. K DIR W ! S DIR("A")="Limit search to specific ATTENDING DENTIST(S)"
  1. S DIR(0)="Y",DIR("B")="NO" D ^DIR
  1. I $$HAT()!(Y=0) Q 0
  1. K DIC
  1. S DIC="^DIC(6,",DIC(0)="AQEM"
  1. S DIC("S")="I $P(^DIC(6,Y,0),U,4)]"""",$D(^DIC(7,$P(^DIC(6,Y,0),U,4),9999999)),+^DIC(7,$P(^DIC(6,Y,0),U,4),9999999)=52"
  1. F ADEJ=1:1 S DIC("A")="Select "_$S(ADEPRV]"":"ANOTHER ",1:"")_"Attending Dentist: " D ^DIC Q:X="" Q:$$HAT() S ADEY=$P(Y,U,2) D
  1. . S ADEFLG=0 F ADEK=1:1:$L(ADEPRV,",") I $P(ADEPRV,",",ADEK)=ADEY S ADEFLG=1 Q
  1. . Q:ADEFLG
  1. . I ADEPRV]"" S $P(ADEPRV,",",$L(ADEPRV,",")+1)=ADEY Q
  1. . S ADEPRV=ADEY
  1. I $$HAT() G PRV1
  1. I ADEPRV="" G PRV1
  1. Q "1^"_ADEPRV
  1. ;
  1. HYG() ;EP - Returns "1/0^dfn,dfn,dfn" where dfn is dfn in provider file
  1. N DIR,ADEPRV,ADEFLG,DIC,ADEJ,ADEY,ADEK
  1. HYG1 S ADEPRV=""
  1. K DIR W ! S DIR("A")="Limit search to specific HYGIENIST/THERAPIST(S)"
  1. S DIR(0)="Y",DIR("B")="NO" D ^DIR
  1. I $$HAT()!(Y=0) Q 0
  1. K DIC
  1. S DIC="^DIC(6,",DIC(0)="AQEM"
  1. S DIC("S")="I $P(^DIC(6,Y,0),U,4)]"""",$D(^DIC(7,$P(^DIC(6,Y,0),U,4),9999999)),+^DIC(7,$P(^DIC(6,Y,0),U,4),9999999)=46"
  1. F ADEJ=1:1 S DIC("A")="Select "_$S(ADEPRV]"":"ANOTHER ",1:"")_"Hygienist/Therapist: " D ^DIC Q:X="" Q:$$HAT() S ADEY=$P(Y,U,2) D
  1. . S ADEFLG=0 F ADEK=1:1:$L(ADEPRV,",") I $P(ADEPRV,",",ADEK)=ADEY S ADEFLG=1 Q
  1. . Q:ADEFLG
  1. . I ADEPRV]"" S $P(ADEPRV,",",$L(ADEPRV,",")+1)=ADEY Q
  1. . S ADEPRV=ADEY
  1. I $$HAT() G HYG1
  1. I ADEPRV="" G HYG1
  1. Q "1^"_ADEPRV
  1. ;
  1. STP() ;EP - Returns "1/0^Search Template DFN^file it's attached to"
  1. N DIR
  1. STP1 K DIR W ! S DIR("A")="Limit search to entries in one of your Search Templates"
  1. S DIR(0)="Y",DIR("B")="NO" D ^DIR
  1. I $$HAT()!(X="")!(Y=0) Q 0
  1. K DIC S DIC(0)="AQEM",DIC="^DIBT(",DIC("A")="Select SEARCH TEMPLATE: "
  1. S DIC("S")="I $P(^DIBT(Y,0),U,5)=DUZ I $P(^DIBT(Y,0),U)'[""ADEQA"" I $P(^DIBT(Y,0),U,4)]"""" I $P(^DIBT(Y,0),U,4)=9000001!($P(^DIBT(Y,0),U,4)=9002007)"
  1. D ^DIC
  1. I $$HAT()!(X="")!(Y=-1) G STP1
  1. Q "1^"_+Y_U_$P(^DIBT(+Y,0),U,4)
  1. ;
  1. DATE() ;EP - Returns "1 or 0^Begin^End" where first piece is 1 if a
  1. ;date limited search is requested
  1. N DIR,ADEBEG,X,Y,ADEND
  1. DAT1 W !,"The report will cover the following time period:"
  1. W ! S DIR("A")="Start with (and include) DATE: "
  1. S DIR(0)="DA^2810101:"_DT_":EX"
  1. D ^DIR
  1. Q:$$HAT() 0
  1. S ADEBEG=Y
  1. S DIR("A")="Go to (and include) DATE: "
  1. S DIR(0)="DA^"_ADEBEG_":"_DT_":EX"
  1. D ^DIR
  1. G:$$HAT() DAT1
  1. S ADEND=Y
  1. ;IHS/ANMC/HMW 8-14-2002 **11** Added next 2 lines
  1. S ADEBEG=ADEBEG-1_".9999"
  1. S ADEND=ADEND_".9999"
  1. Q "1^"_ADEBEG_U_ADEND
  1. AGE() ;EP - Returns "1or0^Begin^end" where first piece=1 if age search
  1. N DIR,ADEBEG,X,Y,ADEND
  1. AGE1 W ! S DIR("A")="Do you want to limit the search according to AGE AT TIME OF VISIT"
  1. S DIR("B")="NO"
  1. S DIR(0)="Y" D ^DIR
  1. I $$HAT() Q 0
  1. I Y=0 Q 0
  1. AGE2 K DIR
  1. S DIR("A")="Start with (and include) AGE: "
  1. S DIR(0)="NA^0:110:0"
  1. D ^DIR
  1. I $$HAT()!($D(DIRUT)) G AGE1
  1. S ADEBEG=Y
  1. S DIR("A")="Go to (and include) AGE: "
  1. S DIR(0)="NA^"_ADEBEG_":110:0"
  1. D ^DIR
  1. I $$HAT()!($D(DIRUT)) W ! G AGE2
  1. S ADEND=Y
  1. Q "1^"_ADEBEG_U_ADEND
  1. ;
  1. HAT() ;EP
  1. I $D(DTOUT)!($D(DUOUT))!($D(DIROUT)) Q 1
  1. Q 0
  1. LOC() ;EP - Returns "1/0^location1,location2...locationn" where Location is
  1. ;a location in Local Facilities subfile of DENTAL SITE PARAM
  1. N ADEFAC,DIR,ADELOC,ADEJ,ADEY,ADEK,ADEFLG
  1. LOC1 S ADEFAC=""
  1. W ! S DIR("A")="Do you want to limit the search to visits at a particular FACILITY" S DIR("B")="NO"
  1. S DIR(0)="Y" D ^DIR
  1. I $$HAT() Q 0
  1. I Y=0 Q 0
  1. S ADELOC=$O(^ADEPARAM(0)) Q:'+ADELOC 0 ;FHL 9/9/98;Add message if no DSP entry
  1. K DIR
  1. S DIR(0)="PO^ADEPARAM(ADELOC,1,:QEM"
  1. S DIR("A")="Select Facility"
  1. F ADEJ=1:1 D ^DIR Q:X="" Q:$$HAT() S ADEY=$P(Y,U,2) D
  1. . S ADEFLG=0 F ADEK=1:1:$L(ADEFAC,",") I $P(ADEFAC,",",ADEK)=ADEY S ADEFLG=1 Q
  1. . S:'ADEFLG $P(ADEFAC,",",ADEJ)=ADEY
  1. I $$HAT() K DIR G LOC1
  1. I ADEFAC="" Q 0
  1. Q "1^"_ADEFAC