Annotation of freem_fileman/DIEFW.m, revision 1.1

1.1     ! snw         1: DIEFW  ;SFISC/DPC-FILER WP ;7/29/94  15:37
        !             2:        ;;21.0;VA FileMan;;Dec 28, 1994
        !             3:        ;Per VHA Directive 10-93-142, this routine should not be modified.
        !             4: WP(DIEFF,DIEFIEN,DIEFFLD,DIEFWPFL,DIEFTSRC,DIEFOUT)    ;
        !             5: WPX    ;
        !             6:        S DIEFWPFL=$G(DIEFWPFL)
        !             7:        I '$D(DIQUIET) N DIQUIET S DIQUIET=1
        !             8:        I '$D(DIFM) N DIFM S DIFM=1 D INIZE^DIEFU
        !             9:        I DIEFIEN']"" D BLD^DIALOG(202,"IENS","IENS") G OUT
        !            10:        I '$$VERFLG^DIEFU(DIEFWPFL,"AZK") G OUT
        !            11:        I "@"'[DIEFTSRC I '$$VROOT^DIEFU(DIEFTSRC) G OUT
        !            12:        I '$$VFILE^DIEFU(DIEFF,"D") G OUT
        !            13:        I '$$VFIELD^DIEFU(DIEFF,DIEFFLD,"D") G OUT
        !            14:        I $P($G(^DD(+$P(^DD(DIEFF,DIEFFLD,0),U,2),.01,0)),U,2)'["W" N EI S EI("FILE")=DIEFF,EI("FIELD")=DIEFFLD D BLD^DIALOG(726,.EI,.EI) G OUT
        !            15:        I '$$VENTRY^DIEFU(DIEFF,DIEFIEN,"D") G OUT
        !            16:        N DIEFNODE,DIEFSPOT S DIEFSPOT=" " D GLRF^DIOU(DIEFF,DIEFFLD,.DIEFNODE,.DIEFSPOT)
        !            17:        N DEPTH,I,D
        !            18:        S DEPTH=$L(DIEFIEN,",")-1
        !            19:        F I=DEPTH:-1:1 S D="D"_(DEPTH-I) N @D S @D=$P(DIEFIEN,",",I)
        !            20:        K DEPTH,D,I
        !            21:        I DIEFWPFL["K" N DIEFLOCK D  G:'$D(DIEFLOCK) OUT
        !            22:        . S DIEFLOCK=DIEFNODE
        !            23:        . L +@DIEFLOCK:1 E  D
        !            24:        . . K DIEFLOCK
        !            25:        . . N EXT S EXT("FILE")=DIEFF,EXT("IENS")=DIEFIEN D BLD^DIALOG(110,"",.EXT)
        !            26:        D PUTWP(DIEFWPFL,DIEFTSRC,DIEFNODE)
        !            27:        I $D(DIEFLOCK) L -@DIEFLOCK
        !            28: OUT    I $G(DIEFOUT)]"" D CALLOUT^DIEFU(DIEFOUT)
        !            29:        Q
        !            30:        ;
        !            31: PUTWP(DIEFWPFL,DIEFTSRC,DIEFNODE)      ;
        !            32:        N BEGIN
        !            33:        I "@"[DIEFTSRC K @DIEFNODE Q
        !            34:        I '($D(@DIEFTSRC)\10) D BLD^DIALOG(305,DIEFTSRC,DIEFTSRC) Q
        !            35:        I $G(DIEFWPFL)'["A" S BEGIN=1 K @DIEFNODE
        !            36:        E  S BEGIN=$$NUMLNS(DIEFNODE)+1 K:BEGIN=1 @DIEFNODE
        !            37:        I $D(@DIEFTSRC@($O(@DIEFTSRC@(0)),0))#2 S DIEFWPFL=$G(DIEFWPFL)_"Z"
        !            38:        N LINECNT,INLINE S INLINE=0
        !            39:        F LINECNT=BEGIN:1 S INLINE=$O(@DIEFTSRC@(INLINE)) Q:INLINE=""  D
        !            40:        . I $G(DIEFWPFL)'["Z" S @DIEFNODE@(LINECNT,0)=@DIEFTSRC@(INLINE)
        !            41:        . E  S @DIEFNODE@(LINECNT,0)=$G(@DIEFTSRC@(INLINE,0))
        !            42:        S LINECNT=LINECNT-1
        !            43:        S @DIEFNODE@(0)=U_U_LINECNT_U_LINECNT_U_DT
        !            44:        Q
        !            45:        ;
        !            46: NUMLNS(DIWPROOT)       ;
        !            47:        N DIWPLN
        !            48:        S DIWPLN=$P($G(@DIWPROOT@(0)),U,3)
        !            49:        Q:DIWPLN DIWPLN
        !            50:        S DIWPLN=$O(@DIWPROOT@(""),-1)
        !            51:        Q +DIWPLN

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>