Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Как правильно настроить связи?  [new]
Electroller
Member

Откуда:
Сообщений: 3
Добрый вечер.
Пытаюсь создать БД для учёта рабочего времени сотрудников, никак не могу понять одну проблему: проект может состоять из нескольких этапов, а каждому этапу может соответствовать определённый перечень работ, но не каждая работа может быть выполнена на любом этапе. Соответственно, в таблицу "Учёт времени" могут подставляться только те виды работ, которые соответствуют уже введённому в строку этапу проекта.
Как в этом случае правильно настроить связи и подстановку?

К сообщению приложен файл. Размер - 84Kb
20 окт 18, 17:20    [21709831]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
vmag
Member

Откуда: MP
Сообщений: 3273
Electroller
никак не могу понять одну проблему: проект может состоять из нескольких этапов, а каждому этапу может соответствовать определённый перечень работ, но не каждая работа может быть выполнена на любом этапе.


А где это в схеме данных?

Проект -> Этапы -> Работы -> Учет времени

Почему все перетасовано ?
Договор тут вообще как корове седло (он между кем и кем? или между чем и чем? или между кем и чем?)
20 окт 18, 17:45    [21709840]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Lekks
Member

Откуда:
Сообщений: 147
Electroller,

Для начала - не совсем ясна схема данных, на первый взгляд излишнее нагромождение таблиц и неверная организация данных. Поясните:
1. Принцип работы один проект - один сотрудник?
2. Если нет, то каждому сотруднику, задействованному в проекте, поручается этап или отдельный вид работ в этапе?
3. Проекты и их организация типовые? Т.е. соответствуют ли этапы и виды работ по этапам в каждом проекте? То же самое для этапов.
20 окт 18, 17:48    [21709842]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Electroller
Member

Откуда:
Сообщений: 3
Спасибо!
Уточняю:
Любой проект может включать любые этапы (ограничений нет).
Любой сотрудник может выполнять любые этапы и типы работ по любому проекту (ограничений нет).
При этом каждый этап может включать только строго определённые типы работ.
20 окт 18, 17:55    [21709846]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 4913
А я обхожусь без таких всеобъемлющих схем. Для каждого конкретного случая создаю соответствующий запрос.

Вот задача.
Есть строительная организация. Населённый пункт в её адресе выбирается из таблицы населённых пунктов.
И есть адреса строящихся объектов. И для них населённые пункты выбираются из этой таблицы. И как тут построишь связь?
20 окт 18, 18:10    [21709857]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 4913
В представленной схеме таблицу Этапы и типы я бы отвязал. Могут быть проблемы.
20 окт 18, 18:12    [21709858]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Lekks
Member

Откуда:
Сообщений: 147
Ввод этапов и в зависимости от этапа типа делать программной обработкой в форме. Таблицу этапы в принципе вообще можно исключить, т.к. они будут прописаны в таблице этапы и типы. А уже из нее выбирать и этап и тип для внесения в учет времени
20 окт 18, 19:15    [21709891]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Lekks
Member

Откуда:
Сообщений: 147
В общем случае наверное как то так, но это только отражение взаимодействий, а остальное кодом или запросами

К сообщению приложен файл (Отчет1.pdf - 124Kb) cкачать
20 окт 18, 19:42    [21709907]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Electroller
Member

Откуда:
Сообщений: 3
Lekks,
Спасибо большое!
22 окт 18, 21:31    [21711698]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
vmag
Member

Откуда: MP
Сообщений: 3273
Lekks
В общем случае наверное как то так, но это только отражение взаимодействий, а остальное кодом или запросами
Приложенный файл (Отчет1.pdf - 124Kb)

Собственно ваша схема БД вполне имеет шансы на реализацию, но по сути ничем не отличается от того что предлагал
Joss
А я обхожусь без таких всеобъемлющих схем. Для каждого конкретного случая создаю соответствующий запрос.


