powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Самописная СЭД
129 сообщений из 129, показаны все 6 страниц
Самописная СЭД
    #39418847
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги, прошу Вас проконсультировать, имели ли вы опыт написания СЭД на Delphi + СУБД (FireBird MySQL и тд)?

Стоит ли тратить силы и время на написание СЭД или лучше если бюджет позволяет купить какую нибудь СЭД Дело ?

Интересно услышать Ваше мнение?

Объем документооборота около 50 исход и 70 вход. за сутки.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39418854
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
очень интересно поставлен вопрос :)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Самописная СЭД
    #39418855
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Главное, чтобы не SharePoint :D
...
Рейтинг: 0 / 0
Самописная СЭД
    #39418874
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я имел дело, на MS SQL + Delphi

Работало хорошо. На 300к+ проводок в день. Но это уже был предел для сервера с 512гб памяти.
Таблицы с > 80млн записей
Сейчас доработали, по нашим оценкам кол-во проводок до 500-700к/день


На самом деле, тут даже к Delphi имеет мало отношения, всё крутиться на MS SQL - и это не правильно .
Делая новую СЭД - то однозначно через сервера приложений.
Если надо, то могу описать базовые принципы.

В любом случае, советую почитать/гуглить/посмотреть YouTube про Bizagi Process Modeller, и брать примеры у лучших собаководов мира)
...
Рейтинг: 0 / 0
Самописная СЭД
    #39418883
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YouTube Video
...
Рейтинг: 0 / 0
Самописная СЭД
    #39418966
энди
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вообще я бы тоже не отказался бы послушать чем плоха директ работа с MSSQL.
Понятно что сейчас модно веб-сервисы, микросервисы и прочее и прочее.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419003
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B,

Да вот базовые принципы и инетересуют.

Для себя я планирую создавать пользователей двух типов - регистратор и исполнитель.

У регистрационных карточек будет статус - Запрос и Выполнен.

Регистратор - регистрация документов и выбор исполнителем Руководителя.

Исполнитель - выбор исполнителей если потребуется и по окончанию работы предоставление отчета об исполнении.

Основной и главный вопрос статус Выполнен у карточки следует автоматически менять при предоставлении отчета исполнителя или статус должен менять регистратор карточки вручную - например в случаи регистрации ответа (исход. письма) на входящее письмо подготовленное исполнителем?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419009
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
эндиНу вообще я бы тоже не отказался бы послушать чем плоха директ работа с MSSQL.

На форуме это можно объяснить так.
База данных должна:

автор1. Записывать данные
2. Читать данные
3. Объединять данные.
4. Больше она ничего не должна.

Только в таком случае получается максимальная производительность и стабильность.
Всё остальное - должны делать сервера приложений, которые получают команды от пользователей.

Можно сказать ещё так:
В SQL-запросах не должно быть никакой логики, или она должна быть минимальной.
т.е. слов IF, Cursor, else
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419026
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnetДа вот базовые принципы и инетересуют.

Есть общая таблица документов(Documents).
В 2х словах - она должна быть. И должна быть максимально "узкой", с минимальным кол-вом полей.
В ней указано:
Код: sql
1.
2.
3.
4.
0. № Документа (Documents)
1. Тип документооборота(DFClassID)
2. Дата создания
3. Кто создатель, UserName


Тип документооборота - подчинённая таблица. Её надо найти по DFCLassesID.
При создании документа, требуется сначала вставить запись в Documents, а потом в подчинённую таблицу.
В твоём случае, тип документооборота - "Регистрация заявки".
В ней указан
Код: sql
1.
2.
3.
 1. № Документа из таблицы Documents
 2. Статус документа (в твоём случае - это статус заявки)
 3. Любые другие поля


При создании документа, требуется сначала вставить запись в Documents, а потом в подчинённую таблицу.
Так же, есть ещё:

Таблица состояний
Код: sql
1.
2.
3.
4.
5.
6.
7.
 0. StatusID
 1. № DFClass
 2. ID Состояния документа
 3. Описание состояния
 4. Допускается ли удаление в этом состоянии ?
 5. Метод продвижения ?
 и другие



Таблица методов:
Код: sql
1.
2.
3.
4.
 1. MethodID
 2. DFClassesID
 3. Описание
 .... стандартные правила правила



wsnetОсновной и главный вопрос статус Выполнен у карточки следует автоматически менять при предоставлении отчета исполнителя или статус должен менять регистратор карточки вручную - например в случаи регистрации ответа (исход. письма) на входящее письмо подготовленное исполнителем?

Это уже относиться к нюансам бизнесс-процесса, тут я мало могу помочь.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419031
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Короче на форуме так просто не объяснить - Дофига писать)
А по сути - ничего сложного нет. На словах объяснять минут 30.

Структура всего документооборота - храниться в базе.
Меняя базу - меняются и бизнесс процессы.

Это позволяет всё очень быстро и главное - однообразно менять.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419051
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_BMS SQL + Delphi

Работало хорошо. На 300к+ проводок в день. Но это уже был предел для сервера с 512гб памяти.
Таблицы с > 80млн записей
Сейчас доработали, по нашим оценкам кол-во проводок до 500-700к/деньто ли сиквел такой слабенький то ли сам сервак (хотя памяти-то немеряно) то ли еще где в консерватории
для примера вот оракл на кривом раке о трех нодах (каждый по 64 гб рамы) и 12 самых жирных таблиц (из 1000+ в одной лишь схеме) весят от 1.3 до 14+ ярдов записей. в самую жирную сейчас условно говоря по 35 лямов записей в сутки вставляется
Valery_Bвсё крутиться на MS SQL - и это не правильно и практически вся логика в пакаджах
Valery_BДелая новую СЭДхотя правда это не сэд а биллинг и около него
Valery_Bоднозначно через сервера приложенийгде апсервера по сути лишь прослойки для вызова логики в pl/sql
Valery_BТолько в таком случае получается максимальная производительность и стабильностьи это даже все еще не экзадата. так что подходы разные имеют право на жизнь
хотя конечно в сиквеле возможно все иначе?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419060
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vavan,

Количество записей - не играет особой роли, для этого придуманы индексы.
"Проводка" - зависит от сложности бизнесс процесса.
Ничто не помешает сделать 1 проводку, которая будет обрабатываться 1 день на самом крутом сервере.
vavanгде апсервера по сути лишь прослойки для вызова логики в pl/sql

