|
|
|
Отчет зависает
|
|||
|---|---|---|---|
|
#18+
Добрый день! У меня зависает отчет. Объясняю ситуацию: 1. Есть отчет с несколькими подчиненными отчетами. При прямом вызове отчета - все прекрасно отображается и показывается. Когда я пытаюсь вызвать его из кнопочной формы, он открывается, показывает 1-ю страницу, а при попытке перейти на следующую - песочные часы и все висит. Что это такое может быть и где копать? Отчет из кнопочной формы вызывается по следующей схеме: Выбор отчета в к.ф -> форма отбора показываемых элементов -> процедура обработки нажатия на клавишу (см.ниже) -> вызов отчета. Процедура с вызовом отчета: Private Sub Отчет_Click() On Error Resume Next DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70 DoCmd.OpenReport "Сводный отчет по проектам", acViewPreview DoCmd.OpenQuery "Проекты1" DoCmd.Requery End Sub Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2003, 14:47 |
|
||
|
Отчет зависает
|
|||
|---|---|---|---|
|
#18+
А для чего? Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2003, 15:12 |
|
||
|
Отчет зависает
|
|||
|---|---|---|---|
|
#18+
попытка перейти на следующую - это события "форматирование" и "печать" (в том числе разделов, попадающих на страницу). События кнопки к этому малокасательны. Есть ли у вас вложенные отчеты на 2-й странице? И не путаете ли вы переход на следующую (форматирование только 2-й) с переходом в конец (форматирование всех)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2003, 15:44 |
|
||
|
Отчет зависает
|
|||
|---|---|---|---|
|
#18+
2Витал: Проекты1 - это форма выбора нужных проектов для печати. 2assa: Не путаю. Зависает по любому. Переход с помощью стандартного интерфейса Access (стрелка влево). Насчет вложенности. Это выглядит так: Сводный отчет Проекты 1-го уровня Задачи проектов 1-го уровня (связка по полю КодПроекта) Проекты 2-го уровня (связка по полям табл.Проекты) Задачи проектов 2-го уровня (связка по полю КодПроекта) Подпроекты 2-го уровня, относящиеся к другим проектам (невыбранным) Задачи проектов 2-го уровня (связка по полю КодПроекта) На вторую страницу как раз попадают задачи проектов 2-го уровня. Я подозреваю, что кнопочная форма, скорее всего, не имеет отношения к делу, но в чем тогда проблема? Просто из отчетов - работает, из кнопочной формы - нет! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2003, 17:44 |
|
||
|
Отчет зависает
|
|||
|---|---|---|---|
|
#18+
1. >>Проекты1 - это форма выбора нужных проектов для печати Вопрос был о ЗАПРОСЕ (а не форме) >>DoCmd.OpenQuery "Проекты1" зачем вы его (запрос) открываете? зачем после этого передергиваете (перезапрашиваете - DoCmd.Requery) форму (ИЛИ ЧТО ТАМ У ВАС ЕЩЕ АКТИВНО ВЭТОТ МОМЕНТ)? Что у вас, из за открытия отчета изменились данные формы? Чем плох такой вариант: Private Sub Отчет_Click() On Error Resume Next DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70 DoCmd.OpenReport "Сводный отчет по проектам", acViewPreview end sub 2. Если действительно все открывается "просто" из окна БД, и если нигде в источниках и обработчиках (того же форматирования/печати) не используются значения контролов формы, то результат должен быть одинаков. (За исключением случаев сильной нехватки памяти - слишком сложной формы, в результате чего запрос может начать вычисляться не в ОП а на диск, что повесит его порядка на 3 по скорости). Все же поищите, что вы еще делаете не так. Попробуйте прервать выполнение (если работает код, а не запросы или макросы) и посмотрите, что там выполняется. 3. Вы же говорите, что из окна БД все в порядке. Т.ч. "второго уровня" или седьмого, должно быть "без разницы" (если нет - см п.2.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2003, 18:59 |
|
||
|
Отчет зависает
|
|||
|---|---|---|---|
|
#18+
2assa: Спасибо! Что-то заработало. В общем, насчет запроса я действительно тормознул. Ситуация в следующем. При выборе отчета пользователю предлагается список доступных проектов, из которого он может выбрать те, которые он хочет посмотреть. Выбор запоминается в поле "Выбор" в таблице "Проекты". Затем запускается отчет, который выводит нужную информацию. После этого происходит возврат в форму выбора проектов и запрос "Проекты1" предназначен для очистки поля "Выбор": UPDATE Проекты SET Проекты.Выбор = No WHERE ((([Проекты].[Выбор])=Yes)); Сейчас ситация в следующем. Я закомментировал вызов запроса и отчет стал формироваться нормально. Но после выхода, естественно, предыдущий выбор остается в форме. Не подскажите, как сделать, чтобы выбор после показа отчета сбрасывался? Раз уж он не хочет работать по предыдущему сценарию. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2003, 20:26 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32276890&tid=1679194]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 336ms |

| 0 / 0 |
