We are using Delphi 7 to develop database apps with advantage as a backend. Our system is usually installed on the windows server with the pcs acting as terminals. All the settings and database are on the server.
we are having problems running our software on Citrix servers. In particular printing seems to be an issue. Both in selecting the right printer and in the formatting of the report.
We use Rbuilder version 10 to produce our reports and they are sent to a zebra label printer so not a standard windows printer driver. The reports are also of a non-standard size.
things we are seeing are stretching and shifting of the report on the page.
Has anybody seen similar behavior or has any idea of what might be causing this.
we don't have a test Citrix system so it is hard to test. We can't replicate it in a normal windows environment.
views:
262answers:
3In my experience, Citrix printing is a nightmare.
You'll want to make sure the printer you want to use is installed as a local printer on the Citrix server, then disallow use of client printers for the application. That should help getting the printer right.
Basically, you'll want to make sure you can run the application properly from the server console, then try to use it as a Citrix app.
Good luck.
On Citrix (and Microsoft Terminal Server), printers often gets "attached" after the application starts. This causes that the printer that might be nedded isent in the Reportbuilder printer list.
We have solved the problem by forcing ReportBuilder to refresh the list, when printers change using the following code (Attached to Application.OnSettingChange)
procedure TMainForm.ApplicationEventsSettingChange(Sender: TObject;
Flag: Integer; const Section: string; var Result: Integer);
begin
if uppercase(Section) = 'DEVICES' then
begin
ppPrintr.ppPrinters.Refresh;
end;
end;
Hope it solves your problem.