Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Добавление элементов в Процедуре обработки событий
 
 автор: KOHCEPBATOP   (24.11.2009 в 15:40)   личное сообщение
 
 

Как добавить в отчет через Процедуру обработки событий несколько новых элементов? В частности документ(документы) в формате Word или rtf.

Или может у кого есть пример создания отчета программным способом с нуля.

P.S. Версия Access 2003 SP2.

  Ответить  
 
 автор: snipe   (24.11.2009 в 17:24)   личное сообщение
 
 

Вы пытаетесь поднять настолько обширную тему...
ведь из-под акса можно делать многое
вот если Вы как-нибудь сузите свой вопрос - а то боюсь что вариантов может быть.............................

  Ответить  
 
 автор: Lukas   (24.11.2009 в 19:18)   личное сообщение
 
 

Если имеется в виду события самого отчета, то никак, потому как
1. добавление элементов управления возможно в Access только в режиме конструктора
2. в режиме конструктора процедуры обработки событий не работают

То есть для добавления элементов управления программно нужно из внешней процедуры открыть
отчет в режиме конструктора и добавить элемент(ы), назначить им свойства и т.д.
Минус: в MDE этот вариант работать не будет.

В некоторых случаях, достаточно иметь в отчете некоторый "запас" элементов управления,
и при открытии отчета управлять их свойствами в зависимости, например, от аргументов открытия.

Можно так-же пользовать методы Line, Circle и Print в событиях Format и Print секций отчета для
рисования линий, прямоугольников, окружностей, дуг и вывода текста.

В вашем случае, возможно, будет проще сразу формировать документ в Word-е, на основе шаблонов.

  Ответить  
 
 автор: Гоблин   (24.11.2009 в 22:06)   личное сообщение
 
 

Я ни черта не понял да и тягаться с лукасом не берусь. Поэтому все упрощаю. Если что-то создавать програмным способом - то это к часу. А у меня так. Создаешь обычный отчет, На кнопке открыть отчет добавляешь код
DoCmd.RunCommand acCmdOutputToRTF
и он переводится в формат RTF и открывается ртф с очетом.

PS Лукас знает как. У него куча примеров с таким кручеством. Накидывай все поля а в отчет только задействованные выводи. Как их симметрировать Лукас знает. Он просто молчит.

  Ответить  
 
 автор: KOHCEPBATOP   (25.11.2009 в 15:30)   личное сообщение
 
 

В некоторых случаях, достаточно иметь в отчете некоторый "запас" элементов управления,
и при открытии отчета управлять их свойствами в зависимости, например, от аргументов открытия.

А возможен такой вариант?
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. И еще проблема: выводится только первая страница документа.

  Ответить  
 
 автор: snipe   (25.11.2009 в 16:11)   личное сообщение
 
 

Не много не правильно...
мышление - не правильно
(по моему мнению)
создается шаблон, который хранится в определенном месте компа(очень удобно рядом с базой данных),
после этого получается доступ к шаблону, делается его клон, програмно заполняется и сохраняется в нужном месте, после чего в аксе (в таблице) указывается путь к сохраненному файлу
а вот хранить шаблон в базе, а тем более отчет, который ни кому не нужен (по моему мнению) излишество (хотя тут могу получить ...на вкус и цвет товарищей нет)

более того - я например, не очень люблю общаться с Вордом мне проще с Екселем

  Ответить  
 
 автор: ShadowOfSun   (25.11.2009 в 19:59)   личное сообщение
 
 

Глянь очень подробный пример, правда для экселя, но при желании адаптируешь

http://hiprog.com/index.php?option=com_content&task=view&id=251661622&Itemid=35

Удачи

  Ответить  
 
 автор: KOHCEPBATOP   (26.11.2009 в 10:03)   личное сообщение
 
 

Спасибо.

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList