|
|
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Сменил в D2007 FR 4.14 на 6.1.1 После первого запуска приложение компильнулось нормально, но при попытке экспорта ругнулась с AV. Удалил и заново положил те же визуальные компоненты на форму. После чего в меню экспорта Items с этими компоненты стали дублироваться по 2-3 раза. Глянул в dfm - там вроде все пристойно кусочек Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. Где еще можно копнуть? ================= Док. Win7 Ultim x64/Deb 9.3(GNOME, MATE; gtk2) i386: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2018, 03:33 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Док, в исходниках дизайнера найди место, где формируется меню вариантов экспорта. Оттуда крути - что за источник данных используется и как он формируется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2018, 07:44 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Это дважды создаются фильтры экпорта ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2018, 12:30 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Где копнуть ? Поставить бряку в Create фильтра ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2018, 12:31 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
А просто ребилд не помогает что ли? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2018, 13:23 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2018, 13:29 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Или создаётся несколько экземпляров формы/датамодуля с фильтрами экспорта. В этом случае можно перенести фильтры экспорта на главную форму ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2018, 14:09 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Док, Фильтры которые кладутся на форму регистрируются в глобальном списке. Где-то дублируется создание фильтра. А вот с AV непонятная проблема, если будет повторятся приложите стек вызовов. В целом конвертация должна быть минимальной - переоткрытие и пересохранение форм с компонентами отчета. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2018, 14:11 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
_Den_Z_Фильтры которые кладутся на форму регистрируются в глобальном списке. Где-то дублируется создание фильтра. у меня тоже сложилось такое же впечатление. В предыдущей версии,когда у меня на 3-4 формах лежало по 1 объекту TfrxReport, и никто ни с кем не конфликтовал. Теперь же кол-во дублируемых пунктов меню пропорционально кол-ву объектов frxReport. _Den_Z_А вот с AV непонятная проблема, если будет повторятся приложите стек вызовов. AV (с сообщением об обращении к адресу 000000, очевидно, к несуществующему объекту ) вылезает при вызове только некоторых пунктов (см. скрин). Видимо, придется немного переделать логику работы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 09:44 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
[quot Док]_Den_Z_В предыдущей версии,когда у меня на 3-4 формах лежало по 1 объекту TfrxReport, и никто ни с кем не конфликтовал. Теперь же кол-во дублируемых пунктов меню пропорционально кол-ву объектов frxReport. Пропорционально количеству ФИЛЬТРОВ, а не отчётов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 10:40 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Док, Как написал DimaBr , кол-во фильтров растет пропорционально созданию экземпляров этих фильтров. Если часть из них не работает (половина), то могут предположить разве что такой вариант: Фильтры создаются в нескольких местах (может на нескольких формах), но в момент создания одного из экземпляров происходит исключение (возможно в конструкторе , дальше чем идет регистрация фильтров в список). Как следствие памяти под эти фильтры не была выделена, в список они добавились, деструктор не отработал и не удалил их из списка. Если есть исходники, можно поставить точку останова в TfrxCustomExportFilter.Create на frxExportFilters.Register(Self); По стеку можно определить откуда идет создание. Возможно пытается загрузить dfm с ошибками и валится на его загрузке, но почему тогда пропускает это исключение сказать не могу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 13:46 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
DimaBrПропорционально количеству ФИЛЬТРОВ, а не отчётов монопенисуально. Все равно пришлось делать единый обработчик для всех отчетов через костыль. Потому что в нынешней версии приходится держать один отчет и по одному виду фильтра на все приложение. _Den_Z_Если есть исходники Спасибо. Как появятся сорцы в паблике на Rio, попробую на нем поэкспериментировать. D2007 стоит в виртуалке, периодические лаги при кодинге не совсем располагают к экспериментам :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 14:17 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 14:43 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
То есть на каждый созданный Фильтр создаётся пункт меню (кроме TfrxMailExport) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 14:45 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
DimaBrТо есть на каждый созданный Фильтр создаётся пункт меню (кроме TfrxMailExport) Спасибо за основательные разъяснения, для меня очень познавательно. Но я ведь не спорю, причины проблемы выяснил и исправил :) Единственно, если там есть какой-то баг (это я про AV), надо выложить тестовый проект. А его я смогу сделать, как только сорцы под D10.3 появятся (D2007 на чистую ОСь ставить нет никакого желания) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 14:56 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Я уже давно пришел к выводу, что держать более одного компонента TfrxReport на приложение - это аэпрямой путь к глюкам, сбоям и подобным дупликациям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 15:03 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
ЛюбезныйЯ уже давно пришел к выводу, что держать более одного компонента TfrxReport на приложение - это аэпрямой путь к глюкам, сбоям и подобным дупликациям. Глупость полная ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 15:34 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Любезный, Никаких проблем это не должно создавать. Только стоит учитывать, что если это интравебовски дата модуль, который создается из потока, то отчет лучше создавать из кода. По умолчанию для реализации делфийской компонентной модели (когда компоненты разбросаны по разным формам) используются глобальные списки для компонентов экспорта и датасетов. Через код все это отключается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 16:11 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
_Den_Z_Через код все это отключается. как, например? зы. ко всем: на сайте FR есть user's manual. А есть аналогичный developer's manual? Или о назначении свойств придется по исходникам догадываться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 17:12 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Док> зы. ко всем: на сайте FR есть user's manual. Док> А есть аналогичный developer's manual? Раньше точно был. И в комплект доки входил отдельным PDF-ом. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 19:39 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Доккак, например? зы. ко всем: на сайте FR есть user's manual. А есть аналогичный developer's manual? Или о назначении свойств придется по исходникам догадываться? Можно воспользоваться старым , там эти св-ва есть. "1.22 Multithreading Page 22" Для 6ки Девелопер и Программер сейчас переписываются. Если коротко: Report.EngineOptions.UseGlobalDataSetList := False - отключает использование глобальных датасетов этим экземпляром TfrxReport. Но придется добавлять датасет вручную : Report.EnabledDataSets.Add(frxDataSet). Report.EngineOptions.EnableThreadSafe := True; отключает всякие ProcessMessage которые используются для синхронизации в главном потоке. Чтобы фильтры не регистрировались их нужно создавать из кода TfrxPDFExport.CreateNoRegister, тогда правда его придется ручками регистрировать для просмотра в frxExportFilters.Register(Filter) (но в потоках оно не нужно, там Report.Export(Filter)). Для потоков лучше использовать последний 6.2.X. Там даже у превью убрал глобальный инстанс рендера текста. Осталось принтеры почистить, чтобы еще совместимость не убить старым пользователям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 19:40 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
_Den_Z_> Можно воспользоваться старым Я не понял, релиз сорцов выходит отдельно от доки что ли? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 21:00 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамЯ не понял, релиз сорцов выходит отдельно от доки что ли? Дока есть и была выложена с релизом. Сейчас занимаемся обновлением, т.к. после релиза были изменения. Отсутствие некоторых мануалов на странице на сайте это ошибка на сайте, поправим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 21:28 |
|
||
|
FastReport: дублирование пунктов меню
|
|||
|---|---|---|---|
|
#18+
_Den_Z_Можно воспользоваться старым , там эти св-ва есть. "1.22 Multithreading Page 22" Для 6ки Девелопер и Программер сейчас переписываются. Спасибо, даже русский вариант отыскался методом тыка :) Но, коль, существенные изменения произошли в 6-ке, с интересом жду релиза доков по ней. Пока вышел из положения тем, что сделал 1 глобальный отчет с фильтрами для всех форм. А загрузку шаблонов и заполнение некоторых свойств (InitialDir, FileName и проч.) сделал локально в формах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2018, 22:31 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=87&tid=2040019]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
46ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 334ms |

| 0 / 0 |
