cancel
Showing results for 
Search instead for 
Did you mean: 

Zebra 105SL and Crystal Report label issues

nancy_budd
Participant
0 Kudos

We have a report designed in CR2008 SP6 Fix Pack 6.2 to print labels to a label printer.  The report is designed as 4" x 4" label.

We have a VB.NET executable that uses the Crystal Developer for Microsoft Visual Studio SP6 properties and methods to generate the report.  Specifically using the load and printtoprinter methods.  Our end users use this vb.net executable to print their labels.  We prompt for a printer using the PrinterDialog and then set the System.Drawing.Printing.PrinterSettings and PageSettings based on the values selected in PrinterDialog.  We then pass the System.Drawing.Printing. PrinterSettings and PageSettings as arguments into CrystalDecisions.CrystalReports.Engine.ReportDocument.PrintToPrinter

We have the No Printer option checked in this report because if we do not then we found, when our end user tries to run the report, the vb.net exe will try to look for the printer we used to develop the report.  This would sometimes cause a Load Report Failed error because it would time out trying to find our printer which our end user does not have.  Each of our end users could have a different printer than what we develop with, so after designing, we select No Printer and save the report.

I am now seeing and trying to understand, based on this article from July 2013:  http://search.sap.com/ui/notes?id=0001893509&boj=/sap/bc/bsp/spn/scn_bosap/notes.do?access=69765F6D6...

It sounds like:

We can no longer have one generic report to print to any zebra printer? 

*  We must now create a version of a report for every Zebra print driver that is available and deploy all of those reports

*  Modify our vb.net program to look for the print driver on the printer the user selected  and then somehow know which report is the correct report to

    load and print so there are no Zebra printing issues?

Am I understanding this correctly?  If so, then this will cause us quite a bit of trouble.  We have no control over what printers our end users purchase nor what drivers they use, and we do not want to limit them.

The issue they are having, with this runtime version of Crystal and this Zebra 105SL is that, with the Zebra driver (v7.3.6), the printer will variably not print a label for an item, but then duplicate (or triplicate) a label for another item.  It is as though the buffering is not correct.  Our reports run SQL Stored procedures, and we can see the correct number of labels when we run the SQL stored procedure.  But when the report prints out, it does not print some of those items, but then will duplicate others.  Zebra says it is a Crystal Reports issue.  If the customer switches to the Seagul Scientific print driver then the items do not skip, but they print horizontal at 2" x 2" and even if they change the label to the required 4" x 4" in the printer properties, the label still prints x" x 2" horizontal.  Can you please answer this?

So there are a couple of items here we need help with here.  The issue with the Zebra printer not printing some labels and duplicating others, and then the issue based on the link above.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

See this:

Thanks,

DJ

Answers (1)

Answers (1)

0 Kudos

Hi NB,

Moved your post to the .NET SDK forum.

Install SP 12 and there are some new properties available in the PrintOptions collection, it will now save the printer info as well as paper size within the RPT. YOu will need to get the latest version of CR Designer to update this info.

Here is an example of the new API's and info saved in the RPT:

Note the Paper Name, CR always looked for the ENUM for paper size, with the update it will now look for the Paper Size Name, so if you are using a custom paper size Name the SDK and printControl.dll will simply find it and use it by name if the ENUM's do not match.

One issue is the Zebra Printer driver does no give you the ability to set the ENUM like the Seagull Scientific driver does. If you can use it it may help.

So first thing you need to do is download CR for VS ( 2010, 2012 and 2013 ) SP 12

http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_13_0_12.exe

If you use the new API's and get the info you can write code to go get the local Printers collection and set accordingly. You have to use your own print button though until you update the CR Designer version that saves this info in the RPT file.

Requirements are, do NOT use No Printer and check on Dissociate. Dissociate may work for you also as is, it basically removes the dependency on that specific printer and looks for the "family" of printers.

For more info see all 3 printer Doc's:

Don