The "number of copies" field is displayed in the SAP print dialogs (ABAP lists, SAPscripts, Smart Forms).
Entering "2" means that an original and a copy are printed. It doesn't mean that it prints 1 original and 2 copies.
It is also possible to default the number of copies by program, with and without displaying the print dialog:
- For ABAP lists, use print parameters (structure PRI_PARAMS) of ABAP statements NEW-PAGE or SUBMIT, field is PRCOP
- For SAPscripts, use OPTIONS parameter (structure ITCPO) of OPEN_FORM function module, field is TDCOPIES
- For Smart Forms, use OUTPUT_OPTIONS parameter (structure SSFCOMPOP) of SSF_OPEN function module, field is TDCOPIES
It is possible to enter a maximum of 255 copies (upper limit of the field in spool table). If you need more, print the spool again.
SAP transmits a number of copies to the output device that may be different from the real number of copies entered. It depends on the Copy Counter option defined in the output device (see below): either passing it to the output device directly, or creating a print stream containing all the copies (performance affected), or simply ignoring it.
Using SAPLPD, if the printer selection dialog is displayed, the number of copies is shown (but it cannot be modified directly, you first have to select another printer, and then it is modifiable).
If several copies are requested, SAPLPD will aggregate the print stream as many times as there are copies, and send this aggregated stream to the printer once.
For other output devices, SAP sends the command as many times as there are copies.
Note: PVP didn't bring any new function about Copies, that works exactly the same way as before (SAP didn't defer Copies functionality to vendors).
Copy Counter option of the output device
For each output device (SPAD), you define how the Copy Counter is passed to the output device:
Copy Counter option may be one of the following:
- Pass Copy Counter to Host Spool System
- Pass Copies as Separate Output Request (in SAP System): this value is to be used for Network printers, and for operating system spoolers that are not capable of printing several copies (see Note 3748). This will affect performance.
- Only Pass One Copy to Host Spool System
Note: the copy counter option is ignored when printing a smart form containing a Copies window, because the OTF driver generates one spool made of all the copies, so SAP always transmit one copy to the output device.
The Copy Counter option exists in standard since 6.10, and via Note 92482 since 3.1I.
Grouping Copies for Smart Forms
This option is available only in the Smart Forms print dialog.
- Field help (7.0): "If this option is marked, the copies are grouped for printing. Example: A form consists of three pages and you want to print it twice (copy counter = 2). Grouping means that at first the first page is printed twice, then the second page is printed twice, and at last the third page is printed twice (1-1-1-2-2-2-3-3-3). Sorting (field not marked) means that the entire form is printed as often as specified. In this example the pages would be printed in this sequence: (1-2-3-1-2-3-1-2-3)."
- If grouping is requested, the spool request is created with Copies attribute equal to the number of copies requested, and S_COPYMETH free attribute equal to "NONCOLLATE", which will be translated at printing time by the device type driver so that to create a printer file with pages reorganized (3 pages and 2 copies will give 1-1-2-2-3-3 sequence) and number of copies will not be transmitted. Of course, general performance is affected.
- If grouping is not requested, it depends whether the smart form contains at least one Copies window (even if its output condition is false or its copy type is "Original and copies - identical"):
- If no, the number of copies that is transmitted depends on the Copy Counter option.
- If yes, the spool request is created with Copies attribute equal to the number of copies requested, and S_COPYMETH free attribute equal to "COLLATE" (1-2-3-1-2-3), which will be translated at printing time by the device type driver so that to create one print stream with original and copies merged, and the Number of Copies is not transmitted to the output device (whatever the Copy Counter option is).
Remark: SAP note 1158640 may let think incorrectly that, when Smart Forms are printed, original and copies are merged into one print stream. This is wrong as explained above (it happens only when the Smart Form contains a Copies window).
1 copy is printed instead of several requested?
- Make sure Copy Counter attribute is "Pass Copies as Separate Output Request", or, as last resort, "Pass Copies as Separate Output Request", as this will affect performance (to be checked with the administrator).
- Make sure the output device understands the command
N*N copies are printed instead of N copies?
- If it's a Smart Form and you use OS/400 with kernels lower than 4.6D 2392, 6.40 229 (6.20), 7.0 156, 7.1 100, check Note 1158640 - Incorrect number of copies in spool print with Smart Forms
Infinite copies are printed?
- For OS/400, in 4.6D before kernel 864, SAP considers 10001 copies instead of 1. See Note 445967 AS/400: Incorrect Number of Copies when Printing
The "Copy window" in Smart Forms
This window type is used to output data either on original, or on copies, or both.
Using such a window means that SAP will generate one print stream containing the original and all the copies, and will tell the output device to print only one copy (the Copy Counter option of the output device is overridden with value "Only Pass One Copy to Host Spool System") as everything is provided in the print stream.
- SAP Library - Smart Forms - Copies window
- SFSY-COPYCOUNT is the Copy counter where 1 = original, 2 = 1st copy, etc.
- SFSY-COPYCOUNT0 is the Copy counter where 0 = original, 1 = 1st copy, etc.
- Note 1097022 - PDF1: Copy window error with Smart Forms: correction. The system includes only the copy window from the first copy (= original) when you print several copies in PDF.
- Note 92482 - Spool kernel patches (collective note): "Patch 28.2 copy handling for SAPGOF and RDI" (implementation of the Copy Counter attribute), "Patch 30.2 Incorrect copy counter for pool printer" (in standard from 6.10, as correction from 3.1I)
- Note 3748 - Multiple print does not work everywhere: this note says "Network printers in particular, but also occasionally operating system spoolers are not capable of printing several copies", but it isn't clear what problem there is with network printers, as SAP sends the print stream as many times as there are copies requested.