powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Самописная СЭД
25 сообщений из 129, страница 5 из 6
Самописная СЭД
    #39479649
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnet,

0. Я что то совсем не понимаю чего ты хочешь...
1. BPMS - это набор стандартизированных квадратиков и прямоугольников и т.п., своего рода ЕСКД для бизнес-аналитиков. Что бы был единый стандарт моделирования процессов. Что бы люди любой BPMS совместимой-СЭД могли понять процессы.
2. Схема таблиц, которую я написал тут, легко адаптируется в стандарт БПМС(т.е. по этим таблицам легко можно начертить БПМС схему).
3. Скачай бесплатно Bizagi Process Modeller, и начерти там схему своего процесса(ов)
4. Тебе станет понятно, какие таблицы создавать и какие данные в них записывать.
5. Если чуть постараться, то можно написать процесс импорта схем Bizagi в эту структуру.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479750
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторУ меня сейчас все лежит в базе в табличках, хотелось бы изменить структуру на BMPS.
Не надо так. Если уже все лежит и работает, то бпмс там точно не нужно. Этот коллайдер нужен там, где обычный подход не справляется (читай, есть куча меняющихся бизнес-процессов с большим количеством артефактов -- участников, документов, состояний и т.п. -- для реализации которых программисты уже волосы на голове рвут, а список таблиц в базе превратился в свалку из сотен нарменований и продолжает рости).
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479799
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDi,

Просто надоело уже по каждому чиху лезть в код чтобы добавить столбец для отображения, этой сначала в базе в табличке 'документы' надо добавить столбц, потом в Delphi его отобразить в гриле. Вот и задрался вопросом как бы на это дело уменьшить время.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479808
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnet,

для этого есть ORM, а BPMS про другое.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479816
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDi,
А можно вопрос, вот скажем справочники - у меня сейчас они раскиданы по разным тпблицам,что не очень удобно, думаю, да и потом у каждого справочника есть разные поля для отображения, как у вас реализована работа с ними ?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479819
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnet,

я сталкивался с различными вариантами, когда (тут под справочниками подразумевается любой документ):
- один справочник -- одна таблица;
- все справочники в одной таблице (с кучей полей);
- все справочники в одной таблице (с доп полем для хранения метаинформации и доп данных в xml/json);
- справочник наследуется от другого (старая таблица плюса новая таблица с доп полями);
- таблиц под справочники нет, есть таблица со списком атрибутов, таблица соответствия аттрибутов и справочников, и таблица значений для этих аттрибутов;

Наверняка были еще какие-то варианты, уже и не припомню.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479901
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDi,

Ну скорее я думаю над 4 -ым вариантом.
Хочу сделать примерно так:
1. Таблица Справочник
ID - ид справочника
Name - имя справочника
Сaption - название формы справочника
2. Атрибуты справочника
ID_справочника
Pos - позиция атрибута
Type - тип атрибута
VarName - наименование переменной атрибута
Caption - наименование атрибута
Name - значение атрибута
Как думаете так пойдёт ?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479903
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnet,

Ну и таблица операции
Операции
ID_справочника
Operation - операции
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480113
Прогер123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480162
Фотография битый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnetJaDi,

Ну скорее я думаю над 4 -ым вариантом.
Хочу сделать примерно так:
1. Таблица Справочник
ID - ид справочника
Name - имя справочника
Сaption - название формы справочника
2. Атрибуты справочника
ID_справочника
Pos - позиция атрибута
Type - тип атрибута
VarName - наименование переменной атрибута
Caption - наименование атрибута
Name - значение атрибута
Как думаете так пойдёт ?Читай про EAV
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480496
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
битый,
что сие означает ?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480502
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnetJaDi,

Ну скорее я думаю над 4 -ым вариантом.
Хочу сделать примерно так:
1. Таблица Справочник
ID - ид справочника
Name - имя справочника
Сaption - название формы справочника
2. Атрибуты справочника
ID_справочника
Pos - позиция атрибута
Type - тип атрибута
VarName - наименование переменной атрибута
Caption - наименование атрибута
Name - значение атрибута
Как думаете так пойдёт ?

