| 1 | WVUTL8 ;HCIOFO/FT,JR IHS/ANMC/MWR - UTIL: PATLKUP, SELECT, KILLALL; ;12/15/98  16:43 | 
|---|
| 2 | ;;1.0;WOMEN'S HEALTH;**3**;Sep 30, 1998 | 
|---|
| 3 | ;;* MICHAEL REMILLARD, DDS * ALASKA NATIVE MEDICAL CENTER * | 
|---|
| 4 | ;;  UTILITY: PATIENT LOOKUP, SELECT FOR REPORT, KILLALL. | 
|---|
| 5 | ; | 
|---|
| 6 | PATLKUP(Y,WVADD,DUZ2,WVPOP) ;EP | 
|---|
| 7 | ;---> WV PATIENT LOOKUP. | 
|---|
| 8 | ;---> PARAMETERS: | 
|---|
| 9 | ;     1 - Y             (RETURNED) PATIENT DFN OR -1 IF FAILED. | 
|---|
| 10 | ;     2 - WVADD         (OPTIONAL) EQUALS "ADD" IF ADD CAPABILITY | 
|---|
| 11 | ;     3 - DUZ2=DUZ(2)   (OPTIONAL) IF NOT SET, WILL=ENVIROMENTAL DUZ(2) | 
|---|
| 12 | ;     4 - WVPOP         (RETURNED) WVPOP=1 IF DTOUT OR DUOUT | 
|---|
| 13 | ; | 
|---|
| 14 | ;---> EXAMPLE: D PATLKUP^WVUTL8(.Y) | 
|---|
| 15 | ;              D PATLKUP^WVUTL8(.Y,"ADD") - MAY ADD PATIENT TO WH. | 
|---|
| 16 | ; | 
|---|
| 17 | N DFN,DIC,X | 
|---|
| 18 | PATLKUP1 ;---> RETURN HERE IF LOOKUP FAILED FOR SEX OR AGE. | 
|---|
| 19 | ;---> SET VARIABLES: Y=DFN,WVPOP=1 FOR QUIT. | 
|---|
| 20 | S WVPOP=0 D SETVARS^WVUTL5 | 
|---|
| 21 | S:$G(DUZ2)]"" DUZ(2)=DUZ2 | 
|---|
| 22 | S DIC="^DPT(",DIC(0)="AEMQ",DIC("S")="I $P(^(0),U,2)=""F""" | 
|---|
| 23 | D ^DIC | 
|---|
| 24 | Q:$D(DUOUT)!($D(DTOUT)) | 
|---|
| 25 | Q:Y<0 | 
|---|
| 26 | S (DFN,Y)=+Y | 
|---|
| 27 | ;---> IF PATIENT ALREADY EXISTS IN WV PATIENT FILE, QUIT. | 
|---|
| 28 | Q:$D(^WV(790,DFN,0)) | 
|---|
| 29 | ; | 
|---|
| 30 | ;---> IF PATIENT IS NOT FEMALE, PROMPT USER. | 
|---|
| 31 | I '$$SEX^WVUTL1(DFN) D  G PATLKUP1 | 
|---|
| 32 | .W !!?3,$$NAME^WVUTL1(DFN)," is not female." D DIRZ^WVUTL3 | 
|---|
| 33 | ; | 
|---|
| 34 | ;---> QUIT IF NO ADD ("LAYGO") CAPABILITY. | 
|---|
| 35 | I $G(WVADD)'="ADD" D  G PATLKUP1 | 
|---|
| 36 | .W !!?3,$$NAME^WVUTL1(DFN) | 
|---|
| 37 | .W " is not currently in the Women's Health database." D DIRZ^WVUTL3 | 
|---|
| 38 | ; | 
|---|
| 39 | ;---> ASK TO ADD AS A NEW PATIENT. | 
|---|
| 40 | W !!?3,$$NAME^WVUTL1(DFN) | 
|---|
| 41 | W " ("_$$AGE^WVUTL1(DFN)_")" ;show patient's age | 
|---|
| 42 | W !?3,"is not currently in the Women's Health database." | 
|---|
| 43 | W !?3,"Do you wish to add her to the Women's Health Database?" | 
|---|
| 44 | S DIR("?",1)="     Enter YES to ADD this patient to the Women's Health" | 
|---|
| 45 | S DIR("?",1)=DIR("?",1)_" database." | 
|---|
| 46 | S DIR("?")="     Enter NO to quit without adding her to the database." | 
|---|
| 47 | S DIR(0)="Y",DIR("A")="   Enter Yes or No" | 
|---|
| 48 | D ^DIR W ! | 
|---|
| 49 | I $D(DIRUT) S Y=-1 Q | 
|---|
| 50 | G:Y=0 PATLKUP1 | 
|---|
| 51 | D AUTOADD^WVPATE(DFN,DUZ(2),.Y,1) | 
|---|
| 52 | Q | 
|---|
| 53 | ; | 
|---|
| 54 | KGBL(GBL) ;EP | 
|---|
| 55 | ;---> KILL A GLOBAL.  GBL SHOULD INCLUDE THE LEADING "^". | 
|---|
| 56 | S:GBL["(" GBL=$P(GBL,"(") | 
|---|
| 57 | F  S GBL=$Q(@GBL) Q:GBL=""  K @GBL | 
|---|
| 58 | Q | 
|---|
| 59 | ; | 
|---|
| 60 | ZGBL(GBL) ;EP | 
|---|
| 61 | ;---> ZERO OUT (DELETE ALL DATA) IN A FILEMAN FILE. | 
|---|
| 62 | ;---> GBL SHOULD INCLUDE THE LEADING "^". | 
|---|
| 63 | N N,X | 
|---|
| 64 | S:GBL["(" GBL=$P(GBL,"(") | 
|---|
| 65 | Q:'$D(@(GBL_"(0)")) | 
|---|
| 66 | S N=0,X=$P(@(GBL_"(0)"),U,1,2) | 
|---|
| 67 | F  S N=$O(@(GBL_"("""_N_""")")) Q:N=""  K @(GBL_"("""_N_""")") | 
|---|
| 68 | S @(GBL_"(0)")=X | 
|---|
| 69 | Q | 
|---|
| 70 | ; | 
|---|
| 71 | KILLALL ;EP | 
|---|
| 72 | ;---> CLEAN UP VARIABLES. | 
|---|
| 73 | ;---> MSM | 
|---|
| 74 | ;S X="WV" F  S X=$O(@X) Q:$E(X,1,2)'="WV"  K @X | 
|---|
| 75 | ;S X="DI" F  S X=$O(@X) Q:$E(X,1,2)'="WV"  K @X | 
|---|
| 76 | ;---> DSM | 
|---|
| 77 | ;S X="WV" F  S X=$ZSORT(@X) Q:$E(X,1,2)'="WV"  K @X | 
|---|
| 78 | ;S X="DI" F  S X=$ZSORT(@X) Q:$E(X,1,2)'="WV"  K @X | 
|---|
| 79 | ; | 
|---|
| 80 | ;---> REPLACE KILLS BELOW WITH $O COMMANDS ABOVE WHEN AVAILABLE. | 
|---|
| 81 | K WV,WV0,WV1,WV1DX,WV2,WV2DX,WVA,WVABBV,WVABBVS,WVACC | 
|---|
| 82 | K WVACCN,WVACCP,WVADD,WVAGE,WVAGENCY,WVAGRG,WVAGRP,WVAR,WVAREA | 
|---|
| 83 | K WVARR,WVARR1,WVASKTIM,WVATT,WVB,WVBDF,WVBEGDF,WVBEGDT | 
|---|
| 84 | K WVBEGDT1,WVBNEED,WVC,WVC0,WVCAPT,WVCBEDA,WVCC,WVCDC,WVCDCV,WVCHAGE | 
|---|
| 85 | K WVCHG,WVCHRT,WVCHSSN,WVCMGR,WVCMGR1,WVCNEED,WVCODE,WVCOLPS,WVCONF | 
|---|
| 86 | K WVCONFF,WVCOUNT,WVCRT,WVCUR,WVD,WVDA,WVDATE,WVDATE1,WVDD,WVDDATE | 
|---|
| 87 | K WVDEF,WVDFLT,WVDFN,WVDIAG,WVDR,WVDT,WVDUZ0,WVDUZ2,WVDX | 
|---|
| 88 | K WVE,WVEDC,WVEDCL,WVEDF,WVENDDF,WVENDDT,WVENDDT1,WVENDSAM,WVENDT | 
|---|
| 89 | K WVERR,WVERROR,WVERRORS,WVFAC,WVFACIL,WVFILE,WVFLNM,WVGBL | 
|---|
| 90 | K WVGBLN,WVHEADER,WVHCF,WVHFS,WVHLOC,WVHRCN,WVI,WVICD,WVIEN,WVION | 
|---|
| 91 | K WVITEM,WVITEMS,WVKDT,WVLDAT,WVLFRT,WVLINE,WVLINL,WVLOC,WVLOGO | 
|---|
| 92 | K WVLOOP,WVLPRG,WVM,WVMABN,WVMAM,WVMAMDT,WVMATCH,WVMENUT,WVMES,WVN | 
|---|
| 93 | K WVNAMAGE,WVNAME,WVNEW,WVNN,WVNODE,WVNOFAC,WVNOFOL,WVNOMAT,WVNORM | 
|---|
| 94 | K WVNOW,WVOFAC,WVOLD,WVOLD2,WVOUT,WVPABN,WVPAGE,WVPAP,WVPAPDA,WVPAPDT | 
|---|
| 95 | K WVPAPRG,WVPAPRG1,WVPAPS,WVPATH,WVPATS,WVPC,WVPCCN,WVPCCP,WVPCD,WVPCDL | 
|---|
| 96 | K WVPCDN,WVPCDS,WVPCDT,WVPDATE,WVPN,WVPNAME,WVPOP,WVPOP1,WVPOST,WVPPAP | 
|---|
| 97 | K WVPRE,WVPREG,WVPRIO,WVPRMPT,WVPRMT,WVPRMT1,WVPRMT2,WVPRMTQ,WVPROF | 
|---|
| 98 | K WVPROV,WVPRPCD,WVPRV,WVPSTAT,WVPTITL,WVPURP,WVPUSER,WVQUE,WVQUIT | 
|---|
| 99 | K WVRCVDT,WVRES,WVRESN,WVRTN,WVS,WVSAME,WVSCRN,WVSITE,WVSL,WVSPEC | 
|---|
| 100 | K WVSPTX,WVSS,WVSSN,WVSTART,WVSTAT,WVSTTDT,WVSUB,WVSUBH,WVUSER,WVSV | 
|---|
| 101 | K WVTAB,WVTEST,WVTIME,WVTIMLN,WVTITLE,WVTITLE1,WVTITLE2,WVTMP | 
|---|
| 102 | K WVTTAB,WVTYPE,WVUNL,WVVER,WVVFIL,WVVGBL,WVX,WVX0,WVX1,WVX2,WVX3 | 
|---|
| 103 | K WVX4,WVX5,WVX6,WVX7,WVX8,WVX9,WVXPORT,WVXREF,WVY,WVYY | 
|---|
| 104 | K COL,COLLEN,LEN,NN,NODE,V,POP,WVJPCP,WVJDT,WVJDTO,WVJNDA,WVJTOY | 
|---|
| 105 | K WVTOY,WVJPAPR,WVJST,WVPR,CN,WVCNT,WVJ,WVJAGER,WVJHDR,WVJTYP | 
|---|
| 106 | K WVDTIEN,WVJX,WVJDR,WVCN,WVJRNOW,WVBALL,WVALL,WVBV,WVCALL,WVCIVCN | 
|---|
| 107 | K WVCNALL,WVCV,WVET,WVETCN,WVMALL,WVMV,WVNALL,WVST,WVVALL,WVARJ | 
|---|
| 108 | K WVJBFAC,WVJCFAC | 
|---|
| 109 | ; | 
|---|
| 110 | ;---> ADDED MANUALLY. | 
|---|
| 111 | K WVMDAT,WVMGR,WVPDAT,WVTOT | 
|---|
| 112 | K ^TMP("WV",$J) | 
|---|
| 113 | ; | 
|---|
| 114 | ;---> FILEMAN KILLS. | 
|---|
| 115 | D DKILLS^WVFMAN | 
|---|
| 116 | K X,Y,Z,ZTRTN,ZTSAVE | 
|---|
| 117 | Q | 
|---|