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

DGYMBT.m

Go to the documentation of this file.
  1. DGYMBT ;ALB/REW - DGBT(392,B) X-REF CLEANUP - 12/9/94
  1. ;;5.3;Registration;**35,1015**;Aug 13, 1993;Build 21
  1. EN ; remove corrupt pointers from B x-REF OF DGBT(392,
  1. ;
  1. ; Optional input:
  1. ; DGNOKILL - If set to 1 will show corrupt nodes w/o deleting
  1. ; this is killed at end of routine
  1. ;
  1. N DGBTFL,DGBTIEN,DGBT
  1. W !,"Searching for corrupt 'B' cross-reference entries ...",!
  1. S DGBTFL=0
  1. S DGBT="" F S DGBT=$O(^DGBT(392,"B",DGBT)) Q:DGBT=+DGBT D CLEAN
  1. S DGBT=9999999.9999 F S DGBT=$O(^DGBT(392,"B",DGBT)) Q:DGBT="" D CLEAN
  1. W:'DGBTFL !!?5,"...None found."
  1. W !!,"Done."
  1. K DGNOKILL
  1. Q
  1. CLEAN ;
  1. S DGBTFL=1
  1. S DGBTIEN=$O(^DGBT(392,"B",DGBT,""))
  1. W !,?5,"Bad cross-reference: ^DGBT(392,""B"",",DGBT,",",DGBTIEN,")"
  1. I DGBTIEN'=DGBT!(DGBT=+DGBT)!(DGBT'>0) D
  1. .W !?5,"Non-standard corruption. Please review above record and remove manually."
  1. E D
  1. .Q:$G(DGNOKILL)
  1. .K ^DGBT(392,DGBT)
  1. .K ^DGBT(392,"B",DGBT)
  1. .W ?50,"...deleted."
  1. Q