|
Вопрос по правильной организации хранения данных
|
|||
---|---|---|---|
#18+
Друзья, добрый вечер Подскажите дилетанту, как правильно организовать БД В БД мне необходимо будет заносить данные об использовании веществ по году и кварталу. Соответственно есть приход (и он распределяется по категориям) и есть расход (так же несколько категорий). Пока вижу следующую структуру таблиц БД: -организации (соответственно, она не одна) -отдел организации (у каждой организации может быть несколько отделов) -отчетный период (предполагаю что правильным будет сделать таблицу с ключом по году и кварталу) -общий список веществ -движение веществ. Здесь соответственно через подстановку заполняются данные по организации, отделу, отчетному периоду, учетному веществу и далее поля по движению такие как поступило (и распределяется по статьям), было использовано (опять таки по разным статьям, несколько полей), остаток на начало квартала (тоже пара полей в зависимости от статей) Ничего другого я не придумал, но как-то мне кажется громоздкой последняя таблица. Может подскажете как ее правильно организовать? И еще момент: получается что в последней таблице выбор отделов придется делать исходя из всего перечня отделов по всем организациям. Как бы этот момент изменить таким образом, чтобы выбрав организацию перечень отделов ограничивался только теми, которые относятся к данной организации? PS прошу помидорами не закидывать за такие вопросы =) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 21:05 |
|
Вопрос по правильной организации хранения данных
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 21:31 |
|
Вопрос по правильной организации хранения данных
|
|||
---|---|---|---|
#18+
def882, Погуглите, должны быть готовые шаблоны учета движения и остатков. У вас упрощенное и неверное представление. Даже на этом форуме была фундаментальнейшая ветка, где все было исчерпано и разжевано. Вроде как автор - Гео, но название сейчас не вспомню - много лет прошло. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 21:33 |
|
Вопрос по правильной организации хранения данных
|
|||
---|---|---|---|
#18+
def882 Ничего другого я не придумал, но как-то мне кажется громоздкой последняя таблица. Может подскажете как ее правильно организовать? что-то конкретное сказать трудно, ничего не понятно... самое сложное тут это вопрос - после прихода вещество распределили и всё (это расход) ? или это вещество потом передается друг другу между разными отделами разных организаций ? как оно передается ? в неизменным виде, объеме и количестве ? а не пошлют ли эти организации куда подальше по поводу обмена данными ? Вася откусил пол яблока и отдал оставшееся Пете, Петя откусил пол яблока и отдал оставшееся Ване, что у Вани? Даже в этом вопросе есть куча нюансов, вплоть до того, что правильный ответ - У Вани понос... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 22:22 |
|
Вопрос по правильной организации хранения данных
|
|||
---|---|---|---|
#18+
vmag что-то конкретное сказать трудно, ничего не понятно... самое сложное тут это вопрос - после прихода вещество распределили и всё (это расход) ? или это вещество потом передается друг другу между разными отделами разных организаций ? как оно передается ? в неизменным виде, объеме и количестве ? а не пошлют ли эти организации куда подальше по поводу обмена данными ? Вася откусил пол яблока и отдал оставшееся Пете, Петя откусил пол яблока и отдал оставшееся Ване, что у Вани? Даже в этом вопросе есть куча нюансов, вплоть до того, что правильный ответ - У Вани понос... Эт вы мне усложнили БД) На самом деле тут есть момент который я изначально не посчитал нужным указать: у меня есть доступ только к конечным данным, типа орг-ия, отдел, год и квартал, наименование веществ и куда они распределились. И это приходится каждый раз сводить в отчет: word, excel, вставить фамилию тут, название здесь, циферки там... Идея заключается в том чтобы сделать БД которая помогла бы этот процесс автоматизировать чтобы не тратить попусту время. Хочу через отчет получать нужные данные в таблице, которые потом вставлять в шаблон, использовать разного рода bookmarks (что для меня вообще темный лес, не понял как с ними поступать, но это следующий этап) Соответственно одна из основ складской БД - документ движения - меня полностью не интересует Впрочем, те схемы что предложены geo скорее всего мне и нужны, надо их только несколько изменить Программист-Любитель def882, Погуглите, должны быть готовые шаблоны учета движения и остатков. У вас упрощенное и неверное представление. Даже на этом форуме была фундаментальнейшая ветка, где все было исчерпано и разжевано. Вроде как автор - Гео, но название сейчас не вспомню - много лет прошло. Да, знания близки к нулю, все подкрепляется в первую очередь ленью и не желанием работать в режиме ctrlC-ctrlV =) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 23:03 |
|
Вопрос по правильной организации хранения данных
|
|||
---|---|---|---|
#18+
авторИ еще момент: получается что в последней таблице выбор отделов придется делать исходя из всего перечня отделов по всем организациям. Как бы этот момент изменить таким образом, чтобы выбрав организацию перечень отделов ограничивался только теми, которые относятся к данной организации? Удобно делать иерархическим справочником (деревянная табличка) и выводить в контроле TreeView: ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 23:20 |
|
Вопрос по правильной организации хранения данных
|
|||
---|---|---|---|
#18+
автор-отчетный период (предполагаю что правильным будет сделать таблицу с ключом по году и кварталу) Нет. Просто крайняя дата периода. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 23:26 |
|
Вопрос по правильной организации хранения данных
|
|||
---|---|---|---|
#18+
Вещество... осторожнее надо. Опасное дело - связываться не с теми веществами; как бы чего не вышло. ст.228 ... до пятнадцати. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 23:35 |
|
Вопрос по правильной организации хранения данных
|
|||
---|---|---|---|
#18+
def882 На самом деле тут есть момент который я изначально не посчитал нужным указать: у меня есть доступ только к конечным данным, типа орг-ия, отдел, год и квартал, наименование веществ и куда они распределились. Ну если только конечные данные, подкрепляемые ленью, то хватит и трех таблиц... 1. Организация -ИНН (сойдет за ИД) -Название 2. Вещество - ИД_Вещества - Название 3. АКТ_Движения -ИД_Движения (ключ-счетчик этой таблицы) -ИД_Вещества -ИНН -Подразделение -ФИО -Дата -Количество -ВидДвижения (опционально) Собираем таблицы в кучу: Организация --ИНН--> АКТ_Движения <-- ИД_Вещества -- Вещество Имеем: - Поставщики и потребители вещества в одной таблице Организация . - Все вещества в справочнике Вещество - Вся движуха в таблице АКТ_Движения (собственно в ней можно хранить и сканы оригиналов) Ну с таблицами Организация и Вещество, думаю и Буратино разберется, пару слов к таблице АКТ_Движения: - именно в ней фиксируем отдел и фио берущего, ибо нам пофиг как таковая актуальность чужой орг-штатки, нам важно зафиксировать кто получил вещество на указанную дату и это будет соответствовать прикрепленному сюда же реальному акту передачи. - фиксировать именно дату передачи, глупо фиксировать кварталы, ибо за квартал вытащить нужные даты легко, а по кварталу нельзя вычислить даже месяц в котором была передача вещества. - Количество: либо приход фиксировать с плюсом, а расход с минусом, либо и приход и расход фиксировать с плюсом, а в ВидДвижения писать соответственно множители 1 для прихода и -1 для расхода... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2020, 00:18 |
|
Вопрос по правильной организации хранения данных
|
|||
---|---|---|---|
#18+
Можно вообще сделать три файла в экселе (или вообще один): Организации, Вещества и Акт, связав их между собой, а в файле Акт делать гиперссылку на скан реального акта передачи, которые хранятся в любом виде например в папке docs ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2020, 00:43 |
|
|
start [/forum/topic.php?fid=45&msg=39932794&tid=1610207]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
58ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 148ms |
0 / 0 |