Member 11874411 Ответов: 1

Исключение возникло при выполнении метода printtoprinter.


Value of '-1925' is not valid for 'bottom'.'bottom' must be greater than or equal to 0.
exception occured while printing crystal report using print to printer method.


Что я уже пробовал:

POSReport = New ReportDocument()
        POSReport.Load(sfilename)


        CrystalReportViewer1.ReportSource = POSReport
        CrystalReportViewer1.Refresh()
 POSReport.PrintOptions.PrinterName = sDefaultPrinterName
            POSReport.PrintToPrinter(1, False, 0, 0)

1 Ответов

Рейтинг:
2

OriginalGriff

Прочтите сообщение об ошибке, оно не могло бы быть более ясным, если бы попыталось:

Value of '-1925' is not valid for 'bottom'.'bottom' must be greater than or equal to 0.
Итак, bottom свойство отрицательно, и CR не может работать с этим, понятно. Антибумага еще не изобретена.

Поэтому используйте отладчик и выясните, почему он отрицательный. Начните с определения того, где вы устанавливаете значение и почему вы устанавливаете его на отрицательное значение. Мы не можем сделать это за вас: у нас нет доступа к вашему приложению, вашим данным или вашему принтеру!


Member 11874411

У меня нет нигде в коде Нижнего свойства.Приведенный выше код отлично работает в какой-то системе, а в какой-то системе он выдает исключение.

OriginalGriff

Тогда вам нужно посмотреть на разницу между этими двумя системами - мы даже не знаем, сколько систем задействовано, не говоря уже о том, как они настроены!

Поэтому, если вы не можете использовать отладчик для этого, вам придется вернуться к старым методам - начать вставлять код журнала и просматривать различия между кодом в рабочих и нерабочих системах.
Мы не можем сделать это и для вас!

Member 11874411

есть ли какая-либо возможность распечатать отчет напрямую, не используя метод PrintToPrinter?

OriginalGriff

Почему вы думаете, что это сработало бы лучше, если бы было так? Проблема заключается в настройке формы, на которую печатается CR, а не в самом CR.
Вам нужно точно смотреть на то, что происходит в вашей системе в целом, а не просто беспорядочно искать патч - или он вернется и укусит вас снова, и снова, и снова ...