|
|
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
Есть такие входные данные к ТЗ: 1.Название Кондитерского изделия (например, Торт Киевский) 2.Под таким названием этот Торт могут производить несколько Фабрик-Производителей вне зависимости от его Рецептуры. 3.Под этим названием Торт может имеет несколько различных Резептур, т.е. у Изделий на выходе может быть только название от "Торта Киевский"(синоним). 4.По классической Резептуре может выпускаться несколько Изделия с другими названиями на выходе, т.е. как аналоги "Торта Киевский" - рецепт классический, а название новое. 5.И на все эти возможные варианты накладывается - тип использования Торта (продажа целиком, порционно либо утилизация). Как споектировать такую БД? От чего отталкиваться? С чего начать? P.S. Думал начать "плясать" от Рецептуры и от него уже строить связи. Но у Рецептуры таже "каша", но уже с её инградиентами. Т.е. инградиенты могут входить одноименные от разных Производителей, и разные от одного и того же Производителя (например, масло 73% под разным названием). P.P.S.Голова уже закипает :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 12:08 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
AIS, как обычно, начните с определения используемых сущностей. Потом пропишите связи между ними, затем выполните нормализацию. Из вашего описания не очень понятно даже что с чем связано. Рецептура наприме с производителем связана? А тип использования связан с рецептурой, производителем или конкретным экземпляром торта? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 12:20 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
iljyРецептура например с производителем связана? Да. Но связь - многие ко многим. iljyА тип использования связан с рецептурой, производителем или конкретным экземпляром торта? Тип использования связан с рецептурой по сроку хранения, с производителем по условиям поставки, с конкретным экземпляром торта - нет. iljy..как обычно, начните с определения используемых сущностей. Потом пропишите связи между ними, затем выполните нормализацию. Из вашего описания не очень понятно даже что с чем связано. Как обычно: всё ясно, что ничего не ясно. :) Ступор по сущности Рецептура. Как её определить? Или как без неё обойтись? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 12:45 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
AISДумал начать "плясать" от Рецептуры и от него уже строить связи. Начните от производителя. У него есть номенклатура производимой продукции. Для каждой позиции номенклатуры есть "образцовый рецепт", которого данный производитель старается придерживаться. Для каждой выпущенной партии (даже если в партии одно изделие) данной позиции есть фактический рецепт, то есть перечень на самом деле израсходованных продуктов (который может сильно отличаться от образцового) и "диагноз" - продать или выбросить. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 13:15 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
AISiljyРецептура например с производителем связана? Да. Но связь - многие ко многим. iljyА тип использования связан с рецептурой, производителем или конкретным экземпляром торта? Тип использования связан с рецептурой по сроку хранения, с производителем по условиям поставки, с конкретным экземпляром торта - нет. Т.е. система должна сама назначить изделию тип использования? AISСтупор по сущности Рецептура. Как её определить? Или как без неё обойтись? Ну как... Как обычно: заголовок: - Id (PK), - Наименование, - атрибуты (срок хранения, например); детали: - PK (суррогатный или составной из Id заголовка и порядкового номера внутри рецептуры), - Id заголовка, если PK суррогатный (FK на заголовок), - Id ингридиента (FK на справочник ингридиентов), - количество данного ингридиента, - примечание... Как связь многие ко многим организуется, наверное знаете... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 13:29 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovAISДумал начать "плясать" от Рецептуры и от него уже строить связи. Начните от производителя. У него есть номенклатура производимой продукции. Для каждой позиции номенклатуры есть "образцовый рецепт", которого данный производитель старается придерживаться. Для каждой выпущенной партии (даже если в партии одно изделие) данной позиции есть фактический рецепт, то есть перечень на самом деле израсходованных продуктов (который может сильно отличаться от образцового) и "диагноз" - продать или выбросить. Спасибо. "От Производителя" - это интересный подход. А если + привязать "Изделие" не к партии (их может быть много, а инградиенты не меняються), а к дате изменения состава инградиентов, то думаю, что всё получится, узелок развяжется. Ещё раз, спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 15:34 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
AISпривязать "Изделие" не к партии (их может быть много, а инградиенты не меняються), а к дате изменения состава инградиентов Не получится, потому что состав меняется не по дате, а по наличию ингридиентов. Не хватило муки высшего сорта - забодяжили другим. Не было лесных орехов - насыпали что под руку попало. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 16:21 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Точно. Для учета этого обязательна история ведения выпуска партий продукта - чтобы отслеживать через время, где напортачили. И даже стандарт для этого выдумали ISA-88 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 16:36 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovAISпривязать "Изделие" не к партии (их может быть много, а инградиенты не меняються), а к дате изменения состава инградиентов Не получится, потому что состав меняется не по дате, а по наличию ингридиентов. Не хватило муки высшего сорта - забодяжили другим. Не было лесных орехов - насыпали что под руку попало. Я имел ввиду именно "дату изменения состава инградиентов". Думаю, что "наличие" это почти одно и тоже в разрезе времени НО. На практике есть такая ситуация когда "временно бадяжат", но когда появилось то что нужно, то возвращаються к "образцу рецепта" независимо от того есть ли ещё "подставной инградиент" либо нет. Siemargl...Точно. Для учета этого обязательна история ведения выпуска партий продукта - чтобы отслеживать через время, где напортачили. И даже стандарт для этого выдумали ISA-88 К этому ещё идти и идти. :) На практике же в Рецепте стоит фраза: "то-то и то-то от 0 до 15%", либо "добавить по вкусу". Напимер, "добавить воды". И никто не расписывает и не указывает "чтО за вода", "от куда", "какое содержание солей", и т.д. И технолог имеет право "лавировать". И всё в рамках закона. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 21:44 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
AISНа практике есть такая ситуация когда "временно бадяжат", но когда появилось то что нужно, то возвращаються к "образцу рецепта" независимо от того есть ли ещё "подставной инградиент" либо нет. Именно поэтому то, из чего сварили каждую партию надо хранить отдельно. Тебе же ещё как пить дать себестоимость продукции считать придётся, а вот тут-то и нужны фактические расходы. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 22:05 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovAISНа практике есть такая ситуация когда "временно бадяжат", но когда появилось то что нужно, то возвращаються к "образцу рецепта" независимо от того есть ли ещё "подставной инградиент" либо нет. Именно поэтому то, из чего сварили каждую партию надо хранить отдельно. Тебе же ещё как пить дать себестоимость продукции считать придётся, а вот тут-то и нужны фактические расходы. У нас видимо разное понимание слова "партия" товара. Я придерживаюсь следующему: "Партия товара — однородный товар, поступивший по одному транспортному документу." (С) Т.е. на практике, сделати 1000 шт. тортиков под названием "Киевский" и на 10 магазинов отправили "партиями" по 100 шт. А на сколько они все одинаковые никто не знает, бо слепили их на этой недели "из того что было". :) P.S. До "себестоимости" ещё не дошел, но опять спасибо за намек. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 22:25 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
AISЯ придерживаюсь следующему: "Партия товара — однородный товар, поступивший по одному транспортному документу." Ну, это продажная точка зрения. Я имел ввиду производственную: изделия, изготовленные за один производственный цикл. То бишь взяли со склада кучу ингридиентов, замешали, выпекли, получилось Х тортиков. Теста всяко больше чем в чан влезет не замешаешь... Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 22:52 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
AIS, по-моему у вас проявилась некоторая основополагающая сущность - партия товара. Будете вы ее рассматривать как партию произведенную, или партию поставленную, или обе - зависит от вашей предметной области: вы делаете БД только для производства, или для реализации тоже, или только для реализации? Это надо определить. Далее у партии выявляются характеристики, такие как производитель, место поставки, количество, использованная рецептура, ингредиенты, нормочасы (либо себестоимость в целом, хотя она суть составная характеристика, и опять же - себестоимость для производителя или продавца?), срок годности, тип использования и т.п. Соответственно какие-то из этих характеристик можно выделить в самостоятельные объекты (производить, продавец, рецепт, ингредиент, возможно детализация типа цех-смена, etc), а какие-то остаются свойствами исходного объекта (количество единиц, время проихводства). Если это затрагивает склад - возможно будет вестись так же учет ингредиентов, тогда сюда же влипнет партия ингредиента со своими характеристиками: производитель, поставщик, дата поставки и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2011, 23:26 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
iljy , у-уф, так далеко я ещё не заглядывал. И не только я, а и заказчик. Даже не знаю, надо ли ему нарисовать "перспективу", чтобы потом хуже не стало от его "фантазии" и "хотения". Спасибо всем за советы и комментарии. Беру таймаут и возвращаюсь к заказчику и его ТЗ. :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2011, 03:12 |
|
||
|
Как постоить такую БД?
|
|||
|---|---|---|---|
|
#18+
AIS, Вообще-то тут надо строить 1. полноценную Торговлю и Склад. С неё Вы будете брать ассортимент ингредиентов и их характеристики (сроки реализации, калорийность (белки, жиры, углеводы), входную стоимость) 2. На ТиС навешиваете производство (не важно, тортиков или булочек), получаете партии тортиков, с себестоимостью, интегральной калорийностью, и пр. 3. Произведённый товар отправляется в ТиС. Это конечно, черновая схема, но по крайней мере она должна определить объём и стоимость Ваших работ. Может быть, подскажет что-то и по структуре БД. Ну а по 5 пунктам, что Вы привели, - в огороде бузина, в Киеве дядька. С тортиком. Киевским. п.1, 2 Название изделия - это просто характеристика товара, и то, что у разных производителей товар имеет одинаковое название - это просто случайность с точки зрения БД. Поясню свою мысль: В России ежедневно рождается, предположим, 8 тысяч мальчиков с именнем Саша, рецептура у всех как сами понимаете, разная, а вот внешний вид - практически одинаков. Преобразуем Ваше ТЗ в новые термины Есть такие входные данные к ТЗ: 1.Название ребёнка (например, Саша) 2.Под таким названием ребёнок может родится в нескольких роддомах, вне зависимости от имён его Родителей. 3.Под этим названием ребёнок может имеет несколько различных родителей, т.е. у ребёнка на выходе может быть только название Саша. 4. У родителей может быть несколько детей с другими названиями на выходе, т.е. как аналоги Саша - рецепт классический, а название новое (Петя, Коля) . 5.И на все эти возможные варианты накладывается - тип Использования ребёнка (водим в ясли, нянчимся дома, нанимаем нянечку). Как споектировать такую БД? От чего отталкиваться? С чего начать? А вообще, целевая аудитория Вашей предпологаемой программы? на самом деле, кто заказчик? я так понял, что есть какой-то дядька (условно) у которого есть несколько независимых производств, и он хочет держать руку на пульсе. Другой вариант, например, супермаркет, который получает тортики от разных производителей. Но тогда зачем ему ингредиенты и технология? В общем, не понятно, соответственно стратегия программы весьма туманна Или это курсач? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2011, 08:56 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=37478229&tid=1541989]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
150ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 441ms |

| 0 / 0 |
