- LEXXFI2 ; ISL/KER - File Info - Checksums ; 07/28/2004
- ;;2.0;LEXICON UTILITY;**32**;Sep 23, 1996;Build 10
- Q
- ;
- ; Global Variables
- ; None
- ;
- ; External References
- ; None
- ;
- Q
- ONE(X) ; Checksum for ONE file
- N LEXENV S LEXENV=$$ENV^LEXXFI Q:+LEXENV'>0
- N LEXFI,LEXFC,LEXMOD,LEXMUL,LEXNM,LEXTXT,LEXTT,LEXLDR,LEXTND
- N LEXTSND,LEXTCS,LEXTSCS,LEXEX,LEXLINE,LEXCTLC
- S (LEXTND,LEXTSND,LEXTCS,LEXTSCS,LEXMOD,LEXMUL)=0,LEXFI=$G(X) Q:+LEXFI'>0
- S LEXLDR=$$LDR^LEXXFI8(LEXFI),LEXMOD=LEXMOD+($$MOD^LEXXFI8(LEXFI))
- S LEXNM=$$FN^LEXXFI8(LEXFI),LEXTT=" "
- D TT^LEXXFI8(LEXFI,"Checksum"),BL^LEXXFI8
- D CS,CTLD,MF^LEXXFI8(LEXMOD),CTLD
- Q
- ALL ; Checksum for ALL files
- N LEXENV S LEXENV=$$ENV^LEXXFI Q:+LEXENV'>0
- N LEXA,LEXCTR,LEXD,LEXEX,LEXF,LEXFC,LEXFI,LEXI,LEXLDR,LEXMOD,LEXMUL
- N LEXN,LEXND,LEXP,LEXRTN,LEXT,LEXTAG,LEXTND,LEXTSND,LEXTCS,LEXTSCS,LEXU
- S LEXMUL=1,(LEXTND,LEXTSND,LEXTCS,LEXTSCS,LEXMOD,LEXFC)=0
- D TT^LEXXFI8("","Checksums"),BL^LEXXFI8
- S LEXFI="",LEXTAG="FILES",LEXRTN="LEXXFI",LEXCTR=0
- F D Q:LEXFI=""
- . S LEXCTR=LEXCTR+1,LEXEX="S LEXLINE=$T("_LEXTAG_"+"_LEXCTR_"^"_LEXRTN_")"
- . X LEXEX S LEXFI=$P(LEXLINE,";;",2,3) Q:'$L(LEXFI)
- . S LEXLDR=$P(LEXFI,";;",1),LEXFI=$P(LEXFI,";;",2) Q:'$L(LEXFI)
- . S LEXLDR=$S(+LEXLDR>0:" * ",1:" ")
- . S:LEXLDR["*" LEXMOD=+($G(LEXMOD))+1 D CS
- I +LEXTND>0 D
- . I +($G(LEXTCS))>0,+($G(LEXTSCS))>0,+($G(LEXTND))>0,+($G(LEXTSND))>0 D
- . . Q:+LEXTSND>LEXTND Q:+LEXTSCS>LEXTCS
- . . D BL^LEXXFI8,TL^LEXXFI8(" Totals"),TL^LEXXFI8(" ------")
- . . D TL^LEXXFI8($$FMT(" ","Static Files",LEXTSND,LEXTSCS))
- . . D TL^LEXXFI8($$FMT(" * ","Variable Files",(LEXTND-LEXTSND),(LEXTCS-LEXTSCS)))
- . . D TL^LEXXFI8($$FMT(" ","All Files",LEXTND,LEXTCS))
- D MF^LEXXFI8(LEXMOD),CTLD
- Q
- CS ; Checksum for File X
- N LEXCS,LEXND,LEX S LEXFI=+($G(LEXFI)) Q:+LEXFI'>0
- D DDI^LEXXFI6(+LEXFI,.LEX) Q:'$D(LEX("DIC",LEXFI,0,"GL")) Q:+LEXFI=757.09
- S LEXLDR=$G(LEXLDR),LEXCS=$$CHECKSUM(LEXFI,.LEX),LEXND=+($P(LEXCS,"^",2)),LEXCS=+($P(LEXCS,"^",1))
- S LEXTND=+($G(LEXTND))+LEXND,LEXTCS=+($G(LEXTCS))+LEXCS,LEXFC=+($G(LEXFC))+1
- S:$G(LEXLDR)'["*" LEXTSCS=+($G(LEXTSCS))+LEXCS,LEXTSND=+($G(LEXTSND))+LEXND
- D:LEXFC=1 TL^LEXXFI8($$FMT(" ","File #","Nodes",$S(+LEXMUL>0:"Checksums",1:"Checksum")))
- D:LEXFC=1 TL^LEXXFI8($$FMT(" ","------------","----------","---------------"))
- D TL^LEXXFI8($$FMT(LEXLDR,LEXFI,LEXND,LEXCS))
- Q
- FMT(X,LEXFI,LEXND,LEXCS) ; Format Line
- N LEXT S LEXT=$G(X)_$G(LEXFI) S LEXT=LEXT_$J("",(18-$L(LEXT)))_$J($G(LEXND),10)
- S X=LEXT_$J("",(31-$L(LEXT)))_$J($G(LEXCS),15)
- Q X
- CHECKSUM(X,LEX) ; Return CHECKSUM^NODES
- N DIC,LEXC,LEXCNT,LEXCTR,LEXD,LEXE,LEXFI,LEXGCS,LEXN,LEXP,LEXRT,LEXT
- N LEXTYP,LEXID,LEXRC,LEXIC,LEXCTL
- S (LEXRC,LEXIC)=0
- S LEXFI=+($G(X)) Q:+LEXFI'>0 "0^0" Q:'$D(LEX("DIC",LEXFI,0,"GL")) "0^0"
- S DIC=$G(LEX("DIC",LEXFI,0,"GL")) Q:'$L(DIC) "0^0"
- S LEXRT=$S(DIC[",":($E(DIC,1,($L(DIC)-1))_")"),1:$E(DIC,1,($L(DIC)-1))),LEXC=DIC
- S LEXN=LEXRT,(LEXCNT,LEXCTR,LEXGCS)=0
- F S LEXN=$Q(@LEXN) Q:LEXN=""!(LEXN'[LEXC) D
- . S LEXCTR=LEXCTR+1,LEXD=@LEXN
- . S LEXT=LEXN_"="_LEXD,LEXE=$L(LEXT)
- . S LEXID=$P(LEXN,DIC,2,200)
- . S:LEXID["," LEXID=$P(LEXID,",",1)
- . S:LEXID[")" LEXID=$P(LEXID,")",1)
- . S LEXTYP="UNK" S:+LEXID=LEXID LEXTYP="REC"
- . S:+LEXID'=LEXID LEXTYP="IDX"
- . S LEXCTL=$$CTL(LEXT) I +LEXCTL>0 D
- . . Q:LEXTYP="UNK" N LEXTOT S LEXTOT=0
- . . S:LEXTYP="REC" (LEXTOT,LEXRC)=LEXRC+LEXCTL
- . . S:LEXTYP="IDX" (LEXTOT,LEXIC)=LEXIC+LEXCTL
- . . S $P(LEXCTLC(+LEXFI,LEXTYP),"^",1)=$P($G(LEXCTLC(+LEXFI,LEXTYP)),"^",1)+1
- . . S $P(LEXCTLC(+LEXFI,LEXTYP),"^",2)=LEXTOT
- . ;
- . F LEXP=1:1:LEXE S LEXGCS=$A(LEXT,LEXP)*LEXP+LEXGCS
- S X=LEXGCS_"^"_LEXCTR D CTLC
- Q X
- CTLD ; Control Characters (Display)
- Q:$G(LEXCTLC(0))'>0
- N LEXFI,LEXFIN,LEXFINC,LEXFII,LEXFIIC,LEXLN,LEXTH,LEXT1,LEXT2
- S (LEXFI,LEXFIN,LEXFINC,LEXFII,LEXFIIC,LEXLN)=0
- F S LEXFI=$O(LEXCTLC(LEXFI)) Q:+LEXFI=0 D
- . S LEXFIN=$G(LEXCTLC(LEXFI,"REC"))
- . S LEXFINC=$P(LEXFIN,"^",2),LEXFIN=$P(LEXFIN,"^",1)
- . S LEXFII=$G(LEXCTLC(LEXFI,"IDX"))
- . S LEXFIIC=$P(LEXFII,"^",2),LEXFII=$P(LEXFII,"^",1)
- . S LEXTH=$$FN^LEXXFI8(LEXFI) Q:'$L(LEXTH)
- . S LEXTH=" "_LEXTH_" file #"_LEXFI S (LEXT1,LEXT2)=""
- . I LEXFIN>0,LEXFINC>0 D
- . . S LEXT1=" "_$J(LEXFIN,4)_" Data Record"_$S(LEXFIN>0:"s",1:"")_" with "_LEXFINC_" control character"_$S(LEXFINC>0:"s",1:"")
- . I LEXFII>0,LEXFIIC>0 D
- . . S LEXT2=" "_$J(LEXFII,4)_" Cross-Reference entr"_$S(LEXFII>0:"ies",1:"y")_" with "_LEXFIIC_" control character"_$S(LEXFIIC>0:"s",1:"")
- . Q:'$L(LEXT1)&('$L(LEXT2))
- . S LEXLN=LEXLN+1 I LEXLN=1 D
- . . D BL^LEXXFI8,TL^LEXXFI8(" Control Character(s) Found")
- . . D TL^LEXXFI8(" =========================="),BL^LEXXFI8
- . D TL^LEXXFI8(LEXTH)
- . D:$L(LEXT1) TL^LEXXFI8(LEXT1)
- . D:$L(LEXT2) TL^LEXXFI8(LEXT2)
- Q
- CTL(X) ; Control Characters
- N TXT S TXT=$G(X)
- N I,CHR S X=0 F I=1:1 S CHR=$E($G(TXT),I) Q:'$L(CHR) D
- . I $A(CHR)<32!($A(CHR)>126) S X=X+1
- Q X
- CTLC ; Control Character Array
- N LEXFI,LEXND,LEXCC,LEXFIC,LEXNDC,LEXCCC
- S (LEXFI,LEXND,LEXCC,LEXFIC,LEXNDC,LEXCCC)=0
- F S LEXFI=$O(LEXCTLC(LEXFI)) Q:+LEXFI=0 D
- . S LEXFIC=LEXFIC+1,(LEXNDC,LEXCCC)=0
- . S LEXND=$P($G(LEXCTLC(LEXFI,"REC")),"^",1)
- . S LEXCC=$P($G(LEXCTLC(LEXFI,"REC")),"^",2)
- . S LEXNDC=LEXNDC+LEXND,LEXCCC=LEXCCC+LEXCC
- . S LEXND=$P($G(LEXCTLC(LEXFI,"IDX")),"^",1)
- . S LEXCC=$P($G(LEXCTLC(LEXFI,"IDX")),"^",2)
- . S LEXNDC=LEXNDC+LEXND,LEXCCC=LEXCCC+LEXCC
- . S LEXCTLC(LEXFI,0)=LEXNDC_"^"_LEXCCC
- . S LEXCTLC(0)=LEXFIC
- Q
- TT ;
- S LEXCTLC(0)=1
- S LEXCTLC(80,0)="43^43"
- S LEXCTLC(80,"IDX")="12^14"
- S LEXCTLC(80,"REC")="8^10"
- S LEXCTLC(81,0)="43^43"
- S LEXCTLC(81,"IDX")="20^28"
- S LEXCTLC(81,"REC")="23^26"
- Q
- LEXXFI2 ; ISL/KER - File Info - Checksums ; 07/28/2004
- +1 ;;2.0;LEXICON UTILITY;**32**;Sep 23, 1996;Build 10
- +2 QUIT
- +3 ;
- +4 ; Global Variables
- +5 ; None
- +6 ;
- +7 ; External References
- +8 ; None
- +9 ;
- +10 QUIT
- ONE(X) ; Checksum for ONE file
- +1 NEW LEXENV
- SET LEXENV=$$ENV^LEXXFI
- IF +LEXENV'>0
- QUIT
- +2 NEW LEXFI,LEXFC,LEXMOD,LEXMUL,LEXNM,LEXTXT,LEXTT,LEXLDR,LEXTND
- +3 NEW LEXTSND,LEXTCS,LEXTSCS,LEXEX,LEXLINE,LEXCTLC
- +4 SET (LEXTND,LEXTSND,LEXTCS,LEXTSCS,LEXMOD,LEXMUL)=0
- SET LEXFI=$GET(X)
- IF +LEXFI'>0
- QUIT
- +5 SET LEXLDR=$$LDR^LEXXFI8(LEXFI)
- SET LEXMOD=LEXMOD+($$MOD^LEXXFI8(LEXFI))
- +6 SET LEXNM=$$FN^LEXXFI8(LEXFI)
- SET LEXTT=" "
- +7 DO TT^LEXXFI8(LEXFI,"Checksum")
- DO BL^LEXXFI8
- +8 DO CS
- DO CTLD
- DO MF^LEXXFI8(LEXMOD)
- DO CTLD
- +9 QUIT
- ALL ; Checksum for ALL files
- +1 NEW LEXENV
- SET LEXENV=$$ENV^LEXXFI
- IF +LEXENV'>0
- QUIT
- +2 NEW LEXA,LEXCTR,LEXD,LEXEX,LEXF,LEXFC,LEXFI,LEXI,LEXLDR,LEXMOD,LEXMUL
- +3 NEW LEXN,LEXND,LEXP,LEXRTN,LEXT,LEXTAG,LEXTND,LEXTSND,LEXTCS,LEXTSCS,LEXU
- +4 SET LEXMUL=1
- SET (LEXTND,LEXTSND,LEXTCS,LEXTSCS,LEXMOD,LEXFC)=0
- +5 DO TT^LEXXFI8("","Checksums")
- DO BL^LEXXFI8
- +6 SET LEXFI=""
- SET LEXTAG="FILES"
- SET LEXRTN="LEXXFI"
- SET LEXCTR=0
- +7 FOR
- Begin DoDot:1
- +8 SET LEXCTR=LEXCTR+1
- SET LEXEX="S LEXLINE=$T("_LEXTAG_"+"_LEXCTR_"^"_LEXRTN_")"
- +9 XECUTE LEXEX
- SET LEXFI=$PIECE(LEXLINE,";;",2,3)
- IF '$LENGTH(LEXFI)
- QUIT
- +10 SET LEXLDR=$PIECE(LEXFI,";;",1)
- SET LEXFI=$PIECE(LEXFI,";;",2)
- IF '$LENGTH(LEXFI)
- QUIT
- +11 SET LEXLDR=$SELECT(+LEXLDR>0:" * ",1:" ")
- +12 IF LEXLDR["*"
- SET LEXMOD=+($GET(LEXMOD))+1
- DO CS
- End DoDot:1
- IF LEXFI=""
- QUIT
- +13 IF +LEXTND>0
- Begin DoDot:1
- +14 IF +($GET(LEXTCS))>0
- IF +($GET(LEXTSCS))>0
- IF +($GET(LEXTND))>0
- IF +($GET(LEXTSND))>0
- Begin DoDot:2
- +15 IF +LEXTSND>LEXTND
- QUIT
- IF +LEXTSCS>LEXTCS
- QUIT
- +16 DO BL^LEXXFI8
- DO TL^LEXXFI8(" Totals")
- DO TL^LEXXFI8(" ------")
- +17 DO TL^LEXXFI8($$FMT(" ","Static Files",LEXTSND,LEXTSCS))
- +18 DO TL^LEXXFI8($$FMT(" * ","Variable Files",(LEXTND-LEXTSND),(LEXTCS-LEXTSCS)))
- +19 DO TL^LEXXFI8($$FMT(" ","All Files",LEXTND,LEXTCS))
- End DoDot:2
- End DoDot:1
- +20 DO MF^LEXXFI8(LEXMOD)
- DO CTLD
- +21 QUIT
- CS ; Checksum for File X
- +1 NEW LEXCS,LEXND,LEX
- SET LEXFI=+($GET(LEXFI))
- IF +LEXFI'>0
- QUIT
- +2 DO DDI^LEXXFI6(+LEXFI,.LEX)
- IF '$DATA(LEX("DIC",LEXFI,0,"GL"))
- QUIT
- IF +LEXFI=757.09
- QUIT
- +3 SET LEXLDR=$GET(LEXLDR)
- SET LEXCS=$$CHECKSUM(LEXFI,.LEX)
- SET LEXND=+($PIECE(LEXCS,"^",2))
- SET LEXCS=+($PIECE(LEXCS,"^",1))
- +4 SET LEXTND=+($GET(LEXTND))+LEXND
- SET LEXTCS=+($GET(LEXTCS))+LEXCS
- SET LEXFC=+($GET(LEXFC))+1
- +5 IF $GET(LEXLDR)'["*"
- SET LEXTSCS=+($GET(LEXTSCS))+LEXCS
- SET LEXTSND=+($GET(LEXTSND))+LEXND
- +6 IF LEXFC=1
- DO TL^LEXXFI8($$FMT(" ","File #","Nodes",$SELECT(+LEXMUL>0:"Checksums",1:"Checksum")))
- +7 IF LEXFC=1
- DO TL^LEXXFI8($$FMT(" ","------------","----------","---------------"))
- +8 DO TL^LEXXFI8($$FMT(LEXLDR,LEXFI,LEXND,LEXCS))
- +9 QUIT
- FMT(X,LEXFI,LEXND,LEXCS) ; Format Line
- +1 NEW LEXT
- SET LEXT=$GET(X)_$GET(LEXFI)
- SET LEXT=LEXT_$JUSTIFY("",(18-$LENGTH(LEXT)))_$JUSTIFY($GET(LEXND),10)
- +2 SET X=LEXT_$JUSTIFY("",(31-$LENGTH(LEXT)))_$JUSTIFY($GET(LEXCS),15)
- +3 QUIT X
- CHECKSUM(X,LEX) ; Return CHECKSUM^NODES
- +1 NEW DIC,LEXC,LEXCNT,LEXCTR,LEXD,LEXE,LEXFI,LEXGCS,LEXN,LEXP,LEXRT,LEXT
- +2 NEW LEXTYP,LEXID,LEXRC,LEXIC,LEXCTL
- +3 SET (LEXRC,LEXIC)=0
- +4 SET LEXFI=+($GET(X))
- IF +LEXFI'>0
- QUIT "0^0"
- IF '$DATA(LEX("DIC",LEXFI,0,"GL"))
- QUIT "0^0"
- +5 SET DIC=$GET(LEX("DIC",LEXFI,0,"GL"))
- IF '$LENGTH(DIC)
- QUIT "0^0"
- +6 SET LEXRT=$SELECT(DIC[",":($EXTRACT(DIC,1,($LENGTH(DIC)-1))_")"),1:$EXTRACT(DIC,1,($LENGTH(DIC)-1)))
- SET LEXC=DIC
- +7 SET LEXN=LEXRT
- SET (LEXCNT,LEXCTR,LEXGCS)=0
- +8 FOR
- SET LEXN=$QUERY(@LEXN)
- IF LEXN=""!(LEXN'[LEXC)
- QUIT
- Begin DoDot:1
- +9 SET LEXCTR=LEXCTR+1
- SET LEXD=@LEXN
- +10 SET LEXT=LEXN_"="_LEXD
- SET LEXE=$LENGTH(LEXT)
- +11 SET LEXID=$PIECE(LEXN,DIC,2,200)
- +12 IF LEXID[","
- SET LEXID=$PIECE(LEXID,",",1)
- +13 IF LEXID[")"
- SET LEXID=$PIECE(LEXID,")",1)
- +14 SET LEXTYP="UNK"
- IF +LEXID=LEXID
- SET LEXTYP="REC"
- +15 IF +LEXID'=LEXID
- SET LEXTYP="IDX"
- +16 SET LEXCTL=$$CTL(LEXT)
- IF +LEXCTL>0
- Begin DoDot:2
- +17 IF LEXTYP="UNK"
- QUIT
- NEW LEXTOT
- SET LEXTOT=0
- +18 IF LEXTYP="REC"
- SET (LEXTOT,LEXRC)=LEXRC+LEXCTL
- +19 IF LEXTYP="IDX"
- SET (LEXTOT,LEXIC)=LEXIC+LEXCTL
- +20 SET $PIECE(LEXCTLC(+LEXFI,LEXTYP),"^",1)=$PIECE($GET(LEXCTLC(+LEXFI,LEXTYP)),"^",1)+1
- +21 SET $PIECE(LEXCTLC(+LEXFI,LEXTYP),"^",2)=LEXTOT
- End DoDot:2
- +22 ;
- +23 FOR LEXP=1:1:LEXE
- SET LEXGCS=$ASCII(LEXT,LEXP)*LEXP+LEXGCS
- End DoDot:1
- +24 SET X=LEXGCS_"^"_LEXCTR
- DO CTLC
- +25 QUIT X
- CTLD ; Control Characters (Display)
- +1 IF $GET(LEXCTLC(0))'>0
- QUIT
- +2 NEW LEXFI,LEXFIN,LEXFINC,LEXFII,LEXFIIC,LEXLN,LEXTH,LEXT1,LEXT2
- +3 SET (LEXFI,LEXFIN,LEXFINC,LEXFII,LEXFIIC,LEXLN)=0
- +4 FOR
- SET LEXFI=$ORDER(LEXCTLC(LEXFI))
- IF +LEXFI=0
- QUIT
- Begin DoDot:1
- +5 SET LEXFIN=$GET(LEXCTLC(LEXFI,"REC"))
- +6 SET LEXFINC=$PIECE(LEXFIN,"^",2)
- SET LEXFIN=$PIECE(LEXFIN,"^",1)
- +7 SET LEXFII=$GET(LEXCTLC(LEXFI,"IDX"))
- +8 SET LEXFIIC=$PIECE(LEXFII,"^",2)
- SET LEXFII=$PIECE(LEXFII,"^",1)
- +9 SET LEXTH=$$FN^LEXXFI8(LEXFI)
- IF '$LENGTH(LEXTH)
- QUIT
- +10 SET LEXTH=" "_LEXTH_" file #"_LEXFI
- SET (LEXT1,LEXT2)=""
- +11 IF LEXFIN>0
- IF LEXFINC>0
- Begin DoDot:2
- +12 SET LEXT1=" "_$JUSTIFY(LEXFIN,4)_" Data Record"_$SELECT(LEXFIN>0:"s",1:"")_" with "_LEXFINC_" control character"_$SELECT(LEXFINC>0:"s",1:"")
- End DoDot:2
- +13 IF LEXFII>0
- IF LEXFIIC>0
- Begin DoDot:2
- +14 SET LEXT2=" "_$JUSTIFY(LEXFII,4)_" Cross-Reference entr"_$SELECT(LEXFII>0:"ies",1:"y")_" with "_LEXFIIC_" control character"_$SELECT(LEXFIIC>0:"s",1:"")
- End DoDot:2
- +15 IF '$LENGTH(LEXT1)&('$LENGTH(LEXT2))
- QUIT
- +16 SET LEXLN=LEXLN+1
- IF LEXLN=1
- Begin DoDot:2
- +17 DO BL^LEXXFI8
- DO TL^LEXXFI8(" Control Character(s) Found")
- +18 DO TL^LEXXFI8(" ==========================")
- DO BL^LEXXFI8
- End DoDot:2
- +19 DO TL^LEXXFI8(LEXTH)
- +20 IF $LENGTH(LEXT1)
- DO TL^LEXXFI8(LEXT1)
- +21 IF $LENGTH(LEXT2)
- DO TL^LEXXFI8(LEXT2)
- End DoDot:1
- +22 QUIT
- CTL(X) ; Control Characters
- +1 NEW TXT
- SET TXT=$GET(X)
- +2 NEW I,CHR
- SET X=0
- FOR I=1:1
- SET CHR=$EXTRACT($GET(TXT),I)
- IF '$LENGTH(CHR)
- QUIT
- Begin DoDot:1
- +3 IF $ASCII(CHR)<32!($ASCII(CHR)>126)
- SET X=X+1
- End DoDot:1
- +4 QUIT X
- CTLC ; Control Character Array
- +1 NEW LEXFI,LEXND,LEXCC,LEXFIC,LEXNDC,LEXCCC
- +2 SET (LEXFI,LEXND,LEXCC,LEXFIC,LEXNDC,LEXCCC)=0
- +3 FOR
- SET LEXFI=$ORDER(LEXCTLC(LEXFI))
- IF +LEXFI=0
- QUIT
- Begin DoDot:1
- +4 SET LEXFIC=LEXFIC+1
- SET (LEXNDC,LEXCCC)=0
- +5 SET LEXND=$PIECE($GET(LEXCTLC(LEXFI,"REC")),"^",1)
- +6 SET LEXCC=$PIECE($GET(LEXCTLC(LEXFI,"REC")),"^",2)
- +7 SET LEXNDC=LEXNDC+LEXND
- SET LEXCCC=LEXCCC+LEXCC
- +8 SET LEXND=$PIECE($GET(LEXCTLC(LEXFI,"IDX")),"^",1)
- +9 SET LEXCC=$PIECE($GET(LEXCTLC(LEXFI,"IDX")),"^",2)
- +10 SET LEXNDC=LEXNDC+LEXND
- SET LEXCCC=LEXCCC+LEXCC
- +11 SET LEXCTLC(LEXFI,0)=LEXNDC_"^"_LEXCCC
- +12 SET LEXCTLC(0)=LEXFIC
- End DoDot:1
- +13 QUIT
- TT ;
- +1 SET LEXCTLC(0)=1
- +2 SET LEXCTLC(80,0)="43^43"
- +3 SET LEXCTLC(80,"IDX")="12^14"
- +4 SET LEXCTLC(80,"REC")="8^10"
- +5 SET LEXCTLC(81,0)="43^43"
- +6 SET LEXCTLC(81,"IDX")="20^28"
- +7 SET LEXCTLC(81,"REC")="23^26"
- +8 QUIT