powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / перемещение
14 сообщений из 14, страница 1 из 1
перемещение
    #36449612
Вопрос_?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
просветите по вопросу:
допустим есть некое основное средство(ОС), закреплённое за сотрудником (А) и находящееся в отделе (а), потом это средство перемещают куда то, например в отдел (б) и закрепляют его за сотрудником (Б). как организовать хранение и перемещение, что бы при необходимости получить информацию, в какой период и за каким сотрудником было закреплено средство?
...
Рейтинг: 0 / 0
перемещение
    #36449752
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
перемещение
    #36450147
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Naf Периодические сведения
С уважением, NafМне кажется лучше подойдет что-то типа адресного хранения.
В конце концов ОС - товар, отдел - склад, сотрудник - ячейка на складе.

Сотрудник и товары - периодические реквизиты склада :)
...
Рейтинг: 0 / 0
перемещение
    #36450255
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если простой истории не хватает, то можно что то типа схемы "проводок", таблицы движения:
дата сотрудник_from сотрудник_to object
запись может создаваться при "исполнении/проведении" приказа на перемещение (если система документоориентированная).
...
Рейтинг: 0 / 0
перемещение
    #36450340
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSVNaf Периодические сведения
С уважением, NafМне кажется лучше подойдет что-то типа адресного хранения.
В конце концов ОС - товар, отдел - склад, сотрудник - ячейка на складе.

Сотрудник и товары - периодические реквизиты склада :)ОС не имеют количественного учета, каждый ОС уникален и имеет свой номер, как сотрудник
...
Рейтинг: 0 / 0
перемещение
    #36450393
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NafОС не имеют количественного учета, каждый ОС уникален и имеет свой номер, как сотрудникИ хорошо. Раз каждый ОС уникален, то ему следует завести отдельную карточку.... товара. Не ? :)
...
Рейтинг: 0 / 0
перемещение
    #36451284
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSV,

Кстати, а как действительно учитывать уникальные объекты, т.е. объекты, существующие в единственном экземпляре. Например, в автосалоне автомобиль уникален своим VIN номером.
И указывать количество при перемещении смысла нет. Мне кажется для такого случая должна быть какая-то специальная архитектура БД. Я пока не пидумал ее и как ее вклинить в управленческий, складской или бухгалтерский учет.

Может кто уже решил такую проблему.

По аналогии, если нужно указать в каком состоянии находится объект иногда делают такую структуру

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
create table Table
(
  ID int,
  Name varchar,
  State1 bit,
  State2 bit,
  State3 bit
)

Это заведомо неправльная структура, т.к. всегда может оказаться, что либо все состояния False, либо более одного состояния True. В таком случае лучше делать такую структуру

Код: plaintext
1.
2.
3.
4.
5.
create table Table
(
  ID int,
  Name varchar,
  StateID int not null
)

Вот и с уникальными объектами что-то такое же должно быть. Но я всё еще не придумал
...
Рейтинг: 0 / 0
перемещение
    #36451465
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, а как действительно учитывать уникальные объекты, т.е. объекты, существующие в единственном экземпляре. Например, в автосалоне автомобиль уникален своим VIN номером.Так и учитывать с кол-во =1. Какие проблемы ? Иметь карточки референцирования (обезличенные), чтоб знать статистику, сколько продано моделей ХХХ или РРР.
Если товар поступает "в куче", а продается строго по уник.коду, то можно фиксировать уник.код только при отпуске, как это делают с бытовой техникой. Но это уже реквизит проданной позиции.
В принципе - партия.
...
Рейтинг: 0 / 0
перемещение
    #36451511
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSV,

Я так и учитывал, но бывали ошибки, когда один и тот же автомобиль оказывался в количестве и 2 и 3, и его можно было продать не единожды :-)
Уж лучше делать структуру, когда такое в принипе невозможно.
...
Рейтинг: 0 / 0
перемещение
    #36451748
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Old Nick,
Код: plaintext
 CHECK CONSTRAINT <количество> =  1  
не?
...
Рейтинг: 0 / 0
перемещение
    #36451885
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
когда один и тот же автомобиль оказывался в количестве и 2 и 3При правильном партионном учете такие ошибки можно забороть. Отгружаем партию. ВИН - реквизит партии. Вернули партию. ВИН останется ее реквизитом. Ее снова можно продать. Процедуру замены некоего реквизита тоже можно регламентировать.
...
Рейтинг: 0 / 0
перемещение
    #36451887
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSV,

Я тоже тогда подумал про партии. Видимо так и нужно.
...
Рейтинг: 0 / 0
перемещение
    #36451924
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Old NickLSV,

Уж лучше делать структуру, когда такое в принипе невозможно.

За целостностью данных всегда следит код. Часть такого кода выполняется во время проверки декларативных ограничений целостности, но пока такие ограничения позволяют выполнять только базовые проверки, что бы хотя бы внутрисистемные инварианты сохранялись.

Первичные ключи необходимы для проверки некоторых бизнес правил, остальное легко реализовать в коде транзакций.

Как структуру не делай, должна быть операция которая правильно разберёт оптовую партию товара на розничные экземпляры. И должа быть операция которая правильно продаст товар поштучно. Иногда возможно совмещение этих операций, но на этапе продажи может возникнуть конкуренция за партию товара.
...
Рейтинг: 0 / 0
перемещение
    #36451943
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И чем не угадили периодические сведения?
С уважением, Naf
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / перемещение
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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