У нас есть такая система, и даже продается в коробочном варианте. Делали долго, борясь с заранее надуманными проблемами.
Конечно, круто, что юзер на лету может модифицировать логическую структуру, не меняя физической структуры базы данных.
Но, к примеру, конструировать отчеты - "эта што-та", ибо оперировать приходится не запросами к объектам БД, а запросами к логической структуре.
...
Сейчас бы я, скорее всего, на лету создавал нужные структуры сразу в бд, с фиксацией в словаре данных ("заголовок" и т.д.).
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480506
Фотография битый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnetбитый,
что сие означает ? Entity-attribute-value model
Немножко по другому
То есть, как бы три таблицы позволяют делать делать любые справочники.
Заголовки - Entity
У каждого заголовка сколько угодно свойств ( атрибутов ) - Attribute
У каждого свойства сколько угодно значений - Value
Для разных типов можно иметь или разные таблицы Value или одну таблицу со столбцами нужных разных типов либо в MS SQL один целочисленный столбец, поясняющий тип, а второй столбец типа sql_variant
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480519
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кроме того, с еав, начиная с некоторых объемлв, возможны трудноразрешаемые проблемы с производительностью. Например, на виртуальнве столбцы виртуальных таблиц нельзя навесить индексы (есть способы, но громоздкие).
В общем, лучше не связываться.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480525
Фотография битый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДКроме того, с еав, начиная с некоторых объемлв, возможны трудноразрешаемые проблемы с производительностью. Например, на виртуальнве столбцы виртуальных таблиц нельзя навесить индексы (есть способы, но громоздкие).
В общем, лучше не связываться.Ты сейчас о чём? Все три таблицы не виртуальные, а самые обычные. Индексы в твоём распоряжении. Если ты про sql_variant, то да. Индексировать не получится, но можешь добавить varchar столбец с текстовым представлением, а на него уже индекс. Или индексированную вьюху.
ЗЫ. Не так страшен чёрт. Можно и оседлать.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480527
Фотография битый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
битыйчччДКроме того, с еав, начиная с некоторых объемлв, возможны трудноразрешаемые проблемы с производительностью. Например, на виртуальнве столбцы виртуальных таблиц нельзя навесить индексы (есть способы, но громоздкие).
В общем, лучше не связываться.Ты сейчас о чём? Все три таблицы не виртуальные, а самые обычные. Индексы в твоём распоряжении. Если ты про sql_variant, то да. Индексировать не получится, но можешь добавить varchar столбец с текстовым представлением, а на него уже индекс. Или индексированную вьюху.
ЗЫ. Не так страшен чёрт. Можно и оседлать.Вернее, можно делать ещё и вычислимые столбцы нужного типа, а на них уже индекс.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480528
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
битый,
ну, сделай две виртуальные таблички, а индекс на виртуальный столбец повесь толькоина одну из этих таблиц.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480532
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
битыйбитыйпропущено...
Ты сейчас о чём? Все три таблицы не виртуальные, а самые обычные. Индексы в твоём распоряжении. Если ты про sql_variant, то да. Индексировать не получится, но можешь добавить varchar столбец с текстовым представлением, а на него уже индекс. Или индексированную вьюху.
ЗЫ. Не так страшен чёрт. Можно и оседлать.Вернее, можно делать ещё и вычислимые столбцы нужного типа, а на них уже индекс.
В силе остается смешной вопрос: ради чего так уродоваться когда можно просто создать обыкновенную табличку с обыкновенными полями и просто индексировать нужные поля.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480539
Фотография битый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДбитый,
ну, сделай две виртуальные таблички, а индекс на виртуальный столбец повесь толькоина одну из этих таблиц.Зачем мне делать виртуальные таблицы?Три таблицы
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
CREATE TABLE [dbo].[Entity](
	[ID] [int] NOT NULL,
	[TITLE] [varchar](256) NULL,
 CONSTRAINT [PK_Entity] PRIMARY KEY CLUSTERED 
(
	[ID] ASC
) ON [PRIMARY]
)




Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
CREATE TABLE [dbo].[Attribute](
	[ID] [int] NOT NULL,
	[ENTITY_ID] [int] NULL,
	[TITLE] [varchar](256) NULL,
	[TYPE_ID] [int] NULL,
 CONSTRAINT [PK_Attribute] PRIMARY KEY CLUSTERED 
(
	[ID] ASC
)
) 

GO

ALTER TABLE [dbo].[Attribute]  WITH CHECK ADD  CONSTRAINT [FK_Attribute_Entity] FOREIGN KEY([ENTITY_ID])
REFERENCES [dbo].[Entity] ([ID])
ON DELETE CASCADE
GO

ALTER TABLE [dbo].[Attribute] CHECK CONSTRAINT [FK_Attribute_Entity]
GO


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
CREATE TABLE [dbo].[Value](
	[ID] [int] NOT NULL,
	[ATTRIBUTE_ID] [int] NULL,
	[INT_VALUE] [int] NULL,
	[VARCHAR_VALUE] [varchar](896) NULL,
	[DATETIME_VALUE] [datetime] NULL,
	[TEXT_FOR_ALL_TYPE] [varchar](256) NULL,
 CONSTRAINT [PK_Value] PRIMARY KEY CLUSTERED 
(
	[ID] ASC
)
)
GO
ALTER TABLE [dbo].[Value]  WITH CHECK ADD  CONSTRAINT [FK_Value_Attribute] FOREIGN KEY([ATTRIBUTE_ID])
REFERENCES [dbo].[Attribute] ([ID])
ON DELETE CASCADE
GO

ALTER TABLE [dbo].[Value] CHECK CONSTRAINT [FK_Value_Attribute]
GO
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480540
Фотография битый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И вешай на них любые индексы
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480541
Фотография битый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прелесть такого подхода в том, что ты имеешь бесконечное число справочников в статической структуре.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480548
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
битыйИ вешай на них любые индексы
Ну при чем тут эти три таблицы? Я говорю про индексы на поля справочников. А поля "размазаны" по отдельным записям твоей таблицы Value.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480552
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
битыйПрелесть такого подхода в том, что ты имеешь бесконечное число справочников в статической структуре.

Любая СУБД обеспечит то же самое, но в "динамической" структуре.
И при эксплуатации такой системы не нужно будет принимать позу креветки для реализации простейших вещей, уже реализованных в СУБД. Не говоря о возможноти задействования СУБД-специфичных особенностей.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480735
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,
так все-таки как думаете как реализовать справочник более менее универсальный, сейчас справочники в базе раскиданы на n-ое число таблиц.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39480755
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnetчччД,
так все-таки как думаете как реализовать справочник более менее универсальный, сейчас справочники в базе раскиданы на n-ое число таблиц.

Что значит - "универсальный"? Конкретнее, пожалуйста.
Ну и что, что "раскиданы"?

Качай, читай.
...
Рейтинг: 0 / 0
25 сообщений из 129, страница 5 из 6
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Самописная СЭД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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