Undocumented RoutineList features
As I was trying to create a routine search query via RoutineList, I discovered that documentation both for Cache and Iris offers only ABC* and ABC? syntax for including routine names and, unlike %RO, does not offer name ranges. Is that indeed so?
After some system files reading, I discovered that you can EXCLUDE certain routines with ', by using the 'ABC or 'ABC* syntax. That is not documented but it should be. Any other non-documented RoutineList syntax capabilities?
Example:
;Iterate through routine list
s rs=##class(%ResultSet).%New("%Routine:RoutineList")
s x=rs.Execute(list)
S t=""
F {
s x=rs.Next() q:'x
s rtnName=rs.GetData(1)
w rtnName,","
}
The RoutineList query in %Routine class does offer ranges, try this:
Set Query=##class(%Routine).RoutineListFunc("%D:%E")
Do Query.%Display()
Enrico
P.S.: Tested in latest IRIS, I'm not sure that the "Func" query method is available in 2017, but you can use your old %ResultSet with same parameters.