powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как лучше хранить записи в одной таблице или в нескольких ???
25 сообщений из 70, страница 2 из 3
Как лучше хранить записи в одной таблице или в нескольких ???
    #36300049
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257... лучше изучи законы Мерфи.
Читал и не раз - это класика.
SERG1257... и ты никогда не сможешь гарантировать доступ к данным только твоей софтиной
1) Пишу доку что к чему + даю исходники + могу спросить меня - всегда отвечу, даже если не платят. Я понимаю что мало кто читает доки, но это проблемы тех кто не читает и не спрашивает.
2) Мне то какой смысл, если фирма будет пользоваться софтиной другой организации ??? Но если пользуются - тогда пусть звонят раскажу что к чему.

Esuчто-то там не так и нужно искать причину тормозов
Тормаза тут:
Когда в запросе "подымается" 1-а таблица - это одно дела, а когда 2-е или 3-и .... то и памяти больше кушается же !!! Зразу заметно стало:
- было 4-и таблицы - 838 Мета.
- стало 3-а таблицы - 521 Метр.
ну и результат налицо ....
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36300065
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
potkin,

объём данных - смешной, с индексами и запросами скорее всего беда.
Планы запросов смотрел?

P.S. Заряженное ружьё денормализации выстрелит в самый неподходящий момент
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36302598
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Открыл конфигуратор 1С7.7 и глянул как там всё организовано. Плюс просмотрел созданные DBF-ки.
Вывод: для каждого документа, если у него есть табличная часть, создаётся 2-е физические таблицы (2-е DBF-ки: Шапка и Табличная часть), если нет "Таб.части" то одна DBF-ка.
---------
А вот Журналы - это часть документа, выбраные поля из документа. Не стал проверять создаются ли какие-то DBF-ки или нет - не проверял. Думаю НЕТ !!!
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36302717
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
potkinОткрыл конфигуратор 1С7.7 и глянул как там всё организовано. Плюс просмотрел созданные DBF-ки.
Вывод: для каждого документа, если у него есть табличная часть, создаётся 2-е физические таблицы (2-е DBF-ки: Шапка и Табличная часть), если нет "Таб.части" то одна DBF-ка.
---------
А вот Журналы - это часть документа, выбраные поля из документа. Не стал проверять создаются ли какие-то DBF-ки или нет - не проверял. Думаю НЕТ !!!лучше посмотри 1с 8 там гораздо лучше проработано
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36303004
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nafлучше посмотри 1с 8 там гораздо лучше проработано
Посмотрел.
Понять тяжелова-то: ни одной DBF-ки. Там какой-то другой формат файлов.
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36303085
aston
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что, 1С эталоном стала? Там БД проектируется (вернее, автоматически формируется) совсем исходя из других задач. Назвать ее структуру хорошей как-то даже язык не поворачивается.
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36303669
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
astonА что, 1С эталоном стала? Там БД проектируется (вернее, автоматически формируется) совсем исходя из других задач. Назвать ее структуру хорошей как-то даже язык не поворачивается.
Надо ж чем-то сравнивать ...
А что Вы посоветуете ???
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36303753
aston
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я уже советовал. Приходы и расходы - это не документы - это движения.
Таблица движений - это отдельная сущность, данные в которую вносятся на основании произвольных документов (в документоориентированых средах) или этапов процессов (в процессоориентированных).

Что вы понимаете под журналом вот я не совсем понял.
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36303780
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
astonЧто вы понимаете под журналом вот я не совсем понял.
Переименовал Журналы в Документы !
Журнал - это что-то виртуальное, например "Весь журнал" - это выборка данных из Документов Прихода и Расхода и, например, сортировка по дате ...
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36303840
aston
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опять вы о каких-то мифических документах прихода\расхода.

"Акт инвентаризации", "Накладная на перемещение" между складами - это что? Приход или расход?
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36304111
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
astonОпять вы о каких-то мифических документах прихода\расхода.

"Акт инвентаризации", "Накладная на перемещение" между складами - это что? Приход или расход?

