powered by simpleCommunicator - 2.0.44     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
25 сообщений из 220, страница 7 из 9
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229565
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanDimaBrпропущено...

В 2010 г. демонстрировали FR5, в котором границы соседних мемок перемещались синхронно. Подожди ещё пяток лет, будет тебе счастье
Выбрать весь ряд и двигать за правый нижний угол разом все - не то?
Оно было бы близко к желаемому, если бы результат такого изменения "выбрать и двигать за правый нижний угол" получился бы пригодным для дальнейшего редактирования. К примеру, было три ячейки по 2 см шириной, выделяешь этот блок 6см, растягиваешь на 5мм, в итоге каждая ячейка становится шире на 5/3. Все хорошо пока не попытаешься пару таких ячеек поменять местами: ячейки выравниваются по сетке 1мм, но сетка для каждой ячейки своя, не "абсолютная", а относительно текущего положения ячейки, которое также кратно 5/3. В итоге получаешь столько гемора, что проще каждую ячейку руками растянуть.
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229569
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А еще этот идиотизм генерации нового имени объекта в дизайнере при copy/paste: в дизайнтайме всякий раз вываливается исключение "Повторяющееся имя".
Кто, интересно, автор такого чЮдесного кода?
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229575
Фотография Exteris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДА еще этот идиотизм генерации нового имени объекта в дизайнере при copy/paste: в дизайнтайме всякий раз вываливается исключение "Повторяющееся имя".
+1. Раздражает неимоверно.
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229580
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ExterisчччДА еще этот идиотизм генерации нового имени объекта в дизайнере при copy/paste: в дизайнтайме всякий раз вываливается исключение "Повторяющееся имя".
+1. Раздражает неимоверно.
Давно такого не встречал. Вы про какую версию гуторите?
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229584
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
раз пошли такие откровения от саппорта
случаем в пятерке не исправили наконец механизм "обработки" исключений?
сам свежекупленное еще не качал и не смотрел

P.S. спасибо, что продолжаете поддерживать "устаревшие" версии дельфы
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229590
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanExterisпропущено...

+1. Раздражает неимоверно.
Давно такого не встречал. Вы про какую версию гуторите?
FR4.
Посмотрел код FR5 - код
Код: pascal
1.
procedure TfrxClipboard.Paste;


не изменился.
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229593
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДwadmanпропущено...

Давно такого не встречал. Вы про какую версию гуторите?
FR4.
Посмотрел код FR5 - код
Код: pascal
1.
procedure TfrxClipboard.Paste;



не изменился.
В FR4 проверил, имя при вставке инкрементируется.
Как воспроизвести, чтоб сообщение вышло?
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229595
Умбалансед Парантхезиз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanчччДпропущено...

FR4.
Посмотрел код FR5 - код
Код: pascal
1.
procedure TfrxClipboard.Paste;



не изменился.
В FR4 проверил, имя при вставке инкрементируется.
Как воспроизвести, чтоб сообщение вышло?
Создай проект VCL, брось на форму TfrxReport и TfrxDesigner, в обработчике OnCreate формы напиши:

Код: pascal
1.
  frxReport1.DesignReport();



Запусти проект из-под Delphi. Брось на форму отчета мемку (например), потом попробуй скопипастить ее.
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229597
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД...идиотизм генерации нового имени объекта в дизайнере при copy/paste: в дизайнтайме всякий раз вываливается исключение "Повторяющееся имя".
...
В рантайме при дизайне отчета в проекте, запущенном "из-под Delphi".
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229602
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Умбалансед Парантхезиз, все, кроме memo1 вставлены. Никаких ошибок.
Не исключено, конечно, что я поправил этот момент. Много чего уже исправлено, всё и не упомнишь. :)
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229605
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman,

посмотри, пожалуйста, в классе frxClass процедурку

?
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
procedure TfrxComponent.SetName(const AName: TComponentName);
var
  c: TfrxComponent;
begin
  if CompareText(AName, Name) = 0 then Exit;

  if (AName <> '') and (Report <> nil) then
  begin
    c := Report.FindObject(AName);
    if (c <> nil) and (c <> Self) then
      raise EDuplicateName.Create(frxResources.Get('prDupl'));
    if IsAncestor then
      raise Exception.Create('Could not rename ' + Name + ', it was introduced in the ancestor report');
  end;
  inherited;
end;

...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229609
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДпосмотри, пожалуйста, в классе frxClass процедурку
Он примерно такой же, но дело, мне кажется не в этом коде, а там где идет вставка в дизайнере и, соответственно, поиск нового имени.
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229611
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, прекрасный код!
Код: pascal
1.
2.
3.
4.
5.
procedure TfrxDesignerForm.TimerTimer(Sender: TObject);
begin
  PasteCmd.Enabled := FClipboard.PasteAvailable or (FPage = nil);

end;


Нужно будет как-нибудь рассказать им про TActionList.OnUpdate...
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229612
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Часть кода вставки в TfrxClipboard
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
      if FDesigner.IsPreviewDesigner then
        NewComp := FDesigner.Report.FindObject(NewCompName) as TfrxComponent
      else
        NewComp := FDesigner.Report.FindComponent(NewCompName) as TfrxComponent;
      if ((NewComp <> nil) and (NewComp <> c)) or (NewCompName = '') then
        c.CreateUniqueName
      else
        c.Name := NewCompName;

