Home General
New Blog Posts: Merging Reports - Part 1 and Part 2

Screen printer does not support printing

edited May 2003 in General
I have a label application built with Delphi 5 RB 6.03 that works great.

So I upgraded the program to Delphi 7 with RB 7.02

Now when I use the program on a Windows 98 machine printing to an Okidata
Dot Matrix printer then it gives me this message "Screen printer does not
support printing".

The old program still works fine. What changed?

I set the following before I print.
Report.PrinterSetup.PrinterName :=
Report.PrinterSetup.PrinterNames.Strings[Report.PrinterSetup.PrinterNames.In
dexOf(dm.tPrefs.FieldByName('PrinterName').AsString)];

And yes, dm.tPrefs.FieldByName('PrinterName').AsString is a valid printer
name, as I choose it in the preferences pulled from the Report.

The strange thing is that I try it on my Windows XP machine just to a
regular InkJet printer and it works fine, but it won't work on this
customers machine, but the old version did. So I am not sure what to look
for. Any help would be appreciated?

Douglas

Comments

  • edited May 2003
    Set a break point when you assign the printer name. The message you are
    getting is when you try to call Report.Print when the
    Report.PrinterSetup.PrinterName = 'Screen.' Check your template's properties
    to make sure that you did not save down this value as the printer name,
    incase you are loading a template after you set the PrinterSetup. If so,
    then save the report template using 'Default' as the printer name. The
    screen printer name is used when the report should be paginated with the
    screen device when the report is never going to be printer on paper and no
    printer driver needs to be loaded.


    Cheers,

    Jim Bennett
    Digital Metaphors


This discussion has been closed.