Printing - Crystal Reports Configuration - Printer List

I’m currently building a new 4.1, SP5, Patch 11 test system. Our current production system is 3.1, SP6, FP4 so this is my first exposure to the 4.0/4.1 environment. My dilemma pertains to printing. I’ve reviewed the manuals, looked at other posts, and searched the web; however, I’m not finding the information I need to clear this up. I’ve tested several scenarios but the reports keep failing with “invalid printer specified”. Though most of our output is sent via email or written to unmanaged disk, we have almost 300 possible printers so this is a big undertaking for us.

  • It appears to me that we now need to not only define printers to the server but also to the Printer List within the Crystal Reports Configuration Application screen. Is that correct?

  • In the 3.1 environment, we didn’t need to define all of our network printers to the server; however, it appears that since we may need to add them to the Printer List that we’ll also need to define them to the server. Does anyone know if that’s correct?

  • When adding printers to the Printer List, is there a specific ID that needs to be used? For instance, do we need to use the primary ID that is assigned to the Business Intelligence SIA or can we use any ID that has Administrator access?

  • Does the format of the printer name in the Printer List need to match exactly to the printer name on the server. i.e. Is it case sensitive?

  • Do we include the server name if the printer isn’t defined locally? For instance, if the printer is \XXPRN01\Printer1 (where XXPRN01 is the print server name), is that exactly what we code in the Printer List or can we simply put Printer1?

  • Do we code anything in the Printer Connection field? If so, when?

  • Most of our printers are defined locally and don’t print but simply write a PCL file to a specific server for other software to process and print it. Are the local printers named differently in the Printer List? For instance, we have a local printer named ap001, would we then call it ap001 or \ap001 in the Printer List?

  • If a printer is specified within the Crystal Report does that impact it when running within BI 4.1? For instance, if the report specifies one printer name but when it’s scheduled it’s set to go to another printer will that cause the report to fail?

I’m not really sure why SAP has chosen to make this change but to me it’s somewhat archaic. I just can’t understand why we need to code printers internally when they’re already defined to the server.

I would appreicate any help anyone can give me.

Thank you!


Roxy21 :us: (BOB member since 2008-10-15)

It isn’t clear from your post how you are running the reports to get the error. Do you schedule reports to be printed?
We don’t allow this option here primarily because our Server Team does not want to install and maintain printer drivers on the servers.

Because we do not schedule reports to be printed, we instruct our report developers to select the “No Printer” option for the printer driver. The only time we see the error you are getting is if we open a Crystal Report on the server that has a printer specified. We see the error because the drivers for the specified printer are not installed on the server. The only printer driver on our servers is the default Microsoft XPS Document Writer.

Because we don’t use the printing functionality, I can’t be of much more help to you. It does look like you are on the right track though. I will answer your questions with my assumptions if that is OK.

It makes sense that both of these would be needed. The printers need to be defined on the server so the server know what the printer is and where it is located. The printer needs to be defined in the Print Settings of the report parameters so that Business Objects knows which printer to use when the report is run.

See answer to the above question, I think these two configuration settings must go hand in hand.

I’m not sure that I follow this question. I don’t understand what you mean by “ID”. I think you may mean a User ID. I don’t see exactly where this would be specified. I would assume that it would be best to use the ID the your SIA is running under because that is the ID that will be processing the reports.

I also assume that entries are case sensitive. It has been a programming practice of mine since I started programming since some were case sensitive and other are not. Since Java is case sensitive and there is a lot of Java used with Business Objects, I would make sure that everything is entered as case sensitive.

This would probably need to be tested both ways. I would assume that you would only need to include the server name for the printer when you are configuring it on the server and then you would use the name as displayed on the “Printers and Devices” screen in the Printer List. (This is Windows terminology, you don’t state if you are running on Windows or not.)

I assume that by “local printer” you mean local on the Crystal Report developers machine, I would assume that you would use what is displayed in their local Printers and Devices screen, (again, Windows terminology) so it would be ap001. I would hope that this would be the same name the printer would have when you configure it on the server also.

It is possible that it would fail, this is something that should be tested though. Something that could be just as bad though is it could change the formatting of the report. I’ve seen lots of cases where a report was designed referencing one printer and when printed on a different printer, has some formatting differences. I would try to print the report to the same printer is was designed for to eliminate any unwanted format changes.

Hope this is of some help. It always a little awkward commenting on functionality that I don’t use. It looks like you’ve done a lot more research on this that I have time to do. My best advice is to configure one printer and do testing to find the settings that work.

This was a correct assumption.

This, too, was a correct assumption. All printers will need defined to the server as well as added to the Printer List within the Crystal Reports Configuration applications screen. This will be quite a chore for us. We tried copying them over from our 3.1 environment but since it’s running on a 2008 R2 server we had compatibility issues when trying to copy the data over to a 2012 R2 server. So, not only will we have to add them to the Printer List, we’ll also have to manually add all of them to the server (bummer).

The printers had to be added to the Printer List using the Administrator (Enterprise authentication) userid. Otherwise it wouldn’t work.

The names are definitely case sensitive.

For network printers, the server name is included. Our solution was \PrintServerName\PrinterName (in both the Printer name and Printer connection fields).

For local printers (i.e. local to the Business Intelligence server), the printer name is simply what you called it. An example would be Roxyprinter. No quotes, no back slashes, nothing…just the name in both Printer name and Printer connection.

I found this wasn’t an issue. I had a Crystal Report where printer XYZ was defined to it then published it within BI 4.1 and set it up to go to printer ABC. I ran the report and it went to the printer defined within BI 4.1; ABC.

My root problem ended up being the userid the SIA was running under. When setting up the test environment I had kept it to one SIA (per directions from above me). Though I didn’t agree, sometimes you do what you’re told just to show what happens. I ended up setting up an additional SIA (the same as our current 3.1 production system) and had it running under the same userid 3.1 was using. After doing this printing as well as a few other things started working.

In case you’re wondering why we have multiple SIAs with different userids we did it as a means of security. We’ve had this setup (or something similar) since at least XIR2 and it has proven itself useful. Our CMS as well as a lot of other servers within BO/BI run under one userid whereas our job servers run under another. The userid for the job servers has a different security access then the one that accesses the CMS.

I’m sorry it took me so long to get back to replying to this. I’ve been busy, busy, busy with this 4.1 environment.

Thanks!


Roxy21 :us: (BOB member since 2008-10-15)