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

ACDPPFIX.m

Go to the documentation of this file.
  1. ACDPPFIX ;IHS/ADC/EDE/KML - fix files pointing to patient;
  1. ;;4.1;CHEMICAL DEPENDENCY MIS;;MAY 11, 1998
  1. ;
  1. ;Go through CDMIS files and repoint bad patient pointers to 885.
  1. ;
  1. START ;
  1. D ^XBKVAR
  1. NEW F,P
  1. W !,"Checking CDMIS patient pointers"
  1. S ACDTIEN=0,ACDGBL="^ACDVIS(",ACDFP="4;5"
  1. F S ACDTIEN=$O(^ACDVIS(ACDTIEN)) Q:'ACDTIEN I $D(^ACDVIS(ACDTIEN,0)) S X=^(0) D CHK
  1. S ACDTIEN=0,ACDGBL="^ACDINTV(",ACDFP="1;2"
  1. F S ACDTIEN=$O(^ACDINTV(ACDTIEN)) Q:'ACDTIEN I $D(^ACDINTV(ACDTIEN,0)) S X=^(0) D CHK
  1. S ACDTIEN=0
  1. F S ACDTIEN=$O(^ACDPAT(ACDTIEN)) Q:'ACDTIEN I $D(^ACDPAT(ACDTIEN,0)) D
  1. . S ACDMIEN=0
  1. . F S ACDMIEN=$O(^ACDPAT(ACDTIEN,1,ACDMIEN)) Q:'ACDMIEN D
  1. .. I $D(^DPT(ACDMIEN,0)),$D(^AUPNPAT(ACDMIEN,0)) Q ; pointer is good
  1. .. S DIK="^ACDPAT("_ACDTIEN_",1,",DA=ACDMIEN,DA(1)=ACDTIEN
  1. .. D DIK^ACDFMC
  1. .. W "|"
  1. .. Q
  1. . Q
  1. Q
  1. ;
  1. CHK ; CHECK FOR BAD PATIENT POINTERS
  1. W:'(ACDTIEN#100) "."
  1. S F=$P(ACDFP,";"),P=$P(ACDFP,";",2)
  1. S Y=$P(X,U,P)
  1. Q:'Y ; no patient pointer
  1. I $D(^DPT(Y,0)),$D(^AUPNPAT(Y,0)) Q ; pointer is good
  1. S DIE=ACDGBL,DA=ACDTIEN,DR=F_"////885"
  1. D DIE^ACDFMC
  1. I $D(Y) W !,"Modify of "_ACDGBL_" failed for entry ",ACDTIEN Q
  1. W "|"
  1. Q