- DINIT08 ;SFISC/TKW - BRING DD FOR FILE .83, COMPILED ROUTINE ;9/9/94 13:33
- ;;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) G:X="" ^DINIT12 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
- Q Q
- ;;^DIC(.83,0,"GL")
- ;;=^DI(.83,
- ;;^DIC("B","COMPILED ROUTINE",.83)
- ;;=
- ;;^DIC(.83,"%D",0)
- ;;=^^5^5^2940908^
- ;;^DIC(.83,"%D",1,0)
- ;;=This file stores information used for creating compiled SORT routines.
- ;;^DIC(.83,"%D",2,0)
- ;;=During the FileMan SORT/PRINT option, if the user has specified that a
- ;;^DIC(.83,"%D",3,0)
- ;;=sort template is compiled, a routine name is generated by concatenating
- ;;^DIC(.83,"%D",4,0)
- ;;="DIZS" with the next available number from this list. A flag indicates
- ;;^DIC(.83,"%D",5,0)
- ;;=whether or not a number is currently in use.
- ;;^DD(.83,0)
- ;;=FIELD^^1^2
- ;;^DD(.83,0,"DDA")
- ;;=N
- ;;^DD(.83,0,"DT")
- ;;=2930331
- ;;^DD(.83,0,"IX","B",.83,.01)
- ;;=
- ;;^DD(.83,0,"IX","C",.83,1)
- ;;=
- ;;^DD(.83,0,"NM","COMPILED ROUTINE")
- ;;=
- ;;^DD(.83,.01,0)
- ;;=ROUTINE NUMBER^RNJ4,0X^^0;1^K:+X'=X!(X>9999)!(X<1)!(X?.E1"."1N.N) X S:$D(X) DINUM=X
- ;;^DD(.83,.01,1,0)
- ;;=^.1
- ;;^DD(.83,.01,1,1,0)
- ;;=.83^B
- ;;^DD(.83,.01,1,1,1)
- ;;=S ^DI(.83,"B",$E(X,1,30),DA)=""
- ;;^DD(.83,.01,1,1,2)
- ;;=K ^DI(.83,"B",$E(X,1,30),DA)
- ;;^DD(.83,.01,3)
- ;;=Type a Number between 1 and 9999, 0 Decimal Digits
- ;;^DD(.83,.01,21,0)
- ;;=^^5^5^2930331^^^
- ;;^DD(.83,.01,21,1,0)
- ;;=This is a number that can be used to generate the name of a compiled
- ;;^DD(.83,.01,21,2,0)
- ;;=SORT routine. The literal 'DIZS' is concatenated with the number to form
- ;;^DD(.83,.01,21,3,0)
- ;;=a compiled sort routine name. The routine will be in use only during
- ;;^DD(.83,.01,21,4,0)
- ;;=the running of a sort/print. After the print completes, the number
- ;;^DD(.83,.01,21,5,0)
- ;;=is again made available for use.
- ;;^DD(.83,.01,23,0)
- ;;=^^4^4^2930331^^
- ;;^DD(.83,.01,23,1,0)
- ;;=Generated and used during the FileMan sort/print option. Manipulated
- ;;^DD(.83,.01,23,2,0)
- ;;=in routine DIOZ, that is called from DIO1. DIOZ checks a
- ;;^DD(.83,.01,23,3,0)
- ;;=cross-reference on the 'IN USE' flag to find the next available number.
- ;;^DD(.83,.01,23,4,0)
- ;;=If none are available, a new one is added to the file.
- ;;^DD(.83,.01,"DT")
- ;;=2930719
- ;;^DD(.83,1,0)
- ;;=IN USE^S^y:YES, NUMBER IS IN USE;n:NOT IN USE;^0;2^Q
- ;;^DD(.83,1,1,0)
- ;;=^.1
- ;;^DD(.83,1,1,1,0)
- ;;=.83^C
- ;;^DD(.83,1,1,1,1)
- ;;=S ^DI(.83,"C",$E(X,1,30),DA)=""
- ;;^DD(.83,1,1,1,2)
- ;;=K ^DI(.83,"C",$E(X,1,30),DA)
- ;;^DD(.83,1,1,1,"%D",0)
- ;;=^^3^3^2930331^
- ;;^DD(.83,1,1,1,"%D",1,0)
- ;;=This cross-reference is used to control when a routine number is available
- ;;^DD(.83,1,1,1,"%D",2,0)
- ;;=for use in creating a compiled sort routine, during the FileMan sort/print
- ;;^DD(.83,1,1,1,"%D",3,0)
- ;;=option.
- ;;^DD(.83,1,1,1,"DT")
- ;;=2930331
- ;;^DD(.83,1,21,0)
- ;;=^^6^6^2930331^^
- ;;^DD(.83,1,21,1,0)
- ;;=During the running of the FileMan sort/print, if the sort is compiled,
- ;;^DD(.83,1,21,2,0)
- ;;=a cross-reference on this flag is checked to find the first available
- ;;^DD(.83,1,21,3,0)
- ;;=number that is not in use. The number is then marked in use and is
- ;;^DD(.83,1,21,4,0)
- ;;=concatenated on the end of literal 'DIZS' to create the routine name
- ;;^DD(.83,1,21,5,0)
- ;;=of the compiled routine. After the sort/print completes, the flag is
- ;;^DD(.83,1,21,6,0)
- ;;=then reset to 'NOT IN USE'.
- ;;^DD(.83,1,23,0)
- ;;=^^5^5^2930331^^
- ;;^DD(.83,1,23,1,0)
- ;;=Manipulated in routine DIOZ that is called from the FileMan sort routine
- ;;^DD(.83,1,23,2,0)
- ;;=DIO1. The cross-reference on this field is used to control when a number
- ;;^DD(.83,1,23,3,0)
- ;;=is available for use to create a compiled sort routine name. After
- ;;^DD(.83,1,23,4,0)
- ;;=the sort/print runs, the flag is set back to NOT IN USE so that the
- ;;^DD(.83,1,23,5,0)
- ;;=number is again available.
- ;;^DD(.83,1,"DT")
- ;;=2930331
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HDINIT08 4354 printed Feb 19, 2025@00:16:23 Page 2
- DINIT08 ;SFISC/TKW - BRING DD FOR FILE .83, COMPILED ROUTINE ;9/9/94 13:33
- +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=""
- GOTO ^DINIT12
- 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
- Q QUIT
- +1 ;;^DIC(.83,0,"GL")
- +2 ;;=^DI(.83,
- +3 ;;^DIC("B","COMPILED ROUTINE",.83)
- +4 ;;=
- +5 ;;^DIC(.83,"%D",0)
- +6 ;;=^^5^5^2940908^
- +7 ;;^DIC(.83,"%D",1,0)
- +8 ;;=This file stores information used for creating compiled SORT routines.
- +9 ;;^DIC(.83,"%D",2,0)
- +10 ;;=During the FileMan SORT/PRINT option, if the user has specified that a
- +11 ;;^DIC(.83,"%D",3,0)
- +12 ;;=sort template is compiled, a routine name is generated by concatenating
- +13 ;;^DIC(.83,"%D",4,0)
- +14 ;;="DIZS" with the next available number from this list. A flag indicates
- +15 ;;^DIC(.83,"%D",5,0)
- +16 ;;=whether or not a number is currently in use.
- +17 ;;^DD(.83,0)
- +18 ;;=FIELD^^1^2
- +19 ;;^DD(.83,0,"DDA")
- +20 ;;=N
- +21 ;;^DD(.83,0,"DT")
- +22 ;;=2930331
- +23 ;;^DD(.83,0,"IX","B",.83,.01)
- +24 ;;=
- +25 ;;^DD(.83,0,"IX","C",.83,1)
- +26 ;;=
- +27 ;;^DD(.83,0,"NM","COMPILED ROUTINE")
- +28 ;;=
- +29 ;;^DD(.83,.01,0)
- +30 ;;=ROUTINE NUMBER^RNJ4,0X^^0;1^K:+X'=X!(X>9999)!(X<1)!(X?.E1"."1N.N) X S:$D(X) DINUM=X
- +31 ;;^DD(.83,.01,1,0)
- +32 ;;=^.1
- +33 ;;^DD(.83,.01,1,1,0)
- +34 ;;=.83^B
- +35 ;;^DD(.83,.01,1,1,1)
- +36 ;;=S ^DI(.83,"B",$E(X,1,30),DA)=""
- +37 ;;^DD(.83,.01,1,1,2)
- +38 ;;=K ^DI(.83,"B",$E(X,1,30),DA)
- +39 ;;^DD(.83,.01,3)
- +40 ;;=Type a Number between 1 and 9999, 0 Decimal Digits
- +41 ;;^DD(.83,.01,21,0)
- +42 ;;=^^5^5^2930331^^^
- +43 ;;^DD(.83,.01,21,1,0)
- +44 ;;=This is a number that can be used to generate the name of a compiled
- +45 ;;^DD(.83,.01,21,2,0)
- +46 ;;=SORT routine. The literal 'DIZS' is concatenated with the number to form
- +47 ;;^DD(.83,.01,21,3,0)
- +48 ;;=a compiled sort routine name. The routine will be in use only during
- +49 ;;^DD(.83,.01,21,4,0)
- +50 ;;=the running of a sort/print. After the print completes, the number
- +51 ;;^DD(.83,.01,21,5,0)
- +52 ;;=is again made available for use.
- +53 ;;^DD(.83,.01,23,0)
- +54 ;;=^^4^4^2930331^^
- +55 ;;^DD(.83,.01,23,1,0)
- +56 ;;=Generated and used during the FileMan sort/print option. Manipulated
- +57 ;;^DD(.83,.01,23,2,0)
- +58 ;;=in routine DIOZ, that is called from DIO1. DIOZ checks a
- +59 ;;^DD(.83,.01,23,3,0)
- +60 ;;=cross-reference on the 'IN USE' flag to find the next available number.
- +61 ;;^DD(.83,.01,23,4,0)
- +62 ;;=If none are available, a new one is added to the file.
- +63 ;;^DD(.83,.01,"DT")
- +64 ;;=2930719
- +65 ;;^DD(.83,1,0)
- +66 ;;=IN USE^S^y:YES, NUMBER IS IN USE;n:NOT IN USE;^0;2^Q
- +67 ;;^DD(.83,1,1,0)
- +68 ;;=^.1
- +69 ;;^DD(.83,1,1,1,0)
- +70 ;;=.83^C
- +71 ;;^DD(.83,1,1,1,1)
- +72 ;;=S ^DI(.83,"C",$E(X,1,30),DA)=""
- +73 ;;^DD(.83,1,1,1,2)
- +74 ;;=K ^DI(.83,"C",$E(X,1,30),DA)
- +75 ;;^DD(.83,1,1,1,"%D",0)
- +76 ;;=^^3^3^2930331^
- +77 ;;^DD(.83,1,1,1,"%D",1,0)
- +78 ;;=This cross-reference is used to control when a routine number is available
- +79 ;;^DD(.83,1,1,1,"%D",2,0)
- +80 ;;=for use in creating a compiled sort routine, during the FileMan sort/print
- +81 ;;^DD(.83,1,1,1,"%D",3,0)
- +82 ;;=option.
- +83 ;;^DD(.83,1,1,1,"DT")
- +84 ;;=2930331
- +85 ;;^DD(.83,1,21,0)
- +86 ;;=^^6^6^2930331^^
- +87 ;;^DD(.83,1,21,1,0)
- +88 ;;=During the running of the FileMan sort/print, if the sort is compiled,
- +89 ;;^DD(.83,1,21,2,0)
- +90 ;;=a cross-reference on this flag is checked to find the first available
- +91 ;;^DD(.83,1,21,3,0)
- +92 ;;=number that is not in use. The number is then marked in use and is
- +93 ;;^DD(.83,1,21,4,0)
- +94 ;;=concatenated on the end of literal 'DIZS' to create the routine name
- +95 ;;^DD(.83,1,21,5,0)
- +96 ;;=of the compiled routine. After the sort/print completes, the flag is
- +97 ;;^DD(.83,1,21,6,0)
- +98 ;;=then reset to 'NOT IN USE'.
- +99 ;;^DD(.83,1,23,0)
- +100 ;;=^^5^5^2930331^^
- +101 ;;^DD(.83,1,23,1,0)
- +102 ;;=Manipulated in routine DIOZ that is called from the FileMan sort routine
- +103 ;;^DD(.83,1,23,2,0)
- +104 ;;=DIO1. The cross-reference on this field is used to control when a number
- +105 ;;^DD(.83,1,23,3,0)
- +106 ;;=is available for use to create a compiled sort routine name. After
- +107 ;;^DD(.83,1,23,4,0)
- +108 ;;=the sort/print runs, the flag is set back to NOT IN USE so that the
- +109 ;;^DD(.83,1,23,5,0)
- +110 ;;=number is again available.
- +111 ;;^DD(.83,1,"DT")
- +112 ;;=2930331