- DDSIT ;SFISC/MKO-INPUT TRANSFORMS ;09:07 AM 24 Oct 1994
- ;;22.2;VA FileMan;;Jan 05, 2016;Build 42
- ;;Per VA Directive 6402, this routine should not be modified.
- ;;Submitted to OSEHRA 5 January 2015 by the VISTA Expertise Network.
- ;;Based on Medsphere Systems Corporation's MSC FileMan 1051.
- ;;Licensed under the terms of the Apache License, Version 2.0.
- ;
- PFIELD ;Input transform for the PARENT FIELD field of the PAGE multiple
- ;of the Form file.
- N DDSMF
- S DDSMF=$$GETFLD^DDSLIB($P(X,","),$P(X,",",2),$P(X,",",3),DA(1))
- G QUIT
- ;
- PLINK ;Input transform for POINTER LINK field of the BLOCK multiple of
- ;the PAGE MULTIPLE of the Form file.
- N DDP,DDSCD,DDSERR,DDS
- ;
- S DDP=$P($G(^DIST(.403,DA(2),0)),U,8)
- I 'DDP D G QUIT
- . N P
- . S P(1)="PRIMARY FILE",P(2)="FORM"
- . D BLD^DIALOG(3011,.P)
- ;
- S DDS=DA(2)_U_$P(^DIST(.403,DA(2),0),U)
- D:X?1"FO(".E FO^DDSPTR(DDP,X,DA(2),DA(1))
- D:X'?1"FO(".E DD^DDSPTR(DDP,X,DA)
- G QUIT
- ;
- CEXPR ;Input transform for COMPUTED EXPRESSION field
- N DDP,DDSX,DDSNEXP
- S DDP=$P($G(^DIST(.404,DA(1),0)),U,2)
- D PARSE^DDSCOMP(DDP,X,DA(1),.DDSNEXP) G:$G(DIERR) QUIT
- ;
- S DDSX=X,X=DDSNEXP D ^DIM S:$D(X) X=DDSX
- Q
- ;
- QUIT ;Check error and quit
- I $G(DIERR) N DDSERR D MSG^DIALOG("AB",.DDSERR),EN^DDIOL(.DDSERR) K X
- Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HDDSIT 1293 printed Mar 13, 2025@21:48:04 Page 2
- DDSIT ;SFISC/MKO-INPUT TRANSFORMS ;09:07 AM 24 Oct 1994
- +1 ;;22.2;VA FileMan;;Jan 05, 2016;Build 42
- +2 ;;Per VA Directive 6402, this routine should not be modified.
- +3 ;;Submitted to OSEHRA 5 January 2015 by the VISTA Expertise Network.
- +4 ;;Based on Medsphere Systems Corporation's MSC FileMan 1051.
- +5 ;;Licensed under the terms of the Apache License, Version 2.0.
- +6 ;
- PFIELD ;Input transform for the PARENT FIELD field of the PAGE multiple
- +1 ;of the Form file.
- +2 NEW DDSMF
- +3 SET DDSMF=$$GETFLD^DDSLIB($PIECE(X,","),$PIECE(X,",",2),$PIECE(X,",",3),DA(1))
- +4 GOTO QUIT
- +5 ;
- PLINK ;Input transform for POINTER LINK field of the BLOCK multiple of
- +1 ;the PAGE MULTIPLE of the Form file.
- +2 NEW DDP,DDSCD,DDSERR,DDS
- +3 ;
- +4 SET DDP=$PIECE($GET(^DIST(.403,DA(2),0)),U,8)
- +5 IF 'DDP
- Begin DoDot:1
- +6 NEW P
- +7 SET P(1)="PRIMARY FILE"
- SET P(2)="FORM"
- +8 DO BLD^DIALOG(3011,.P)
- End DoDot:1
- GOTO QUIT
- +9 ;
- +10 SET DDS=DA(2)_U_$PIECE(^DIST(.403,DA(2),0),U)
- +11 if X?1"FO(".E
- DO FO^DDSPTR(DDP,X,DA(2),DA(1))
- +12 if X'?1"FO(".E
- DO DD^DDSPTR(DDP,X,DA)
- +13 GOTO QUIT
- +14 ;
- CEXPR ;Input transform for COMPUTED EXPRESSION field
- +1 NEW DDP,DDSX,DDSNEXP
- +2 SET DDP=$PIECE($GET(^DIST(.404,DA(1),0)),U,2)
- +3 DO PARSE^DDSCOMP(DDP,X,DA(1),.DDSNEXP)
- if $GET(DIERR)
- GOTO QUIT
- +4 ;
- +5 SET DDSX=X
- SET X=DDSNEXP
- DO ^DIM
- if $DATA(X)
- SET X=DDSX
- +6 QUIT
- +7 ;
- QUIT ;Check error and quit
- +1 IF $GET(DIERR)
- NEW DDSERR
- DO MSG^DIALOG("AB",.DDSERR)
- DO EN^DDIOL(.DDSERR)
- KILL X
- +2 QUIT