Я бы назвал такие схемы БД факторными (есть записи - есть схема БД, нет записей - нет схемы БД)
При отсутствии записи в таблице Учет вы не сможете ответить на элементарный вопрос - из каких этапов состоит проект, хотя с точки зрения элементарного планирования это нонсенс... Вот тут и начинаются первые костыли в виде бутафорского сотрудника с ФИО "Нет Данных" или "Пока не назначен" или назначением кого не попадя, с пустыми датами начала и окончания работ или же их значениями из далекого будущего лишь бы определить этапы у проекта и распечатать справку из этой БД, чтоб руководство могло проставить сроки и выделить людей...
Ну, если в кратце, то БД должна выполнять не только функции констатации фактов для получения отчетов, но и быть удобным повседневным инструментом для принятия решений...
23 окт 18, 02:55    [21711768]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Lekks
Member

Откуда:
Сообщений: 147
vmag

Ну, если в кратце, то БД должна выполнять не только функции констатации фактов для получения отчетов, но и быть удобным повседневным инструментом для принятия решений...


Поэтому и считаю (ну, после некоторого (почти полугодового) вникания в Access) приоритетным программирование подстановок )))

К сообщению приложен файл. Размер - 45Kb
23 окт 18, 16:50    [21712540]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 4913
Не-а... Не поля подстановок, а таблицы. Те, кто занимается этим гораздо дольше так тебе и скажут.

Из личного опыта. Первую свою серьёзную программу на Access я сделал только после года занятий. Access вообще был моей первой БД. Учиться пришлось по различным самоучителям. Нормальных книг тогда было практически не достать. А одну, что была - "зачитали".

Наступал на все грабли, которые только были. И названия полей, и поля подстановок, и выбор из выпадающих списков в ленточных формах, и вызов экземпляров форм. И многое другое.
23 окт 18, 17:29    [21712597]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Lekks
Member

Откуда:
Сообщений: 147
Joss
Не-а... Не поля подстановок, а таблицы. Те, кто занимается этим гораздо дольше так тебе и скажут.


Ну, из прочтенной литературы у меня вообще вывод - Access это только скелет, все остальное VBA и SQL. Кстати, действительно классные вещи и изумительная эргономичность БД получается )))) Но пока до программирования таблиц (реального, а не тренировочного) не дошел, да и необходимости не было. В не очень сложных БД в принципе и не особо нужно. А вот подстановки и события после удаления стандартных средств Access и обработки процедурами практически спасли идею БД и ее функционирование без постоянного присутствия разработчика))) Хотя я думаю, без "косяков" не обойдется в итоге. Но и опыт подрастет. Зацепило.

Так что, ТС, советую))))
23 окт 18, 17:37    [21712611]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
DarkMan
Member

Откуда:
Сообщений: 543
Lekks
Так что, ТС, советую))))

что именно ? извольте полюбопытствовать! Поля подстановок? !!!
23 окт 18, 19:38    [21712748]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
vmag
Member

Откуда: MP
Сообщений: 3273
DarkMan
что именно ? извольте полюбопытствовать! Поля подстановок? !!!


Прошу всех простить... прёт... просто не могу...

23 окт 18, 20:34    [21712774]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Lekks
Member

Откуда:
Сообщений: 147
DarkMan
Lekks
Так что, ТС, советую))))

что именно ? извольте полюбопытствовать! Поля подстановок? !!!


VBA и SQL ))))
24 окт 18, 17:19    [21713983]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
DarkMan
Member

Откуда:
Сообщений: 543
Lekks
VBA и SQL ))))

Если Вы о книШке , таки да. Книга очень хорошая. И автор тоже.
24 окт 18, 18:32    [21714114]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Lekks
Member

Откуда:
Сообщений: 147
DarkMan
Lekks
VBA и SQL ))))

Если Вы о книШке , таки да. Книга очень хорошая. И автор тоже.

И о ней, и об использовании VBA в БД Access )))
25 окт 18, 16:54    [21715099]     Ответить | Цитировать Сообщить модератору
 Re: Как правильно настроить связи?  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 5183
Так связи то в итоге настроили?
25 окт 18, 17:20    [21715143]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить