Thank you for the replies regarding form queues. Not only have they been helpful to me and I assume others but it is nice to see one of the vendors adding to the forum without wondering if the customer has a support agreement. You know that I have worked with jBASE for a long time but having this discussion in public rather than on a closed support system or via email or phone can benefit others besides the user with the specific problem.
On Thu, Jul 12, 2018 at 7:50 AM Daniel Klein <danielklei...@gmail.com> wrote: > Add -f to the lp command. That should eliminate the additional formfeed. > If you are still getting one then check to make sure the page skip is set > to zero for the queue. > > On Thu, Jul 12, 2018 at 8:43 AM, Patrick McCann <osage1...@gmail.com> > wrote: > >> Thank you for the example. I did a cut and paste and ran it. >> >> It was good to see the file it created and helped me understand the file >> contents. >> >> I assume using the -h<file> option basically replaces using the STARTJOB >> in my jspform_custom file? If so, I take it that the ENDJOB will have to >> stay? Although it seems like the printer is automatically resetting itself. >> I need to confirm that though.. >> >> Thank you, >> Patrick >> >> On Wednesday, July 11, 2018 at 9:27:09 AM UTC-7, ma...@proman.com wrote: >>> >>> This is a quick and dirty I have used in the past, which can be used in >>> conjunction with STARTJOB or to write the commands to a text file. >>> >>> >>> >>> Syntax is >>> >>> PROGNAME option {TEXTFILEPATH} >>> >>> e.g. HPCTRL DUMMY C:\temp\HP17CPI.TXT >>> >>> >>> >>> Then as Dan pointed out add the -h C:\temp\HP17CPI.TXT as part of the >>> SP-CREATE or SP-DEVICE statement. >>> >>> >>> >>> ESC = CHAR(27) >>> >>> CPI17 = ESC:'&k2S' >>> >>> IF SENTENCE(1) = "MARGIN" THEN >>> >>> CPI17:= ESC:'&a7L' >>> >>> END >>> >>> IF SENTENCE(2) THEN >>> >>> OPENSEQ SENTENCE(1) TO TEXTPATH ELSE NULL >>> >>> WRITESEQ CPI17 ON TEXTPATH ELSE STOP 'WRITESEQ' >>> >>> CLOSESEQ TEXTPATH >>> >>> END ELSE >>> >>> PRINT CPI17: >>> >>> END >>> >>> >>> >>> >>> >>> *From:* jb...@googlegroups.com <jb...@googlegroups.com> *On Behalf Of >>> *Daniel >>> Klein >>> *Sent:* Wednesday, July 11, 2018 8:53 AM >>> *To:* jb...@googlegroups.com >>> *Subject:* Re: FORM QUEUE NAME and FORM QUEUE NUMBER >>> >>> >>> >>> What Mark was alluding to was to use the -h<file> option with the 'lp' >>> command when you define the form queue with SP-CREATE, e.g. >>> >>> SP-CREATE MYQUEUE lp -h<file> -d<device> >>> >>> where <file> contains the PCL sequence and <device> is the printer name. >>> >>> You would need to specify the full path to the <file>. >>> >>> >>> >>> All of this assumes you are on Windows. >>> >>> >>> >>> To see all of the 'lp' options: >>> >>> >>> >>> lp -? >>> >>> >>> >>> >>> >>> On Wed, Jul 11, 2018 at 9:29 AM, Patrick McCann <osag...@gmail.com> >>> wrote: >>> >>> Hi Mark, >>> >>> Thank you for the information. This sounds like what might be happening. >>> >>> Can you provide me a quick example of the process you are describing? >>> >>> That would be very helpful in understanding how to set-up and test it. >>> >>> Thank you, >>> Patrick >>> >>> >>> On Wednesday, July 11, 2018 at 12:45:49 AM UTC-7, Mark Hogden wrote: >>> >>> We have found that many HP printer will page eject when the basic >>> program is called to change font etc, and almost always if the reset >>> command is included. >>> >>> In our experience it's generally more reliable to write out the PCL >>> commands to files and attach them to the queues using the -h option. >>> >>> On Jul 11, 2018, at 04:04, Patrick McCann <osag...@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 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. > -- -- 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.