Когда аналитики будут повторно запрашивать данные, для получения которых придётся обработать n-терабайт данных, ты задумаешься о этой прослойке.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419062
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В СЭД логика может быть сложной.
И ее проще делать/поддерживать на сервере приложений, чем в СУБД.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419063
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя если честно, доказывать необходимость апп-серверов я тут не хочу.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419067
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.В СЭД логика может быть сложной.
И ее проще делать/поддерживать на сервере приложений, чем в СУБД.
Более скажу - это нужно)
Логика - это задача апп-сервера.
А БД должна заниматься таблицами, и больше ничем.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419078
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_BКоличество записей - не играет особой ролипросто оно зачем-то было конкретно названо и я подумал что причина м.б. в частности именно в кол-ве
Valery_BНичто не помешает сделать 1 проводку, которая будет обрабатываться 1 день на самом крутом серверену так-то да, глотнув фанты можно и не такое затормозить
Valery_BКогда аналитики будут повторно запрашивать данные, для получения которых придётся обработать n-терабайт данных, ты задумаешься о этой прослойкеу нас в системе отчетов кэширование применяется в полный рост, но это ж еще не повод ВСЮ бизнес-логику вытаскивать из базы в апсервера
Alibek B.В СЭД логика может быть сложнойона много где может быть такой
Alibek B.И ее проще делать/поддерживать на сервере приложений, чем в СУБДи зачастую кому-то некоторые задачи проще/удобнее решать именно в базе
Valery_Bдоказывать необходимость апп-серверов я тут не хочуи не надо т.к. при том что я их и сам повсеместно использую вполне отдаю себе отчет что они лишь один из возможных вариантов решения
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419082
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_BБД должна заниматься таблицами, и больше ничемну если она ничего больше толком не умеет то конечно не стоит и мучить
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419104
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vavanи зачастую кому-то некоторые задачи проще/удобнее решать именно в базе
Забыл сделать важное уточнение.
Реализовать сложную логику может быть проще/дешевле на сервере приложений, чем в СУБД.
Да и в общем, лишний слой абстракции обычно добавляет удобств, а не уменьшает их.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419116
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.Реализовать сложную логику может быть проще/дешевле на сервере приложений, чем в СУБДконечно может быть и так но может и ровно наоборот. серебряной пули нет. у меня например часть логики в клиенте, часть в апсервере а часть в базе
Alibek B.лишний слой абстракции обычно добавляет удобстввсяко бывает и порой лучше сделать попроще

во всяком случае существующие условно говоря полмиллиона строк логики на pl/sql в здравом уме переводить в "лишний слой абстракции" пожалуй себе дороже
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419159
Addx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О, пошли религиозные войны, давно не было.
Сервера приложений vs Логика в БД.

Подкину бензичика в костер, что-ли.
Сначала за Логику в БД.
1. СУБД (внезапно!) заточена под эффективную обработку данных. Вытащить данные куда-то, обработать и положить обратно - это как с текстовым файлом работать. СУБД помогает оптимально выбрать информацию - строит планы, кэширует запросы, процедуры, собирает статистику. Никакой сервер приложений это не сможет сделать.
2. Скорость передачи информации внутри Сервера БД (внезапно!) выше, чем передача информации с/из СП в БД. Так что прочитать - исправить - записать из ХП будет существенно быстрее, чем прочитать в БД - обработать в СП - записать в БД.

Ждем развития событий.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419299
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AddxО, пошли религиозные войны, давно не было.
Сервера приложений vs Логика в БД.

Подкину бензичика в костер, что-ли.
Сначала за Логику в БД.
1. СУБД (внезапно!) заточена под эффективную обработку данных. Вытащить данные куда-то, обработать и положить обратно - это как с текстовым файлом работать. СУБД помогает оптимально выбрать информацию - строит планы, кэширует запросы, процедуры, собирает статистику. Никакой сервер приложений это не сможет сделать.
2. Скорость передачи информации внутри Сервера БД (внезапно!) выше, чем передача информации с/из СП в БД. Так что прочитать - исправить - записать из ХП будет существенно быстрее, чем прочитать в БД - обработать в СП - записать в БД.

Ждем развития событий.
Имхо, не взлетит. "Старикам" этот спор десять лет назад обрыд, а молодежь не такая агрессивная, как прежде.

Может, еще пару страниц два-три (мало молодежи на дельфи сейчас) юных мембера побьются, не больше.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419392
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B,

Разве BPMS-системы получили какое-то распространение? Что-то не слышно о них в последние годы ничего -- где-то там у себя затаились.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419394
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лет 7 назад были великолепные перлы!

Что логика в виде for'ов значительно более понятна человеку, чем select. Потому select отстой, а всю логику нужно делать на java for'ами

Специально на принтере распечатал и на стенку на работе повесил. Цитата не точная. Точную цитату из подфорума Java искать лениво
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419396
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не истины ради, а глубоко для оффтопа и флудерства

Addx2. Скорость передачи информации внутри Сервера БД (внезапно!) выше, чем передача информации с/из СП в БД. Так что прочитать - исправить - записать из ХП будет существенно быстрее, чем прочитать в БД - обработать в СП - записать в БД.

Не все так однозначно ( C ) дочь офицера

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

Например: расчеты на графах, обработка ГЕО-данных, парсинг / формирование RTF, компрессия / декомпрессия JPEG, сжатие фильмов и так далее. Даже если СУБД это и умеет. Это задача не для СУБД и ее вполне осмысленно вынести за ее пределы.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419397
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,

Какая-то правда в этом есть. Всякие LINQ'и и ORM'ы делают своё дело: можно разрабатывать системы без написания каких-либо классических SQL-запросов -- они будут генерироваться автоматически внутренней логикой.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419399
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevНапример: расчеты на графах, обработка ГЕО-данных, парсинг / формирование RTF, компрессия / декомпрессия JPEG, сжатие фильмов и так далее. Даже если СУБД это и умеет. Это задача не для СУБД и ее вполне осмысленно вынести за ее пределы.
Не знаю, как может быть быстрее загрузить кучу данных и затем найти в этой куче что-либо перебором, посчитать и т.д., чем сразу на сервере всё сделать. Это что касается графов, гео-данных.

