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

DIU0.m

Go to the documentation of this file.
  1. DIU0 ;SFISC/XAK-EDIT/DELETE A FILE ;12NOV2008
  1. ;;22.2;VA FileMan;;Jan 05, 2016;Build 42
  1. ;;Per VA Directive 6402, this routine should not be modified.
  1. ;;Submitted to OSEHRA 5 January 2015 by the VISTA Expertise Network.
  1. ;;Based on Medsphere Systems Corporation's MSC FileMan 1051.
  1. ;;Licensed under the terms of the Apache License, Version 2.0.
  1. ;
  1. DIPZ ;
  1. D PZ,DIEZ Q
  1. PZ ;Recompile PRINT Template routines
  1. S DIU2=$G(J(0)) N DIC,C,F,I,J,M,O,Q,S,T,V,W,Y
  1. F DIU0=0:0 S DIU0=$O(^DIPT("AF",DI,DA,DIU0)) Q:DIU0'>0 K ^(DIU0),^DIPT(DIU0,"ROU") S DMAX=^DD("ROU"),X=^DIPT(DIU0,"ROUOLD"),Y=DIU0,DIU1=DI D EN^DIPZ S DI=DIU1
  1. S J(0)=DIU2 D DT Q
  1. ;
  1. IN(DI,DA) ;Recompile INput Templates containing Field DA, File DI
  1. N J,I D IJ^DIUTL(DI)
  1. DIEZ N DL,DH,DQ,DIE,DIC,DNM,DR,M,T,F,Q,Y
  1. F DIU0=0:0 S DIU0=$O(^DIE("AF",DI,DA,DIU0)) Q:DIU0'>0 D
  1. . S X=$G(^DIE(DIU0,"ROUOLD"))
  1. . I X'?1(1A,1"%").7AN D I X'?1(1A,1"%").7AN D UNC^DIEZ(DIU0) Q
  1. .. S X=$P($G(^DIE(DIU0,"ROU")),U,2)
  1. . K ^DIE("AF",DI,DA,DIU0),^DIE(DIU0,"ROU")
  1. . S DMAX=^DD("ROU"),Y=DIU0,DIU1=DI
  1. . D EN^DIEZ S DI=DIU1
  1. DT I $D(^DD(DI,DA)) S:$P($G(^DIC(J(0),"%A")),U,2)-DT ^DD(DI,DA,"DT")=DT
  1. K DIU0,DIU1,DIU2 W ! Q
  1. ;
  1. EN ;
  1. I DIU,DIU(0)["S" G SUB
  1. I DIU,$D(^DIC(DIU,0,"GL")) S DIU=^("GL")
  1. G Q:"(,"'[$E($RE(DIU))!DIU S DIK="^DIC(",DG=$G(@(DIU_"0)")),(A,DA)=+$P(DG,U,2) G Q:'A
  1. N DIKLGLBL I DIU(0)["D" S DIKLGLBL=$$CREF^DILF(DIU)
  1. D ^DIK G 61
  1. 6 ;
  1. N DIKLGLBL
  1. S DA=DI,%=$$SCREEN^DIBT("^D SCREENQ^DICATT") Q:%=U G SCROLL:'%
  1. G ^DIU20
  1. ;
  1. SCROLL S DR=".01:10;"_$P(20,U,$S($D(^DIC(200,0)):^(0)["NEW PERSON",$D(^DIC(3,0)):^(0)["USER"!(^(0)["EMPLOY"),1:0))
  1. S DIE=1,(A,DA)=DI,DIER=1 D K DIER G N^DIU2:$D(DA)
  1. .N A D ^DIE
  1. 61 ; delete a FILE!
  1. S DQ(A)=0 K ^DIA(A) I $G(DIKLGLBL)]"" K @DIKLGLBL
  1. 63 W:DIU(0)["E" !?3,"Deleting the DATA DICTIONARY..." D KDD^DICATT4
  1. Q:DIU(0)["S" G Q:DIU(0)'["T"
  1. F DIK="^DIE(","^DIPT(","^DIBT(" K @(DIK_"""F""_A)") W:DIU(0)["E" !?3,"Deleting the "_$P(^(0),U)_"S..." S DA=.9 F S DA=$O(@(DIK_"DA)")) Q:DA'>0 I $D(^(DA,0)) S %=$P(^(0),U,4) I %=""!'$D(^DD(+%)) W:DIU(0)["E" "." D ^DIK
  1. D FORM^DDSDEL(A,DIU(0)["E")
  1. Q K A,DA,DG,DIK,DQ Q
  1. ;
  1. SUB G Q:'$D(^DD(DIU,0,"UP")) S DA(1)=^("UP"),DQ(DIU)=0
  1. I DIU(0)'["D" S A=DA(1) D 63 S A=DIU G SE
  1. S D0=DIU,S=";",Q=""""
  1. F I=1:1 Q:'$D(^DD(DIU,0,"UP")) S A=^("UP"),%=$O(^DD(A,"SB",DIU,0)) Q:%="" Q:'$D(^DD(A,%,0))#2 S %(I)=$P($P(^(0),U,4),S),DIU=A S:+%(I)'=%(I) %(I)=Q_%(I)_Q I I=1 S (O,M)=^(0)
  1. S DICL=I-2 F I=1:1:DICL+1 S I(I)=%(DICL-I+2)
  1. S I(0)=^DIC(DIU,0,"GL") K %
  1. D
  1. . N DIU0TOP,DIU0SFIL S DIU0TOP=A,DIU0SFIL=D0
  1. . N A,DA,D0,DICL,DIU,DQ,I,O,M,S,Q
  1. . D INDEX^DIKC(DIU0TOP,"","","","KiRW"_DIU0SFIL)
  1. D 63 S A=D0 D EN^DICATT4
  1. SE S DIK="^DD("_DA(1)_",",DA=$O(^DD(DA(1),"SB",A,0)) D ^DIK:DA
  1. K D0,DICL,E,I,M,O,Q,S,T,X,Y G Q