DINIT298 ;SFISC/MKO-FORM AND BLOCK FILES ;10:49 AM 30 Mar 1999
;;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.
;
F I=1:2 S X=$T(Q+I) Q:X="" S Y=$E($T(Q+I+1),4,999),X=$E(X,4,999) S:$A(Y)=126 I=I+1,Y=$E(Y,2,999)_$E($T(Q+I+1),5,99) S:$A(Y)=61 Y=$E(Y,2,999) S @X=Y
G ^DINIT299
Q Q
;;^DD(.4044,10,21,16,0)
;;=The variable X contains the current internal value of the field, DDSEXT
;;^DD(.4044,10,21,17,0)
;;=contains the current external value of the field, and DDSOLD contains the
;;^DD(.4044,10,21,18,0)
;;=previous internal value of the field.
;;^DD(.4044,11,0)
;;=PRE ACTION^K^^11;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
;;^DD(.4044,11,3)
;;=Enter standard MUMPS code that will be executed when the user navigates to this field.
;;^DD(.4044,11,9)
;;=@
;;^DD(.4044,11,21,0)
;;=^^2^2^2940629^
;;^DD(.4044,11,21,1,0)
;;=This MUMPS code is executed when the user reaches the field. The variable
;;^DD(.4044,11,21,2,0)
;;=X contains the current value of the field.
;;^DD(.4044,12,0)
;;=POST ACTION^K^^12;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
;;^DD(.4044,12,3)
;;=Enter standard MUMPS code that will be executed when the user leaves this field.
;;^DD(.4044,12,9)
;;=@
;;^DD(.4044,12,21,0)
;;=^^6^6^2950306^
;;^DD(.4044,12,21,1,0)
;;=This MUMPS code is executed when the user leaves the field, except on
;;^DD(.4044,12,21,2,0)
;;=time-out.
;;^DD(.4044,12,21,3,0)
;;=
;;^DD(.4044,12,21,4,0)
;;=The variable X contains the current internal value of the field, DDSEXT
;;^DD(.4044,12,21,5,0)
;;=contains the current external value of the field, and DDSOLD contains
;;^DD(.4044,12,21,6,0)
;;=the previous internal value of the field.
;;^DD(.4044,12,"DT")
;;=2950306
;;^DD(.4044,13,0)
;;=POST ACTION ON CHANGE^K^^13;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
;;^DD(.4044,13,3)
;;=Enter standard MUMPS code that will be executed when the user changes the value of this field.
;;^DD(.4044,13,9)
;;=@
;;^DD(.4044,13,21,0)
;;=^^4^4^2940629^
;;^DD(.4044,13,21,1,0)
;;=This MUMPS code is executed only if the user changed the value of the
;;^DD(.4044,13,21,2,0)
;;=field. The variables X and DDSEXT contain the new internal and external
;;^DD(.4044,13,21,3,0)
;;=values of the field, and DDSOLD contains the original internal value of
;;^DD(.4044,13,21,4,0)
;;=the field.
;;^DD(.4044,13,"DT")
;;=2931029
;;^DD(.4044,14,0)
;;=DATA VALIDATION^K^^14;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
;;^DD(.4044,14,3)
;;=This is Standard MUMPS code.
;;^DD(.4044,14,9)
;;=@
;;^DD(.4044,14,21,0)
;;=^^5^5^2940907^
;;^DD(.4044,14,21,1,0)
;;=Enter MUMPS code that will be executed after the user enters a new
;;^DD(.4044,14,21,2,0)
;;=value for this field. If the code sets DDSERROR, the value will
;;^DD(.4044,14,21,3,0)
;;=be rejected. You might also want to ring the bell and make a call to
;;^DD(.4044,14,21,4,0)
;;=HLP^DDSUTL to display a message to the user that indicates the reason the
;;^DD(.4044,14,21,5,0)
;;=value was rejected.
;;^DD(.4044,14,"DT")
;;=2930820
;;^DD(.4044,20.1,0)
;;=READ TYPE^S^D:DATE;F:FREE TEXT;L:LIST OR RANGE;N:NUMERIC;P:POINTER;S:SET OF CODES;Y:YES OR NO;DD:DATA DICTIONARY;^20;1^Q
;;^DD(.4044,20.1,21,0)
;;=^^1^1^2930812^^
;;^DD(.4044,20.1,21,1,0)
;;=Enter the data type of this form-only field.
;;^DD(.4044,20.1,"DT")
;;=2930812
;;^DD(.4044,20.2,0)
;;=PARAMETERS^F^^20;2^K:$L(X)>2!($L(X)<1) X
;;^DD(.4044,20.2,3)
;;=Answer must be 1-2 characters in length.
;;^DD(.4044,20.2,21,0)
;;=^^8^8^2940907^
;;^DD(.4044,20.2,21,1,0)
;;=This property coressponds to the parameters that can be used in the first
;;^DD(.4044,20.2,21,2,0)
;;=^-piece of the DIR(0) input variable to ^DIR. The "O" parameter has no
;;^DD(.4044,20.2,21,3,0)
;;=effect, since the Required property can be used to make a field required.
;;^DD(.4044,20.2,21,4,0)
;;=The "A" and "B" parameters also have no effect.
;;^DD(.4044,20.2,21,5,0)
;;=
;;^DD(.4044,20.2,21,6,0)
;;=Free text fields can use the "U" parameter.
;;^DD(.4044,20.2,21,7,0)
;;=List or Range fields can use the "C" parameter.
;;^DD(.4044,20.2,21,8,0)
;;=Set of Codes fields can use the "X" and "M" parameters.
;;^DD(.4044,20.2,"DT")
;;=2930812
;;^DD(.4044,20.3,0)
;;=QUALIFIERS^F^^20;3^K:$L(X)>100!($L(X)<1) X
;;^DD(.4044,20.3,3)
;;=Answer must be 1-100 characters in length.
;;^DD(.4044,20.3,21,0)
;;=^^14^14^2940908^^
;;^DD(.4044,20.3,21,1,0)
;;=This property corresponds to the second ^-piece of the DIR(0) input
;;^DD(.4044,20.3,21,2,0)
;;=variable to ^DIR. For Data Dictionary type form only fields, it
;;^DD(.4044,20.3,21,3,0)
;;=identifies the file and field.
;;^DD(.4044,20.3,21,4,0)
;;=
;;^DD(.4044,20.3,21,5,0)
;;=Valid qualifiers are:
;;^DD(.4044,20.3,21,6,0)
;;=
;;^DD(.4044,20.3,21,7,0)
;;= Date Minimum date:Maximum date:%DT
;;^DD(.4044,20.3,21,8,0)
;;= Free Text Minimum length:Maximum length
;;^DD(.4044,20.3,21,9,0)
;;= List or Range Minimum:Maximum:Maximum decimals
;;^DD(.4044,20.3,21,10,0)
;;= Numeric Minimum:Maximum:Maximum decimals
;;^DD(.4044,20.3,21,11,0)
;;= Pointer Global root or #:DIC(0)
;;^DD(.4044,20.3,21,12,0)
;;= Set of Codes Code:Stands for;Code:Stands for;
;;^DD(.4044,20.3,21,13,0)
;;= Yes or No
;;^DD(.4044,20.3,21,14,0)
;;= Data Dictionary file#,field#
;;^DD(.4044,20.3,"DT")
;;=2930812
;;^DD(.4044,21,0)
;;=HELP^.404421^^21;0
;;^DD(.4044,21,"DT")
;;=2930812
;;^DD(.4044,22,0)
;;=INPUT TRANSFORM^K^^22;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
;;^DD(.4044,22,3)
;;=Enter standard MUMPS code.
;;^DD(.4044,22,9)
;;=@
;;^DD(.4044,22,21,0)
;;=^^3^3^2940908^
;;^DD(.4044,22,21,1,0)
;;=This is MUMPS code that can examine X, the value entered by the user, and
;;^DD(.4044,22,21,2,0)
;;=kill X if it is invalid. It corresponds to the third ^-piece of the
;;^DD(.4044,22,21,3,0)
;;=DIR(0) input variable to ^DIR.
;;^DD(.4044,22,"DT")
;;=2930812
;;^DD(.4044,23,0)
;;=SAVE CODE^K^^23;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
;;^DD(.4044,23,3)
;;=Enter Standard MUMPS code.
;;^DD(.4044,23,9)
;;=@
;;^DD(.4044,23,21,0)
;;=^^8^8^2930920^^
;;^DD(.4044,23,21,1,0)
;;=This is MUMPS code that is executed when the user issues a Save command
;;^DD(.4044,23,21,2,0)
;;=and the value of this field changed since the last Save. You can use this
;;^DD(.4044,23,21,3,0)
;;=field to save in global or local variables the value the user enters into
;;^DD(.4044,23,21,4,0)
;;=this field. The following variables are available:
;;^DD(.4044,23,21,5,0)
;;=
;;^DD(.4044,23,21,6,0)
;;= X = The new value of the field in internal form
;;^DD(.4044,23,21,7,0)
;;= DDSEXT = The new value of the field in external form
;;^DD(.4044,23,21,8,0)
;;= DDSOLD = The original (pre-save) value of the field in internal form
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HDINIT298 7237 printed Dec 13, 2024@02:51:21 Page 2
DINIT298 ;SFISC/MKO-FORM AND BLOCK FILES ;10:49 AM 30 Mar 1999
+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 ;
+7 FOR I=1:2
SET X=$TEXT(Q+I)
if X=""
QUIT
SET Y=$EXTRACT($TEXT(Q+I+1),4,999)
SET X=$EXTRACT(X,4,999)
if $ASCII(Y)=126
SET I=I+1
SET Y=$EXTRACT(Y,2,999)_$EXTRACT($TEXT(Q+I+1),5,99)
if $ASCII(Y)=61
SET Y=$EXTRACT(Y,2,999)
SET @X=Y
+8 GOTO ^DINIT299
Q QUIT
+1 ;;^DD(.4044,10,21,16,0)
+2 ;;=The variable X contains the current internal value of the field, DDSEXT
+3 ;;^DD(.4044,10,21,17,0)
+4 ;;=contains the current external value of the field, and DDSOLD contains the
+5 ;;^DD(.4044,10,21,18,0)
+6 ;;=previous internal value of the field.
+7 ;;^DD(.4044,11,0)
+8 ;;=PRE ACTION^K^^11;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
+9 ;;^DD(.4044,11,3)
+10 ;;=Enter standard MUMPS code that will be executed when the user navigates to this field.
+11 ;;^DD(.4044,11,9)
+12 ;;=@
+13 ;;^DD(.4044,11,21,0)
+14 ;;=^^2^2^2940629^
+15 ;;^DD(.4044,11,21,1,0)
+16 ;;=This MUMPS code is executed when the user reaches the field. The variable
+17 ;;^DD(.4044,11,21,2,0)
+18 ;;=X contains the current value of the field.
+19 ;;^DD(.4044,12,0)
+20 ;;=POST ACTION^K^^12;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
+21 ;;^DD(.4044,12,3)
+22 ;;=Enter standard MUMPS code that will be executed when the user leaves this field.
+23 ;;^DD(.4044,12,9)
+24 ;;=@
+25 ;;^DD(.4044,12,21,0)
+26 ;;=^^6^6^2950306^
+27 ;;^DD(.4044,12,21,1,0)
+28 ;;=This MUMPS code is executed when the user leaves the field, except on
+29 ;;^DD(.4044,12,21,2,0)
+30 ;;=time-out.
+31 ;;^DD(.4044,12,21,3,0)
+32 ;;=
+33 ;;^DD(.4044,12,21,4,0)
+34 ;;=The variable X contains the current internal value of the field, DDSEXT
+35 ;;^DD(.4044,12,21,5,0)
+36 ;;=contains the current external value of the field, and DDSOLD contains
+37 ;;^DD(.4044,12,21,6,0)
+38 ;;=the previous internal value of the field.
+39 ;;^DD(.4044,12,"DT")
+40 ;;=2950306
+41 ;;^DD(.4044,13,0)
+42 ;;=POST ACTION ON CHANGE^K^^13;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
+43 ;;^DD(.4044,13,3)
+44 ;;=Enter standard MUMPS code that will be executed when the user changes the value of this field.
+45 ;;^DD(.4044,13,9)
+46 ;;=@
+47 ;;^DD(.4044,13,21,0)
+48 ;;=^^4^4^2940629^
+49 ;;^DD(.4044,13,21,1,0)
+50 ;;=This MUMPS code is executed only if the user changed the value of the
+51 ;;^DD(.4044,13,21,2,0)
+52 ;;=field. The variables X and DDSEXT contain the new internal and external
+53 ;;^DD(.4044,13,21,3,0)
+54 ;;=values of the field, and DDSOLD contains the original internal value of
+55 ;;^DD(.4044,13,21,4,0)
+56 ;;=the field.
+57 ;;^DD(.4044,13,"DT")
+58 ;;=2931029
+59 ;;^DD(.4044,14,0)
+60 ;;=DATA VALIDATION^K^^14;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
+61 ;;^DD(.4044,14,3)
+62 ;;=This is Standard MUMPS code.
+63 ;;^DD(.4044,14,9)
+64 ;;=@
+65 ;;^DD(.4044,14,21,0)
+66 ;;=^^5^5^2940907^
+67 ;;^DD(.4044,14,21,1,0)
+68 ;;=Enter MUMPS code that will be executed after the user enters a new
+69 ;;^DD(.4044,14,21,2,0)
+70 ;;=value for this field. If the code sets DDSERROR, the value will
+71 ;;^DD(.4044,14,21,3,0)
+72 ;;=be rejected. You might also want to ring the bell and make a call to
+73 ;;^DD(.4044,14,21,4,0)
+74 ;;=HLP^DDSUTL to display a message to the user that indicates the reason the
+75 ;;^DD(.4044,14,21,5,0)
+76 ;;=value was rejected.
+77 ;;^DD(.4044,14,"DT")
+78 ;;=2930820
+79 ;;^DD(.4044,20.1,0)
+80 ;;=READ TYPE^S^D:DATE;F:FREE TEXT;L:LIST OR RANGE;N:NUMERIC;P:POINTER;S:SET OF CODES;Y:YES OR NO;DD:DATA DICTIONARY;^20;1^Q
+81 ;;^DD(.4044,20.1,21,0)
+82 ;;=^^1^1^2930812^^
+83 ;;^DD(.4044,20.1,21,1,0)
+84 ;;=Enter the data type of this form-only field.
+85 ;;^DD(.4044,20.1,"DT")
+86 ;;=2930812
+87 ;;^DD(.4044,20.2,0)
+88 ;;=PARAMETERS^F^^20;2^K:$L(X)>2!($L(X)<1) X
+89 ;;^DD(.4044,20.2,3)
+90 ;;=Answer must be 1-2 characters in length.
+91 ;;^DD(.4044,20.2,21,0)
+92 ;;=^^8^8^2940907^
+93 ;;^DD(.4044,20.2,21,1,0)
+94 ;;=This property coressponds to the parameters that can be used in the first
+95 ;;^DD(.4044,20.2,21,2,0)
+96 ;;=^-piece of the DIR(0) input variable to ^DIR. The "O" parameter has no
+97 ;;^DD(.4044,20.2,21,3,0)
+98 ;;=effect, since the Required property can be used to make a field required.
+99 ;;^DD(.4044,20.2,21,4,0)
+100 ;;=The "A" and "B" parameters also have no effect.
+101 ;;^DD(.4044,20.2,21,5,0)
+102 ;;=
+103 ;;^DD(.4044,20.2,21,6,0)
+104 ;;=Free text fields can use the "U" parameter.
+105 ;;^DD(.4044,20.2,21,7,0)
+106 ;;=List or Range fields can use the "C" parameter.
+107 ;;^DD(.4044,20.2,21,8,0)
+108 ;;=Set of Codes fields can use the "X" and "M" parameters.
+109 ;;^DD(.4044,20.2,"DT")
+110 ;;=2930812
+111 ;;^DD(.4044,20.3,0)
+112 ;;=QUALIFIERS^F^^20;3^K:$L(X)>100!($L(X)<1) X
+113 ;;^DD(.4044,20.3,3)
+114 ;;=Answer must be 1-100 characters in length.
+115 ;;^DD(.4044,20.3,21,0)
+116 ;;=^^14^14^2940908^^
+117 ;;^DD(.4044,20.3,21,1,0)
+118 ;;=This property corresponds to the second ^-piece of the DIR(0) input
+119 ;;^DD(.4044,20.3,21,2,0)
+120 ;;=variable to ^DIR. For Data Dictionary type form only fields, it
+121 ;;^DD(.4044,20.3,21,3,0)
+122 ;;=identifies the file and field.
+123 ;;^DD(.4044,20.3,21,4,0)
+124 ;;=
+125 ;;^DD(.4044,20.3,21,5,0)
+126 ;;=Valid qualifiers are:
+127 ;;^DD(.4044,20.3,21,6,0)
+128 ;;=
+129 ;;^DD(.4044,20.3,21,7,0)
+130 ;;= Date Minimum date:Maximum date:%DT
+131 ;;^DD(.4044,20.3,21,8,0)
+132 ;;= Free Text Minimum length:Maximum length
+133 ;;^DD(.4044,20.3,21,9,0)
+134 ;;= List or Range Minimum:Maximum:Maximum decimals
+135 ;;^DD(.4044,20.3,21,10,0)
+136 ;;= Numeric Minimum:Maximum:Maximum decimals
+137 ;;^DD(.4044,20.3,21,11,0)
+138 ;;= Pointer Global root or #:DIC(0)
+139 ;;^DD(.4044,20.3,21,12,0)
+140 ;;= Set of Codes Code:Stands for;Code:Stands for;
+141 ;;^DD(.4044,20.3,21,13,0)
+142 ;;= Yes or No
+143 ;;^DD(.4044,20.3,21,14,0)
+144 ;;= Data Dictionary file#,field#
+145 ;;^DD(.4044,20.3,"DT")
+146 ;;=2930812
+147 ;;^DD(.4044,21,0)
+148 ;;=HELP^.404421^^21;0
+149 ;;^DD(.4044,21,"DT")
+150 ;;=2930812
+151 ;;^DD(.4044,22,0)
+152 ;;=INPUT TRANSFORM^K^^22;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
+153 ;;^DD(.4044,22,3)
+154 ;;=Enter standard MUMPS code.
+155 ;;^DD(.4044,22,9)
+156 ;;=@
+157 ;;^DD(.4044,22,21,0)
+158 ;;=^^3^3^2940908^
+159 ;;^DD(.4044,22,21,1,0)
+160 ;;=This is MUMPS code that can examine X, the value entered by the user, and
+161 ;;^DD(.4044,22,21,2,0)
+162 ;;=kill X if it is invalid. It corresponds to the third ^-piece of the
+163 ;;^DD(.4044,22,21,3,0)
+164 ;;=DIR(0) input variable to ^DIR.
+165 ;;^DD(.4044,22,"DT")
+166 ;;=2930812
+167 ;;^DD(.4044,23,0)
+168 ;;=SAVE CODE^K^^23;E1,245^K:$L(X)>245 X D:$D(X) ^DIM
+169 ;;^DD(.4044,23,3)
+170 ;;=Enter Standard MUMPS code.
+171 ;;^DD(.4044,23,9)
+172 ;;=@
+173 ;;^DD(.4044,23,21,0)
+174 ;;=^^8^8^2930920^^
+175 ;;^DD(.4044,23,21,1,0)
+176 ;;=This is MUMPS code that is executed when the user issues a Save command
+177 ;;^DD(.4044,23,21,2,0)
+178 ;;=and the value of this field changed since the last Save. You can use this
+179 ;;^DD(.4044,23,21,3,0)
+180 ;;=field to save in global or local variables the value the user enters into
+181 ;;^DD(.4044,23,21,4,0)
+182 ;;=this field. The following variables are available:
+183 ;;^DD(.4044,23,21,5,0)
+184 ;;=
+185 ;;^DD(.4044,23,21,6,0)
+186 ;;= X = The new value of the field in internal form
+187 ;;^DD(.4044,23,21,7,0)
+188 ;;= DDSEXT = The new value of the field in external form
+189 ;;^DD(.4044,23,21,8,0)
+190 ;;= DDSOLD = The original (pre-save) value of the field in internal form