You're on the right track but you need to assign the form type to the
queue *before
*you create any print jobs, and you only need to assign the form type once
per queue.

So the steps are:

Setup (this only needs to be done once per queue):
1) create the form queue
2) create the form type
3) SP-TYPE formqueue formtype

After this setup has been done:

1) SP-ASSIGN formquue
2) Spool the job(s)

On Tue, Jul 10, 2018 at 11:04 PM, Patrick McCann <osage1...@gmail.com>
wrote:

> Hi Daniel,
>
> I copied jspform_deflt to jspform_custom following your example.
>
> I then created a small program called HP_PCL_C12L coded like this -
>
>       $INCLUDE FILE.LIB.CUS HP.COMMANDS
>       $INCLUDE FILE.LIB.CUS HP.PCL
>       *
>       PRINTER ON
>       PRINT HP.LANDSCAPE:HP.COMPRESS
>       PRINT "THIS IS A TEST LINE 1"
>       PRINT "THIS IS A TEST LINE 2"
>       *
>       STOP
>       END
>
> And another called HP_RESET coded like this -
>
>       $INCLUDE FILE.LIB.CUS HP.COMMANDS
>       $INCLUDE FILE.LIB.CUS HP.PCL
>       *
>       PRINT HP.RESET
>       *
>       STOP
>       END
>
> I then added the following to the jspform_custom file
>
> STARTJOB HP_PCL_C12L
>
> and
>
> ENDJOB HP_RESET
>
> Here is my testing and results -
> SP-ASSIGN =F4
> SP-TYPE F4 custom
> LIST PTRS LPTR
>
> On the first page, I do see the two "TEST" lines printed in
> the HP_PCL_C12L routine and they print correctly e.g. landscape and
> compressed print.
> That is the only thing on the first page. Almost as if it is its own
> unique print job.
> Then an empty page
> Then the PTRS file listing in portrait and larger print. e.g. normal print.
> Then an empty page.
>
> Based on this it does call the HP_PCL_C12L routine from jsform_custom. It
> just doesn't work as I expected it to.
> I guess I am not understanding something about this flow? Is using a
> program to "PRINT" the PCL codes correct?
>
> The other test I tried was printing a job from the Spooler.
> SP-ASSIGN =F4
> SP-TYPE F4 custom
> SP-EDIT 3
> Then spool the job.
> The results were that ONLY the spooled job printed. It printed portrait
> and larger font e.g. normal print
> The two "TEST" lines are NOT printed. It appears the HP_PCL_C12L routine
> is NOT called from jspform_custom.
> Then a blank page
>
> Is my understanding of *"The 'set_pcl' and 'reset_pcl' would be your
> programs that send the PCL sequences to the printer."* correct? I.e. use
> of a basic program to send the codes?
>
> Thank you for your help.
> Patrick
>
>
> On Tuesday, July 10, 2018 at 4:25:44 AM UTC-7, Daniel Klein wrote:
>>
>> Yes, the way this is done is to use a custom form type. Take a look at
>> '$JBCRELEASEDIR/config/jspform_deflt'.
>>
>> Use
>>
>> STARTJOB set_pcl
>> and
>> ENDJOB reset_pcl
>>
>> to set the PCL sequences before and after print job are despooled.
>>
>> The 'set_pcl' and 'reset_pcl' would be your programs that send the PCL
>> sequences to the printer.
>>
>> Don't forget to assign the custom form type to the form queue. For
>> example, if the form queue is HPLASERJET and the form type is
>> 'jspform_custom' then
>>
>> SP-TYPE HPLASERJET custom
>>
>> will assign 'custom' to the HPLASERJET queue.
>>
>> Daniel Klein
>>
>> On Fri, Jul 6, 2018 at 11:49 PM, Patrick McCann <osag...@gmail.com>
>> wrote:
>>
>>> Again, Thank you Daniel. Very good detailed information. I will put this
>>> away for later reference.
>>>
>>> You have helped me get past several hurdles and helped me with my
>>> understanding of the the Spooler.
>>>
>>> *I have one last hurdle related to printing that I am still trying to
>>> figure out a solution for.*
>>>
>>> I will go ahead and describe it here for you and any others to offer any
>>> suggestions or possible solutions.
>>>
>>> Problem -
>>> I only have one printer. An HP Laserjet 500 MFP M525.
>>> I need to print several different report formats to this printer e.g. 80
>>> column, 132 column, and varying font sizes.
>>>
>>> In my previous environment (UniVerse on a Windows 2k Server) I was able
>>> to modify the SP.ASSIGN program to use a file I created.
>>> The SP.ASSIGN was a program that executed the SETPTR command behind the
>>> scenes. SETPTR in that environment had more options than are available in
>>> jBASE 5.7.
>>>
>>> I was able to utilize these other options to accomplish my requirements.
>>> By reading the file I created that held the options I wanted, everything
>>> was correctly set during assignment of the printer (SP-ASSIGN).
>>> Here are a couple examples of records from the file I created - It held
>>> the printer, page width and length, top and bottom margins, print mode,
>>> font type, size, and the other available options I needed.
>>> I would parse out the forms assignment from the SP-ASSIGN, read the
>>> file, get the options, and execute the SETPTR command with the required
>>> options.
>>> 0
>>> TOP
>>> .P
>>> TOP
>>> 001 HP5SI
>>> 002 ,132,59,0,0,
>>> 003 GDI,FONTNAME Courier,FONTSIZE 7
>>> 004
>>> 005
>>> 006 132 COLUMN
>>>
>>> 3
>>> TOP
>>> .P
>>> TOP
>>> 001 HP5SI
>>> 002
>>> 003
>>> 004
>>> 005 3
>>> 006 &HOLD& OUTPUT
>>> BOTTOM
>>>
>>> *jBASE support mentioned I would need to use jspforms which I will start
>>> researching, but thought I would ask the question now for any
>>> comments/suggestions.*
>>>
>>> Thank you,
>>> Patrick
>>>
>>> On Thursday, July 5, 2018 at 3:22:57 PM UTC-7, Daniel Klein wrote:
>>>>
>>>> You are correct, the 'n' in this case is the channel number and is used
>>>> with PRINT ON.
>>>>
>>>> These statement groups are equivalent (using the queue names from my
>>>> original post):
>>>>
>>>> SP-ASSIGN 42=VENUS
>>>> SP-ASSIGN 52=EARTH
>>>>
>>>> SP-ASSIGN F2 R42
>>>> SP-ASSIGN F3 R52
>>>>
>>>> SP-ASSIGN Q2 R42
>>>> SP-ASSIGN Q3 R52
>>>>
>>>> SETPTR 42,,,,,,VENUS
>>>> SETPTR 52,,,,,,EARTH
>>>> [I'm not as fluent with SETPTR but I do know that the first parameter
>>>> is the channel. Not sure if I got the right number of commas in there.
>>>> However, I find the SP-ASSIGN syntax more intuitive and can do most, if not
>>>> all, of the things SETPTR can.]
>>>>
>>>> Once the channels are assigned to the queues, you can do things like
>>>> this in a BASIC program
>>>>
>>>> PRINTER ON 42
>>>> PRINTER ON 52
>>>> PRINT ON 52 "Launch the rocket to VENUS"  ;* Prints to the EARTH form
>>>> queue
>>>> PRINT ON 42 "Houston, we have a problem!" ;* prints to the VENUS form
>>>> queue
>>>>
>>>> Daniel
>>>> Don’t believe everything you read on the Internet...unless I wrote it.
>>>> ;-)
>>>>
>>>>
>>>> On Thu, Jul 5, 2018 at 1:32 PM, Mark Hogden <ma...@proman.com> wrote:
>>>>
>>>>> =fqname is the same as 0=fqname which equates to the default PRINT in
>>>>> JBC
>>>>> 1=fqname is used for PRINT ON 1
>>>>> You can go up to 99=fqname if memory serves.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Jul 5, 2018, at 09:24, Patrick McCann <osag...@gmail.com> wrote:
>>>>>
>>>>> Hi  Daniel,
>>>>>
>>>>> Thank you for the excellent and detailed information. It really gives
>>>>> me a good understanding between the two.
>>>>>
>>>>> Now having a better understanding of the two I have some follow-up
>>>>> questions I am hoping you might be able to provide some help on.
>>>>>
>>>>> I would like to understand the following -
>>>>>
>>>>> *Rn assigns specific report number n. Only valid if an equals sign
>>>>> (=), is not present in the command line.*
>>>>>
>>>>>
>>>>> Is this command in anyway related to the form queue number? I don't
>>>>> believe so, but am not sure. I think it is used with "PRINT ON {n}", but
>>>>> would like to know for sure.
>>>>>
>>>>> And last, in the following command -
>>>>>
>>>>> *SETPTR {channel},,,,,,BANNER 'Some user text'*
>>>>>
>>>>> Is {channel} in anyway associated with the form queue number or is it
>>>>> just used to set-up the page characteristics for the "PRINT ON..."?
>>>>>
>>>>> Thanks again for your help.
>>>>>
>>>>> Patrick
>>>>>
>>>>> On Wednesday, July 4, 2018 at 7:47:37 PM UTC-7, Patrick McCann wrote:
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I am hoping somebody can help make sense of this for me.
>>>>>>
>>>>>> I am trying to understand the difference/relationship/etc... between
>>>>>> the two. I have read the documentation and still can't figure it out.
>>>>>>
>>>>>> Looking at the following from the documentation, it talks about the
>>>>>> queue number, and only valid if NO (=) sign is present.
>>>>>>
>>>>>> *Fn assigns specific form queue number n. Only valid if an equals
>>>>>> sign (=), is not present in the command line.*
>>>>>>
>>>>>>
>>>>>> Does every form queue name have an associated form queue number? If
>>>>>> so, how it is defined? Can it be changed? What is the purpose?
>>>>>>
>>>>>> Any help on this would be greatly appreciated.
>>>>>>
>>>>>> Thank you,
>>>>>> Patrick
>>>>>>
>>>>> --
>>>>> --
>>>>> IMPORTANT: T24/Globus posts are no longer accepted on this forum.
>>>>>
>>>>> To post, send email to jb...@googlegroups.com
>>>>> To unsubscribe, send email to jbase-un...@googlegroups.com
>>>>> 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 jbase+un...@googlegroups.com.
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>> --
>>>>> --
>>>>> IMPORTANT: T24/Globus posts are no longer accepted on this forum.
>>>>>
>>>>> To post, send email to jb...@googlegroups.com
>>>>> To unsubscribe, send email to jbase-un...@googlegroups.com
>>>>> 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 jbase+un...@googlegroups.com.
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>
>>>> --
>>> --
>>> IMPORTANT: T24/Globus posts are no longer accepted on this forum.
>>>
>>> To post, send email to jb...@googlegroups.com
>>> To unsubscribe, send email to jbase-un...@googlegroups.com
>>> 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 jbase+un...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
> --
> IMPORTANT: T24/Globus posts are no longer accepted on this forum.
>
> To post, send email to jBASE@googlegroups.com
> To unsubscribe, send email to jbase-unsubscr...@googlegroups.com
> 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 jbase+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
-- 
IMPORTANT: T24/Globus posts are no longer accepted on this forum.

To post, send email to jBASE@googlegroups.com
To unsubscribe, send email to jbase-unsubscr...@googlegroups.com
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 jbase+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to