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

AGMANERS.m

Go to the documentation of this file.
  1. AGMANERS ; IHS/OIT/SCR 06/22/06 - CHANGE PATIENT NAME API FOR ERS ;
  1. ;;7.1;PATIENT REGISTRATION;**2,9**;AUG 25, 2005
  1. ;USED BY AMER*2.5.1 req 8
  1. ;
  1. NAME(AMERDFN) ;EP - From UPDATPAT^AMERVSIT
  1. ;IHS/OIT/SCR 6/22/06 MODIFIED NAME^AGEMAN TO FORCE THIS DFN AND NO OTHER FOR
  1. Q:AMERDFN 0
  1. EDIT ;
  1. N DIC,AMERONAM
  1. S AMERONAM=$P($G(^DPT(AMERDFN,0)),U)
  1. S DFN=AMERDFN
  1. D CHKRHI^AG
  1. I $D(RHIFLAG) D
  1. . I RHIFLAG="A" W !,$$S^AGVDF("RVN"),$$S^AGVDF("BLN"),"This patient has Restricted Health Information",$$S^AGVDF("BLF"),$$S^AGVDF("RVF")
  1. ;ADD ALERT IF PATIENT HAS 'DATE OF DEATH' POPULATED IN VA
  1. ;PATIENT FILE
  1. I $D(DFN) I $$CHKDEATH^AGEDERR(DFN) W !!?5,"**** ALERT: DATE OF DEATH ON FILE FOR THIS PATIENT!!" H 2
  1. Q:'$D(DFN) 0
  1. S DIR(0)="FOr^1:80",DIR("A")="ENTER NEW NAME",DIR("?")="ENTER NAME THAT SHOULD BE ON THIS RECORD(80 characters max.)"
  1. S DIR("B")=AMERONAM
  1. D ^DIR K DIR
  1. I $D(DUOUT)!$D(DTOUT)!(Y="") K DUOUT,DTOUT,Y Q 0
  1. Q:Y=AMERONAM 0
  1. ;W !!,"Enter the NEW NAME: " D READ^AG Q:Y="" I Y="@" W !!,*7,"CANNOT DELETE PATIENTS THROUGH THIS ROUTINE." Q
  1. K AG("NEWNAME")
  1. S X=Y
  1. S AG("NEWNAME")=Y
  1. D NAME^AUPNPED
  1. I '$D(X) D EN^DDIOL("INCORRECT NAME FORMAT","","!!") K AG("NEWNAME") Q 0
  1. S AG("OLDNAME")=AMERONAM
  1. D NOW^%DTC S AGDTS=%
  1. D ADDNAM^AGNAMCHG
  1. Q:$D(AG("NAMFAIL")) 0
  1. K DIC,DIE,DA,DR,Y
  1. S DA=DFN
  1. S DR=".01///"_AG("NEWNAME")
  1. S X=$$DIEDPT(DA,DR)
  1. I $P(^DPT(DFN,0),U)=AG("OLDNAME") D END Q 1
  1. ;HL7 INTERFACE -- PUT PATIENT DFN INTO TEMP ARRAY FOR HL7 CALL
  1. S ^XTMP("AGHL7",DUZ(2),DA)=DA ;AG*7.1*9 - Added DUZ(2) subscript
  1. S ^XTMP("AGHL7AG",DUZ(2),DA,"UPDATE")="" ;AG*7.1*9 - Added DUZ(2) subscript
  1. S DIR("A")="Do you wish to store "_AG("OLDNAME")_" in the ""OTHER NAMES"" file for future reference to this patient"
  1. S DIR(0)="Y",DIR("B")="YES"
  1. D ^DIR
  1. I $D(DUOUT)!$D(DTOUT)!(Y="") K DUOUT,DTOUT,Y Q 0
  1. I Y["Y" D
  1. .S DIE="^DPT("
  1. .S DA=DFN,DR="1///"_AG("OLDNAME"),DR(2,2.01)=.01
  1. .S X=$$DIEDPT(DA,DR)
  1. S ^AGPATCH(AGDTS,DUZ(2),DFN)="",DR=".03///TODAY",$P(^AUPNPAT(DFN,0),U,12)=DUZ,DA=DFN
  1. D DIEAUPN(DA,DR)
  1. Q 1
  1. END ;AMER*2.5*1 IHS/OIT/SCR 09/01/06
  1. I '$G(AGTDS) S X="NOW" D ^%DT S AGDTS=Y
  1. I $G(AGPTPG)=0,("N"'[($P(^AUTTSITE(1,0),"^",16))) S ^AGPATCH(AGDTS,DUZ(2),DFN,"ZMFI",0)=""
  1. I $D(^AGPATCH(AGDTS,DUZ(2),DFN))=10 S ^AGPATCH(AGDTS,DUZ(2),DFN)=""
  1. I $D(^AGPATCH(AGDTS,DUZ(2),DFN))=0 S ^AGPATCH(AGDTS,DUZ(2),DFN)=""
  1. K AGDTS
  1. Q
  1. DIEDPT(DA,DR) ; GIVEN AN ENTRY NUMBER AND A DR STRING, EDIT THE VA PATIENT
  1. FILE ;EP
  1. N X,Y,%
  1. N D,D0,DI,DIC,DICR,DIE,DIG,DIH,DIV,DIU,DIW,DQ
  1. S DIE="^DPT("
  1. L +^DPT(DA):3 E Q
  1. D ^DIE
  1. L -^DPT(DA)
  1. K DIE,DA,DR
  1. Q X
  1. DIEAUPN(DA,DR) ; GIVEN AN ENTRY NUMBER AND A DR STRING, EDIT THE PATIENT FILE
  1. N X,Y,%
  1. N D,D0,DI,DIC,DICR,DIE,DIG,DIH,DIV,DIU,DIW,DQ
  1. S DIE="^AUPNPAT("
  1. L +^AUPNPAT(DA):3 E Q
  1. D ^DIE
  1. L -^AUPNPAT(DA)
  1. K DIE,DA,DR
  1. Q