Параметр неправильного размера - PullRequest
1 голос
/ 21 июня 2020

У нас есть система Delphi 2007, и мы используем компонент TCrpe для печати отчетов, созданных в Crystal Reports 2008 (файлы .rpt). В приведенном ниже коде работает нормально, как показано ниже:

vImpressora := '\\DEV-01\HP LaserJet Professional P1102w';
with DM.Crystal do begin
  CloseEngine;
  ReportName := 'Comprovante.rpt';
  ParamFields.Items[0].CurrentValue := 'Empresa XYZ Ltda';
  Printer.Name := vImpressora;
  Print;
end; 

Но теперь нам нужно преобразовать систему в Delphi 10. В приведенном выше коде CurrentValue просто перестал работать. Когда система запускает команду ParamFields.Items[0].CurrentValue := 'XYZ Company All';, генерируется ошибка:

Параметр имеет недопустимый размер структуры

Я просмотрел несколько сайтов / форумов для решения проблема, но не нашел. Это не имеет никакого смысла. Параметр в отчете является параметром типа, который печатает заголовок отчета и логически имеет тип String.

1 Ответ

1 голос
/ 21 июня 2020

Измените весь источник TCPRE, изменив String на AnsiString

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...