Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Отмена сохранения записи при неполных данных / 7 сообщений из 7, страница 1 из 1
10.06.2004, 16:17
    #32556575
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отмена сохранения записи при неполных данных
С формы вызывается другая форма для добавления или редактирования выбранной записи.

В случае редактирования связывание идёт по ключу выбранной записи, чтобы на форме параметры записи в нужных контролах отрисовались (привязки контролов к данным прописаны верно):
Код: plaintext
1.
2.
3.
4.
  Dim stDocName As String
  Dim stLinkCriteria As String
  stDocName = "frmRelation"
  stLinkCriteria = "[Relation_ID]=" & Me.ChildFrmFaceRelations.Form.Relation_ID
  DoCmd.OpenForm stDocName, , , stLinkCriteria

А в случае добавления новой записи форма вызывается без связывания по ключу (ибо записи-то ещё нет), но один из контролов, привязанных к данным, заполняется неким значением:
Код: plaintext
1.
2.
3.
  Dim stDocName As String
  stDocName = "frmRelation"
  DoCmd.OpenForm stDocName, , , , acFormAdd
  Form_frmRelation.cmbPrimaryFace.Value = Me.ChildFrmFaceRelations.Form.RelationFace_ID

Проблема в следующем:
Если в режиме добавлении новой записи закрыть эту форму при каких-то незаполненных полях (а форма с самого начала непустая), то получаем ошибку целостности данных (некоторые не null внешние ключи не заполнены). Ошибка вылетает до Form_Close. Если перед закрытием нажать Esc, то, само собой, данные сбрасываются, и форма закрывается нормально.

Т.к. пользователя не заставишь нажимать Esc, то прошу знающих помочь советом по поводу закрытия этой формы без сохранения записи при неполных данных.

ЗЫ: С Аксессом начал работать совсем недавно, поэтому желательны развёрнутые советы. Заранее thx.
...
Рейтинг: 0 / 0
10.06.2004, 16:20
    #32556581
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отмена сохранения записи при неполных данных
me.undo - это программная замена для Esc.
...
Рейтинг: 0 / 0
10.06.2004, 16:22
    #32556587
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отмена сохранения записи при неполных данных
2 Владимир Саныч:
А по какому событию, если мессадж ошибки вылетает до Form_Close?
...
Рейтинг: 0 / 0
10.06.2004, 16:23
    #32556590
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отмена сохранения записи при неполных данных
Можно попробовать Form_Error.
...
Рейтинг: 0 / 0
10.06.2004, 16:29
    #32556605
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отмена сохранения записи при неполных данных
Владимир СанычМожно попробовать Form_Error.
Спасибо, помогло :)
Код: plaintext
1.
2.
3.
Private Sub Form_Error(DataErr As Integer, Response As Integer)
  Me.Undo
  Response = acDataErrContinue
End Sub
...
Рейтинг: 0 / 0
10.06.2004, 16:30
    #32556608
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отмена сохранения записи при неполных данных
В принципе, можно еще проверить значение DataErr.
...
Рейтинг: 0 / 0
10.06.2004, 16:31
    #32556613
paparome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отмена сохранения записи при неполных данных
Владимир СанычВ принципе, можно еще проверить значение DataErr.

Нужно - ИМХО
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Отмена сохранения записи при неполных данных / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]