Пожалуйста, помогите мне с концептуальной проблемой, которую я пытался выяснить последние 3 дня.Я пытаюсь использовать Access для централизации отслеживания обучения, которое ранее проводилось в отдельных таблицах Excel.У меня около ~ 340 сотрудников, которые разбиты на 12 различных должностей с различной степенью необходимой подготовки.У меня есть пример ниже:
Позиция 1: Класс A, Класс B, Класс C Позиция 2: Класс A, Класс B Позиция 3: Класс A Позиция 4: Класс A
Как видите, все 340 сотрудников требуют обучения класса А.Но только для некоторых должностей требуется класс B или даже класс C. Сейчас у меня есть одна таблица с именами лиц и соответствующей контактной информацией, а также все 12 возможных классов.Все, что я хочу получить, это сохранить дату окончания обучения, и ничего больше.Проблема, с которой я сталкиваюсь, заключается в том, что поле «Дата / Время» не может различить того, кто должен принять этот класс и просто еще не сделал этого (нулевое значение), и того, кто не обязан брать этот класси, очевидно, еще не завершил его (также нулевое значение).
То, что я пробовал:
- запрос с использованием вычисляемых полей, которые будут вводиться в значение «НЕ REQ», еслиДолжность не требует обучения.Ниже приведен пример: Инспектор HAZMAT: IIf ([POSITION] = «Планировщик загрузки», [Инспектор HAZ], «НЕ REQ») Почему это не работает: вставка текста в поле изменяет его сдата в текстовое поле, поэтому я больше не могу использовать функции даты, чтобы определить, истек ли срок обучения.Кроме того, я не могу отредактировать поле в форме и сохранить его обратно в исходную таблицу, поскольку оно является вычисляемым полем.
Возможное решение (?): Используйте оператор SQL Update в VBA, чтобы записать значение вычисляемого полявернуться в исходный стол?Я все еще сталкиваюсь с проблемой, что я не могу обновить поле для начала в форме ...
- Отдельные таблицы для каждой позиции (?): Основная проблема, которую я вижу с этим, состоит в том, что много позицийтребуется один и тот же точный класс, поэтому я буду вводить много избыточной информации.
- Отдельные таблицы для каждого класса (?): я вижу, насколько безопаснее будет этот маршрут, но для негочтобы быть полезным, я бы подумал, что мне придется написать какой-нибудь код VBA, в котором говорится, что когда я назначаю кого-либо на должность X, его идентификатор сотрудника автоматически заполняется в таблицах A, B и C на основе требований к его обучению.Это выполнимо?Это лучший вариант или я просто не в курсе?