...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229616
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanЧасть кода вставки в TfrxClipboard
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
      if FDesigner.IsPreviewDesigner then
        NewComp := FDesigner.Report.FindObject(NewCompName) as TfrxComponent
      else
        NewComp := FDesigner.Report.FindComponent(NewCompName) as TfrxComponent;
      if ((NewComp <> nil) and (NewComp <> c)) or (NewCompName = '') then
        c.CreateUniqueName
      else
        c.Name := NewCompName;


Нет, эта проверка выполняется уже позже, после исключения в ReadComponent(). А имя компонента формируется в
Код: pascal
1.
function TfrxXMLItem.GetProp(Index: String): String;



Ну, ладно.
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229623
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДНу, ладно.
Чтение имени перед этим кодом:
Код: pascal
1.
2.
3.
4.
5.
  var
  NewCompName: string;
  NewComp: TfrxComponent;
///
  NewCompName := RootItem.Prop['Name'];


То есть 19136842 c.Name либо с этим именем будет, либо ему присвоится уникальное имя.
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229628
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman,

ты точно копипасте в рантайме тестировал?
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229634
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДты точно копипасте в рантайме тестировал?
Точно. Бросил на форму отчет с дизайнером и запустил. Прям как тут 19136736 описано.
Скрин от приложения с названием Project1. :)
Сейчас еще попробовал: выбрал 38 мемов и разом вставил.
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229638
gpi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДwadman,

ты точно копипасте в рантайме тестировал?
Для воспроизведения нужно редактировать отчёт в рантайме под отладчиком. Если запустить уже скомпилированный еxe вне IDE, то подобных сообщений не будет. Вот только в чём необходимость редактирования шаблонов под отладчиком?
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229641
delphinotes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
К комментам:
DimaBrdelphinotesТ.е. FastReport используется для показа пользователю диалога с параметрами, эти параметры отдаются в запрос, результат запроса - в отдельном окне с гридом. Движок генератора отчётов при этом не используется.

Зачем тогда городить это в Фасте ?

Гаджимурадов Рустамdelphinotes> результат запроса - в отдельном окне с гридом.
delphinotes> Движок генератора отчётов при этом не используется.

Не понял. Окно - это своя форма (формируемая FS-ом
или заранее подгтовленная - неважно) или форма FRa?
Если первое, то зачем же тут FR и FS, они тут явно лишние.
Всё то же самое можно и нужно делать обычным способом.

Если из FR берётся "диалога с параметрами" - ну так можно
его и не из FR брать, хоть формы фильтра QueryBuilder-ов
или даже гридов (девки и др.). Более того, в гридах есть
свои "предпросмотры" с печатью и экспортом в Excel.

Не, вы не поняли. У нас клиенты разные. И задачи, хоть и схожие, но в деталях - разные. А приложение - одно на всю нашу клиентскую базу.
Общий, так сказать, функционал реализуется красиво с точки зрения юзабилити, без FR.
А вот частные случаи - их проще и быстрее реализовать в отчёте. Ну например, БД синхронизирует какой-то справочник с внешней системой, и пользователи хотят его время от времени просматривать (причём это частный случай - у других наших клиентов этого справочника в БД может и не быть.)
Можно пойти классическим путём - написать запрос, сделать формочку, добавить пункт меню. И попросить пользователя обновить приложение. А потом он попросит ещё пару столбцов добавить в результат - снова через обновление приложения. А потом данных будет много и он попросит добавить фильтр - снова через обновление приложение.
А можно воспользоваться FastReport'ом - создаём отчёт, который сохраняется в БД клиента и для его вызова автоматически добавляется пункт меню в приложении; отчёт состоит из диалога с запросом параметров, и пользователь жамкнув ОК видит результат (уже в следующем окне с гридом). С точки зрения юзабилити - оно не очень. Но пользователю не надо обновлять приложение, необходимые правки вносятся оперативно (более того, пользователи сами могут такой "отчёт" быстро поправить).
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229644
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman,

а fr4 у тебя какой (минорной) версии? В файле changes.txt посмотри, пожалуйста.
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229650
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДа fr4 у тебя какой (минорной) версии? В файле changes.txt посмотри, пожалуйста.
gpi всё объяснил. Так и есть, под отладчиком эта (и любые другие) гадость вылазит, а без него ошибки складываются в
Код: pascal
1.
2.
3.
4.
      except
        on E: Exception do
          FErrors.Add(E.Message);
      end;
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229654
gpi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gpiВот только в чём необходимость редактирования шаблонов под отладчиком?
Там ещё куча сообщений вываливается в таком режиме: и с датасетами, и с internal-датасетами, с кроссами, при экспортировании
Проще нажать Run Without Debugging в IDE
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229655
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanчччДа fr4 у тебя какой (минорной) версии? В файле changes.txt посмотри, пожалуйста.
gpi всё объяснил. Так и есть, под отладчиком эта (и любые другие) гадость вылазит, а без него ошибки складываются в
Код: pascal
1.
2.
3.
4.
      except
        on E: Exception do
          FErrors.Add(E.Message);
      end;



Ну, дык 19136748 .
...
Рейтинг: 0 / 0
Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
    #39229656
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДа fr4 у тебя какой (минорной) версии?
4.14. У меня версия сильно патченная, потому с некоторых пор перестал обновлять. Дорого выходит.
...
Рейтинг: 0 / 0
25 сообщений из 220, страница 7 из 9
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Релиз FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]