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

Форум: MS ACCESS

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

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

 
 

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

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

тема: Изменение заголовка отчёта
 
 автор: grafin   (08.11.2010 в 17:01)   личное сообщение
 
 

Асс2003.
В заголовке отчёта свободное поле. Например: надпись к полю "Отчёт за ". Хочу вставить в поле текст (год отчёта).
Из кода открываю отчёт и посылаю значение. Результат - пусто. Проверяю MsgBox "Значение поля" - значение правильное. Перетаскиваю поле, например в примечание - изменения появляются. Можно ли сделать изменение видимым в заголовке?

  Ответить  
 
 автор: Дядя Федор   (08.11.2010 в 17:10)   личное сообщение
 
 

А как еще:
rptLab.Caption = "Отчет за " & me.pole
где rptLab - надпись в заголовке.
pole- имеющееся в отчете поле
----
Есди же имеется в виду заголовок самой формы(отчета) то
me.Caption = "Отчет за " & me.pole

  Ответить  
 
 автор: Анатолий (Киев)   (08.11.2010 в 18:55)   личное сообщение
 
 


Из кода открываю отчёт и посылаю значение.

Т.е. вы во внешней процедуре открываете отчет, там же присваиваете значение полю выполняемого отчета и там же проверяете значение его поля?
Отчет - не форма. Он живет по другим правилам. Значения свободных полей надо присваивать на событии Format раздела где находится поле. Св-во Caption надписей можно менять также и на событии Open отчета.
В вашем случае проще всего сделать поле вычисляемым, указав в нем ссылку на поле (или сборку из нескольких полей) открытой формы или функцию возвращающую требуемый текст.

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

  Ответить  
 
 автор: grafin   (09.11.2010 в 12:25)   личное сообщение
 
 

Именно так - заголовок, а не Caption. Прокатил вариант с функцией, ссылку делать не на что.
Проверил, действительно, значение появляется на любых частях отчёта, кроме 1 страницы. При печати на принтере значение есть и в заголовке. Не хватает команды обновления экрана... Спасибо за подсказку, у меня в примечании к многостраничному отчёту это использовалось давно, ну работает и работает, пока не клюнет...

  Ответить  
 
 автор: Дядя Федор   (09.11.2010 в 13:07)   личное сообщение
 
 


Именно так - заголовок, а не Caption.


как это?
caption - относится к надписи а не к разделу.

Из кода открываю отчёт и посылаю значение.

Тогда через аргумент передавай и на "открытие" читай.
В коде

stDocName="ИмяОтчета"
 DoCmd.OpenReport stDocName, acViewPreview, , , , "СТРОКАЧЕГОТО"

В отчете на событие "открытие"

... Me.OpenArgs ' вернет  "СТРОКАЧЕГОТО"

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