ник: lukas75
Простите меня за возможно раздражающую тупость.
Access 2007. Ввод данных в таблицу производится из формы.
Задача: при введении новой записи требуется автоматически изменить значения поля для некоторой части записей.
Подробнее: Имеется поле "код_сотрудника" - ключевое, но не счетчик. Благодаря этому полю все сотрудники "выстраиваются" в таблице по иерархии (по званию, должности). Поэтому, при вводе новой записи значение "код_сотрудника" должно определяться пользователем, чтобы вводимый сотрудник получил код, опрелеяющий "правильное" место в иерархии списка. В форме разворачивается поле со списком: [код_сотр] [звание] [ФИО]. Пользователь выбирает в этом списке запись, "за которой"нужно поместить новую. Новая вводимая запись должна получить значение поля "код_сотрудника" на 1 больше того, кого пользователь выберет в раскрывающемся поле со списком. Другие записи должны при этом "пересчитаться": значения, которые меньше (либо равно) выбранного - остаться прежними, значения больше выбранного - увеличиться на 1. Образно говоря - новая запись как бы "вклинивается" в указанный промежуток. Но поскольку поле "код_сотрудника" ключевое - то не может быть одновременно одинакового значения в двух записях. Я сейчас это делаю вручную. И увеличивать на единицу приходится начиная с наибольшего значения, чтобы избежать одинаковых чисел. Устал это делать. Если у кого есть решение этой задачи буду премного обязан. Не встречали ли подходящей процедуры? Не вините за дилетанство.