Формирование отчетов из MS Word файлов
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
-
- Старожил
- Сообщения: 226
- Зарегистрирован: 10 Ноябрь 2005, 23:07
- Откуда: Краснодар
- Благодарил (а): 4 раза
Формирование отчетов из MS Word файлов
Здравствуйте!
С наступившими и грядущими вас!
Есть ли у нас в сообществе наработки или хотя бы мысли по поводу выведения в отчетах документов MS Word?
С наступившими и грядущими вас!
Есть ли у нас в сообществе наработки или хотя бы мысли по поводу выведения в отчетах документов MS Word?
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Re: Формирование отчетов из MS Word файлов
Добрый день !
Да, конечно. Самый простой способ - сформировать шаблон отчета в MS Word (OO Writer), расставить в нем поля для заполнения, а потом из программы формировать отчет на основании этого шаблона (заменить поля на реальные данные). В результате получится полноценный документ MS Word / OO Writer. По вкусу - можно его либо сразу напечатать, либо вывести в режиме предварительного просмотра, либо сохранить как файл или конвертнуть в PDF средствами MS Word / OO Writer (в отличии от "клариновского" PDF в нем будут шрифты, что обеспечивает просмотр на любом компе). Да и пользователям проще редактировать шаблоны отчетов в MS Word / OO Writer ...
Да, конечно. Самый простой способ - сформировать шаблон отчета в MS Word (OO Writer), расставить в нем поля для заполнения, а потом из программы формировать отчет на основании этого шаблона (заменить поля на реальные данные). В результате получится полноценный документ MS Word / OO Writer. По вкусу - можно его либо сразу напечатать, либо вывести в режиме предварительного просмотра, либо сохранить как файл или конвертнуть в PDF средствами MS Word / OO Writer (в отличии от "клариновского" PDF в нем будут шрифты, что обеспечивает просмотр на любом компе). Да и пользователям проще редактировать шаблоны отчетов в MS Word / OO Writer ...
За теми кто отстал - не возвращаться. (С) Кодекс
-
- Старожил
- Сообщения: 226
- Зарегистрирован: 10 Ноябрь 2005, 23:07
- Откуда: Краснодар
- Благодарил (а): 4 раза
Re: Формирование отчетов из MS Word файлов
Спасибо, Игорь, за отклик!
Задача немного проще. Имеются файлы в формате MS Word, которые формирует пользователь. Задача кларион-программы – собрать из определенных файлов в нужной последовательности единый PDF документ. Документ редактированию не подлежит. Должна быть возможность просмотра этого документа на любой платформе, входящими в комплект поставки ОС или бесплатно скачиваемыми средствами. На сегодняшний момент мы пытаемся реализовать это с помощью фришного PDFCreator’а. От штатного PDF драйвера мы отказались практически сразу. На сегодняшний день проект уже полностью готов, за исключением 2х моментов, один из которых – загрузка информации из файлов формата MS Word в детайл кларионовского отчета. Опыт в этом направлении у нас нулевой. Просим у сообщества помощи!!!
Задача немного проще. Имеются файлы в формате MS Word, которые формирует пользователь. Задача кларион-программы – собрать из определенных файлов в нужной последовательности единый PDF документ. Документ редактированию не подлежит. Должна быть возможность просмотра этого документа на любой платформе, входящими в комплект поставки ОС или бесплатно скачиваемыми средствами. На сегодняшний момент мы пытаемся реализовать это с помощью фришного PDFCreator’а. От штатного PDF драйвера мы отказались практически сразу. На сегодняшний день проект уже полностью готов, за исключением 2х моментов, один из которых – загрузка информации из файлов формата MS Word в детайл кларионовского отчета. Опыт в этом направлении у нас нулевой. Просим у сообщества помощи!!!
- morkovin
- Ветеран
- Сообщения: 909
- Зарегистрирован: 20 Июль 2005, 14:53
- Откуда: Volgograd, Russia
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
- Контактная информация:
Re: Формирование отчетов из MS Word файлов
Если бы это были RTF-файлы, то задача вполне решаема с помощью RichReport от SolidSoftware.выведения в отчетах документов MS Word?
WBR, morkovin
-
- Старожил
- Сообщения: 226
- Зарегистрирован: 10 Ноябрь 2005, 23:07
- Откуда: Краснодар
- Благодарил (а): 4 раза
Re: Формирование отчетов из MS Word файлов
Пользователь, который и будет формировать и редактировать исходные внешние файлы, требует:morkovin писал(а):Если бы это были RTF-файлы, то задача вполне решаема с помощью RichReport от SolidSoftware.
1. Удобной, и что не маловажно, знакомой для него среды разработки текстовых документов, а именно MS Word из пакета Офиса.
2. В текстовом редакторе должны быть в наличии орфографические и пунктуационные проверялки для разных популярных языков (русский, украинский, белорусский, английский и т.д.)
3. Исходя из этих 2х пунктов – вердикт предопределен. Однозначно Ворд.
4. Сегодня у нас работает связка: мемо поле в tps-файле БД, в котором храниться документ в формате RTF, + файл в формате MS Word, из которого информация методом паст и копи собственно и попадает в RTF поле БД. Но! После каждой мало-мальской правки нужно уравнивать две БД!!!!! Мало того, что это не удобно, это еще периодически приводит и к нарушению целостности информации в обобщенной БД.
-
- Старожил
- Сообщения: 226
- Зарегистрирован: 10 Ноябрь 2005, 23:07
- Откуда: Краснодар
- Благодарил (а): 4 раза
Re: Формирование отчетов из MS Word файлов
Спасибо за наводку!morkovin писал(а):... задача вполне решаема с помощью RichReport от SolidSoftware.
Скачали, установили, собрали пример и остались почти всем довольны , кроме:
То ли не нашли, толи и в самом деле нет возможности импортировать изображения из внешних RTF – документов в отчет с помощью этой тузлы. В отчете на месте изображения – пустота, дыра . Это как-то решаемо или надо продолжать поиски других продуктов?
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Re: Формирование отчетов из MS Word файлов
Какой-то сумбур ...
1. PDF формат никогда и ни для какой OC не являлся "родным". AdobeReader бесплатная программа, и Вы можете ее использовать для просмотра собранных файлов.
2. Не совсем понятен термин "собран". Если у Вас нет ограничений на использование MS Word (что в последнее время редкость) - открывайте его через OLE компоненту, загружайте в него документ, выделяйте весь текст и копируйте в ClipBoard. Очищайте файл, загружайте второй фрагмент, устанавливайте курсор в нужное место и вставляйте данные из ClipBoard. и т.д. Потом просто сохраняйте "собранный" из MS Word документ в PDF формат (требуется установка бесплатного плагина от MS). Все.
Зачем Вам загружать документ в detail отчета да и вообще сам отчет ? Может быть я что-то не понял ?
1. PDF формат никогда и ни для какой OC не являлся "родным". AdobeReader бесплатная программа, и Вы можете ее использовать для просмотра собранных файлов.
2. Не совсем понятен термин "собран". Если у Вас нет ограничений на использование MS Word (что в последнее время редкость) - открывайте его через OLE компоненту, загружайте в него документ, выделяйте весь текст и копируйте в ClipBoard. Очищайте файл, загружайте второй фрагмент, устанавливайте курсор в нужное место и вставляйте данные из ClipBoard. и т.д. Потом просто сохраняйте "собранный" из MS Word документ в PDF формат (требуется установка бесплатного плагина от MS). Все.
Зачем Вам загружать документ в detail отчета да и вообще сам отчет ? Может быть я что-то не понял ?
За теми кто отстал - не возвращаться. (С) Кодекс
-
- Старожил
- Сообщения: 226
- Зарегистрирован: 10 Ноябрь 2005, 23:07
- Откуда: Краснодар
- Благодарил (а): 4 раза
Re: Формирование отчетов из MS Word файлов
Здравствуйте, Игорь!
По поводу п.1- PDF формата. В виду перечисленных Вами качеств, мы и остановили в свое время выбор именно на нем, как, на практически безальтернативном в нашем случае, варианте.
Термин «собран» употребился в связи с тем, что конечным результатом работы программного комплекса является документ в формате PDF, собранный программой-конструктором в нужном вычисляемом порядке из «кирпичиков» - внешних документов, которые формирует пользователи программы.
А вот идею полного отказа от кларионовского отчета в пользу формирования документа средствами OLE мы ни разу и не рассматривали. Спасибо, Игорь!
Остается выяснить только один вопрос. Как из программы вывести в Word’овский файл текст с заданными в программе атрибутами (шрифт, цвет, центровка и т.д.)?
По поводу п.1- PDF формата. В виду перечисленных Вами качеств, мы и остановили в свое время выбор именно на нем, как, на практически безальтернативном в нашем случае, варианте.
Термин «собран» употребился в связи с тем, что конечным результатом работы программного комплекса является документ в формате PDF, собранный программой-конструктором в нужном вычисляемом порядке из «кирпичиков» - внешних документов, которые формирует пользователи программы.
А вот идею полного отказа от кларионовского отчета в пользу формирования документа средствами OLE мы ни разу и не рассматривали. Спасибо, Игорь!
Остается выяснить только один вопрос. Как из программы вывести в Word’овский файл текст с заданными в программе атрибутами (шрифт, цвет, центровка и т.д.)?
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Re: Формирование отчетов из MS Word файлов
Гм ! Вам же нужно было только собирать файл из нескольких документов, а потом экспортировать в PDF ?
В общем-то можно и рисовать и писать. Варианта видится два:
1. Включать в MS Word запись макроса, выполнить действие и потом перевести макрос из VBA на Clarion.
Здесь будет несколько заморочек с цветом - т.к. в VBA и Clarion под цветом понимают несколько разное.
Я так обычно и делаю - что бы выполнить простые операции вставки картинки, вывода строки текста, переход на новый лист, чтение и сохранение файла и т.д.
2. Воспользоваться готовой библиотекой работы с документами MS Word на Clarion.
Их было несколько, в т.ч. и бесплатные. Первое, что приходит в голову xWordCOM Library см. на http://www.seal-soft.com
Если бы Вы для сборки файлов и конвертации их в PDF использовали не коммерческий MS Word, а бесплатный OpenOffice.org Writer - рассмотрите библиотеку EasyOpenOffice от http://www.ingasoftplus.com - поддержка всех версий Clarion от 5 до 7.1, отличный сервис, использую несколько лет и рекомендую. Все что можно придумать для работы с DOC и ODT документами в ней есть. Кстати и управление цветом в т.ч.
В общем-то можно и рисовать и писать. Варианта видится два:
1. Включать в MS Word запись макроса, выполнить действие и потом перевести макрос из VBA на Clarion.
Здесь будет несколько заморочек с цветом - т.к. в VBA и Clarion под цветом понимают несколько разное.
Я так обычно и делаю - что бы выполнить простые операции вставки картинки, вывода строки текста, переход на новый лист, чтение и сохранение файла и т.д.
2. Воспользоваться готовой библиотекой работы с документами MS Word на Clarion.
Их было несколько, в т.ч. и бесплатные. Первое, что приходит в голову xWordCOM Library см. на http://www.seal-soft.com
Если бы Вы для сборки файлов и конвертации их в PDF использовали не коммерческий MS Word, а бесплатный OpenOffice.org Writer - рассмотрите библиотеку EasyOpenOffice от http://www.ingasoftplus.com - поддержка всех версий Clarion от 5 до 7.1, отличный сервис, использую несколько лет и рекомендую. Все что можно придумать для работы с DOC и ODT документами в ней есть. Кстати и управление цветом в т.ч.
За теми кто отстал - не возвращаться. (С) Кодекс
- morkovin
- Ветеран
- Сообщения: 909
- Зарегистрирован: 20 Июль 2005, 14:53
- Откуда: Volgograd, Russia
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
- Контактная информация:
Re: Формирование отчетов из MS Word файлов
Увы!в самом деле нет возможности импортировать изображения из внешних RTF
... and what it is not:
It is NO full-blown word-processor which supports all of the myriads of features of RTF. For example, images and tables are NOT supported.
WBR, morkovin
-
- Старожил
- Сообщения: 226
- Зарегистрирован: 10 Ноябрь 2005, 23:07
- Откуда: Краснодар
- Благодарил (а): 4 раза
Re: Формирование отчетов из MS Word файлов
Не знаю, как в полной версии продукта, но в демо-версии как раз работа с цветом очень нас удивила. Задали текст, фонт, размер, ЦВЕТ, подчеркивание, центровку , нажали на кнопу – сформировался и открылся документ со всеми нами заданными параметрами, кроме ЦВЕТА. Как мы не старались (на разных компах), цвет текста в документе всегда выходил черный. Что это, недоработка демо-программы или глюк библы?Игорь Столяров писал(а): ...в ней есть. Кстати и управление цветом в т.ч.
А ведь именно из-за двух функций (соединения документов в один документ и вывод из программы текста с заданными атрибутами) мы и стали изучать данный продукт. Да, кстати, в демо-версии так и не нашли демонстрацию функции merger нескольких документов в один. Вы, Игорь, как многолетний пользователь EasyOpenOffice, встречали выше описанные траблы и возможности?
-
- Старожил
- Сообщения: 226
- Зарегистрирован: 10 Ноябрь 2005, 23:07
- Откуда: Краснодар
- Благодарил (а): 4 раза
Re: Формирование отчетов из MS Word файлов
Да, еще пару вопросов в догонку. Можно ли с помощью EasyOpenOffice, после формирования документа, послать команду Writer’у на экспортирование в PDF-файл, а так же отследить момент завершения формирования физического PDF файла на диске? Нам это нужно для последующих манипуляций с только что созданным файлом, в частности для отправки его на сервер. Сейчас мы пользуем PDFCreator, у которого в настройках иметься возможность запустить на исполнение любую программу после формирования PDF файла. Эта кларион-программа как раз и занимается отсылкой созданного файла на сервер.
Еще вопрос по Writer’у. Как сохранить изменения в настройках экспорта в PDF-формат?
Еще вопрос по Writer’у. Как сохранить изменения в настройках экспорта в PDF-формат?
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Re: Формирование отчетов из MS Word файлов
Насчет демо версии EOO сказать ничего не могу - т.к. никогда ее не видел. Текущий релиз v. 1.51 - насколько мне известно проблем нет. Более точно уточните в службе тех. поддержки EOO - можно писать на русском ...
Про настройки сохранения экспорта - вопрос не понял, а сохранить документ в PDF формат можно при помощи метода
Writer.SaveAs('FileName.pdf','writer_pdf_Export') - все прекрасно работает.
Когда получит управление следующий за методом сохранения оператор - тогда запись файла и завершена. Можно по Exists() проверить наличие файла на диске и выполнить с ним нужные манипуляции. Я обычно либо запускаю просмотр ассоциированной прогаммой, либо отправляю его по e-mail.
Путь которым бы я пошел для формирования одного файла из нескольких - я описал ниже.
Про настройки сохранения экспорта - вопрос не понял, а сохранить документ в PDF формат можно при помощи метода
Writer.SaveAs('FileName.pdf','writer_pdf_Export') - все прекрасно работает.
Когда получит управление следующий за методом сохранения оператор - тогда запись файла и завершена. Можно по Exists() проверить наличие файла на диске и выполнить с ним нужные манипуляции. Я обычно либо запускаю просмотр ассоциированной прогаммой, либо отправляю его по e-mail.
Путь которым бы я пошел для формирования одного файла из нескольких - я описал ниже.
За теми кто отстал - не возвращаться. (С) Кодекс
-
- Старожил
- Сообщения: 226
- Зарегистрирован: 10 Ноябрь 2005, 23:07
- Откуда: Краснодар
- Благодарил (а): 4 раза
Re: Формирование отчетов из MS Word файлов
Мы тоже в начале так пытались сделать, но сразу же напоролись на грабли: формирование PDF файла занимало несколько секунд. За это время Exists’ом обнаруживался частично сформированный файл и в таком виде отправлялся на сервер.Игорь Столяров писал(а):Можно по Exists() проверить наличие файла на диске и выполнить с ним нужные манипуляции.
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Re: Формирование отчетов из MS Word файлов
Не совсем понятно, что мешает запустить отправку файла, после выполнения операции Writer.SaveAs ...
Если отправку выполняет внешнее приложение (например постоянно запущенный процесс), то можно например, открывать монопольно и формировать текстовый файл из программы с списком готовых к отправке PDF файлов. Пока текстовый файл открыт на запись - процесс не сможет получить к нему доступ и выполнить отправку (легко обрабатывается по ошибке на Open(TxtFile)). Когда приложение закончит формировать PDF файлы - оно сформирует список и закроет текстовый файл. Процесс получит к нему доступ и выполнит пересылку указанных в нем PDF файлов, при успешной отправке удалит их и очистит список в текстовом файле .... Если в момент пересылки фалов будет запущена программа формирования PDF файлов - она тоже не сможет получить доступ к текстовому файлу и либо выдаст сообщение о том, что формирование PDF файлов невозможно, т.к. идет отправка или повторит попытку генерации PDF файлов через таймаут ... и т.д.
Это если дейстовать тупо и "в лоб". Но схема вполне рабочая, хотя конечно и упрощенная.
Если отправку выполняет внешнее приложение (например постоянно запущенный процесс), то можно например, открывать монопольно и формировать текстовый файл из программы с списком готовых к отправке PDF файлов. Пока текстовый файл открыт на запись - процесс не сможет получить к нему доступ и выполнить отправку (легко обрабатывается по ошибке на Open(TxtFile)). Когда приложение закончит формировать PDF файлы - оно сформирует список и закроет текстовый файл. Процесс получит к нему доступ и выполнит пересылку указанных в нем PDF файлов, при успешной отправке удалит их и очистит список в текстовом файле .... Если в момент пересылки фалов будет запущена программа формирования PDF файлов - она тоже не сможет получить доступ к текстовому файлу и либо выдаст сообщение о том, что формирование PDF файлов невозможно, т.к. идет отправка или повторит попытку генерации PDF файлов через таймаут ... и т.д.
Это если дейстовать тупо и "в лоб". Но схема вполне рабочая, хотя конечно и упрощенная.
За теми кто отстал - не возвращаться. (С) Кодекс