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

Форум: MS ACCESS

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

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

 
 

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

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

тема: Вопросы
 
 автор: _Новичок_   (08.02.2010 в 14:07)   личное сообщение
 
 

Здравствуйте! Меня мучают несколько вопроса. Помогите кто чем может))))

1. Есть ленточная форма в которой некоторые поля заполняются при помощи DlookUp. Данные в этих полях отображаются замечательно пока не происходит обновление формы... При обновлении все поля, где используется DlookUp, очищаются. Данные появляются только при установки курсора в любое поле с DlookUp. Как сделать так, чтобы данные не пропадали при обновлении формы?

2. При закрытии любой программы выдается сообщение "Сохранить изменения?", как выводить такое сообщение при закрытии формы?

3. Есть многопользовательская база. Для примера используем 2 компьютера. На обоих компьютерах открыта форма Журнал сделок. На одном из пк создается новая сделка, а на другом пк в журнале эта сделка отобразится только после обновления этой формы. Можно ли сделать автоматическое обновление этой формы?

  Ответить  
 
 автор: osmor   (08.02.2010 в 16:16)   личное сообщение
 
 

1. Отказаться от DlookUp сделать источник строк формы таким, что бы нужное поле содержалось в нем
2. на событие закрытие формы проверять свойство формы dirty, если истина то выдавать сообщение
3. Событие таймер формы.

  Ответить  
 
 автор: Explorer   (08.02.2010 в 18:12)   личное сообщение
 
 


Отказаться от DlookUp



а вот я в этот раз сдержался :)

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

им пофиг. у них свой путь "развития". грабли в говне. но это их не останавливает

  Ответить  
 
 автор: kot_k_k   (08.02.2010 в 19:17)   личное сообщение
 
 

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

  Ответить  
 
 автор: Canek   (08.02.2010 в 17:35)   личное сообщение
 
 

1. используй команду после обновления формы Requery для каждого поля в котором используешь DlookUp: Me.Поле.Requery

  Ответить  
 
 автор: _Новичок_   (08.02.2010 в 17:51)   личное сообщение
 
 

Спасибо всем!!! Все получилось)))

P.S: Для тех у кого появился такой же вопрос как у меня. Относится ко второму вопросу.
Dirty проверяет только произошло изменение или нет, а вот OldValue возвращает старое значение поля.

Dim ctlC As Control

If Me.Dirty Then
if msgbox ("Сохранить изменения?", vbYesNo)=vbNo then
For Each ctlC In Me.Controls
If ctlC.ControlType = acTextBox Then
ctlC.Value = ctlC.OldValue
End If
Next ctlC
End if
End If

  Ответить  
 
 автор: osmor   (08.02.2010 в 20:53)   личное сообщение
 
 

а me.undo не проще ?

  Ответить  
 
 автор: _Новичок_   (09.02.2010 в 17:04)   личное сообщение
 
 

Спасибо!!!!!!!!!!!!!!! Намного проще))))
Учимся еще, ничего не поделаешь))))

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