73 lines
2.9 KiB
Mathematica
73 lines
2.9 KiB
Mathematica
MAGGTU5 ;WOIFO/GEK - Silent Utilities ; [ 06/20/2001 08:57 ]
|
|
;;3.0;IMAGING;**8,48**;Jan 11, 2005
|
|
;; +---------------------------------------------------------------+
|
|
;; | Property of the US Government. |
|
|
;; | No permission to copy or redistribute this software is given. |
|
|
;; | Use of unreleased versions of this software requires the user |
|
|
;; | to execute a written test agreement with the VistA Imaging |
|
|
;; | Development Office of the Department of Veterans Affairs, |
|
|
;; | telephone (301) 734-0100. |
|
|
;; | |
|
|
;; | The Food and Drug Administration classifies this software as |
|
|
;; | a medical device. As such, it may not be changed in any way. |
|
|
;; | Modifications to this software may result in an adulterated |
|
|
;; | medical device under 21CFR820, the use of which is considered |
|
|
;; | to be a violation of US Federal Statutes. |
|
|
;; +---------------------------------------------------------------+
|
|
;;
|
|
Q
|
|
CLOSE ;Close Execute for the WS.DAT Device
|
|
Q:IO["nul" ; OPENM calls this 'close execute' twice, we get "" array.
|
|
N MAGDT
|
|
; IF NOT CALLED FROM IMAGING ROUTINE, USE ^TMP GLOBAL
|
|
I '$D(MAGRPTY) S MAGRPTY=$NA(^TMP($J,"WSDAT")) K @MAGRPTY
|
|
S MAGDT=$$FMTE^XLFDT($$NOW^XLFDT,"1P")
|
|
N I S I=3
|
|
U IO W !!,"** END REPORT "_MAGDT_" **",!
|
|
S X=$$REWIND^%ZIS(IO,IOT,IOPAR) I 'X S @MAGRPTY@(0)="0^Failed: Rewinding to beginning of Host File. Call IRM" Q
|
|
IF $$NEWERR^%ZTER N $ETRAP,$ESTACK S $ETRAP="D EOF^MAGGTU5"
|
|
E S X="EOF^MAGGTU5",@^%ZOSF("TRAP")
|
|
F U IO R X:5 D Q:X["** END REPORT "_MAGDT_" **"
|
|
. I X[$C(8)_"_" D
|
|
. . ;strip backspaces and separate underline if they exist saf 4/19/00
|
|
. . S @MAGRPTY@(I)=$E(X,1,$FIND(X,$P(X,$C(8)))-1),I=I+1
|
|
. . S @MAGRPTY@(I)=$E(X,$FIND(X,$P(X,"_")),$L(X)),I=I+1
|
|
. E S @MAGRPTY@(I)=$$TRIM(X),I=I+1
|
|
S @MAGRPTY@(0)="1^Report Complete"
|
|
Q
|
|
EOF ;
|
|
S X=$$EC^%ZOSV
|
|
I ((X["ENDOFFILE")!(X["EOF")) S @MAGRPTY(0)="1^Report Complete" Q
|
|
D ^%ZTER
|
|
S @MAGRPTY@(0)="0^ERROR: "_$$EC^%ZOSV
|
|
Q
|
|
;
|
|
DTTM(MAGRY,INDT,NOFDT) ; RPC [MAGG DTTM] Call to return DHCP Date/Time
|
|
; Output MAGRY
|
|
; 0^Error message
|
|
; 1 ^ External Date in "Jan 04, 1999@11:55" format ^ Internal DateTime
|
|
; INDT is the input, it is validated and the external value is returned.
|
|
; NOFDT 1|0
|
|
; Flag to Not Allow Future Dates.
|
|
; prior to P48 we allowed future dates. Now the Parameter can stop that.
|
|
;
|
|
N INPUT,Y
|
|
S X=INDT,NOFDT=+$G(NOFDT)
|
|
S %DT="TS" D ^%DT
|
|
I Y=-1 S MAGRY="0^Incorrect date format: "_X Q
|
|
S MAGRY="1^"_$$FMTE^XLFDT(Y,"1")_U_Y
|
|
Q:'NOFDT
|
|
; Now error if future.
|
|
S INPUT=$P(Y,".",1)
|
|
D NOW^%DTC
|
|
S X=$P(X,".",1)
|
|
I INPUT]X S MAGRY="0^Future dates are not allowed."
|
|
Q
|
|
TRIM(X) ;trim backspace characters
|
|
N I,Y
|
|
S Y=X
|
|
I X[$C(8) D
|
|
. S Y=""
|
|
. F I=1:1:$L(X) I $E(X,I)'=$C(8) S Y=Y_$E(X,I)
|
|
Q Y
|