Остальные примеры - это всё одно и то же - работа с blob, к которому субд отношения не имеет. Именно для этого в субд предусмотрены плагины для того, чтобы можно было сделать с данными все, что хочешь (только все равно на сервере, прямо в процессе сервера, а не гоняя их туда-сюда).
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419401
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поскольку оффтоп, убрал под спойлер.

YuRockНе знаю, как может быть быстрее загрузить кучу данных и затем найти в этой куче что-либо перебором, посчитать и т.д., чем сразу на сервере всё сделать.

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

Тот же Oracle PL/SQL, много он предлагает типов данных и коллекций ? Массивы и....

Решать __сложные__ алгоритмические задачи на PL/SQL - вот именно, что получается "перебором" и на уровне поделок на Basic'е в средней школе.

YuRockпредусмотрены плагины для того, чтобы можно было сделать с данными все, что хочешь

Иногда не все, что можно сделать - нужно делать )))

Ну и реализация "плагинов", по крайне мере у Oracle, оставляет желать лучшего. При вызове ф-ции из плагина (например spatial) время переключения контекста SQL - Java внутри СУБД, может зашкаливать за всякие границы добра и зла. Часы, сутки на достаточно небольших объемах данных (конкретно - банальное преобразование из WGS-84 в Spherical Mercator). Получение же данных при array / bulk fetch и таком же insert/update - единицы секунд, обработка в __специализированной__ библиотеке десяток секунд, единицы минут.

Можно тут же и XML вспомнить. У Oracle не все настолько плохо, но то же, грамотный код на приспособленном для этого языке / библиотеке может быть на порядок(и) быстрее, чем та же задача, реализованная чисто на СУБД. Разумеется, зависит от задач.

IMHO & AFAIK

Желательно сначала думать. Для каких задач какое средство предназначено и какие + и - из этого получаются.

Что с желанием "все сделать на сервере приложений", что с желанием "все сделать одним select'ом". Крайности и в том и в другом случае до добра не доводят.

IMHO & AFAIK

YuRockтолько все равно на сервере, прямо в процессе сервера, а не гоняя их туда-сюда

Вопрос цены. Процессор СУБД достаточно дорогое удовольствие. Не только в производительности/стоимости, но и например в надежности

Загружать его __несвойственными__ ему тяжелыми задачами - в реальных и крупных системах может быть крайне разорительно.

Если сотня пользователей на СУБД начнет заниматься трансформацией XML файлов гигабайтного размера для отчетов - можно конечно, заапгрейдить сервер БД и заплатить кучу сотен тысяч вечно зеленых за дополнительные лицензии, но проще поднять рядом блейд сервер, который этой фигней и будет заниматься.

Ну и падение отдельного блейд-сервера с Out of memory относительно безобидно, а падение ядра СУБД корпоративной системы из-за такого изнасилования - вещь сильно не желательная.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419404
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,

Понравилось про деревья. Загружаем данные из субд на клиент и строим на клиенте индекс по ним, чтоб работать с ними быстрее было))

Я вообще не против лишнего уровня, когда он нужен.
Но когда он не нужен - он просто лишний. И я считаю бредом, когда говорят, что субд правильно использовать только как хранилище данных в таблицах, а всю логику оттуда убирать на уровень выше. Ну просто даже не смешно.
Так же бред - что "средний" уровень всегда должен быть.
Да, иногда он нужен. Но если не нужен - то зачем лишняя работа и лишние ресурсы? Лишние затраты?

Если не хватает абстракций - ее можно добавить. Но это не значит, что если хватает, то все равно надо добавлять. Ведь тогда почему не сделать 4, 8 уровней на будущее для универсальности?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419425
avlaxoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDiГлавное, чтобы не SharePoint :D
+100500
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419469
энди
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Просто условно говоря есть хранимые процедуры, посути это те же самые методы апп-сервера, так зачем лишняя прослойка? Я понимаю что например есть операция типа конвертирования того же png например в jpeg и пихать эту операцию в хранимку тоже смысла нет, но обычная то логика завернутая в xp Вас чем не устроила?
Постройте всею систему на хранимках и вот Вам практически тот же app сервер. Да и подключить свой код к MSSQL тоже вроде проблемы не представляет.
В общем использование MSSQL исключительно в виде хранилища кучки таблиц ведет к появлению еще одной 1C.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419480
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevOracle PL/SQL, много он предлагает типов данных и коллекций ?типы устанешь перечислять, а коллекций, ну минимум три
YuRockя считаю бредом, когда говорят, что субд правильно использовать только как хранилище данных в таблицахну если субд по сути и способностям представляет собой тупое хранилище то куда денешься
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419483
энди
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда и автомобиль это всего лишь груда металла, резины и пластика :)
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419492
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
эндиПостройте всею систему на хранимках и вот Вам практически тот же app сервер.
Да. Но это сложнее, дороже, и менее функционально.
Кроме того, сервер приложений позволяет вообще изолировать БД от клиентов и гостей (например СУБД может быть в закрытой сети без доступа в интернет).
Ну и наконец масштабирование трехзвенной системы может быть дешевле двухзвенной.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419505
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
у меня был опыт с разработкой App Server на самом Oracle.
У заказчика неуемно чесалось, чтобы именно на СУБД.
В итоге пришлось его удовлетворять двумя ораклями.

На первой, основной СУБД, была написана вся логика в хранимках с блек-джеком,
вторая СУБД была XE, она была привязана линком на основной сервер Оракли,
а функционал построен на синонимах на первый сервер.

Юзер, соответственно, работал с XE, и не знал, что за ним есть ещё основной сервер.

Плюс на этом App сервере крутились разные другие процессы и всякие джобы.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419521
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.эндиПостройте всею систему на хранимках и вот Вам практически тот же app сервер.
Да. Но это сложнее, дороже, и менее функциональносубъективно это. кому сложнее, а кому и проще. и непонятно почему противопоставляются система с бизнес-логикой на хранимках и апсервера, в то время как одно с другим прекрасно уживается
Alibek B.сервер приложений позволяет вообще изолировать БДсобсно одно из основных предназначений апсерверов. у нас так и юзается, при этом в основном логика в хранимках. но что удобнее/осмысленнее делать в апсервере там и делается. а что-то и в клиенте
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419552
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.эндиПостройте всею систему на хранимках и вот Вам практически тот же app сервер.
Да. Но это сложнее, дороже, и менее функционально.


