MS Access | Обновить данные формы

 

Скачать пример в zip:   UpdateFormData.zip

Скачать пример в mdb: UpdateFormData.mdb

Например, пользователь заполняет города в форме City List, где нужно для каждого города указать Регион (поле RegionID), но в списке Region нет нужного региона:

 

 

Пользователь переходит в форму Region List и добавляет запись по региону:

 

 

На выходе* из формы Region List происходит обновление данных формы City List по полю RegionID, таким образом новая запись о регионе появится в списке "Регион" на форме City List

 

* --   также можно сделать и на событие AfterUpdate

** --  при условии, что форма City List открыта

 


Private Sub Form_Close()

On Error GoTo err

If FormIsOpened("frmCities") Then 'если функция FormIsOpened приняла значение True, тогда

   [Forms]![frmCities]![RegionID].Requery

   Refresh

End If

Exit Sub

err:

  ShowError

End Sub

 


'Функция FormIsOpened:

Function FormIsOpened(frmname As String)

If CurrentProject.AllForms(frmname).IsLoaded Then

   FormIsOpened = True

Else

   FormIsOpened = False

End If

End Function

 


Private Sub Form_AfterUpdate()

On Error GoTo err

If FormIsOpened("frmname") Then

  [Forms]![frmname]![fieldname].Requery

  Refresh

End If

Exit Sub

err:

  ShowError

End Sub

 


Public Sub ShowError() 'показывает ошибку программы / exception в виде строки

  MsgBox err.Description, vbCritical, err.Source

End Sub

 




© 2018 | Анна Петросян | pashelp@yandex.ru