MUMPS Validation Test Suite V9.10 Part-94 (DO ^VV4) JUL 15, 1996 VV4 VV4 ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 MAIN DRIVER ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1990-1996 ; START ; I $D(^VENVIRON("INTEGRITY"))=0 D ^VINT9 I ^VENVIRON("INTEGRITY")="OK" G START1 I ^VENVIRON("INTEGRITY")="NOT OK" G START1 D ^VINT9 START1 ; I $D(^VENVIRON("COMPLETE"))=1 D EDIT^VENVIRON I $D(^VENVIRON("COMPLETE"))=0 D ^VENVIRON S ^VREPORT="Part-94" K ^VREPORT("Part-94") I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") W #,"*** Standard MUMPS Validation Test Suite Version 9.10, Part-94 (DRIVER) ***" W !," ( The last Test ID number for Part-94 is IV-866. )",!! V4SORT W !!,"0.1---V4SORT" D ^V4SORT V4FNUM W !!,"10.1---V4FNUM" D ^V4FNUM V4REV W !!,"18.1---V4REV" D ^V4REV V4GET2 W !!,"22.1---V4GET2" D ^V4GET2 V4NAME W !!,"31.1---V4NAME" D ^V4NAME V4QLEN W !!,"45.1---V4QLEN" D ^V4QLEN V4QSUB W !!,"53.1---V4QSUB" D ^V4QSUB V4SVQ W !!,"68.1---V4SVQ" D ^V4SVQ V4MERGE W !!,"74.1---V4MERGE" D ^V4MERGE V4READ W !!,"92.1---V4READ" D ^V4READ V4KEY W !!,"97---V4KEY" D ^V4KEY V4SYSTEM W !!,"98---V4SYSTEM" D ^V4SYSTEM V4POWER W !!,"98.1---V4POWER" D ^V4POWER V4RAND W !!,"107---V4RAND" D ^V4RAND V4ORDER W !!,"107.1---V4ORDER" D ^V4ORDER V4QUERY W !!,"118---V4QUERY" D ^V4QUERY V4PRIN W !!,"119---V4PRIN" D ^V4PRIN V4QUIT W !!,"120---V4QUIT" D ^V4QUIT V4MAX W !!,"120.1---V4MAX" D ^V4MAX V4SSUB W !!,"122.1---V4SSUB" D ^V4SSUB V4JOB W !!,"125---V4JOB" D ^V4JOB V4PAT W !!,"125.1---V4PAT" D ^V4PAT V4NST1 W !!,"135---V4NST1" D ^V4NST1 V4NST2 W !!,"136---V4NST2" D ^V4NST2 V4NST3 W !!,"137---V4NST3" D ^V4NST3 V4NST4 W !!,"138---V4NST4" D ^V4NST4 V4NST5 W !!,"139---V4NST5" D ^V4NST5 V4NST6 W !!,"140---V4NST6" D ^V4NST6 V4MDC W !!,"141---V4MDC" D ^V4MDC ; END W !,"*** Standard MUMPS Validation Test Suite Version 9.10, Part-94 END ***",!! Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT V4SORT ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"Tests of Sort After operator A]]B" ; V4SORT1 W !!,"1---V4SORT1" D ^V4SORT1 V4SORT2 W !!,"2---V4SORT2" D ^V4SORT2 V4SORT3 W !!,"3---V4SORT3" D ^V4SORT3 V4SORT4 W !!,"4---V4SORT4" D ^V4SORT4 V4SORT5 W !!,"5---V4SORT5" D ^V4SORT5 V4SORT6 W !!,"6---V4SORT6" D ^V4SORT6 V4SORT7 W !!,"7---V4SORT7" D ^V4SORT7 V4SORT8 W !!,"8---V4SORT8" D ^V4SORT8 V4SORT9 W !!,"9---V4SORT9" D ^V4SORT9 V4SORT10 W !!,"10---V4SORT10" D ^V4SORT10 END Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT1 V4SORT1 ;IW-KO-YS-TS,V4SORT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"1---V4SORT1: Sort After operator -1-" W !!,"A is a number" W !!,"B is a number" ; 1 S ^ABSN="40001",^ITEM="IV-1 ""-999999999""]]""-1E20""" S ^NEXT="2^V4SORT1,V4SORT2^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-999999999"]]"-1E20" S ^VCORR="0" D ^VEXAMINE ; 2 S ^ABSN="40002",^ITEM="IV-2 ""-10""]]""-10.001""" S ^NEXT="3^V4SORT1,V4SORT2^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-10"]]"-10.001" S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40003",^ITEM="IV-3 ""-1.2""]]""1.2""" S ^NEXT="4^V4SORT1,V4SORT2^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-1.2"]]"1.2" S ^VCORR="0" D ^VEXAMINE ; 4 S ^ABSN="40004",^ITEM="IV-4 ""-1.11""]]""-.0002""" S ^NEXT="5^V4SORT1,V4SORT2^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-1.11"]]"-.0002" S ^VCORR="0" D ^VEXAMINE ; 5 S ^ABSN="40005",^ITEM="IV-5 ""-1.1""]]+""20E-20""" S ^NEXT="6^V4SORT1,V4SORT2^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-1.1"]]+"20E-20" S ^VCORR="0" D ^VEXAMINE ; 6 S ^ABSN="40006",^ITEM="IV-6 ""-.5""]]0.5" S ^NEXT="7^V4SORT1,V4SORT2^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-.5"]]0.5 S ^VCORR="0" D ^VEXAMINE ; 7 S ^ABSN="40007",^ITEM="IV-7 ""0""]]0000000" S ^NEXT="V4SORT2,^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="0"]]0000000 S ^VCORR="0" D ^VEXAMINE ; END W !!,"End of 1 --- V4SORT1",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT2 V4SORT2 ;IW-KO-YS-TS,V4SORT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"2---V4SORT2: Sort After operator -2-" ; 1 S ^ABSN="40008",^ITEM="IV-8 "".5""]]-5" S ^NEXT="2^V4SORT2,V4SORT3^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP=".5"]]-5 S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40009",^ITEM="IV-9 ""1.1""]]954.8598" S ^NEXT="3^V4SORT2,V4SORT3^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="1.1"]]954.8598 S ^VCORR="0" D ^VEXAMINE ; 3 S ^ABSN="40010",^ITEM="IV-10 ""20""]]-129E-4" S ^NEXT="4^V4SORT2,V4SORT3^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="20"]]-129E-4 S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40011",^ITEM="IV-11 ""999999999""]]9999E+20" S ^NEXT="5^V4SORT2,V4SORT3^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="999999999"]]9999E+20 S ^VCORR="0" D ^VEXAMINE ; W !!,"B is a string" ; 5 S ^ABSN="40012",^ITEM="IV-12 ""-999999999""]]""-999999.99990000""" S ^NEXT="6^V4SORT2,V4SORT3^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-999999999"]]"-999999.99990000" S ^VCORR="0" D ^VEXAMINE ; 6 S ^ABSN="40013",^ITEM="IV-13 ""-10""]]""-E2""" S ^NEXT="7^V4SORT2,V4SORT3^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-10"]]"-E2" S ^VCORR="0" D ^VEXAMINE ; 7 S ^ABSN="40014",^ITEM="IV-14 ""-1.2""]]""++++023.34E*2""" S ^NEXT="8^V4SORT2,V4SORT3^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-1.2"]]"++++023.34E*2" S ^VCORR="0" D ^VEXAMINE ; 8 S ^ABSN="40015",^ITEM="IV-15 ""-1.11""]]""=123""" S ^NEXT="9^V4SORT2,V4SORT3^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-1.11"]]"=123" S ^VCORR="0" D ^VEXAMINE ; 9 S ^ABSN="40016",^ITEM="IV-16 ""-1.1""]]""92920920-2929""" S ^NEXT="V4SORT3^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-1.1"]]"92920920-2929" S ^VCORR="0" D ^VEXAMINE ; END W !!,"End of 2 --- V4SORT2",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT3 V4SORT3 ;IW-KO-YS-TS,V4SORT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"3---V4SORT3: Sort After operator -3-" ; 1 S ^ABSN="40017",^ITEM="IV-17 ""-.5""]]""-0.5""" S ^NEXT="2^V4SORT3,V4SORT4^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-.5"]]"-0.5" S ^VCORR="0" D ^VEXAMINE ; 2 S ^ABSN="40018",^ITEM="IV-18 ""0""]]""00""" S ^NEXT="3^V4SORT3,V4SORT4^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="0"]]"00" S ^VCORR="0" D ^VEXAMINE ; 3 S ^ABSN="40019",^ITEM="IV-19 "".5""]]""00000.500""" S ^NEXT="4^V4SORT3,V4SORT4^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP=".5"]]"00000.500" S ^VCORR="0" D ^VEXAMINE ; 4 S ^ABSN="40020",^ITEM="IV-20 ""1.1""]]""01.1""" S ^NEXT="5^V4SORT3,V4SORT4^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="1.1"]]"01.1" S ^VCORR="0" D ^VEXAMINE ; 5 S ^ABSN="40021",^ITEM="IV-21 ""20""]]""20 """ S ^NEXT="6^V4SORT3,V4SORT4^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="20"]]"20 " S ^VCORR="0" D ^VEXAMINE ; W !!,"A is a string" W !,"B is a number",! ; 6 S ^ABSN="40022",^ITEM="IV-22 ""#""]]1" S ^NEXT="7^V4SORT3,V4SORT4^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="#"]]1 S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40023",^ITEM="IV-23 ""%""]]0" S ^NEXT="8^V4SORT3,V4SORT4^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="%"]]0 S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40024",^ITEM="IV-24 ""+4""]]-9999999" S ^NEXT="9^V4SORT3,V4SORT4^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="+4"]]-9999999 S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40025",^ITEM="IV-25 ""-""]]-00000000000000565" S ^NEXT="V4SORT4^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-"]]-00000000000000565 S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 3 --- V4SORT3",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT4 V4SORT4 ;IW-KO-YS-TS,V4SORT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"4---V4SORT4: Sort After operator -4-" ; 1 S ^ABSN="40026",^ITEM="IV-26 ""--1""]]898" S ^NEXT="2^V4SORT4,V4SORT5^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="--1"]]898 S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40027",^ITEM="IV-27 ""-.""]]10000" S ^NEXT="3^V4SORT4,V4SORT5^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-."]]10000 S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40028",^ITEM="IV-28 ""-.0""]]+""0.-""" S ^NEXT="4^V4SORT4,V4SORT5^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-.0"]]+"0.-" S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40029",^ITEM="IV-29 ""-0""]]-000.0000765" S ^NEXT="5^V4SORT4,V4SORT5^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-0"]]-000.0000765 S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40030",^ITEM="IV-30 ""-4.""]]84398E-10" S ^NEXT="6^V4SORT4,V4SORT5^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-4."]]84398E-10 S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40031",^ITEM="IV-31 ""-4.0""]]-999999999999999" S ^NEXT="7^V4SORT4,V4SORT5^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-4.0"]]-999999999999999 S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40032",^ITEM="IV-32 "".""]]0.000001E-10" S ^NEXT="8^V4SORT4,V4SORT5^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="."]]0.000001E-10 S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40033",^ITEM="IV-33 "".0""]]-0.000001E-10" S ^NEXT="9^V4SORT4,V4SORT5^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP=".0"]]-0.000001E-10 S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40034",^ITEM="IV-34 "".00""]]999999999999999" S ^NEXT="V4SORT5^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP=".00"]]999999999999999 S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 4 --- V4SORT4",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT5 V4SORT5 ;IW-KO-YS-TS,V4SORT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"5---V4SORT5: Sort After operator -5-" ; 1 S ^ABSN="40035",^ITEM="IV-35 ""0.0""]]-84456565.5545" S ^NEXT="2^V4SORT5,V4SORT6^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="0.0"]]-84456565.5545 S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40036",^ITEM="IV-36 ""0.1""]]4384329328E8" S ^NEXT="3^V4SORT5,V4SORT6^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="0.1"]]4384329328E8 S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40037",^ITEM="IV-37 ""00""]]0000000000000000000000000000" S ^NEXT="4^V4SORT5,V4SORT6^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="00"]]0000000000000000000000000000 S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40038",^ITEM="IV-38 ""01""]]01" S ^NEXT="5^V4SORT5,V4SORT6^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="01"]]01 S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40039",^ITEM="IV-39 ""1.""]]1000.0000000000000E-3" S ^NEXT="6^V4SORT5,V4SORT6^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="1."]]1000.0000000000000E-3 S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40040",^ITEM="IV-40 ""1.0""]]9E-6" S ^NEXT="7^V4SORT5,V4SORT6^V4SORT,V4SORT^VV4" D ^V4PRESET K ;(test fixed in V9.02;7/10/95) S ^VCOMP="1.0"]]9E-6 S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40041",^ITEM="IV-41 ""1.1.2""]]-100789.899E+9" S ^NEXT="8^V4SORT5,V4SORT6^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="1.1.2"]]-100789.899E+9 S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40042",^ITEM="IV-42 ""123e1""]]0E-0" S ^NEXT="9^V4SORT5,V4SORT6^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="123e1"]]0E-0 S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40043",^ITEM="IV-43 ""A""]]000000000.9999999999E+9" S ^NEXT="V4SORT6^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="A"]]000000000.9999999999E+9 S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 5 --- V4SORT5",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT6 V4SORT6 ;IW-KO-YS-TS,V4SORT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"6---V4SORT6: Sort After operator -6-" ; 1 S ^ABSN="40044",^ITEM="IV-44 ""AA""]]-0.002" S ^NEXT="2^V4SORT6,V4SORT7^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="AA"]]-0.002 S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40045",^ITEM="IV-45 ""AB""]].00333" S ^NEXT="3^V4SORT6,V4SORT7^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="AB"]].00333 S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40046",^ITEM="IV-46 ""a""]]+568" S ^NEXT="4^V4SORT6,V4SORT7^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="a"]]+568 S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40047",^ITEM="IV-47 ""aa""]]9" S ^NEXT="5^V4SORT6,V4SORT7^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="aa"]]9 S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40048",^ITEM="IV-48 ""ab""]]+""ab""" S ^NEXT="6^V4SORT6,V4SORT7^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="ab"]]+"ab" S ^VCORR="1" D ^VEXAMINE ; W !!,"B is a string" ; 6 S ^ABSN="40049",^ITEM="IV-49 ""#""]]""#1""" S ^NEXT="7^V4SORT6,V4SORT7^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="#"]]"#1" S ^VCORR="0" D ^VEXAMINE ; 7 S ^ABSN="40050",^ITEM="IV-50 ""%""]]""% """ S ^NEXT="8^V4SORT6,V4SORT7^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="%"]]"% " S ^VCORR="0" D ^VEXAMINE ; 8 S ^ABSN="40051",^ITEM="IV-51 ""+4""]]"" -9999999""" S ^NEXT="9^V4SORT6,V4SORT7^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="+4"]]" -9999999" S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40052",^ITEM="IV-52 ""-""]]""+""" S ^NEXT="10^V4SORT6,V4SORT7^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-"]]"+" S ^VCORR="1" D ^VEXAMINE ; 10 S ^ABSN="40053",^ITEM="IV-53 ""--1""]]""8-98""" S ^NEXT="V4SORT7^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="--1"]]"8-98" S ^VCORR="0" D ^VEXAMINE ; END W !!,"End of 6 --- V4SORT6",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT7 V4SORT7 ;IW-KO-YS-TS,V4SORT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"7---V4SORT7: Sort After operator -7-" ; 1 S ^ABSN="40054",^ITEM="IV-54 ""-.""]]""10e000""" S ^NEXT="2^V4SORT7,V4SORT8^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-."]]"10e000" S ^VCORR="0" D ^VEXAMINE ; 2 S ^ABSN="40055",^ITEM="IV-55 ""-.0""]]""0.-""" S ^NEXT="3^V4SORT7,V4SORT8^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-.0"]]"0.-" S ^VCORR="0" D ^VEXAMINE ; 3 S ^ABSN="40056",^ITEM="IV-56 ""-0""]]""-000.0000765""" S ^NEXT="4^V4SORT7,V4SORT8^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-0"]]"-000.0000765" S ^VCORR="0" D ^VEXAMINE ; 4 S ^ABSN="40057",^ITEM="IV-57 ""-4.""]]""84398E-10""" S ^NEXT="5^V4SORT7,V4SORT8^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-4."]]"84398E-10" S ^VCORR="0" D ^VEXAMINE ; 5 S ^ABSN="40058",^ITEM="IV-58 ""-4.0""]]"" """ S ^NEXT="6^V4SORT7,V4SORT8^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="-4.0"]]" " S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40059",^ITEM="IV-59 "".""]]""-""" S ^NEXT="7^V4SORT7,V4SORT8^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="."]]"-" S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40060",^ITEM="IV-60 "".0""]]"".10""" S ^NEXT="8^V4SORT7,V4SORT8^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP=".0"]]".10" S ^VCORR="0" D ^VEXAMINE ; 8 S ^ABSN="40061",^ITEM="IV-61 "".00""]]""-00""" S ^NEXT="9^V4SORT7,V4SORT8^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP=".00"]]"-00" S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40062",^ITEM="IV-62 ""0.0""]]""0/0""" S ^NEXT="V4SORT8^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="0.0"]]"0/0" S ^VCORR="0" D ^VEXAMINE ; END W !!,"End of 7 --- V4SORT7",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT8 V4SORT8 ;IW-KO-YS-TS,V4SORT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"8---V4SORT8: Sort After operator -8-" ; 1 S ^ABSN="40063",^ITEM="IV-63 ""0.1""]]""0-0""" S ^NEXT="2^V4SORT8,V4SORT9^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="0.1"]]"0-0" S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40064",^ITEM="IV-64 ""00""]]""01""" S ^NEXT="3^V4SORT8,V4SORT9^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="00"]]"01" S ^VCORR="0" D ^VEXAMINE ; 3 S ^ABSN="40065",^ITEM="IV-65 ""01""]]""00""" S ^NEXT="4^V4SORT8,V4SORT9^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="01"]]"00" S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40066",^ITEM="IV-66 ""1.""]]""1-""" S ^NEXT="5^V4SORT8,V4SORT9^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="1."]]"1-" S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40067",^ITEM="IV-67 ""1.0""]]""1..""" S ^NEXT="6^V4SORT8,V4SORT9^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="1.0"]]"1.." S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40068",^ITEM="IV-68 ""1.1.2""]]""1.1.1""" S ^NEXT="7^V4SORT8,V4SORT9^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="1.1.2"]]"1.1.1" S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40069",^ITEM="IV-69 ""123E1""]]""123E+1""" S ^NEXT="8^V4SORT8,V4SORT9^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="123E1"]]"123E+1" S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40070",^ITEM="IV-70 ""A""]]""@""" S ^NEXT="9^V4SORT8,V4SORT9^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="A"]]"@" S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40071",^ITEM="IV-71 ""AA""]]""AB""" S ^NEXT="V4SORT9^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="AA"]]"AB" S ^VCORR="0" D ^VEXAMINE ; END W !!,"End of 8 --- V4SORT8",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT9 V4SORT9 ;IW-KO-YS-TS,V4SORT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"9---V4SORT9: Sort After operator -9-" ; 1 S ^ABSN="40072",^ITEM="IV-72 ""AB""]]""AA""" S ^NEXT="2^V4SORT9,V4SORT10^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="AB"]]"AA" S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40073",^ITEM="IV-73 ""a""]]""_""" S ^NEXT="3^V4SORT9,V4SORT10^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="a"]]"_" S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40074",^ITEM="IV-74 ""aa""]]""[""" S ^NEXT="4^V4SORT9,V4SORT10^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="aa"]]"[" S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40075",^ITEM="IV-75 ""ab""]]""]]""" S ^NEXT="V4SORT10^V4SORT,V4SORT^VV4" D ^V4PRESET K S ^VCOMP="ab"]]"]]" S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 9 --- V4SORT9",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SORT10 V4SORT10 ;IW-KO-YS-TS,V4SORT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"10---V4SORT10: Sort After operator -10-" ; 1 S ^ABSN="40076",^ITEM="IV-76 A is a lvn" S ^NEXT="2^V4SORT10,V4FNUM^VV4" D ^V4PRESET K S A(1)="AAAAAAAAAAAAA" S ^VCOMP=A(1)]]"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" S ^VCORR="0" D ^VEXAMINE ; 2 S ^ABSN="40077",^ITEM="IV-77 B is a lvn" S ^NEXT="3^V4SORT10,V4FNUM^VV4" D ^V4PRESET K S B="BBBBBBBBBBBBBBBBBBBBBBBB" S ^VCOMP="BBBBBBBBBBBBBBBBBBBBBBBBB"]]B S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40078",^ITEM="IV-78 A is a gvn" S ^NEXT="4^V4SORT10,V4FNUM^VV4" D ^V4PRESET K K ^VV S ^VV(1)="985.56" S ^VCOMP=^VV(1)]]-1 S ^VCORR="1" D ^VEXAMINE K ^VV ; 4 S ^ABSN="40079",^ITEM="IV-79 B is a gvn" S ^NEXT="5^V4SORT10,V4FNUM^VV4" D ^V4PRESET K K ^VV S ^VV(00)=-1E-10 S ^VCOMP=0]]^VV(0) S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40080",^ITEM="IV-80 A is a function" S ^NEXT="6^V4SORT10,V4FNUM^VV4" D ^V4PRESET K S ^VCOMP=$J(1234567890E-5,0,2)]]1234 S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40081",^ITEM="IV-81 B is a function" S ^NEXT="7^V4SORT10,V4FNUM^VV4" D ^V4PRESET K S ^VCOMP="ABC"]]$P("AB/CD/EF/GH","/",3) S ^VCORR="0" D ^VEXAMINE ; 7 S ^ABSN="40082",^ITEM="IV-82 A contains unary operator" S ^NEXT="8^V4SORT10,V4FNUM^VV4" D ^V4PRESET K S ^VCOMP='0]]0 S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40083",^ITEM="IV-83 B contains unary operator" S ^NEXT="9^V4SORT10,V4FNUM^VV4" D ^V4PRESET K S ^VCOMP=1]]+"-123.00" S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40084",^ITEM="IV-84 A contains indirections" S ^NEXT="10^V4SORT10,V4FNUM^VV4" D ^V4PRESET K S A="B(1)",B(1,2,3)="ABCD" S ^VCOMP=@A@(2,3)]]"abcd" S ^VCORR="0" D ^VEXAMINE ; 10 S ^ABSN="40085",^ITEM="IV-85 B contains indirections" S ^NEXT="11^V4SORT10,V4FNUM^VV4" D ^V4PRESET K S B(1)="@B",B="C",C="D" S ^VCOMP="a"]]@B(1) S ^VCORR="1" D ^VEXAMINE ; 11 S ^ABSN="40086",^ITEM="IV-86 A is an expr" S ^NEXT="12^V4SORT10,V4FNUM^VV4" D ^V4PRESET K S ^VCOMP=("ABC"_"DEF"_"")]]"ABCDEF" S ^VCORR="0" D ^VEXAMINE ; 12 S ^ABSN="40087",^ITEM="IV-87 B is an expr" S ^NEXT="V4FNUM^VV4" D ^V4PRESET K S A="123456788" S ^VCOMP="{"]]($L(A)*3) S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 10 --- V4SORT10",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4FNUM V4FNUM ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"Tests of $FNUMBER function" ; V4FN21 W !!,"11---V4FN21" D ^V4FN21 V4FN22 W !!,"12---V4FN22" D ^V4FN22 V4FN23 W !!,"13---V4FN23" D ^V4FN23 V4FN24 W !!,"14---V4FN24" D ^V4FN24 V4FN25 W !!,"15---V4FN25" D ^V4FN25 V4FN31 W !!,"16---V4FN31" D ^V4FN31 V4FN32 W !!,"17---V4FN32" D ^V4FN32 V4FN33 W !!,"18---V4FN33" D ^V4FN33 END Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4FN21 V4FN21 ;IW-KO-YS-TS,V4FNUM,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"11---V4FN21: $FNUMBER function -1-" ; W !!,"$FNUMBER(numexpr,fncodexpr)" W !!,"fncodexpr is an empty string" ; 1 S ^ABSN="40088",^ITEM="IV-88 $FNUMBER(09878979.78E-2,"""")" S ^NEXT="2^V4FN21,V4FN22^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$FNUMBER(09878979.78E-2,"") ;S ^VCORR="98789.7978" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-88 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; 2 S ^ABSN="40089",^ITEM="IV-89 $FN(0000.00000951200000,"""")" S ^NEXT="3^V4FN21,V4FN22^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$FN(0000.00000951200000,"") ;S ^VCORR=".000009512" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-89 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; 3 S ^ABSN="40090",^ITEM="IV-90 $FN(-0000.00000951200000,"""")" S ^NEXT="4^V4FN21,V4FN22^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$FN(-0000.00000951200000,"") ;S ^VCORR="-.000009512" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-90 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; 4 S ^ABSN="40091",^ITEM="IV-91 $FN(603.450000000E+4,"""")" S ^NEXT="5^V4FN21,V4FN22^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$FN(603.450000000E+4,"") ;S ^VCORR="6034500" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-91 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; 5 S ^ABSN="40092",^ITEM="IV-92 $FN(-00020000.00000,"""")" S ^NEXT="V4FN22^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$FN(-00020000.00000,"") ;S ^VCORR="-20000" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-92 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; END W !!,"End of 11 --- V4FN21",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4FN22 V4FN22 ;IW-KO-YS-TS,V4FNUM,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"12---V4FN22: $FNUMBER function -2-" ; W !,"fncodt=""t""" ; 1 S ^ABSN="40093",^ITEM="IV-93 $FN(-00,""t"")" S ^NEXT="2^V4FN22,V4FN23^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-00,"t") S ^VCORR="0 " D ^VEXAMINE ; 2 S ^ABSN="40094",^ITEM="IV-94 $FN(1,""t"")" S ^NEXT="3^V4FN22,V4FN23^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(1,"t") S ^VCORR="1 " D ^VEXAMINE ; 3 S ^ABSN="40095",^ITEM="IV-95 $FN(-1,""t"")" S ^NEXT="4^V4FN22,V4FN23^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-1,"t") S ^VCORR="1-" D ^VEXAMINE ; 4 S ^ABSN="40096",^ITEM="IV-96 $FN(0020.00000,""t"")" S ^NEXT="5^V4FN22,V4FN23^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(0020.00000,"t") S ^VCORR="20 " D ^VEXAMINE ; 5 S ^ABSN="40097",^ITEM="IV-97 $FN(31267,""t"")" S ^NEXT="6^V4FN22,V4FN23^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(31267,"t") S ^VCORR="31267 " D ^VEXAMINE ; 6 S ^ABSN="40098",^ITEM="IV-98 $FN(000000000000000000000000262999219,""t"")" S ^NEXT="7^V4FN22,V4FN23^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(000000000000000000000000262999219,"t") S ^VCORR="262999219 " D ^VEXAMINE ; 7 S ^ABSN="40099",^ITEM="IV-99 $FN(-000000000000000000000000262999219,""t"")" S ^NEXT="8^V4FN22,V4FN23^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-000000000000000000000000262999219,"t") S ^VCORR="262999219-" D ^VEXAMINE ; 8 S ^ABSN="40100",^ITEM="IV-100 $fn(123456789,""t"")" S ^NEXT="9^V4FN22,V4FN23^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$fn(123456789,"t") S ^VCORR="123456789 " D ^VEXAMINE ; 9 S ^ABSN="40101",^ITEM="IV-101 $FN(31267,""t,"")" S ^NEXT="10^V4FN22,V4FN23^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(31267,"t,") S ^VCORR="31,267 " D ^VEXAMINE ; 10 S ^ABSN="40102",^ITEM="IV-102 $FN(-31267,""t,"")" S ^NEXT="V4FN23^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-31267,"t,") S ^VCORR="31,267-" D ^VEXAMINE ; END W !!,"End of 12 --- V4FN22",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4FN23 V4FN23 ;IW-KO-YS-TS,V4FNUM,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"13---V4FN23: $FNUMBER function -3-" ; 1 S ^ABSN="40103",^ITEM="IV-103 $FN(1E25,""t,"")" S ^NEXT="2^V4FN23,V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(1E25,"t,") S ^VCORR="10,000,000,000,000,000,000,000,000 " D ^VEXAMINE ; 2 S ^ABSN="40104",^ITEM="IV-104 $FN(-1E25,""t,"")" S ^NEXT="3^V4FN23,V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-1E25,"t,") S ^VCORR="10,000,000,000,000,000,000,000,000-" D ^VEXAMINE ; 3 S ^ABSN="40105",^ITEM="IV-105 $FN(-981000000000,"",t"")" S ^NEXT="4^V4FN23,V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-981000000000,",t") S ^VCORR="981,000,000,000-" D ^VEXAMINE ; 4 S ^ABSN="40106",^ITEM="IV-106 $FN(31267,""t+"")" S ^NEXT="5^V4FN23,V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(31267,"t+") S ^VCORR="31267+" D ^VEXAMINE ; 5 S ^ABSN="40107",^ITEM="IV-107 $FN(981000000000,""t+"")" S ^NEXT="6^V4FN23,V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(981000000000,"t+") S ^VCORR="981000000000+" D ^VEXAMINE ; 6 S ^ABSN="40108",^ITEM="IV-108 $FN(-000000000000000000000000262999219,""+t"")" S ^NEXT="7^V4FN23,V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-000000000000000000000000262999219,"+t") S ^VCORR="262999219-" D ^VEXAMINE ; 7 S ^ABSN="40109",^ITEM="IV-109 $FN(-00020.00000,""t-"")" S ^NEXT="8^V4FN23,V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-00020.00000,"t-") S ^VCORR="20 " D ^VEXAMINE ; 8 S ^ABSN="40110",^ITEM="IV-110 $FN(981000000000,""t-"")" S ^NEXT="9^V4FN23,V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(981000000000,"t-") S ^VCORR="981000000000 " D ^VEXAMINE ; 9 S ^ABSN="40111",^ITEM="IV-111 $FN(00670.00789200,""-t"")" S ^NEXT="10^V4FN23,V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(00670.00789200,"-t") S ^VCORR="670.007892 " D ^VEXAMINE ; 10 S ^ABSN="40112",^ITEM="IV-112 $FN(1E25,""t,+"")" S ^NEXT="11^V4FN23,V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(1E25,"t,+") S ^VCORR="10,000,000,000,000,000,000,000,000+" D ^VEXAMINE ; 11 S ^ABSN="40113",^ITEM="IV-113 $FN(-1E25,""t,+"")" S ^NEXT="V4FN24^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-1E25,"t,+") S ^VCORR="10,000,000,000,000,000,000,000,000-" D ^VEXAMINE ; END W !!,"End of 13 --- V4FN23",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4FN24 V4FN24 ;IW-KO-YS-TS,V4FNUM,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"14---V4FN24: $FNUMBER function -4-" ; 1 S ^ABSN="40114",^ITEM="IV-114 $FN(31267,""t,-"")" S ^NEXT="2^V4FN24,V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(31267,"t,-") S ^VCORR="31,267 " D ^VEXAMINE ; 2 S ^ABSN="40115",^ITEM="IV-115 $FN(00670.00789200,""-,t"")" S ^NEXT="3^V4FN24,V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(00670.00789200,"-,t") S ^VCORR="670.007892 " D ^VEXAMINE ; 3 S ^ABSN="40116",^ITEM="IV-116 $FN(-00020.00000,""t+-"")" S ^NEXT="4^V4FN24,V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-00020.00000,"t+-") S ^VCORR="20 " D ^VEXAMINE ; 4 S ^ABSN="40117",^ITEM="IV-117 $FN(00670.00789200,""-t+"")" S ^NEXT="5^V4FN24,V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET ;(test fixed in V9.02;7/10/95) S ^VCOMP=$FN(00670.00789200,"-t+") S ^VCORR="670.007892+" D ^VEXAMINE ; 5 S ^ABSN="40118",^ITEM="IV-118 $FN(31267,""t,+-"")" S ^NEXT="6^V4FN24,V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(31267,"t,+-") S ^VCORR="31,267+" D ^VEXAMINE ; 6 S ^ABSN="40119",^ITEM="IV-119 $FN(1E25,""t,+-"")" S ^NEXT="7^V4FN24,V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(1E25,"t,+-") S ^VCORR="10,000,000,000,000,000,000,000,000+" D ^VEXAMINE ; 7 S ^ABSN="40120",^ITEM="IV-120 $FN(-1E25,""t,+-"")" S ^NEXT="8^V4FN24,V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-1E25,"t,+-") S ^VCORR="10,000,000,000,000,000,000,000,000 " D ^VEXAMINE ; 8 S ^ABSN="40121",^ITEM="IV-121 $FN(00.235E8,""+-+t+tT,,,,,,,,"")" S ^NEXT="9^V4FN24,V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(00.235E8,"+-+t+tT,,,,,,,,") S ^VCORR="23,500,000+" D ^VEXAMINE ; W !,"fncodp=""p""" ; 9 S ^ABSN="40122",^ITEM="IV-122 $FN(0000,""p"")" S ^NEXT="10^V4FN24,V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(0000,"p") S ^VCORR=" 0 " D ^VEXAMINE ; 10 S ^ABSN="40123",^ITEM="IV-123 $FN(1,""p"")" S ^NEXT="11^V4FN24,V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(1,"p") S ^VCORR=" 1 " D ^VEXAMINE ; 11 S ^ABSN="40124",^ITEM="IV-124 $FN(-1,""p"")" S ^NEXT="V4FN25^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-1,"p") S ^VCORR="(1)" D ^VEXAMINE ; END W !!,"End of 14 --- V4FN24",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4FN25 V4FN25 ;IW-KO-YS-TS,V4FNUM,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"15---V4FN25: $FNUMBER function -5-" ; 1 S ^ABSN="40125",^ITEM="IV-125 $FN(00670.00789200,""p"")" S ^NEXT="2^V4FN25,V4FN31^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(00670.00789200,"p") S ^VCORR=" 670.007892 " D ^VEXAMINE ; 2 S ^ABSN="40126",^ITEM="IV-126 $FN(-00670.00789200,""p"")" S ^NEXT="3^V4FN25,V4FN31^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-00670.00789200,"p") S ^VCORR="(670.007892)" D ^VEXAMINE ; 3 S ^ABSN="40127",^ITEM="IV-127 $FN(31267,""p,"")" S ^NEXT="4^V4FN25,V4FN31^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(31267,"p,") S ^VCORR=" 31,267 " D ^VEXAMINE ; 4 S ^ABSN="40128",^ITEM="IV-128 $FN(-31267,""p,"")" S ^NEXT="5^V4FN25,V4FN31^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-31267,"p,") S ^VCORR="(31,267)" D ^VEXAMINE ; 5 S ^ABSN="40129",^ITEM="IV-129 $FN(1E25,""p,"")" S ^NEXT="6^V4FN25,V4FN31^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(1E25,"p,") S ^VCORR=" 10,000,000,000,000,000,000,000,000 " D ^VEXAMINE ; 6 S ^ABSN="40130",^ITEM="IV-130 $FN(-1E25,""p,"")" S ^NEXT="7^V4FN25,V4FN31^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-1E25,"p,") S ^VCORR="(10,000,000,000,000,000,000,000,000)" D ^VEXAMINE ; 7 S ^ABSN="40131",^ITEM="IV-131 $FN(-00670.00789200,"",p"")" S ^NEXT="8^V4FN25,V4FN31^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-00670.00789200,",p") S ^VCORR="(670.007892)" D ^VEXAMINE ; 8 S ^ABSN="40132",^ITEM="IV-132 $FN(981000000000,""pp"")" S ^NEXT="9^V4FN25,V4FN31^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(981000000000,"pp") S ^VCORR=" 981000000000 " D ^VEXAMINE ; 9 S ^ABSN="40133",^ITEM="IV-133 $FN(-262999219E+4,""pp,"")" S ^NEXT="V4FN31^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-262999219E+4,"pp,") S ^VCORR="(2,629,992,190,000)" D ^VEXAMINE ; END W !!,"End of 15 --- V4FN25",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4FN31 V4FN31 ;IW-KO-YS-TS,V4FNUM,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"16---V4FN31: $FNUMBER function -6-" ; W !!,"$FNUMBER(numexpr,fncodexpr,intexpr)" W !,"fncodexpr is an empty string" ; 1 S ^ABSN="40134",^ITEM="IV-134 $FNUMBER(-00020000.00000,"""",0)" S ^NEXT="2^V4FN31,V4FN32^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$FNUMBER(-00020000.00000,"",0) ;S ^VCORR="-20000" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-134 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; 2 S ^ABSN="40135",^ITEM="IV-135 $FN(09878979.78E-2,"""",1)" S ^NEXT="3^V4FN31,V4FN32^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$FN(09878979.78E-2,"",1) ;S ^VCORR="98789.8" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-135 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; 3 S ^ABSN="40136",^ITEM="IV-136 $FN(-""0000.951200000"","""",1)" S ^NEXT="4^V4FN31,V4FN32^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$FN(-"0000.951200000","",1) ;S ^VCORR="-1.0" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-136 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; 4 S ^ABSN="40137",^ITEM="IV-137 $FN(""603.450000000E+4"","""",3)" S ^NEXT="5^V4FN31,V4FN32^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$FN("603.450000000E+4","",3) ;S ^VCORR="6034500.000" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-137 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; 5 S ^ABSN="40138",^ITEM="IV-138 $fn(9.999979,"""",4)" S ^NEXT="6^V4FN31,V4FN32^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$fn(9.999979,"",4) ;S ^VCORR="10.0000" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-138 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; 6 S ^ABSN="40139",^ITEM="IV-139 $fn(0000.00000951200000,"""",8)" S ^NEXT="7^V4FN31,V4FN32^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$fn(0000.00000951200000,"",8) ;S ^VCORR="0.00000951" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-139 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; 7 S ^ABSN="40140",^ITEM="IV-140 $FN(-0000.00000951200000,"""",8)" S ^NEXT="V4FN32^V4FNUM,V4REV^VV4" D ^V4PRESET ;S ^VCOMP=$FN(-0000.00000951200000,"",8) ;S ^VCORR="-0.00000951" D ^VEXAMINE W !," ",^ITEM W !," (This test IV-140 was withdrawn in 31/3/1995 on X11.1-1994, MSL)" S ^VREPORT("Part-94",^ABSN)="*WITHDR*" ; END W !!,"End of 16 --- V4FN31",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4FN32 V4FN32 ;IW-KO-YS-TS,V4FNUM,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"17---V4FN32: $FNUMBER function -7-" ; W !,"fncodp=""p""" ; 1 S ^ABSN="40141",^ITEM="IV-141 $FN(1234.56789,""p"",1)" S ^NEXT="2^V4FN32,V4FN33^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(1234.56789,"p",1) S ^VCORR=" 1234.6 " D ^VEXAMINE ; 2 S ^ABSN="40142",^ITEM="IV-142 $fn(-0.123456789,""p"",3)" S ^NEXT="3^V4FN32,V4FN33^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$fn(-0.123456789,"p",3) S ^VCORR="(0.123)" D ^VEXAMINE ; 3 S ^ABSN="40143",^ITEM="IV-143 $FN(1E25,""p,"",4)" S ^NEXT="4^V4FN32,V4FN33^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(1E25,"p,",4) S ^VCORR=" 10,000,000,000,000,000,000,000,000.0000 " D ^VEXAMINE ; 4 S ^ABSN="40144",^ITEM="IV-144 $FN(-1E25,""p,"",4)" S ^NEXT="5^V4FN32,V4FN33^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-1E25,"p,",4) S ^VCORR="(10,000,000,000,000,000,000,000,000.0000)" D ^VEXAMINE ; 5 S ^ABSN="40145",^ITEM="IV-145 $FN(-262999219E+4,""pp,"",1)" S ^NEXT="6^V4FN32,V4FN33^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-262999219E+4,"pp,",1) S ^VCORR="(2,629,992,190,000.0)" D ^VEXAMINE ; W !,"fncodt=""t""" ; 6 S ^ABSN="40146",^ITEM="IV-146 $fn(0.123456789,""t"",4)" S ^NEXT="7^V4FN32,V4FN33^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$fn(0.123456789,"t",4) S ^VCORR="0.1235 " D ^VEXAMINE ; 7 S ^ABSN="40147",^ITEM="IV-147 $FN(-000000000000000000000000262999219,"",p"",0)" S ^NEXT="8^V4FN32,V4FN33^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-000000000000000000000000262999219,",p",0) S ^VCORR="(262,999,219)" D ^VEXAMINE ; 8 S ^ABSN="40148",^ITEM="IV-148 $FN(-07566.5892490,""-,t"",4)" S ^NEXT="9^V4FN32,V4FN33^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-07566.5892490,"-,t",4) S ^VCORR="7,566.5892 " D ^VEXAMINE ; 9 S ^ABSN="40149",^ITEM="IV-149 $FN(-07566.5892400,""+,t"",10)" S ^NEXT="V4FN33^V4FNUM,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-07566.5892400,"+,t",10) S ^VCORR="7,566.5892400000-" D ^VEXAMINE ; END W !!,"End of 17 --- V4FN32",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4FN33 V4FN33 ;IW-KO-YS-TS,V4FNUM,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"18---V4FN33: $FNUMBER function -8-" ; 1 S ^ABSN="40150",^ITEM="IV-150 $FN(-.0004683,""-t"",4)" S ^NEXT="2^V4FN33,V4REV^VV4" D ^V4PRESET S ^VCOMP=$FN(-.0004683,"-t",4) S ^VCORR="0.0005 " D ^VEXAMINE ; 2 S ^ABSN="40151",^ITEM="IV-151 $Fn(-0,""t"",-0.9)" S ^NEXT="3^V4FN33,V4REV^VV4" D ^V4PRESET S ^VCOMP=$Fn(-0,"t",-0.9) S ^VCORR="0 " D ^VEXAMINE ; 3 S ^ABSN="40152",^ITEM="IV-152 $fn(.7494646,""+,t"",1)" S ^NEXT="4^V4FN33,V4REV^VV4" D ^V4PRESET S ^VCOMP=$fn(.7494646,"+,t",1) S ^VCORR="0.7+" D ^VEXAMINE ; 4 S ^ABSN="40153",^ITEM="IV-153 $fn(++1245E20,""t,"",4)" S ^NEXT="V4REV^VV4" D ^V4PRESET S ^VCOMP=$fn(++1245E20,"t,",4) S ^VCORR="124,500,000,000,000,000,000,000.0000 " D ^VEXAMINE ; END W !!,"End of 18 --- V4FN33",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4REV V4REV ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"Tests of $REVERSE function" ; V4REV1 W !!,"19---V4REV1" D ^V4REV1 V4REV2 W !!,"20---V4REV2" D ^V4REV2 V4REV3 W !!,"21---V4REV3" D ^V4REV3 V4REV4 W !!,"22---V4REV4" D ^V4REV4 END Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4REV1 V4REV1 ;IW-KO-YS-TS,V4REV,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"19---V4REV1: $REVERSE function -1-" ; 1 S ^ABSN="40154",^ITEM="IV-154 expr is a string" S ^NEXT="2^V4REV1,V4REV2^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$REVERSE("abcdEF456GHIJ") S ^VCORR="JIHG654FEdcba" D ^VEXAMINE ; 2 S ^ABSN="40155",^ITEM="IV-155 expr is a character" S ^NEXT="3^V4REV1,V4REV2^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$RE("[") S ^VCORR="[" D ^VEXAMINE ; 3 S ^ABSN="40156",^ITEM="IV-156 expr is an empty string" S ^NEXT="4^V4REV1,V4REV2^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$re("") S ^VCORR="" D ^VEXAMINE ; 4 S ^ABSN="40157",^ITEM="IV-157 expr is an integer number" S ^NEXT="5^V4REV1,V4REV2^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$re(1234567890) S ^VCORR="0987654321" D ^VEXAMINE ; 5 S ^ABSN="40158",^ITEM="IV-158 expr is a number" S ^NEXT="6^V4REV1,V4REV2^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$Re(4745848.0400E-5) S ^VCORR="4084854.74" D ^VEXAMINE ; 6 S ^ABSN="40159",^ITEM="IV-159 expr is a negative number" S ^NEXT="V4REV2^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$Re(-000.05474580400E+5) S ^VCORR="4085.4745-" D ^VEXAMINE ; END W !!,"End of 19 --- V4REV1",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4REV2 V4REV2 ;IW-KO-YS-TS,V4REV,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"20---V4REV2: $REVERSE function -2-" ; 1 S ^ABSN="40160",^ITEM="IV-160 expr is a lvn" S ^NEXT="2^V4REV2,V4REV3^V4REV,V4GET2^VV4" D ^V4PRESET s V=1,VV(1,0,345)=0001.2000000 S ^VCOMP=$RE(VV(V,0,345)) S ^VCORR="2.1" D ^VEXAMINE ; 2 S ^ABSN="40161",^ITEM="IV-161 expr is a gvn" S ^NEXT="3^V4REV2,V4REV3^V4REV,V4GET2^VV4" D ^V4PRESET k ^VV S ^VV(1,2,3,"A",4)="xyz "_"QWE "_0123.450 S ^VCOMP=$re(^VV(1,2,3,"A",4)) S ^VCORR="54.321 EWQ zyx" D ^VEXAMINE K ^VV ; 3 S ^ABSN="40162",^ITEM="IV-162 expr is a svn" S ^NEXT="4^V4REV2,V4REV3^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$REVERSE($JOB) S E=$JOB,R="" F I=$L(E):-1:1 S R=R_$E(E,I) S ^VCORR=R D ^VEXAMINE ; 4 S ^ABSN="40163",^ITEM="IV-163 expr is a naked reference" S ^NEXT="5^V4REV2,V4REV3^V4REV,V4GET2^VV4" D ^V4PRESET k ^VV s ^VV(1,2,3,"A",4)=345E-6 s VV=$D(^VV(1,2,3,"B")) S ^VCOMP=$reverse(^("A",4))_" "_^(4) S ^VCORR="543000. .000345" D ^VEXAMINE K ^VV ; 5 S ^ABSN="40164",^ITEM="IV-164 expr is composed of control characters" S ^NEXT="6^V4REV2,V4REV3^V4REV,V4GET2^VV4" D ^V4PRESET S VV="" F I=0:1:31 S VV=VV_$C(I) S VV1="" F I=31:-1:0 S VV1=VV1_$C(I) S ^VCOMP=$re(VV) S ^VCORR=VV1 D ^VEXAMINE ; 6 S ^ABSN="40165",^ITEM="IV-165 expr is a string with maximum length" S ^NEXT="7^V4REV2,V4REV3^V4REV,V4GET2^VV4" D ^V4PRESET S VV="" F I=0:1:126 S VV=VV_$C(I) F I=0:1:127 S VV=VV_$C(I) S VV1="" F I=127:-1:0 S VV1=VV1_$C(I) F I=126:-1:0 S VV1=VV1_$C(I) S ^VCOMP=$re(VV) S ^VCORR=VV1 D ^VEXAMINE ; 7 S ^ABSN="40166",^ITEM="IV-166 expr contains a unary operator" S ^NEXT="8^V4REV2,V4REV3^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$REVERSE(-"+98765E++5ABCDEF") S ^VCORR="56789-" D ^VEXAMINE ; 8 S ^ABSN="40167",^ITEM="IV-167 expr contains a binary operator" S ^NEXT="9^V4REV2,V4REV3^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$reverse("XYZABCDEF45"?2.U3.N) S ^VCORR="0" D ^VEXAMINE ; 9 S ^ABSN="40168",^ITEM="IV-168 expr contains operators" S ^NEXT="V4REV3^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$RE(+-+-++"3E1A"=30+122) S ^VCORR="321" D ^VEXAMINE ; END W !!,"End of 20 --- V4REV2",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4REV3 V4REV3 ;IW-KO-YS-TS,V4REV,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"21---V4REV3: $REVERSE function -3-" ; W !,"expr contains functions" ; 1 S ^ABSN="40169",^ITEM="IV-169 expr contains a $ORDER function" S ^NEXT="2^V4REV3,V4REV4^V4REV,V4GET2^VV4" D ^V4PRESET K VV,^VV S VV("KFLR456")="",VV("456")="" S ^VV("KFLR456")="",^VV("456")="" S ^VCOMP=$RE($O(VV("")))_" "_$RE($O(VV($O(VV("")))))_"/" S ^VCOMP=^VCOMP_$RE($O(^VV("")))_" "_$RE($O(^VV($O(^VV(""))))) S ^VCORR="654 654RLFK/654 654RLFK" D ^VEXAMINE K VV,^VV ; 2 S ^ABSN="40170",^ITEM="IV-170 expr contains a $GET function" S ^NEXT="3^V4REV3,V4REV4^V4REV,V4GET2^VV4" D ^V4PRESET K VV S ^VCOMP=$re($G(VV(3,4,5))) S ^VCORR="" D ^VEXAMINE ; 3 S ^ABSN="40171",^ITEM="IV-171 expr contains extrinsic special variable" S ^NEXT="4^V4REV3,V4REV4^V4REV,V4GET2^VV4" D ^V4PRESET K VV S VV("abcdefghijklmnopqrstuvwxyz")="123" S ^VCOMP=$RE($$VVNEXT) S ^VCORR="zyxwvutsrqponmlkjihgfedcba" D ^VEXAMINE ; 4 S ^ABSN="40172",^ITEM="IV-172 expr contains extrinsic function" S ^NEXT="5^V4REV3,V4REV4^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$re($$REV("NAMEname")) S ^VCORR="NAMEname" D ^VEXAMINE ; 5 S ^ABSN="40173",^ITEM="IV-173 expr contains nested functions" S ^NEXT="6^V4REV3,V4REV4^V4REV,V4GET2^VV4" D ^V4PRESET S ^VCOMP=$re($REVERSE("abcdefghijklmnopqrstuvwxyz")_3.1E-00) S ^VCORR="1.3abcdefghijklmnopqrstuvwxyz" D ^VEXAMINE ; W !,"expr has indirections" ; 6 S ^ABSN="40174",^ITEM="IV-174 ^VV(@A)" S ^NEXT="V4REV4^V4REV,V4GET2^VV4" D ^V4PRESET K A,^VV,B S A="B(0)",B(0)="56.78",^VV(B(0))="ABCDEFGHIJKLMNOPQRSTUVWXYZ" S ^VCOMP=$RE(^VV(@A)) S ^VCORR="ZYXWVUTSRQPONMLKJIHGFEDCBA" D ^VEXAMINE K ^VV ; END W !!,"End of 21 --- V4REV3",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; VVNEXT() Q $O(VV("")) ; REV(E) Q $S(E="":"",1:$$REV($E(E,2,$L(E)))_$E(E,1)) ; V4REV4 V4REV4 ;IW-KO-YS-TS,V4REV,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"22---V4REV4: $REVERSE function -4-" ; 1 S ^ABSN="40175",^ITEM="IV-175 @VV" S ^NEXT="2^V4REV4,V4GET2^VV4" D ^V4PRESET S VV="V1(V2)",V1("ABC")="$E(321)",V2="ABC" S ^VCOMP=$REVERSE(@VV) S ^VCORR=")123(E$" D ^VEXAMINE ; 2 S ^ABSN="40176",^ITEM="IV-176 @^VV@(12,456)" S ^NEXT="3^V4REV4,V4GET2^VV4" D ^V4PRESET K ^V1,^VV S ^VV="^V1(3,$E(""987654321987654321"",.8+10/3))" S ^V1(3,7,12,456)=$L("abcdefghijklmnopqrstuvwxyz") S ^VCOMP=$re(@^VV@(12,456)) S ^VCORR="62" D ^VEXAMINE K ^VV,^V1 ; 3 S ^ABSN="40177",^ITEM="IV-177 @@^VV(0)@(12,456)" S ^NEXT="4^V4REV4,V4GET2^VV4" D ^V4PRESET K ^VV,^V1 S ^VV(0)="^V1(3,$E(""987654321987654321"",.8+10/3))" S ^V1(3,7,12,456)="VV",VV=-3456789E-4 S ^VCOMP=$RE(@@^VV(0)@(12,456)) S ^VCORR="9876.543-" D ^VEXAMINE K ^VV,^V1 ; 4 S ^ABSN="40178",^ITEM="IV-178 nesting" S ^NEXT="V4GET2^VV4" D ^V4PRESET K ^VV,^V1 S ^VV(0)="^V1(3,$E(""987654321987654321"",.8+10/3))" K S VV(1)="@A",VV="VV(3)",A="B(C)",C="abc",B("abc")="ABC" S VV(3,"ABC",4)="10;20" s ^V1(3,7,"10;20","ABC")="^V1(C,2)",^V1("abc",2)="XYZ" S ^VCOMP=$RE(@@^VV(0)@(@VV@(@@"A",4),@VV(1))) S ^VCORR="ZYX" D ^VEXAMINE K ^V1,^VV ; END W !!,"End of 22 --- V4REV4",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4GET2 V4GET2 ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"Tests of $GET function" ; V4GET21 W !!,"23---V4GET21" D ^V4GET21 V4GET22 W !!,"24---V4GET22" D ^V4GET22 V4GET23 W !!,"25---V4GET23" D ^V4GET23 V4GET24 W !!,"26---V4GET24" D ^V4GET24 V4GET25 W !!,"27---V4GET25" D ^V4GET25 V4GET26 W !!,"28---V4GET26" D ^V4GET26 V4GET27 W !!,"29---V4GET27" D ^V4GET27 V4GET28 W !!,"30---V4GET28" D ^V4GET28 V4GET29 W !!,"31---V4GET29" D ^V4GET29 END Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4GET21 V4GET21 ;IW-KO-YS-TS,V4GET2,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"23---V4GET21: $GET function -1-" ; W !,"glvn=lvn" ; 1 S ^ABSN="40179",^ITEM="IV-179 $D(lvn)=0" S ^NEXT="2^V4GET21,V4GET22^V4GET2,V4NAME^VV4" D ^V4PRESET K K VV S ^VCOMP=$GET(VV(1,2),"OK") S ^VCORR="OK" D ^VEXAMINE ; 2 S ^ABSN="40180",^ITEM="IV-180 $D(lvn)=1" S ^NEXT="3^V4GET21,V4GET22^V4GET2,V4NAME^VV4" D ^V4PRESET K K VV S VV="DATA OK" S ^VCOMP=$G(VV,"error") S ^VCORR="DATA OK" D ^VEXAMINE ; 3 S ^ABSN="40181",^ITEM="IV-181 $D(lvn)=10" S ^NEXT="4^V4GET21,V4GET22^V4GET2,V4NAME^VV4" D ^V4PRESET K K VV S VV("A","B","C")="ABC" S ^VCOMP=$get(VV("A"),"XYZ") S ^VCORR="XYZ" D ^VEXAMINE ; 4 S ^ABSN="40182",^ITEM="IV-182 $D(lvn)=11" S ^NEXT="5^V4GET21,V4GET22^V4GET2,V4NAME^VV4" D ^V4PRESET K K VV S VV("A","B","C")="ABC",VV("A","B","C","D")="ABCD" S ^VCOMP=$get(VV("A","B","C"),"XYZ") S ^VCORR="ABC" D ^VEXAMINE ; w !,"lvn has indirections" ; 5 S ^ABSN="40183",^ITEM="IV-183 VV(@A)" S ^NEXT="6^V4GET21,V4GET22^V4GET2,V4NAME^VV4" D ^V4PRESET K S A="B(123)",B(123)="123",VV(123,345)=345 S ^VCOMP=$g(VV(@A),123) S ^VCORR="123" D ^VEXAMINE ; 6 S ^ABSN="40184",^ITEM="IV-184 @VV" S ^NEXT="V4GET22^V4GET2,V4NAME^VV4" D ^V4PRESET K S VV="V(12.45,567)",V(12.45,567)="DATA",V="v" S ^VCOMP=$g(@VV,V) S ^VCORR="DATA" D ^VEXAMINE ; END W !!,"End of 23 --- V4GET21",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4GET22 V4GET22 ;IW-KO-YS-TS,V4GET2,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"24---V4GET22: $GET function -2-" ; 1 S ^ABSN="40185",^ITEM="IV-185 @VV@(12,456)" S ^NEXT="2^V4GET22,V4GET23^V4GET2,V4NAME^VV4" D ^V4PRESET K S V(12)=12000,VV="V" S ^VCOMP=$g(@VV@(12,456),V(12)) S ^VCORR="12000" D ^VEXAMINE ; 2 S ^ABSN="40186",^ITEM="IV-186 @@VV(0)@(12,456)" S ^NEXT="3^V4GET22,V4GET23^V4GET2,V4NAME^VV4" D ^V4PRESET K S VV(0)="V(""A"",34.4E-1)",V("A",3.44)="V(00.344,5.6)" S V("A",00.344000E1,12,456)="VV(1)" S ^VCOMP=$get(@@VV(0)@(12,45600E-2),@VV(0)) S ^VCORR="V(00.344,5.6)" D ^VEXAMINE ; 3 S ^ABSN="40187",^ITEM="IV-187 nesting" S ^NEXT="4^V4GET22,V4GET23^V4GET2,V4NAME^VV4" D ^V4PRESET K S VV(0)="V(""A"",34.4E-1)",V("A",3.44)="V(003.44,5.6)" S V(003.44000,0005.600)="VV(""A"",3.44)" S V("A",3.44,12,456)="@V(003.44,5.6)" S V(03.44,5.6)="V(-456,67)",V(-456,67)="NEST" S ^VCOMP=$get(@@VV(0)@(12,456),@VV(0)) S ^VCORR="NEST" D ^VEXAMINE ; ; 4 S ^ABSN="40188",^ITEM="IV-188 lvn contains extrinsic special variable" S ^NEXT="5^V4GET22,V4GET23^V4GET2,V4NAME^VV4" D ^V4PRESET K s A(1)="##" S ^VCOMP=$g(@$$GETNAME,"abc") S ^VCORR="##" D ^VEXAMINE ; 5 S ^ABSN="40189",^ITEM="IV-189 lvn contains extrinsic function" S ^NEXT="6^V4GET22,V4GET23^V4GET2,V4NAME^VV4" D ^V4PRESET K S ABC="abc" S ^VCOMP=$G(@$$ABC^V4GETE(ABC,.ABC,"X"),ABC) S ^VCORR="abc/abc/" D ^VEXAMINE ; 6 S ^ABSN="40190",^ITEM="IV-190 lvn contains nesting functions" S ^NEXT="V4GET23^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV s ^VV(123)=$c(66),C(1,2,3,4,5,6)="C(1)" S ^VCOMP=$get(@@$p($c(65,66,67),^VV(123),$f("abc","a"))@(1,2,3,4,5,6),9) S ^VCORR="9" D ^VEXAMINE ; END W !!,"End of 24 --- V4GET22",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q GETNAME() K VV,V Q "A(1)" ; GETDATA() Q "##" ; V4GET23 V4GET23 ;IW-KO-YS-TS,V4GET2,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"25---V4GET23: $GET function -3-" ; 1 S ^ABSN="40191",^ITEM="IV-191 expr is an empty string" S ^NEXT="2^V4GET23,V4GET24^V4GET2,V4NAME^VV4" D ^V4PRESET K s AAAA="A(""ABC"")" S ^VCOMP=$get(@AAAA,"") S ^VCORR="" D ^VEXAMINE ; 2 S ^ABSN="40192",^ITEM="IV-192 expr is an integer number" S ^NEXT="3^V4GET23,V4GET24^V4GET2,V4NAME^VV4" D ^V4PRESET K S ^VCOMP=$g(C(1,2,3,4,5,6,7,8,9,10),1E25) S ^VCORR="10000000000000000000000000" D ^VEXAMINE ; 3 S ^ABSN="40193",^ITEM="IV-193 expr is a number" S ^NEXT="4^V4GET23,V4GET24^V4GET2,V4NAME^VV4" D ^V4PRESET K S ^VCOMP=$g(@"AA",-1E-25) S ^VCORR="-.0000000000000000000000001" D ^VEXAMINE ; 4 S ^ABSN="40194",^ITEM="IV-194 expr is a string" S ^NEXT="5^V4GET23,V4GET24^V4GET2,V4NAME^VV4" D ^V4PRESET K S ^VCOMP=$g(AA(1),"1.0") S ^VCORR="1.0" D ^VEXAMINE ; 5 S ^ABSN="40195",^ITEM="IV-195 expr is a string with maximum length" S ^NEXT="6^V4GET23,V4GET24^V4GET2,V4NAME^VV4" D ^V4PRESET K s MAX=$j("",255),X="" s X=X_" " s X=X_" " s X=X_" " s X=X_" " S ^VCOMP=$g(AA,MAX) S ^VCORR=X D ^VEXAMINE ; 6 S ^ABSN="40196",^ITEM="IV-196 expr is a naked reference" S ^NEXT="7^V4GET23,V4GET24^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV s ^VV("A",1,2,3)="A123" s ^VV("A",1,2,4)="A124" s ^VV("A",4)="A4" s ^VV("B",1,2,3)="B123" s ^VV("B",1,2,4)="B124" s ^VV("B",1)="B1" S A(1)=1 S ^VCOMP=$g(A($d(^VV("A",1))),^(1,2,3))_" "_^(4) S ^VCORR="A123 A124" D ^VEXAMINE K ^VV ; 7 S ^ABSN="40197",^ITEM="IV-197 expr is a lvn" S ^NEXT="8^V4GET23,V4GET24^V4GET2,V4NAME^VV4" D ^V4PRESET K S A="A",A(3)=3,A(2,3)=23,A(2.1)=2.1 S ^VCOMP=$GET(A(6/3),A(2,3)) S ^VCORR="23" D ^VEXAMINE ; 8 S ^ABSN="40198",^ITEM="IV-198 expr is a gvn" S ^NEXT="9^V4GET23,V4GET24^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S A="B",B="C",C="D",VV("D")="DD" S ^VV("A")="A",^VV(1,"A")=21 S ^VV("B")="B",^VV(1,"B")=22 S ^VCOMP=$G(VV(@@A),^VV(1,"A"))_" "_^("B") S ^VCORR="DD 22" D ^VEXAMINE K ^VV ; 9 S ^ABSN="40199",^ITEM="IV-199 expr is a svn" S ^NEXT="V4GET24^V4GET2,V4NAME^VV4" D ^V4PRESET K I 1 S A=12 S:A=13 H(1)=123 S ^VCOMP=$G(H(1),$TEST) S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 25 --- V4GET23",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4GET24 V4GET24 ;IW-KO-YS-TS,V4GET2,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"26---V4GET24: $GET function -4-" ; W !,"expr contains a function" ; 1 S ^ABSN="40200",^ITEM="IV-200 expr contains $DATA function" S ^NEXT="2^V4GET24,V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VCOMP S A(1,2,3,4)=1234 S A(1,2,3,4,5,6)=123456 S ^VCOMP=$G(A(1,2,3,4),$D(^VCOMP)) S ^VCORR="1234" D ^VEXAMINE ; 2 S ^ABSN="40201",^ITEM="IV-201 expr contains $SELECT function" S ^NEXT="3^V4GET24,V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K S A=1000 IF 0 S A(1)="$T",X=4 S ^VCOMP=$G(A($T),$SELECT(A>1000:X*10,A=1000:X*100,1:X*10000)) S ^VCORR="400" D ^VEXAMINE ; 3 S ^ABSN="40202",^ITEM="IV-202 expr contains $GET function" S ^NEXT="4^V4GET24,V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K s NAM("A","B")="VV(""A"")",VV("A")="A" S BB="B(1)",CC="C1" S ^VCOMP=$GET(@NAM($g(VV("A"),"A"),$g(AA(1),"B")),123) S ^VCORR="A" D ^VEXAMINE ; 4 S ^ABSN="40203",^ITEM="IV-203 expr contains extrinsic special variable" S ^NEXT="5^V4GET24,V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K S ^VCOMP=$g(@$$GETNAME^V4GETE,$$GETDATA^V4GETE) S ^VCORR="##" D ^VEXAMINE ; 5 S ^ABSN="40204",^ITEM="IV-204 expr contains extrinsic function" S ^NEXT="6^V4GET24,V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K S X="A",Y=123.0,Z="ZZ" S ^VCOMP=$get(V("A",$E("BAC"),$TR("xys","12xx","XYZ"),"DKDKRRJKR",12),$$^V4GETE(X,Y,.Z)) S ^VCORR="Aa 123b ZZc" D ^VEXAMINE ; 6 S ^ABSN="40205",^ITEM="IV-205 expr contains nested functions" S ^NEXT="7^V4GET24,V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV(1)="A/B/C/D/E/F" S ^VCOMP=$G(A,$P($g(^VV,^VV(1)),$g(B,"/"),$s($d(V):4,1:3),$F($g(^VV(1),"/"),"/",5))) S ^VCORR="C/D/E/F" D ^VEXAMINE K ^VV ; w !,"expr has indirections" ; 7 S ^ABSN="40206",^ITEM="IV-206 ^VV(@A)" S ^NEXT="8^V4GET24,V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S A="B(1,C(8))",C(8)="88",B(1,88)="188",^VV(188)="XYZ" S ^VCOMP=$g(^VV,^VV(@A)) S ^VCORR="XYZ" D ^VEXAMINE K ^VV ; 8 S ^ABSN="40207",^ITEM="IV-207 @VV" S ^NEXT="9^V4GET24,V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K S B="1" S VV="@VV(B)",VV(1)="VV(B,B+B)",VV(1,2)="0000" S ^VCOMP=$G(A,@VV) S ^VCORR="0000" D ^VEXAMINE ; 9 S ^ABSN="40208",^ITEM="IV-208 @^VV@(12,456)" S ^NEXT="10^V4GET24,V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV(1,2,3,4,12,456)="1234567",^VV="@AA@(3,4)",^VV(1,2,3,4,12,4)="44" S AA="^VV(1,2)" S ^VCOMP=$g(A,@^VV@(12,456))_" "_^(4) S ^VCORR="1234567 44" D ^VEXAMINE K ^VV ; 10 S ^ABSN="40209",^ITEM="IV-209 @@^VV(0)@(12,456)" S ^NEXT="11^V4GET24,V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV(3,4,12,456)="12345",^VV(0)="^(3,4)",^VV(3,4,12,4)="44" S ^VCOMP=$g(A,@^VV(0)@(12,456))_" "_^(4) S ^VCORR="12345 44" D ^VEXAMINE K ^VV ; 11 S ^ABSN="40210",^ITEM="IV-210 nesting" S ^NEXT="V4GET25^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV(1,2,3,4,12,456)="@^VV(1,2)",^VV="@AA@(3,4)",^VV(1,2,3,4,12,4)="44" S AA="^VV(1,2)",^VV(1,2)="ABCD",ABCD="abcd",VV="@BB@(3,4)",BB="VV(1,2)" S VV(1,2,3,4)="@VV(1)",VV(1)="VV(99)" S ^VCOMP=$g(@@VV,@@^VV@(12,456))_" "_^(2) S ^VCORR="abcd ABCD" D ^VEXAMINE K ^VV ; END W !!,"End of 26 --- V4GET24",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4GET25 V4GET25 ;IW-KO-YS-TS,V4GET2,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"27---V4GET25: $GET function -5-" ; W !,"glvn=gvn" ; 1 S ^ABSN="40211",^ITEM="IV-211 $D(gvn)=0" S ^NEXT="2^V4GET25,V4GET26^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VCOMP=$GET(^VV(1,2),"OK") S ^VCORR="OK" D ^VEXAMINE K ^VV ; 2 S ^ABSN="40212",^ITEM="IV-212 $D(gvn)=1" S ^NEXT="3^V4GET25,V4GET26^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV("A","B")="data" S ^VCOMP=$get(^VV("A","B"),"DATA") S ^VCORR="data" D ^VEXAMINE K ^VV ; 3 S ^ABSN="40213",^ITEM="IV-213 $D(gvn)=10" S ^NEXT="4^V4GET25,V4GET26^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV("A","B","C","D")="data",^VV="^VV",^VV("b")="b" S ^VCOMP=$get(^VV("A"),"DATA") S ^VCORR="DATA" D ^VEXAMINE K ^VV ; 4 S ^ABSN="40214",^ITEM="IV-214 $D(gvn)=11" S ^NEXT="V4GET26^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV("A","B")="AB",^VV="^VV",^VV("b")="b",^VV("A")="a",^VV("A","B",1)="AB1" S ^VCOMP=$get(^VV("A","B"),"DATA") S ^VCORR="AB" D ^VEXAMINE K ^VV ; END W !!,"End of 27 --- V4GET25",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4GET26 V4GET26 ;IW-KO-YS-TS,V4GET2,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"28---V4GET26: $GET function -6-" ; W !,"gvn has indirections" ; 1 S ^ABSN="40215",^ITEM="IV-215 ^VV(@A)" S ^NEXT="2^V4GET26,V4GET27^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S A="@^VV($E(""ABCDE"",2,3))",^VV("BC")="^VV(0)",^VV(0)="ZZZ" S ^VV("ZZZ")="zzz" S ^VCOMP=$g(^VV(@A),123) S ^VCORR="zzz" D ^VEXAMINE K ^VV ; 2 S ^ABSN="40216",^ITEM="IV-216 @^VV" S ^NEXT="3^V4GET26,V4GET27^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S B="B" S ^VV="@VV@(B,""C"")",VV="@^VV(""A"")",^VV("A")="^VV(""a"")" S ^VV("a",B,"C")="aBC" S ^VCOMP=$G(@^VV,2) S ^VCORR="aBC" D ^VEXAMINE K ^VV ; 3 S ^ABSN="40217",^ITEM="IV-217 @^VV@(12,456)" S ^NEXT="4^V4GET26,V4GET27^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S Y="y",X="X(1)",X1="X(1)",X(1)=3 S ^VV="@^VV(""X"",@X1)@(@X)",^VV(1)="^VV(""X"")",^VV("X",3)="^VV(Y,Y)" S ^VV("y","y",3,12,456)="QQQ" S ^VCOMP=$G(@^VV@(12,456),1) S ^VCORR="QQQ" D ^VEXAMINE K ^VV ; 4 S ^ABSN="40218",^ITEM="IV-218 @@^VV(0)@(12,456)" S ^NEXT="5^V4GET26,V4GET27^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S X="X" S ^VV("GGG","X")="gggX" S ^VV(0)="@@@^VV(1)",^VV(1)="^VV(2)",^VV(2)="@^VV(1+2)@(8/2)" S ^VV(3)="^VV(X)",^VV("X",4)="^VV(""A"",""B"")" S ^VV("A","B",12,456)="^VV(""GGG"",@@@@@@@@X)" S ^VCOMP=$G(@@^VV(0)@(12,456),5) S ^VCORR="gggX" D ^VEXAMINE K ^VV ; 5 S ^ABSN="40219",^ITEM="IV-219 nesting" S ^NEXT="6^V4GET26,V4GET27^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S A="^VV(A)",^VV("^VV(A)")="@($E(""ABCDEFGHI"",2,3)_""(3)"")@(5,6)" S BC(3)="^VV(123)" S ^VCOMP=$G(@@A,A) S ^VCORR="^VV(A)" D ^VEXAMINE ; 6 S ^ABSN="40220",^ITEM="IV-220 gvn contains extrinsic special variable" S ^NEXT="7^V4GET26,V4GET27^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV("ABC")="abc" S ^VCOMP=$g(@$$GVN^V4GETE,$$GVN^V4GETE) S ^VCORR="abc" D ^VEXAMINE K ^VV ; 7 S ^ABSN="40221",^ITEM="IV-221 gvn contains extrinsic function" S ^NEXT="8^V4GET26,V4GET27^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S A="A",B="B",C="^VV" S ^VCOMP=$g(@($$ABC^V4GETE(A,.B,.C)_"(1)"),B) S ^VCORR="A/B/" D ^VEXAMINE K ^VV ; 8 S ^ABSN="40222",^ITEM="IV-222 gvn contains nesting functions" S ^NEXT="V4GET27^V4GET2,V4NAME^VV4" D ^V4PRESET K S A="AWWY",B="B",C="C",N=12345678,AXBXC=9 S ^VV(9)="TR" S ^VCOMP=$g(@$TR($$^V4GETE(A,.B,.C)," WYabcAB","XV(AB)^"),$FN(N,",")) S ^VCORR="TR" D ^VEXAMINE ; END W !!,"End of 28 --- V4GET26",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4GET27 V4GET27 ;IW-KO-YS-TS,V4GET2,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"29---V4GET27: $GET function -7-" ; 1 S ^ABSN="40223",^ITEM="IV-223 expr is an empty string" S ^NEXT="2^V4GET27,V4GET28^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VCOMP=$g(^VV("UUU",1),"") S ^VCORR="" D ^VEXAMINE K ^VV ; 2 S ^ABSN="40224",^ITEM="IV-224 expr is an integer number" S ^NEXT="3^V4GET27,V4GET28^V4GET2,V4NAME^VV4" D ^V4PRESET K k ^VV S ^VCOMP=$g(^VV("123.45"),-1E25) S ^VCORR="-10000000000000000000000000" D ^VEXAMINE K ^VV ; 3 S ^ABSN="40225",^ITEM="IV-225 expr is a number" S ^NEXT="4^V4GET27,V4GET28^V4GET2,V4NAME^VV4" D ^V4PRESET K k ^VV s ^VV(1)="123" S ^VCOMP=$g(^VV,1E-25) S ^VCORR=".0000000000000000000000001" D ^VEXAMINE K ^VV ; 4 S ^ABSN="40226",^ITEM="IV-226 expr is a string" S ^NEXT="5^V4GET27,V4GET28^V4GET2,V4NAME^VV4" D ^V4PRESET K k ^VV s X="" f N=0:1:31 s X=X_$c(N) s M=$c(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16) s M=M_$c(17,18,19,20,21,22,23,24,25,26,27,28,29,30,31) S ^VCOMP=$g(^VV($a(X),12),X) S ^VCORR=M D ^VEXAMINE K ^VV ; 5 S ^ABSN="40227",^ITEM="IV-227 expr is a string with maximum length" S ^NEXT="6^V4GET27,V4GET28^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S X="" f I=0:1:254 S X=X_(I#10) S A1=$C(0,1,2,3,4,5,6,7,8,9),A="" F I=1:1:25 S A=A_A1 S A=A_$C(0,1,2,3,4) S ^VCOMP=$G(^VV("1234.45"),$tr(A,$C(9,8,7,6,5,4,3,2,1,0),"9876543210")) S ^VCORR=X D ^VEXAMINE K ^VV ; 6 S ^ABSN="40228",^ITEM="IV-228 expr is a naked reference" S ^NEXT="7^V4GET27,V4GET28^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV s ^VV("A",1,2,3)="A123" s ^VV("B",1,2,3)="B123" s ^VV("B",1)="B1" S ^VV(1)=1 S ^VCOMP=$g(^($d(^VV("A",1))),^(1,2,3)) S ^VCORR="A123" D ^VEXAMINE K ^VV ; 7 S ^ABSN="40229",^ITEM="IV-229 expr is a lvn" S ^NEXT="8^V4GET27,V4GET28^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S A="AA",A(3)=3,A(2,3)=23,A(2.1)=2.1 S ^VCOMP=$GET(^VV(6/3),A(2,3)) S ^VCORR="23" D ^VEXAMINE K ^VV ; 8 S ^ABSN="40230",^ITEM="IV-230 expr is a gvn" S ^NEXT="9^V4GET27,V4GET28^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S A="B",B="C",C="D",^VV("D")="DD" S ^VV("B")="B",^VV(1,"B")=2,^VV(1,"A")=3 S ^VCOMP=$G(^VV(@@A),^VV(1,"A"))_" "_^("B") S ^VCORR="DD 2" D ^VEXAMINE K ^VV ; 9 S ^ABSN="40231",^ITEM="IV-231 expr is a svn" S ^NEXT="V4GET28^V4GET2,V4NAME^VV4" D ^V4PRESET K k ^VV I 1=2 ; S ^VCOMP=$g(^VV($h),$test) S ^VCORR="0" D ^VEXAMINE ; END W !!,"End of 29 --- V4GET27",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4GET28 V4GET28 ;IW-KO-YS-TS,V4GET2,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"30---V4GET28: $GET function -8-" ; W !,"expr contains a function" ; 1 S ^ABSN="40232",^ITEM="IV-232 expr contains $DATA function" S ^NEXT="2^V4GET28,V4GET29^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV("A","B")="AB" S ^VCOMP=$G(^VV("A"),$D(^VV)_"/"_$D(^VV("A"))_"/"_$D(^VV("A","B"))) S ^VCORR="10/10/1" D ^VEXAMINE K ^VV ; 2 S ^ABSN="40233",^ITEM="IV-233 expr contains $SELECT function" S ^NEXT="3^V4GET28,V4GET29^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S B="10000" S ^VCOMP=$g(^VV,$S($D(A):B,1:B+1)) S ^VCORR="10001" D ^VEXAMINE ; 3 S ^ABSN="40234",^ITEM="IV-234 expr contains $GET function" S ^NEXT="4^V4GET28,V4GET29^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV="VV" S ^VCOMP=$Get(^VV($G(A,"A"),"B"),$GET(A,^VV)) S ^VCORR="VV" D ^VEXAMINE K ^VV ; 4 S ^ABSN="40235",^ITEM="IV-235 expr contains extrinsic special variable" S ^NEXT="5^V4GET28,V4GET29^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VCOMP=$g(^VV($$GETDATA^V4GETE),$$GETDATA^V4GETE) S ^VCORR="##" D ^VEXAMINE ; 5 S ^ABSN="40236",^ITEM="IV-236 expr contains extrinsic function" S ^NEXT="6^V4GET28,V4GET29^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S X="A",Y=123,Z="ZZ" S ^VCOMP=$get(^VV("A",$E("BAC"),$TR("xys","12xx","XYZ"),"DKDKRRJKR",12),$$^V4GETE(X,"#",.Z)) S ^VCORR="Aa #b ZZc" D ^VEXAMINE ; 6 S ^ABSN="40237",^ITEM="IV-237 expr contains nested functions" S ^NEXT="V4GET29^V4GET2,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV(1)="A/B/C/D/E/F" S ^VCOMP=$G(^VV,$P($g(^VV,^VV(1)),$g(^VV(8),"/"),$s($d(V):4,1:3),$L($g(^VV(1),"/"),"/"))) S ^VCORR="C/D/E/F" D ^VEXAMINE ; END W !!,"End of 30 --- V4GET28",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4GET29 V4GET29 ;IW-KO-YS-TS,V4GET2,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"31---V4GET29: $GET function -9-" ; w !,"expr has indirections" ; 1 S ^ABSN="40238",^ITEM="IV-238 ^VV(@A)" S ^NEXT="2^V4GET29,V4NAME^VV4" D ^V4PRESET K K ^VV S A="^VV(""A"")",^VV("A")="F",^VV("F")=$J(123,5) S ^VCOMP=$g(^VV,^VV(@A)) S ^VCORR=" 123" D ^VEXAMINE K ^VV ; 2 S ^ABSN="40239",^ITEM="IV-239 @VV" S ^NEXT="3^V4GET29,V4NAME^VV4" D ^V4PRESET K K ^VV S VV="@V",^VV="@@VV@(1)",V="V1",V1(1)="AAAA",V1="v1" S ^VCOMP=$g(@^VV,@VV) S ^VCORR="v1" D ^VEXAMINE K ^VV ; 3 S ^ABSN="40240",^ITEM="IV-240 @^VV@(12,456)" S ^NEXT="4^V4GET29,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV(1,2,3,4,12,456)="1234567",^VV="@AA@(3,4)",^VV(1,2,3,4,12,4)="44" S AA="^VV(1,2)" S ^VCOMP=$g(A,@^VV@(12,456))_" "_^(4) S ^VCORR="1234567 44" D ^VEXAMINE K ^VV ; 4 S ^ABSN="40241",^ITEM="IV-241 @@^VV(0)@(12,456)" S ^NEXT="5^V4GET29,V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV(3,4,12,456)="12345",^VV(0)="^(3,4)",^VV(3,4,12,4)="44" S ^VCOMP=$g(A,@^VV(0)@(12,456))_" "_^(4) S ^VCORR="12345 44" D ^VEXAMINE K ^VV ; 5 S ^ABSN="40242",^ITEM="IV-242 nesting" S ^NEXT="V4NAME^VV4" D ^V4PRESET K K ^VV S ^VV(1,2,3,4,12,456)="@^VV(1,2)",^VV="@AA@(3,4)",^VV(1,2,3,4,12,4)="44" S AA="^VV(1,2)",^VV(1,2)="ABCD",ABCD="abcd",^VV(1,2,3,4,12,2)="1" S ^VV(1,2,3,2)="XXX" S ^VCOMP=$g(@^VV,@@^VV@(12,456))_" "_^(2) S ^VCORR="abcd ABCD" D ^VEXAMINE K ^VV ; END W !!,"End of 31 --- V4GET29",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4GETE V4GETE(A,B,C) ;IW-KO-YS-TS,V4GET2,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; N X,Y,Z S A=A_"a",B=B_"b",C=C_"c" s Y=A_" "_B_" "_C K X,Z,A,B,C Q Y ; ABC(A,B,C) ; n X S X=A_"/"_B_"/" s B=X q C ; GETNAME() K VV,V Q "A(1)" ; GETDATA() Q "##" q GVN() N X S X="^VV(""ABC"")" Q X ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME V4NAME ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"Tests of $NAME function" ; V4NAME11 W !!,"32---V4NAME11" D ^V4NAME11 V4NAME12 W !!,"33---V4NAME12" D ^V4NAME12 V4NAME13 W !!,"34---V4NAME13" D ^V4NAME13 V4NAME14 W !!,"35---V4NAME14" D ^V4NAME14 V4NAME15 W !!,"36---V4NAME15" D ^V4NAME15 V4NAME16 W !!,"37---V4NAME16" D ^V4NAME16 V4NAME17 W !!,"38---V4NAME17" D ^V4NAME17 V4NAME18 W !!,"39---V4NAME18" D ^V4NAME18 V4NAME21 W !!,"40---V4NAME21" D ^V4NAME21 V4NAME22 W !!,"41---V4NAME22" D ^V4NAME22 V4NAME23 W !!,"42---V4NAME23" D ^V4NAME23 V4NAME24 W !!,"43---V4NAME24" D ^V4NAME24 V4NAME25 W !!,"44---V4NAME25" D ^V4NAME25 V4NAME26 W !!,"45---V4NAME26" D ^V4NAME26 END Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME11 V4NAME11 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"32---V4NAME11: $NAME function -1-" ; W !!,"$NAME(glvn)" W !,"glvn=lvn" ; 1 S ^ABSN="40243",^ITEM="IV-243 unsubscripted" S ^NEXT="2^V4NAME11,V4NAME12^V4NAME,V4QLEN^VV4" D ^V4PRESET S ^VCOMP=$NAME(VV) S ^VCORR="VV" D ^VEXAMINE ; W !,"1 subscript" ; 2 S ^ABSN="40244",^ITEM="IV-244 subscript is an integer number" S ^NEXT="3^V4NAME11,V4NAME12^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$name(ABCDEFGH(000456)) S ^VCORR="ABCDEFGH(456)" D ^VEXAMINE ; 3 S ^ABSN="40245",^ITEM="IV-245 subscript is a number" S ^NEXT="4^V4NAME11,V4NAME12^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$NA(VV001(-4596E-5)) S ^VCORR="VV001(-.04596)" D ^VEXAMINE ; 4 S ^ABSN="40246",^ITEM="IV-246 subscript is a string" S ^NEXT="5^V4NAME11,V4NAME12^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$na(VV001("abcdef")) S ^VCORR="VV001(""abcdef"")" D ^VEXAMINE ; 5 S ^ABSN="40247",^ITEM="IV-247 subscript contains a "" character" S ^NEXT="6^V4NAME11,V4NAME12^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$na(VV001("abc""def")) S ^VCORR="VV001(""abc""""def"")" D ^VEXAMINE ; 6 S ^ABSN="40248",^ITEM="IV-248 subscript contains "" characters" S ^NEXT="V4NAME12^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$na(VV001("a""bc""""de""""""f")) S ^VCORR="VV001(""a""""bc""""""""de""""""""""""f"")" D ^VEXAMINE ; END W !!,"End of 32 --- V4NAME11",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME12 V4NAME12 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"33---V4NAME12: $NAME function -2-" ; W !,"2 subscripts" ; 1 S ^ABSN="40249",^ITEM="IV-249 subscript is an integer number" S ^NEXT="2^V4NAME12,V4NAME13^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$NA(A(-0,-99.99E+15)) S ^VCORR="A(0,-99990000000000000)" D ^VEXAMINE ; 2 S ^ABSN="40250",^ITEM="IV-250 subscript is a number" S ^NEXT="3^V4NAME12,V4NAME13^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$name(V(0.000000000000040000,00400034.56000000E+3)) S ^VCORR="V(.00000000000004,400034560)" D ^VEXAMINE ; 3 S ^ABSN="40251",^ITEM="IV-251 subscript are numbers" S ^NEXT="4^V4NAME12,V4NAME13^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$NAME(V1234567(-987E-20,"-5678.456")) S ^VCORR="V1234567(-.00000000000000000987,-5678.456)" D ^VEXAMINE ; 4 S ^ABSN="40252",^ITEM="IV-252 subscript is a string" S ^NEXT="5^V4NAME12,V4NAME13^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$na(A("-10.","456.0001")) S ^VCORR="A(""-10."",456.0001)" D ^VEXAMINE ; 5 S ^ABSN="40253",^ITEM="IV-253 subscript are strings" S ^NEXT="6^V4NAME12,V4NAME13^V4NAME,V4QLEN^VV4" D ^V4PRESET K S A="1234.56700000",B("A")="ba" S ^VCOMP=$na(VV(A,B("A"))) S ^VCORR="VV(""1234.56700000"",""ba"")" D ^VEXAMINE ; 6 S ^ABSN="40254",^ITEM="IV-254 subscript contains a "" character" S ^NEXT="7^V4NAME12,V4NAME13^V4NAME,V4QLEN^VV4" D ^V4PRESET K S S=$C(34),S(1,2,3)="1E10" S ^VCOMP=$NAME(V(S,S(1,2,3))) S ^VCORR="V("""""""",""1E10"")" D ^VEXAMINE ; 7 S ^ABSN="40255",^ITEM="IV-255 subscript contains "" characters" S ^NEXT="8^V4NAME12,V4NAME13^V4NAME,V4QLEN^VV4" D ^V4PRESET K S S=$C(34),SS=S_S_S_S S V(S,SS)=2 S ^VCOMP=$NA(V(S,SS)) S ^VCORR="V("""""""","""""""""""""""""""")" D ^VEXAMINE ; 8 S ^ABSN="40256",^ITEM="IV-256 5 subscripts" S ^NEXT="V4NAME13^V4NAME,V4QLEN^VV4" D ^V4PRESET K S A="000000000567.430E1" S ^VCOMP=$NA(Z(+A,-A,'A,A_A,A?5."0"1.N1"."1.N1"E".E)) S ^VCORR="Z(5674.3,-5674.3,0,""000000000567.430E1000000000567.430E1"",1)" D ^VEXAMINE ; ; END W !!,"End of 33 --- V4NAME12",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME13 V4NAME13 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"34---V4NAME13: $NAME function -3-" ; 1 S ^ABSN="40257",^ITEM="IV-257 lvn contains operators" S ^NEXT="2^V4NAME13,V4NAME14^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$na(V(1+1,'0,--2,"ABC"_"DEF","ABC"["D")) S ^VCORR="V(2,1,2,""ABCDEF"",0)" D ^VEXAMINE ; 2 S ^ABSN="40258",^ITEM="IV-258 lvn contains naked refernce" S ^NEXT="3^V4NAME13,V4NAME14^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^VV S ^VV("A",1,1)="A11",^VV("B",1,1)="B11" S ^VV("A",1)="A1",^VV("B",1)="B1" S ^VCOMP=$na(ABC(^(1),^(1,1),^VV("A",1),^(1),^(1,1))) S ^VCORR="ABC(""B1"",""B11"",""A1"",""A1"",""A11"")" D ^VEXAMINE K ^VV ; 3 S ^ABSN="40259",^ITEM="IV-259 lvn has indirections" S ^NEXT="4^V4NAME13,V4NAME14^V4NAME,V4QLEN^VV4" D ^V4PRESET K S VV(0)="V(""A"",34.4E-1)",V("A",3.44)="V(003.44,5.6)" S V(003.44000,0005.600)="VV(""A"",3.44)" S V("A",3.44,12,456)="@V(003.44,5.6)" S V(03.44,5.6)="V(-456,67)",V(-456,67)="NEST" S ^VCOMP=$NA(@@@VV(0)@(12,456)) S ^VCORR="NEST" D ^VEXAMINE ; W !,"lvn contains functions" ; 4 S ^ABSN="40260",^ITEM="IV-260 lvn contains $GET function" S ^NEXT="5^V4NAME13,V4NAME14^V4NAME,V4QLEN^VV4" D ^V4PRESET K s NAM("A","B")="VV(""A"")",VV("A")="A" S BB="B(1)",CC="C1" S ^VCOMP=$na(@NAM($g(VV("A"),"A"),$g(AA(1),"B"))) S ^VCORR="VV(""A"")" D ^VEXAMINE ; 5 S ^ABSN="40261",^ITEM="IV-261 lvn contains $ORDER function" S ^NEXT="6^V4NAME13,V4NAME14^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^VV S ^VV("abc")="",^VV("x")="" S ^VCOMP=$na(V($O(^VV("")))) S ^VCORR="V(""abc"")" D ^VEXAMINE K ^VV ; 6 S ^ABSN="40262",^ITEM="IV-262 lvn contains $QUERY function" S ^NEXT="7^V4NAME13,V4NAME14^V4NAME,V4QLEN^VV4" D ^V4PRESET K s A("a","b","c","d","e","f","g","h")="" s A("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t")="" S ^VCOMP=$NA(@$Q(A("a","b","c","d","e","f","g","h","i"))) S ^VCORR="A(""a"",""b"",""c"",""d"",""e"",""f"",""g"",""h"",""i"",""j"",""k"",""l"",""m"",""n"",""o"",""p"",""q"",""r"",""s"",""t"")" D ^VEXAMINE ; 7 S ^ABSN="40263",^ITEM="IV-263 lvn contains $SELECT function" S ^NEXT="V4NAME14^V4NAME,V4QLEN^VV4" D ^V4PRESET K I 1 S ^VCOMP=$name(AA($S(0:"A",$T:"B",1:"C"))) S ^VCORR="AA(""B"")" D ^VEXAMINE ; END W !!,"End of 34 --- V4NAME13",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME14 V4NAME14 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"35---V4NAME14: $NAME function -4-" ; 1 S ^ABSN="40264",^ITEM="IV-264 lvn contains $NAME function" S ^NEXT="2^V4NAME14,V4NAME15^V4NAME,V4QLEN^VV4" D ^V4PRESET K S A="a",B="b" S ^VCOMP=$NA(@$NAME(A(A,B,1E1))) S ^VCORR="A(""a"",""b"",10)" D ^VEXAMINE ; 2 S ^ABSN="40265",^ITEM="IV-265 lvn contains extrinsic special variable" S ^NEXT="3^V4NAME14,V4NAME15^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$na(@$$NAME) S ^VCORR="X(""A"",""B"",""C"",-.0234)" D ^VEXAMINE ; 3 S ^ABSN="40266",^ITEM="IV-266 lvn contains extrinsic function" S ^NEXT="4^V4NAME14,V4NAME15^V4NAME,V4QLEN^VV4" D ^V4PRESET K S X="x",Y="y",A="A",C="C1",C1="c1",Z="ZZ" S ^VCOMP=$NA(@$$NAME^V4NAE(A,"B",.C)) S ^VCORR="ZZ(""x"",""y"",""C11"")" D ^VEXAMINE ; ; 4 S ^ABSN="40267",^ITEM="IV-267 one subscript of a local variable has maximum length" S ^NEXT="5^V4NAME14,V4NAME15^V4NAME,V4QLEN^VV4" D ^V4PRESET K S A="#############################################################################################################################################################################################################################################" S ^VCOMP=$na(V(A)) S V="V(""#############################################################################################################################################################################################################################################"")" S ^VCORR=V D ^VEXAMINE ; 5 S ^ABSN="40268",^ITEM="IV-268 a local variable has maximum total length" S ^NEXT="6^V4NAME14,V4NAME15^V4NAME,V4QLEN^VV4" D ^V4PRESET K S A="ABCDEFGHIJ",B=1234567890 S ^VCOMP=$NA(V(A,A,A,A,A,A,A,A,A,B,B,B,B,B,B,B,B,B,"ABCDEFG")) S V="V(""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",1234567890,1234567890,1234567890,1234567890,1234567890,1234567890,1234567890,1234567890,1234567890,""ABCDEFG"")" S ^VCORR=V D ^VEXAMINE ; 6 S ^ABSN="40269",^ITEM="IV-269 minimum to maximum number of one subscript of a local variable" S ^NEXT="V4NAME15^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$NA(A(-1E-25,-1E25,1E-25,1E25)) S ^VCORR="A(-.0000000000000000000000001,-10000000000000000000000000,.0000000000000000000000001,10000000000000000000000000)" D ^VEXAMINE ; END W !!,"End of 35 --- V4NAME14",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; NAME() S A="A",B="B",C="C" Q "X(A,B,C,-000.0234)" ; V4NAME15 V4NAME15 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"36---V4NAME15: $NAME function -5-" ; W !!,"glvn=gvn" ; 1 S ^ABSN="40270",^ITEM="IV-270 unsubscripted" S ^NEXT="2^V4NAME15,V4NAME16^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(^V) S ^VCORR="^V" D ^VEXAMINE ; W !,"1 subscript" ; 2 S ^ABSN="40271",^ITEM="IV-271 subscript is an integer number" S ^NEXT="3^V4NAME15,V4NAME16^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$name(^V(005423200)) S ^VCORR="^V(5423200)" D ^VEXAMINE ; 3 S ^ABSN="40272",^ITEM="IV-272 subscript is a number" S ^NEXT="4^V4NAME15,V4NAME16^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(^V(-0083484.4700E-2)) S ^VCORR="^V(-834.8447)" D ^VEXAMINE ; 4 S ^ABSN="40273",^ITEM="IV-273 subscript is a string" S ^NEXT="5^V4NAME15,V4NAME16^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$na(^V("ZXCVBNM,./';][\=-`")) S ^VCORR="^V(""ZXCVBNM,./';][\=-`"")" D ^VEXAMINE ; 5 S ^ABSN="40274",^ITEM="IV-274 subscript contains a "" character" S ^NEXT="6^V4NAME15,V4NAME16^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(^V("123""456")) S ^VCORR="^V(""123""""456"")" D ^VEXAMINE ; 6 S ^ABSN="40275",^ITEM="IV-275 subscript contains "" characters" S ^NEXT="V4NAME16^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$na(^V("0a""bc""""de""""""f")) S ^VCORR="^V(""0a""""bc""""""""de""""""""""""f"")" D ^VEXAMINE ; END W !!,"End of 36 --- V4NAME15",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME16 V4NAME16 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"37---V4NAME16: $NAME function -6-" ; W !,"2 subscripts" ; 1 S ^ABSN="40276",^ITEM="IV-276 subscript is an integer number" S ^NEXT="2^V4NAME16,V4NAME17^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(^V(-0,123456789012345)) S ^VCORR="^V(0,123456789012345)" D ^VEXAMINE ; 2 S ^ABSN="40277",^ITEM="IV-277 subscript is a number" S ^NEXT="3^V4NAME16,V4NAME17^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$na(^V(0.000000000000040000,00400034.56000000E+3)) S ^VCORR="^V(.00000000000004,400034560)" D ^VEXAMINE ; 3 S ^ABSN="40278",^ITEM="IV-278 subscript are numbers" S ^NEXT="4^V4NAME16,V4NAME17^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(^V(1.14142135000,000199360981E-10)) S ^VCORR="^V(1.14142135,.0199360981)" D ^VEXAMINE ; 4 S ^ABSN="40279",^ITEM="IV-279 subscript is a string" S ^NEXT="5^V4NAME16,V4NAME17^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$na(^V("0.-","-9999999")) S ^VCORR="^V(""0.-"",-9999999)" D ^VEXAMINE ; 5 S ^ABSN="40280",^ITEM="IV-280 subscript are strings" S ^NEXT="6^V4NAME16,V4NAME17^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$name(^V("10e000","-0.0000765")) S ^VCORR="^V(""10e000"",""-0.0000765"")" D ^VEXAMINE ; 6 S ^ABSN="40281",^ITEM="IV-281 subscript contains a "" character" S ^NEXT="7^V4NAME16,V4NAME17^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S S=$C(34),S(1,2,3)="1E+10" S ^VCOMP=$NAME(^V(S,+S(1,2,3))) S ^VCORR="^V("""""""",10000000000)" D ^VEXAMINE ; 7 S ^ABSN="40282",^ITEM="IV-282 subscript contains "" characters" S ^NEXT="8^V4NAME16,V4NAME17^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S S=$C(34),SS=S_S_S_S S ^V(S,SS)=2,^VCOMP=$NA(^V(S,SS)) S ^VCORR="^V("""""""","""""""""""""""""""")" D ^VEXAMINE ; 8 S ^ABSN="40283",^ITEM="IV-283 5 subscripts" S ^NEXT="V4NAME17^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V="000000000567.430E1" S ^VCOMP=$NA(^V(+^V,-^V,'^V,^V_^V,^V?5."0"1.N1"."1.N1"E".E)) S ^VCORR="^V(5674.3,-5674.3,0,""000000000567.430E1000000000567.430E1"",1)" D ^VEXAMINE ; END W !!,"End of 37 --- V4NAME16",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME17 V4NAME17 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"38---V4NAME17: $NAME function -7-" ; 1 S ^ABSN="40284",^ITEM="IV-284 subscript is naked reference" S ^NEXT="2^V4NAME17,V4NAME18^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V(12,112)="V1" S ^V(1,1,2)=112,^V(1,1,1,2)=1112,^V(1,2)="12" S ^VCOMP=$NA(^V(^(1,2),^(1,2))) S ^VCORR="^V(112,1112)" D ^VEXAMINE K ^V ; ; 2 S ^ABSN="40285",^ITEM="IV-285 gvn contains operators" S ^NEXT="3^V4NAME17,V4NAME18^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$name(^V(1-2,5/2,"A"!"1B",123.45E-1>1)) S ^VCORR="^V(-1,2.5,1,1)" D ^VEXAMINE ; 3 S ^ABSN="40286",^ITEM="IV-286 gvn contains naked refernce" S ^NEXT="4^V4NAME17,V4NAME18^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S A=$D(^V("A","B","C")) S ^VCOMP=$NAME(^(1,2,3)) S ^VCORR="^V(""A"",""B"",1,2,3)" D ^VEXAMINE ; 4 S ^ABSN="40287",^ITEM="IV-287 gvn has indirections" S ^NEXT="5^V4NAME17,V4NAME18^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V="^V(""A"")",^V("A",1,2)="^V(""C"",4)" S ^VCOMP=$na(@@^V@(1,2)@(5,6)) S ^VCORR="^V(""C"",4,5,6)" D ^VEXAMINE ; W !,"gvn contains functions" ; 5 S ^ABSN="40288",^ITEM="IV-288 gvn contains $GET function" S ^NEXT="6^V4NAME17,V4NAME18^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S A("A",1)=1,A("B")="^V(A(""A"",1))" S ^VCOMP=$NA(@$G(A("A"),A("B"))) S ^VCORR="^V(1)" D ^VEXAMINE ; 6 S ^ABSN="40289",^ITEM="IV-289 gvn contains $ORDER function" S ^NEXT="7^V4NAME17,V4NAME18^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V("A","B")="AB",A="A",^V("C",2)="#" S ^VCOMP=$NAME(^V($O(^V(A)),$O(^(2)))) S ^VCORR="^V(""C"",""A"")" D ^VEXAMINE ; 7 S ^ABSN="40290",^ITEM="IV-290 gvn contains $QUERY function" S ^NEXT="8^V4NAME17,V4NAME18^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V s ^V("a","b","c","d","e","f","g",0,1,2)="" S ^VCOMP=$NA(@$Q(^V)) S ^VCORR="^V(""a"",""b"",""c"",""d"",""e"",""f"",""g"",0,1,2)" D ^VEXAMINE ; 8 S ^ABSN="40291",^ITEM="IV-291 gvn contains $SELECT function" S ^NEXT="9^V4NAME17,V4NAME18^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V(1,2,3)="",A="1;2;3;4;5;6;7" S ^VCOMP=$NA(^($S($P(A,";",1)=0:9,$P(A,";",4)=1:13,.1:999))) S ^VCORR="^V(1,2,999)" D ^VEXAMINE ; 9 S ^ABSN="40292",^ITEM="IV-292 gvn contains $NAME function" S ^NEXT="V4NAME18^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V("A","B",1,2)="" S ^V("A","B",1,3)="^V(""a"",""b"",""c"")" s ^V("A","B","C")="ABC" S ^VCOMP=$NAME(@^($O(@$NAME(^(1,2))))) S ^VCORR="^V(""a"",""b"",""c"")" D ^VEXAMINE ; END W !!,"End of 38 --- V4NAME17",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME18 V4NAME18 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"39---V4NAME18: $NAME function -8-" ; 1 S ^ABSN="40293",^ITEM="IV-293 gvn contains extrinsic special variable" S ^NEXT="2^V4NAME18,V4NAME21^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S V=1 S ^VCOMP=$name(^V($$V18,$$V18^V4NAME18)) S ^VCORR="^V(2,3)" D ^VEXAMINE ; 2 S ^ABSN="40294",^ITEM="IV-294 gvn contains extrinsic function" S ^NEXT="3^V4NAME18,V4NAME21^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S C="C",A="A" S ^VCOMP=$NAME(^V(A,C,$$V19(A,.C),A,C,$$V19(A,.C),A,C)) S ^VCORR="^V(""A"",""C"",""A1 C1"",""A"",""C1"",""A1 C11"",""A"",""C11"")" D ^VEXAMINE ; ; 3 S ^ABSN="40295",^ITEM="IV-295 one subscript of a global variable has maximum length" S ^NEXT="4^V4NAME18,V4NAME21^V4NAME,V4QLEN^VV4" D ^V4PRESET K S A="" F I=1:1:237 S A=A_"#" S A="#############################################################################################################################################################################################################################################" S ^VCOMP=$na(^V(A)) S V="^V(""#############################################################################################################################################################################################################################################"")" S ^VCORR=V D ^VEXAMINE ; 4 S ^ABSN="40296",^ITEM="IV-296 a global variable has maximum total length" S ^NEXT="5^V4NAME18,V4NAME21^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S A="ABCDEFGHIJ",B=1234567890 S ^VCOMP=$NA(^V(A,A,A,A,A,A,A,A,B,B,B,B,B,B,B,B,B,B,"ABCDEFG")) S V="^V(""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",""ABCDEFGHIJ"",1234567890,1234567890,1234567890,1234567890,1234567890,1234567890,1234567890,1234567890,1234567890,1234567890,""ABCDEFG"")" S ^VCORR=V D ^VEXAMINE ; 5 S ^ABSN="40297",^ITEM="IV-297 minimum to maximum number of one subscript of a global variable" S ^NEXT="V4NAME21^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(^V(-1E-25,-1E25,1E-25,1E25)) S ^VCORR="^V(-.0000000000000000000000001,-10000000000000000000000000,.0000000000000000000000001,10000000000000000000000000)" D ^VEXAMINE ; END W !!,"End of 39 --- V4NAME18",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; V18() ; S V=V+1 Q V V19(X,Y) ; S X=X_1 S Y=Y_1 Q X_" "_Y V4NAME21 V4NAME21 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"40---V4NAME21: $NAME function -9-" ; W !!,"$NAME(glvn,intexpr)" W !!,"lvn" W !!,"intexpr=0",! ; 1 S ^ABSN="40298",^ITEM="IV-298 unsubscripted" S ^NEXT="2^V4NAME21,V4NAME22^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$name(VV,0) S ^VCORR="VV" D ^VEXAMINE ; 2 S ^ABSN="40299",^ITEM="IV-299 1 subscript" S ^NEXT="3^V4NAME21,V4NAME22^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$NAME(XYZ("A"),0) S ^VCORR="XYZ" D ^VEXAMINE ; 3 S ^ABSN="40300",^ITEM="IV-300 2 subscripts" S ^NEXT="4^V4NAME21,V4NAME22^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$na(C(1,2),"a") S ^VCORR="C" D ^VEXAMINE ; 4 S ^ABSN="40301",^ITEM="IV-301 5 subscripts" S ^NEXT="5^V4NAME21,V4NAME22^V4NAME,V4QLEN^VV4" D ^V4PRESET K S A="AAA",B="DDD" S ^VCOMP=$NA(QWERTYUI(A,"A""B",-9,B,-45.678),"0.0") S ^VCORR="QWERTYUI" D ^VEXAMINE ; 5 S ^ABSN="40302",^ITEM="IV-302 subscript is naked reference" S ^NEXT="V4NAME22^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V s ^V(1,2)=12,^V(1,3,4)=134 S ^VCOMP=$na(A9B3D(^V(1,2),^(3,4)),0E1) S ^VCORR="A9B3D" D ^VEXAMINE ; END W !!,"End of 40 --- V4NAME21",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME22 V4NAME22 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"41---V4NAME22: $NAME function -10-" ; W !,"$QL(lvn)>intexpr" ; 1 S ^ABSN="40303",^ITEM="IV-303 1 subscript" S ^NEXT="2^V4NAME22,V4NAME23^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$NA(AAB1(1234),0) S ^VCORR="AAB1" D ^VEXAMINE ; 2 S ^ABSN="40304",^ITEM="IV-304 2 subscripts" S ^NEXT="3^V4NAME22,V4NAME23^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$na(X("A","B"),1) S ^VCORR="X(""A"")" D ^VEXAMINE ; 3 S ^ABSN="40305",^ITEM="IV-305 5 subscripts" S ^NEXT="4^V4NAME22,V4NAME23^V4NAME,V4QLEN^VV4" D ^V4PRESET K S (A,B,C,D,E)="a" S ^VCOMP=$NA(QWE3000(A,B,C,D,E),5-1) S ^VCORR="QWE3000(""a"",""a"",""a"",""a"")" D ^VEXAMINE ; 4 S ^ABSN="40306",^ITEM="IV-306 subscript is naked reference" S ^NEXT="5^V4NAME22,V4NAME23^V4NAME,V4QLEN^VV4" D ^V4PRESET K k ^V S ^V(1)=1,^V(1,1)=11,^V(1,2,2)=122,^V(1,2,3,3)=1233,^V(1,2,3,4,5)=2 S ^V(1,2,3,4,4)=12344,^V(2)=2 S ^VCOMP=$na(X(^(1,1),^(2,2),^(3,3),^(4,4)),^(5)) S ^VCORR="X(11,122)" D ^VEXAMINE K ^V ; W !,"$QL(lvn)'>intexpr" ; 5 S ^ABSN="40307",^ITEM="IV-307 1 subscript" S ^NEXT="6^V4NAME22,V4NAME23^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$NA(X("1."),3) S ^VCORR="X(""1."")" D ^VEXAMINE ; 6 S ^ABSN="40308",^ITEM="IV-308 2 subscripts" S ^NEXT="7^V4NAME22,V4NAME23^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$na(ZZZZZZZZ(-0,-3E-5),0.002E3) S ^VCORR="ZZZZZZZZ(0,-.00003)" D ^VEXAMINE ; 7 S ^ABSN="40309",^ITEM="IV-309 5 subscripts" S ^NEXT="8^V4NAME22,V4NAME23^V4NAME,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$na(V("-","+",".","\","@"),600000) S ^VCORR="V(""-"",""+"",""."",""\"",""@"")" D ^VEXAMINE ; 8 S ^ABSN="40310",^ITEM="IV-310 subscript is naked reference" S ^NEXT="V4NAME23^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V(1)=1,^V(1,1)=11,^V(1,2,2)=122,^V(1,2,3,3)=1233,^V(1,2,3,4,5)=4 S ^V(1,2,3,4,4)=12344,^V(2)=2 S ^VCOMP=$na(X(^(1,1),^(2,2),^(3,3),^(4,4)),^(5)) S ^VCORR="X(11,122,1233,12344)" D ^VEXAMINE K ^V ; END W !!,"End of 41 --- V4NAME22",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME23 V4NAME23 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"42---V4NAME23: $NAME function -11-" ; W !!,"gvn",! W !,"intexpr=0" ; 1 S ^ABSN="40311",^ITEM="IV-311 unsubscripted" S ^NEXT="2^V4NAME23,V4NAME24^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NAME(^V,0) S ^VCORR="^V" D ^VEXAMINE K ^V ; 2 S ^ABSN="40312",^ITEM="IV-312 1 subscript" S ^NEXT="3^V4NAME23,V4NAME24^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(^V(1),0) S ^VCORR="^V" D ^VEXAMINE K ^V ; 3 S ^ABSN="40313",^ITEM="IV-313 2 subscripts" S ^NEXT="4^V4NAME23,V4NAME24^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(^V("A","B"),-0) S ^VCORR="^V" D ^VEXAMINE K ^V ; 4 S ^ABSN="40314",^ITEM="IV-314 5 subscripts" S ^NEXT="5^V4NAME23,V4NAME24^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$na(^V("a","b","c","d","e"),1-1) S ^VCORR="^V" D ^VEXAMINE K ^V ; 5 S ^ABSN="40315",^ITEM="IV-315 subscript is naked reference" S ^NEXT="6^V4NAME23,V4NAME24^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V(1)="1",^V(2)="2",^V(3)="3" S ^V("a")="a" S ^VCOMP=$NA(^V(^(1),^(2)),+"DON") S ^VCORR="^V" D ^VEXAMINE K ^V ; W !,"$QL(gvn)>intexpr" ; 6 S ^ABSN="40316",^ITEM="IV-316 1 subscript" S ^NEXT="7^V4NAME23,V4NAME24^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(^V(.00001),"E1") S ^VCORR="^V" D ^VEXAMINE K ^V ; 7 S ^ABSN="40317",^ITEM="IV-317 2 subscripts" S ^NEXT="8^V4NAME23,V4NAME24^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$na(^V(-1,-2),'0) S ^VCORR="^V(-1)" D ^VEXAMINE K ^V ; 8 S ^ABSN="40318",^ITEM="IV-318 5 subscripts" S ^NEXT="V4NAME24^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$na(^V("-1","-2","-3","-4","-5"),"1AC") S ^VCORR="^V(-1)" D ^VEXAMINE K ^V ; END W !!,"End of 42 --- V4NAME23",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME24 V4NAME24 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"43---V4NAME24: $NAME function -12-" ; 1 S ^ABSN="40319",^ITEM="IV-319 subscript is naked reference" S ^NEXT="2^V4NAME24,V4NAME25^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V(2,3)="b",^V("2",3,4,5)="c",^V("2",3,4,6)="d",^V("2",3,4,7)="ABCDEFGHIJKL" S ^V(1)="a" S ^VCOMP=$na(^(^(1),^(2,3),^(3,4,5),^(6)),$L(^(7))) S ^VCORR="^V(2,3,4,""a"",""b"",""c"",""d"")" D ^VEXAMINE K ^V ; W !,"$QL(gvn)'>intexpr" ; 2 S ^ABSN="40320",^ITEM="IV-320 1 subscript" S ^NEXT="3^V4NAME24,V4NAME25^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$na(^V("1234567"),1) S ^VCORR="^V(1234567)" D ^VEXAMINE K ^V ; 3 S ^ABSN="40321",^ITEM="IV-321 2 subscripts" S ^NEXT="4^V4NAME24,V4NAME25^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$na(^V("A,B","C,D"),3) S ^VCORR="^V(""A,B"",""C,D"")" D ^VEXAMINE K ^V ; 4 S ^ABSN="40322",^ITEM="IV-322 5 subscripts" S ^NEXT="5^V4NAME24,V4NAME25^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S A=$C(34),B=A_A,C=B_A,D=C_A,E=D_A S ^VCOMP=$na(^V(A,B,C,D,E),99999999) S ^VCORR="^V("""""""","""""""""""","""""""""""""""","""""""""""""""""""","""""""""""""""""""""""")" D ^VEXAMINE K ^V ; 5 S ^ABSN="40323",^ITEM="IV-323 subscript is naked reference" S ^NEXT="V4NAME25^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V(1,1,2)="1E12" S ^V(1,2)="-1E12" S A=$D(^V(1)) S ^VCOMP=$na(^V(+^(1,2)),^(1,2)) S ^VCORR="^V(-1000000000000)" D ^VEXAMINE ; END W !!,"End of 43 --- V4NAME24",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAME25 V4NAME25 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"44---V4NAME25: $NAME function -13-" ; 1 S ^ABSN="40324",^ITEM="IV-324 glvn contains operators" S ^NEXT="2^V4NAME25,V4NAME26^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S A=4.02 S ^VCOMP=$NA(^V(-($j(1234.5678E-4,0,2)),--A,-+A),--10) S ^VCORR="^V(-.12,4.02,-4.02)" D ^VEXAMINE ; 2 S ^ABSN="40325",^ITEM="IV-325 glvn contains naked refernce" S ^NEXT="3^V4NAME25,V4NAME26^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V("A",1,1)="A11",^V("B",1,1)="B11" S ^V("A",1)="A1",^V("B",1)="B1" S ^VCOMP=$na(^V(^(1),^(1,1),^V("A",1),^(1),^(1,1)),3) S ^VCORR="^V(""B1"",""B11"",""A1"")" D ^VEXAMINE K ^V ; 3 S ^ABSN="40326",^ITEM="IV-326 glvn has indirections" S ^NEXT="4^V4NAME25,V4NAME26^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V("C",4,5,3)="",^V("A")=2 S ^V="^V(""A"")",^V("A",1,2)="^V(""C"",4)" S ^VCOMP=$na(@@^V@(1,@^V)@(5,2),$O(@@^V@(1,2)@(5,@^V))) S ^VCORR="^V(""C"",4,5)" D ^VEXAMINE ; W !,"glvn contains functions" ; 4 S ^ABSN="40327",^ITEM="IV-327 glvn contains $GET function" S ^NEXT="5^V4NAME25,V4NAME26^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V="^VV" S ^VCOMP=$na(@$Get(^V($G(A,"A"),"B"),$GET(A,^V)),4) S ^VCORR="^VV" D ^VEXAMINE ; 5 S ^ABSN="40328",^ITEM="IV-328 glvn contains $ORDER function" S ^NEXT="6^V4NAME25,V4NAME26^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V("A","B")="AB",A="A",^V("C",2)="#" S ^VCOMP=$NAME(^V($O(^V(A)),$O(^(2))),$o(^("C","")))_" "_^(2) S ^VCORR="^V(""C"",""A"") #" D ^VEXAMINE ; 6 S ^ABSN="40329",^ITEM="IV-329 glvn contains $QUERY function" S ^NEXT="7^V4NAME25,V4NAME26^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V s ^V("a","a")="",^V("a","b","a")="a",^V("a","b","c")="" S ^VCOMP=$Na(@$Q(^(^("a"))),2) S ^VCORR="^V(""a"",""b"")" D ^VEXAMINE K ^V ; 7 S ^ABSN="40330",^ITEM="IV-330 glvn contains $SELECT function" S ^NEXT="8^V4NAME25,V4NAME26^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^V="B" S ^VCOMP=$NA(@$S(^V="A":"^V(1)",^V="B":"^V(1,2,3)",1:"A"),2) S ^VCORR="^V(1,2)" D ^VEXAMINE ; 8 S ^ABSN="40331",^ITEM="IV-331 glvn contains $NAME function" S ^NEXT="9^V4NAME25,V4NAME26^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(@$NA(^V(1,2,3,4,5),0),5) S ^VCORR="^V" D ^VEXAMINE ; 9 S ^ABSN="40332",^ITEM="IV-332 glvn contains extrinsic special variable" S ^NEXT="10^V4NAME25,V4NAME26^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S A=5 S ^VCOMP=$NA(^V($$SUB,$$SUB,$$SUB),$$SUB) S ^VCORR="^V(4)" D ^VEXAMINE ; 10 S ^ABSN="40333",^ITEM="IV-333 glvn contains extrinsic function" S ^NEXT="V4NAME26^V4NAME,V4QLEN^VV4" D ^V4PRESET K K ^V S AA="aa",^V(1)=1,^V("A")="^V(""a"")" S ^VCOMP=$NA(@$$NAM@(@$$NAM(1),@$$NAM(2)),$$NAM(3)) S ^VCORR="^V(""A"",""aa"")" D ^VEXAMINE ; END W !!,"End of 44 --- V4NAME25",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; SUB() S A=A-1 Q A NAM(X,Y) ; I $D(X)=0 Q "^V(""A"")" I X=1 Q "AA" I X=2 Q "^V(1)" I X=3 Q 2 V4NAME26 V4NAME26 ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"45---V4NAME26: $NAME function -14-" ; 1 S ^ABSN="40334",^ITEM="IV-334 minimum to maximum number of one subscript of a local variable" S ^NEXT="2^V4NAME26,V4QLEN^VV4" D ^V4PRESET K S ^VCOMP=$NA(A(-123456789012345E-25,-1.23456789012345E25,123456789012345E-25,1.23456789012345E25)) S ^VCORR="A(-.0000000000123456789012345,-12345678901234500000000000,.0000000000123456789012345,12345678901234500000000000)" D ^VEXAMINE ; 2 S ^ABSN="40335",^ITEM="IV-335 minimum to maximum number of one subscript of a global variable" S ^NEXT="3^V4NAME26,V4QLEN^VV4" D ^V4PRESET K K ^V S ^VCOMP=$NA(^V(-123456789012345E-25,-1.23456789012345E25,123456789012345E-25,1.23456789012345E25)) S ^VCORR="^V(-.0000000000123456789012345,-12345678901234500000000000,.0000000000123456789012345,12345678901234500000000000)" D ^VEXAMINE ; 3 S ^ABSN="40336",^ITEM="IV-336 one subscript of a local variable has maximum length" S ^NEXT="4^V4NAME26,V4QLEN^VV4" D ^V4PRESET K S A="#############################################################################################################################################################################################################################################" S ^VCOMP=$na(V(A),1) S V="V(""#############################################################################################################################################################################################################################################"")" S ^VCORR=V D ^VEXAMINE ; 4 S ^ABSN="40337",^ITEM="IV-337 one subscript of global variable has maximum length" S ^NEXT="5^V4NAME26,V4QLEN^VV4" D ^V4PRESET K K ^V S A="#############################################################################################################################################################################################################################################" S ^VCOMP=$na(^V(A),1) S V="^V(""#############################################################################################################################################################################################################################################"")" S ^VCORR=V D ^VEXAMINE ; 5 S ^ABSN="40338",^ITEM="IV-338 a local variable has maximum total length" S ^NEXT="6^V4NAME26,V4QLEN^VV4" D ^V4PRESET K S A="A",B=1 S ^VCOMP=$NA(V(A,A,A,A,A,A,A,A,A,A,A,A,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2),9999) S V="V(""A"",""A"",""A"",""A"",""A"",""A"",""A"",""A"",""A"",""A"",""A"",""A"",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2)" S ^VCORR=V D ^VEXAMINE ; 6 S ^ABSN="40339",^ITEM="IV-339 a global variable has maximum total length" S ^NEXT="V4QLEN^VV4" D ^V4PRESET K K ^V S A="A",B=1 S ^VCOMP=$NA(^V(A,A,A,A,A,A,A,A,A,A,A,A,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2),9999) S V="^V(""A"",""A"",""A"",""A"",""A"",""A"",""A"",""A"",""A"",""A"",""A"",""A"",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2)" S ^VCORR=V D ^VEXAMINE ; END W !!,"End of 45 --- V4NAME26",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NAE V4NAE ;IW-KO-YS-TS,V4NAME,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; NAME(X,Y,Z) ; NEW W S Z=Z_1 S W="@Z@(X,Y,C)" Q W ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QLEN V4QLEN ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"Tests of $QLENGTH function" ; V4QLEN1 W !!,"46---V4QLEN1" D ^V4QLEN1 V4QLEN2 W !!,"47---V4QLEN2" D ^V4QLEN2 V4QLEN3 W !!,"48---V4QLEN3" D ^V4QLEN3 V4QLEN4 W !!,"49---V4QLEN4" D ^V4QLEN4 V4QLEN5 W !!,"50---V4QLEN5" D ^V4QLEN5 V4QLEN6 W !!,"51---V4QLEN6" D ^V4QLEN6 V4QLEN7 W !!,"52---V4QLEN7" D ^V4QLEN7 V4QLEN8 W !!,"53---V4QLEN8" D ^V4QLEN8 END Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QLEN1 V4QLEN1 ;IW-KO-YS-TS,V4QLEN,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"46---V4QLEN1: $QLENGTH function -1-" ; W !!,"$QLENGTH(namevalue)" W !!,"lvn" ; 1 S ^ABSN="40340",^ITEM="IV-340 unsubscripted" S ^NEXT="2^V4QLEN1,V4QLEN2^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K A1234567 S ^VCOMP=$QLENGTH("A1234567") S ^VCORR="0" D ^VEXAMINE ; W !,"1 subscript" ; 2 S ^ABSN="40341",^ITEM="IV-341 subscript is an integer number" S ^NEXT="3^V4QLEN1,V4QLEN2^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K V S ^VCOMP=$QL("V(987)") S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40342",^ITEM="IV-342 subscript is a number" S ^NEXT="4^V4QLEN1,V4QLEN2^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S V(845.15)=123 S ^VCOMP=$qlength("V(845.15000)") S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40343",^ITEM="IV-343 subscript is a string" S ^NEXT="5^V4QLEN1,V4QLEN2^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K V S V("data",123)="DATA" S ^VCOMP=$ql("V(""data"")") S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40344",^ITEM="IV-344 $DATA(lvn)=0" S ^NEXT="6^V4QLEN1,V4QLEN2^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K VV S ^VCOMP=$ql("VV(-494.45)") S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40345",^ITEM="IV-345 $DATA(lvn)=1" S ^NEXT="7^V4QLEN1,V4QLEN2^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K VV S VV(948463.384)=123 S ^VCOMP=$QL("VV(9.48463384E-5)") S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40346",^ITEM="IV-346 $DATA(lvn)=10" S ^NEXT="8^V4QLEN1,V4QLEN2^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K VV S VV("A","B")="AB" S ^VCOMP=$qlength("VV(""A"")") S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40347",^ITEM="IV-347 $DATA(lvn)=11" S ^NEXT="V4QLEN2^VV4" D ^V4PRESET K K VV S VV("A")="A",VV("A","B")="AB" S ^VCOMP=$qlength("VV(""A"")") S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 46 --- V4QLEN1",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QLEN2 V4QLEN2 ;IW-KO-YS-TS,V4QLEN,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"47---V4QLEN2: $QLENGTH function -2-" ; W !!,"2 subscripts" ; 1 S ^ABSN="40348",^ITEM="IV-348 subscript is an integer number" S ^NEXT="2^V4QLEN2,V4QLEN3^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K VV S VV(123,999)="2" S ^VCOMP=$QL("VV(123,999)") S ^VCORR="2" D ^VEXAMINE ; 2 S ^ABSN="40349",^ITEM="IV-349 subscript is a number" S ^NEXT="3^V4QLEN2,V4QLEN3^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K VV S VV(-.00024,45)="A" S ^VCOMP=$ql("VV(-24E-5,45)") S ^VCORR="2" D ^VEXAMINE ; 3 S ^ABSN="40350",^ITEM="IV-350 subscript are numbers" S ^NEXT="4^V4QLEN2,V4QLEN3^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K VV S VV(-.00024,45000)="A" S ^VCOMP=$QL("VV(-24E-5,45E+3)") S ^VCORR="2" D ^VEXAMINE ; 4 S ^ABSN="40351",^ITEM="IV-351 subscript is a string" S ^NEXT="5^V4QLEN2,V4QLEN3^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K VV S VV("-A","123")="ABC" S ^VCOMP=$ql("VV(""-A"",""123"")") S ^VCORR="2" D ^VEXAMINE ; 5 S ^ABSN="40352",^ITEM="IV-352 subscript are strings" S ^NEXT="6^V4QLEN2,V4QLEN3^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K VV S VV("-A","123.")="ABC" S ^VCOMP=$ql("VV(""-A"",""123."")") S ^VCORR="2" D ^VEXAMINE ; ; 6 S ^ABSN="40353",^ITEM="IV-353 5 subscripts" S ^NEXT="V4QLEN3^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K A S A(123,"ABC","0",0.003,"X4")="AA" S ^VCOMP=$QL("A(123,""ABC"",""0"",0.003,""X4"")") S ^VCORR="5" D ^VEXAMINE ; END W !!,"End of 47 --- V4QLEN2",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QLEN3 V4QLEN3 ;IW-KO-YS-TS,V4QLEN,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"48---V4QLEN3: $QLENGTH function -3-" ; 1 S ^ABSN="40354",^ITEM="IV-354 namevalue contains an operator" S ^NEXT="2^V4QLEN3,V4QLEN4^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K NAME,SUB S NAME="VV(123,456,",SUB="456,789)" S ^VCOMP=$ql(NAME_SUB) K NAME,SUB S ^VCORR="4" D ^VEXAMINE ; 2 S ^ABSN="40355",^ITEM="IV-355 namevalue contains operators" S ^NEXT="3^V4QLEN3,V4QLEN4^V4QLEN,V4QSUB^VV4" D ^V4PRESET K k VV s VV(1,2,3)="V(0)" S ^VCOMP=$QL("CC("_'0_1_")") S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40356",^ITEM="IV-356 namevalue contains a function" S ^NEXT="4^V4QLEN3,V4QLEN4^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S ^VCOMP=$QL($C(66,67)_"("_123_")") S ^VCORR="1" D ^VEXAMINE ; W !!,"namevalue contains functions" ; 4 S ^ABSN="40357",^ITEM="IV-357 namevalue contains $GET function" S ^NEXT="5^V4QLEN3,V4QLEN4^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S A(2)="A(3,3,4,1)" S ^VCOMP=$QL($G(A(2))) S ^VCORR="4" D ^VEXAMINE ; 5 S ^ABSN="40358",^ITEM="IV-358 namevalue contains $ORDER function" S ^NEXT="6^V4QLEN3,V4QLEN4^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S A("BB")="" S ^VCOMP=$ql($O(A(""))) S ^VCORR="0" D ^VEXAMINE ; 6 S ^ABSN="40359",^ITEM="IV-359 namevalue contains $QUERY function" S ^NEXT="7^V4QLEN3,V4QLEN4^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S A("BB")="" S ^VCOMP=$ql($q(A(""))) S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40360",^ITEM="IV-360 namevalue contains $SELECT function" S ^NEXT="8^V4QLEN3,V4QLEN4^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S Z=0 S ^VCOMP=$ql($S(Z="A":"DD",Z="B":"A(1)",1:"A(""A"")")) S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40361",^ITEM="IV-361 namevalue contains $QLENGTH function" S ^NEXT="9^V4QLEN3,V4QLEN4^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S ^VCOMP=$QL("A("_$QL("A(1,2,3,4,5)")_")") S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40362",^ITEM="IV-362 namevalue contains extrinsic special variable" S ^NEXT="10^V4QLEN3,V4QLEN4^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S ^VCOMP=$QL($$NAME) S ^VCORR="4" D ^VEXAMINE ; 10 S ^ABSN="40363",^ITEM="IV-363 namevalue contains extrinsic functions" S ^NEXT="V4QLEN4^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S A(1,2)="CC(""C"",""D"")" S ^VCOMP=$QL($$F(1,2)) S ^VCORR="2" D ^VEXAMINE ; END W !!,"End of 48 --- V4QLEN3",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q NAME() Q $NA(A(1,2,"A","B")) ; F(X,Y) ; Q A(X,Y) V4QLEN4 V4QLEN4 ;IW-KO-YS-TS,V4QLEN,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"49---V4QLEN4: $QLENGTH function -4-" ; 1 S ^ABSN="40364",^ITEM="IV-364 namevalue has indirection" S ^NEXT="2^V4QLEN4,V4QLEN5^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S A="@B@(1,2)",B="C(1,2,3)",C(1,2,3,1,2)="A(1,2,3,4,5,6,7)" S ^VCOMP=$QL(@A) S ^VCORR="7" D ^VEXAMINE ; 2 S ^ABSN="40365",^ITEM="IV-365 namevalue contains a naked refernce" S ^NEXT="3^V4QLEN4,V4QLEN5^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S ^V(2,2)=22,^V(2)=2,A(22)="A(22)" S ^VCOMP=$QL("A("_^(2,2)_")")_" "_^(2) S ^VCORR="1 22" D ^VEXAMINE K ^V ; 3 S ^ABSN="40366",^ITEM="IV-366 namevalue contains naked refernces" S ^NEXT="4^V4QLEN4,V4QLEN5^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S ^V(2,2)="C(1,2)",^V(2)=2,C(1,2,2)="A(1)" S ^VCOMP=$QL(@^(2,2)@(^V(2)))_" "_^(2) S ^VCORR="1 2" D ^VEXAMINE ; 4 S ^ABSN="40367",^ITEM="IV-367 one subscript of a global variable has maximum length" S ^NEXT="5^V4QLEN4,V4QLEN5^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S A="#############################################################################################################################################################################################################################################" S ^VCOMP=$QL("V("""_A_""")") S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40368",^ITEM="IV-368 a local variable has maximum total length" S ^NEXT="6^V4QLEN4,V4QLEN5^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S A="ABCDEFGHIJ",B=1234567890 S ^VCOMP=$QL($NA(V(A,A,A,A,A,A,A,A,A,B,B,B,B,B,B,B,B,B,"ABCDEFG"))) S ^VCORR="19" D ^VEXAMINE ; 6 S ^ABSN="40369",^ITEM="IV-369 minimum to maximum number of one subscript of a local variable" S ^NEXT="V4QLEN5^V4QLEN,V4QSUB^VV4" D ^V4PRESET K S ^VCOMP=$ql("A(-10000000000000000000000000,10000000000000000000000000,-.0000000000000000000000001,-.0000000000000000000000001)") S ^VCORR="4" D ^VEXAMINE ; END W !!,"End of 49 --- V4QLEN4",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; V4QLEN5 V4QLEN5 ;IW-KO-YS-TS,V4QLEN,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"50---V4QLEN5: $QLENGTH function -5-" ; W !!,"gvn" ; 1 S ^ABSN="40370",^ITEM="IV-370 unsubscripted" S ^NEXT="2^V4QLEN5,V4QLEN6^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^VCOMP=$QLENGTH("^V") S ^VCORR="0" D ^VEXAMINE ; W !!,"1 subscript" ; 2 S ^ABSN="40371",^ITEM="IV-371 subscript is an integer number" S ^NEXT="3^V4QLEN5,V4QLEN6^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^VCOMP=$QLENGTH("^V(987654321054321)") S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40372",^ITEM="IV-372 subscript is a number" S ^NEXT="4^V4QLEN5,V4QLEN6^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^VCOMP=$ql("^V(-12345678912345E-25)") S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40373",^ITEM="IV-373 subscript is a string" S ^NEXT="5^V4QLEN5,V4QLEN6^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^VCOMP=$QL("^V("" "")") S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40374",^ITEM="IV-374 $DATA(gvn)=0" S ^NEXT="6^V4QLEN5,V4QLEN6^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^VCOMP=$ql("^V(43745.3743)") S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40375",^ITEM="IV-375 $DATA(gvn)=1" S ^NEXT="7^V4QLEN5,V4QLEN6^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^V(":+""><")="aaa" S ^VCOMP=$ql("^V("":+""""><"")") S ^VCORR="1" D ^VEXAMINE K ^V ; 7 S ^ABSN="40376",^ITEM="IV-376 $DATA(gvn)=10" S ^NEXT="8^V4QLEN5,V4QLEN6^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^V(12.34,"A","B","C")="" S ^VCOMP=$ql("^V(12.34)") S ^VCORR="1" D ^VEXAMINE K ^V ; 8 S ^ABSN="40377",^ITEM="IV-377 $DATA(gvn)=11" S ^NEXT="V4QLEN6^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^V="a" S ^V("A")="" S ^V("A","B","C")="" S ^VCOMP=$qlength("^V(""A"")") S ^VCORR="1" D ^VEXAMINE K ^V ; END W !!,"End of 50 --- V4QLEN5",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; V4QLEN6 V4QLEN6 ;IW-KO-YS-TS,V4QLEN,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"51---V4QLEN6: $QLENGTH function -6-" ; W !!,"2 subscripts" ; 1 S ^ABSN="40378",^ITEM="IV-378 subscript is an integer number" S ^NEXT="2^V4QLEN6,V4QLEN7^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^VCOMP=$ql("^V(94378438,""A"")") S ^VCORR="2" D ^VEXAMINE ; 2 S ^ABSN="40379",^ITEM="IV-379 subscript is a number" S ^NEXT="3^V4QLEN6,V4QLEN7^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^V(-0000.00003)="A" S ^VCOMP=$ql("^V(-0000.00003,""ZZZZZZ"")") S ^VCORR="2" D ^VEXAMINE ; 3 S ^ABSN="40380",^ITEM="IV-380 subscript are numbers" S ^NEXT="4^V4QLEN6,V4QLEN7^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^VCOMP=$QL("^V(3787.4300000,-00093.9999999900000)") S ^VCORR="2" D ^VEXAMINE ; 4 S ^ABSN="40381",^ITEM="IV-381 subscript is a string" S ^NEXT="5^V4QLEN6,V4QLEN7^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S A="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" S ^VCOMP=$QL("^V("""_A_""",""1234"")") S ^VCORR="2" D ^VEXAMINE ; 5 S ^ABSN="40382",^ITEM="IV-382 subscript are strings" S ^NEXT="6^V4QLEN6,V4QLEN7^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S A="""A;SJDAJWHRJHASLJFHLAJKSHDLKJAHLSKDHLKAS""",B="""'""" S ^VCOMP=$QL("^V("_A_","_B_")") S ^VCORR="2" D ^VEXAMINE ; 6 S ^ABSN="40383",^ITEM="IV-383 5 subscripts" S ^NEXT="7^V4QLEN6,V4QLEN7^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^V="vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv",B="B",C="c",D="D",E="e" S ^VCOMP=$QL($NA(^V(^V,B,C,D,E))) S ^VCORR="5" D ^VEXAMINE K ^V ; ; 7 S ^ABSN="40384",^ITEM="IV-384 namevalue contains an operator" S ^NEXT="8^V4QLEN6,V4QLEN7^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S A="12E1" S ^VCOMP=$ql("^V("_-A_","_+A_")") S ^VCORR="2" D ^VEXAMINE ; 8 S ^ABSN="40385",^ITEM="IV-385 namevalue contains operators" S ^NEXT="V4QLEN7^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S A="^V",B="(1,2,3,4,5,6,7,8,9," S ^VCOMP=$ql(A_B_-A_")") S ^VCORR="10" D ^VEXAMINE ; END W !!,"End of 51 --- V4QLEN6",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QLEN7 V4QLEN7 ;IW-KO-YS-TS,V4QLEN,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"52---V4QLEN7: $QLENGTH function -7-" ; W !!,"namevalue contains a function" ; 1 S ^ABSN="40386",^ITEM="IV-386 namevalue contains $GET function" S ^NEXT="2^V4QLEN7,V4QLEN8^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S A="^V(1,""BBBBB"",""CCCCC"",0,0,0,0)" S ^VCOMP=$ql($G(A)) S ^VCORR="7" D ^VEXAMINE ; 2 S ^ABSN="40387",^ITEM="IV-387 namevalue contains $ORDER function" S ^NEXT="3^V4QLEN7,V4QLEN8^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^V(1,2,3)="" S ^VCOMP=$QL("^V(1,1,"_$O(^V(1,2,0))_")") S ^VCORR="3" D ^VEXAMINE ; 3 S ^ABSN="40388",^ITEM="IV-388 namevalue contains $QUERY function" S ^NEXT="4^V4QLEN7,V4QLEN8^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S ^V(1,2,3,4,5,6)="" S ^VCOMP=$QL($Q(^V(1,2,0))) S ^VCORR="6" D ^VEXAMINE ; 4 S ^ABSN="40389",^ITEM="IV-389 namevalue contains $SELECT function" S ^NEXT="5^V4QLEN7,V4QLEN8^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S X="X",Y="Y(0,1,2,3)",Z="Z81)",A=2 S ^VCOMP=$ql($S(A=1:X,A=2:Y,1:Z)) S ^VCORR="4" D ^VEXAMINE ; 5 S ^ABSN="40390",^ITEM="IV-390 namevalue contains $QLENGTH function" S ^NEXT="6^V4QLEN7,V4QLEN8^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S A="^V(0,0,0)" S ^VCOMP=$QL($P("A/A(1)/A(1,2)/A(1,2,3)","/",$QL(A))) S ^VCORR="2" D ^VEXAMINE ; 6 S ^ABSN="40391",^ITEM="IV-391 namevalue contains extrinsic special variable" S ^NEXT="7^V4QLEN7,V4QLEN8^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S A=1234 S ^VCOMP=$ql($$NAME1) S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40392",^ITEM="IV-392 namevalue contains extrinsic functions" S ^NEXT="V4QLEN8^V4QLEN,V4QSUB^VV4" D ^V4PRESET K K ^V S (X,Y,Z)="A" S ^VCOMP=$ql($$DATA(X,Y,Z)) S ^VCORR="3" D ^VEXAMINE ; END W !!,"End of 52 --- V4QLEN7",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; NAME1() ; Q "^V("_A_")" ; DATA(A,B,C) ; Q $NAME(A(A,B,C)) V4QLEN8 V4QLEN8 ;IW-KO-YS-TS,V4QLEN,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"53---V4QLEN8: $QLENGTH function -8-" ; 1 S ^ABSN="40393",^ITEM="IV-393 namevalue has indirection" S ^NEXT="2^V4QLEN8,V4QSUB^VV4" D ^V4PRESET K K ^V S ^V(1,2)="^V(""A"",""B"")",^V("A","B",5,6)="^V(0,0,0,0,0)" S ^VCOMP=$QL(@^V(1,2)@(5,6)) S ^VCORR="5" D ^VEXAMINE ; 2 S ^ABSN="40394",^ITEM="IV-394 namevalue contains a naked refernce" S ^NEXT="3^V4QLEN8,V4QSUB^VV4" D ^V4PRESET K K ^V S ^V(2,2)=22,^V(2)=2,^V(22)="^V(1,2,3,4,2)" S ^VCOMP=$QL("^V("_^(2,2)_")")_" "_^(2) S ^VCORR="1 22" D ^VEXAMINE K ^V ; 3 S ^ABSN="40395",^ITEM="IV-395 namevalue contains naked refernces" S ^NEXT="4^V4QLEN8,V4QSUB^VV4" D ^V4PRESET K K ^V S ^V(2,2)="C(1,2)",^V(2)=2,C(1,2,2)="^V(1,2,3,4,2)" S ^VCOMP=$QL(@^(2,2)@(^V(2)))_" "_^(2) S ^VCORR="5 2" D ^VEXAMINE ; 4 S ^ABSN="40396",^ITEM="IV-396 one subscript of a global variable has maximum length" S ^NEXT="5^V4QLEN8,V4QSUB^VV4" D ^V4PRESET K K ^V S A="""#############################################################################################################################################################################################################################################""" S ^VCOMP=$QL("^V("_A_")") S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40397",^ITEM="IV-397 a global variable has maximum total length" S ^NEXT="6^V4QLEN8,V4QSUB^VV4" D ^V4PRESET K K ^V S A="ABCDEFGHIJ",B=1234567890 S ^VCOMP=$QL($NA(^V(A,A,A,A,A,A,A,A,A,B,B,B,B,B,B,B,B,B,"ABCDEFG"))) S ^VCORR="19" D ^VEXAMINE ; 6 S ^ABSN="40398",^ITEM="IV-398 minimum to maximum number of one subscript of a global variable" S ^NEXT="V4QSUB^VV4" D ^V4PRESET K k ^V S ^VCOMP=$ql("^V(-10000000000000000000000000,10000000000000000000000000,-.0000000000000000000000001,-.0000000000000000000000001)") S ^VCORR="4" D ^VEXAMINE k ^V ; END W !!,"End of 53 --- V4QLEN8",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QSUB V4QSUB ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"Tests of $QSUBSCRIPT function" ; V4QSUB1 W !!,"54---V4QSUB1" D ^V4QSUB1 V4QSUB2 W !!,"55---V4QSUB2" D ^V4QSUB2 V4QSUB3 W !!,"56---V4QSUB3" D ^V4QSUB3 V4QSUB4 W !!,"57---V4QSUB4" D ^V4QSUB4 V4QSUB5 W !!,"58---V4QSUB5" D ^V4QSUB5 V4QSUB6 W !!,"59---V4QSUB6" D ^V4QSUB6 V4QSUB7 W !!,"60---V4QSUB7" D ^V4QSUB7 V4QSUB8 W !!,"61---V4QSUB8" D ^V4QSUB8 V4QSUB9 W !!,"62---V4QSUB9" D ^V4QSUB9 V4QSUB10 W !!,"63---V4QSUB10" D ^V4QSUB10 V4QSUB11 W !!,"64---V4QSUB11" D ^V4QSUB11 V4QSUB12 W !!,"65---V4QSUB12" D ^V4QSUB12 V4QSUB13 W !!,"66---V4QSUB13" D ^V4QSUB13 V4QSUB14 W !!,"67---V4QSUB14" D ^V4QSUB14 V4QSUB15 W !!,"68---V4QSUB15" D ^V4QSUB15 END Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QSUB1 V4QSUB1 ;IW-KO-YS-TS,V4QSUB,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"54---V4QSUB1: $QSUBSCRIPT function -1-" ; W !!,"$QSUBSCRIPT(namevalue,intexpr)" W !!,"lvn" W !!,"intexpr=0" ; 1 S ^ABSN="40399",^ITEM="IV-399 unsubscripted" S ^NEXT="2^V4QSUB1,V4QSUB2^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QSUBSCRIPT("ABC",0) S ^VCORR="ABC" D ^VEXAMINE ; W !!,"1 subscript" ; 2 S ^ABSN="40400",^ITEM="IV-400 subscript is an integer number" S ^NEXT="3^V4QSUB1,V4QSUB2^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qsubscript("XYZ(98364)",0) S ^VCORR="XYZ" D ^VEXAMINE ; 3 S ^ABSN="40401",^ITEM="IV-401 subscript is a number" S ^NEXT="4^V4QSUB1,V4QSUB2^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("A(294.93844)",0) S ^VCORR="A" D ^VEXAMINE ; 4 S ^ABSN="40402",^ITEM="IV-402 subscript is a string" S ^NEXT="5^V4QSUB1,V4QSUB2^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("MMMMM(""ABCDEFGHJ"")",00000) S ^VCORR="MMMMM" D ^VEXAMINE ; 5 S ^ABSN="40403",^ITEM="IV-403 subscript contains a "" character" S ^NEXT="6^V4QSUB1,V4QSUB2^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("X(""ABC""""DEF"")",-0) S ^VCORR="X" D ^VEXAMINE ; 6 S ^ABSN="40404",^ITEM="IV-404 subscript contains "" characters" S ^NEXT="V4QSUB2^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("S("""""""")",0) S ^VCORR="S" D ^VEXAMINE ; END W !!,"End of 54 --- V4QSUB1",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QSUB2 V4QSUB2 ;IW-KO-YS-TS,V4QSUB,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"55---V4QSUB2: $QSUBSCRIPT function -2-" ; W !!,"2 subscripts" ; 1 S ^ABSN="40405",^ITEM="IV-405 subscript is an integer number" S ^NEXT="2^V4QSUB2,V4QSUB3^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("V1234567(90000000,""A"")",0) S ^VCORR="V1234567" D ^VEXAMINE ; 2 S ^ABSN="40406",^ITEM="IV-406 subscript is a number" S ^NEXT="3^V4QSUB2,V4QSUB3^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$Qs("ZZZZZZZZ(123.393,-.000322)",-0) S ^VCORR="ZZZZZZZZ" D ^VEXAMINE ; 3 S ^ABSN="40407",^ITEM="IV-407 subscript are numbers" S ^NEXT="4^V4QSUB2,V4QSUB3^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("V(-.0000001,19293.999)",0) S ^VCORR="V" D ^VEXAMINE ; 4 S ^ABSN="40408",^ITEM="IV-408 subscript is a string" S ^NEXT="5^V4QSUB2,V4QSUB3^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("%AAAAAAA(""ABCDEF"",-123)",0) S ^VCORR="%AAAAAAA" D ^VEXAMINE ; 5 S ^ABSN="40409",^ITEM="IV-409 subscript are strings" S ^NEXT="6^V4QSUB2,V4QSUB3^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("%ZZZZZZZ(""ABCDEF"",""abcdef"")",0) S ^VCORR="%ZZZZZZZ" D ^VEXAMINE ; 6 S ^ABSN="40410",^ITEM="IV-410 subscript contains a "" character" S ^NEXT="7^V4QSUB2,V4QSUB3^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$Qs("VVVV(""123""""4"",""zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"")",0) S ^VCORR="VVVV" D ^VEXAMINE ; 7 S ^ABSN="40411",^ITEM="IV-411 subscript contains "" characters" S ^NEXT="8^V4QSUB2,V4QSUB3^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("A00000Z("""""""","""""""""""")",0) S ^VCORR="A00000Z" D ^VEXAMINE ; 8 S ^ABSN="40412",^ITEM="IV-412 5 subscripts" S ^NEXT="V4QSUB3^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("H0987654(""@@@"",""~"",1234,""]]]]]"",-.0000002)",0) S ^VCORR="H0987654" D ^VEXAMINE ; END W !!,"End of 55 --- V4QSUB2",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QSUB3 V4QSUB3 ;IW-KO-YS-TS,V4QSUB,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"56---V4QSUB3: $QSUBSCRIPT function -2-" ; W !!,"$QL(namevalue)'0" ; W !!,"1 subscript" ; 1 S ^ABSN="40413",^ITEM="IV-413 subscript is an integer number" S ^NEXT="2^V4QSUB3,V4QSUB4^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("%A(0)",1) S ^VCORR="0" D ^VEXAMINE ; 2 S ^ABSN="40414",^ITEM="IV-414 subscript is a number" S ^NEXT="3^V4QSUB3,V4QSUB4^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("A(294.09384)",1) S ^VCORR="294.09384" D ^VEXAMINE ; 3 S ^ABSN="40415",^ITEM="IV-415 subscript is a string" S ^NEXT="4^V4QSUB3,V4QSUB4^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("MMMMM(""ABCDEFGHJ"")",1) S ^VCORR="ABCDEFGHJ" D ^VEXAMINE ; 4 S ^ABSN="40416",^ITEM="IV-416 subscript contains a "" character" S ^NEXT="5^V4QSUB3,V4QSUB4^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("X(""ABC""""DEF"")",1) S ^VCORR="ABC""DEF" D ^VEXAMINE ; 5 S ^ABSN="40417",^ITEM="IV-417 subscript contains "" characters" S ^NEXT="6^V4QSUB3,V4QSUB4^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("X(""ABC""""D""""D""""D"")",1) S ^VCORR="ABC""D""D""D" D ^VEXAMINE ; W !!,"2 subscripts" ; 6 S ^ABSN="40418",^ITEM="IV-418 subscript is an integer number" S ^NEXT="V4QSUB4^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("A(93848,37498000)",1) S ^VCORR="93848" D ^VEXAMINE ; END W !!,"End of 56 --- V4QSUB3",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QSUB4 V4QSUB4 ;IW-KO-YS-TS,V4QSUB,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"57---V4QSUB4: $QSUBSCRIPT function -4-" ; 1 S ^ABSN="40419",^ITEM="IV-419 subscript is a number" S ^NEXT="2^V4QSUB4,V4QSUB5^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("ZZZZZZZZ(-.000234,2937373)",2) S ^VCORR="2937373" D ^VEXAMINE ; 2 S ^ABSN="40420",^ITEM="IV-420 subscript are numbers" S ^NEXT="3^V4QSUB4,V4QSUB5^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("%A(-9280.833,8383.83)",1) S ^VCORR="-9280.833" D ^VEXAMINE ; 3 S ^ABSN="40421",^ITEM="IV-421 subscript is a string" S ^NEXT="4^V4QSUB4,V4QSUB5^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("%ZZZ(""abcd"",-2838.083)",2) S ^VCORR="-2838.083" D ^VEXAMINE ; 4 S ^ABSN="40422",^ITEM="IV-422 subscript are strings" S ^NEXT="5^V4QSUB4,V4QSUB5^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("%ZZZ(""abcd"",""--2838.083"")",1) S ^VCORR="abcd" D ^VEXAMINE ; 5 S ^ABSN="40423",^ITEM="IV-423 subscript contains a "" character" S ^NEXT="6^V4QSUB4,V4QSUB5^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("Z(""AA""""BB"",12)",1) S ^VCORR="AA""BB" D ^VEXAMINE ; 6 S ^ABSN="40424",^ITEM="IV-424 subscript contains "" characters" S ^NEXT="7^V4QSUB4,V4QSUB5^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("Z999999("""""""","""""""""""")",2) S ^VCORR="""""" D ^VEXAMINE ; 7 S ^ABSN="40425",^ITEM="IV-425 5 subscripts" S ^NEXT="V4QSUB5^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("AAAA(""X"",0,-123.83,.9293,-9)",4) S ^VCORR=".9293" D ^VEXAMINE ; END W !!,"End of 57 --- V4QSUB4",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QSUB5 V4QSUB5 ;IW-KO-YS-TS,V4QSUB,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"58---V4QSUB5: $QSUBSCRIPT function -5-" ; W !!,"$QL(namevalue)0" ; W !!,"1 subscript" ; 1 S ^ABSN="40471",^ITEM="IV-471 subscript is an integer number" S ^NEXT="2^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("^V(9000000000)",1) S ^VCORR="9000000000" D ^VEXAMINE ; 2 S ^ABSN="40472",^ITEM="IV-472 subscript is a number" S ^NEXT="3^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("^V1234567(-.0098765)",1) S ^VCORR="-.0098765" D ^VEXAMINE ; 3 S ^ABSN="40473",^ITEM="IV-473 subscript is a string" S ^NEXT="4^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("^V0000000(""009876"")",1) S ^VCORR="009876" D ^VEXAMINE ; 4 S ^ABSN="40474",^ITEM="IV-474 subscript contains a "" character" S ^NEXT="5^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("^V(""ABC""""DEF"")",1) S ^VCORR="ABC""DEF" D ^VEXAMINE ; 5 S ^ABSN="40475",^ITEM="IV-475 subscript contains "" characters" S ^NEXT="6^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("^VVVVVVVV(""AGD""""M"""""")",1) S ^VCORR="AGD""M""" D ^VEXAMINE ; W !!,"2 subscripts" ; 6 S ^ABSN="40476",^ITEM="IV-476 subscript is an integer number" S ^NEXT="7^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("^V(8364,""DG"")",1) S ^VCORR="8364" D ^VEXAMINE ; 7 S ^ABSN="40477",^ITEM="IV-477 subscript is a number" S ^NEXT="8^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("^V(-.0034885,384858)",1) S ^VCORR="-.0034885" D ^VEXAMINE ; 8 S ^ABSN="40478",^ITEM="IV-478 subscript are numbers" S ^NEXT="9^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("^V(.00000023455,38475.374)",2) S ^VCORR="38475.374" D ^VEXAMINE ; 9 S ^ABSN="40479",^ITEM="IV-479 subscript is a string" S ^NEXT="10^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("^V(9999,""##$%%##"")",2) S ^VCORR="##$%%##" D ^VEXAMINE ; 10 S ^ABSN="40480",^ITEM="IV-480 subscript are strings" S ^NEXT="11^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$qs("^V(""-123E3"",""39394E4"")",1) S ^VCORR="-123E3" D ^VEXAMINE ; 11 S ^ABSN="40481",^ITEM="IV-481 subscript contains a "" character" S ^NEXT="12^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("^V(""A""""B"",234)",1) S ^VCORR="A""B" D ^VEXAMINE ; 12 S ^ABSN="40482",^ITEM="IV-482 subscript contains "" characters" S ^NEXT="13^V4QSUB11,V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("^V(1234,""AA""""""""BB"")",2) S ^VCORR="AA""""BB" D ^VEXAMINE ; 13 S ^ABSN="40483",^ITEM="IV-483 5 subscripts" S ^NEXT="V4QSUB12^V4QSUB,V4SVQ^VV4" D ^V4PRESET K S ^VCOMP=$QS("^V(""A"",""B"",1,2,3)",3) S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 64 --- V4QSUB11",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4QSUB12 V4QSUB12 ;IW-KO-YS-TS,V4QSUB,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"65---V4QSUB12: $QSUBSCRIPT function -12-" ; W !!,"$QL(namevalue) : ",^VV S ^VCOMP=^VV,^VCORR="ABC" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G A D ^VEXAMINE B ; 2 W !!,"IV-614 $D(gvn)=0" S ^ABSN="40614",^ITEM="IV-614 $D(gvn)=0" S ^NEXT="3^V4READ1,V4READ2^V4READ,V4KEY^VV4" D ^V4PRESET K K ^VV I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") READ !," READ ^VV(1) : Type 3 characters 'XYZ' and a : ",^VV(1) S ^VCOMP=^VV(1)_$D(^VV)_$D(^VV(1))_$Q(^VV)_$Q(^VV(1)),^VCORR="XYZ101^VV(1)" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G B D ^VEXAMINE C ; 3 W !!,"IV-615 $D(gvn)=1" S ^ABSN="40615",^ITEM="IV-615 $D(gvn)=1" S ^NEXT="V4READ2^V4READ,V4KEY^VV4" D ^V4PRESET K K ^VV I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") S ^VV="abcd" READ !," READ ^VV : Type 1 character 'X' and a : ",^VV S ^VCOMP=^VV_$D(^VV)_$D(VV(1))_$Q(^VV),^VCORR="X10" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G C D ^VEXAMINE ; END W !!,"End of 93 --- V4READ1",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4READ2 V4READ2 ;IW-KO-YS-TS,V4READ,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"94---V4READ2: READ Command -2-" ; D ; 1 W !!,"IV-616 $D(gvn)=10" S ^ABSN="40616",^ITEM="IV-616 $D(gvn)=10" S ^NEXT="2^V4READ2,V4READ3^V4READ,V4KEY^VV4" D ^V4PRESET K K ^VV S ^VV(1,2,3,4,5)=12345 I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") R !!," READ ^VV(1,2) : Type only a : ",^VV(1,2) S ^VCOMP=^VV(1,2)_$D(^VV)_$D(^VV(1))_$D(^VV(1,2))_$D(^VV(1,2,3))_$Q(^VV)_$Q(^VV(1,2))_$Q(^VV(1,2,3,4,5)) S ^VCORR="10101110^VV(1,2)^VV(1,2,3,4,5)" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G D D ^VEXAMINE E ; 2 W !!,"IV-617 $D(gvn)=11" S ^ABSN="40617",^ITEM="IV-617 $D(gvn)=11" S ^NEXT="3^V4READ2,V4READ3^V4READ,V4KEY^VV4" D ^V4PRESET K K ^VV I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") s ^VV("data")="DATA",^VV("data",1)="001",^VV("data",2)="002" s ^VV("DATA")="data",^VV("DATA",3)="003",^VV("DATA",4)="004" r !!," r ^VV(""data"") : Type 10 characters '1234567890' and a : ",!," ",^VV("data") I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") S ^VCORR="1234567890 10111" S ^VCOMP=^VV("data")_" "_$D(^VV)_$D(^VV("data"))_$D(^VV("data",1)) D AGAIN^VEXAMINE I RES="YES" G E D ^VEXAMINE K ^VV F ; 3 W !!,"IV-618 READ gvn readcount" S ^ABSN="40618",^ITEM="IV-618 READ gvn readcount" S ^NEXT="4^V4READ2,V4READ3^V4READ,V4KEY^VV4" D ^V4PRESET K k ^VV I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") READ !," READ ^VV(""A"")#3 : Type 3 characters 'ABC' ",!," and NEVER touch : ",^VV("A")#3 S ^VCOMP=^VV("A")_$O(^VV("")),^VCORR="ABCA" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G F D ^VEXAMINE G ; 4 W !!,"IV-619 READ gvn readcount timeout" S ^ABSN="40619",^ITEM="IV-619 READ gvn readcount timeout" S ^NEXT="V4READ3^V4READ,V4KEY^VV4" D ^V4PRESET K I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") r !," r ^VV(1)#3:60 : Type 3 chars 'ABC' within 60 Seconds ",!," and NEVER touch : ",^VV(1)#3:60 S ^VCOMP=^VV(1)_$T,^VCORR="ABC1" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G G D ^VEXAMINE K ^VV ; END W !!,"End of 94 --- V4READ2",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4READ3 V4READ3 ;IW-KO-YS-TS,V4READ,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"95---V4READ3: READ Command -3-" ; H ; 1 W !!,"IV-620 READ gvn timeout" S ^ABSN="40620",^ITEM="IV-620 READ gvn timeout" S ^NEXT="2^V4READ3,V4READ4^V4READ,V4KEY^VV4" D ^V4PRESET K I 1 I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") R !!," R ^VV(1,2):10 ; Type 2 chars 'AB' within 10 seconds ",!," and NEVER touch : ",^VV(1,2):10 S ^VCOMP=^VV(1,2)_$T,^VCORR="AB0" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G H D ^VEXAMINE K ^VV I ; 2 W !!,"IV-621 readargument contains an indirection" S ^ABSN="40621",^ITEM="IV-621 readargument contains an indirection" S ^NEXT="3^V4READ3,V4READ4^V4READ,V4KEY^VV4" D ^V4PRESET K K ^VV I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") S N=1,M=2 S ^VV(1)="!,"" R @^VV(1) ; Type 3 characters 'abc' and a : "",^VV(M)" R !,@^VV(N) S ^VCOMP=^VV(2),^VCORR="abc" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G I D ^VEXAMINE J ; 3 W !!,"IV-622 readargument contains indirections" S ^ABSN="40622",^ITEM="IV-622 readargument contains indirections" S ^NEXT="V4READ4^V4READ,V4KEY^VV4" D ^V4PRESET K K ^VV I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") S ^VV="^VV(1,2)",^VV(1,2,3)="^VV(1,2,3,4)" S N="N(1)",N(1)="3",M=2,^VV(2)="@^VV(3)",^VV(3)="^VV(4)" S ^VV(1,2,3,4)="!,"" R @@@^VV@(@N) ; Type 3 characters 'xyz' and a : "",@^VV(M)" R !,@@@^VV@(@N) S ^VCOMP=^VV(4),^VCORR="xyz" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G J D ^VEXAMINE K ^VV ; END W !!,"End of 95 --- V4READ3",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4READ4 V4READ4 ;IW-KO-YS-TS,V4READ,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"96---V4READ4: READ Command -4-" ; W !!,"READ *gvn" K ; 1 W !!,"IV-623 READ *gvn" S ^ABSN="40623",^ITEM="IV-623 READ *gvn" S ^NEXT="2^V4READ4,V4KEY^VV4" D ^V4PRESET K K ^VV I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") R !!," R *^VV(""M"") : Type 1 character 'M' : ",*^VV("M") S ^VCOMP=^VV("M"),^VCORR="77" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G K D ^VEXAMINE L ; 2 W !!,"IV-624 READ *gvn timeout" S ^ABSN="40624",^ITEM="IV-624 READ *gvn timeout" S ^NEXT="3^V4READ4,V4KEY^VV4" D ^V4PRESET K K ^VV I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") I 0 R !!," R *^VV:60 ;Type 1 character 'A' within 60 seconds ",!," and NEVER touch : ",*^VV:60 S ^VCOMP=^VV_" "_$T,^VCORR="65 1" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G L D ^VEXAMINE K ^VV M ; 3 W !!,"IV-625 readargument contains an indirection" S ^ABSN="40625",^ITEM="IV-625 readargument contains an indirection" S ^NEXT="4^V4READ4,V4KEY^VV4" D ^V4PRESET K K ^VV I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") S ^VV(1)="^VV(2)" R !!," R *@^VV(1) : Type 1 character 'B' : ",*@^VV(1) S ^VCOMP=^VV(1)_^VV(2),^VCORR="^VV(2)66" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G M D ^VEXAMINE K ^VV N ; 4 W !!,"IV-626 readargument contains indirections" S ^ABSN="40626",^ITEM="IV-626 readargument contains indirections" S ^NEXT="V4KEY^VV4" D ^V4PRESET K K ^VV I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") S ^VV="^VV(1,2)",^VV(1,2,3)="^VV(4)",^VV(4)="^VV(4,5)" R !!," R *@@^VV@(3) : Type 1 character 'C' : ",*@@@^VV@(3) S ^VCOMP=^VV(4,5),^VCORR="67" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G N D ^VEXAMINE K ^VV ; END W !!,"End of 96 --- V4READ4",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4KEY V4KEY ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"97---V4KEY: Special variable $KEY" A ; 1 W !!,"IV-627 terminated by CR" S ^ABSN="40627",^ITEM="IV-627 terminated by CR" S ^NEXT="2^V4KEY,V4SYSTEM^VV4" D ^V4PRESET K I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") READ !," READ VV : Type 3 characters 'ABC' and a : ",VV S ^VCOMP=VV_" "_($KEY=$C(13))_" "_($key=$C(13)) S ^VCORR="ABC 1 1" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G A D ^VEXAMINE ; B ; 2 W !!,"IV-628 terminated by timeout" S ^ABSN="40628",^ITEM="IV-628 terminated by timeout" S ^NEXT="3^V4KEY,V4SYSTEM^VV4" D ^V4PRESET K I $D(^VENVIRON("INPUT USE"))=1 U ^VENVIRON("INPUT USE") R !," R VV:10 ; Type 2 chars 'AB' within 10 seconds ",!," and NEVER touch : ",VV:10 S ^VCOMP=VV_" "_$TEST_" "_($K="")_" "_($k="") S ^VCORR="AB 0 1 1" I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") D AGAIN^VEXAMINE I RES="YES" G B D ^VEXAMINE ; C ; 3 W !!,"IV-629 no READ command" S ^ABSN="40629",^ITEM="IV-629 no READ command" S ^NEXT="V4SYSTEM^VV4" D ^V4PRESET K K ^VV JOB KEY::10 IF $T F I=1:1:60 Q:$D(^VV)#10=1 H 1 H 1 I $D(^VV)#10=0 S ^VV="ERROR" S ^VCOMP=^VV S ^VCORR="" D ^VEXAMINE ; END W !!,"End of 97 --- V4KEY",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q KEY S ^VV=$KEY Q H ; V4SYSTEM V4SYSTEM ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"98---V4SYSTEM: Special variable $SYSTEM" ; 1 S ^ABSN="40630",^ITEM="IV-630 $SYSTEM value format" S ^NEXT="2^V4SYSTEM,V4POWER^VV4" D ^V4PRESET K ;(test fixed in V9.02;7/10/95) S ^VCOMP=($SYSTEM?1.N1","1.E)_($system?1.N1","1.E)_($SYSTEM=$system) S ^VCORR="111" D ^VEXAMINE ; 2 S ^ABSN="40631",^ITEM="IV-631 $SY value format" S ^NEXT="3^V4SYSTEM,V4POWER^VV4" D ^V4PRESET K ;(test fixed in V9.02;7/10/95) S ^VCOMP=($SY?1.N1","1.E)_($sy?1.N1","1.E)_($SY=$sy)_($SYSTEM=$SY) S ^VCORR="1111" D ^VEXAMINE ; 3 S ^ABSN="40632",^ITEM="IV-632 $SYSTEM under another JOB" S ^NEXT="V4POWER^VV4" D ^V4PRESET K K ^VV ;(test fixed in V9.02;7/10/95) job ^V4SYSJOB::10 IF $T F I=1:1:60 Q:$D(^VV)#10=1 H 1 H 1 I $D(^VV)#10=0 S ^VV="ERROR" S ^VCOMP=$P(^VV,"/",1)_" "_($P(^VV,"/",2)=$SYSTEM) S ^VCORR="111 1111 1" D ^VEXAMINE ; END W !!,"End of 98 --- V4SYSTEM",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SYSJOB V4SYSJOB ;IW-KO-YS-TS,V4SYSTEM,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ;(test fixed in V9.02;7/10/95) ; S ^VV="error" S ^VV=($SYSTEM?1.N1","1.E)_($system?1.N1","1.E)_($SYSTEM=$system)_" " S ^VV=^VV_($SY?1.N1","1.E)_($sy?1.N1","1.E)_($SY=$sy)_($SYSTEM=$SY) S ^VV=^VV_"/"_$SYSTEM Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4POWER V4POWER ;IW-KO-TS-YS,VV4,MVTS V9.10;15/6/96;POWER OPERATOR ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"power operator (A**P)" ; V4POW1 W !!,"99---V4POW1" D ^V4POW1 V4POW2 W !!,"100---V4POW2" D ^V4POW2 V4POW3 W !!,"101---V4POW3" D ^V4POW3 V4POW4 W !!,"102---V4POW4" D ^V4POW4 V4POW5 W !!,"103---V4POW5" D ^V4POW5 V4POW6 W !!,"104---V4POW6" D ^V4POW6 V4POW7 W !!,"105---V4POW7" D ^V4POW7 V4POW8 W !!,"106---V4POW8" D ^V4POW8 END Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4POW1 V4POW1 ;IW-KO-TS-YS,V4POWER,MVTS V9.10;15/6/96;POWER OPERATOR ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"99---V4POW1: power operator (A**P) -1-" ; W !,"A=1" ; 1 S ^ABSN="40633",^ITEM="IV-633 1**0" S ^NEXT="2^V4POW1,V4POW2^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=1**0 S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40634",^ITEM="IV-634 1**1" S ^NEXT="3^V4POW1,V4POW2^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=1**1 S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40635",^ITEM="IV-635 1**5" S ^NEXT="V4POW2^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=1**5 S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 99 --- V4POW1",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4POW2 V4POW2 ;IW-KO-TS-YS,V4POWER,MVTS V9.10;15/6/96;POWER OPERATOR ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"100---V4POW2: power operator (A**P) -2-" ; W !,"A=2" ; 1 S ^ABSN="40636",^ITEM="IV-636 2**0" S ^NEXT="2^V4POW2,V4POW3^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=2**0 S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40637",^ITEM="IV-637 2**1" S ^NEXT="3^V4POW2,V4POW3^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=2**1 S ^VCORR="2" D ^VEXAMINE ; 3 S ^ABSN="40638",^ITEM="IV-638 2**2" S ^NEXT="4^V4POW2,V4POW3^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=2**2 S ^VCORR="4" D ^VEXAMINE ; 4 S ^ABSN="40639",^ITEM="IV-639 2**4" S ^NEXT="5^V4POW2,V4POW3^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=2**4 S ^VCORR="16" D ^VEXAMINE ; 5 S ^ABSN="40640",^ITEM="IV-640 2**8" S ^NEXT="6^V4POW2,V4POW3^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=2**8 S ^VCORR="256" D ^VEXAMINE ; 6 S ^ABSN="40641",^ITEM="IV-641 2**24" S ^NEXT="7^V4POW2,V4POW3^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=2**24 S ^VCORR="16777216" D ^VEXAMINE ; W !,"A=5" ; 7 S ^ABSN="40642",^ITEM="IV-642 5**1" S ^NEXT="8^V4POW2,V4POW3^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=5**1 S ^VCORR="5" D ^VEXAMINE ; 8 S ^ABSN="40643",^ITEM="IV-643 5**2" S ^NEXT="9^V4POW2,V4POW3^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=5**2 S ^VCORR="25" D ^VEXAMINE ; 9 S ^ABSN="40644",^ITEM="IV-644 5**10" S ^NEXT="V4POW3^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=5**10 S ^VCORR="9765625" D ^VEXAMINE ; END W !!,"End of 100 --- V4POW2",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4POW3 V4POW3 ;IW-KO-TS-YS,V4POWER,MVTS V9.10;15/6/96;POWER OPERATOR ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"101---V4POW3: power operator (A**P) -3-" ; W !,"A=10" ; 1 S ^ABSN="40645",^ITEM="IV-645 10**0" S ^NEXT="2^V4POW3,V4POW4^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=10**0 S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40646",^ITEM="IV-646 10**1" S ^NEXT="3^V4POW3,V4POW4^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=10**1 S ^VCORR="10" D ^VEXAMINE ; 3 S ^ABSN="40647",^ITEM="IV-647 10**7" S ^NEXT="4^V4POW3,V4POW4^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=10**7 S ^VCORR="10000000" D ^VEXAMINE ; W !,"A is an integer" ; 4 S ^ABSN="40648",^ITEM="IV-648 674**2" S ^NEXT="5^V4POW3,V4POW4^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=674**2 S ^VCORR="454276" D ^VEXAMINE ; 5 S ^ABSN="40649",^ITEM="IV-649 148**3" S ^NEXT="6^V4POW3,V4POW4^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=148**3 S ^VCORR="3241792" D ^VEXAMINE ; W !,"A is a number" ; 6 S ^ABSN="40650",^ITEM="IV-650 68.9135**2" S ^NEXT="7^V4POW3,V4POW4^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(68.9135**2,0,2) S ^VCORR="4749.07" D ^VEXAMINE ; 7 S ^ABSN="40651",^ITEM="IV-651 5.0738**3" S ^NEXT="8^V4POW3,V4POW4^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(5.0738**3,0,4) S ^VCORR="130.6171" D ^VEXAMINE ; 8 S ^ABSN="40652",^ITEM="IV-652 1.2563**5" S ^NEXT="9^V4POW3,V4POW4^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(1.2563**5,0,6) S ^VCORR="3.129441" D ^VEXAMINE ; 9 S ^ABSN="40653",^ITEM="IV-653 1.05**20" S ^NEXT="V4POW4^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(1.05**20,0,6) S ^VCORR="2.653298" D ^VEXAMINE ; END W !!,"End of 101 --- V4POW3",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4POW4 V4POW4 ;IW-KO-TS-YS,V4POWER,MVTS V9.10;15/6/96;POWER OPERATOR ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"102---V4POW4: power operator (A**P) -4-" ; W !,"P=1/2" ; 1 S ^ABSN="40654",^ITEM="IV-654 2**0.5" S ^NEXT="2^V4POW4,V4POW5^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(2**0.5,0,6) S ^VCORR="1.414214" D ^VEXAMINE ; 2 S ^ABSN="40655",^ITEM="IV-655 3**0.5" S ^NEXT="3^V4POW4,V4POW5^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(3**0.5,0,6) S ^VCORR="1.732051" D ^VEXAMINE ; 3 S ^ABSN="40656",^ITEM="IV-656 5**0.5" S ^NEXT="4^V4POW4,V4POW5^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(5**0.5,0,6) S ^VCORR="2.236068" D ^VEXAMINE ; 4 S ^ABSN="40657",^ITEM="IV-657 10**0.5" S ^NEXT="5^V4POW4,V4POW5^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(10**0.5,0,6) S ^VCORR="3.162278" D ^VEXAMINE ; W !,"P=1/3" ; 5 S ^ABSN="40658",^ITEM="IV-658 2**(1/3)" S ^NEXT="6^V4POW4,V4POW5^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(2**(1/3),0,6) S ^VCORR="1.259921" D ^VEXAMINE ; 6 S ^ABSN="40659",^ITEM="IV-659 3**(1/3)" S ^NEXT="7^V4POW4,V4POW5^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(3**(1/3),0,6) S ^VCORR="1.442250" D ^VEXAMINE ; W !,"P=1/4" ; 7 S ^ABSN="40660",^ITEM="IV-660 2**0.25" S ^NEXT="8^V4POW4,V4POW5^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(2**0.25,0,6) S ^VCORR="1.189207" D ^VEXAMINE ; W !,"P=1.05" ; 8 S ^ABSN="40661",^ITEM="IV-661 5**1.05" S ^NEXT="V4POW5^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(5**1.05,0,6) S ^VCORR="5.418992" D ^VEXAMINE ; END W !!,"End of 102 --- V4POW4",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4POW5 V4POW5 ;IW-KO-TS-YS,V4POWER,MVTS V9.10;15/6/96;POWER OPERATOR ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"103---V4POW5: power operator (A**P) -5-" ; W !,"P=-1" ; 1 S ^ABSN="40662",^ITEM="IV-662 1**-1" S ^NEXT="2^V4POW5,V4POW6^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=1**-1 S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40663",^ITEM="IV-663 2**-1" S ^NEXT="3^V4POW5,V4POW6^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=2**-1 S ^VCORR=".5" D ^VEXAMINE ; 3 S ^ABSN="40664",^ITEM="IV-664 10000**-1" S ^NEXT="4^V4POW5,V4POW6^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=10000**-1 S ^VCORR=".0001" D ^VEXAMINE ; 4 S ^ABSN="40665",^ITEM="IV-665 pi**-1" S ^NEXT="5^V4POW5,V4POW6^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(3.1415926535897932384626433**-1,0,7) S ^VCORR="0.3183099" D ^VEXAMINE ; 5 S ^ABSN="40666",^ITEM="IV-666 e**-1" S ^NEXT="6^V4POW5,V4POW6^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(2.7182818284590452353602874**-1,0,7) S ^VCORR="0.3678794" D ^VEXAMINE ; W !,"P=2" ; 6 S ^ABSN="40667",^ITEM="IV-667 pi**2" S ^NEXT="7^V4POW5,V4POW6^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(3.1415926535897932384626433**2,0,6) S ^VCORR="9.869604" D ^VEXAMINE ; 7 S ^ABSN="40668",^ITEM="IV-668 e**2" S ^NEXT="V4POW6^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(2.7182818284590452353602874**2,0,6) S ^VCORR="7.389056" D ^VEXAMINE ; END W !!,"End of 103 --- V4POW5",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4POW6 V4POW6 ;IW-KO-TS-YS,V4POWER,MVTS V9.10;15/6/96;POWER OPERATOR ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"104---V4POW6: power operator (A**P) -6-" ; W !,"P=-2" ; 1 S ^ABSN="40669",^ITEM="IV-669 3**-2" S ^NEXT="2^V4POW6,V4POW7^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(3**-2,0,7) S ^VCORR="0.1111111" D ^VEXAMINE ; 2 S ^ABSN="40670",^ITEM="IV-670 1235**-2" S ^NEXT="3^V4POW6,V4POW7^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$j(12.35**-2,0,9) S ^VCORR="0.006556410" D ^VEXAMINE ; W !,"P=-3" ; 3 S ^ABSN="40671",^ITEM="IV-671 3**-3" S ^NEXT="4^V4POW6,V4POW7^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$J(3**-3,0,8) S ^VCORR="0.03703704" D ^VEXAMINE ; 4 S ^ABSN="40672",^ITEM="IV-672 0.5**-4" S ^NEXT="V4POW7^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=0.5**-4 S ^VCORR="16" D ^VEXAMINE ; END W !!,"End of 104 --- V4POW6",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4POW7 V4POW7 ;IW-KO-TS-YS,V4POWER,MVTS V9.10;15/6/96;POWER OPERATOR ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"105---V4POW7: power operator (A**P) -7-" ; W !,"P is a number" ; 1 S ^ABSN="40673",^ITEM="IV-673 2**1.5" S ^NEXT="2^V4POW7,V4POW8^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$J(2**1.5,0,6) S ^VCORR="2.828427" D ^VEXAMINE ; 2 S ^ABSN="40674",^ITEM="IV-674 3**2.25" S ^NEXT="3^V4POW7,V4POW8^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=$J(3**2.25,0,5) S ^VCORR="11.84467" D ^VEXAMINE ; 3 S ^ABSN="40675",^ITEM="IV-675 4**-2.5" S ^NEXT="V4POW8^V4POWER,V4RAND^VV4" D ^V4PRESET K S ^VCOMP=4**-2.5 S ^VCORR=".03125" D ^VEXAMINE ; END W !!,"End of 105 --- V4POW7",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4POW8 V4POW8 ;IW-KO-TS-YS,V4POWER,MVTS V9.10;15/6/96;POWER OPERATOR ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"106---V4POW8: power operator (A**P) -8-" ; 1 S ^ABSN="40676",^ITEM="IV-676 A is a lvn" S ^NEXT="2^V4POW8,V4RAND^VV4" D ^V4PRESET K s A(12)=10 S ^VCOMP=A(12)**7 S ^VCORR="10000000" D ^VEXAMINE ; 2 S ^ABSN="40677",^ITEM="IV-677 A is a gvn" S ^NEXT="3^V4POW8,V4RAND^VV4" D ^V4PRESET K k ^V s ^V("A")=2 S ^VCOMP=^V("A")**-1 S ^VCORR=".5" D ^VEXAMINE k ^V ; 3 S ^ABSN="40678",^ITEM="IV-678 P is a lvn" S ^NEXT="4^V4POW8,V4RAND^VV4" D ^V4PRESET K s A=4,B("b")=-2.5 S ^VCOMP=A**B("b") S ^VCORR=".03125" D ^VEXAMINE ; 4 S ^ABSN="40679",^ITEM="IV-679 P is a gvn" S ^NEXT="V4RAND^VV4" D ^V4PRESET K k ^V s ^V("A")=0.5,^V("P")=-4 S ^VCOMP=^V("A")**^V("P") S ^VCORR="16" D ^VEXAMINE k ^V ; END W !!,"End of 106 --- V4POW8",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4RAND V4RAND ;IW-YS-KO-TS,VV4,MVTS V9.10;15/6/96;$RANDOM FUNCTION ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1978-1996 W !!,"107---V4RAND: $RANDOM function",! ; 1 W !,"IV-680 intexpr is 15 digits ( maximum range )" S ^ABSN="40680",^ITEM="IV-680 intexpr is 15 digits ( maximum range )" S ^NEXT="V4ORDER^VV4" D ^V4PRESET W !," $R(999999999999999) : " S VCOMP=0 F I=1:1:20 S R=$R(999999999999999) W R," " I R'?1.N!(R'<999999999999999) S VCOMP=VCOMP+1 S ^VCOMP=VCOMP,^VCORR=0 D ^VEXAMINE ; END W !!,"End of 107 --- V4RAND",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4ORDER V4ORDER ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 W !,"Tests of $ORDER(glvn,expr) function" ; V4ORD21 W !!,"108---V4ORD21" D ^V4ORD21 V4ORD22 W !!,"109---V4ORD22" D ^V4ORD22 V4ORD23 W !!,"110---V4ORD23" D ^V4ORD23 V4ORD24 W !!,"111---V4ORD24" D ^V4ORD24 V4ORD25 W !!,"112---V4ORD25" D ^V4ORD25 V4ORD26 W !!,"113---V4ORD26" D ^V4ORD26 V4ORD27 W !!,"114---V4ORD27" D ^V4ORD27 V4ORD28 W !!,"115---V4ORD28" D ^V4ORD28 V4ORD29 W !!,"116---V4ORD29" D ^V4ORD29 V4ORD2A W !!,"117---V4ORD2A" D ^V4ORD2A END Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4ORD21 V4ORD21 ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"108---V4ORD21: $ORDER(glvn,expr) -1-" W !,"$ORDER(glvn,expr)" W !,"expr=1" W !,"glvn=lvn" ; 1 S ^ABSN="40681",^ITEM="IV-681 subscript is one character (95 graphics including space)" S ^NEXT="2^V4ORD21,V4ORD22^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S VCOMP="",X="" F I=126:-1:32 S V($C(I))="" S X="" F I=0:0 S X=$ORDER(V(X),1) Q:X="" S VCOMP=VCOMP_X S X="0123456789 !""#$%&'()*+,-./" F I=58:1:126 S X=X_$C(I) S ^VCOMP=VCOMP,^VCORR=X D ^VEXAMINE ; 2 S ^ABSN="40682",^ITEM="IV-682 sequence from an empty string" S ^NEXT="3^V4ORD21,V4ORD22^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S ^VCOMP="",V(-192)=-192,V(-1)=-1,V(0)=0,V(839)=839,V("AAA")="AAA" S ^VCOMP=^VCOMP_$O(V(""),1)_" " K V(-192) S ^VCOMP=^VCOMP_$O(V(""),1)_" " K V(-1) S ^VCOMP=^VCOMP_$O(V(""),1)_" " K V(0) S ^VCOMP=^VCOMP_$O(V(""),1)_" " K V(839) S ^VCOMP=^VCOMP_$O(V(""),1)_" " K V("AAA") S ^VCOMP=^VCOMP_$O(V(""),1)_" " S ^VCORR="-192 -1 0 839 AAA " D ^VEXAMINE ; 3 S ^ABSN="40683",^ITEM="IV-683 numeric interpretation of a subscript" S ^NEXT="4^V4ORD21,V4ORD22^V4ORDER,V4QUERY^VV4" D ^V4PRESET K D SETX^V4ORDE,SETL^V4ORDE S VCOMP="",X=-1E11 FOR I=1:1:35 S X=$O(V(X),1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(1)_X(2)_X(3) D ^VEXAMINE ; 4 S ^ABSN="40684",^ITEM="IV-684 sequence from an empty string when glvn is lvn" S ^NEXT="5^V4ORD21,V4ORD22^V4ORDER,V4QUERY^VV4" D ^V4PRESET K D SETX^V4ORDE,SETL^V4ORDE S VCOMP="",X="" FOR I=1:1:35 S X=$O(V(X),1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(1)_X(2)_X(3) D ^VEXAMINE ; 5 S ^ABSN="40685",^ITEM="IV-685 what is the set A (local)?" S ^NEXT="6^V4ORD21,V4ORD22^V4ORDER,V4QUERY^VV4" D ^V4PRESET K D SETL2^V4ORDE S VCOMP="",X="" FOR I=1:1:12 S X=$O(V(X),1.0000) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(3) D ^VEXAMINE ; 6 S ^ABSN="40686",^ITEM="IV-686 the last returned value" S ^NEXT="V4ORD22^V4ORDER,V4QUERY^VV4" D ^V4PRESET K D SETL2^V4ORDE S VCOMP="",X="" FOR I=1:1 S X=$O(V(X),1) S VCOMP=VCOMP_X_" " Q:X="" S ^VCOMP=VCOMP,^VCORR=X(4) D ^VEXAMINE ; END W !!,"End of 108 --- V4ORD21",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4ORD22 V4ORD22 ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"109---V4ORD22: $ORDER(glvn,expr) -2-" W !,"glvn=gvn" ; 1 S ^ABSN="40687",^ITEM="IV-687 subscript is one character (95 graphics including space)" S ^NEXT="2^V4ORD22,V4ORD23^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S VCOMP="",X="" F I=126:-1:32 S ^V($C(I))="" S X="" F S X=$o(^V(X),1) Q:X="" S VCOMP=VCOMP_X S X="0123456789 !""#$%&'()*+,-./" F I=58:1:126 S X=X_$C(I) S ^VCOMP=VCOMP,^VCORR=X D ^VEXAMINE ; 2 S ^ABSN="40688",^ITEM="IV-688 sequence from an empty string" S ^NEXT="3^V4ORD22,V4ORD23^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S ^VCOMP="",^V(-192)=-192,^V(-1)=-1,^V(0)=0,^V(839)=839,^V("AAA")="AAA" S ^VCOMP=^VCOMP_$O(^V(""),1)_" " K ^V(-192) S ^VCOMP=^VCOMP_$O(^V(""),1)_" " K ^V(-1) S ^VCOMP=^VCOMP_$O(^V(""),1)_" " K ^V(0) S ^VCOMP=^VCOMP_$O(^V(""),1)_" " K ^V(839) S ^VCOMP=^VCOMP_$O(^V(""),1)_" " K ^V("AAA") S ^VCOMP=^VCOMP_$O(^V(""),1)_" " S ^VCORR="-192 -1 0 839 AAA " D ^VEXAMINE K ^V ; 3 S ^ABSN="40689",^ITEM="IV-689 numeric interpretation of a subscript" S ^NEXT="4^V4ORD22,V4ORD23^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V D SETX^V4ORDE,SETG^V4ORDE S VCOMP="",X=-1E11 FOR I=1:1:35 S X=$O(^V(X),1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(1)_X(2)_X(3) D ^VEXAMINE K ^V ; 4 S ^ABSN="40690",^ITEM="IV-690 sequence from an empty string when glvn is gvn" S ^NEXT="5^V4ORD22,V4ORD23^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V D SETX^V4ORDE,SETG^V4ORDE S VCOMP="",X="" FOR I=1:1:35 S X=$O(^V(X),1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(1)_X(2)_X(3) D ^VEXAMINE K ^V ; 5 S ^ABSN="40691",^ITEM="IV-691 what is the set A (global)?" S ^NEXT="6^V4ORD22,V4ORD23^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V D SETG2^V4ORDE S VCOMP="",X="" FOR I=1:1:12 S X=$O(^V(X),1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(3) D ^VEXAMINE K ^V ; 6 S ^ABSN="40692",^ITEM="IV-692 the last returned value" S ^NEXT="V4ORD23^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V D SETG2^V4ORDE S VCOMP="",X="" FOR I=1:1 S X=$O(^V(X),1) S VCOMP=VCOMP_X_" " Q:X="" S ^VCOMP=VCOMP,^VCORR=X(4) D ^VEXAMINE K ^V ; END W !!,"End of 109 --- V4ORD22",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4ORD23 V4ORD23 ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"110---V4ORD23: $ORDER(glvn,expr) -3-" W !,"expr=-1" W !,"glvn=lvn" ; 1 S ^ABSN="40693",^ITEM="IV-693 subscript is one character (95 graphics including space)" S ^NEXT="2^V4ORD23,V4ORD24^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S VCOMP="",X="" F I=32:1:126 S V($C(I))="" S X="" F I=0:0 S X=$O(V(X),-1) Q:X="" S VCOMP=VCOMP_X S X="" F I=126:-1:58 S X=X_$C(I) S X=X_"/.-,+*)('&%$#""! 9876543210" S ^VCOMP=VCOMP,^VCORR=X D ^VEXAMINE ; 2 S ^ABSN="40694",^ITEM="IV-694 sequence from an empty string" S ^NEXT="3^V4ORD23,V4ORD24^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S ^VCOMP="",V(-192)=-192,V(-1)=-1,V(0)=0,V(839)=839,V("AAA")="AAA" S ^VCOMP=^VCOMP_$O(V(""),-1)_" " K V("AAA") S ^VCOMP=^VCOMP_$O(V(""),-1)_" " K V(839) S ^VCOMP=^VCOMP_$O(V(""),-1)_" " K V(0) S ^VCOMP=^VCOMP_$O(V(""),-1)_" " K V(-1) S ^VCOMP=^VCOMP_$O(V(""),-1)_" " K V(-192) S ^VCOMP=^VCOMP_$O(V(""),-1)_" " S ^VCORR="AAA 839 0 -1 -192 " D ^VEXAMINE ; 3 S ^ABSN="40695",^ITEM="IV-695 numeric interpretation of a subscript" S ^NEXT="4^V4ORD23,V4ORD24^V4ORDER,V4QUERY^VV4" D ^V4PRESET K D SETX^V4ORDE,SETL^V4ORDE S VCOMP="",X="~~~~~~~~" FOR I=1:1:35 S X=$O(V(X),-1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(-3)_X(-2)_X(-1) D ^VEXAMINE ; 4 S ^ABSN="40696",^ITEM="IV-696 sequence from an empty string when glvn is lvn" S ^NEXT="5^V4ORD23,V4ORD24^V4ORDER,V4QUERY^VV4" D ^V4PRESET K D SETX^V4ORDE,SETL^V4ORDE S VCOMP="",X="" FOR I=1:1:35 S X=$O(V(X),-1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(-3)_X(-2)_X(-1) D ^VEXAMINE ; 5 S ^ABSN="40697",^ITEM="IV-697 what is the set A (local)?" S ^NEXT="6^V4ORD23,V4ORD24^V4ORDER,V4QUERY^VV4" D ^V4PRESET K D SETL2^V4ORDE S VCOMP="",X="" FOR I=1:1:12 S X=$O(V(X),-1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(-3) D ^VEXAMINE ; 6 S ^ABSN="40698",^ITEM="IV-698 the last returned value" S ^NEXT="V4ORD24^V4ORDER,V4QUERY^VV4" D ^V4PRESET K D SETL2^V4ORDE S VCOMP="",X="" FOR I=1:1 S X=$O(V(X),-1) S VCOMP=VCOMP_X_" " Q:X="" S ^VCOMP=VCOMP,^VCORR=X(-4) D ^VEXAMINE ; END W !!,"End of 110 --- V4ORD23",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4ORD24 V4ORD24 ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"111---V4ORD24: $ORDER(glvn,expr) -4-" W !,"glvn=gvn" ; 1 S ^ABSN="40699",^ITEM="IV-699 subscript is one character (95 graphics including space)" S ^NEXT="2^V4ORD24,V4ORD25^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S VCOMP="",X="" F I=32:1:126 S ^V($C(I))="" S X="" F S X=$O(^V(X),-1) Q:X="" S VCOMP=VCOMP_X S X="" F I=126:-1:58 S X=X_$C(I) S X=X_"/.-,+*)('&%$#""! 9876543210" S ^VCOMP=VCOMP,^VCORR=X D ^VEXAMINE K ^V ; 2 S ^ABSN="40700",^ITEM="IV-700 sequence from an empty string" S ^NEXT="3^V4ORD24,V4ORD25^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S ^VCOMP="",^V(-192)=-192,^V(-1)=-1,^V(0)=0,^V(839)=839,^V("AAA")="AAA" S ^VCOMP=^VCOMP_$O(^V(""),-1)_" " K ^V("AAA") S ^VCOMP=^VCOMP_$O(^V(""),-1)_" " K ^V(839) S ^VCOMP=^VCOMP_$O(^V(""),-1)_" " K ^V(0) S ^VCOMP=^VCOMP_$O(^V(""),-1)_" " K ^V(-1) S ^VCOMP=^VCOMP_$O(^V(""),-1)_" " K ^V(-192) S ^VCOMP=^VCOMP_$O(^V(""),-1)_" " S ^VCORR="AAA 839 0 -1 -192 " D ^VEXAMINE K ^V ; 3 S ^ABSN="40701",^ITEM="IV-701 numeric interpretation of a subscript" S ^NEXT="4^V4ORD24,V4ORD25^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V D SETX^V4ORDE,SETG^V4ORDE S VCOMP="",X="~~~~~~~~" FOR I=1:1:35 S X=$O(^V(X),-1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(-3)_X(-2)_X(-1) D ^VEXAMINE K ^V ; 4 S ^ABSN="40702",^ITEM="IV-702 sequence from an empty string when glvn is gvn" S ^NEXT="5^V4ORD24,V4ORD25^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V D SETX^V4ORDE,SETG^V4ORDE S VCOMP="",X="" FOR I=1:1:35 S X=$O(^V(X),-1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(-3)_X(-2)_X(-1) D ^VEXAMINE K ^V ; 5 S ^ABSN="40703",^ITEM="IV-703 what is the set A (global)?" S ^NEXT="6^V4ORD24,V4ORD25^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V D SETG2^V4ORDE S VCOMP="",X="" FOR I=1:1:12 S X=$O(^V(X),-1) S VCOMP=VCOMP_X_" " S ^VCOMP=VCOMP,^VCORR=X(-3) D ^VEXAMINE K ^V ; 6 S ^ABSN="40704",^ITEM="IV-704 the last returned value" S ^NEXT="V4ORD25^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V D SETG2^V4ORDE S VCOMP="",X="" FOR I=1:1 S X=$O(^V(X),-1) S VCOMP=VCOMP_X_" " Q:X="" S ^VCOMP=VCOMP,^VCORR=X(-4) D ^VEXAMINE K ^V ; END W !!,"End of 111 --- V4ORD24",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4ORD25 V4ORD25 ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"112---V4ORD25: $ORDER(glvn,expr) -5-" ; 1 S ^ABSN="40705",^ITEM="IV-705 expr is an integer number" S ^NEXT="2^V4ORD25,V4ORD26^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S V(1,2,3,4,6)=10 S V(1,2,3,4,1)=1 S ^VCOMP=$o(V(1,2,3,4,5),-1) S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40706",^ITEM="IV-706 expr is a number" S ^NEXT="3^V4ORD25,V4ORD26^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S ^V("ABC",123,"ABCD",123,"A")="" S ^VCOMP=$O(^V("ABC",123,"ABC"),0.001E+3) S ^VCORR="ABCD" D ^VEXAMINE K ^V ; 3 S ^ABSN="40707",^ITEM="IV-707 expr is a string" S ^NEXT="4^V4ORD25,V4ORD26^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S V("A","B",1,"R","E")=1 S ^VCOMP=$O(V("A","B",1,"x"),"-1") S ^VCORR="R" D ^VEXAMINE ; 4 S ^ABSN="40708",^ITEM="IV-708 expr is a naked reference" S ^NEXT="5^V4ORD25,V4ORD26^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S ^V(-234.344,2)=222,^V(-234.344,2,3)=1,^V(-234.344,"AAA")="a" S ^V(-234.344,3)="ERROR" S ^VCOMP=$O(^V(-234.344,23.44),^(2,3))_" "_^(3) S ^VCORR="AAA 1" D ^VEXAMINE K ^V ; 5 S ^ABSN="40709",^ITEM="IV-709 expr is a lvn" S ^NEXT="6^V4ORD25,V4ORD26^V4ORDER,V4QUERY^VV4" D ^V4PRESET K s A(1,2)=-1,V(-111,"a",-29.29)=11,V(-111,"a",-29.29,"A","b")=10 S ^VCOMP=$o(V(-111,"a",-1),A(1,2)) S ^VCORR="-29.29" D ^VEXAMINE ; 6 S ^ABSN="40710",^ITEM="IV-710 expr is a gvn" S ^NEXT="7^V4ORD25,V4ORD26^V4ORDER,V4QUERY^VV4" D ^V4PRESET K k ^V S ^V(1,"a","b")="a",^V("A",2)=1,^V(1,2)="ERROR" S ^VCOMP=$o(^V(1,""),^V("A",2))_" "_^(2) S ^VCORR="2 1" D ^VEXAMINE k ^V ; 7 S ^ABSN="40711",^ITEM="IV-711 expr is a svn" S ^NEXT="V4ORD26^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S V(1,0,1,0)=1,V(1,0,0,222)=2,V(1,0,0,111)=1 IF 1 S ^VCOMP=$O(V(1,0,0,1),$TEST) S ^VCORR="111" D ^VEXAMINE ; END W !!,"End of 112 --- V4ORD25",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4ORD26 V4ORD26 ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"113---V4ORD26: $ORDER(glvn,expr) -6-" ; W !,"expr contains a function" ; 1 S ^ABSN="40712",^ITEM="IV-712 expr contains $GET function" S ^NEXT="2^V4ORD26,V4ORD27^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S ^V("B",-111)=-1,^V("A",1,12)=12,^V("A",1,"HHH")="hhh" S ^V("B",1)="OK",^V("A",1)="ERROR2",^V("AA",1,1)="ERROR1",^V("A",1,1)="ERROR3" S ^VCOMP=$o(^V("A",1,""),$G(^V("AA",2),^V("B",-111)))_" "_^(1) S ^VCORR="HHH OK" D ^VEXAMINE K ^V ; 2 S ^ABSN="40713",^ITEM="IV-713 expr contains $ORDER function" S ^NEXT="3^V4ORD26,V4ORD27^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S ^V("B",-111)=-1,^V("A",1,12)=12,^V("A",1,"HHH")="hhh" S ^V("C",1)=111,^V("A",1,1)="ERROR0" S ^V("B",1)="OK",^V("A",1)="ERROR2",^V("AA",1,1)="ERROR1" S ^VCOMP=$o(^V("A",1,2),$O(^V("C",2),^V("B",-111)))_" "_^(1) S ^VCORR="12 OK" D ^VEXAMINE K ^V ; 3 S ^ABSN="40714",^ITEM="IV-714 expr contains $SELECT function" S ^NEXT="4^V4ORD26,V4ORD27^V4ORDER,V4QUERY^VV4" D ^V4PRESET K k ^V s ^V("99990.00")="",A=0 S ^VCOMP=$o(^V(""),$S(A=1:1,1:-1)) S ^VCORR="99990.00" D ^VEXAMINE k ^V ; 4 S ^ABSN="40715",^ITEM="IV-715 expr contains extrinsic special variable" S ^NEXT="5^V4ORD26,V4ORD27^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S ^VCOMP=$O(V(2,-1),$$ABC) S ^VCORR="2" D ^VEXAMINE ; 5 S ^ABSN="40716",^ITEM="IV-716 expr contains extrinsic function" S ^NEXT="6^V4ORD26,V4ORD27^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S ^V(2)=2,^V(1,1,"A")="a",^V(1,1,2)="AA" S ^VCOMP=$O(^V(1,1,2),$$A^V4ORDE(1,^V(2)))_" "_Z_" "_^(2) S ^VCORR="A 12 2" D ^VEXAMINE K ^V ; W !,"expr contains a operator" ; 6 S ^ABSN="40717",^ITEM="IV-717 expr contains a + operator" S ^NEXT="7^V4ORD26,V4ORD27^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S V(1,"A","Z")=1,V(2,"AAA")=2,V(1,-93943,12)=3 S ^VCOMP=$O(V(1,""),64784-64785) S ^VCORR="A" D ^VEXAMINE ; 7 S ^ABSN="40718",^ITEM="IV-718 expr contains a ? operator" S ^NEXT="V4ORD27^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S X="123ABCDEE3GH4G3343",V("A","B",9999)=12,V("A","B","123","zzz",123)=12 S ^VCOMP=$o(V("A","B",123,456),X?2.5N2.AN2N) S ^VCORR="zzz" D ^VEXAMINE ; END W !!,"End of 113 --- V4ORD26",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ABC() S V(2,2)=1 q 1 V4ORD27 V4ORD27 ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"114---V4ORD27: $ORDER(glvn,expr) -7-" ; W !,"expr has indirections" ; 1 S ^ABSN="40719",^ITEM="IV-719 ^V(@A)" S ^NEXT="2^V4ORD27,V4ORD28^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S A="B(1,2)",B(1,2)="A" S ^V("A")="-1" S ^VCOMP=$O(^V(1,2,3),^V(@A)) S ^VCORR="" D ^VEXAMINE K ^V ; 2 S ^ABSN="40720",^ITEM="IV-720 @VV" S ^NEXT="3^V4ORD27,V4ORD28^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S VV="V(1,23)",V(1,23)="-1" S ^VCOMP=$o(V(1,"\"),@VV) S ^VCORR="23" D ^VEXAMINE ; 3 S ^ABSN="40721",^ITEM="IV-721 @^V@(12,456)" S ^NEXT="4^V4ORD27,V4ORD28^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S A=1,^V="A(A,0)",A(1,0,12,456)=1 S ^V(1,"Z9")=1 S ^VCOMP=$o(^V(A,""),@^V@(12,456)) S ^VCORR="Z9" D ^VEXAMINE K ^V ; 4 S ^ABSN="40722",^ITEM="IV-722 @@^V(0)@(12,456)" S ^NEXT="V4ORD28^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S A="a",X="X" S ^V(0)="^V(X,2,3)",^V(X,2,3,12,456)="A(2,3)",A(2,3)=-1 S V("Y")="y",^V(1)="V1",^V(X,2,3,12,1)="V2" S ^VCOMP=$O(V(A),@@^V(0)@(12,456))_" "_^(1) S ^VCORR="Y V2" D ^VEXAMINE K ^V ; END W !!,"End of 114 --- V4ORD27",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4ORD28 V4ORD28 ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"115---V4ORD28: $ORDER(glvn,expr) -8-" ; 1 S ^ABSN="40723",^ITEM="IV-723 glvn contains an integer number" S ^NEXT="2^V4ORD28,V4ORD29^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S A(2)=1,A("XXXXXXXXXX",3456789)=1 S ^VCOMP=$order(A(99999999),A(2)) S ^VCORR="XXXXXXXXXX" D ^VEXAMINE ; 2 S ^ABSN="40724",^ITEM="IV-724 glvn contains a number" S ^NEXT="3^V4ORD28,V4ORD29^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S ^V(-1E-25)="",V(1E-25)=-1 S ^VCOMP=$O(^V(1E25),V(1E-25)) S ^VCORR="-.0000000000000000000000001" D ^VEXAMINE K ^V ; 3 S ^ABSN="40725",^ITEM="IV-725 glvn contains a string" S ^NEXT="4^V4ORD28,V4ORD29^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S V(0,"abcdefghijklmnopqrstuvwxyz","a","b")=1 S V(0,"abcdefghijklmnopqrstuvwxyz","B","b")=1 S V(0,"ABCDEFGHIJKLMNOPQRSTUVWXYZ",12)=2 S ^VCOMP=$O(V(0,"ABCDEFGHIJKLMNOPQRSTUVWXYZ"),1) S ^VCORR="abcdefghijklmnopqrstuvwxyz" D ^VEXAMINE ; 4 S ^ABSN="40726",^ITEM="IV-726 glvn contains a naked reference" S ^NEXT="5^V4ORD28,V4ORD29^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S ^V("A",2,1)=21,^V("A",2,"ZZZZZZ")="zzz" S ^V("A","B")="AB" S ^VCOMP=$o(^(2,3),1)_" "_^(1) S ^VCORR="ZZZZZZ 21" D ^VEXAMINE K ^V ; 5 S ^ABSN="40727",^ITEM="IV-727 glvn is a lvn" S ^NEXT="6^V4ORD28,V4ORD29^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S A=-1 s B="b",C="c",D="d",E("e")=A,A(B,C,D,-12345.678)=12 S A(B,C,D)="X" S A(B,C,D,12345.678)=1234 S ^VCOMP=$o(A(B,C,D,A),E("e")) S ^VCORR="-12345.678" D ^VEXAMINE ; 6 S ^ABSN="40728",^ITEM="IV-728 glvn is a gvn" S ^NEXT="7^V4ORD28,V4ORD29^V4ORDER,V4QUERY^VV4" D ^V4PRESET K K ^V S ^V(1,2,3,"4.0",0,-55.56,600,-7,8.9,"CCC")="" S ^V(1,2,3,"4.0",0,-55.56,600,-7,8.9,"BBB")="" S ^V(1,2,3,"4.0",0,-55.56,600,-7,8.9,"AAA")="" S ^VCOMP=$o(^V(1,2,3,"4.0",0,-55.56,600,-7,8.9,"a"),-1) S ^VCORR="CCC" D ^VEXAMINE K ^V ; 7 S ^ABSN="40729",^ITEM="IV-729 glvn contains a svn" S ^NEXT="V4ORD29^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S A=1,A("ABCDEFGHJOKL","XYZ")=1 IF A S ^VCOMP=$O(A("ABCDEFGHJOKL",$TEST),A) S ^VCORR="XYZ" D ^VEXAMINE ; END W !!,"End of 115 --- V4ORD28",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4ORD29 V4ORD29 ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"116---V4ORD29: $ORDER(glvn,expr) -9-" ; W !,"glvn contains a function" ; 1 S ^ABSN="40730",^ITEM="IV-730 glvn contains $GET function" S ^NEXT="2^V4ORD29,V4ORD2A^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S ABC(1)="A",B=23,A("A","B")="",A("A",-0,45.67)="" S ^VCOMP=$O(A($GET(ABC(1)),$g(A,B)),-1) S ^VCORR="0" D ^VEXAMINE ; 2 S ^ABSN="40731",^ITEM="IV-731 glvn contains $ORDER function" S ^NEXT="3^V4ORD29,V4ORD2A^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S A(0,1)="",A("B(45,-2)",-1)="",B(45,"ok")="",B="b",B(1)="1" S ^VCOMP=$O(@$o(A(0),1),$O(A(0,0))) S ^VCORR="ok" D ^VEXAMINE ; 3 S ^ABSN="40732",^ITEM="IV-732 glvn contains $SELECT function" S ^NEXT="4^V4ORD29,V4ORD2A^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S A="a",C="A(1,""FG"",1)",A(1,"FG",-23)="",A(1,"FG","-456.0010")=1 S ^VCOMP=$O(@$S(A="A":B,1:C),1.0000) S ^VCORR="-456.0010" D ^VEXAMINE ; 4 S ^ABSN="40733",^ITEM="IV-733 glvn contains extrinsic special variable" S ^NEXT="5^V4ORD29,V4ORD2A^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S A(2)="A(100)",A(100)=1,X="12000" S ^VCOMP=$o(@$$XXXX,@A(2)) S ^VCORR="ABCDEFG" D ^VEXAMINE ; 5 S ^ABSN="40734",^ITEM="IV-734 glvn contains extrinsic function" S ^NEXT="V4ORD2A^V4ORDER,V4QUERY^VV4" D ^V4PRESET K S ^VCOMP=$o(V(1,$$YY(1,2,2),$$YY(1,2,"a")),-1) S ^VCORR="2" D ^VEXAMINE ; END W !!,"End of 116 --- V4ORD29",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q XXXX() ; N X S V("J",90,12)=12,V("J",90,"ABCDEFG",12345)=12 S X="V(""J"",90,X)" Q X YY(X,Y,Z) ; S V(X,Y,Z)="" Q Z V4ORD2A V4ORD2A ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"117---V4ORD2A: $ORDER(glvn,expr) -10-" ; W !,"glvn contains a operator" ; 1 S ^ABSN="40735",^ITEM="IV-735 glvn contains a + operator" S ^NEXT="2^V4ORD2A,V4QUERY^VV4" D ^V4PRESET K S A("A",1)=1,A("A",101)=1,A("A",201)=1 S ^VCOMP=$o(A("A",100+34),-1) S ^VCORR="101" D ^VEXAMINE ; 2 S ^ABSN="40736",^ITEM="IV-736 glvn contains a ? operator" S ^NEXT="3^V4ORD2A,V4QUERY^VV4" D ^V4PRESET K S A="JKFDJKDF9848MF832MNF83=" S V("****")=1,V(0)=1,V(0.5)=1 S ^VCOMP=$O(V(A?2.A3.99ANA1P),1) S ^VCORR="****" D ^VEXAMINE ; W !,"glvn has indirections" ; 3 S ^ABSN="40737",^ITEM="IV-737 ^V(@A)" S ^NEXT="4^V4ORD2A,V4QUERY^VV4" D ^V4PRESET K K ^V S A="^V(.001,2,3)",^V(0.001,2,3)="QQQ",^V(0.047)=1 S ^VCOMP=$o(^V(@A),A-1) S ^VCORR=".047" D ^VEXAMINE K ^V ; 4 S ^ABSN="40738",^ITEM="IV-738 @VV" S ^NEXT="5^V4ORD2A,V4QUERY^VV4" D ^V4PRESET K S VV="A(12,3)",A(12,0)=1,A(12,"A")=1 S ^VCOMP=$O(@VV,1) S ^VCORR="A" D ^VEXAMINE ; 5 S ^ABSN="40739",^ITEM="IV-739 @^V@(12,456)" S ^NEXT="6^V4ORD2A,V4QUERY^VV4" D ^V4PRESET K K ^V S ^V="^V(""##"")",^V("##",12,"]=_","\\\")="",A=1,^V("##",12,1)="ok" S ^VCOMP=$o(@^V@(12,456),A)_" "_^(1) S ^VCORR="]=_ ok" D ^VEXAMINE K ^V ; 6 S ^ABSN="40740",^ITEM="IV-740 @@^V(0)@(12,456)" S ^NEXT="V4QUERY^VV4" D ^V4PRESET K K ^V S ^V(0)="V(1)",V(1,12,456)="^V(2,3)",^V(2,1)=21 S ^VCOMP=$O(@@^V(0)@(12,456),$O(V("")))_" "_^(1) S ^VCORR=" 21" D ^VEXAMINE K ^V ; END W !!,"End of 117 --- V4ORD2A",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4ORDE V4ORDE ;IW-KO-TS-YS,V4ORDER,MVTS V9.10;15/6/96;$ORDER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; SETX K X S X(1)="-999999999 -10 -1.2 -1.11 -1.1 " S X(2)="-.5 0 .5 1.1 20 999999999 # % +4 - --1 -. -.0 -0 -4. " S X(3)="-4.0 . .0 .00 0.0 0.1 00 01 1. 1.0 1.1.2 123E1 A AA AB " S X(4)="0123456789 !""#$%&'()*+,-./" F I=58:1:126 S X(4)=X(4)_$C(I) S X(-1)="-1.1 -1.11 -1.2 -10 -999999999 " S X(-2)="-4. -0 -.0 -. --1 - +4 % # 999999999 20 1.1 .5 0 -.5 " S X(-3)="AB AA A 123E1 1.1.2 1.0 1. 01 00 0.1 0.0 .00 .0 . -4.0 " Q SETL K V S V("-999999999")="",V("-10")="",V("-1.2")="",V("-1.11")="",V("-1.1")="" S V("-.5")="",V("0")="",V(0.5)="",V("1.1")="",V("999999999")="" S V("#")="",V("%")="",V("+4")="",V("-4.")="",V("-4.0")="",V(".0")="" S V(".00")="",V("0.0")="",V("0.1")="",V("1.")="",V("1.0")="",V("A")="" S V("AA")="",V("AB")="" S V("00")="",V("01")="",V("20")="",V("123E1")="",V("--1")="",V("-0")="" S V("1.1.2")="",V("-")="",V("-.")="",V("-.0")="",V(".")="" Q SETL2 K V,X S V(1.5)="",V(2000)="",V(99999)="",V("AB")="",V("ABCD")="",V("ab")="" S V(-99999)="",V(-10000)="",V(-1.5)="",V(-0.5)="",V(0)="",V(-1)="" S X(1)="-99999 -10000 -1.5 -1 " S X(2)="-.5 0 1.5 2000 99999 AB ABCD ab -1 " S X(3)="-99999 -10000 -1.5 -1 -.5 0 1.5 2000 99999 AB ABCD ab " S X(4)="-99999 -10000 -1.5 -1 -.5 0 1.5 2000 99999 AB ABCD ab " S X(-1)="-1 -1.5 -10000 -99999 " S X(-2)="-1 ab ABCD AB 99999 2000 1.5 0 -.5 " S X(-3)="ab ABCD AB 99999 2000 1.5 0 -.5 -1 -1.5 -10000 -99999 " S X(-4)="ab ABCD AB 99999 2000 1.5 0 -.5 -1 -1.5 -10000 -99999 " Q SETG K ^V S ^V("-999999999")="",^V("-10")="",^V("-1.2")="",^V("-1.11")="" S ^V("-1.1")="",^V("-.5")="",^V("0")="",^V(0.5)="",^V("1.1")="" S ^V("999999999")="",^V("#")="",^V("%")="",^V("+4")="",^V("-4.")="" S ^V("-4.0")="",^V(".0")="",^V(".00")="",^V("0.0")="",^V("0.1")="" S ^V("1.")="",^V("1.0")="",^V("A")="",^V("AA")="",^V("AB")="" S ^V("00")="",^V("01")="",^V("20")="",^V("123E1")="",^V("--1")="" S ^V("-0")="" S ^V("1.1.2")="",^V("-")="",^V("-.")="",^V("-.0")="",^V(".")="" Q SETG2 K ^V,X S ^V(1.5)="",^V(2000)="",^V(99999)="",^V("AB")="",^V("ABCD")="" S ^V("ab")="",^V(-99999)="",^V(-10000)="",^V(-1.5)="",^V(-0.5)="" S ^V(0)="",^V(-1)="" S X(1)="-99999 -10000 -1.5 -1 " S X(2)="-.5 0 1.5 2000 99999 AB ABCD ab -1 " S X(3)="-99999 -10000 -1.5 -1 -.5 0 1.5 2000 99999 AB ABCD ab " S X(4)="-99999 -10000 -1.5 -1 -.5 0 1.5 2000 99999 AB ABCD ab " S X(-1)="-1 -1.5 -10000 -99999 " S X(-2)="-1 ab ABCD AB 99999 2000 1.5 0 -.5 " S X(-3)="ab ABCD AB 99999 2000 1.5 0 -.5 -1 -1.5 -10000 -99999 " S X(-4)="ab ABCD AB 99999 2000 1.5 0 -.5 -1 -1.5 -10000 -99999 " Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q A(X,Y) ; S Z=X_Y Q 1 V4QUERY V4QUERY ;IW-KO-TS-YS,VV4,MVTS V9.10;15/6/96;$QUERY ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"118---V4QUERY: Tests of $QUERY function" ; w !,"lvn" 1 S ^ABSN="40741",^ITEM="IV-741 The last subscript is an empty string" S ^NEXT="2^V4QUERY,V4PRIN^VV4" D ^V4PRESET K k s A("a","b")="",A("b","c")="" S ^VCOMP=$q(A(""))_$q(A("a"))_$q(A("b"))_$q(A("a","b",""))_$q(A("b","d","")) S ^VCORR="A(""a"",""b"")A(""a"",""b"")A(""b"",""c"")A(""b"",""c"")" D ^VEXAMINE ; w !,"gvn" 2 S ^ABSN="40742",^ITEM="IV-742 The last subscript is an empty string" S ^NEXT="V4PRIN^VV4" D ^V4PRESET K K ^VV s ^VV("a","b")="",^VV("a","b","c")="" S ^VCOMP=$Q(^VV(""))_$Q(^VV("a",""))_$Q(^VV("a","c",""))_$Q(^VV("a","b","")) S ^VCORR="^VV(""a"",""b"")^VV(""a"",""b"")^VV(""a"",""b"",""c"")" D ^VEXAMINE K ^VV ; END W !!,"End of 118 --- V4QUERY",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PRIN V4PRIN ;IW-KO-TS-YS,VV4,MVTS V9.10;15/6/96;$PRINCIAPL ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"119---V4PRIN: $PRINCIPAL special variable name" ; 1 S ^ABSN="40743",^ITEM="IV-743 $PRINCIPAL value format" S ^NEXT="2^V4PRIN,V4QUIT^VV4" D ^V4PRESET K S ^VCOMP=($PRINCIPAL?1.E)_($principal?.E1.C.E) S ^VCORR="10" D ^VEXAMINE ; 2 S ^ABSN="40744",^ITEM="IV-744 $P value format" S ^NEXT="3^V4PRIN,V4QUIT^VV4" D ^V4PRESET K S ^VCOMP=($PRINCIPAL=$P)_($PRINCIPAL=$p) S ^VCORR="11" D ^VEXAMINE ; 3 S ^ABSN="40745",^ITEM="IV-745 change current device" S ^NEXT="4^V4PRIN,V4QUIT^VV4" D ^V4PRESET K S CURRENT=$IO,^VCOMP="SKIP" I $D(^VENVIRON("#1 OPEN"))=0 G SKIP I $D(^VENVIRON("#1 USE"))=0 G SKIP I $D(^VENVIRON("#1 CLOSE"))=0 G SKIP I CURRENT'=^VENVIRON("#1 USE") D G CONT . O ^VENVIRON("#1 OPEN") . U ^VENVIRON("#1 USE") . S PRIN=$P . C ^VENVIRON("#1 CLOSE") ; I $D(^VENVIRON("#2 OPEN"))=0 G SKIP I $D(^VENVIRON("#2 USE"))=0 G SKIP I $D(^VENVIRON("#2 CLOSE"))=0 G SKIP I CURRENT'=^VENVIRON("#2 USE") D G CONT . O ^VENVIRON("#2 OPEN") . U ^VENVIRON("#2 USE") . S PRIN=$P . C ^VENVIRON("#2 CLOSE") CONT S ^VCOMP=(PRIN=CURRENT) SKIP U CURRENT S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40746",^ITEM="IV-746 the value of $PRINCIPAL is equal to the initial value of $IO" S ^NEXT="V4QUIT^VV4" D ^V4PRESET K K ^V JOB PRIN::1 IF $T F I=1:1:60 Q:$D(^V)#10=1 H 1 I $D(^V)#10=0 S ^V="ERROR"_$C(22)_"error" S ^VCOMP=($P(^V,$C(22),1)=$P(^V,$C(22),2))_" "_($P(^V,$C(22),1)=$P) S ^VCORR="1 0" D ^VEXAMINE K ^V ; END W !!,"End of 119 --- V4PRIN",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; PRIN ; S ^V=$PRINCIPAL_$C(22)_$IO Q V4QUIT V4QUIT ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"120---V4QUIT: QUIT @expratom" ; 1 S ^ABSN="40747",^ITEM="IV-747 return to an exvar" S ^NEXT="2^V4QUIT,V4MAX^VV4" D ^V4PRESET K S AB(1)="V(""B"",4,5)",V("B",4,5)="OK" S ^VCOMP=$$ABCD S ^VCORR="OK" D ^VEXAMINE ; 2 S ^ABSN="40748",^ITEM="IV-748 return to an exfunc" S ^NEXT="3^V4QUIT,V4MAX^VV4" D ^V4PRESET K K ^V S V="^V" S ^V(1,2,3)="xyz" S ^VCOMP=$$XXF(1,2) S ^VCORR="xyz" D ^VEXAMINE K ^V ; 3 S ^ABSN="40749",^ITEM="IV-749 expratom has a lvn" S ^NEXT="4^V4QUIT,V4MAX^VV4" D ^V4PRESET K S A(1,2)="B(1,2)",B(1,2)="XXXX" S ^VCOMP=$$A1^V4QUITE S ^VCORR="XXXX" D ^VEXAMINE ; 4 S ^ABSN="40750",^ITEM="IV-750 expratom has a gvn" S ^NEXT="5^V4QUIT,V4MAX^VV4" D ^V4PRESET K K ^V S ^V(3,4,5)="V345",^V(3,4)="V34",^V(3)="V3",^V="V" S ^VCOMP=$$F2("^V(3,4,5)",2) S ^VCORR="V34" D ^VEXAMINE K ^V ; 5 S ^ABSN="40751",^ITEM="IV-751 expratom contains a naked reference" S ^NEXT="6^V4QUIT,V4MAX^VV4" D ^V4PRESET K S ^V(1,2,1)=121,^V(1,1)=11,^V(1,2,3)=2 S ^V(1,2)=12 S ^VCOMP=$$F3(^(2,3)) S ^VCORR="12" D ^VEXAMINE ; 6 S ^ABSN="40752",^ITEM="IV-752 nasting indirection" S ^NEXT="V4MAX^VV4" D ^V4PRESET K S A=2 S ^VCOMP=$$F4^V4QUITE("V",.A,3) S ^VCORR="AA" D ^VEXAMINE ; END W !!,"End of 120 --- V4QUIT",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ABCD() Q @AB(1) XXF(X,Y) ; S Z=X+Y Q @V@(X,Y,Z) F2(X,Y) ; Q @$NA(@X,Y) F3(X) Q @$NA(^(1),X) V4QUITE V4QUITE ;IW-KO-YS-TS,V4QUIT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; F4(X,Y,Z) ; NEW W,V S W="V(2,3)",V(2,3)="V(""A"")",V("A")="AA" Q @@X@(Y,Z) A1() S B=2 Q @A(1,B) SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4MAX V4MAX ;IW-KO-TS,VV4,MVTS V9.10;15/6/96;HANG COMMAND SUB DRIVER ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1978-1996 V4MAX1 W !!,"121---V4MAX1" D ^V4MAX1 V4MAX2 W !!,"122---V4MAX2" D ^V4MAX2 END Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4MAX1 V4MAX1 ;IW-YS-TS-KO,V4MAX,MVTS V9.10;15/6/96;MAXIMUM RANGE -1- ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1978-1996 ; W !!,"121---V4MAX1: Maximum range -1-",! ; 1 W !,"IV-753 Numeric range ( 10**-25 to 10**25 )" S ^ABSN="40753",^ITEM="IV-753 Numeric range ( 10**-25 to 10**25 )" S ^NEXT="2^V4MAX1,V4MAX2^V4MAX,V4SSUB^VV4" D ^V4PRESET S ^VCOMP="" S A=-1E25,B=1E-25,C=999999999999999E-25,D=.999999999999999E25 S A1="-1E25",B1="1E-25",C1="999999999999999E-25",D1=".999999999999999E25" S ^VCOMP=A_" "_-B_" "_C_" "_D_" "_(A-A1)_(B-B1)_(C1-C)_(D-D1) S ^VCORR="-10000000000000000000000000 -.0000000000000000000000001 .0000000000999999999999999 9999999999999990000000000 0000" D ^VEXAMINE ; 2 W !,"IV-754 Significant digit up to 15 digits" S ^ABSN="40754",^ITEM="IV-754 Local data" S ^NEXT="3^V4MAX1,V4MAX2^V4MAX,V4SSUB^VV4" D ^V4PRESET S ^VCOMP="" S A=-.999999999999999E25,A1="-.999999999999999E25",B=-999999999999999E-25,C=999999999999999E-25,D=+".999999999999999E25" S ^VCOMP=A_" "_B_" "_C_" "_D_" "_+A1_" "_(A1+.899999999999998E25) S ^VCORR="-9999999999999990000000000 -.0000000000999999999999999 .0000000000999999999999999 9999999999999990000000000 -9999999999999990000000000 -1000000000000010000000000" D ^VEXAMINE ; 3 S ^ABSN="40755",^ITEM="IV-755 Global data" S ^NEXT="V4MAX2^V4MAX,V4SSUB^VV4" D ^V4PRESET S ^VCOMP="" S ^V1=-.999999999999999E25,^V1(1)=-999999999999999E-25,^V1(2)=999999999999999E-25,^V1(3)=+".999999999999999E25",^V1(4)="-.999999999999999E25" S ^VCOMP=^V1_" "_^V1(1)_" "_^V1(2)_" "_^V1(3)_" "_+^V1(4) S ^VCORR="-9999999999999990000000000 -.0000000000999999999999999 .0000000000999999999999999 9999999999999990000000000 -9999999999999990000000000" D ^VEXAMINE k ^V1 ; END W !!,"End of 121 --- V4MAX1",! K K ^V1 Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4MAX2 V4MAX2 ;IW-YS-TS,V4MAX,MVTS V9.10;15/6/96;MAXIMUM RANGE -2- ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1978-1996 W !!,"122---V4MAX2: Maximum range -2-",! ; 1 W !,"IV-756 15 digits subscript of local variable" S ^ABSN="40756",^ITEM="IV-756 15 digits subscript of local variable" S ^NEXT="2^V4MAX2,V4SSUB^VV4" D ^V4PRESET S ^VCOMP="" S A(999999999999999)=999999999999999,A(123450789123456,0987654321123456)=123450789123456 S ^VCOMP=A(999999999999999)_" "_A(123450789123456,987654321123456) S ^VCORR="999999999999999 123450789123456" D ^VEXAMINE ; 2 W !,"IV-757 15 digits subscript of global variable" S ^ABSN="40757",^ITEM="IV-757 15 digits subscript of global variable" S ^NEXT="3^V4MAX2,V4SSUB^VV4" D ^V4PRESET S ^VCOMP="" S ^V1(999999999999999)=999999999999999,^V1(123450789123456,0987654320123456)=123450789123456 S ^VCOMP=^V1(999999999999999)_" "_^V1(123450789123456,987654320123456) S ^VCORR="999999999999999 123450789123456" D ^VEXAMINE K ^V1 ; 3 W !,"IV-758 50 levels subscript of local variable" S ^ABSN="40758",^ITEM="IV-758 50 levels subscript of local variable" S ^NEXT="4^V4MAX2,V4SSUB^VV4" D ^V4PRESET k S V(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,474,8,49,50)="1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950" S ^VCOMP=V(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,474,8,49,50) S ^VCORR="1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950" D ^VEXAMINE ; 4 W !,"IV-759 50 levels subscript of global variable" S ^ABSN="40759",^ITEM="IV-759 50 levels subscript of global variable" S ^NEXT="V4SSUB^VV4" D ^V4PRESET k K ^V1 S ^V1(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,474,8,49,50)="1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950" S ^VCOMP=^V1(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,474,8,49,50) S ^VCORR="1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950" D ^VEXAMINE k ^V1 ; END W !!,"End of 122 --- V4MAX2",! K K ^V1 Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SSUB V4SSUB ;IW-KO-TS-YS,VV4,MVTS V9.10;15/6/96;HANG COMMAND SUB DRIVER ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 V4SSUB1 W !!,"123---V4SSUB1" D ^V4SSUB1 V4SSUB2 W !!,"124---V4SSUB2" D ^V4SSUB2 END Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SSUB1 V4SSUB1 ;IW-KO-TS-YS,VV4,MVTS V9.10;15/6/96;STRING SUBSCRIPT -1- ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 W !!,"123---V4SSUB1: String subscript -1-",! ; 1 W !,"IV-760 Length of one subscript of a local variable is 237" ;(title corrected in V7.4;16/9/89) S ^ABSN="40760",^ITEM="IV-760 Length of one subscript of a local variable is 237" S ^NEXT="2^V4SSUB1,V4SSUB2^V4SSUB,V4JOB^VV4" D ^V4PRESET S VCOMP="" S MAX="#" F I=0:2:252 S MAX=MAX_"QW" ; total=N+I+(2*L)+15 ; N=$l("A"),L=1,total=255 ; ? I=255-1-2-15 S D="" F I=1:1:237 S D=D_"#" S A(D)=1 S VCOMP=A(D) S A(D)=MAX S VCOMP=VCOMP_(A(D)=MAX) K ABC S ^VCOMP=VCOMP,^VCORR="11" D ^VEXAMINE ; 2 W !,"IV-761 Total length of a local variable is 255" ;(title corrected in V7.4;16/9/89) S ^ABSN="40761",^ITEM="IV-761 Total length of a local variable is 255" S ^NEXT="3^V4SSUB1,V4SSUB2^V4SSUB,V4JOB^VV4" D ^V4PRESET K S VCOMP="" S MAX="" F I=1:1:255 S MAX=MAX_"W" S D="ABCDEFGHIJKLMNO",D16="ABCDEFGHIJKLMNOP" S V(D,D,D,D,D,D,D,D,D,D,D,D,D,D16)=2 S VCOMP=V(D,D,D,D,D,D,D,D,D,D,D,D,D,D16) S V(D,D,D,D,D,D,D,D,D,D,D,D,D,D16)=MAX S VCOMP=VCOMP_(V(D,D,D,D,D,D,D,D,D,D,D,D,D,D16)=MAX) S ^VCOMP=VCOMP,^VCORR="21" D ^VEXAMINE ; 3 W !,"IV-762 Length of one subscript of a global variable is 234" ;(title corrected in V7.4;16/9/89) S ^ABSN="40762",^ITEM="IV-762 Length of one subscript of a global variable is 234" S ^NEXT="4^V4SSUB1,V4SSUB2^V4SSUB,V4JOB^VV4" D ^V4PRESET S VCOMP="" S MAX="#" F I=0:2:252 S MAX=MAX_"QW" ; total=E+3+N+I+(2*L)+15 ; N=$l("V"),L=1,total=255,E=$L("") ; ? I=255-0-3-1-2-15 S D="" F I=1:1:234 S D=D_"#" S ^V(D)=3 S VCOMP=^V(D) S ^V(D)=MAX S VCOMP=VCOMP_(^V(D)=MAX) S ^VCOMP=VCOMP,^VCORR="31" D ^VEXAMINE K ^V ; 4 W !,"IV-763 Total length of a global variable is 255" ;(title corrected in V7.4;16/9/89) S ^ABSN="40763",^ITEM="IV-763 Total length of a global variable is 255" S ^NEXT="V4SSUB2^V4SSUB,V4JOB^VV4" D ^V4PRESET S VCOMP="" S MAX="" F I=1:1:255 S MAX=MAX_"1" S D="ABCDEFGHIJKLMNO",D13="ABCDEFGHIJKLM" S ^V(D,D,D,D,D,D,D,D,D,D,D,D,D,D13)=4 S VCOMP=^V(D,D,D,D,D,D,D,D,D,D,D,D,D,D13) S ^V(D,D,D,D,D,D,D,D,D,D,D,D,D,D13)=MAX S VCOMP=VCOMP_(^V(D,D,D,D,D,D,D,D,D,D,D,D,D,D13)=MAX) S ^VCOMP=VCOMP,^VCORR="41" D ^VEXAMINE K ^V ; END W !!,"End of 123 --- V4SSUB1",! K K ^V Q Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4SSUB2 V4SSUB2 ;IW-KO-TS,VV4,MVTS V9.10;15/6/96;STRING SUBSCRIPT -2- ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 W !!,"124---V4SSUB2: String subscript -2-",! ; 1 W !,"IV-764 Naked reference when the total length of global variable is 255 characters" ;(title corrected in V7.4;16/9/89) S ^ABSN="40764",^ITEM="IV-764 Naked reference when the total length of global variable is 255 characters" S ^NEXT="2^V4SSUB2,V4JOB^VV4" D ^V4PRESET S MAX="" F I=1:1:255 S MAX=MAX_"*" S D="ABCDEFGHIJKLMNO",D13="ABCDEFGHIJKLM" S ^V(D,D,D,D,D,D,D,D,D,D,D,D,D,D13)=MAX S ^("ABCDEFGHIJKL1")=5,VCOMP=^("ABCDEFGHIJKL1"),^("ABCDEFGHIJKL2")=MAX S VCOMP=VCOMP_^V(D,D,D,D,D,D,D,D,D,D,D,D,D,"ABCDEFGHIJKL1") S VCOMP=VCOMP_(^(D13)=^("ABCDEFGHIJKL2")) S VCOMP=VCOMP_(^V(D,D,D,D,D,D,D,D,D,D,D,D,D,D13)=^("ABCDEFGHIJKL2")) S ^VCOMP=VCOMP,^VCORR="5511" D ^VEXAMINE K ^V ; 2 W !,"IV-765 Minimum (-.999999999999999E25) to maximum (.999999999999999E25) number of one subscript of local variable" ;(title corrected in V7.4;16/9/89) S ^ABSN="40765",^ITEM="IV-765 Minimum (-.999999999999999E25) to maximum (.999999999999999E25) number of one subscript of local variable" S ^NEXT="3^V4SSUB2,V4JOB^VV4" D ^V4PRESET S VCOMP="" S A(-.999999999999999E25)=6,A(-999999999999999E-25)=7,A(999999999999999E-25)=8,A(.999999999999999E25)=9 SET VCOMP=A(-.999999999999999E+25)_A(-999999999999999E-25)_A(999999999999999E-25)_A(.999999999999999E+25) S ^VCOMP=VCOMP,^VCORR="6789" D ^VEXAMINE ; 3 W !,"IV-766 Minimum (-.999999999999999E25) to maximum (.999999999999999E25) number of one subscript of global variable" ;(title corrected in V7.4;16/9/89) S ^ABSN="40766",^ITEM="IV-766 Minimum (-.999999999999999E25) to maximum (.999999999999999E25) number of one subscript of global variable" S ^NEXT="4^V4SSUB2,V4JOB^VV4" D ^V4PRESET S VCOMP="" S ^VV(-.999999999999999E25)=10,^VV(-999999999999999E-25)=11,^VV(999999999999999E-25)=12,^VV(.999999999999999E25)=13 S VCOMP=^VV(-.999999999999999E+25)_^VV(-999999999999999E-25)_^VV(999999999999999E-25)_^VV(.999999999999999E+25) S ^VCOMP=VCOMP,^VCORR="10111213" D ^VEXAMINE K ^VV ; 4 W !,"IV-767 Total number of local variable subscripts is 79" ;(title corrected in V7.4;16/9/89) S ^ABSN="40767",^ITEM="IV-767 Total number of local variable subscripts is 79" S ^NEXT="5^V4SSUB2,V4JOB^VV4" D ^V4PRESET S M="#" F I=0:2:252 S M=M_"QW" s A(1,2,3,4,5,6,7,8,9,0,"K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,"END")=14 S V=A(1,2,3,4,5,6,7,8,9,0,"K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,"END") s A(1,2,3,4,5,6,7,8,9,0,"K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,"END")=M S X=A(1,2,3,4,5,6,7,8,9,0,"K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,"END")=M S V=V_X S ^VCOMP=V,^VCORR="141" D ^VEXAMINE ; 5 W !,"IV-768 Total number of global variable subscripts is 78" ;(title corrected in V7.4;16/9/89) S ^ABSN="40768",^ITEM="IV-768 Total number of global variable subscripts is 78" S ^NEXT="V4JOB^VV4" D ^V4PRESET K K ^V S M="#" F I=0:2:252 S M=M_"QW" s ^V(1,2,3,4,5,6,7,8,9,0,"L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,"END")=15 S ^("end")=16 S V=^V(1,2,3,4,5,6,7,8,9,0,"L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,"END") S V=V_^("end") s ^V(1,2,3,4,5,6,7,8,9,0,"L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,"END")=M S ^("end")=M S X=^V(1,2,3,4,5,6,7,8,9,0,"L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,"END")=M S V=V_X S V=V_(^("end")=M) S ^VCOMP=V,^VCORR="151611" D ^VEXAMINE K ^V ; END W !!,"End of 124 --- V4SSUB2",! K K ^VV,^V Q Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4JOB V4JOB ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1990-1996 ; W !!,"125---V4JOB: JOB command with parameter",! ; 1 S ^ABSN="40769",^ITEM="IV-769 JOB ^routinename with parameter" S ^NEXT="2^V4JOB,V4PAT^VV4" D ^V4PRESET K L K ^V4JOB S V4JOB=1,^VCOMP="" JOB ^V4JOBEXA("A","B") F I=1:1:100 Q:$D(^V4JOB)=1 H 1 I $D(^V4JOB)=0 S ^V4JOB="JOB ERROR" ; L ^ABCDEF:100 E S ^VCOMP=^VCOMP_"/LOCK ERROR" I S ^VCOMP=^VCOMP_"LOCK OK" ; S ^VCOMP=^VCOMP_"/"_V4JOB_"/"_($P(^V4JOB," ",1)=$J)_$P(^V4JOB," ",2) S ^VCORR="LOCK OK/1/0AB" D ^VEXAMINE ; 2 S ^ABSN="40770",^ITEM="IV-770 J label^routinename with parameter" S ^NEXT="3^V4JOB,V4PAT^VV4" D ^V4PRESET K L K ^V4JOB S V4JOB=2,^VCOMP="" J B^V4JOBEXA("C") F I=1:1:100 Q:$D(^V4JOB)=1 H 1 I $D(^V4JOB)=0 S ^V4JOB="JOB ERROR" ; L ^ABCDEF:100 E S ^VCOMP=^VCOMP_"/LOCK ERROR" I S ^VCOMP=^VCOMP_"LOCK OK" ; S ^VCOMP=^VCOMP_"/"_V4JOB_"/"_^V4JOB S ^VCORR="LOCK OK/2/OK C" D ^VEXAMINE ; 3 S ^ABSN="40771",^ITEM="IV-771 JOB label with parameter" S ^NEXT="V4PAT^VV4" D ^V4PRESET K L K ^V4JOB S V4JOB=3,^VCOMP="" JOB B("D","E",100) F I=1:1:100 Q:$D(^V4JOB)=1 H 1 I $D(^V4JOB)=0 S ^V4JOB="JOB ERROR" ; L ^ABCDEF:100 E S ^VCOMP=^VCOMP_"/LOCK ERROR" I S ^VCOMP=^VCOMP_"LOCK OK" ; S ^VCOMP=^VCOMP_"/"_V4JOB_"/"_(^V4JOB) S ^VCORR="LOCK OK/3/OK DE100" D ^VEXAMINE ; END W !!,"End of 125 --- V4JOB",! K Q ; B(A,B,C) S V4JOB="LVN ERROR" L ^ABCDEF S ^V4JOB="OK "_A_B_C H ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4JOBEXA V4JOBEXA(X,Y) ;IW-KO-YS-TS,V4JOB,MVTS V9.10;15/6/96; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1990-1996 ; A ; L ^ABCDEF S V4JOB="LVN ERROR" S ^V4JOB=$J_" "_X_Y H ; B(H) ; L ^ABCDEF S V4JOB="LVN ERROR" S ^V4JOB="OK "_H H ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PAT V4PAT ;IW-KO-YS-TS,V4PAT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !,"pattern match operator " ; V4PAT1 W !!,"126---V4PAT1" D ^V4PAT1 V4PAT2 W !!,"127---V4PAT2" D ^V4PAT2 V4PAT3 W !!,"128---V4PAT3" D ^V4PAT3 V4PAT4 W !!,"129---V4PAT4" D ^V4PAT4 V4PAT5 W !!,"130---V4PAT5" D ^V4PAT5 V4PAT6 W !!,"131---V4PAT6" D ^V4PAT6 V4PAT7 W !!,"132---V4PAT7" D ^V4PAT7 V4PAT8 W !!,"133---V4PAT8" D ^V4PAT8 V4PAT9 W !!,"134---V4PAT9" D ^V4PAT9 ; END K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PAT1 V4PAT1 ;IW-KO-YS-TS,V4PAT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"126---V4PAT1: pattern match operator -1-" ; W !,"expr ? I (patatom)" ; 1 S ^ABSN="40772",^ITEM="IV-772 expr ? I (N patatom)" S ^NEXT="2^V4PAT1,V4PAT2^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABC12ABC12" S ^VCOMP=X?2(5NA) S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40773",^ITEM="IV-773 expr ? I (.N patatom)" S ^NEXT="3^V4PAT1,V4PAT2^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABC12" S ^VCOMP=X?2(.A) S ^VCORR="0" D ^VEXAMINE ; 3 S ^ABSN="40774",^ITEM="IV-774 expr ? I (N. patatom)" S ^NEXT="4^V4PAT1,V4PAT2^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABC12m0008239933" S ^VCOMP=X?2(2.NU) S ^VCORR="0" D ^VEXAMINE ; 4 S ^ABSN="40775",^ITEM="IV-775 expr ? I (N.M patatom)" S ^NEXT="5^V4PAT1,V4PAT2^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="AB12m" S ^VCOMP=X?2(1.3AN) S ^VCORR="1" D ^VEXAMINE ; W !,"expr ? .I (patatom)" ; 5 S ^ABSN="40776",^ITEM="IV-776 expr ? .I (N patatom)" S ^NEXT="6^V4PAT1,V4PAT2^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="1A1A1A1A1A" S ^VCOMP=X?.4(2"1A") S ^VCORR="0" D ^VEXAMINE ; 6 S ^ABSN="40777",^ITEM="IV-777 expr ? .I (.N patatom)" S ^NEXT="7^V4PAT1,V4PAT2^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="" S ^VCOMP=X?.2(.100AP) S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40778",^ITEM="IV-778 expr ? .I (N. patatom)" S ^NEXT="8^V4PAT1,V4PAT2^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="01234567891" S ^VCOMP=X?.4(3.UPN) S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40779",^ITEM="IV-779 expr ? .I (N.M patatom)" S ^NEXT="V4PAT2^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="01 234 567 8 91" S ^VCOMP=X?.5(1.4ANP) S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 126 --- V4PAT1",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PAT2 V4PAT2 ;IW-KO-YS-TS,V4PAT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"127---V4PAT2: pattern match operator -2-" ; W !,"expr ? I. (patatom)" ; 1 S ^ABSN="40780",^ITEM="IV-780 expr ? I. (N patatom)" S ^NEXT="2^V4PAT2,V4PAT3^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="-*/-*/-*/-*/-*/-*/-*/-*/-*/-*/-*/-*/" S ^VCOMP=X?10.(3P) S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40781",^ITEM="IV-781 expr ? I. (.N patatom)" S ^NEXT="3^V4PAT2,V4PAT3^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="" S ^VCOMP=X?0.(.2L) S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40782",^ITEM="IV-782 expr ? I. (N. patatom)" S ^NEXT="4^V4PAT2,V4PAT3^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ANN123KL6465465664565654654656K4" S ^VCOMP=X?3.(3.AN) S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40783",^ITEM="IV-783 expr ? I. (N.M patatom)" S ^NEXT="5^V4PAT2,V4PAT3^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="A A A A A A A A A A A A A A A " S ^VCOMP=X?5.(1.3"A ") S ^VCORR="1" D ^VEXAMINE ; W !,"expr ? I.J (patatom)" ; 5 S ^ABSN="40784",^ITEM="IV-784 expr ? I.J (N patatom)" S ^NEXT="6^V4PAT2,V4PAT3^V4PAT,V4NST1^VV4" D ^V4PRESET K S X=" 0-9" S ^VCOMP=X?2.5(2NP) S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40785",^ITEM="IV-785 expr ? I.J (.N patatom)" S ^NEXT="7^V4PAT2,V4PAT3^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="A" S ^VCOMP=X?9.40(.3A) S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40786",^ITEM="IV-786 expr ? I.J (N. patatom)" S ^NEXT="8^V4PAT2,V4PAT3^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="-=-0" S ^VCOMP=X?1.10(4.E) S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40787",^ITEM="IV-787 expr ? I.J (N.M patatom)" S ^NEXT="V4PAT3^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="K0ADK0ADK0ADK0ADK0ADK0ADK0ADK0ADK0ADK0ADK0ADK0ADK0ADK0ADK0AD" S ^VCOMP=X?10.20(2.4AN) S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 127 --- V4PAT2",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PAT3 V4PAT3 ;IW-KO-YS-TS,V4PAT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"128---V4PAT3: pattern match operator -3-" ; W !,"expr ? I (patatom,patatom)" ; 1 S ^ABSN="40788",^ITEM="IV-788 expr ? I (N patatom, N patatom)" S ^NEXT="2^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="34AND45" S ^VCOMP=X?3(2N,3A) S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40789",^ITEM="IV-789 expr ? I (.N patatom, N patatom)" S ^NEXT="3^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="1/343/46" S ^VCOMP=X?5(.3N,1"/") S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40790",^ITEM="IV-790 expr ? I (.N patatom, .N patatom)" S ^NEXT="4^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="12345ABCDE1234ABCD123ABC12AB1A" S ^VCOMP=X?9(.5N,.5A) S ^VCORR="0" D ^VEXAMINE ; 4 S ^ABSN="40791",^ITEM="IV-791 expr ? I (.N patatom, N. patatom)" S ^NEXT="5^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="AS + LLLLL------\\\\\" S ^VCOMP=X?6(.3A,4.P) S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40792",^ITEM="IV-792 expr ? I (.N patatom, N.M patatom)" S ^NEXT="6^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="****A95+++" S ^VCOMP=X?3(.2AN,2.4P) S ^VCORR="0" D ^VEXAMINE ; 6 S ^ABSN="40793",^ITEM="IV-793 expr ? I (N. patatom, N patatom)" S ^NEXT="7^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABABAABABABABABABABABABAB" S ^VCOMP=X?4(4.A,3"AB") S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40794",^ITEM="IV-794 expr ? I (N. patatom, .N patatom)" S ^NEXT="8^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABABABABABABABABABABABABABABABABABABABAB" S ^VCOMP=X?4(3.A,.5"AB") S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40795",^ITEM="IV-795 expr ? I (N. patatom, N. patatom)" S ^NEXT="9^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="BABABABABABABAB" S ^VCOMP=X?4(4.A,2."AB") S ^VCORR="0" D ^VEXAMINE ; 9 S ^ABSN="40796",^ITEM="IV-796 expr ? I (N. patatom, N.M patatom)" S ^NEXT="10^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABABABABABABABABABABABAB" S ^VCOMP=X?4(7.A,3.4"AB") S ^VCORR="1" D ^VEXAMINE ; ; 10 S ^ABSN="40797",^ITEM="IV-797 expr ? I (N.M patatom, N patatom)" S ^NEXT="11^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABABABABABABABABABABABABABABABAB" S ^VCOMP=X?4(2.8A,2"AB") S ^VCORR="1" D ^VEXAMINE ; 11 S ^ABSN="40798",^ITEM="IV-798 expr ? I (N.M patatom, .N patatom)" S ^NEXT="12^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="0000AA00000AAAAAAAAAAAA055550" S ^VCOMP=X?5(4.10NA,.15A) S ^VCORR="1" D ^VEXAMINE ; 12 S ^ABSN="40799",^ITEM="IV-799 expr ? I (N.M patatom, N. patatom)" S ^NEXT="13^V4PAT3,V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABABABABABABACABABABAB" S ^VCOMP=X?3(2.10"AB",5.A) S ^VCORR="1" D ^VEXAMINE ; 13 S ^ABSN="40800",^ITEM="IV-800 expr ? I (N.M patatom, N.M patatom)" S ^NEXT="V4PAT4^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABABABABABABABABABABABABABABABABABAB" S ^VCOMP=X?3(4.10"AB",6.10A) S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 128 --- V4PAT3",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PAT4 V4PAT4 ;IW-KO-YS-TS,V4PAT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"129---V4PAT4: pattern match operator -4-" W !,"expr ? .I (patatom,patatom)" ; 1 S ^ABSN="40801",^ITEM="IV-801 expr ? .I (N patatom, N patatom)" S ^NEXT="2^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="QIEJjioDIFU" S ^VCOMP=X?.4(4U,3L) S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40802",^ITEM="IV-802 expr ? .I (.N patatom, N patatom)" S ^NEXT="3^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="0123123123123" S ^VCOMP=X?.5(.5"123",2N) S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40803",^ITEM="IV-803 expr ? .I (.N patatom, .N patatom)" S ^NEXT="4^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="A AAA AA " S ^VCOMP=X?.5(.4A,.4"A ") S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40804",^ITEM="IV-804 expr ? .I (.N patatom, N. patatom)" S ^NEXT="5^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="1234SFGHTHJJY5664FDFFFDDFFF4564XGGGGGDD565656GGGGFDFDFDFD444FGGGGGGGGF" S ^VCOMP=X?.1000000(.5N,5.A) S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40805",^ITEM="IV-805 expr ? .I (.N patatom, N.M patatom)" S ^NEXT="6^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABCDE38495043ABC384949DHFJABCDEF49499JFJFJ" S ^VCOMP=X?.100(.5A,3.10N) S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40806",^ITEM="IV-806 expr ? .I (N. patatom, N patatom)" S ^NEXT="7^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" S ^VCOMP=X?.5(2.A,2"AA") S ^VCORR="0" D ^VEXAMINE ; 7 S ^ABSN="40807",^ITEM="IV-807 expr ? .I (N. patatom, .N patatom)" S ^NEXT="8^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="" S ^VCOMP=X?.10(0.A,.2N) S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40808",^ITEM="IV-808 expr ? .I (N. patatom, N. patatom)" S ^NEXT="9^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="000--1111-6666" S ^VCOMP=X?.5(1."-",3.N) S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40809",^ITEM="IV-809 expr ? .I (N. patatom, N.M patatom)" S ^NEXT="10^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="--AADAS474747474 A 0123456789abc12BDBDBDBDD??__BDB_DBDBDDBDB" S ^VCOMP=X?.10(3.PA,2.10N) S ^VCORR="1" D ^VEXAMINE ; 10 S ^ABSN="40810",^ITEM="IV-810 expr ? .I (N.M patatom, N patatom)" S ^NEXT="11^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="8FDKDS9DFKDS8FK 12345ABCDEFGHIOKJ 123456789456123ACDD" S ^VCOMP=X?.10(3.10AN,1" 12345") S ^VCORR="1" D ^VEXAMINE ; 11 S ^ABSN="40811",^ITEM="IV-811 expr ? .I (N.M patatom, .N patatom)" S ^NEXT="12^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="D8D8D8D8D8+-*/39NN39=393900" S ^VCOMP=X?.10(3.10AN,.5PN) S ^VCORR="1" D ^VEXAMINE ; 12 S ^ABSN="40812",^ITEM="IV-812 expr ? .I (N.M patatom, N. patatom)" S ^NEXT="13^V4PAT4,V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="38323M3-8333333M03*-/400387Q894-6789AD" S ^VCOMP=X?.6(3.10AN,4.PN) S ^VCORR="0" D ^VEXAMINE ; 13 S ^ABSN="40813",^ITEM="IV-813 expr ? .I (N.M patatom, N.M patatom)" S ^NEXT="V4PAT5^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="A1A1--AAA-AKK" S ^VCOMP=X?.5(2.5AN,2.5PA) S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 129 --- V4PAT4",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PAT5 V4PAT5 ;IW-KO-YS-TS,V4PAT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"130---V4PAT5: pattern match operator -5-" W !,"expr ? I. (patatom,patatom)" ; 1 S ^ABSN="40814",^ITEM="IV-814 expr ? I. (N patatom, N patatom)" S ^NEXT="2^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABC=====12345=====123=====ABC=====123456789012345ABC" S ^VCOMP=X?3.(3AN,5PN) S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40815",^ITEM="IV-815 expr ? I. (.N patatom, N patatom)" S ^NEXT="3^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="A" S ^VCOMP=X?2.(.3"A",3A) S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40816",^ITEM="IV-816 expr ? I. (.N patatom, .N patatom)" S ^NEXT="4^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="00000*0000=0=11000*0000000A" S ^VCOMP=X?.4(.10AN,.5PN) S ^VCORR="0" D ^VEXAMINE ; 4 S ^ABSN="40817",^ITEM="IV-817 expr ? I. (.N patatom, N. patatom)" S ^NEXT="5^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABCDABCDABCDABCDabcdabcdABCDABCDabcdabcdABCDABCDABCDABCD" S ^VCOMP=X?4.(.3"abcd",3."ABCD") S ^VCORR="0" D ^VEXAMINE ; 5 S ^ABSN="40818",^ITEM="IV-818 expr ? I. (.N patatom, N.M patatom)" S ^NEXT="6^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="#######" S ^VCOMP=X?4.(.5APN,2.5"#") S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40819",^ITEM="IV-819 expr ? I. (N. patatom, N patatom)" S ^NEXT="7^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABCDEFGH############ABCDEFGH" S ^VCOMP=X?5.(3.U,4"###") S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40820",^ITEM="IV-820 expr ? I. (N. patatom, .N patatom)" S ^NEXT="8^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="1234123412341234123412341234ABCDABCDABCDABCD" S ^VCOMP=X?4.(4."1234",.3"ABCD") S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40821",^ITEM="IV-821 expr ? I. (N. patatom, N. patatom)" S ^NEXT="9^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="AAAAAAAAAAA99009999999AAAAAAAAA9990000999999" S ^VCOMP=X?4.(3."A",4.N) S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40822",^ITEM="IV-822 expr ? I. (N. patatom, N.M patatom)" S ^NEXT="10^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="111111-2211-2211-221111AA1111-2211-2211-2211-2211-22A11-22111-2211-2211-2211-22" S ^VCOMP=X?5.(2.AN,2.6"11-22") S ^VCORR="0" D ^VEXAMINE ; 10 S ^ABSN="40823",^ITEM="IV-823 expr ? I. (N.M patatom, N patatom)" S ^NEXT="11^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="DFL;FDK;FDLKFDLJKFDLJKFDLJKFDLJKFDLJKFDLKFDLK;FLKFDFDFDVSLFD" S ^VCOMP=X?4.(2.4"ABCD",2"ABC") S ^VCORR="0" D ^VEXAMINE ; 11 S ^ABSN="40824",^ITEM="IV-824 expr ? I. (N.M patatom, .N patatom)" S ^NEXT="12^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABCDEFGH/1234456" S ^VCOMP=X?4.(5.9NA,.9PAN) S ^VCORR="1" D ^VEXAMINE ; 12 S ^ABSN="40825",^ITEM="IV-825 expr ? I. (N.M patatom, N. patatom)" S ^NEXT="13^V4PAT5,V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="*****ABCDEF*******ABCDEFGH***AB***************ABCDEJFK" S ^VCOMP=X?4.(3.9"*",2.A) S ^VCORR="1" D ^VEXAMINE ; 13 S ^ABSN="40826",^ITEM="IV-826 expr ? I. (N.M patatom, N.M patatom)" S ^NEXT="V4PAT6^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABC0ABABAABABBABABAB0ABAB" S ^VCOMP=X?4.(3.9"AB",3.5AN) S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 130 --- V4PAT5",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PAT6 V4PAT6 ;IW-KO-YS-TS,V4PAT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"131---V4PAT6: pattern match operator -6-" W !,"expr ? I.J (patatom,patatom)" ; 1 S ^ABSN="40827",^ITEM="IV-827 expr ? I.J (N patatom, N patatom)" S ^NEXT="2^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="123ABGH123" S ^VCOMP=X?2.5(3N,2A) S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40828",^ITEM="IV-828 expr ? I.J (.N patatom, N patatom)" S ^NEXT="3^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="1B2[[0" S ^VCOMP=X?2.6(.4AN,2P) S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40829",^ITEM="IV-829 expr ? I.J (.N patatom, .N patatom)" S ^NEXT="4^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="12*23++++ADDF---AAAAA" S ^VCOMP=X?2.5(.3AN,.3P) S ^VCORR="0" D ^VEXAMINE ; 4 S ^ABSN="40830",^ITEM="IV-830 expr ? I.J (.N patatom, N. patatom)" S ^NEXT="5^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="++AB" S ^VCOMP=X?2.8(.5"++",4.AP) S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40831",^ITEM="IV-831 expr ? I.J (.N patatom, N.M patatom)" S ^NEXT="6^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="*" S ^VCOMP=X?1.2(.1N,1.2P) S ^VCORR="1" D ^VEXAMINE ; 6 S ^ABSN="40832",^ITEM="IV-832 expr ? I.J (N. patatom, N patatom)" S ^NEXT="7^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="012345678A9012BC345" S ^VCOMP=X?3.10(5.N,4NA) S ^VCORR="1" D ^VEXAMINE ; 7 S ^ABSN="40833",^ITEM="IV-833 expr ? I.J (N. patatom, .N patatom)" S ^NEXT="8^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="99999999999999999999999999999999999999999999999999999999999999999999999" S ^VCOMP=X?10.200(2.AN,.5AN) S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40834",^ITEM="IV-834 expr ? I.J (N. patatom, N. patatom)" S ^NEXT="9^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="AAAAAAAA]]]]]]]]]]444444444]]]]]]]]]AA===4444444444\\\\\\0000000======" S ^VCOMP=X?3.10(2.AN,4.P) S ^VCORR="0" D ^VEXAMINE ; 9 S ^ABSN="40835",^ITEM="IV-835 expr ? I.J (N. patatom, N.M patatom)" S ^NEXT="10^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="AAAAAAAAAAAAAAAAAAAAKKKLLLLJG7GJFNFNFNFNBBBBBBBBBBBBBBBBBBBB" S ^VCOMP=X?1.3(20.A,10.20NA) S ^VCORR="1" D ^VEXAMINE ; 10 S ^ABSN="40836",^ITEM="IV-836 expr ? I.J (N.M patatom, N patatom)" S ^NEXT="11^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH" S ^VCOMP=X?3.6(2.4"H",5"HH") S ^VCORR="1" D ^VEXAMINE ; 11 S ^ABSN="40837",^ITEM="IV-837 expr ? I.J (N.M patatom, .N patatom)" S ^NEXT="12^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="" S ^VCOMP=X?4.9(3.10"+",.4N) S ^VCORR="1" D ^VEXAMINE ; 12 S ^ABSN="40838",^ITEM="IV-838 expr ? I.J (N.M patatom, N. patatom)" S ^NEXT="13^V4PAT6,V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="12345HJKKLLL012345JIK0124abcd01245ABCDEF012345DDFFGDDFDFDF" S ^VCOMP=X?9.20(4.6N,3.A) S ^VCORR="1" D ^VEXAMINE ; 13 S ^ABSN="40839",^ITEM="IV-839 expr ? I.J (N.M patatom, N.M patatom)" S ^NEXT="V4PAT7^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="012ASD34=34=34=34=34=AAAAAA34SDFSGD4566SG" S ^VCOMP=X?3.9(3.7AN,3.9"34=") S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 131 --- V4PAT6",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PAT7 V4PAT7 ;IW-KO-YS-TS,V4PAT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"132---V4PAT7: pattern match operator -7-" ; 1 S ^ABSN="40840",^ITEM="IV-840 expr ? repcount (patatom,patatom,patatom)" S ^NEXT="2^V4PAT7,V4PAT8^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="123-45-567ABCDEFG3233---" S ^VCOMP=X?4.(1.3A,1"-",2.N) S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40841",^ITEM="IV-841 expr ? repcount (patatom,patatom,patatom,patatom,patatom)" S ^NEXT="3^V4PAT7,V4PAT8^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="abcd1234-A-A-A-*ABCD12345-*-*-" S ^VCOMP=X?5.7(2.NU,2."-A",2.P,2.L) S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40842",^ITEM="IV-842 expr ? repcount (patatom,patatom,patatom,patatom,patatom,patatom)" S ^NEXT="4^V4PAT7,V4PAT8^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="-1234-ab-AB-12-12" S ^VCOMP=X?.4(.2"-12-",.3NA,.3NP,.2"-AB-",.3PL,1E) S ^VCORR="0" D ^VEXAMINE ; ; 4 S ^ABSN="40843",^ITEM="IV-843 expr ? repcount (...) repcount patcode" S ^NEXT="5^V4PAT7,V4PAT8^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="-1-1*AB+-" S ^VCOMP=X?2.4(.4AN,1.3AP,1E,2"-1")1.3P S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40844",^ITEM="IV-844 expr ? repcount (...) repcount strlit" S ^NEXT="6^V4PAT7,V4PAT8^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="1ABCD1E#####" S ^VCOMP=X?2(.4AN,1.3AP,2."#")1.4"#" S ^VCORR="0" D ^VEXAMINE ; 6 S ^ABSN="40845",^ITEM="IV-845 expr ? repcount (...) repcount patcode repcount (...)" S ^NEXT="7^V4PAT7,V4PAT8^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="AAABCCCCCCCCCCCBBBB BBBBAAAA 12 1AAAAABBBBCCC" S ^VCOMP=X?.5(1."A",1."B",1."C")1.PN.5(1.NP,1."A",1."B",1."C") S ^VCORR="0" D ^VEXAMINE ; 7 S ^ABSN="40846",^ITEM="IV-846 expr ? repcount (...) repcount strlit repcount (...)" S ^NEXT="8^V4PAT7,V4PAT8^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="CCCCCCCCCCCAAAAAAABBBBBBBBBBBAAAAAAAAA XY BBBBCCCAAAAAAAAAAAA" S ^VCOMP=X?.5(1."A",1."B",1."C")1" ".4(1."A",1."B",1."C",1.13AP) S ^VCORR="1" D ^VEXAMINE ; 8 S ^ABSN="40847",^ITEM="IV-847 expr ? repcount (...) repcount (...) repcount patcode" S ^NEXT="9^V4PAT7,V4PAT8^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="*-=BBBBBB123A--=" S ^VCOMP=X?2.(.A,3.P)2.5(3A,2.NA,1P)3.4AP S ^VCORR="1" D ^VEXAMINE ; 9 S ^ABSN="40848",^ITEM="IV-848 expr ? repcount (...) repcount (...) repcount strlit" S ^NEXT="10^V4PAT7,V4PAT8^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="1--ABabAAab " S ^VCOMP=X?1.3(.N,2"-",.2A).3(."AB",."ab",1"AA",1"ab")1.3" " S ^VCORR="1" D ^VEXAMINE ; 10 S ^ABSN="40849",^ITEM="IV-849 expr ? repcount (...) repcount (...) repcount (...)" S ^NEXT="V4PAT8^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="AB1212112 -12AAA1" S ^VCOMP=X?9.(1.AN,.3PN)1(1"12",1"AB").2(1.3"A",.3AN) S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 132 --- V4PAT7",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PAT8 V4PAT8 ;IW-KO-YS-TS,V4PAT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"133---V4PAT8: pattern match operator -8-" ; 1 S ^ABSN="40850",^ITEM="IV-850 expr ? repcount patcode repcount (...)" S ^NEXT="2^V4PAT8,V4PAT9^V4PAT,V4NST1^VV4" D ^V4PRESET K S X=" ABC456789" S ^VCOMP=X?2.E2.(4.AN,4.N) S ^VCORR="1" D ^VEXAMINE ; 2 S ^ABSN="40851",^ITEM="IV-851 expr ? repcount strlit repcount (...)" S ^NEXT="3^V4PAT8,V4PAT9^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="XY XY XY *" S ^VCOMP=X?2."XY "3.(1"XY ",2A,1P) S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40852",^ITEM="IV-852 expr ? repcount patcode repcount (...) repcount patcode" S ^NEXT="4^V4PAT8,V4PAT9^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABABC**" S ^VCOMP=X?2A.4(1.A,2.P).3P S ^VCORR="1" D ^VEXAMINE ; 4 S ^ABSN="40853",^ITEM="IV-853 expr ? repcount patcode repcount (...) repcount strlit" S ^NEXT="5^V4PAT8,V4PAT9^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABCD475---ABCDE-------" S ^VCOMP=X?2.NA.4(1.A,2.P).3"--" S ^VCORR="1" D ^VEXAMINE ; 5 S ^ABSN="40854",^ITEM="IV-854 expr ? repcount strlit repcount (...) repcount patcode" S ^NEXT="6^V4PAT8,V4PAT9^V4PAT,V4NST1^VV4" D ^V4PRESET K S X=" =AB 12345" S ^VCOMP=X?1." "4.(2A,2.P,1."=").N S ^VCORR="0" D ^VEXAMINE ; 6 S ^ABSN="40855",^ITEM="IV-855 expr ? repcount strlit repcount (...) repcount strlit" S ^NEXT="V4PAT9^V4PAT,V4NST1^VV4" D ^V4PRESET K S X="ABABABAB12341234AXAXAXAXAX" S ^VCOMP=X?2."AB"2.7(.A,4N)2."AX" S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 133 --- V4PAT8",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4PAT9 V4PAT9 ;IW-KO-YS-TS,V4PAT,MVTS V9.10;15/6/96;PART-94 ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1994-1996 ; W !!,"134---V4PAT9: pattern match operator -9-" ; 1 S ^ABSN="40856",^ITEM="IV-856 expr '?" S ^NEXT="2^V4PAT9,V4NST1^VV4" D ^V4PRESET K S X="AB1212112 -12AAA1" S ^VCOMP=X'?9.(1.AN,.3PN)1(1"12",1"AB").2(1.3"A",.3AN) S ^VCORR="0" D ^VEXAMINE ; 2 S ^ABSN="40857",^ITEM="IV-857 multi alternation" S ^NEXT="3^V4PAT9,V4NST1^VV4" D ^V4PRESET K S X="35646413231--AABABABABABABABABABabababAAA89-1-1879HJABABAB89909999AAAAAAAAAAACCCCCCCCCCCCCC AAAAAAAAABBBBBBBBBBBBB=----------=" S ^VCOMP=X?1.3(.N,2"-",.2A).5(."AB",."ab",1"AA",1"ab")2.4(.4AN,1.3AP,1E,2"-1")4.(3.9"AB",3.5AN).5(1."A",1."B",1."C")1" ".4(1."A",1."B",1."C",1.13AP) S ^VCORR="1" D ^VEXAMINE ; 3 S ^ABSN="40858",^ITEM="IV-858 nested patatom" S ^NEXT="V4NST1^VV4" D ^V4PRESET K S X="AAAAABBBBBBCCCCCCCBBBBBCCCCCCCCBBBBBBBAAAAAAABBBBBBBBBBBBBAAAAAACCCCCCABABABABABABAB345123ABABABABABABABABABABABABABAB123ABBBBBBCCCCCCCBBBBB" S ^VCOMP=1.5(3.4(1."A",1."B",1."C"),2.(3.9"AB",3.5AN)) S ^VCORR="1" D ^VEXAMINE ; END W !!,"End of 134 --- V4PAT9",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NST1 V4NST1 ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;NESTING LEVEL ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1978-1996 W !!,"135---V4NST1: Nesting ( FOR, XECUTE, DO ) -1-" W !,"As this routine itself is counted as one level of nesting," W !,"additional 126 levels of nesting are required." W !,"Admitted nesting levels are indicated by the number in each test.",! ; 1 W !,"IV-859 13 levels of DO, and 114 levels of FOR" S ^ABSN="40859",^ITEM="IV-859 Termination by GOTO" S ^NEXT="V4NST2^VV4" D ^V4PRESET K S X="(OK)",^VCOMP="" FOR0 F A(1)=1:1:2 F A(2)=1:1:2 F A(3)=1:1:2 F A(4)=1:1:2 F A(5)=1:1:2 F A(6)=1:1:2 F A(7)=1:1:2 F A(8)=1:1:2 F A(9)=1:1:2 D FOR1 S ^VCOMP=^VCOMP_X G F2 S ^VCOMP=^VCOMP_" ERROR 653" F2 S ^VCORR="(OK)(OK)" D ^VEXAMINE ; END W !!,"End of 135 --- V4NST1",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; FOR1 F A(11)=1:1:2 F A(12)=1:1:2 F A(13)=1:1:2 F A(14)=1:1:2 F A(15)=1:1:2 F A(16)=1:1:2 F A(17)=1:1:2 F A(18)=1:1:2 F A(19)=1:1:2 D FOR2 G FOR1E Q FOR1E Q FOR2 F A(21)=1:1:2 F A(22)=1:1:2 F A(23)=1:1:2 F A(24)=1:1:2 F A(25)=1:1:2 F A(26)=1:1:2 F A(27)=1:1:2 F A(28)=1:1:2 F A(29)=1:1:2 D FOR3 G FOR2E Q FOR2E Q FOR3 F A(31)=1:1:2 F A(32)=1:1:2 F A(33)=1:1:2 F A(34)=1:1:2 F A(35)=1:1:2 F A(36)=1:1:2 F A(37)=1:1:2 F A(38)=1:1:2 F A(39)=1:1:2 D FOR4 G FOR3E Q FOR3E Q FOR4 F A(41)=1:1:2 F A(42)=1:1:2 F A(43)=1:1:2 F A(44)=1:1:2 F A(45)=1:1:2 F A(46)=1:1:2 F A(47)=1:1:2 F A(48)=1:1:2 F A(49)=1:1:2 D FOR5 G FOR4E Q FOR4E Q FOR5 F A(51)=1:1:2 F A(52)=1:1:2 F A(53)=1:1:2 F A(54)=1:1:2 F A(55)=1:1:2 F A(56)=1:1:2 F A(57)=1:1:2 F A(58)=1:1:2 F A(59)=1:1:2 D FOR6 G FOR5E Q FOR5E Q FOR6 F A(61)=1:1:2 F A(62)=1:1:2 F A(63)=1:1:2 F A(64)=1:1:2 F A(65)=1:1:2 F A(66)=1:1:2 F A(67)=1:1:2 F A(68)=1:1:2 F A(69)=1:1:2 D FOR7 G FOR6E Q FOR6E Q FOR7 F A(71)=1:1:2 F A(72)=1:1:2 F A(73)=1:1:2 F A(74)=1:1:2 F A(75)=1:1:2 F A(76)=1:1:2 F A(77)=1:1:2 F A(78)=1:1:2 F A(79)=1:1:2 D FOR8 G FOR7E Q FOR7E Q FOR8 F A(81)=1:1:2 F A(82)=1:1:2 F A(83)=1:1:2 F A(84)=1:1:2 F A(85)=1:1:2 F A(86)=1:1:2 F A(87)=1:1:2 F A(88)=1:1:2 F A(89)=1:1:2 D FOR9 G FOR8E Q FOR8E Q FOR9 F A(91)=1:1:2 F A(92)=1:1:2 F A(93)=1:1:2 F A(94)=1:1:2 F A(95)=1:1:2 F A(96)=1:1:2 F A(97)=1:1:2 F A(98)=1:1:2 F A(99)=1:1:2 D FOR10 G FOR9E Q FOR9E Q FOR10 F A(101)=1:1:2 F A(102)=1:1:2 F A(103)=1:1:2 F A(104)=1:1:2 F A(105)=1:1:2 F A(106)=1:1:2 F A(107)=1:1:2 F A(108)=1:1:2 F A(109)=1:1:2 D FOR11 G FOR10E Q FOR10E Q FOR11 F A(111)=1:1:2 F A(112)=1:1:2 F A(113)=1:1:2 F A(114)=1:1:2 F A(115)=1:1:2 F A(116)=1:1:2 F A(117)=1:1:2 F A(118)=1:1:2 F A(119)=1:1:2 D FOR12 G FOR11E Q FOR11E Q FOR12 F A(121)=1:1:2 F A(122)=1:1:2 F A(123)=1:1:2 F A(124)=1:1:2 F A(125)=1:1:2 F A(126)=1:1:2 I A(122)=2 G FOR12E Q FOR12E S ^VCOMP=^VCOMP_X Q ; V4NST2 V4NST2 ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;NESTING LEVEL ; W !!,"136---V4NST2: Nesting ( FOR, XECUTE, DO ) -2-" ; 2 S ^ABSN="40860",^ITEM="IV-860 Termination by QUIT" S ^NEXT="V4NST3^VV4" D ^V4PRESET K S X="(OK QUIT)",^VCOMP="",F=0 F A(1)=1:1:2 Q:F F A(2)=1:1:2 Q:F F A(3)=1:1:2 Q:F F A(4)=1:1:2 Q:F F A(5)=1:1:2 Q:F F A(6)=1:1:2 Q:F F A(7)=1:1:2 Q:F F A(8)=1:1:2 Q:F F A(9)=1:1:2 D FORQ1 Q:F D FORQ1 Q:F S ^VCORR="(OK QUIT)" D ^VEXAMINE ; END W !!,"End of 136 --- V4NST2",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; FORQ1 F A(11)=1:1:2 Q:F F A(12)=1:1:2 Q:F F A(13)=1:1:2 Q:F F A(14)=1:1:2 Q:F F A(15)=1:1:2 Q:F F A(16)=1:1:2 Q:F F A(17)=1:1:2 Q:F F A(18)=1:1:2 Q:F F A(19)=1:1:2 D FORQ2 Q:F Q FORQ2 F A(21)=1:1:2 Q:F F A(22)=1:1:2 Q:F F A(23)=1:1:2 Q:F F A(24)=1:1:2 Q:F F A(25)=1:1:2 Q:F F A(26)=1:1:2 Q:F F A(27)=1:1:2 Q:F F A(28)=1:1:2 Q:F F A(29)=1:1:2 D FORQ3 Q:F Q FORQ3 F A(31)=1:1:2 Q:F F A(32)=1:1:2 Q:F F A(33)=1:1:2 Q:F F A(34)=1:1:2 Q:F F A(35)=1:1:2 Q:F F A(36)=1:1:2 Q:F F A(37)=1:1:2 Q:F F A(38)=1:1:2 Q:F F A(39)=1:1:2 D FORQ4 Q:F Q FORQ4 F A(41)=1:1:2 Q:F F A(42)=1:1:2 Q:F F A(43)=1:1:2 Q:F F A(44)=1:1:2 Q:F F A(45)=1:1:2 Q:F F A(46)=1:1:2 Q:F F A(47)=1:1:2 Q:F F A(48)=1:1:2 Q:F F A(49)=1:1:2 D FORQ5 Q:F Q FORQ5 F A(51)=1:1:2 Q:F F A(52)=1:1:2 Q:F F A(53)=1:1:2 Q:F F A(54)=1:1:2 Q:F F A(55)=1:1:2 Q:F F A(56)=1:1:2 Q:F F A(57)=1:1:2 Q:F F A(58)=1:1:2 Q:F F A(59)=1:1:2 D FORQ6 Q:F Q FORQ6 F A(61)=1:1:2 Q:F F A(62)=1:1:2 Q:F F A(63)=1:1:2 Q:F F A(64)=1:1:2 Q:F F A(65)=1:1:2 Q:F F A(66)=1:1:2 Q:F F A(67)=1:1:2 Q:F F A(68)=1:1:2 Q:F F A(69)=1:1:2 D FORQ7 Q:F Q FORQ7 F A(71)=1:1:2 Q:F F A(72)=1:1:2 Q:F F A(73)=1:1:2 Q:F F A(74)=1:1:2 Q:F F A(75)=1:1:2 Q:F F A(76)=1:1:2 Q:F F A(77)=1:1:2 Q:F F A(78)=1:1:2 Q:F F A(79)=1:1:2 D FORQ8 Q:F Q FORQ8 F A(81)=1:1:2 Q:F F A(82)=1:1:2 Q:F F A(83)=1:1:2 Q:F F A(84)=1:1:2 Q:F F A(85)=1:1:2 Q:F F A(86)=1:1:2 Q:F F A(87)=1:1:2 Q:F F A(88)=1:1:2 Q:F F A(89)=1:1:2 D FORQ9 Q:F Q FORQ9 F A(91)=1:1:2 Q:F F A(92)=1:1:2 Q:F F A(93)=1:1:2 Q:F F A(94)=1:1:2 Q:F F A(95)=1:1:2 Q:F F A(96)=1:1:2 Q:F F A(97)=1:1:2 Q:F F A(98)=1:1:2 Q:F F A(99)=1:1:2 D FORQ10 Q:F Q FORQ10 F A(101)=1:1:2 Q:F F A(102)=1:1:2 Q:F F A(103)=1:1:2 Q:F F A(104)=1:1:2 Q:F F A(105)=1:1:2 Q:F F A(106)=1:1:2 Q:F F A(107)=1:1:2 Q:F F A(108)=1:1:2 Q:F F A(109)=1:1:2 D FORQ11 Q:F Q FORQ11 F A(111)=1:1:2 Q:F F A(112)=1:1:2 Q:F F A(113)=1:1:2 Q:F F A(114)=1:1:2 Q:F F A(115)=1:1:2 Q:F F A(116)=1:1:2 Q:F F A(117)=1:1:2 Q:F F A(118)=1:1:2 Q:F F A(119)=1:1:2 D FORQ12 Q:F Q FORQ12 F A(121)=1:1:2 Q:F F A(122)=1:1:2 Q:F F A(123)=1:1:2 Q:F F A(124)=1:1:2 Q:F F A(125)=1:1:2 Q:F F A(126)=1:1:2 I A(122)=2 S ^VCOMP=^VCOMP_X,F=1 Q Q V4NST3 V4NST3 ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;NESTING LEVEL ; W !!,"137---V4NST3: Nesting ( FOR, XECUTE, DO ) -3-" ; 3 S ^ABSN="40861",^ITEM="IV-861 1 level of DO, and 126 levels of XECUTE" S ^NEXT="V4NST4^VV4" D ^V4PRESET K S ^VCOMP="" S ZZ=0 S A01="X A02",A02="X A03",A03="X A04",A04="X A05",A05="X A06" S A06="X A07",A07="X A08",A08="X A09",A09="X A10",A10="X A11" S A11="X A12",A12="X A13",A13="X A14",A14="X A15",A15="X A16" S A16="X A17",A17="X A18",A18="X A19",A19="X A20",A20="X A21" S A21="X A22",A22="X A23",A23="X A24",A24="X A25",A25="X A26" S A26="X A27",A27="X A28",A28="X A29",A29="X A30",A30="X A31" S A31="X A32",A32="X A33",A33="X A34",A34="X A35",A35="X A36" S A36="X A37",A37="X A38",A38="X A39",A39="X A40",A40="X A41" S A41="X A42",A42="X A43",A43="X A44",A44="X A45",A45="X A46" S A46="X A47",A47="X A48",A48="X A49",A49="X A50",A50="X A51" S A51="X A52",A52="X A53",A53="X A54",A54="X A55",A55="X A56" S A56="X A57",A57="X A58",A58="X A59",A59="X A60",A60="X A61" S A61="X A62",A62="X A63",A63="X A64",A64="X A65",A65="X A66" S A66="X A67",A67="X A68",A68="X A69",A69="X A70",A70="X A71" S A71="X A72",A72="X A73",A73="X A74",A74="X A75",A75="X A76" S A76="X A77",A77="X A78",A78="X A79",A79="X A80",A80="X A81" S A81="X A82",A82="X A83",A83="X A84",A84="X A85",A85="X A86" S A86="X A87",A87="X A88",A88="X A89",A89="X A90",A90="X A91" S A91="X A92",A92="X A93",A93="X A94",A94="X A95",A95="X A96" S A96="X A97",A97="X A98",A98="X A99",A99="X A100",A100="X A101" S A101="X A102",A102="X A103",A103="X A104",A104="X A105",A105="X A106" S A106="X A107",A107="X A108",A108="X A109",A109="X A110",A110="X A111" S A111="X A112",A112="X A113",A113="X A114",A114="X A115",A115="X A116" S A116="X A117",A117="X A118",A118="X A119",A119="X A120",A120="X A121" S A121="X A122",A122="X A123",A123="X A124",A124="X A125" S A125="S ZZ=ZZ+1 S ^VCOMP=^VCOMP_(ZZ#100)" X A125,A124,A123,A122,A121,A120,A119,A118,A117,A116,A115,A114,A113,A112,A111,A110,A109,A108,A107,A106,A105,A104,A103,A102,A101 X A100,A99,A98,A97,A96,A95,A94,A93,A92,A91,A90,A89,A88,A87,A86,A85,A84,A83,A82,A81,A80,A79,A78,A77,A76,A75,A74,A73,A72,A71,A70,A69,A68,A67,A66,A65,A64,A63,A62,A61,A60,A59,A58,A57,A56,A55,A54,A53,A52,A51 X A50,A49,A48,A47,A46,A45,A44,A43,A42,A41,A40,A39,A38,A37,A36,A35,A34,A33,A32,A31,A30,A29,A28,A27,A26,A25,A24,A23,A22,A21,A20,A19,A18,A17,A16,A15,A14,A13,A12,A11,A10,A09,A08,A07,A06,A05,A04,A03,A02,A01 S ^VCORR="123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899012345678910111213141516171819202122232425" D ^VEXAMINE END W !!,"End of 137 --- V4NST3",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NST4 V4NST4 ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;NESTING LEVEL ; W !!,"138---V4NST4: Nesting ( FOR, XECUTE, DO ) -4-" ; 4 W !,"IV-862 126 levels of DO" S ^ABSN="40862",^ITEM="IV-862 Local DO" S ^NEXT="V4NST5^VV4" D ^V4PRESET K S V="" D D1 S ^VCOMP=V S ^VCORR="12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989901234567891011121314151617181920212223242526" D ^VEXAMINE ; END W !!,"End of 138 --- V4NST4",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; D1 S V=V_1 D D2 Q D2 S V=V_2 D D3 Q D3 S V=V_3 D D4 Q D4 S V=V_4 D D5 Q D5 S V=V_5 D D6 Q D6 S V=V_6 D D7 Q D7 S V=V_7 D D8 Q D8 S V=V_8 D D9 Q D9 S V=V_9 D D10 Q D10 S V=V_10 D D11 Q D11 S V=V_11 D D12 Q D12 S V=V_12 D D13 Q D13 S V=V_13 D D14 Q D14 S V=V_14 D D15 Q D15 S V=V_15 D D16 Q D16 S V=V_16 D D17 Q D17 S V=V_17 D D18 Q D18 S V=V_18 D D19 Q D19 S V=V_19 D D20 Q D20 S V=V_20 D D21 Q D21 S V=V_21 D D22 Q D22 S V=V_22 D D23 Q D23 S V=V_23 D D24 Q D24 S V=V_24 D D25 Q D25 S V=V_25 D D26 Q D26 S V=V_26 D D27 Q D27 S V=V_27 D D28 Q D28 S V=V_28 D D29 Q D29 S V=V_29 D D30 Q D30 S V=V_30 D D31 Q D31 S V=V_31 D D32 Q D32 S V=V_32 D D33 Q D33 S V=V_33 D D34 Q D34 S V=V_34 D D35 Q D35 S V=V_35 D D36 Q D36 S V=V_36 D D37 Q D37 S V=V_37 D D38 Q D38 S V=V_38 D D39 Q D39 S V=V_39 D D40 Q D40 S V=V_40 D D41 Q D41 S V=V_41 D D42 Q D42 S V=V_42 D D43 Q D43 S V=V_43 D D44 Q D44 S V=V_44 D D45 Q D45 S V=V_45 D D46 Q D46 S V=V_46 D D47 Q D47 S V=V_47 D D48 Q D48 S V=V_48 D D49 Q D49 S V=V_49 D D50 Q D50 S V=V_50 D D51 Q D51 S V=V_51 D D52 Q D52 S V=V_52 D D53 Q D53 S V=V_53 D D54 Q D54 S V=V_54 D D55 Q D55 S V=V_55 D D56 Q D56 S V=V_56 D D57 Q D57 S V=V_57 D D58 Q D58 S V=V_58 D D59 Q D59 S V=V_59 D D60 Q D60 S V=V_60 D D61 Q D61 S V=V_61 D D62 Q D62 S V=V_62 D D63 Q D63 S V=V_63 D D64 Q D64 S V=V_64 D D65 Q D65 S V=V_65 D D66 Q D66 S V=V_66 D D67 Q D67 S V=V_67 D D68 Q D68 S V=V_68 D D69 Q D69 S V=V_69 D D70 Q D70 S V=V_70 D D71 Q D71 S V=V_71 D D72 Q D72 S V=V_72 D D73 Q D73 S V=V_73 D D74 Q D74 S V=V_74 D D75 Q D75 S V=V_75 D D76 Q D76 S V=V_76 D D77 Q D77 S V=V_77 D D78 Q D78 S V=V_78 D D79 Q D79 S V=V_79 D D80 Q D80 S V=V_80 D D81 Q D81 S V=V_81 D D82 Q D82 S V=V_82 D D83 Q D83 S V=V_83 D D84 Q D84 S V=V_84 D D85 Q D85 S V=V_85 D D86 Q D86 S V=V_86 D D87 Q D87 S V=V_87 D D88 Q D88 S V=V_88 D D89 Q D89 S V=V_89 D D90 Q D90 S V=V_90 D D91 Q D91 S V=V_91 D D92 Q D92 S V=V_92 D D93 Q D93 S V=V_93 D D94 Q D94 S V=V_94 D D95 Q D95 S V=V_95 D D96 Q D96 S V=V_96 D D97 Q D97 S V=V_97 D D98 Q D98 S V=V_98 D D99 Q D99 S V=V_99 D D100 Q D100 S V=V_0 D D101 Q D101 S V=V_1 D D102 Q D102 S V=V_2 D D103 Q D103 S V=V_3 D D104 Q D104 S V=V_4 D D105 Q D105 S V=V_5 D D106 Q D106 S V=V_6 D D107 Q D107 S V=V_7 D D108 Q D108 S V=V_8 D D109 Q D109 S V=V_9 D D110 Q D110 S V=V_10 D D111 Q D111 S V=V_11 D D112 Q D112 S V=V_12 D D113 Q D113 S V=V_13 D D114 Q D114 S V=V_14 D D115 Q D115 S V=V_15 D D116 Q D116 S V=V_16 D D117 Q D117 S V=V_17 D D118 Q D118 S V=V_18 D D119 Q D119 S V=V_19 D D120 Q D120 S V=V_20 D D121 Q D121 S V=V_21 D D122 Q D122 S V=V_22 D D123 Q D123 S V=V_23 D D124 Q D124 S V=V_24 D D125 Q D125 S V=V_25 D D126 Q D126 S V=V_26 Q ; V4NST5 V4NST5 ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;NESTING LEVEL ; W !!,"139---V4NST5: Nesting ( FOR, XECUTE, DO ) -5-" ; 5 S ^ABSN="40863",^ITEM="IV-863 External DO" S ^NEXT="V4NST6^VV4" D ^V4PRESET K S V="" D D1^V4NSTE2 S ^VCOMP=V S ^VCORR="12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989901234567891011121314151617181920212223242526E" D ^VEXAMINE ; END W !!,"End of 139 --- V4NST5",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NST6 V4NST6 ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;NESTING LEVEL ; W !!,"140---V4NST6: Nesting ( FOR, XECUTE, DO ) -6-" ; 6 S ^ABSN="40864",^ITEM="IV-864 127 levels of combined DO, FOR, XECUTE" S ^NEXT="V4MDC^VV4" D ^V4PRESET K S ^VCOMP="",Z=0 S XX0="D G" S XX1="F A1=1:1:2 Q:Z F A2=1:1:2 Q:Z F A3=1:1:2 Q:Z D H1" S XX2="F B1=1:1:2 Q:Z F B2=1:1:2 Q:Z F B3=1:1:2 Q:Z D H2" S XX3="F C1=1:1:2 Q:Z F C2=1:1:2 Q:Z F C3=1:1:2 Q:Z D H3" S XX4="F D1=1:1:2 Q:Z F D2=1:1:2 Q:Z F D3=1:1:2 Q:Z D H4" S XX5="F E1=1:1:2 Q:Z F E2=1:1:2 Q:Z F E3=1:1:2 Q:Z D H5" S XX6="F F1=1:1:2 Q:Z F F2=1:1:2 Q:Z F F3=1:1:2 Q:Z D H6" S XX7="F G1=1:1:2 Q:Z F G2=1:1:2 Q:Z F G3=1:1:2 Q:Z D H7" S XX8="F H1=1:1:2 Q:Z F H2=1:1:2 Q:Z F H3=1:1:2 Q:Z D H8" S XX9="F I1=1:1:2 Q:Z F I2=1:1:2 Q:Z F I3=1:1:2 Q:Z D H9" S XX10="F J1=1:1:2 Q:Z F J2=1:1:2 Q:Z F J3=1:1:2 Q:Z D H10" S XX11="F K1=1:1:2 Q:Z F K2=1:1:2 Q:Z F K3=1:1:2 Q:Z D H11" S XX12="F L1=1:1:2 Q:Z F L2=1:1:2 Q:Z F L3=1:1:2 Q:Z D H12" S XX13="F M1=1:1:2 Q:Z F M2=1:1:2 Q:Z F M3=1:1:2 Q:Z D H13" S XX14="F N1=1:1:2 Q:Z F N2=1:1:2 Q:Z F N3=1:1:2 Q:Z D H14" S XX15="F O1=1:1:2 Q:Z F O2=1:1:2 Q:Z F O3=1:1:2 Q:Z D H15" S XX16="F P1=1:1:2 Q:Z F P2=1:1:2 Q:Z F P3=1:1:2 Q:Z D H16" S XX17="F Q1=1:1:2 Q:Z F Q2=1:1:2 Q:Z F Q3=1:1:2 Q:Z D H17" S XX18="F R1=1:1:2 Q:Z F R2=1:1:2 Q:Z F R3=1:1:2 Q:Z D H18" S XX19="F S1=1:1:2 Q:Z F S2=1:1:2 Q:Z F S3=1:1:2 Q:Z D H19" S XX20="F T1=1:1:2 Q:Z F T2=1:1:2 Q:Z F T3=1:1:2 Q:Z D H20" S XX21="F U1=1:1:2 Q:Z F U2=1:1:2 Q:Z F U3=1:1:2 Q:Z D H21" S XX22="F V1=1:1:2 Q:Z F V2=1:1:2 Q:Z F V3=1:1:2 Q:Z D H22" S XX23="F W1=1:1:2 Q:Z F W2=1:1:2 Q:Z F W3=1:1:2 Q:Z D H23" S XX24="F X1=1:1:2 Q:Z F X2=1:1:2 Q:Z F X3=1:1:2 Q:Z D H24" X XX0 S ^VCORR="OK" D ^VEXAMINE ; END W !!,"End of 140 --- V4NST6",! K Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q ; G X XX1 Q H1 X XX2 Q H2 X XX3 Q H3 X XX4 Q H4 X XX5 Q H5 X XX6 Q H6 X XX7 Q H7 X XX8 Q H8 X XX9 Q H9 X XX10 Q H10 X XX11 Q H11 X XX12 Q H12 X XX13 Q H13 X XX14 Q H14 X XX15 Q H15 X XX16 Q H16 X XX17 Q H17 X XX18 Q H18 X XX19 Q H19 X XX20 Q H20 X XX21 Q H21 X XX22 Q H22 X XX23 Q H23 X XX24 Q H24 X "F Y1=1:1:2 Q:Z F Y2=1:1:2 Q:Z S ^VCOMP=""OK"",Z=1" Q V4NSTE1 V4NSTE1 ;IW-KO-YS-TS,V4NST1/2/3,MVTS V9.10;15/6/96;USING BY ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1978-1996 ; D2 S V=V_2 D D3^V4NSTE2 Q D4 S V=V_4 D D5^V4NSTE2 Q D6 S V=V_6 D D7^V4NSTE2 Q D8 S V=V_8 D D9^V4NSTE2 Q D10 S V=V_10 D D11^V4NSTE2 Q D12 S V=V_12 D D13^V4NSTE2 Q D14 S V=V_14 D D15^V4NSTE2 Q D16 S V=V_16 D D17^V4NSTE2 Q D18 S V=V_18 D D19^V4NSTE2 Q D20 S V=V_20 D D21^V4NSTE2 Q D22 S V=V_22 D D23^V4NSTE2 Q D24 S V=V_24 D D25^V4NSTE2 Q D26 S V=V_26 D D27^V4NSTE2 Q D28 S V=V_28 D D29^V4NSTE2 Q D30 S V=V_30 D D31^V4NSTE2 Q D32 S V=V_32 D D33^V4NSTE2 Q D34 S V=V_34 D D35^V4NSTE2 Q D36 S V=V_36 D D37^V4NSTE2 Q D38 S V=V_38 D D39^V4NSTE2 Q D40 S V=V_40 D D41^V4NSTE2 Q D42 S V=V_42 D D43^V4NSTE2 Q D44 S V=V_44 D D45^V4NSTE2 Q D46 S V=V_46 D D47^V4NSTE2 Q D48 S V=V_48 D D49^V4NSTE2 Q D50 S V=V_50 D D51^V4NSTE2 Q D52 S V=V_52 D D53^V4NSTE2 Q D54 S V=V_54 D D55^V4NSTE2 Q D56 S V=V_56 D D57^V4NSTE2 Q D58 S V=V_58 D D59^V4NSTE2 Q D60 S V=V_60 D D61^V4NSTE2 Q D62 S V=V_62 D D63^V4NSTE2 Q D64 S V=V_64 D D65^V4NSTE2 Q D66 S V=V_66 D D67^V4NSTE2 Q D68 S V=V_68 D D69^V4NSTE2 Q D70 S V=V_70 D D71^V4NSTE2 Q D72 S V=V_72 D D73^V4NSTE2 Q D74 S V=V_74 D D75^V4NSTE2 Q D76 S V=V_76 D D77^V4NSTE2 Q D78 S V=V_78 D D79^V4NSTE2 Q D80 S V=V_80 D D81^V4NSTE2 Q D82 S V=V_82 D D83^V4NSTE2 Q D84 S V=V_84 D D85^V4NSTE2 Q D86 S V=V_86 D D87^V4NSTE2 Q D88 S V=V_88 D D89^V4NSTE2 Q D90 S V=V_90 D D91^V4NSTE2 Q D92 S V=V_92 D D93^V4NSTE2 Q D94 S V=V_94 D D95^V4NSTE2 Q D96 S V=V_96 D D97^V4NSTE2 Q D98 S V=V_98 D D99^V4NSTE2 Q D100 S V=V_0 D D101^V4NSTE2 Q D102 S V=V_2 D D103^V4NSTE2 Q D104 S V=V_4 D D105^V4NSTE2 Q D106 S V=V_6 D D107^V4NSTE2 Q D108 S V=V_8 D D109^V4NSTE2 Q D110 S V=V_10 D D111^V4NSTE2 Q D112 S V=V_12 D D113^V4NSTE2 Q D114 S V=V_14 D D115^V4NSTE2 Q D116 S V=V_16 D D117^V4NSTE2 Q D118 S V=V_18 D D119^V4NSTE2 Q D120 S V=V_20 D D121^V4NSTE2 Q D122 S V=V_22 D D123^V4NSTE2 Q D124 S V=V_24 D D125^V4NSTE2 Q D126 S V=V_"26E" Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4NSTE2 V4NSTE2 ;IW-KO-YS-TS,V4NST1/2/3,MVTS V9.10;15/6/96; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1978-1996 ; D1 S V=V_1 D D2^V4NSTE1 Q D3 S V=V_3 D D4^V4NSTE1 Q D5 S V=V_5 D D6^V4NSTE1 Q D7 S V=V_7 D D8^V4NSTE1 Q D9 S V=V_9 D D10^V4NSTE1 Q D11 S V=V_11 D D12^V4NSTE1 Q D13 S V=V_13 D D14^V4NSTE1 Q D15 S V=V_15 D D16^V4NSTE1 Q D17 S V=V_17 D D18^V4NSTE1 Q D19 S V=V_19 D D20^V4NSTE1 Q D21 S V=V_21 D D22^V4NSTE1 Q D23 S V=V_23 D D24^V4NSTE1 Q D25 S V=V_25 D D26^V4NSTE1 Q D27 S V=V_27 D D28^V4NSTE1 Q D29 S V=V_29 D D30^V4NSTE1 Q D31 S V=V_31 D D32^V4NSTE1 Q D33 S V=V_33 D D34^V4NSTE1 Q D35 S V=V_35 D D36^V4NSTE1 Q D37 S V=V_37 D D38^V4NSTE1 Q D39 S V=V_39 D D40^V4NSTE1 Q D41 S V=V_41 D D42^V4NSTE1 Q D43 S V=V_43 D D44^V4NSTE1 Q D45 S V=V_45 D D46^V4NSTE1 Q D47 S V=V_47 D D48^V4NSTE1 Q D49 S V=V_49 D D50^V4NSTE1 Q D51 S V=V_51 D D52^V4NSTE1 Q D53 S V=V_53 D D54^V4NSTE1 Q D55 S V=V_55 D D56^V4NSTE1 Q D57 S V=V_57 D D58^V4NSTE1 Q D59 S V=V_59 D D60^V4NSTE1 Q D61 S V=V_61 D D62^V4NSTE1 Q D63 S V=V_63 D D64^V4NSTE1 Q D65 S V=V_65 D D66^V4NSTE1 Q D67 S V=V_67 D D68^V4NSTE1 Q D69 S V=V_69 D D70^V4NSTE1 Q D71 S V=V_71 D D72^V4NSTE1 Q D73 S V=V_73 D D74^V4NSTE1 Q D75 S V=V_75 D D76^V4NSTE1 Q D77 S V=V_77 D D78^V4NSTE1 Q D79 S V=V_79 D D80^V4NSTE1 Q D81 S V=V_81 D D82^V4NSTE1 Q D83 S V=V_83 D D84^V4NSTE1 Q D85 S V=V_85 D D86^V4NSTE1 Q D87 S V=V_87 D D88^V4NSTE1 Q D89 S V=V_89 D D90^V4NSTE1 Q D91 S V=V_91 D D92^V4NSTE1 Q D93 S V=V_93 D D94^V4NSTE1 Q D95 S V=V_95 D D96^V4NSTE1 Q D97 S V=V_97 D D98^V4NSTE1 Q D99 S V=V_99 D D100^V4NSTE1 Q D101 S V=V_1 D D102^V4NSTE1 Q D103 S V=V_3 D D104^V4NSTE1 Q D105 S V=V_5 D D106^V4NSTE1 Q D107 S V=V_7 D D108^V4NSTE1 Q D109 S V=V_9 D D110^V4NSTE1 Q D111 S V=V_11 D D112^V4NSTE1 Q D113 S V=V_13 D D114^V4NSTE1 Q D115 S V=V_15 D D116^V4NSTE1 Q D117 S V=V_17 D D118^V4NSTE1 Q D119 S V=V_19 D D120^V4NSTE1 Q D121 S V=V_21 D D122^V4NSTE1 Q D123 S V=V_23 D D124^V4NSTE1 Q D125 S V=V_25 D D126^V4NSTE1 Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4MDC V4MDC ;IW-KO-TS-YS,VV4,MVTS V9.10;15/6/96; ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; W !!,"141---V4MDC: " ; S ^ABSN="40865",^ITEM="IV-865 Semantics for QUIT after NEW in the Subroutine" S ^NEXT="1^V4MDC,END^VV4" D ^V4PRESET K D EXAMPLE S ^VCORR="Piano" D ^VEXAMINE ; S ^ABSN="40866",^ITEM="IV-866 Control Flow in Nested Argumentless DO Commands and a QUIT Command" S ^NEXT="END^VV4" D ^V4PRESET K S INCOME=250000,DEPENDENTS=3 D TAX S ^VCOMP=TAX S ^VCORR="10000" D ^VEXAMINE ; END W !!,"End of 141 --- V4MDC",! K Q ; SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q EXAMPLE SET A="Piano" ;#19 D TAG1(.A) QUIT TAG1(B) D TAG2 S ^VCOMP=B QUIT TAG2 NEW B SET B="Organ" QUIT ; TAX SET TAX=0 ;#32 DO . IF INCOME>5000 DO . . IF DEPENDENTS>0 QUIT . . SET TAX=(INCOME-5000)*0.05 . IF INCOME>50000 DO . . IF DEPENDENTS>2 QUIT . . SET TAX=TAX+((INCOME-50000)*0.01) . IF INCOME>200000 DO . . IF DEPENDENTS>4 QUIT . . SET TAX=TAX+((INCOME-200000)*0.2) Q V4PRESET V4PRESET ;IW-KO-YS-TS,VV4,MVTS V9.10;15/6/96;UTILITY ; ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; S ^VREPORT("Part-94",^ABSN)="*ABORT*" S ^VREPORT("Part-94",^ABSN,"ITEM")=^ITEM S ^VREPORT("Part-94",^ABSN,"NEXT")=^NEXT Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q V4 V4 ;IW-KO-YS-TS,VV4/VV4TP,MVTS V9.10;15/6/96;UTILITY ;COPYRIGHT MUMPS SYSTEMS LABORATORY 1984-1996 ; I $D(^VENVIRON("OUTPUT OPEN"))=1 O ^VENVIRON("OUTPUT OPEN") I $D(^VENVIRON("INPUT OPEN"))=1 O ^VENVIRON("INPUT OPEN") I $D(^NEXT)=1 G NEXTNEXT I $D(^VREPORT("Part-94"))=0 G ^VV4 F ABSN=40923:-1:40001 I $D(^VREPORT("Part-94",ABSN,"NEXT"))=1 G NEXT K G ^VV4 NEXT I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") I ABSN>40866,ABSN<40924 S ^HALT=1 LOCK H 4 D @^VREPORT("Part-94",ABSN,"NEXT") Q NEXTNEXT I $D(^VENVIRON("OUTPUT USE"))=1 U ^VENVIRON("OUTPUT USE") I ^NEXT["VV4TP" S ^HALT=1 LOCK H 4 D @^NEXT Q SUM S SUM=0 F I=1:1 S L=$T(+I) Q:L="" F K=1:1:$L(L) S SUM=SUM+$A(L,K) Q