Previous Thread
Next Thread
Print Thread
copies #759 10 Nov 10 12:00 AM
A
Anonymous
Unregistered
Anonymous
Unregistered
A
We have a laser printer used exclusively for printing invoices- which are 2 parts- a white and a yellow. For an invoice we select the printer and ask for 2 copies- which are not collated as invoices may run several pages and we print 2 copies of page 1 (white&yellow)- 2 copies page 2 (white and yellow) etc. This is done as gdi. In order to save warehouse personnel hassle of asking for 2 copies I tried to print directly to printer using print "printer name=invoice_name/copies:2". This collates, which I do not want. Is their a command in gdi that would print multiple (in this example 2) copies of a page- rather than collating?

Re: copies #760 11 Nov 10 12:16 PM
Joined: Jun 2001
Posts: 11,645
J
Jack McGregor Online Content
Member
Online Content
Member
J
Joined: Jun 2001
Posts: 11,645
Sorry for the delay on this. I meant to investigate it yesterday but got sidetracked. I'll have to admit that collating is a feature that has essentially ignored in A-Shell GDI printing. I guess that I thought that you could use the driver properties dialog to take care of it, i.e.:

[Linked Image]

[Linked Image]

But on testing it now, it seems to have no effect.

Presumably to really handle it properly, we would need a new switch for PRINT.LIT (/{NO}COLLATE), and a pair of new switch values for SPOOL.SBR (EZSPL.SBR) , plus possibly printer init commands to go along with them.

I guess I have to put that on the wish list.

Re: copies #761 02 Mar 11 12:36 PM
Joined: Jun 2001
Posts: 11,645
J
Jack McGregor Online Content
Member
Online Content
Member
J
Joined: Jun 2001
Posts: 11,645
FYI, the collate issue remains unaddressed, but 5.1.1208.0 does add an improvement to the way copies are handled in the ATE environment (which may indirectly affect the collating issue). See the ashdevnotes.txt for details.

Re: copies [Re: Anonymous] #32301 11 Feb 20 05:27 PM
Joined: Aug 2016
Posts: 329
J
John Andreasen Offline
Member
Offline
Member
J
Joined: Aug 2016
Posts: 329
We have a similar situation to this with the multi-colored paper. Just wondering if there was any changes to support uncollated copies, and what the change in ATE might have been that might have indirectly affected this (as I can't find the dev notes from that long ago)?

Re: copies [Re: Anonymous] #32302 12 Feb 20 05:25 AM
Joined: Jun 2001
Posts: 11,645
J
Jack McGregor Online Content
Member
Online Content
Member
J
Joined: Jun 2001
Posts: 11,645
FWIW here are the notes in question, preserved in silicon-amber...

Quote

3.
---
Aux printing enhancement: When both the server and ATE are at edit 1208+
and the server-side printer-init option PRTCOPIES is FALSE (this is the
default for UNIX and whenever DEVICE=AUXLOC:), the server will now
send just one physical copy of the printfile to the aux port and
will tell the client how many copies to print. The previous method, in
which multiple copies were generated on the server side, unbeknownst
to the client, remains in effect for non-ATE clients and whenever
either the server or ATE client is older than 5.1.1208, and when
PRTCOPIES=TRUE on the server side.

The motivation for adding this further bit of confusion to an already
confusing area is to overcome three negative aspects associated with
generating the copies on the server side:

a. If the server generates the copies, the client doesn't realize it
has more than one copy, and thus if displaying a printer dialog,
would show only one copy, which can confuse the user (who is expecting
multiple copies). If the user tries to "correct" the number of copies,
the result would be copies upon copies (e.g. 4 instead of 2, 9 instead
of 3, etc.)

b. APEX would show a single document consisting of the concatenation of
the multiple copies. For example, if the original document had 4 pages
and 3 copies were requested, APEX would show a 12 page document. (If
you then redirected this to a non-paper device, like a PDF writer, you'd
end up with a document containing the multiple sets of pages, which is
silly.)

c. Sending the original printfile to the client multiple times is not
particularly efficient, and could cause significant delays for large files.

4. ATE command set enhancement: The AG_SPOOLCFG command now supports an
optional copies parameter:

TAB(-10,AG_SPOOLCFG);file,ptr,fsize,internal,switches,copies;chr(127);

If copies is not specified, the default is 1. The value will be used by
the ATE client to generate multiple copies of the subsequent printfile
send via the AUXLOC: mechanism.

This feature is primarily used within A-Shell when processing AUXLOC:
printing requests. If used directly by an application, you should first
verify that the client is ATE 5.1.1208.0 or higher (see MX_GETVER).
There is no harm in sending the copies parameter to older versions of ATE,
but it will have no effect (and thus the extra copies won't be generated).

5. Windows printing bug fix: Close a loophole which, in some obscure
cases (depending on the printer driver and/or the sequence of events),
requesting multiple copies in the printer dialog would result in both
A-Shell and the printer driver generating copies (thus yielding the
square of the desired number of copies, i.e. 4 instead of 2).


I couldn't find any explicit reference to this in the docs, but in the source I could see that at one time the collate option in the printer selection dialog had been enabled, which appears something like this:

[Linked Image]

I tried re-enabling it and played with it a bit, but it's starting to come back to me why I may have disabled it -- because the combination of implementation variations from version to version of Windows along with overlapping sets of API functions which handle it differently has made something that should be simple abominably complex. But I've started tip-toeing into it again. I'm envisioning we'll need a new printer init directive COLLATE (default on, since that's the way copies have always worked in the past, 123,123,123... rather than uncollated or 111,222,333). Note that technically the driver can't do collation unless PRTCOPIES is off, since when it is on, the application is the one handling the copies, not the printer. But not all printer drivers support collation (or non-collation), which then raises the question of whether A-Shell to also offer the option of doing it independently. crazy


Moderated by  Jack McGregor, Ty Griffin 

Powered by UBB.threads™ PHP Forum Software 7.7.3