Knowledge Base

Sending more labels in one batch (Session print)


NiceLabel software will help you optimize the printing performance in several levels: from the aspect of a label design, to creation of the print file and sending it to the printer. This article focuses on a task to generate the printer-data for all labels in a batch into a single print file. Because all data is sent as one big file instead of several chunks, the result is less data overhead in the printer and faster processing inside the printer. Labels print out faster. We call this process session print.

There is additional benefit using session printing with printers that print on sheets of labels (inkjets, lasers), not rolls of labels. All the labels inside a session print will print continuously, without ejecting the page between the labels. All provided data will print continuously on a single page, and if necessary continue on the next pages.

Session print is also useful when printing to network printers, which are shared by many users. All labels in the same session from one user will print consecutively. The labels from other network users will not print between your labels. This can easily happen, if you send labels individually to the printer, not as one big print file.


NiceLabel software automatically enables the session print technology to minimize the communication with the printer. So in most cases you don’t need to change anything, just be careful not to break the possibility of using the session print.

There are some rules under which the session print can be enabled:

  • Use only one label template (.LBL file).
  • Do not use the following actions: Set printer, Close label, Send custom commands, Run job or Visual Basic Script.
  • You cannot use NiceCommands SETDATABASE and SETTABLE within a session
  • If you use actions Set printer or Use label, the session print can only start if the value of the action doesn't change (the printer name or label name remains the same). If the value changes, the existing session will end and another session will start causing two (or more) print files sent to the printer.

For example, to print all selected records from a table in a NiceForm application, the Print button would have the following actions defined:

    Open label
            Set printer
            For every record in a table
                    Print label

Make sure the actions are nested within one another. Open label is in the 1st level, Set printer and For every record in a table in the 2nd level, and Print label in the 3rd label (nested below For every record in a table).

If you use NiceLabel's command files (e.g. .JOB, and similar), you can force session printing using commands SESSIONSTART, SESSIONPRINT, SESSIONEND. The same rules as mentioned above apply. See NiceLabel Pro help for more information.

If you use the print engine from NiceLabel SDK, you can force session printing using commands LabelSessionStart, LabelSessionPrint, LabelSessionEnd. The same rules as mentioned above apply. See NiceLabel Programming Guide for more information.

Additional reading:

Print document   Email document


Did this article help you? *