Пруф в студию. По всем трем пунктам.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419573
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какой пруф? Это элементарная логика.
Сложнее — при разработке сервера приложений можно использовать любой удобный стек технологий. В случае СУБД набор инструментов существенно ограничен.
Дороже — можно просто просмотреть ставки разных специалистов.
Менее функционально — это должно быть очевидно. Даже если не вспоминать об уже названной генерации PNG, есть множество задач, которые в рамках СУБД решаются значительно менее эффективно, нежели с помощью более подходящих инструментов. Сокеты, двухсторонняя связь, интеграция с внешней периферией, таких задач много.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419577
энди
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну я вот тоже не совсем понял
1) Сложнее - если система построена на xp то это посути 1 звено бизнес-логики, в случае использования еще и апп сервера перед ними надо писать еще код на апп сервере по задействованию хранимок. Т.е в данном случае апп сервер лишь усложняет ситуацию.
2) Дороже - смотри выше, посути вместо 1 приложения (xp) мы пишем 2 (xp+appserver). А если еще и appserver вынесен на отдельную машину?
3) Менее функционально, тут пожалуй соглашусь, но так ли много задач которые нельзя реализовать на том же c# и спокойно подключить к MSSQL?

В общем ляпнул не подумав, и забыв добавить IMHO :)
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419581
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Alibek B.Какой пруф? Это элементарная логика.
Сложнее — при разработке сервера приложений можно использовать любой удобный стек технологий. В случае СУБД набор инструментов существенно ограничен.
Дороже — можно просто просмотреть ставки разных специалистов.
Менее функционально — это должно быть очевидно. Даже если не вспоминать об уже названной генерации PNG, есть множество задач, которые в рамках СУБД решаются значительно менее эффективно, нежели с помощью более подходящих инструментов. Сокеты, двухсторонняя связь, интеграция с внешней периферией, таких задач много.

Каким боком сокеты, PNG, связь с внешней периферией относятся к СУБД ?
А вот обработка данных, лежащих в СУБД, средствами самой СУБД как раз ровно то, для чего СУБД предназначены.

Но если хочется сокетов и иже с ними, то для СУБд есть такая штука, как external procedure - пиши собственную DLL, подкладывай её в СУБД и используй из неё. У меня так написана работа с COM Port прямо из Оракла. Ну вот захотелось мне так.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419603
энди
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот вот, у нас вот отчеты FR спокойно генерятся прямо на MSSQL сервере подключением dll :)
Причем dll еще и писана на D7 )
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419609
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecatorКаким боком сокеты, PNG, связь с внешней периферией относятся к СУБД ?да и можно все это при необходимости и из базули. хоть эксели генерить, хоть письма слать и веб-сервисы дергать, управляя железками и т.п.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419619
энди
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опять же если мы говорим о транспорте до клиента и хочется компрессии да шифрования, пользуем openvpn. Я понимаю когда лет 10-15 назад я и сам писал трехзвензку для пары проектов, но сейчас я вот так прикинул и подумал, да нафига мне этот геморрой.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419632
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.Менее функционально — это должно быть очевидно. Даже если не вспоминать об уже названной генерации PNG, есть множество задач, которые в рамках СУБД решаются значительно менее эффективно, нежели с помощью более подходящих инструментов. Сокеты, двухсторонняя связь, интеграция с внешней периферией, таких задач много.

Стесняюсь спросить, каким боком интеграция с внешней периферией и генерация PNG связана с базой данных ?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419644
schiAlibek B.Менее функционально — это должно быть очевидно. Даже если не вспоминать об уже названной генерации PNG, есть множество задач, которые в рамках СУБД решаются значительно менее эффективно, нежели с помощью более подходящих инструментов. Сокеты, двухсторонняя связь, интеграция с внешней периферией, таких задач много.

Стесняюсь спросить, каким боком интеграция с внешней периферией и генерация PNG связана с базой данных ?
Да очень просто - когда нет аргументов, то в ход идут:
PNG
сокеты
дву х сторонняя связь
интеграция с внешней периферией
....

(удивлён отсутствием в списке MP3, JPEG, MKV, КПСС, ГИБДД ...)
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419650
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schi,

Генерация PDF и отчетов, взаимодействие со сторонними системами по всяким soap'ап и rest'ами, микросервисы, в конце концов (которые сейчас на вершине славы).
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419655
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
JaDischi,

Генерация PDF и отчетов, взаимодействие со сторонними системами по всяким soap'ап и rest'ами, микросервисы, в конце концов (которые сейчас на вершине славы).

20296895

А PDF, файлы Excel прекрасно генерятся средствами PL/SQL - народом написано вагон и маленькая тележка, бери и используй.
Тем более, что генерить отчёты там, где лежат данные, и единым инструментарием, имхо, гораздо удобнее.

Ну отсылка/приём почты средствами Oracle делается искаропки.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419658
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDiГенерация PDF и отчетов, взаимодействие со сторонними системами по всяким soap'ап и rest'амину вообще нопремер из pl/sql все это при желании делается
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419660
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.это сложнее, дорожеЛогика железяка. 1 сервер и одна программа дороже, чем 2 сервера и 2 программы.
Потери на откатах разве что дороже. Уже вспоминали КПСС.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419662
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новичок ООП..удивлён отсутствием в списке MP3, JPEG, MKV, КПСС, ГИБДД ...)

Я ПРОТЕСТУЮ !

В моем списке явно было JPEG, а MP3 и MKV фигурировали в более общем виде "сжатие фильмов". Вы просто не внимательно читали.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419667
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecatorсредствами Oracleэтот вообще умеет делать пожалуй все. но что-то разумеется может оказаться хуже чем внешними спец. ср-вами, вот про spatial кажется где-то рядом упоминали, но сам никогда не юзал
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419675
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
vavandefecatorсредствами Oracleэтот вообще умеет делать пожалуй все. но что-то разумеется может оказаться хуже чем внешними спец. ср-вами
ну это понятно, но вот 12-й оракел уже настолько хорош, что я в нём делаю даже то, что раньше делалось софтово.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419680
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
энди1) Сложнее - если система построена на xp то это посути 1 звено бизнес-логики, в случае использования еще и апп сервера перед ними надо писать еще код на апп сервере по задействованию хранимок. Т.е в данном случае апп сервер лишь усложняет ситуацию.
Я полагаю, что даже при использовании сервера приложений все равно должны использоваться хранимые процедуры.
Код по задействованию этих процедур на сервере приложений — рутинный (если не вовсе автогенерируемый).
Объем программного кода, реализующего логику системы СЭД, можно условно считать одинаковым для двух- и трехзвенных систем. Для трехзвенной системы к этому коду нужно будет добавить взаимодействие с БД, но это задача достаточно типовая и несложная. Зато задача разделяется и разработкой этих отдельных задач могут заняться более узкоспециализированные специалисты. Столь же квалифицированный, но более универсальный специалист скорее всего будет дороже.

