Хороший вариант. Но есть возможность у пользователя удалить его. И не работает на серверных версиях. Некоторые работают по rdp, а там такого варианта нет.
Сохранение отчета в PDF формате
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
-
- ✯ Ветеран ✯
- Сообщения: 5131
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 24 раза
Сохранение отчета в PDF формате
We are hard at work… for you. 

- Игорь Столяров
- Ветеран движения
- Сообщения: 7909
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 91 раз
Сохранение отчета в PDF формате
Это уже не пользователь - а вредитель какой-то !

На самом деле, как человек спросил - так ему и ответили.
По хорошему, конечно, надо проявить эрудицию и посмотреть всех. Например:
Код: Выделить всё
Printer{PropPrint:Device} = 'Microsoft Print to PDF'
If Clip(Upper(Printer{PropPrint:Device})) = Upper('Microsoft Print to PDF') then Loc:OK = True.
If Loc:OK = False
Printer{PropPrint:Device} = 'Adobe PDF Printer'
If Clip(Upper(Printer{PropPrint:Device})) = Upper('Adobe PDF Printer') then Loc:OK = True.
end
If Loc:OK = False
Printer{PropPrint:Device} = 'PDF Printer'
If Clip(Upper(Printer{PropPrint:Device})) = Upper('PDF Printer') then Loc:OK = True
else
Message(' Для экспорта отчёта в PDF установите принтер: Microsoft Print to PDF|' & |
' или переименуйте сторонний PDF принтер в: PDF Printer','У нас проблема !',Icon:Exclamation,'&1. Закрыть')
end
end
If Loc:OK = True then И вот тут уже понеслась печать на PDF принтер и т.д. ...
Make Clarion Great Again ! 
- SergioRaguzini
- Старожил
- Сообщения: 251
- Зарегистрирован: 08 Декабрь 2009, 19:16
- Откуда: Краснодарский край
- Благодарил (а): 14 раз
Сохранение отчета в PDF формате
Да, на старых версиях Windows Server нет такого, но на более новых - есть (смотрел сейчас у пользователя), но ведь можно использовать при RDP локальный ресурс - нужный нам Microsoft Print to PDF
Да, вполне достаточно, идея понятнаИгорь Столяров писал(а): ↑11 Апрель 2022, 14:05 ...На самом деле, как человек спросил - так ему и ответили.
Разумеется, когда привязываешься к определенному имени принтера, нужно проверять существует ли он на момент печати.Игорь Столяров писал(а): ↑11 Апрель 2022, 14:05 По хорошему, конечно, надо проявить эрудицию и посмотреть всех....
Спасибо
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1408
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 11 раз
- Поблагодарили: 2 раза
- Контактная информация:
Сохранение отчета в PDF формате
Или просто сделать опцию задания наименования PDF принтера, без вот такого хардкода
- Игорь Столяров
- Ветеран движения
- Сообщения: 7909
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 91 раз
Сохранение отчета в PDF формате
Сейчас это модно называть Искусственный Интеллект !

А тупо ввести название ума много не надо ...

Make Clarion Great Again ! 
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1408
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 11 раз
- Поблагодарили: 2 раза
- Контактная информация:
Сохранение отчета в PDF формате
"Искусственный интеллект" может проверить типовые имена, а затем, при отсутствии совпадения, предложить выбрать из списка или ввести название. А вот предложению переименовать принтер до искусственного интеллекта очень далеко
-
- ✯ Ветеран ✯
- Сообщения: 5131
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 24 раза
Сохранение отчета в PDF формате
Я так и сделал. Некий ИИ. Лезет в реестр и смотрит принтеры со строчкой "PDF".Игорь Столяров писал(а): ↑11 Апрель 2022, 14:05 По хорошему, конечно, надо проявить эрудицию и посмотреть всех.
Можно поподробнее? Совсем относительно недавно искал. Не было такого.SergioRaguzini писал(а): ↑11 Апрель 2022, 14:14 Да, на старых версиях Windows Server нет такого, но на более новых - есть (смотрел сейчас у пользователя),
We are hard at work… for you. 

- Игорь Столяров
- Ветеран движения
- Сообщения: 7909
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 91 раз
Сохранение отчета в PDF формате
Не судите строго - этому коду уже почти 20 лет. И всё равно эти вопросы спрашивают ...

