Following up on my last post, is there a way to find the hold number if I 
sent the job to hold.  I could then possibly pull the file from the 
formqueue.

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.

Reply via email to