эндиВ общем ляпнул не подумав, и забыв добавить IMHO :)
ИМХО каждый раз добавлять ИМХО — избыточно.

defecatorНо если хочется сокетов и иже с ними, то для СУБд есть такая штука, как external procedure - пиши собственную DLL, подкладывай её в СУБД и используй из неё. У меня так написана работа с COM Port прямо из Оракла. Ну вот захотелось мне так.
Разумеется это можно сделать.
Но это скорее всего дороже, чем просто использовать COM-порт на ЯП общего назначения.

schiСтесняюсь спросить, каким боком интеграция с внешней периферией и генерация PNG связана с базой данных ?
Они не связаны с базой данных.

эндиОпять же если мы говорим о транспорте до клиента и хочется компрессии да шифрования, пользуем openvpn.
VPN не поможет в случае компрометации рабочего места.
У клиента есть доступ к БД и у потенциального злоумышленника он тоже будет.
В случае трехзвенной архитектуры для доступа к БД необходимо получить доступ к серверу приложений, а его можно защитить надежнее, чем рабочие места клиентов.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419692
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator12-й оракел уже настолько хорош, что я в нём делаю даже то, что раньше делалось софтовопримеры? а то мы все еще на 11-м и ждем с нетерпением свою экзадату
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419695
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Alibek B.
defecatorНо если хочется сокетов и иже с ними, то для СУБд есть такая штука, как external procedure - пиши собственную DLL, подкладывай её в СУБД и используй из неё. У меня так написана работа с COM Port прямо из Оракла. Ну вот захотелось мне так.
Разумеется это можно сделать.
Но это скорее всего дороже, чем просто использовать COM-порт на ЯП общего назначения.

зависит от задачи.
в данном случае оборудование подключается к серверу,
писать отдельный сервис, который будет тупо перебрасывать данные в оракел и обратно нет смысла,
тем более что надо как-то налаживать процесс не только приёма, но и передачи через ком-порт.

Зато отдельная DLL, которую использует оракел напрямую,
дёргая в хранимках экспортируемые DLL функции, не требует никаких отдельных сервисов.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419697
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockAlibek B.это сложнее, дорожеЛогика железяка. 1 сервер и одна программа дороже, чем 2 сервера и 2 программы.
Потери на откатах разве что дороже. Уже вспоминали КПСС.

Потери на откатах? Вы цены Oracle EE за один процессор (без откатов) не напомните?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419717
Для подобной задачи аутглюка с установленным криптопро, работающим через ексчейндж выше крыши будет, чтобы документы были юридически значимыми. А писать сэд следует только для зарабатывания денег на её продаже, но никак не для работы с ней.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419732
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мимопроходилтреднечиталДля подобной задачи аутглюка с установленным криптопро, работающим через ексчейндж выше крыши будет, чтобы документы были юридически значимыми.
А кто нибудь когда нибудь, с этим реально сталкивался? Т.е. реально, правда, документы становятся "юридически значимыми"?

Я с Crypto PRO сталкивался, но юриста мне не выдавали. Т.ч. про юридическую значимость у меня есть сомнения. Дабы википедия уверяет, что для юридический значимости на документе обязательно time stamp и соответствующий сервер, а это появилось только в последней версии КриптоПРО. AFAIK.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419738
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev> А кто нибудь когда нибудь, с этим реально сталкивался?
Leonid Kudryavtsev> Т.е. реально, правда, документы становятся "юридически значимыми"?

Любой "экономически значимый" документ -
автоматически является "юридически значимым".
Но в эту степь углубляться не стоит, сабж о
другом, о технических вопросах.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419750
Addx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Защитим идею сервера приложений. Что-то поприжали ее. )

1. Сервер приложений работает на уровне бизнес-логики. Разработчик легко может сократить число обращений к базе путем кэширования входящих запросов. Объект содержащийся в 100 таблицах собирается и висит в кэше.
2. Балансирование нагрузки. Реализация на уровне СП может быть очень гибкой. Ресурсы для Пети, Васи и Димы (менеджер, кладовщик, бухгалтер, техподдержка) могут выделяться по различным схемам, можно учесть все - хоть фазы Луны.
3. Разделение доступа и вопросы безопасности. Разделение доступа в СУБД сделано на уровне ограничений. Т.е. разрешение либо есть, либо нет. Кроме того, сама структура данных проектируется для обеспечения максимального быстродействия, а не для управления правами. В СП задача подключения одного и того же пользователя в разное время под разными правами решается элементарно.

PS
Рассматривать задачи, связанные с обработкой изображений, конвертации видео и прочих, очень далеких от СУБД смысла нет.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419758
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecatorА PDF, файлы Excel прекрасно генерятся средствами PL/SQL
об извратахКогда-то писал генерацию PDF отчета на FB и отдачу его клиенту. Данные загонялись в XML, затем на XML натравливался XSL-FO. Все это делалось на UDF, написанных на Делфи и дергающих апачевский FOP через JNI. Работало
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419761
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
_Vasilisk_defecatorА PDF, файлы Excel прекрасно генерятся средствами PL/SQL
об извратахКогда-то писал генерацию PDF отчета на FB и отдачу его клиенту. Данные загонялись в XML, затем на XML натравливался XSL-FO. Все это делалось на UDF, написанных на Делфи и дергающих апачевский FOP через JNI. Работало


в спойлере да, изврат
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419811
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Работать-то оно может и работало, но вот нафига
генерить что PDF, что xls средствами хоть PL/SQL,
хоть ХП, UDF etc?

Я даже когда html-форматирование отчетов в ХП
делал - и-то считал это извратом.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419840
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Гаджимурадов РустамРаботать-то оно может и работало, но вот нафига
генерить что PDF, что xls средствами хоть PL/SQL,
хоть ХП, UDF etc?


ежедневно, по джобу в Оракле, запускалась формировалка в оракле отчёта в Excel по остаткам,
после формирования файл рассылался на адреса, которые тоже в базе.
Отсылка делается тоже через Oracle.