Make Clarion Great Again ! 
- SergioRaguzini
- Старожил
- Сообщения: 251
- Зарегистрирован: 08 Декабрь 2009, 19:16
- Откуда: Краснодарский край
- Благодарил (а): 14 раз
Сохранение отчета в PDF формате
У пользователя - Windows Server 2012 и работает он по RDP, вчера заходил в его "Принтеры" и видел Microsoft Print to PDF, как будет оказия уточню - этот принтер "родной" или "локальный ресурс" от его Windows 10
-
- ✯ Ветеран ✯
- Сообщения: 5131
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 24 раза
Сохранение отчета в PDF формате
Попробовал у себя. "Локальный" принтер PDF не перебрасывается по rdp. Хотя аппаратные перебрасываются. И есть у меня подозрение, что от переброски программного принтера нет никакого смысла, работать не будет. Может я и неправ. Не знаю.
We are hard at work… for you. 

- Игорь Столяров
- Ветеран движения
- Сообщения: 7909
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 91 раз
Сохранение отчета в PDF формате
Интересный эффект после перехода на Windows 10 x64.
После экспорта отчёта на принтер "Microsoft Print to PDF" файл с отчётом в PDF не существует какое-то время,
видимо производится его дозапись в фоне. Т.е. низя его сразу открыть на просмотр.
Под Windows 10 x32 ничего подобного не наблюдалось.
Пришлось вспомнить былое и сделать вставку:
Проблема решена, но осадок остался ... 
После экспорта отчёта на принтер "Microsoft Print to PDF" файл с отчётом в PDF не существует какое-то время,
видимо производится его дозапись в фоне. Т.е. низя его сразу открыть на просмотр.
Под Windows 10 x32 ничего подобного не наблюдалось.

Пришлось вспомнить былое и сделать вставку:
Код: Выделить всё
!If Exists(wFile_) then Loc:OKSave = True.
If Exists(wFile_) then Loc:OKSave = True
else
Loop 10 times
Yield; Yield; Yield; Yield; Yield;
Win::Sleep(500) ! Ждёмс 0.5 сек.
If Exists(wFile_) then Loc:OKSave = True; Break.
end
end

Make Clarion Great Again ! 
-
- ✯ Ветеран ✯
- Сообщения: 5131
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 24 раза
Сохранение отчета в PDF формате
Не замечал такого. Сотни пользователей, никто не жаловался. Подозреваю, что проблема конкретной Винды. А чего новой библиотекой не пользуетесь?
We are hard at work… for you. 

- Игорь Столяров
- Ветеран движения
- Сообщения: 7909
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 91 раз
Сохранение отчета в PDF формате
Да проверил на нескольких разных компьютерах - везде одно и тоже ... 
В заявках за крайний год есть несколько жалоб на эту тему от пользователей.
Но у нас сделан переключатель между "Microsoft Print to PDF" и библиотекой I2PDF.
Поэтому видиимо юзеров просто переключали на I2PDF и тема до меня не доходила.
Библиотекой I2PDF пользуемся, но план Б должен быть всегда и здесь он сработал.
Мы используем для удаления WMF листов отчёта функцию для быстрого удаления файлов:
https://gist.github.com/CarlTBarnes/e5d ... ac9c432202
Похоже, что здесь тот случай, когда слишком быстрое завершение печати - тоже не очень хорошо.

В заявках за крайний год есть несколько жалоб на эту тему от пользователей.
Но у нас сделан переключатель между "Microsoft Print to PDF" и библиотекой I2PDF.
Поэтому видиимо юзеров просто переключали на I2PDF и тема до меня не доходила.
Библиотекой I2PDF пользуемся, но план Б должен быть всегда и здесь он сработал.
Мы используем для удаления WMF листов отчёта функцию для быстрого удаления файлов:
https://gist.github.com/CarlTBarnes/e5d ... ac9c432202
Похоже, что здесь тот случай, когда слишком быстрое завершение печати - тоже не очень хорошо.

Make Clarion Great Again ! 
-
- ✯ Ветеран ✯
- Сообщения: 5131
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 24 раза
Сохранение отчета в PDF формате
Я скорее всего не прав. Мой случай не показатель. Я встроил печать на "Microsoft Print to PDF" в стандартный класс. Видимо там нет проблем. 

We are hard at work… for you. 

- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 5126
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 11 раз
- Поблагодарили: 59 раз
Сохранение отчета в PDF формате
Видал это, костыли для обхода очередной проблемы в рантайме с11. В с6 все норм.Игорь Столяров писал(а): ↑15 Май 2024, 22:07 Мы используем для удаления WMF листов отчёта функцию для быстрого удаления файлов:
https://gist.github.com/CarlTBarnes/e5d ... ac9c432202
Кстати, поздравляю с переходом на 64 разрядную ОС. Это важный шаг в оптимизации работы.
C6/C11, ШВС, tps/btrieve.