powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Подскажите как программно добавить новую пустую запись.
8 сообщений из 8, страница 1 из 1
Подскажите как программно добавить новую пустую запись.
    #32495936
gorobets dima
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть табличная форма, режим таблицы. Подскажите как программно добавить новую пустую запись. Если б еще и без sql.
...
Рейтинг: 0 / 0
Подскажите как программно добавить новую пустую запись.
    #32495937
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Как-то так:

me.recordset.addnew
me.recordset.update
me.requery
...
Рейтинг: 0 / 0
Подскажите как программно добавить новую пустую запись.
    #32495939
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+ к ответу Владимира Саныча

Не желательно пользоваться в ADP.

Еще вариант

docmd.gotorecord ,,acnewrec

При этом если речь идет о подчиненной формы, а код вызывается из главной, надо выполнить

me.подчиненнаяформа.form.контролподчиненнойформы.setfocus
...
Рейтинг: 0 / 0
Подскажите как программно добавить новую пустую запись.
    #32495942
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
+ к ответу Geo. :^)

gotorecord не добавит запись физически.
...
Рейтинг: 0 / 0
Подскажите как программно добавить новую пустую запись.
    #32495945
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:))
...
Рейтинг: 0 / 0
Подскажите как программно добавить новую пустую запись.
    #32497657
gorobets dima
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимиру Санычу:

Спасибо, работает, только вот у меня форма в режиме dataentry=true. Соответственно запускается она с одной последней записью. Когда же делаю requery, исчезает все что до этого писал в этой форме, словом как если бы форма запустилась снова. Более того возникает бесконечный цикл - у меня код прописан в form_current c условием что счетчик - null (последняя запись). Есть ли какой-нибудь другой не такой глобальный способ обновления как requery? Или подскажи пожалуйста другой способ добавления новой записи.
...
Рейтинг: 0 / 0
Подскажите как программно добавить новую пустую запись.
    #32497661
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если у тебя DataEntry = True, то чего ж тебе еще надо? Ты и так на новой записи стоишь.
И вообще, что значит добавить пустую запись? Совсем пустую? Даже без первичного ключа? А на фига?
Или перейти в режим добавления новой записи? Тогда как Geo написал. Хотя опять таки непонятно, зачем это при DataEntry = True
...
Рейтинг: 0 / 0
Подскажите как программно добавить новую пустую запись.
    #32497683
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подозреваю, что автору надо быть уверенным, что при любых действиях пользователя запись будет сохранена, например, чтобы дальше пользоваться в программе ее ключем (форма открыта в режиме диалогового окна).
(хотя это и не всегда удобно пользователю)

Встречный вопрос: а почему бы не сказать об этом сразу?

Отвечаю в меру сил.

private sub form_current()
me.Какоенибудьполе=null
docmd.runcommand accmdsaverecord
end sub

Заполнить нужно поле, в котором разрешены пустые значения. Перед сохранением записи надо заполнить все обязательные поля (кроме, соответственно, счетчика - он сам заполнится).

---

Такой способ создаст запись, но есть одно но. В этой форме пользователь сможет и дальше создаваться записи. Если нужно быть уверенным, что будет создана только одна запись, нужно воспользоваться способом ВС и чуть-чуть дописать:

dim rs as dao.recordset
dim idNewRec as long
set rs = currentdb.openrecordset("mytable")
rs.addnew
'тут заполнить необходимые поля
inNewRec = rs.Id
rs.update
docmd.openform "myform",,"Id=" & IdNewRec,acedit
Forms("FyForm").allowDeletions=false
Forms("FyForm").allowAdditions=false

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


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