В итоге никаких сторонних внешних программ не надо, всё в одном месте.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419841
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустамнафига
генерить что PDF, что xls средствами хоть PL/SQL,
хоть ХП, UDF etc?ну например хотя бы даже чтоб поменьше программировать очередной велосипед на костылях с квадратными колесами если уже есть прилично работающее решение
Гаджимурадов РустамЯ даже когда html-форматирование отчетов в ХП
делал - и-то считал это извратомотчего же безусловно изврат? твоей специфики/задачи разумеется не знаю но я как несколько лет назад приделал отображение html в клиентской морде к-й формируется коллегой в pl/sql так оно и не требует внимания
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419842
Гхостик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
defecatorформировалка в оракле отчёта в Excel по остаткамИ как оно в оракле делается, удобнее чем с шаблонами в TMS FlexCel?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419847
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecatorВ итоге никаких сторонних внешних программ не надо, всё в одном местевот да, понятно что у многих тупо руки чешутся наговнокодить чтонть эдакое величественное для завладения миром но порой и готовые ср-ва б.м. сносно решают
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419855
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vavanпорой и готовые ср-ва б.м. сносно решаютСейчас взяли одного мальчика на фрилансе. Он прибегает, апп-сервера наше все, все уже написано до нас, ничего программировать не нужно, нужно только взять готовые библиотеки. Потом оказалось, что наш бизнес-процесс немного не вписывается в стандартные библиотеки. Мальчик потух и сказал, что здесь он пас
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419885
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevYuRockпропущено...
Логика железяка. 1 сервер и одна программа дороже, чем 2 сервера и 2 программы.
Потери на откатах разве что дороже. Уже вспоминали КПСС.

Потери на откатах? Вы цены Oracle EE за один процессор (без откатов) не напомните?
Какая разница, какая цена.

Вопрос в том, как "Oracle EE" может быть дороже, чем "Oracle EE" + "сервер приложений"?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419886
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator> ежедневно, по джобу в

Запускать по джобу "клиентский" генератор
отчета не получалось или в чем проблема?


> В итоге никаких сторонних внешних
> программ не надо, всё в одном месте.

Смотря что значит "внешних", если внешние
по отношению к СУБД уже есть (у вас же не
всё в БД/СУБД). Кроме того, если отсылка
делалась "самим ораклом" - он в инет торчал?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419888
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vavanну например хотя бы даже чтоб поменьше программировать очередной велосипед на костылях с квадратными колесами если уже есть прилично работающее решение
Ничего встроенного готового нет. Из встроенного
там только "джоб" (оракловый или средствами ОС).
Всё остальное надо писать, и обсуждается лишь где.

Я не вижу ни одного аргумента за "очередной лисапед
на костылях с квадратными колесами" средствами
PL/SQL (или ХП|UDF etc) в сравнении с тем же самым,
но на клиентском языке. Не говоря уже о том, что все
остальные отчеты, кроме этих "ежедневных остатков"
у него итак на клиенте делаются, так что это большой
вопрос, что тут лисапед и лишнее.

> отчего же безусловно изврат?

Всему своё (время и место). Сделать "на стороне сервера",
конечно, можно, но если проще/эффективнее сделать на
стороне клиента - не вижу смысла плодить лисапед, если
нет очевидных веских причин за (которые неочевидны и
не названы).
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419890
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Гаджимурадов Рустамdefecator> ежедневно, по джобу в

Запускать по джобу "клиентский" генератор
отчета не получалось или в чем проблема?


какой ещё клиентский генератор ? Дополнительная программа на сервере с Ораклём ?

Гаджимурадов Рустам> В итоге никаких сторонних внешних
> программ не надо, всё в одном месте.

Смотря что значит "внешних", если внешние
по отношению к СУБД уже есть (у вас же не
всё в БД/СУБД). Кроме того, если отсылка
делалась "самим ораклом" - он в инет торчал?


на почтовый сервер отсылалось, а уже он торчал в интернет
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419898
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator> какой ещё клиентский генератор ?

Ну где-то/чем-то же у вас остальные отчеты
генерились (одной ИСкой или каким-то модулем).

> на почтовый сервер отсылалось

А как?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419940
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Гаджимурадов Рустамdefecator> какой ещё клиентский генератор ?

Ну где-то/чем-то же у вас остальные отчеты
генерились (одной ИСкой или каким-то модулем).


Есть клиентская софтина, там генерятся отчёты самими пользователями, какие им надо.
Но отчёт по остаткам и ещё некоторые отчёты генерятся и отправляются автоматически, ночью, в определённое время.

Гаджимурадов Рустам> на почтовый сервер отсылалось
А как?


В Оракле есть штатный пакет UTL_SMTP, который позволяет принимать/отправлять почту.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419981
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамНичего встроенного готового нетэто в оракле-то? нюню
Гаджимурадов Рустамне вижу ни одного аргумента за "очередной лисапед
на костылях с квадратными колесами" средствами
PL/SQL (или ХП|UDF etc) в сравнении с тем же самым,
но на клиентском языкеразумеется если нет готового или оно не устраивает то выбирается на какой стороне велосипедить практичнее
Гаджимурадов РустамВсему своё (время и место)разумеется
Гаджимурадов РустамСделать "на стороне сервера",
конечно, можно, но если проще/эффективнее сделать на
стороне клиентасамо собой. равно как и в обратную сторону. так а в чем изврат-то?
defecatorВ Оракле есть штатный пакет UTL_SMTPне говоря уже о utl_http, utl_tcp и проч.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419985
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vavan> это в оракле-то? нюню

А шо, появились пакеты с генераторами pdf/xls?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Самописная СЭД
    #39419998
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустамvavan> это в оракле-то? нюню

А шо, появились пакеты с генераторами pdf/xls?

Масса коммерческих примочек и самописных, вроде этого: https://github.com/Pilooz/pl_fpdf
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420000
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустампоявились пакеты с генераторами pdf/xls?родные оракловые хз, давно не изучал а сторонних вроде всегда как грязи было
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420007
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сторонних-то ежу понятно. Спорят же, что "готовое встроенное".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420025
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамСпорят же, что "готовое встроенноене так. речь о "поставить пусть сторонний но готовый/рабочий пакадж и юзать как родной прям из базы" vs "высокоуровнево говнокодить что-то сбоку"
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420142
Leonid KudryavtsevЯ с Crypto PRO сталкивался, но юриста мне не выдавали. Т.ч. про юридическую значимость у меня есть сомнения. Дабы википедия уверяет, что для юридический значимости на документе обязательно time stamp и соответствующий сервер, а это появилось только в последней версии КриптоПРО. AFAIK.

