|
|
|
| Как добавить в отчет через Процедуру обработки событий несколько новых элементов? В частности документ(документы) в формате Word или rtf.
Или может у кого есть пример создания отчета программным способом с нуля.
P.S. Версия Access 2003 SP2. | |
|
| |
|
|
|
| Вы пытаетесь поднять настолько обширную тему...
ведь из-под акса можно делать многое
вот если Вы как-нибудь сузите свой вопрос - а то боюсь что вариантов может быть............................. | |
|
| |
|
|
|
| Если имеется в виду события самого отчета, то никак, потому как
1. добавление элементов управления возможно в Access только в режиме конструктора
2. в режиме конструктора процедуры обработки событий не работают
То есть для добавления элементов управления программно нужно из внешней процедуры открыть
отчет в режиме конструктора и добавить элемент(ы), назначить им свойства и т.д.
Минус: в MDE этот вариант работать не будет.
В некоторых случаях, достаточно иметь в отчете некоторый "запас" элементов управления,
и при открытии отчета управлять их свойствами в зависимости, например, от аргументов открытия.
Можно так-же пользовать методы Line, Circle и Print в событиях Format и Print секций отчета для
рисования линий, прямоугольников, окружностей, дуг и вывода текста.
В вашем случае, возможно, будет проще сразу формировать документ в Word-е, на основе шаблонов. | |
|
| |
|
|
|
| Я ни черта не понял да и тягаться с лукасом не берусь. Поэтому все упрощаю. Если что-то создавать програмным способом - то это к часу. А у меня так. Создаешь обычный отчет, На кнопке открыть отчет добавляешь код
DoCmd.RunCommand acCmdOutputToRTF
и он переводится в формат RTF и открывается ртф с очетом.
PS Лукас знает как. У него куча примеров с таким кручеством. Накидывай все поля а в отчет только задействованные выводи. Как их симметрировать Лукас знает. Он просто молчит. | |
|
| |
|
|
|
| В некоторых случаях, достаточно иметь в отчете некоторый "запас" элементов управления,
и при открытии отчета управлять их свойствами в зависимости, например, от аргументов открытия. | А возможен такой вариант?
1. Заранее создаю rtf-файл с фиксированным именем.
2. В процедуре обработки событий подвязываю его к элементу отчета.
Если возможно, то
1. Какой тип объекта должен быть
2. Какой функцией поменять источник
На основе rtf-файла создал в конструкторе OLE-объект:
Класс OLE: Документ Microsoft Word
Тип вывода: Содержимое
Параметры обновления: Автоматическое
Тип OLE: Связанный
Допустимый тип OLE: Все
Класс: Word.Document.8
Документ источник: "D:\Reports\Body.rtf"
Источник данных: "D:\Reports\Body.rtf"
В процедуре обработке событий пытаюсь работать с ним. Так размеры удается изменить:
Me.RTF1.Width = 9100
а вот смена источника не отрабатывает:
Me.RTF1.SourceDoc = "D:\Reports\Body.rtf"
выводится всё равно, то что было в подсунутом файле.
P.S. И еще проблема: выводится только первая страница документа. | |
|
| |
|
|
|
| Не много не правильно...
мышление - не правильно
(по моему мнению)
создается шаблон, который хранится в определенном месте компа(очень удобно рядом с базой данных),
после этого получается доступ к шаблону, делается его клон, програмно заполняется и сохраняется в нужном месте, после чего в аксе (в таблице) указывается путь к сохраненному файлу
а вот хранить шаблон в базе, а тем более отчет, который ни кому не нужен (по моему мнению) излишество (хотя тут могу получить ...на вкус и цвет товарищей нет)
более того - я например, не очень люблю общаться с Вордом мне проще с Екселем | |
|
| |
|
|
|
| Глянь очень подробный пример, правда для экселя, но при желании адаптируешь
http://hiprog.com/index.php?option=com_content&task=view&id=251661622&Itemid=35
Удачи | |
|
| |
|