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

AGED13.m

Go to the documentation of this file.
  1. AGED13 ; IHS/ASDS/EFG - EDIT PAGE 6 - VETERAN'S INFO ;
  1. ;;7.1;PATIENT REGISTRATION;;AUG 25,2005
  1. ;
  1. VAR ;
  1. S AG("PG")=6
  1. G READ:$G(^DPT(DFN,"VET"))="Y"
  1. S AG("N")=1
  1. S DA=DFN
  1. S ROUTID=$P($T(+1)," ") ;SET ROUTINE ID FOR PROGRAMMER VIEW
  1. D ^AGED
  1. ;THESE KILLS NEED TO BE DONE VIA FILEMAN CORRECTLY. COMMENT BY TPF 4/27/2005
  1. I $G(^DPT(DFN,"VET"))="N" K ^DPT(DFN,.3),^DPT(DFN,.31),^DPT(DFN,.321),^DPT(DFN,.32),^DPT("APOS",9,DFN),^AUPNPAT(DFN,32),^AUPNPAT(DFN,19)
  1. K ^UTILITY("DIQ1",$J)
  1. F AG=1:1:AG("N") D
  1. . S AGSCRN=$P($T(@1+AG),";;",2,10)
  1. . S DIC=$P(AGSCRN,U,3)
  1. . S DR=$P(AGSCRN,U,4)
  1. . W !,AG,".",?(40-$L($P($G(^DD(DIC,DR,0)),U))),$P($G(^DD(DIC,DR,0)),U)," : "
  1. . S AGVETFLD=$$GET1^DIQ(DIC,DFN,DR)
  1. . I $G(^AUPNPAT(DFN,35))'="" W AGVETFLD,?50,"Obtained on " S Y=$P($G(^AUPNPAT(DFN,35)),U) X ^DD("DD") W Y
  1. W !,$G(AGLINE("-"))
  1. D VERIF^AGUTILS ;ADDED
  1. W !!,AGLINE("EQ")
  1. Q:$D(AGSEENLY)
  1. K DIR
  1. S DIR("A")="CHANGE which item? (1-"_AG("N")_") NONE// "
  1. S DIR("?")="Enter your choice now."
  1. S DIR("?",1)="You may enter the item number of the field you wish to edit,"
  1. S DIR("?",2)="OR you can enter 'P#' where P stands for 'page' and '#' stands for"
  1. S DIR("?",3)="the page you wish to jump to, OR enter '^' to go back one page"
  1. S DIR("?",4)="OR, enter '^^' to exit the edit screens, OR RETURN to go to the next screen."
  1. D READ^AGED1
  1. G END:$D(DTOUT)!$D(DFOUT)!$D(DLOUT)!$D(DUOUT)!$D(DIROUT)
  1. G:$D(AG("ED"))&'$D(AGXTERN) @("^AGED"_AG("ED")) I $D(DQOUT)!(+Y<1)!(+Y>AG("N")) W !!,"You must enter a number from 1 to ",AG("N") H 2 G VAR
  1. S AGY=Y
  1. F AGI=1:1 S AG("SEL")=+$P(AGY,",",AGI) Q:AG("SEL")<1!(AG("SEL")>AG("N")) D @($P("VET,",",",AG("SEL")))
  1. D UPDATE1^AGED(DUZ(2),DFN,13,"")
  1. G VAR
  1. NONE ;
  1. READ D DRAW
  1. Q:$D(AGSEENLY)
  1. W !!,AGLINE("EQ")
  1. K DIR
  1. S DIR("A")="CHANGE which item? (1-"_AG("N")_") NONE// "
  1. D READ^AGED1
  1. G END:$D(DTOUT)!$D(DFOUT)!$D(DLOUT)!$D(DUOUT)!$D(DIROUT)
  1. G:$D(AG("ED"))&'$D(AGXTERN) @("^AGED"_AG("ED")) I $D(DQOUT)!(+Y<1)!(+Y>AG("N")) W !!,"You must enter a number from 1 to ",AG("N") H 2 G READ
  1. I +Y>1,'$D(^DPT(DFN,"VET")) W *7," Must be VETERAN. Edit #1 first." H 2 G READ
  1. S AGY=Y
  1. F AGI=1:1 S AG("SEL")=+$P(AGY,",",AGI) Q:AG("SEL")<1!(AG("SEL")>AG("N")) D @($P("VET,SVCBR,SVCENT,SVCSEP,VIETSVC,SVCCON,CLMNUM,DISAB,VACARD,",",",AG("SEL")))
  1. D UPDATE1^AGED(DUZ(2),DFN,13,"")
  1. G VAR
  1. Q
  1. END K ^UTILITY("DIQ1",$J),AG,AGI,AGY,DTOUT,DLOUT,DQOUT,DA,DIC,DIE,DR,AGSCRN,AGVETFLD
  1. K ROUTID
  1. Q:$D(DFOUT)
  1. Q:$D(AGXTERN)
  1. Q:$D(AGSEENLY)
  1. I $D(DUOUT) K DIR G ^AGEDBEA
  1. K DIR
  1. G ^AGED8
  1. DRAW ;EP
  1. S AG("N")=9
  1. S DA=DFN
  1. S AG("PG")=6
  1. S ROUTID=$P($T(+1)," ") ;SET ROUTINE ID FOR PROGRAMMER VIEW
  1. D ^AGED
  1. I $G(^DPT(DFN,"VET"))="N" K ^DPT(DFN,.3),^DPT(DFN,.31),^DPT(DFN,.321),^DPT(DFN,.32),^DPT("APOS",9,DFN),^AUPNPAT(DFN,32),^AUPNPAT(DFN,19)
  1. K ^UTILITY("DIQ1",$J)
  1. F AG=1:1:AG("N") D
  1. . S AGSCRN=$P($T(@1+AG),";;",2,10)
  1. . S DIC=$P(AGSCRN,U,3)
  1. . S DR=$P(AGSCRN,U,4)
  1. . W !,AG,".",?(40-$L($P($G(^DD(DIC,DR,0)),U))),$P($G(^DD(DIC,DR,0)),U)," : "
  1. . S AGVETFLD=$$GET1^DIQ(DIC,DFN,DR)
  1. . I $D(AGVETFLD)&(AG=1) W AGVETFLD,?50,"Obtained on " S Y=$P($G(^AUPNPAT(DFN,35)),U) X ^DD("DD") W Y
  1. . I $D(AGVETFLD)&(AG=8) D
  1. .. I $L(AGVETFLD)>37 W $E(AGVETFLD,1,37),! W ?43,$E(AGVETFLD,38,60)
  1. .. I $L(AGVETFLD)<38 W AGVETFLD
  1. . I $D(AGVETFLD)&(AG'=8)&(AG'=1) D
  1. .. W AGVETFLD
  1. . I AG=9,$P($G(^AUPNPAT(DFN,32)),U)="Y" D
  1. .. S Y=$P($G(^AUPNPAT(DFN,32)),U,2) D DD^%DT
  1. .. W ?49,"DATE OBTAINED: ",Y
  1. . I AG=9,$P($G(^AUPNPAT(DFN,32)),U)="N" D
  1. .. W ?48,"TOLD HOW TO OBTAIN VA CARD? "
  1. .. I $P($G(^AUPNPAT(DFN,32)),U,3)["N" W "NO"
  1. .. I $P($G(^AUPNPAT(DFN,32)),U,3)["Y" W "YES"
  1. W !,$G(AGLINE("-"))
  1. D VERIF^AGUTILS
  1. Q
  1. VET ;VETERAN FIELD
  1. K DUOUT
  1. S DIE="^DPT("
  1. S DA=DFN
  1. S DR=1901
  1. S DIE("NO^")=""
  1. D ^DIE
  1. S:$D(Y) DUOUT=""
  1. ;ADD NEW FIELD FOR VET DATA TO TRACK WHEN VETERAN FIELD IS EDITED
  1. S DIE="^AUPNPAT("
  1. S DA=DFN
  1. S DR="3501////^S X=DT"
  1. D ^DIE
  1. Q
  1. SVCBR ;LAST SERVICE BRANCH FIELD
  1. K DUOUT
  1. S DIE="^DPT("
  1. S DA=DFN
  1. S DR=.325
  1. D ^DIE
  1. S:$D(Y) DUOUT=""
  1. Q
  1. SVCENT ;LAST SERVICE ENTRY DATE
  1. K DUOUT
  1. S DIE="^DPT("
  1. S DA=DFN
  1. S DR=.326
  1. D ^DIE
  1. S:$D(Y) DUOUT=""
  1. Q
  1. SVCSEP ;LAST SERVICE SEPARATION DATE
  1. K DUOUT
  1. S DIE="^DPT("
  1. S DA=DFN
  1. S DR=.327
  1. D ^DIE
  1. S:$D(Y) DUOUT=""
  1. Q
  1. VIETSVC ;VIETNAM SERVICE INDICATED
  1. K DUOUT
  1. S DIE="^DPT("
  1. S DA=DFN
  1. S DR=.32101
  1. D ^DIE
  1. S:$D(Y) DUOUT=""
  1. Q
  1. SVCCON ;SERVICE CONNECTED
  1. K DUOUT
  1. S DIE="^DPT("
  1. S DA=DFN
  1. S DR=.301
  1. D ^DIE
  1. S:$D(Y) DUOUT=""
  1. Q
  1. CLMNUM ;CLAIM NUMBER
  1. K DUOUT
  1. S DIE="^DPT("
  1. S DA=DFN
  1. S DR=.313
  1. D ^DIE
  1. S:$D(Y) DUOUT=""
  1. Q
  1. DISAB ;RATED DISABILITIES
  1. K DUOUT
  1. S DIE="^AUPNPAT("
  1. S DA=DFN
  1. S DR=1901
  1. D ^DIE
  1. S:$D(Y) DUOUT=""
  1. Q
  1. VACARD ;DOES PATIENT HAVE A VALID VA CARD
  1. N DUOUT
  1. S DIE="^AUPNPAT("
  1. S DA=DFN
  1. S DR=3201
  1. D ^DIE
  1. S:$D(Y) DUOUT=""
  1. ;IF VALID VA CARD, PROMPT FOR DATE CARD COPY WAS OBTAINED
  1. I $P($G(^AUPNPAT(DFN,32)),U)="Y" D
  1. . I $P($G(^AUPNPAT(DFN,32)),U,3)'="" D
  1. .. S $P(^AUPNPAT(DFN,32),U,3)=""
  1. . N DUOUT
  1. . S DIE="^AUPNPAT("
  1. . S DA=DFN
  1. . S DR=3202
  1. . D ^DIE
  1. . S:$D(Y) DUOUT=""
  1. ;IF NO VALID VA CARD AND DATE OBTAINED EXISTS, DELETE DATE OBTAINED
  1. I $P($G(^AUPNPAT(DFN,32)),U)'="Y",$P($G(^AUPNPAT(DFN,32)),U,2)'="" D
  1. . S $P(^AUPNPAT(DFN,32),U,2)=""
  1. ;IF VALID CARD=NULL CLEAR FIELDS 3202 AND 3203
  1. I $P($G(^AUPNPAT(DFN,32)),U)="" D
  1. . S $P(^AUPNPAT(DFN,32),U,2)=""
  1. . S $P(^AUPNPAT(DFN,32),U,3)=""
  1. ;IF VALID VA CARD = NO, PROMPT FOR INFORMED HOW TO OBTAIN
  1. I $P($G(^AUPNPAT(DFN,32)),U)="N" D
  1. . I $P(^AUPNPAT(DFN,32),U,2)'="" D
  1. .. S DIR(0)="Y"
  1. .. S DIR("A")="There is a card copy date obtained field on this record. Are you sure this what you want to do ? "
  1. .. D ^DIR K DIR
  1. .. G:Y=0 VACARD
  1. . N DUOUT
  1. . S DIE="^AUPNPAT("
  1. . S DA=DFN
  1. . S DR=3203
  1. . D ^DIE
  1. . S:$D(Y) DUOUT=""
  1. . K DIC,DIE
  1. Q
  1. ;NOT IN USE AT THIS TIME
  1. ;CHECK TO SEE IF PATIENT TOO YOUNG FOR SERVICE. THIS IS TAKEN FROM
  1. ;VA CODE IN RTN ^DGINP AND MODIFIED SLIGHTLY
  1. ;X= PAT DOB,
  1. TOOYUNG(AGDA,X) ;
  1. N L
  1. S L=^DPT(AGDA,0),Y=+$P(L,"^",3)
  1. I X-Y\10000<15 X ^DD("DD") W !!,"This service entry date would make the patient too young for service.",!,"DOB ",Y,!,*7 K X Q 1
  1. Q
  1. EDIT S DIE=2,DA=DFN,DR=$P($P(AGSCRN,";;",AG("SEL")),U,4)
  1. I AG("SEL")'=1,$D(^DPT(DFN,"VET")),^DPT(DFN,"VET")="N" K ^("VET"),^DPT(DFN,.3),^DPT(DFN,.31),^DPT(DFN,.321),^DPT(DFN,.32),^DPT("APOS",9,DFN) Q
  1. I AG("SEL")'=1,'$D(^DPT(DFN,"VET")) Q
  1. D ^DIE
  1. Q
  1. ADD ;EP - ADD A PATIENT
  1. D VET
  1. I $D(^DPT(DFN,"VET")),^("VET")="Y" D
  1. . D SVCBR Q:$D(Y)
  1. . D SVCENT Q:$D(Y)
  1. . D SVCSEP Q:$D(Y)
  1. . D VIETSVC Q:$D(Y)
  1. . D SVCCON Q:$D(Y)
  1. . D CLMNUM Q:$D(Y)
  1. . D DISAB Q:$D(Y)
  1. . D VACARD Q:$D(Y)
  1. K AGSCRN I $D(^DPT(DFN,"VET")),^("VET")="N" K ^DPT("APOS",9,DFN)
  1. D UPDATE1^AGED(DUZ(2),DFN,13,"")
  1. G L11^AG0
  1. ; ****************************************************************
  1. ; ON LINES BELOW:
  1. ; PIECE 1= FLD LBL
  1. ; PIECE 2= POSITION ON LINE TO DISP FLD
  1. ; PIECE 3= FILE #
  1. ; PIECE 4= FLD #
  1. 1 ;
  1. ;;VETERAN (Y/N)?^26^2^1901
  1. ;;SERVICE BRANCH [LAST]^19^2^.325
  1. ;;SERVICE ENTRY DATE [LAST]^15^2^.326
  1. ;;SERVICE SEPARATION DATE [LAST]^10^2^.327
  1. ;;VIETNAM SERVICE INDICATED?^14^2^.32101
  1. ;;SERVICE CONNECTED?^22^2^.301
  1. ;;CLAIM NUMBER^28^2^.313
  1. ;;DESC OF VA DISABILITY^19^9000001^1901
  1. ;;DOES THE PATIENT HAVE A VALID VA CARD?^1^9000001^3201