можно цитато? моя википедия уверяет, что достаточно соответствовать 63ФЗ
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420209
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мимопроходилтреднечиталLeonid KudryavtsevЯ с Crypto PRO сталкивался, но юриста мне не выдавали. Т.ч. про юридическую значимость у меня есть сомнения. Дабы википедия уверяет, что для юридический значимости на документе обязательно time stamp и соответствующий сервер, а это появилось только в последней версии КриптоПРО. AFAIK.

можно цитато? моя википедия уверяет, что достаточно соответствовать 63ФЗ
Не буду сейчас в вики рыться, но смысл в этом такой:

Если электронная подпись была похищена / утерена, владелец может заявить о ее компрометировании с определенного момента времени - что логично.

Так же логично, что все документы, подписанные за период, когда она еще была не скопрометирована - валидны

А вот если они были подписаны после факта копроментации - уже нет.

Поэтому нужно знать, когда был подписан документ. А для этого нужен timestamp.

В общем, логика такая. Как эту ситуацию разруливает закон - не знаю.

А иначе можно завладеть чужой электронной подписью (пусть даже устаревшей, из мусорной корзины) и штамповать документы задним числом сколько влезет.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420216
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AFAIK в системе СМЭВ данная проблема решена достаточно элегантно. Вроде таймстемп ставит шлюз. Насколько опять таки это соответствует закону - не знаю.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420233
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockВопрос в том, как "Oracle EE" может быть дороже, чем "Oracle EE" + "сервер приложений"?
Легко. Мы говорим о цене за процессор (вычислительную мощность)

Если нужно хранить и перепаковывать на лету видео с Памеллой Андерсон , то дешевле купить 1 процессорный сервер под Oracle EE для хранения данных и 1 процессорный сервер под апп EE сервер для перепаковки видео перед отдачей клиенту

Это будет дешевле, чем 2 процессорный сервер под СУБД. Скорее всего.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420240
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevСкорее всего.
Ах-ах.

Я вообще себе слабо представляю необходимость покупки Oracle для хранения фильмов внутри базы. Я бы такое вообще не спроектировал, под дулом пистолета разве. Максимум, что в базе - путь к файлу фильма (ссылка). А с ней уже работает пусть скрипт/СП/клиент/еще что-то.
И Оракл для таких баз не подпрыгнул конечно, особенно платный. Для баз, в которых 5 таблиц и бизнес-логики нет вообще в принципе.

Так что примерчик так себе.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420267
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevYuRockВопрос в том, как "Oracle EE" может быть дороже, чем "Oracle EE" + "сервер приложений"?
Легко. Мы говорим о цене за процессор (вычислительную мощность)

Если нужно хранить и перепаковывать на лету видео с Памеллой Андерсон , то дешевле купить 1 процессорный сервер под Oracle EE для хранения данных и 1 процессорный сервер под апп EE сервер для перепаковки видео перед отдачей клиенту

Это будет дешевле, чем 2 процессорный сервер под СУБД. Скорее всего.

Зачем EE, SE достаточно
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420356
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамСторонних-то ежу понятно. Спорят же, что "готовое встроенное".

А в чем разница - встроить новый сервис в сервер или написать (и расширять по мере надобности) специального клиента/клиентов, которые бы изгалялись на все лады?
И, если уж так хочется нагрузить серверный комп - разместить его на той же физической машине, что и сервер. Или наоборот - вынести его на отдельную машину, чтобы разгрузить серверный комп.
Для чего превращать сервер БД в генератор отчетов (например)?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420484
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД, ну я же писал уже - 20297503 и далее
чччДДля чего превращать сервер БД в генератор отчетову нас кажется вроде именно отчетов в бд и не делается а вот скажем шевельнуть железяку или дернуть веб-сервис тоже может быть удобно посреди процедуры в пакадже
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420808
энди
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну я так понял больше тут уже никто не хочет трехзвенку писать? :)
...
Рейтинг: 0 / 0
Самописная СЭД
    #39420974
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
эндиНу я так понял больше тут уже никто не хочет трехзвенку писать? :)Все уже в очередной раз всё доказали.
Как всегда, каждый сам себе)
...
Рейтинг: 0 / 0
Самописная СЭД
    #39421670
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevЕсли электронная подпись была похищена / утерена, владелец может заявить о ее компрометировании с определенного момента времени - что логично. Так просто? чё-то не верится, а нужны ли док-ва, что скомпрометирована?

Напомнило: наезд на человека, водила удрал, владелец заявляет, что к этому времени машину потерял, тока не успел дойти до ГАИ, но сейчас уже нашёл, так что не он. Или ещё круче: заранее планирует наезд, заявляет об утере авто, а потом ...
...
Рейтинг: 0 / 0
Самописная СЭД
    #39421696
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevAFAIK в системе СМЭВ данная проблема решена достаточно элегантно. Вроде таймстемп ставит шлюз...

Получается, что "почта" ставит еще одну, собственную подпись, включающую метку времени? Прикольно.
Как обычная телеграмма. :)
...
Рейтинг: 0 / 0
Самописная СЭД
    #39421713
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98Leonid KudryavtsevЕсли электронная подпись была похищена / утерена, владелец может заявить о ее компрометировании с определенного момента времени - что логично. Так просто? чё-то не верится, а нужны ли док-ва, что скомпрометирована?

Напомнило: наезд на человека, водила удрал, владелец заявляет, что к этому времени машину потерял, тока не успел дойти до ГАИ, но сейчас уже нашёл, так что не он. Или ещё круче: заранее планирует наезд, заявляет об утере авто, а потом ...


Не путай факт заявления с содержанием заявления. Ты сегодня в 13:00 заявил, что подпись скомпроментирована. Факт обращения в 13:00 не требует доказательств.

А если ты сегодня в 13:00 заявляешь "я вчера потерял девственность" - это может потребовать разборок. Во первых, безотносительно всего считается, что с сегодняшнего дня, с 13:00 ты уже не девственник (скомпроментирован). А подробности (было ли что-то вчера) - отдельное дело, которое, возможно, потребует доказательств.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479331
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_BwsnetДа вот базовые принципы и инетересуют.

