Страница 30 из 30

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 04 Март 2026, 17:11
Губин Игорь
finsoftrz писал(а): 04 Март 2026, 16:59 а появляется кнопка для открытия
Это никак не связано. У меня всплывает и на единичных страницах

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 04 Март 2026, 17:53
finsoftrz
У меня только маленькие report с первого раза не открываются как pdf. Со второго раза все работает. Похоже, что причина за пределами anyscreen. Если его перезапустить, то ситуация не меняется. После общей перезагрузки сервера в первый раз не срабатывает, далее начинает работать. Причем, без разницы, какие формы, не срабатывает одна первая, потом все работают. Это для mdi. Попробовать бы еще с sdi, в принципе, может влиять. Можно, конечно, совсем отказаться от вывода в wmf, формы в excel и word передаются корректно, но это не всегда удобно.

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 04 Март 2026, 18:31
finsoftrz
Сформировал большой pdf вначале, мелкие после этого перестали открываться, до перезагрузки сервера. Походу не юзабельные report получаются. Можно попробовать еще как-то сохранять самостоятельно в pdf и передавать файл на клиента.

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 05 Март 2026, 9:23
finsoftrz
Как обойти проблему с открытием pdf.
Прописываем AnyScreen:PDFGeneration(0). Это можно сделать после запуска приложения один раз.
Вместо вызова preview (в ШВС это ReportPreview(loc:queuePrev,loc:Report,,,5)) делаем сохранение wmf страниц в pdf файл своей функцией.
У меня это функция имеет вид SaveWmfToPdf(loc:queuePrev,loc:strPrev,'1.pdf',0,1), она использует опенсорсную Image2PDF.dll и применяется для сохранения в pdf в обычных приложениях. В anyscreen имеется подобная функция AnyScreen:CreatePDFfromWMF, но у нее проблемы с кириллицей.
После формирования pdf файла на сервере открываем его через AnyScreen:OpenURL(AnyScreen:GetURL(clip(longpath('1.pdf')))).
В отличии от загрузки файла через AnyScreen:DownloadFile('1.pdf'), openUrl сразу открывает pdf файл на отдельной закладке.

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 05 Март 2026, 9:35
finsoftrz
Еще уточнение. Имя pdf файла должно быть случайное, иначе срабатывает кэширование в веб браузере.

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 05 Март 2026, 10:22
Admin
Инструменты разработчика.
Полезная фишка есть
2026-03-05_17-21-27.png

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 05 Март 2026, 10:37
Губин Игорь
finsoftrz писал(а): 05 Март 2026, 9:23 В anyscreen имеется подобная функция AnyScreen:CreatePDFfromWMF, но у нее проблемы с кириллицей
Странно. У меня как раз нормально работало...

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 05 Март 2026, 10:43
finsoftrz
У меня кракозябры. Со своей штатной функцией все нормально. Причем открытие pdf в браузере визуально существенно быстрее происходит. Если одна страничка, то прямо сразу, без крутящегося колесика с ожиданием.

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 05 Март 2026, 11:40
Игорь Столяров
finsoftrz писал(а): 05 Март 2026, 10:43 У меня кракозябры.
Это может быть связано с тем, что функции используют преобразование кодовой страницы по текущей раскладке клавиатуры.
Попробуйте для теста на момент формирования PDF переключить раскладку клавиатуры на русскую (кириллицу). 8)

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 05 Март 2026, 11:57
finsoftrz
Игорь Столяров писал(а): 05 Март 2026, 11:40
finsoftrz писал(а): 05 Март 2026, 10:43 У меня кракозябры.
Это может быть связано с тем, что функции используют преобразование кодовой страницы по текущей раскладке клавиатуры.
Попробуйте для теста на момент формирования PDF переключить раскладку клавиатуры на русскую (кириллицу). 8)
Да нет, это тут причем. На всякий случай попробовал, без разницы. Может, от настроек где зависит, anyscreen использует стандартную ClaI2PDF.DLL. Вообще, мне это не надо, работает нормально Image2PDF.dll без рукожопых адаптаций от SV.

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 05 Март 2026, 12:26
Губин Игорь
finsoftrz писал(а): 05 Март 2026, 11:57 anyscreen использует стандартную ClaI2PDF.DLL
Нифига. Я поставил на сервере нужную кодовую страницу и всё прекрасно работает. А вот стандартная реализация от велосипедистов ...

AnyScreen (форсировали Неман Бонапартовы войска) - хроника войны

Добавлено: 05 Март 2026, 12:37
finsoftrz
Мы про AnyScreen:CreatePDFfromWMF в обсуждении сместились. В доке написано, что использует "internal ClaI2PDF library". Там еще есть операторы для использования pdf принтеров. Что использует anyscreen по умолчанию при endpage и close(report), хз. У меня в этом случае тоже не было проблем с кириллицей, но были проблемы с открытием pdf файлов (не всегда с первого раза открывает).