Also, I tried SP-ASSIGN = PCAPT HS and when doing LIST MD SAMPLE 10 LPTR, it created a hold entry. This is the 12th form queue, so there is a hold entry in /usr/jspooler/jobs/formqueue_12.
Not sure what this means or affects, just more info. On Friday, May 3, 2013 5:05:59 AM UTC-5, Daniel Klein wrote: > > You have lots of options here. > > If the report is a Hold Entry in the spooler, you can send this to a file > using the (I) 'eye' option of the SP-EDIT command. For example, if you want > to send Entry #42 to a file, enter > > SP-EDIT 42 (I) > > and you will be prompted for the destination "File name and record key". > > A more direct way to accomplish this is with the 'jspcmds' command: > > jspcmds COPY "filepath filename" job# > > For example, the command... > > jspcmds COPY "/tmp/printjobs myjob.txt" 42 > > will 'copy' hold entry #42 to the '/tmp/printjobs' directory with a > filename of 'myjob.txt'. > > Should you wish to also delete the spooler entry then use 'COPYDELETE' in > place of 'COPY' in the above command. > > *** > > A form queue can also be created like this: > > SP-CREATE FILE PROG cat > /tmp/file.txt > > When a printjob is despooled, a file will be created in the specified > directory and will be called 'MyPrintFile'. The caveat of this method is > that each time a job is despooled to this queue, it OVERWRITES the previous > file. > > *** > > The most flexible approach is to redirect spooler output to a user-written > Basic program. What this means is that spooler 'output' (stdout) becomes > the 'input' (stdin) to your program. This gives you total control over the > spooler output. A typical program will capture all of the data to a file > and then do something with that 'file' (like email it, convert it to a PDF > or some other format, ftp it to some other machine, etc, the possibilities > are endless). Output can also be handled line-by-line as it is being > despooled. > > Here's some code you can start with: > > 0001 PROGRAM lptext > 0002 INCLUDE JBC.h > 0003 id = CHANGE(UNIQUEKEY(),'/',']2F') ;* create a unique item-id for > the print job > 0004 tempdirname = '/tmp' ;* This directory must have 'rw' permissions > 0005 OPENSEQ tempdirname:DIR_DELIM_CH:id TO outstream ELSE > 0006 CREATE outstream ELSE NULL > 0007 END > 0008 LOOP > 0009 numchars = SYSTEM(14) > 0010 WHILE numchars DO > 0011 INPUT line, numchars > 0012 WRITESEQ line ON outstream ELSE NULL > 0013 REPEAT > 0014 WEOFSEQ outstream ELSE NULL > 0015 CLOSESEQ outstream > > The next step is to define the form queue. For example, if the program is > cataloged in '/home/bin' then: > > SP-CREATE FILE PROG /home/bin/lptext > > All that's left to do is assign the queue and print something, e.g. > > SP-ASSIGN =FILE > LIST MD SAMPLE 10 LPTR > > Note that the above code assumes the system is running jBASE 4 or 5. To > get it to run on jBASE 3 : > > 1) Replace line 3 with: > > id = SYSTEM(21):'_':DATE():'_':TIME():'_':SYSTEM(9):'_':RND(32000) > > 2) Replace lines 5 through 7 with: > > OPENSEQ tempdirname:DIR_DELIM_CH:id TO outstream ELSE NULL > > 3) Add the line: > > openseq_creates = true > > to the '$JBCRELEASEDIR/config/Config_EMULATE' file under the appropriate > emulation section, if it does not already exist. This setting allows 'id' > to be created if it does not previously exist. > > Hope this helps, > > Dan > > > On Thu, May 2, 2013 at 6:58 PM, troyd1 <[email protected] <javascript:>>wrote: > >> I am working on a system that creates print jobs by turning the printer >> on and then using print statements. I would like to be able to capture the >> output from the print statements into a variable in a program to do >> something with them (basically capturing the print job into a variable). >> >> Here are my thoughts: >> >> Isolate the code and execute it and use a capturing statement. >> >> Do a como on statement and capture the output that way. If I need to do >> this, is there a way to have the output only go to the como file? >> >> I guess what I am looking for is a way to do this with minimal changes to >> the program. Basically do a "printer on" and save all output to a variable >> or alternately a file. I am on jbase 3.4 on an old version of linux. >> >> Thanks in advance for any help. >> >> -- >> -- >> IMPORTANT: T24/Globus posts are no longer accepted on this forum. >> >> To post, send email to [email protected] <javascript:> >> To unsubscribe, send email to [email protected] <javascript:> >> For more options, visit this group at >> http://groups.google.com/group/jBASE?hl=en >> >> --- >> You received this message because you are subscribed to the Google Groups >> "jBASE" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> > > -- -- IMPORTANT: T24/Globus posts are no longer accepted on this forum. To post, send email to [email protected] To unsubscribe, send email to [email protected] For more options, visit this group at http://groups.google.com/group/jBASE?hl=en --- You received this message because you are subscribed to the Google Groups "jBASE" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
