Open Exchange App SPOOL as SQL Table

Primary tabs

 

This is a coding example working on Caché 2018.1.3 and IRIS 2020.2 
It will not be kept in sync with new versions 
It is also NOT serviced by InterSystems Support !

Background

Device #2 named SPOOL dates back to the predecessors of Caché and IRIS
It was the first "%Stream" like option to buffer output before printing.
It is also the first and still today the most simple way of output redirection.

Solution

This is also an example of a mapped Global. USE 2 write "actual date: ",$ZDT($h,3),!
redirects the output into the Global ^SPOOL

You can read the global manually or with some ancient utilities
or use this mapping to access it as class or a table with SQL.

The structure of Spool

  • the global ^SPOOL is local to your namespace
  • fist subscript is a UNIQUE Document_ID
  • second subscript is a line number UNIQUE to the document.
  • both together form the IDkey

Details: [The Spool Device]

Implementation

Copy the Class User.SPOOL to your namespace and compile it.

Example

SELECT TOP 12 ID,* FROM SPOOL WHERE Document=3

ID
Document
LineNumber
Text
3||1
3
1
Lorem ipsum dolor sit amet, consectetuer adipiscing
3||2
3
2
elit, sed diam nonummy nibh euismod tincidunt ut laoreet
3||3
3
3
dolore magna aliquam erat volutpat. Ut wisi enim ad minim
3||4
3
4
veniam, quis nostrud exercitation ulliam corper suscipit lobortis
3||5
3
5
nisl ut aliquip ex ea commodo consequat.
3||6
3
6
Duis autem veleum iriure dolor in hendrerit in vulputate
3||7
3
7
velit esse molestie consequat, vel willum lunombro dolore
3||8
3
8
eu feugiat nulla facilisis
3||9
3
9
at vero eros et accumsan
3||10
3
10
et iusto odio dignissim qui blandit praesent
3||11
3
11
luptatum zzril delenit augue duis dolore te feugait nulla
3||12
3
12
facilisi. Li Europan lingues es membres

 


Also, check the previous part: SPOOL - the forgotten device.