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

Форум: MS ACCESS

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

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

 
 

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

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

тема: BeforeUpdate - Cancel - Property not found!
 
 автор: Stanislav   (06.03.2011 в 04:14)   личное сообщение
 
 

Акс 2007.

Private Sub Qty_BeforeUpdate(Cancel As Integer)
If Nz(Me.Qty, 0)>Nz(Me.Qty.OldValue, 0) Then
Cancel = True
Me.Qty.Undo
End If
End Sub


Если условие выполняется, то получаю предупреждение (не ошибку!):


Property not found!
OK Help



Если закомментировать строчку

'Cancel = True

то предупреждения не получаю, но и код становится бесполезным, т.к. не отменяет событие.

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

О каком свойстве идет речь?

Help дает весьма бесполезные сведения:


Property not found. (Error 3270)
The specified property could not be found.

Possible causes:

- The property does not exist. Check the spelling of the property in your code.
- If the property is user-defined, it may have been deleted from the collection.
- You do not have adequate permissions to create a list on the specified Microsoft Windows SharePoint Services site.

  Ответить  
 
 автор: Stanislav   (06.03.2011 в 08:36)   личное сообщение
 
 

Понял, что загвоздка в том, что в данные в форме собраны из нескольких таблиц посредством INNER JOIN. Это не дает выполнить в обработчике BeforeUpdate не только Cancel, но и Refresh формы, чтобы сохранить изменения. Не совсем понял ситуацию, и как тут правильно поступить, но переделал вот так:


Private Sub Qty_AfterUpdate()
If Nz(Me.Qty, 0) > Nz(Me.Qty.OldValue, 0) Then
Me.Qty = Me.Qty.OldValue
Me.Refresh
Else
Me.Refresh
End If
End Sub


работает.

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