DINIT08 ;SFISC/TKW - BRING DD FOR FILE .83, COMPILED ROUTINE ;9/9/94 13:33
;;22.0;VA FileMan;;Mar 30, 1999
;Per VHA Directive 10-93-142, this routine should not be modified.
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
DINIT08 ;SFISC/TKW - BRING DD FOR FILE .83, COMPILED ROUTINE ;9/9/94 13:33
+1 ;;22.0;VA FileMan;;Mar 30, 1999
+2 ;Per VHA Directive 10-93-142, this routine should not be modified.
+3 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