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

BPCRC6.m

Go to the documentation of this file.
  1. BPCRC6 ; IHS/OIT/MJL - FHL-12/26/96 - REFERRED CARE GUI ROUTINES ;
  1. ;;1.5;BPC;;MAY 26, 2005
  1. ;
  1. EDIT ; EP CALLED FROM BPCRC3 (EDITS REFERRED CARE RECORD)
  1. D MODREF I BPCERR S RESULT(1)=-1,RESULT(2)="ERROR OCCURRED WHILE MODIFYING DATA!" Q
  1. S RESULT(1)=1,RESULT(2)=BPCRIEN_U_BPCREFN_U_BPCPURP_U_BPCPRNAM_U_BPCPROV_U_BPCIDAT_U_BPCEBDAT_U
  1. Q
  1. MODREF ;
  1. L +^BMCREF(0):10 I '$T S BPCERR=1 Q
  1. K BPCFDA,BPCEMSG S BPCFDR="BPCFDA(1)",BPCIENS=BPCRIEN_","
  1. S BPCFDA(1,90001,BPCIENS,.01)=BPCIDAT
  1. S BPCFDA(1,90001,BPCIENS,.03)=BPCPIEN
  1. S BPCFDA(1,90001,BPCIENS,.04)=BPCRTYPE
  1. S BPCFDA(1,90001,BPCIENS,.05)=BPCFAC
  1. S BPCFDA(1,90001,BPCIENS,.06)=BPCPROV
  1. S BPCFDA(1,90001,BPCIENS,.07)=BPCPVEND
  1. S BPCFDA(1,90001,BPCIENS,.08)=BPCTOIHS
  1. S BPCFDA(1,90001,BPCIENS,.09)=BPCTOPRV
  1. S BPCFDA(1,90001,BPCIENS,.11)=BPCPAYOR
  1. S BPCFDA(1,90001,BPCIENS,.12)=BPCICD
  1. S BPCFDA(1,90001,BPCIENS,.13)=BPCCPT
  1. S BPCFDA(1,90001,BPCIENS,.14)=BPCPTYPE
  1. S BPCFDA(1,90001,BPCIENS,.21)=BPCDRG
  1. S BPCFDA(1,90001,BPCIENS,.23)=BPCCLIN
  1. S BPCFDA(1,90001,BPCIENS,.27)=BPCCDAT ;DATE LAST MODIFIED FOR EDITS
  1. S BPCFDA(1,90001,BPCIENS,.32)=BPCPRIOR
  1. S BPCFDA(1,90001,BPCIENS,.34)=BPCSNDA
  1. S BPCFDA(1,90001,BPCIENS,1105)=BPCEBDAT
  1. S BPCFDA(1,90001,BPCIENS,1107)=BPCEEDAT
  1. S BPCFDA(1,90001,BPCIENS,1109)=BPCLOS
  1. S BPCFDA(1,90001,BPCIENS,1111)=BPCNOVIS
  1. S BPCFDA(1,90001,BPCIENS,1201)=BPCPURP
  1. S BPCFDA(1,90001,BPCIENS,1301)=BPCSNOTE
  1. S BPCFDA(1,90001,BPCIENS,1302)=BPCWDAYS
  1. D FILE^DIE("",BPCFDR,"BPCEMSG")
  1. I $D(BPCEMSG("DIERR")) S BPCERR=1
  1. L -^BMCREF(0)
  1. I 'BPCERR D MODLSCAT
  1. I 'BPCERR D MODHX
  1. I 'BPCERR D MODDXS
  1. I 'BPCERR D MODPXS
  1. Q
  1. MODDXS ;
  1. K BPCARY
  1. S BPCX="" F S BPCX=$O(^BMCDX("AD",BPCRIEN,BPCX)) Q:BPCX="" S BPCARY(BPCX)=""
  1. I $D(BPCARY) S DIK="^BMCDX(" D DEL
  1. K BPCARY,DA
  1. Q:BPCDXS=""
  1. D SETDXS^BPCRC5
  1. Q
  1. MODPXS ;
  1. K BPCARY
  1. S BPCX="" F S BPCX=$O(^BMCPX("AD",BPCRIEN,BPCX)) Q:BPCX="" S BPCARY(BPCX)=""
  1. I $D(BPCARY) S DIK="^BMCPX(" D DEL
  1. K BPCARY,DA
  1. Q:BPCPRCS=""
  1. D SETPRCS^BPCRC5
  1. Q
  1. MODHX ;
  1. K BPCARY
  1. S BPCX=0 F S BPCX=$O(^BMCREF(BPCRIEN,1,BPCX)) Q:BPCX="" S BPCARY(BPCX)=""
  1. I $D(BPCARY) S BPCSUB="1",DA(1)=BPCRIEN,DIK="^BMCREF("_DA(1)_","_BPCSUB_"," D DEL
  1. K BPCARY,DA
  1. Q:BPCHXS=""
  1. D ADDHX
  1. Q
  1. MODLSCAT ;
  1. K BPCARY
  1. S BPCX="" F S BPCX=$O(^BMCREF(BPCRIEN,21,"B",BPCX)) Q:BPCX="" S BPCQ="" F S BPCQ=$O(^BMCREF(BPCRIEN,21,"B",BPCX,BPCQ)) Q:BPCQ="" S BPCARY(BPCQ)=""
  1. I $D(BPCARY) S BPCSUB="21",DA(1)=BPCRIEN,DIK="^BMCREF("_DA(1)_","_BPCSUB_"," D DEL
  1. K BPCARY,DA
  1. Q:BPCLSCAT=""
  1. D ADDLSCAT
  1. Q
  1. DEL ;
  1. S DA="" F S DA=$O(BPCARY(DA)) Q:DA="" D ^DIK
  1. Q
  1. ADDHX ;
  1. K ^BPCTMP($J),BPCEMSG
  1. F BPCQ=1:1:$L(BPCHXS,BPCS2) S BPCX=$P(BPCHXS,BPCS2,BPCQ),^BPCTMP($J,BPCQ,0)=BPCX
  1. S BPCROOT="^BPCTMP("_$J_")"
  1. D WP^DIE(90001,BPCRIEN_",",1,"",BPCROOT,"BPCEMSG")
  1. I $D(BPCEMSG("DIERR")) S BPCERR=1
  1. K ^BPCTMP($J)
  1. Q
  1. ADDLSCAT ;
  1. L +^BMCREF(0):10 I '$T S BPCERR=1 Q
  1. K BPCFDA,BPCEMSG S BPCFDR="BPCFDA(1)",BPCIENS=BPCRIEN_","
  1. S BPCSUB=1 F BPCQ=1:1:$L(BPCLSCAT,BPCS2) S BPCX=$P(BPCLSCAT,BPCS2,BPCQ),BPCSUB=BPCSUB+1,BPCXR="BPCFDA(1,90001.21,"_""""_"+"_BPCSUB_","_BPCIENS_""""_",.01)" S @BPCXR=BPCX
  1. D UPDATE^DIE("",BPCFDR,"BPCIEN","BPCEMSG")
  1. L -^BMCREF(0)
  1. Q