powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Открыть форму ? для добавления ОДНОЙ записи
17 сообщений из 17, страница 1 из 1
Открыть форму ? для добавления ОДНОЙ записи
    #32531538
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Люди умные! :D
Clic-открывается форма.
Каким параметром установить чтоб в ней можно было добавить только дну
запись.
Чтоб она не реагировала на колесо мыша, и т.п. поползновения пользователя?

Спасибо!
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531541
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
DataEntry = True.

При этом существующие записи будут не видны, а можно будет только вводить новые. Ввел запись, она скрылась с глаз, вводишь следующую.
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531547
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саныч, наверное немного не умно объяснил.
Есть 2 таблицы, соотвветственно 2 формы, связь 1-1.
Надо открыть из 1-й формы 2-ю для ввода\редактирования только одной записи.
Объясню почему:
Случайно юзер дернет колесом и начнет добавлять езе одну запись, Access
начнет орать типа -повторяющиеся данные- и юзер побежит ко мне!
Пугливые они у меня!

PS
Наверное опять хочу невозможного?
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531551
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Догоняю:
Фильтр отбирает только одну запись во 2 таблице, исходя из записи 1 формы.
Но добавление (теоретическое) по колесу всеравно возможно, с последующим матом.
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531552
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Тогда просто достаточно открыть на селекте такого вида:

...where id=15

где
id - название ключевого поля
15 - его значение в главной форме
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531554
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Можно и фильтр. Этого тоже достаточно. Пока он не будет отменен, другие записи в форме не появятся и никакого колеса можно будет не бояться.
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531557
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Да. Надо еще вот что:

1. На OnOpen проверить наличие записей и соответственно разрешить или запретить добавление:

me.allowadditions=me.recordsetclone.bof

2. На AfterInsert и OnDelete - то же самое.
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531564
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А еще на AfterInsert можно закрывать форму - пусть потом вводит куда хочет :)
А чтобы народ не пугался на колесо мыши - на BeforeInsert запрашивать "Сохранять? Y/N"
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531570
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо!
AfterInsert оказалось (покачто) достаточно!
me.allowadditions=me.recordsetclone.bof - запретить, как разрешить?
*Ну маленький яще в Access* :)

RE: "Сохранять? Y/N"

Они у меня по кнопкам и так с третьего раза попадают.
А один одним пальцем?! сразу 4 клавиши нажимает!
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531573
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Говорила мама, слушай старших!
Open тоже нужен!
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531574
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
авторзапретить, как разрешить?
Если me.recordsetclone.bof даст True, то эта команда сработает как me.allowadditions=True.
Если me.recordsetclone.bof даст False, то эта команда сработает как me.allowadditions=False.

Точно так же, как:
Если A=8, то команда B=A сработает как B=8.
Если A=15, то команда B=A сработает как B=15.
И т.д.
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32531820
ищ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
мадж
твой вопрос уже десятки раз задавался. тебе саныч все разжевал. если непонятно, тогда замени все мыши с колесом на без колеса
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32541892
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не совсем (или совсем не?) туп.
ВС огромадное спасибо!.
Раньеше поблагодарить не мог, GPRS сдох.
RE: ИЩ
Нервные клетки не восстанавливаются.
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32541979
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если нужно Добавлять а не редактировать одну запись то тут
можно использовать два подхода:

1 если требуется вводить необязательные поля (допускающие повторы, не требующие проверок или пустые)

то можно указать в качестве источника записей SQL c заведомо ложным where
Select * from mytable where 1=0

на мой взгляд это лучше чем изменять свойства allowaddition и dataentry
так как после попытки сохранения записи форма не переходит к новой записи.


2 если требуется заполнять обязательные поля или значения нужно проверить перед добавлением то предпочтительнее оставить источник данных формы пустым а значения добавлять из кода кнопки используя ADO рекордсет
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32542500
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В том то и дело, что надо
1.добавить запись (до момента сохранения Access
всеравно не даст переходить по полям)
2. При повторном просмотре (для редактирования или еще чего) открыть
только ЭТУ запись, без возможности добавления еще одной, а лучше
и без возможности перемещения между записями (не полями) формы.

WHERE не работает, кто хочет попробуйте, открываешь форму для отобранных
записей, колесом дернул, и можно добавить запись!

Пример Саныча работает, (для моего случая):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub Form_AfterInsert()
Me.AllowAdditions = Me.RecordsetClone.BOF
End Sub
Private Sub Form_Load()
Me.RecordSource = "Select*FROM Klient WHERE (((ID_titul)='" & Forms![Titul]!&_
[ID_delo] & "'))"
Me.AllowAdditions = Me.RecordsetClone.BOF
End Sub


Спасибо Саныч!

PS/
Хотя думал, что в Access будет свой способ, из стандартных.
ну нет, так нет.
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32542785
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как ещё один из вариантов использовать таблицу без источника данных. А на событие ПотеряФокуса у ТекстБокса повесить:
1. Проверку введенного (чтобы записи не двоились) (можно Dlookup использовать).
2. Запрос на добавление в нужную тебе таблицу.
...
Рейтинг: 0 / 0
Открыть форму ? для добавления ОДНОЙ записи
    #32542797
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин опечатался: ...

Как ещё один из вариантов использовать форму без источника данных. А на событие ПотеряФокуса у ТекстБокса повесить:
1. Проверку введенного (чтобы записи не двоились) (можно Dlookup использовать).
2. Запрос на добавление в нужную тебе таблицу.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Открыть форму ? для добавления ОДНОЙ записи
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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