ultima
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору использую FastReport4 столкнулся с такой проблемой, хочу создать свой класс, потомком от (TfrxReport), type TmReport = class(TfrxReport) компонент создается нормально, появляется в патитре, но при запуске метода PrepareReport (явно или не явно) появляется ошибка "класс mReport не найден". Покопался в коде, ошибка вылетает в модуле frxClass.pas на procedure TfrxReport.LoadFromStream(Stream: TStream); Цитата: if ReportOptions.Info or ((not FReloading) and (not FEngineOptions.EnableThreadSafe) and (not Crypted and not FReportOptions.CheckPassword)) then Clear else if (FErrors.Count > 0) then frxCommonErrorHandler(Self, frxResources.Get('clErrors') + #13#10 + FErrors.Text); | Добавлено: поправка, ошибка происходит в модуле frxXMLSerializer.pas Цитата: IsAncestor := CompareText(Item.Name, 'inherited') = 0; | сайт fastreport'a упал, поэтому напрямую не могу обратиться Добавлено: Всё разобрался, не отробатывает FindClass, если зарегистрировать class через RegisterClasses, тогда работает. Остается вопрос зачем так сделано (в реализации используют порочный метод FindClass, и пишет в *.fr3 имя класса )??? |