Annotation of freem_fileman/DDS02.m, revision 1.1
1.1 ! snw 1: DDS02 ;SFISC/MKO-OVERFLOW FROM ^DDS01 ;07:12 AM 12 Dec 1994
! 2: ;;21.0;VA FileMan;;Dec 28, 1994
! 3: ;Per VHA Directive 10-93-142, this routine should not be modified.
! 4: UNED ;Change was made to uneditable field
! 5: D MSG^DDSMSG("No editing allowed.",1)
! 6: S @DDSREFT@("F"_DDP,DDSDA,DDSFLD,"D")=DDSOLD S:$D(DDSU("X"))#2 ^("X")=DDSU("X")
! 7: Q
! 8: ;
! 9: SV ;Save
! 10: S DDACT="N"
! 11: I $G(DDSDN)=1,DDO D ERR3^DDS3 Q
! 12: I DDSSC'>1,'$G(DDSSEL),'$P(DDSSC(DDSSC),U,4) D S^DDS3 Q
! 13: N DDSEM
! 14: S DDSEM(1)="You cannot save changes at this level."
! 15: S DDSEM(2)="To close the current page, press <PF1>C."
! 16: D MSG^DDSMSG(.DDSEM,1)
! 17: Q
! 18: ;
! 19: EXT ;Process external form
! 20: I '$P($G(DDSU("DD")),U,2),$P($G(DDSU("DD")),U,2)["P" D PT
! 21: I $P($G(DDSO(0)),U,3)=2,$E($P($G(DDSO(20)),U))="P" D PTFO
! 22: ;
! 23: S:DDSOLD=Y DIR0N=1
! 24: S DDSX=X,DDSY=Y
! 25: I Y]"",$P($G(DDSU("DD")),U,2)["O",$G(^DD(DDP,DDSFLD,2))'?."^" K Y(0) X ^(2) S Y(0)=Y
! 26: ;
! 27: S DDSEXT=$G(Y(0,0),$G(Y(0),Y)),X=DDSY
! 28: ;
! 29: I $D(DDSO(14)) K DDSERROR X DDSO(14) I $D(DDSERROR)#2 D Q
! 30: . K DDSERROR,DDSY S DIR0("L")=DDSEXT,DDSCHKQ=1
! 31: ;
! 32: I DDSY="",DDSFLD'=.01 N DDSREQ D
! 33: . S DDSREQ=$P($G(DDSO(4)),U)
! 34: . S:$P($G(DDSU("A")),U)]"" DDSREQ=$P(DDSU("A"),U)
! 35: . I DDSREQ="",$P($G(DDSU("DD")),U,2)["R" S DDSREQ=1
! 36: I DDSY="",DDSFLD'=.01,DDSREQ D K DDSY Q
! 37: . S DIR0("L")=DDSEXT
! 38: . D MSG^DDSMSG("This is a required field.",1)
! 39: . S DDSCHKQ=1
! 40: ;
! 41: S DY=$P(DIR0,U),DX=$P(DIR0,U,2)
! 42: I DDSEXT'=DDSX D
! 43: . X IOXY
! 44: . S DDSX=$E(DDSEXT,1,$P(DIR0,U,3))
! 45: . I '$P(DIR0,U,6) S DDSX=DDSX_$J("",$P(DIR0,U,3)-$L(DDSEXT))
! 46: . E S DDSX=$J("",$P(DIR0,U,3)-$L(DDSEXT))_DDSX
! 47: . W $P(DDGLVID,DDGLDEL)_DDSX_$P(DDGLVID,DDGLDEL,10)
! 48: ;
! 49: S:$D(Y(0)) @DDSREFT@("F"_DDP,DDSDA,DDSFLD,"X")=DDSEXT
! 50: S @DDSREFT@("F"_DDP,DDSDA,DDSFLD,"D")=DDSY I DDSY="",$D(DDSU("X")) S ^("X")=""
! 51: K DDSY
! 52: Q
! 53: ;
! 54: PT ;Modify Y for pointer type fields
! 55: I $P(Y,U,3)=1 D
! 56: . S ^("ADD")=$G(@DDSREFT@("ADD"))+1,^("ADD",^("ADD"))=+Y_","_U_$P(DDSU("DD"),U,3)
! 57: S Y=$P(Y,U)
! 58: Q
! 59: ;
! 60: PTFO ;Modify Y for pointer type form only fields
! 61: I $P(Y,U,3)=1 D
! 62: . N R,I S R=""
! 63: . F I=1:1 Q:$D(DA(I))[0 S R=R_DA(I)_","
! 64: . S ^("ADD")=$G(@DDSREFT@("ADD"))+1,@DDSREFT@("ADD",@DDSREFT@("ADD"))=+Y_","_R_$S($P(DDSO(20),U,3):^DIC(+$P(DDSO(20),U,3),0,"GL"),1:U_$P($P(DDSO(20),U,3),":"))
! 65: S Y=$S(Y=-1:"",1:$P(Y,U))
! 66: Q
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>