|
|
|
Фильтр в отчете
|
|||
|---|---|---|---|
|
#18+
Помогите начинающему! В для поиска данных в отчете использую следующий фильтр: в поле формы выбирается запись "Me.Фильтр", и по ней производится поиск в отчете. Private Sub Фильтр_AfterUpdate() Dim rpt As Report DoCmd.OpenReport "ДПС", acViewPreview Set rpt = Reports("ДПС") rpt.Filter = "Уровень1='" & Me.Фильтр & "'" rpt.FilterOn = True End Sub Private Sub УдалитьФильтр_Click() Reports("ДПС").FilterOn = False End Sub Не получается: 1. Избавитья от #Ошибка, если данных в поле отчета нет (пусть выводися Msg об отсутствии данных). 2. В форме выбираю нужную запись и, закрыв форму, просматриваю отчет. А потом, что бы установить новые параметры фильтра в форме, - приходится закрывать отчет Как после просмотра отчета передать управление вновь на форму? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2004, 12:01:43 |
|
||
|
Фильтр в отчете
|
|||
|---|---|---|---|
|
#18+
zstar Не получается: 1. Избавитья от #Ошибка, если данных в поле отчета нет (пусть выводися Msg об отсутствии данных). можно перед открытием отчёта в процедуре, где меняется фильтр сразу проверить - есть ли данные (сделать, например, RecordsetClone или просто открыть рекордсет с нужными условиями - и если его свойство RecordCount=0, выдавать сообщение). Можно в отчете на событие "отсутствие данных" делать Cancel = True и соответствующий MsgBox zstar 2. В форме выбираю нужную запись и, закрыв форму, просматриваю отчет. А потом, что бы установить новые параметры фильтра в форме, - приходится закрывать отчет Как после просмотра отчета передать управление вновь на форму? так не закрывай форму... или на событие "закрытие" отчёта написать DoCmd.OpenForm "myForm" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2004, 12:26:56 |
|
||
|
Фильтр в отчете
|
|||
|---|---|---|---|
|
#18+
stag можно перед открытием отчёта в процедуре, где меняется фильтр сразу проверить - есть ли данные (сделать, например, RecordsetClone или просто открыть рекордсет с нужными условиями - и если его свойство RecordCount=0, выдавать сообщение). Можно в отчете на событие "отсутствие данных" делать Cancel = True и соответствующий MsgBox Помимо MsgBox очень хочется что бы на месте #Ошибка выводился 0 или пустые строки. stag так не закрывай форму... или на событие "закрытие" отчёта написать DoCmd.OpenForm "myForm" форму приходится в любом случае закрывать, что бы "побегать" по отчету - в нем много данных и страница альбомная Пусть вызываю я вновь форму через меню - так ведь ругается, что данные запроса уже используются в открытом отчете! И справедливо ругается! Может мне именно для этого нужно RecordsetClone создавать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2004, 13:14:14 |
|
||
|
Фильтр в отчете
|
|||
|---|---|---|---|
|
#18+
zstarПомимо MsgBox очень хочется что бы на месте #Ошибка выводился 0 или пустые строки. если сделать Cancel=true (см. выше), то отчёт вообще не откроется. имхо - это лучше, чем видеть нули (которые не соответствуют действительности, так как "что-то=0" и "что-то не существует" - разные вещи) или пустые строки - зачем это видеть, если и так сказано, что данных нет. zstarформу приходится в любом случае закрывать, что бы "побегать" по отчету - в нем много данных и страница альбомная Пусть вызываю я вновь форму через меню - так ведь ругается, что данные запроса уже используются в открытом отчете! И справедливо ругается! Может мне именно для этого нужно RecordsetClone создавать? всё равно не понятно, почему форма мешает... есть открытая форма, из нее открываешь отчёт - он виден поверх формы; бегаешь, сколько надо, по отчёту, закрываешь отчёт - видишь форму. а зачем тебе одновременно и форма, и отчёт? закрой отчёт - потом работай с формой. Но вообще, странно, что ругается. Что, для источника данных формы и отчёта используется один объект - запрос? если так - скопируй свой запрос в виде sql в поле "источник данных" формы - и эти проблемы должны уйти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2004, 13:34:22 |
|
||
|
|

start [/forum/topic.php?fid=45&fpage=1590&tid=1673022]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
28ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 289ms |

| 0 / 0 |
