|
|
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
KimelВы определённо правы. Я ещё не разобрался до конца. Мне с одной стороны крайне не хочется делать аналог 1с с дургой стороны вести учёт без проводок как-то странно звучит. Просто система проводок потянет за собой кучу счетов и логику между ними, всё это сложно и нужно бухгалтерам. А менеджерам и управляющим нужна информация и инструменты другого характера и я больше на них ориентируюсь. Я плотно общаюсь с разными руководителями и пришёл к выводу, что 1с это далеко не идеал, есть куда двигаться. 1C как раз почти идеал, которая с одной стороны может учитывать "особенности национальной бухгалтерии" с другой не сильно требовательна к компетенции как программиста, так и бухгалтера (т.е. порог вхождения туда, и туда очень низок). Почему все ругают и плюются на 1С. Потому что она как универсал, все делает одинаково плохо. Из опыта автоматизации "менеджеров" я понял, что для них идеальный инструмент это Word, Excel и Outlook. Три эти программы покрывают почти все потребности менеджера по работе. Если к ним еще добавить "систему контроля версий", то покроются все потребности менеджера. <:o) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 06:25 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
mad_nazgul, Можете по подробней по систему контроля версий? Вы имеете ввиду, что допустим накладная будет храить все свои версий на протяжении жизни, чтобы можно было посмотреть как было и как стало? Или что? Я просто понимаю, что 1с как инструмент для продаж Довольно примитивный. Разве что если нужно только накладные набивать (но как выше вы упамянули excel тоже это умеет) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 09:11 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
Дорогой, Kimel. Вы не готовы к созданию ни убийцы, ни жертвы. Пока. Потому что, в первую очередь, не изучили богатый учебный материал по теме, которого даже здесь в избытке. ViPRos самый добродушный здесь человек, с огромным опытом: положительным в техническом плане, и отрицательным - в научном. В его распоряжении не было системы управления базами данных, когда он начал создавать свой продукт. Прошло много лет, и Вы хотите начать делать то же самое с той же фундаментальной проблемой - отсутствием системы управления базами данных. Я уже в тысячный раз обращаюсь к модераторам - переименуйте раздел в "Проектирование реляционных баз данных". Потому что, подавляющее большинство проблем, которые здесь обсуждаются, связаны с РМД. Почитайте, Kimel, сначала несколько тем по этому вопросу. Например, вот здесь http://www.sql.ru/forum/973198-1/db-specific-orm?hl=orm и ViPRos активно участвовал, и Вы сможете более детально понять и его подходы. И сформулируйте какую-то более высокую для себя цель (цели должны быть высокие, как меня учили преподаватели))). Например, исключительно тачскриновский интерфейс Вашей жертвы (к которому все уже привыкли в быту и на улицах) или что-то в этом роде).. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 09:29 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
Бредятина, звидую твоей силе воли: продержаться до 4-й страницы со своими теориями - это надо уметь. авторЯ просто понимаю, что 1с как инструмент для продаж Довольно примитивный и чего же в нем не хватает? (я без подначек - просто для повышения уровня образованности) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 09:37 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
офф: Обана ! В "Кащенко" день открытых дверей... ЧАЛа выпустили... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 09:46 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
Бредятина, Хорошо, прочитаю, спасибо. Я не брезгую учиться. авторПрошло много лет, и Вы хотите начать делать то же самое с той же фундаментальной проблемой - отсутствием системы управления базами данных. Честно говоря не понимаю с чего вы это взяли? Я уже разработал большую часть структуры таблиц базы данных и ключей между ними (я до этого имел с похожими на 1с продуктами и приходилось вручную создавать бд), просто встал вопрос где хранить логику, с этого и начала эта дискуссия. xenix, не хватает некоторых smart штучек. Не хочу их перечислять, так как смысла в этом особого для меня нет. Вот одна из: Вычисление потенциальной прибыли от заказа на лету (так как в 1с себестоимость в принципе не может быть посчитана на лету, то есть до проводки). Я не говорю, что это невозможно реализовать. Просто в коробочных версиях (на которых подавляющее большинство сидит) этого нет. А дорабатывать подобные штуки дело не благое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 09:54 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
KimelБредятина, Честно говоря не понимаю с чего вы это взяли? Я уже разработал большую часть структуры таблиц базы данных и ключей между ними (я до этого имел с похожими на 1с продуктами и приходилось вручную создавать бд), просто встал вопрос где хранить логику, с этого и начала эта дискуссия. Именно не понимаете. Но, обязательно поймете. Вопрос МД важнее вопроса про логику, в этом все дело. KimelВычисление потенциальной прибыли от заказа на лету (так как в 1с себестоимость в принципе не может быть посчитана на лету, то есть до проводки). Кстати, о проводках и БУ в целом. Счета и проводки реализуются в "учетной системе" (в которой учитываются операции) буквально за 1 ч-ч. Здесь тоже было несколько тем по этому вопросу. Проводки вообще не нужны, как отдельная сущность. Так что, Вы правы, возможно, в отношении "изолированной 1с", но граница взаимодействия и цель другие - не бухгалтерский учет, а бухгалтерская отчетность)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 10:10 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
авторне бухгалтерский учет, а бухгалтерская отчетность Как я давно об этом мечтал - увидеть отчет без учета ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 10:36 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
Kimelmad_nazgul, Можете по подробней по систему контроля версий? Вы имеете ввиду, что допустим накладная будет храить все свои версий на протяжении жизни, чтобы можно было посмотреть как было и как стало? Или что? Накладная, она и в Африке накладна. Это один документ с подписью и печатью. Я имею ввиду, например, такую вещь как бюджетирование. Т.е. когда менеджеру надо работать как минимум с двумя-тремя версиями бюджета. Потом после утверждения, еще отслеживать "план-факт". Потом внесений дополнений и изменений в бюджет. Работа "творческая" в общем случае не формализуемая. Excel как раз идеальный инструмент. Или продажник должен иметь несколько версий прайса, в зависимости от погоды на Марсе. В общем система контроля версий, которая могла бы работать с Word и Excel. Была простой и удобной для любого среднестатистического менеджера. А так обычно используется файл помойка с названием по датам. :-) KimelЯ просто понимаю, что 1с как инструмент для продаж Довольно примитивный. Разве что если нужно только накладные набивать (но как выше вы упамянули excel тоже это умеет) Ну я бы не сказал, что 1С совсем уж примитивный инструмент. Хотя её "универсальность" удобства в работе не добавляет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 11:24 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
xenixавторне бухгалтерский учет, а бухгалтерская отчетность Как я давно об этом мечтал - увидеть отчет без учета Непонимание (из-за цитирования отдельных слов) - это проблема того, кто читает, а не того, кто пишет)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 11:46 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
Kimel, Если Вы знаете предметную область, но опыта в программировании мало (сужу по тому, что Вы не знаете что означает 'контроль версий'), то лучше не затевайте это все или наймите профессионала. Для начинающего программиста эта задача не по силам. У вас для решения одной проблемы в лучшем случае будет 1 вариант ее решения. В лучшем! А этого совсем недостаточно. Только человек с солдиным опытом, может все проанализировать и предложить несколько вариантов решения проблемы, расписав все за и против каждого из возможных решений. Добрый мой Вам совет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 12:12 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
KimelКак себе я представляю архитектуру: простые CRUD запросы хранятся в модели, ими занимается orm, так как это очень просто. сложные запросы в хранимых процедурах БД, которые orm будет вызывать. Если бы все запросы сводились к "простым" и "сложным", то пожалуй лучше архитектуры и не придумать. Есть однако ряд бизнес-алгоритмов, которые одинаково "неудобно" реализовывать как на чистом SQL, так и на процедурном ЯП. Например распределение инвойса по заказам. В этом алгоритме сочетается построчная обработка "входящей таблицы-инвойса" (процедурный подход) с контекстными SQL-запросами к базе заказов. На подобных "пограничных" случаях может сломаться любая "безупречно задуманная" архитектура. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 12:16 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
AxeleronKimel, Если Вы знаете предметную область, но опыта в программировании мало (сужу по тому, что Вы не знаете что означает 'контроль версий'), то лучше не затевайте это все или наймите профессионала. Для начинающего программиста эта задача не по силам. У вас для решения одной проблемы в лучшем случае будет 1 вариант ее решения. В лучшем! А этого совсем недостаточно. Только человек с солдиным опытом, может все проанализировать и предложить несколько вариантов решения проблемы, расписав все за и против каждого из возможных решений. Добрый мой Вам совет. Я знаю, что такое контроль версий, в том контексте имелся ввиду другой контроль версий, я лишь уточнял. Я оценил свои силы и готов написать сам. С чего вы взяли, что на решения проблем у меня будет 1 вариант в лучшем случае. По моему это относиться только к умственно отсталым, у меня есть интеллект, я способен искать множество путей и выбирать лучший. Вот сейчас к примеру я оценивал как хранить логику. Понял из этого много. Даже крутые интерпрайз программисты были неопытными и брались за то, что им "не по силам". Так они и стали великими, преодолевая "непроходимые" препятствия. Там где другие останавливаются надо идти дальше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 12:24 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
UridianKimelпростые CRUD запросы хранятся в модели, ими занимается orm, так как это очень просто. сложные запросы в хранимых процедурах БД, которые orm будет вызывать. Например распределение инвойса по заказам. В этом алгоритме сочетается построчная обработка "входящей таблицы-инвойса" (процедурный подход) с контекстными SQL-запросами к базе заказов. Сочетаться то они сочетаются, но зачем их вообще так разделять? КМК в целом это случай сложной бизнес логики, который должен быть реализован на сервере. КМК Kimel неправильный термин использовал, он имел в виду не сложный запрос, а наоборот, простой запрос, вызывающий в БД сложную логику. Да и само деление "простая логика", "сложная логика" КМК ущербно. Например, есть значение А которое вычисляется очень просто. Есть сложная процедура В, которая использует значение A. Получается, что A всяко должно вычисляться там же, где работает B. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 12:56 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
Проблема в том, что разработку систем поручают программистам. Поэтому обработку данных с помощью средств БД заменяют программированием: select --> for Реализация БЛ в ХР делает БД одновременно и системой хранения данных и сервером приложений. Преимущества здесь уже описаны. Ничто не мешает, как указал MasterZiv, генерировать ХР в процессе установки системы под конкретную БД. При этом приложение и не будет знать с какой БД оно работает. Это разовая операция, поэтому не нужно каждый раз генерировать SQL-операторы выборки данных, обрабатывать их в приложении и часами ждать, когда будет получен результат. Вывод: нужно держать программистов как можно дальше от разработки систем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 14:18 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
Например распределение инвойса по заказам. В этом алгоритме сочетается построчная обработка "входящей таблицы-инвойса" (процедурный подход) с контекстными SQL-запросами к базе заказов. На подобных "пограничных" случаях может сломаться любая "безупречно задуманная" архитектура. Внутри ХП пишем банальный курсор. И ничего не ломается. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 14:57 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
LSVКак получить сложный отчет-датасет в другом приложении (допустим есть такое требование) ? Никак. Только повторив в нем всю логику, кот. нужна в этом датасете. А это может быть просто эпическая мегажесть. А если таких датасетов 10-20-50 ?Если интересует как сделать не через БД, то очевидно, через API. Тут иной вопрос можно поставить: как дать клиентам возможность строить свои отчеты не давая прямой доступ к БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2015, 07:55 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
Если Вы планируете использовать конкретную БД, тем более с поддержкой PL/SQL - однозначно переносите логику в БД. Я думаю скорость и надежность важнеее мистической "независимости от БД" или "сложности сопровождения", Если это может делать БД - лучше БД это никто не сделает и в результате все вернется к выполнению запроса. Идеальная модель - это база данных с restfull интерфейсами, где сложная логика реализовани в базе в пакетах и хранимых процедурах, есть нормальная реляционная модель. Правильный ответ был у ТС во втором сообщении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2015, 08:43 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
Алексей ВыхрыстюкЕсли Вы планируете использовать конкретную БД, тем более с поддержкой PL/SQL - однозначно переносите логику в БД. Я думаю скорость и надежность важнеее мистической "независимости от БД" или "сложности сопровождения", Если это может делать БД - лучше БД это никто не сделает и в результате все вернется к выполнению запроса. Идеальная модель - это база данных с restfull интерфейсами, где сложная логика реализовани в базе в пакетах и хранимых процедурах, есть нормальная реляционная модель... А над ней еще одна идеальная модель, с нормальной семантически развитой моделью, и мэппингом на всех трех уровнях к первой идеальной модели, включая интерфейсы к restfull интерфейсам))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2015, 11:17 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
авторА над ней еще одна идеальная модель, с нормальной семантически развитой моделью, и мэппингом на всех трех уровнях к первой идеальной модели, А вот и нет. Над этим благолепием еще надмозг, на ходу сочиняющий необходимые проводки/транзакции ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2015, 11:44 |
|
||
|
Стоит ли переносить часть бизнес логики на БД?
|
|||
|---|---|---|---|
|
#18+
caballeroKimel, не очень понятно зачем вы вцепились в асинхронный режим. в программах типа ERP он никаким каком не разгружает железо, как и подавляющем числе других сайтов. Польза ноды только для сайтов с снодженством мелких запросов (типа сообщния в соцсетях) которые как раз обрабатываются в одном потоке без всякой параллельности - в этом и был изначальный смысл такого решения. не распаралеливание а как раз наоборот. Все что там навернули потом это от лукавого. Впрочем при нынешних ценах на железо подобные вопросы - экономия на спичках. то же касается react - разработка одностраничных приложений гораздо более трудоемкая причем реального смысла в этом нет - пользователю начхать как оно там сделано. А вот на что не начхать будет так это на мобильныей платформы. Кроме того нет смысла в опенсорсе если с этим никто не будет разбираться - серьезно думаете что кто то станет изучать ноду и некий реакт чтобы работать с вашей програмой? Даже исходники смотреть не станут. Расказы фанатов ноды и реакта о том что это типа эволюция не более чем бла-бла-бла. Сегодня гугл пиарит ноду а завтра забьет и станет пиарить что то новое, ненадёванное. Впрочем с таким странным подходом вы вряд ли что то сделаете - поверьте в реализации подобных программ вопросы железа и асинхронности даже не на десятом плане. И кстати ERP немыслима без учетной системы -что можно планировать если нет учета и регистрации хозяйственных операций. в этом посте написано многое, что и я хотел бы сказать по поводу топика. так что дико плюсую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2015, 21:23 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=39031275&tid=1540490]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
174ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 520ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...