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

Форум: MS ACCESS

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

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

 
 

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

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

тема: Выражение является слишком сложным для вычисления ...,
 
 автор: никк   (20.02.2009 в 13:24)   личное сообщение
 
 

При открытии формы стало появляться сообщение:
Выражение является слишком сложным для вычисления ...
Вначале его не было, стало появляться с некоторого объема заполнения базы.
В базе несколько контролов "список" источниками для которых являются запросы с вычисляемыми полями.
Как определить контрол который вызывает эту ошибу?
М.б. в Access есть параметр который по крайней мере отодвигает начало этой проблемы?

  Ответить  
 
 автор: osmor   (20.02.2009 в 13:31)   личное сообщение
 
 

такое бывает после "преобразования" условий конструктором запросов, поскольку иногда сложные условия он преобразует крайне не оптимально
например условие
where (w=1 and c =1) and (e=2 or f=4)
сбольшой долей вероятности конструктором будет преобразовано в что-то такое
((w=1 and c =1) and e=2) or( (w=1 and c =1) and f=4)
Кроме того нужно посмотреть что за "вычисляемые поля", если используются dlookUp и подобные функции, то при больших объемах они могу не успевать вычисляться

  Ответить  
 
 автор: никк   (20.02.2009 в 13:39)   личное сообщение
 
 

В вычислениях проверка условий и обычные арифметические операции.
Как определить какой именно контрол?
Могут ли настройки параметров Access'a решать эти вопросы?

  Ответить  
 
 автор: FORMAT   (20.02.2009 в 14:24)   личное сообщение
 
 


Как определить контрол который вызывает эту ошибу?



Убрать обработку ошибок и посмотреть на источнике записей для какого контрола выдается ошибка. ( Выполнение программы остановится, В сообщении об ошибке нажмите кнопку debug. Вам покажут строку, которая вызывает ошибку)

  Ответить  
 
 автор: Lukas   (20.02.2009 в 14:38)   личное сообщение
 
 

А если кода в форме вообще нет?
Источники записей - запросы, назначенные в конструкторе?

  Ответить  
 
 автор: alecks_lp   (20.02.2009 в 14:50)   личное сообщение
 
 

одна из причин - попытка использовать для вычислений поля(втч вычисляемые или агрегатные) самого запроса

  Ответить  
 
 автор: FORMAT   (20.02.2009 в 14:50)   личное сообщение
 
 

А как выглядет полный текст сообщения об ашыпки?
Ни разу с ним не сталкивался, по моему,
Разве там не приводится текст слишком сложного выражения?

  Ответить  
 
 автор: FORMAT   (20.02.2009 в 14:55)   личное сообщение
 
 


одна из причин - попытка использовать для вычислений поля(втч вычисляемые или агрегатные) самого запроса


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

  Ответить  
 
 автор: Lukas   (20.02.2009 в 15:03)   личное сообщение
 
 

Смотри авторов.

  Ответить  
 
 автор: FORMAT   (20.02.2009 в 15:28)   личное сообщение
 
 

Старею

  Ответить  
 
 автор: никк   (20.02.2009 в 17:05)   личное сообщение
 
 

Код в форме есть, но он не связан с запросами для списков назначенные в конструкторе.

  Ответить  
 
 автор: никк   (20.02.2009 в 17:01)   личное сообщение
 
 

Как убрать обработку ошибок?

  Ответить  
 
 автор: FORMAT   (20.02.2009 в 17:55)   личное сообщение
 
 


Private Sub Кнопка7_Click()

On Error GoTo Err_Кнопка7_Click

Exit_Кнопка7_Click:
Exit Sub
Err_Кнопка7_Click:
MsgBox Err.Description
Resume Exit_Кнопка7_Click

End Sub



Вот пример обработки ошибок. Уберите выделенный жирным шрифтом текст

  Ответить  
 
 автор: никк   (20.02.2009 в 18:21)   личное сообщение
 
 

Уточните, это должно быть в коде всязанном с формой:
Private Sub Кнопка7_Click()

End Sub

  Ответить  
 
 автор: FORMAT   (20.02.2009 в 18:27)   личное сообщение
 
 

Нет, Это объявление процедуры из моего примера. Можете выкинуть эти строчки нах

  Ответить  
 
 автор: никк   (20.02.2009 в 18:37)   личное сообщение
 
 

У меня с формой связан некий код, не понимаю что мне даст clic на кнопке?

  Ответить  
 
 автор: никк   (20.02.2009 в 18:40)   личное сообщение
45 Кб.
 
 

Текст ошибки

  Ответить  
 
 автор: FORMAT   (20.02.2009 в 19:08)   личное сообщение
 
 

Клик вам ничего не даст. Я показал выделенным шрифтом какие строчки отвечают за обрабоку ошибок. Если у вас в коде есть нечто подобное, уберите эти строчки.

  Ответить  
 
 автор: FORMAT   (20.02.2009 в 19:11)   личное сообщение
 
 


не связан с запросами для списков назначенные в конструкторе


Я этого ответа не увидел. Вам нужно смотреть сами запросы.

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