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

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

Сотрудник и товары - периодические реквизиты склада :)ОС не имеют количественного учета, каждый ОС уникален и имеет свой номер, как сотрудник
...
Рейтинг: 0 / 0
04.02.2010, 17:55
    #36450393
LSV
LSV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перемещение
NafОС не имеют количественного учета, каждый ОС уникален и имеет свой номер, как сотрудникИ хорошо. Раз каждый ОС уникален, то ему следует завести отдельную карточку.... товара. Не ? :)
...
Рейтинг: 0 / 0
05.02.2010, 10:45
    #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
05.02.2010, 11:34
    #36451465
LSV
LSV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перемещение
Кстати, а как действительно учитывать уникальные объекты, т.е. объекты, существующие в единственном экземпляре. Например, в автосалоне автомобиль уникален своим VIN номером.Так и учитывать с кол-во =1. Какие проблемы ? Иметь карточки референцирования (обезличенные), чтоб знать статистику, сколько продано моделей ХХХ или РРР.
Если товар поступает "в куче", а продается строго по уник.коду, то можно фиксировать уник.код только при отпуске, как это делают с бытовой техникой. Но это уже реквизит проданной позиции.
В принципе - партия.
...
Рейтинг: 0 / 0
05.02.2010, 11:48
    #36451511
Old Nick
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перемещение
LSV,

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

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

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

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

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

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


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