powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Помогите начинающему Аксесовцу
17 сообщений из 17, страница 1 из 1
Помогите начинающему Аксесовцу
    #32536029
Victor5000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как при вводе новой записи в форме, добавлять в одно из полей значение из предыдущей записи, а именно числовое значение увеличенное на 1?
Подскажите плиззз! или ссылочку на нужный топик дайте, ничего не нашёл...
Заранее спасибо!!!
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536061
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Самый простой вариант добавить поле с типом AutoNumber, при добавлении новой записи его значение будет увеличиваться на единицу
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536063
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поле сделать счетчиком и не париться!!!
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536068
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что значит - предыдущая запись? Последняя в таблице?
Придумать можно много чего - если тебя не устраивает AutoNumber в этом поле, открой recordset на OnOpen Form сдвинься на последнюю запись и запомни ее в переменке, затем, каждый раз на Before Insert for Form внеси в свое поле нужное тебе значение
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536097
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Значение по умолчанию пишешь примерно такое
=Nz(DMax("id";"таблица1");0)+1 (где id - интересующее поле)

В модуле формы вешаешь событие
Код: plaintext
1.
2.
3.
Private Sub Form_AfterInsert()
    Me.id.DefaultValue = Me.id.DefaultValue
End Sub

Да - и доступ к полю id закрой на всяк случай :)
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536122
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если у него есть группировка по кауим нибудь полям? Тогда ни AutoNumber не поможет ни DMax(ID), только трюки с Recordset or RecordsetClone
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536147
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
А если у него есть группировка по кауим нибудь полям? Тогда ни AutoNumber не поможет ни DMax(ID), только трюки с Recordset or RecordsetClone

Причём здесь групировки? Как группировка в запросе может повлиять на ф-ию DMax?
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536157
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторА если у него есть группировка по кауим нибудь полям?
А если группировка, то запрос не обновляемый и речи о редактировании идти не может!

Я ответил на ваш вопрос?
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536175
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет! Я может быть чуть не правильно выразился, группировка в том смысле, что есть группы для заполнения, например, номер проекта и в нем заказы. Тогда если он заполняет нужное ему поле - оно не уникальное. Не правда ли?
И как его каждый раз увеличивать на еденичку? Беэ трюков не обойтись...
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536191
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторБеэ трюков не обойтись...
Это точно - DMax, между прочим, тоже трюк

Да и для справки: У функции DMax есть еще третий параметр (условие)
Надеюсь, дальше расказывать не надо?
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536450
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конкчно, трюк!
Но по моемк опыту все Domain functions работают медленнее, чем поиск в уже открытом recordset. Конечно, все зависит от размера таблицы и других условий, но я, как правило, предпочитаю recordset
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536459
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос то задавал начинающий, какие там манипуляции с Recordset'ом :)
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536486
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, а где сам автор, а то мы тут уже целую дисскуссию развернули, а ему может всего этого и не треб?

Автора в студию!!!
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536490
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автор испугался и убежал ;)
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536495
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запужали новичка :(
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536601
Victor5000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, ребята!
Сделал "=Nz(DMax("id";"таблица1");0)+1 " и остальное...
Все прекрасно работает!
Целую дискусию развели, молодцы, не ожидал. :-)
Всем удачи!!!
...
Рейтинг: 0 / 0
Помогите начинающему Аксесовцу
    #32536605
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЦелую дискусию развели, молодцы, не ожидал. :-)
Запужаешь таких, как же
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Помогите начинающему Аксесовцу
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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