File:  [Coherent Logic Development] / freem_fileman / USER / DINIT08.m
Revision 1.1: download - view: text, annotated - select for diffs
Mon Apr 28 14:13:20 2025 UTC (3 months ago) by snw
Branches: MAIN
CVS tags: HEAD
Restructure repository

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

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>