Например "Накладная на перемещение" с одного склада №1 на другой №2:
Это и Расход и Приход. Расход со склада №1 и Приход на склад №2. Тоесть записи будут в 4-х физических таблицах:
1.а) Шапка_Расход -1 запись
1.б) Табличная_часть_Расхода - N-записей (тоесть сами ТМЦ которые перемещаем)
2.а) Шапка_Приход -1 запись
2.б) Табличная_часть_приход - N-записей (тоесть сами ТМЦ которые приходуэм)

Так ???
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36304968
aston
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, не так.

Будет документ вида "Накладная на перемещение", шапка котрого хранится в таблице X.
По факту отражения этого документа в учете, в таблице движений Z появятся записи со ссылкой на этот документ:
- записи о выбытии с одного места хранения;
- записи о поступлении на другое место хранения.

Таблица движений Z ОДНА общая на всю систему (фраза "таблица движений" условна, фактически структура хранения движений может состоять из нескольких таблиц).
Вся отчетность и аналитика основывается на данных "таблицы движений".

Но таблиц документов (операций) сколь угодно много по мере надобности в их электронных аналогах. Структура таблиц для каждого документа (операции) может быть своя сообразно составу реквизитов документа (операции).
Таким образом вы организуете, собственно, учет движений, который фактически независим от документов (операций), которыми они (движения), осуществляеются. А вот количество документов (операций) наращивайте сколько угодно много. При этом, не надо будет менять структуру "таблицы движений".
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36305013
Пупкин_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aston
Приход и Расход - это не Журналы. Это виды движения.
.....
Опять вы о каких-то мифических документах прихода\расхода.


А что есть какие-то международные стандарты ???
Все эти понятия типа "Журналы", "Документы", "Контрагенты", ...... слизаны с всеизвестного 1С-а.
Всё это можно назвать по другому, хоть местами поменять названия, просто люди (бухгалтера, операторы, ...) привыкли к этим названиям, всего лиш навсего.
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36305073
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пупкин_
не лезь ...

aston
вроде ясно ...
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36305108
Пупкин_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aston
.....
Но таблиц документов (операций) сколь угодно много по мере надобности в их электронных аналогах. Структура таблиц для каждого документа (операции) может быть своя сообразно составу реквизитов документа (операции)
......


Уважаемый, а списывать то позиции товаро-материальных ценностей то откуда будете с какой таблицы (табличной части или как там её) ???
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36305121
Пупкин_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тоесть есть приход тмц и есть расход.
Расход "списывает" количественно тмц с прихода.
Тоесть в табличной части приходной накладной надо завести поле с количеством для списания его с данной позиции тмц при расходе.
А в Вашей схемы - непонятно что с чего списывается (с какой таблицы).
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36305225
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, а "Пупкин_" прав: что с чего списывать, с какой табличной части, какого документа ??? Если для каждого документа своя табличная часть.
Тоесть, если есть:
А) "приходной документ" и таб.часть.
Б) "Накладная на перемещение" и у неё если табличная часть: приходная и расходная (аж 2-е).
так при расходе с какой списывать ???????????
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36305373
Есть всего навсего на всю базу 1 таблица (табличная часть) расхода и 1 таблица (табличная часть) прихода и всё !!!
Иначае, если много таблиц (табличных частей) прихода и расхода, то с какой таблицы списывать ???
Я лично так построил свой Товарооборот.
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36305587
aston
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Идем дальше. Пр то, с какой табличной части списывать.
А ни с какой. Если вам нужен партионный учет, то списание вообще не идет с табличной части, списание идет всегда с какой-то партии.

Партия - это единица хранения, оформленная одним приходным документом.
В результате поступления "из ниоткуда" (приобретение товара от контрагента, выпуск готовой продукции из производства), неважно по какому документу, всегда формируются новые партии.
Партия, в самом простом случае, содержит ссылку на исходный документ и единицу хранения (опять же, в самом простом случае - номенклатуру). Однако, в заивисимости от требований учета, партия также может содержать другие атрибуты (например - номер ГТД и т. д.).

Таким образм, мы делаем универсальную модель для осуществления партионного учета, в которой собственно партии отделены от табличных частей конкретных документов, что позволяет без изменения ядра учетной системы наращивать функционал в части добавления сколь угодного количества первичных документов со своими табличными частями. Списание, при отражении расходных документов в учете, всегда идет с партий, которые:
а). могут быть "подобраны автоматически"
б). явно указыны пользователем, при необходимости.

