Annotation of freem_fileman/DIDT.m, revision 1.1.1.1

1.1       snw         1: DIDT   ;SFISC/XAK-DATE/TIME UTILITY ;12/16/94  15:32
                      2:        ;;21.0;VA FileMan;;Dec 28, 1994
                      3:        ;Per VHA Directive 10-93-142, this routine should not be modified.
                      4: %DT    ;
                      5:        I $G(DUZ("LANG"))>1,($G(^DI(.85,DUZ("LANG"),20.2))]"") X ^(20.2) Q
                      6: CONT   ;
                      7:        K % S:$D(%DT)[0 %DT="" S:$G(DIQUIET)!($D(DDS)#2)!($D(ZTQUEUED)) %DT=$P(%DT,"E")_$P(%DT,"E",2) G NA:%DT'["A"
                      8:        W !,$S($D(%DT("A")):%DT("A"),1:"DATE: "),$S($D(%DT("B")):%DT("B")_"//",1:"")
                      9:        R X:$S($D(DTIME):DTIME,1:300) S:'$T X="^",DTOUT=1
                     10:        I $D(%DT("B")),X="" S X=%DT("B")
                     11:        I "^"[X S Y=-1 K %I,% Q
                     12: NA     S %(0)=X G 1:X'?.ANP
                     13:        F %=1:1:$L(X) Q:X?.UNP  S Y=$E(X,%) I Y?1L S X=$E(X,1,%-1)_$C($A(Y)-32)_$E(X,%+1,99)
                     14:        I %DT["E",X?."?" D HELP^%DTC G B
                     15:        I %DT["N",X?.N,+X=X G NO
                     16:        I X?1.A,(X["MID"!(X["NOON")) S X="@"_X
                     17:        I X'?1"NOV".E,X?1"N".1"OW".1P.E G N^%DTC:%DT["T"!(%DT["R") S X=$E(X,2,99),X="T"_$P(X,"OW")_$P(X,"OW",2)
                     18:        I X?1.N." "1.2A!(X?1.N1":"2N." ".2A)!(X?1.N1":"2N1":"2N." ".2A) S X="T@"_X
                     19:        I X?7N1"."1.N G R
                     20:        I X'["@",%DT'["R" G R
                     21:        I %DT'["T",%DT'["R" G NO
                     22:        S Y=$P(X,"@",2,9),X=$P(X,"@")
                     23:        F %=2,3 S %I=$P(Y,":",%) I %I,%I'?2N.PA G 1
                     24:        S:X="" X="T" S Y=$P(Y,":")_$P(Y,":",2)_$P(Y,":",3,9),%I=Y
                     25:        I Y?1.A S Y=$S(Y["MID":2400,Y["NOON":1200,1:"")
                     26:        G G:Y?4N,G1:Y?6N&(%DT["S"),1:Y'?1.N." ".1(1"AM",1"A",1"A.M",1"PM",1"P",1"P.M").P I %DT["R",Y="" G NO
                     27:        I %DT["S",Y?5.6N.A S %I=$P(Y,+Y,2),Y=$S(%I]"":$P(Y,%I),1:+Y),%(3)=$E(Y,$L(Y)-1,$L(Y)),Y=$E(Y,1,$L(Y)-2)_$S(%I["A":"A",%I["P":"P",1:"") G 1:%(3)>59,G:Y?4N
                     28:        S:Y<13 Y=Y*100 I %I["A" S Y=$S(Y=1200:2400,Y>1159:Y-1200,1:Y)
                     29:        E  I Y<1200,%I["P"!(Y<600) G 1:Y<100 S Y=Y+1200
                     30: G      G 1:Y>2400,1:Y#100>59,1:('Y&('$G(%(3)))) S %(1)=$S('Y:".0000",1:Y/10000) G R
                     31: G1     G 1:Y>240000!'Y,1:$E(Y,3,4)#100>59,1:$E(Y,5,6)#100>59 S %(1)=Y/1000000
                     32: R      I %DT["F"!(%DT["P") D TY S %(9)=%
                     33: 7      G 8:X'?7N.1".".E S Y=$E(X,8,16),%=$E(Y_"000000",2,7)
                     34:        G NO:%DT'["T"&Y
                     35:        I %DT["E",(%'?.N)!(%>240000)!($E(%,3,4)>59)!($E(%,5,6)>59) G NO
                     36:        S:Y %(1)=+Y S X=$E(X,4,7)_($E(X,1,3)+1700)
                     37:        I %DT["I" S X=$E(X,3,4)_$E(X,1,2)_$E(X,5,9)
                     38: 8      S %I=0,%="" I X'?.N G T^%DTC:"T+-"[$E(X),U:X["^",1:$E(X)?1P,X
                     39:        I %DT'["X",X\300=6!(X?2N) S (%I(1),%I(2))=0,%I(3)=X G 3
                     40:        F %I=0:1 S Y=$E(X,1,2),X=$E(X,3,9) G OT:Y="",1:%DT["X"&'Y S:%I=2 Y=Y_X,X="" S %I(%I+1)=Y
                     41:        ;
                     42: X      S Y=$E(X),X=$E(X,2,99) I Y?1N G A:%?.N,Y
                     43:        I Y?1A G A:%?.A,Y
                     44: OT     D:%]"" % G 1:%I>3,X:Y?1P,1:Y]"",@%I
                     45: Y      D % S %=Y G 1:%I>3,X
                     46: A      S %=%_Y G X
                     47: TY     S %=$H#1461,%=$H\1461*4+(%\365)+141-(%=1460) Q
                     48: 0      ;
                     49: 1      W:%DT["E"&'$D(DIER) $C(7),$S('$D(DDS):" ??",1:"")
                     50: B      G %DT:%DT["A",NO
                     51: U      S X="^",%(0)=X
                     52: NO     S Y=-1 G Q:%DT'["A",Q:X["^" W $C(7)," ??" G %DT
                     53: 2      I %I(2)>31,%DT'["X" S %I(3)=%I(2),%I(2)=0 G 1:'%I(2)&$G(%(1)) G 3
                     54:        D TY S %I(3)=% D PF^%DTC:$D(%(9)) G C
                     55: 3      I %I(3)?2N D  G C
                     56:        . I '$D(%(9)) D TY S %(9)=%
                     57:        . N A S A=$E(%(9))*100
                     58:        . I $E(%(9),2,3)=%I(3) S %I(3)=A+%I(3) Q
                     59:        . I %DT["P" S %I(3)=$S(%I(3)<$E(%(9),2,3):A,1:A-100)+%I(3) Q
                     60:        . I %DT["F" S %I(3)=$S(%I(3)>$E(%(9),2,3):A,1:A+100)+%I(3) Q
                     61:        . S %I(3)=A+%I(3) Q
                     62:        S %I(3)=%I(3)-1700 G 1:%I(3)'?3N
                     63: C      I %DT["I",%I(2)>0 S %=%I(2),%I(2)=%I(1),%I(1)=%
                     64:        I %I(1)>12 G 1
                     65:        I %I(2)>28,$E("303232332323",%I(1))+28<%I(2),%I(1)-2!(%I(2)-29)!(%I(3)#4)!(%I(3)=200) G 1
                     66: D      D P
                     67: E      I $D(%(1)) S:$D(%(3)) %(1)=$E(%(1)_"000",1,5)_%(3) S Y=+(Y_%(1))
                     68:        I %DT["E" S %=Y D DD W "  ("_Y_")" S Y=%
                     69:        I $D(%DT(0)) S %=%DT(0),%I=$S(%["-":Y,1:-Y) D:'% Z I $S(%DT["S":%,1:%\.0001/10000)+%I>0 G 1
                     70: Q      S X=%(0) K %,%I,%H Q
                     71: Z      I $P("NOW",%(0))="" S %=Y
                     72:        E  D NOW^%DTC
                     73:        S:%DT(0)["-" %=-% Q
                     74: DD     I $G(DUZ("LANG"))>1 S Y=$$OUT^DIALOGU(Y,"DD") Q
                     75:        Q:'Y  S Y=$S($E(Y,4,5):$P($T(M)," ",$E(Y,4,5)+2)_" ",1:"")_$S($E(Y,6,7):$E(Y,6,7)_", ",1:"")_($E(Y,1,3)+1700)_$S(Y[".":"."_$P(Y,".",2),1:"")
                     76:        I Y["." S Y=$P(Y,".")_"@"_$E(Y_0,14,15)_":"_$E(Y_"000",16,17)_$S($E(Y,18,19):":"_$E(Y_0,18,19),1:"")
                     77:        I $D(%DT)#2,%DT["S",Y["@",$P(Y,":",3)="" S Y=Y_":00"
                     78:        Q
                     79: P      S Y=%I(3)_$E(%I(1)+100,2,3)_$E(%I(2)+100,2,3) Q
                     80: %      I %DT["I",%?3.A S %I=9 Q
                     81:        I %?3.A S %=$F($T(M),$E(%,1,3))-4\4 I %>0,%I=1 S %I(1)=%,%=+%(0)
                     82:        S:(%<1&(%I+1'=3)) %I=9 S %I=%I+1,%I(%I)=%,%=""
                     83: M      ;; JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC

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