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

BWPATCH2.m

Go to the documentation of this file.
  1. BWPATCH2 ;IHS/ANMC/MWR - UTIL: MOSTLY PATIENT DATA [ 01/23/97 4:37 PM ];15-Feb-2003 22:03;PLS
  1. ;;2.0;WOMEN'S HEALTH;**2,8**;JAN 21, 1997
  1. ;;* MICHAEL REMILLARD, DDS * ALASKA NATIVE MEDICAL CENTER *
  1. ;; PATCH ROUTINE TO FIX "AOPEN" XREF IN ^BWNOT( GLOBAL
  1. ;; (BW NOTIFICATION FILE).
  1. ;
  1. ;----------
  1. START ;EP
  1. D INIT
  1. D MAIN
  1. D EOJ
  1. Q
  1. ;
  1. ;----------
  1. INIT ;EP - Initialization.
  1. D SETVARS^BWUTL5
  1. S IOP=$I D ^%ZIS
  1. S BWPTITL="v2.0 PATCH PROGRAM"
  1. Q
  1. ;
  1. ;----------
  1. MAIN ;EP - Main program.
  1. D TITLE^BWUTL5(BWPTITL)
  1. D TEXT1
  1. W !!," Do you wish to apply the patch and reindex the data now?"
  1. S DIR("?")=" Enter YES to apply the patch, enter NO to abort."
  1. S DIR(0)="Y",DIR("A")=" Enter Yes or No"
  1. D ^DIR W !
  1. I $D(DIRUT)!(Y<1) D NOCHANGE Q
  1. ;
  1. D TITLE^BWUTL5(BWPTITL)
  1. I '$D(^DD(9002086.4))!('$D(^BWNOT(0))) D TEXT2,NOCHANGE Q
  1. ;
  1. ;---> Correct xref logic in ^DD.
  1. N BWY
  1. S BWY="I ""o""[$P(^BWNOT(DA,0),U,14) S ^BWNOT(""AOPEN"",X,DA)="""""
  1. S ^DD(9002086.4,.02,1,1,1)=BWY
  1. S BWY="K ^BWNOT(""AOPEN"",X,DA)"
  1. S ^DD(9002086.4,.02,1,1,2)=BWY
  1. ;
  1. ;---> Reindex AOPEN xref.
  1. K ^BWNOT("AOPEN")
  1. S BWINC=$J(($P(^BWNOT(0),U,4))/50,0,0) S:BWINC<1 BWINC=1
  1. W !!?14,"Reindexing..."
  1. W !!!?14,"0% 50% 100%"
  1. W !?14,"----------------------------------------------------"
  1. W !?14,"["
  1. N I,Y S BWIEN=0,BWCOUNT=0
  1. F I=1:1 S BWIEN=$O(^BWNOT(BWIEN)) Q:'BWIEN D
  1. .I '(I#BWINC)&(BWCOUNT<51) W "=" S BWCOUNT=BWCOUNT+1
  1. .S Y=^BWNOT(BWIEN,0)
  1. .Q:"o"'[$P(Y,U,14)
  1. .S ^BWNOT("AOPEN",$P(Y,U,2),BWIEN)=""
  1. I BWCOUNT<50 F I=1:1:50-BWCOUNT W "="
  1. W "]"
  1. W !!!!?14,"Patch applied successfully! Job complete.",!!
  1. D DIRZ^BWUTL3
  1. Q
  1. ;
  1. ;----------
  1. EOJ ;EP - End of job.
  1. D KILLALL^BWUTL8 K BWINC
  1. Q
  1. ;
  1. ;----------
  1. TEXT1 ;EP
  1. ;;This routine will correct an error in the crossreference logic
  1. ;;in the data dictionary for Women's Health Notifications. It will
  1. ;;then reindex the "AOPEN" crossreference on field .02 of the
  1. ;;BW NOTIFICATIONS File #9002086.4.
  1. ;;
  1. ;;NO user/programmer action is required. The program will present a
  1. ;;progress bar 0%-100% during the job, which may take several minutes.
  1. ;;
  1. S BWTAB=5,BWLINL="TEXT1" D PRINTX
  1. Q
  1. ;
  1. ;----------
  1. TEXT2 ;EP
  1. ;;The BW NOTIFICATIONS File does not appear to be loaded on this
  1. ;;system. Please contact your Women's Health support person or
  1. ;;Mike Remillard at (907)696-7472."
  1. ;;
  1. S BWTAB=5,BWLINL="TEXT2" D PRINTX
  1. Q
  1. ;
  1. ;----------
  1. NOCHANGE ;EP
  1. W !?25,"NO CHANGES MADE!" D DIRZ^BWUTL3
  1. Q
  1. ;
  1. ;----------
  1. PRINTX ;EP
  1. N I,T,X S T="" F I=1:1:BWTAB S T=T_" "
  1. F I=1:1 S X=$T(@BWLINL+I) Q:X'[";;" W !,T,$P(X,";;",2)
  1. Q