Помните я говорил, что "таблица движений" - условное понятие, структура состоит из нескольких таблиц. Так вот, одной из таких таблиц является "Партия". Фактически - это справочник партий.
Следующая таблица - это "Партии товаров на складе" (виртуальные "складские карточки"). Содержат ссылку на место хранения и партию.
Таким образом, таблица, собственно, для учета движений, имеет, упрощенно, следующую структуру:
- Карточка 1 (расход)
- Карточка 2 (приход)
- Количество 1
- Количество 2

где
Карточка 1 - это "Партия товаров на складе", на которую выполняется поступление
Приход - количество МЦ, приходуемого на Карточку 1
Карточка 2 - это "Партия товаров на складе", с которой осуществляется выбытие
Расход - количество МЦ, выбываемого с Карточки 2

Карточка 1 или Карточка 2 могут быть не заполнены, что означает, что происходит поступение "из ниоткуда" (приобретение у поставщика) или выбытие в "никуда" (продажа клиенту).
Значения в Приходе и Расходе могут быть:
- одинаковыми - если одна и та же единица хранения перемещается с одного места хранения на другое
- разными - если одна единица хранения списывается на выпуск другой единицы хранения (то самое производство).

Исходя из таблицы движений, формируются структуры данных для хранения остатков.
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36306287
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aston
Если честно меня интересует как лучше организовать на физическом уровне, на уровне таблиц в БД.
aston ... списание идет всегда с какой-то партии.
Тоесть в БД должна быть таблица "Партии" в которой и будут храниться:
id_documenta, id_TMC, количество, ....
И в которую про проведении документа, в контексте одной транзакции (для физ.таблиц X, Z, Партии) сохрпаняются данные.
Так ??? Или опять что-то не так понял ???
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36306440
aston
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Структура "партии"
- документ
- единица хранения (ТМЦ + доп. атрибуты при необходимости)

Структура "партии на складе" (наиболе близкий аналог "из жизни" - складские карточки)
- место хранения
- партия
- текущий остаток
Значение поля "текущий остаток" поддерживается автоматически по факту внесения изменений в таблицу "Движения"

Если нужна гранулярность хранения остатков для быстрых выборок, то вводится дополнительная структура данных.

В бухгалтерии понимаете?
Представьте, что:
"Партия" - объект учета.
"Партия на складе" - это аналитический счет для данного объекта учета.
"Движения" - это проводки, где "дебет" - это "партия на складе", по которой осуществляется приход, а "кредит" - это "партия на складе", с которой осуществляется расход. Сумма проводки разбита на 2: сумма в приход и сумма в расход (могут быть разными ввиду разных обстоятельств учета).
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36311399
aston
Извените, но я не понимаю: зачем плодить столько таблиц содержащих данные по ТМ (приход, расход, перемещение, списание, ....). Как же можно списывать ТМ (при расходе) из прихода если приходных таблиц (приход от поставщика, перемещение со склада на склад, ...) много - с какой списывать ???

Надо держать данные по ТМ в 2-х таблицах: приход и расход.
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36311631
aston
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще раз перечитайте все мои посты, где я объясняю, зачем.
НЕ бывает списания с мифических табличных частей. Бывает списание по какому-то методу. И нету таблиц вида "Приход" и "Расход" - это виды движения.
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36311763
Прочитал все Ваши посты.
Если не влом: можите описать структуру БД ???
Что-то типа такого:
таблица: documents - в ней содержатся то-то и то-то.
таблица: documents_Shapka - в ней содержатся то-то и то-то.
таблица: documents_Tab_Chast - в ней содержатся то-то и то-то.
..........
Если не в лом конечно.
...
Рейтинг: 0 / 0
Как лучше хранить записи в одной таблице или в нескольких ???
    #36312031
Извините за наглость, можно ещё связи между таблицами описать ...
Хотябы приблизительно.
...
Рейтинг: 0 / 0
25 сообщений из 70, страница 2 из 3
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как лучше хранить записи в одной таблице или в нескольких ???
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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