Есть общая таблица документов(Documents).
В 2х словах - она должна быть. И должна быть максимально "узкой", с минимальным кол-вом полей.
В ней указано:
Код: sql
1.
2.
3.
4.
0. № Документа (Documents)
1. Тип документооборота(DFClassID)
2. Дата создания
3. Кто создатель, UserName


Тип документооборота - подчинённая таблица. Её надо найти по DFCLassesID.
При создании документа, требуется сначала вставить запись в Documents, а потом в подчинённую таблицу.
В твоём случае, тип документооборота - "Регистрация заявки".
В ней указан
Код: sql
1.
2.
3.
 1. № Документа из таблицы Documents
 2. Статус документа (в твоём случае - это статус заявки)
 3. Любые другие поля


При создании документа, требуется сначала вставить запись в Documents, а потом в подчинённую таблицу.
Так же, есть ещё:

Таблица состояний
Код: sql
1.
2.
3.
4.
5.
6.
7.
 0. StatusID
 1. № DFClass
 2. ID Состояния документа
 3. Описание состояния
 4. Допускается ли удаление в этом состоянии ?
 5. Метод продвижения ?
 и другие



Таблица методов:
Код: sql
1.
2.
3.
4.
 1. MethodID
 2. DFClassesID
 3. Описание
 .... стандартные правила правила



wsnetОсновной и главный вопрос статус Выполнен у карточки следует автоматически менять при предоставлении отчета исполнителя или статус должен менять регистратор карточки вручную - например в случаи регистрации ответа (исход. письма) на входящее письмо подготовленное исполнителем?

Это уже относиться к нюансам бизнесс-процесса, тут я мало могу помочь.
Upну тему, а что есть таблица методов ?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479539
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnet,

Этот метод для продвижения документа(Push).

У тебя есть документ, который принадлежит к определённому классу документооборота(бизнесс процессу)
Документ в этом бизнесс процессе имеет определённые состояния.
Какое состояние он примет на следующем этапе - и определяется методом.

Например, бизнесс-процесс "Заявка".
При заведении заявки она получает статус - "Новая".
В этом состоянии у неё будет 2 метода - "Подтвердить" и "Отклонить".
В зависимости от того, по какому методу она пойдёт, у неё будет своё состояние.

Так же, в состоянии документа есть метод "по умолчанию".
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479540
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так же могут быть методы допускающие откат(rollback).
Это самое сложное - т.к. они должны откатить все изменения.

По сути, СЭД - это 2 основных метода:
Код: sql
1.
Document.Push и Document.Rollback
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479576
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_B,

Ок, получается что Заяка - Это бизнес процесс, а какие ещё бизнес процессы можно выделить в Сэд, приведите пожалуйста примера их ?
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479604
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnet,

Их может быть сотни. Это зависит от организации, в которой работает СЭД.
Вообще, ограничивается твоей фантазией.
Но почти все бизнесс процессы делаются через СЭД. Она же BPMS.

Напиши в Гугл-картинках "BMPS схема" и увидишь сотни примеров.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479610
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интернет мкагазин:
Клиент оставил заявку -> Подвтердил устно -> Оплатил -> Заказ собирается -> Заказ собран -> Доставлен клиенту.

Новый сотрудник:
Открыта вакансия - Есть кандидат - Прошёл собеседование - Прошёл проверку СБ - Подготовлено рабочее место - Вышел на работу.

Прояви фантазию)
...
Рейтинг: 0 / 0
Самописная СЭД
    #39479634
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_BИнтернет мкагазин:
Клиент оставил заявку -> Подвтердил устно -> Оплатил -> Заказ собирается -> Заказ собран -> Доставлен клиенту.

Новый сотрудник:
Открыта вакансия - Есть кандидат - Прошёл собеседование - Прошёл проверку СБ - Подготовлено рабочее место - Вышел на работу.

Прояви фантазию)

С фантазией плохо, и с BMPS схемами дела не имел, натолкните может как примерно могут выглядит мои бизнес-процессы?

У меня сейчас все лежит в базе в табличках, хотелось бы изменить структуру на BMPS.

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

Ну и статусы - Заявка отклонена, заявка переадресована, дан ответ по заявке
...
Рейтинг: 0 / 0
Самописная СЭД
    #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
Самописная СЭД
    #39481490
Фотография битый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДбитыйИ вешай на них любые индексы
Ну при чем тут эти три таблицы? Я говорю про индексы на поля справочников. А поля "размазаны" по отдельным записям твоей таблицы Value.Ну, да...
Вот такой индекс, например, можно сделать для всех полей типа DATETIME/
CREATE NONCLUSTERED INDEX [IX_Value_DATETIME] ON [dbo].[Value]
(
[DATETIME_VALUE] ASC,
[ATTRIBUTE_ID] ASC
)
и/или такой
CREATE NONCLUSTERED INDEX [IX_Value_ATTRIBUTE_DATETIME] ON [dbo].[Value]
( [ATTRIBUTE_ID] ASC,
[DATETIME_VALUE] ASC
)
...
Рейтинг: 0 / 0
Самописная СЭД
    #39481493
Фотография битый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДбитыйПрелесть такого подхода в том, что ты имеешь бесконечное число справочников в статической структуре.

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

Ну при чем тут эти три таблицы? Я говорю про индексы на поля справочников. А поля "размазаны" по отдельным записям твоей таблицы Value.Ну, да...
Вот такой индекс, например, можно сделать для всех полей типа DATETIME/
CREATE NONCLUSTERED INDEX [IX_Value_DATETIME] ON [dbo].[Value]
(
[DATETIME_VALUE] ASC,
[ATTRIBUTE_ID] ASC
)
и/или такой
CREATE NONCLUSTERED INDEX [IX_Value_ATTRIBUTE_DATETIME] ON [dbo].[Value]
( [ATTRIBUTE_ID] ASC,
[DATETIME_VALUE] ASC
)

Ага, и точно также также для всех полей любого конкретного типа.

Вот она, мечта школьника: у всех справочников все поля индексированы.
...
Рейтинг: 0 / 0
Самописная СЭД
    #39481615
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Материализованные представления? Нет, не слышали.
...
Рейтинг: 0 / 0
129 сообщений из 129, показаны все 6 страниц
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Самописная СЭД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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