ERP системы: что это простыми словами, плюсы и минусы ERP, обзор. Интеграция ERP систем с ЭТП – глобальный тренд на многие годы Практические достоинства ERP-системы
Ведение основной и дополнительной деятельности компанией требуется сопровождать процессом обработки документов, который в свою очередь требует не только использования систем бухгалтерского учета или комплексных ERP-систем. С этой задачей лучше всего справляются ECM-системы, преемники систем электронного документооборота (СЭД). Они внедряются не только для «бюрократических» нужд, но и для уменьшения трудозатрат сотрудников, исключения дублирования информации и некорректного ввода данных. Но здесь зачастую может возникнуть проблема интеграции между системами ERP и ECM. Как ее решить, рассмотрим на примере 1С:Документооборот 8 (далее ДО).
Продукт располагает широкими возможностями для интеграции с другими информационными системами (далее ИС) или системами на базе 1С. Среди них – синхронизация данных и бесшовная интеграция.
Бесшовная интеграция означает, что возможности ДО можно использовать посредством интерфейса из других конфигураций.
Бесшовная интеграция позволяет:
- Создавать документы в 1С:Документообороте на основании данных ИС, устанавливать связи между документами, обновлять реквизиты связанных объектов;
- Запускать бизнес-процессы по документам и справочникам ИС;
- Использовать 1С:Документооборот как хранилище файлов практически любого формата (изображения, тексты, видеофайлы, архивы и прочие файлы). Автоматизирована загрузка файлов и хранение всех версий документов;
- Создавать письма по данным ИС;
- Вести учет рабочего времени и многое другое.
Важно! Настройки, необходимые для осуществления интеграции, уже есть и в 1С:Предприятие 8, и во всех стандартных решениях.
Интеграция 1С:Документооборота с ИС на примере 1С:ERP Управление предприятием 2
В основе бесшовной интеграции лежит веб-сервис 1С:Документооборота. Он является частью документооборота и включен в типовую поставку. Данный веб-сервис не требует программирования и может быть опубликован на любом бесплатном веб-сервере. Поддерживается бесплатный сервер Apatch или Microsoft IIS.
Веб-сервер пользователь фактически не «видит». Он служит своего рода технологической платформой, на которой работает бесшовная интеграция. Со стороны интегрируемой конфигурации (в нашем случае – 1С:ERP) работает «Библиотека интеграции», коротая предоставляет те объекты, с которыми взаимодействует пользователь. Пользователь видит свои задачи в ДО с помощью библиотеки интеграции, видит списки возможных бизнес-процессов, которые можно запустить. Все это находится внутри конфигурации Управление предприятием. И пользователь взаимодействует с библиотекой интеграции внутри 1С:ERP.
Есть функции бесшовной интеграции, которые не требуют практически никакой настройки и создания объектов в документообороте. Например, это работа со списком задач в Управлении предприятием. Вы просто видите на рабочем столе 1С:ERP список задач, как если бы работали в ДО.
Второй пример простого использования интеграции – использование ДО как файлового хранилища. Вы можете выделить в базе 1С:Документооборот отдельную папку, и сканы договоров из 1С:ERP будут храниться в этой папке без создания каких-то дополнительных сущностей.
При желании использовать более интересные возможности бесшовной интеграции будут создаваться связанные объекты. Например, если вы заходите написать письмо, созданное на основании договора из 1С:ERP, и отправить своему коллеге или контрагенту.
Как настроить бесшовную интеграцию с 1С:Документооборот
Процесс настройки требует терпения и внимательности. Для иллюстрации мы выбрали программы 1С:ERP 2.2.4.0.67 и 1С:Документооборот ПРОФ (релиз 2.1.10.2) соответственно.
Настройка включает следующие шаги:
Устанавливаем веб-сервер Apache или IIS запуском из дистрибутива. Инструкция находится в поставке;
Подготовка ДО к использованию бесшовной интеграции. На этом шаге следует решить, какого рода объекты 1С:ERP будут участвовать в интеграции. Например, интеграция только по заказам клиентов и документам реализации. Эти действия выполняются пользователем с правами Администратора. Создадим в базе 1С:Документооборот папку «Из 1С:ERP» и два вида внутренних документов: «Заказ клиента» и «Реализация товаров и услуг». Установим учет по контрагентам и суммам документов. Укажем, что нужно использовать сроки исполнения.
Определим папки для хранения документов из 1С:ERP. В нашем случае это папка «Продажи», а в ней подпапки – «Заказы» и «Реализация».
Публикация веб-сервиса 1С:Документооборота на веб-сервере. Это очень простой процесс. Производится в режиме конфигуратора. Запускаем 1С:Предприятие от имени администратора.
Заходим в программу 1С:Документооборот под пользователем с административными правами. Выбираем пункт меню Администрирование / Публикация на веб-сервере.
Указываем имя публикации и каталог. Нажимаем кнопку «Опубликовать».
Затем можно запустить браузер и загрузить нашу конфигурацию 1С:Документооборот по адресу «http:// your_comp/Doc/ »
Где «your_comp» - имя компьютера или ip-адрес веб-сервера.
А «Doc» - каталог публикации (C:\inetpub\wwwroot\Doc\ ).
Указание адреса публикации в 1С:ERP Управление предприятием 2. Заходим в программу под пользователем с административными правами. Выбираем «НСИ и администрирование/Настройка интеграции/1С:Документооборот».
Указываем те возможности бесшовной интеграции, которые мы планируем использовать.
Устанавливаем флажок «Интеграция с 1С:Документооборотом» , вводим адрес публикации «http:// your_comp/doc/ »
Следующее действие, которое нужно выполнить – это выбрать имя пользователя для подключения к ДО.
Для всех пользователей, работающих в 1С:ERP следует создать в базе документооборота учетные записи и сообщить пользователям их пароли. Доменная авторизация не работает, необходимо использовать авторизацию 1С: Предприятия. Хорошо если имена учетных записей в документообороте и 1С:ERP совпадают.
Признаком успешного подключения станет появление на рабочем столе в «1С:ERP Управление предприятием 2» формы задач из конфигурации Документооборота.
Это способ сказать программе о соответствиях между объектами 1С:ERP и ДО, например, заказом клиента и соответствующим ему видом документа в документообороте (внутренним документом «Заказ клиента»), когда документы 1С:Документооборот создаются на основании документов 1С:ERP. Указываем, как заполняются реквизиты документов, на основании чего и в каком порядке.
- Заполнение на основании. Например, заполнение реквизита «Контрагент» в базе документооборота на основании реквизита «Контрагент» из 1С:ERP. Или заполнение реквизита «Ответственный» в ДО на основании реквизита «Автор» в Управлении предприятием.

- Заполнение каким-то предопределенным значением. Пример, при создании новых документов в ДО, мы будем назначать им папку «Из 1С:ERP». Важный момент – настройка автоматического обновления реквизитов. Настраивая правила, устанавливаем флажок «Обновлять значения реквизитов». Как пример – реквизит «Сумма».
Можно продумать сложную бизнес-логику и внедрить ее в поле «Выражение на встроенном языке». Например, на основании статусов согласования в ДО назначать статусы документам в 1С:ERP.
Также мы можем сообщить, что нужно присоединять печатные формы документов при создании документов в конфигурации 1С:Документооборот. Указываем какие печатные формы будем добавлять и в каком формате.
Пример использования ДО для синхронизации со справочником Контрагенты
1С:Документооборот не позволяет автоматически создавать контрагентов в 1С:ERP Управление предприятием 2. Мы это сделаем другим способом.
В базе Документооборота создаем контрагента (ООО «Новый»). Заходим в карточку и отдаем на исполнение.
Заходим в Управление предприятием на начальную страницу. Нажимаем «Обновить» и видим нашего контрагента. Заходим в карточку контрагента и видим гиперссылку, указывающую на то, что надо вручную связать данного контрагента между ДО и 1С:ERP.
Заполняем ИНН контрагента, записываем и закрываем. Опять заходим и видим, что гиперссылка исчезла, контрагент полноценно занесен в базу 1С:ERP.
Существует еще много способов и возможностей использования бесшовной интеграции ИС с 1С:Документооборотом. Удачи в настройке!
Журнал «Логистика» № 3/2013
Современный бизнес все больше ориентируется на снижение фактора влияния ошибок персонала на любые проводки в информационных учетных системах компаний. Если говорить о WMS, то мы постоянно стремимся к тому, чтобы все процессы на складе были автоматизированы и максимально управлялись самой системой.
Серьезной проблемой для многих компаний является отсутствие актуальных данных о запасах товара на складе в определенный момент времени. Следует заметить, что подавляющее большинство компаний, организующих работу на своих складах с использованием , имеют корпоративную информационную систему учета, называемую . В роли EPR-системы выступают такие программные средства, как 1С, SAP и другие.
ERP является основной базой для работы различных департаментов: бухгалтерия сводит остатки и готовит отчетность, служба закупок формирует заказы на закупку, отдел продаж принимает и обрабатывает заказы клиентов и т.д. Так или иначе все эти операции тесно связаны со складской деятельностью. Как правило, для передачи информации между управляющим офисом и складом используется электронная почта, различные виды табличных документов, которые зачастую составляются вручную или полуавтоматически: выгрузка из ERP или с последующей ручной обработкой.
В качестве примера можно рассмотреть процесс обработки данных о размещенном заказе на отгрузку со склада. Когда менеджер получает заказ от клиента, он формирует его в системе ERP, после чего ему нужно передать на склад необходимую информацию для начала подготовки заказа. Когда заказ срочный и очень важный, скорость передачи данных на склад является одним из ключевых факторов успешной обработки. Если между ERP и WMS не настроена бесшовная интеграция, в качестве носителя информации в лучшем случае выступает Excel-файл, который отправляется по почте. Далее оператор либо вручную переносит данные в систему, либо подкачивает файл (если такая функциональность предусмотрена WMS), предварительно приведя его к требуемому формату. Очевидно, что процесс не оптимален, и малейшая ошибка может привести к серьезным последствиям: срыву отгрузки, отказу в приемке, приемке незаявленных товаров, некорректной работе некоторых складских процессов из-за неверно введенной информации о товаре и т.д. И это лишь один из примеров.
Работа значительной части отделов предприятия зависит от оперативного доступа к балансам склада, поэтому возникает необходимость в том, что процесс обновления запасов в ERP-системе в режиме online шел автоматически. При отсутствии интеграции такое обновление происходит раз в сутки или реже и опять же с использованием человеческого ресурса. Подобное решение сложно назвать рациональным.
Когда мы говорим об интеграции, мы подразумеваем обмен данными в обоих направлениях: из ERP в WMS, из в ERP. Системы обмениваются справочниками, информацией о приходе и расходе товара, данными о балансах товара, об изменении статусов товара и т.д. Итак, что же нужно, для того чтобы обмен данными между двумя системами производился в автоматическом режиме? Как правило, вопрос интеграции сводится к решению следующего ряда задач:
1. Определить основные объекты для передачи из ERP в WMS. Это могут быть:
- данные справочников: товаров, контрагентов, владельцев, пользователей и т.д.;
- данные о заказах на поставку;
- данные о заказах на отгрузку.
2. Определить основные элементы для передачи из WMS в ERP. Например:
- данные об измененных товарах (в случае исправления данных в карточке товара);
- данные о принятых поставках (о реально принятом товаре);
- данные об отгруженных заказах (о физически отгруженном товаре);
- данные о перемещениях запасов (инвентаризационные проводки по корректировке остатков, изменение атрибутов товарных партий: сроки годности, категории запасов и пр.);
- общая информация об остатках (картина стока для сверки запасов в разрезе категорий: доступных и блокированных запасов, запасов на карантине, на контроле качества, в браке и т.п.).
3. Для каждого объекта обмена определить набор конкретных параметров (полей) для передачи между системами.
Например, для заказа на отгрузку это могут быть:
- поля заголовка;
Дата планируемой отгрузки и т.д.;
- поля позиций заказа;
Количество;
Условия по остаточному сроку годности и т.д.
Чтобы принимающая система корректно обрабатывала импортируемые данные, очень важно правильно настроить обработчик, который эти данные передает. Как правило, по- мимо самой передачи данных обработчик должен выбирать параметры, необходимые для корректной работы принимающей системы. Например, при передаче заказа на отгрузку из ERP в WMS, обработчик должен выбирать нужную в данном случае «стратегию» отбора товаров, опираясь на им- портируемые данные (в зависимости от типа товара, типа получателя и т.д.).
4. Для каждого параметра установить набор технических характеристик, таких как:
- длина поля;
- тип данных (символьный, буквенный);
- перечень допустимых значений поля.
Набор необходимых данных определяется в зависимости от принципов работы и ERP-систем.
Для справочников нужно дополнительно определить ту систему, в которой он будет заполняться (как правило, данные справочников первоначально вносятся в одну систему, затем в процессе обмена передаются в другую). Чтобы не было путаницы и дублирования записей, ведущей системой чаще всего выбирается ERP, а WMS становится подчиненной. Это значит, что запись в WMS-системе можно дополнить специфическими для склада данными, но нельзя создавать новые записи, которые содержатся в справочниках ERP.
5. Определить способ доставки данных от одной системы к другой. Многие системы позволяют обмениваться данными не через файлы, а напрямую, как с помощью встроенных обработчиков (например, интеграционный интерфейс в SAP), так и с помощью обработчиков, создаваемых компанией-интегратором, при наличии доступа к таблицам и внутренним процедурам обеих систем (чаще это происходит, когда и WMS созданы разными разработчиками).
К другим способам можно отнести электронную почту, протокол FTP и прямое копирование по шифрованному каналу связи (например, VPN).
6. Определить формат и структуру файлов обмена (если принято решение делать интеграцию с помощью файлов, выгружаемых из одной системы и автоматически захватываемых другой). Это могут быть.xml, .txt, .csv и другие форматы, наиболее удобные для формирования и обработки. Опять же, выбор формата может быть обусловлен спецификой систем WMS и ERP. Каждая система должна иметь возможность как формировать, так и принимать файлы выбранного формата.
7. Определить периодичность и инициаторов обмена данными между системами. Передача информации должна происходить по определенному событию с заданным интервалом времени.
Другими словами, на этом шаге должны быть определены те события, документы, статусы и временные рамки их обработки, которые однозначно определяют момент, когда должен произойти обмен данными. При этом существуют два способа инициации процесса обмена:
- Ручной. В роли инициатора выступает человек, например, оператор склада, который выполняет определенное действие, например, подтверждает окончание приемки поставки, запуская процесс передачи данных из WMS в ERP о принятом товаре.
- Автоматический . Процесс обмена данными инициируется триггером самой системы либо триггером обработчика, который следит за изменением особых полей в базе данных системы и в случае срабатывания запускает процедуру передачи данных.
8. Определить способы контроля работоспособности процесса обмена данными.
Система сигналов об успешном завершении обмена, о потере связи, механизмы регистрации событий помогут проанализировать причины возникших проблем - одним словом, необходимо продумать систему обработки отказов.
Ну и, конечно, заключительным этапом в создании интеграции является реализация решения в соответствии с вышеопределенными правилами. При грамотном проектировании интеграции и правильно настроенной процедуре обмена данными механизм работает без сбоев в режиме 24х7. Участие IT-специалиста требуется только в экстренных случаях.
В завершение отметим, что механизм интеграции имеет ряд неоспоримых преимуществ.
1. За счет того, что при каждом изменении картины стока данные передаются из в ERP-систему, появляется возможность всегда иметь самую свежую информацию о товарных запасах на складе в . Это дает гарантию идентичности систем в разрезе балансов.
2. Интеграция позволяет расширять, изменять и синхронизировать данные справочников обеих систем в режиме реального времени.
3. Благодаря тому, что данные о планируемых заказах на поставку или отгрузку передаются на склад практически сразу после их создания в ERP системе, планирование складских ресурсов, подготовка товаров или складских зон начинается максимально быстро.
4. Разумеется, правильно выполненная задача интеграции позволяет сократить трудозатраты на дублирование информации, а также увеличить скорость обработки потока данных и избежать ошибок при их передаче.
29 марта 2013 г. 14:52Вопрос читателя: В случае использования интегрированного решения СЭД+ЕRP действительно ли есть риск невозможности доработки одной системы из-за ограниченных возможностей другой? Тогда какой смысл внедрения и интеграции, если при этом нельзя использовать полный функционал?
При интеграции нескольких систем не ставится задача управлять объектами или данными одной системы из другой. Обычно системы интегрируют, чтобы использовать общие данные, исключить двойной ввод данных, получить возможность взглянуть на операцию «с точки зрения» нескольких систем и т.п.
Например, из ERP-системы можно будет обратиться к образам документов, хранимых в ECM. Или при исполнении бизнес-процесса получить данные, которые хранятся в ERP-системе.
Интеграция может быть налажена между отдельными системами, а в случае если таким образом интегрируются более двух систем, шлюзов может быть несколько. Другой вариант – использование универсальной корпоративной шины сервисов данных и управления (ESB). Если система не поддерживает расширения, невозможно произвести доработку, загрузить, выгрузить или получить прямой доступ к данным – интеграция с ней будет невозможна. Обычно, это legacy-системы (буквально «доставшиеся в наследство») - доживающие свой век продукты, которые уже не развиваются, а только эксплуатируются. Чаще всего приложение можно доработать или получить доступ к данным: таким образом обеспечивается возможность интеграции. Разумеется, оценивая возможность интеграции систем, нужно оценить и соотнести все выгоды и затраты.
Задача интеграции ERP и ECM систем не возникает на пустом месте - это требуется в процессе автоматизации определенных бизнес-процессов компании .
Как правило, эти бизнес-процессы включают документы - например, процесс согласования счета, заявки или контракта, процесс одобрения кредитной заявки и т.п.
Вариантов взаимодействия систем существует масса, приведу примеры лишь двух из них.
Большинство ERP-систем может работать только с данными, но не с документами, тогда как ECM-системы изначально предназначены для хранения документов. Поэтому первый сценарий – это доступ из ERP-системы к образам документов, которые хранятся в ECM-системе.
Например, при обработке накладной в ERP-системе требуется доступ к ее скан-образу, который может содержать рукописные правки и отметки. С такой задачей постоянно сталкиваются дистрибьюторы, которые организуют массовый развоз товаров по торговым точкам. В случаи выявления брака, недостачи или пересортицы соответствующие отметки производятся в бумажной накладной. Если обработка накладных централизована и территориально производится в другом месте, выходом из ситуации может стать потоковое сканирование накладных в ECM-систему. Интеграция систем позволит связать данные в ERP-системе с образом документа, который хранится в ECM-системе. Бухгалтер, обрабатывающий накладные, получает доступ к необходимой информации (отметки и исправления) и сможет скорректировать данные в ERP-системе.
Другой сценарий интеграции систем в чем-то является зеркальным первому – это организация доступа к данным ERP-системы из ECM-приложения.
Например, в процессе согласования договора для принятия решения может потребоваться информация о результате выполнения предыдущих соглашений, информация о транзакциях между контрагентами, состоянии складских запасов и т.п. Интеграция систем позволит включить в бизнес-процесс ссылки на объекты в ERP-системе (карточки, отчеты, реестры и т.п.), что значительно упростит работу сотрудников, согласующих документ. Есть и другой вариант данного сценария, когда при согласовании счета финансовый контролер обращается к системе бюджетирования, чтобы определить, позволяет ли запланированный бюджет оплатить заявку или, наоборот, все лимиты выбраны. Как видите, примеров привести можно множество.
В приведенных сценариях ECM-система может выступать и как техническое средство управления бизнес-процессами, то есть взять на себя функции BPM (Business Process Management).
BPM-движок, или механизм оркестровки бизнес-процессами, у нее уже есть: необходимо будет разработать коннекторы (механизмы интеграции) к другим системам. Например, коннектор к выбранной ERP-системе.
Другой вариант - ECM-система выступает в роли сервиса. В нашем случае это первый приведенный сценарий, когда пользователь из ERP-системы получает доступ к образу документа. ECM-система предоставляет доступ к документам, то есть выступает в роли репозитория документов. Данный сценарий становится очень популярным, и производители ECM-систем разработали стандарт на интерфейс доступа к онлайн репозиторию документов – CMIS.
CMIS предлагает стандартный и универсальный механизм доступа к документам и целым классам документов через веб-сервисы, то есть через Интернет. Таким образом, при наличии прав можно получить доступ к документам, физически находящемся в другом городе или даже другой стране. Что, впрочем, является вполне обыденной практикой для транснациональных компаний.
Разумеется, полет мысли автоматизаторов бизнес-процессов ограничивается интеграционными возможностями систем. Систем, с которыми невозможна никакая интеграция, становится все меньше – обычно, это уже упомянутые нами выше legacy-системы
Если приложение поддерживает расширение, его можно доработать, чтобы оно обращалось к внешним данным, импортировало или, наоборот, экспортировало данные. Многие современные приложения имеют интерфейс программного доступа (API), который позволяет обращаться к объектам системы. Если такой возможности нет, но есть знания, как организовано хранение данных внутри системы, создается внешнее приложение, которое напрямую обращается к данным системы.
Таким образом, говорить о бессмысленности интеграции не стоит. В каждом случае необходимо определить, какая интеграция требуется, что возможно сделать и каковы будут затраты. А плюсов интеграция систем может принести немало, и приведенные примеры наглядно доказывают это.
СловарьBPM-системы (англ. Business Process Management) – системы управления бизнес-процессами организации. ERP (англ. Enterprise Resource Planning– планирование ресурсов предприятия) – набор интегрированных приложений, позволяющих создать единую среду для автоматизации планирования, учета, контроля и анализа всех основных бизнес-операций предприятия. API (англ. application programming interface– интерфейс программирования приложений) – это интерфейс прикладного программирования для интеграции одного программного обеспечения с другим. CMIS (англ. Content Management Interoperability Services– сервисы взаимодействия при управлении контентом) – пакет стандартов, состоящий из набора веб-сервисов для совместного использования информации, хранимой в не связанных между собой хранилищах контента. Сервисная шина предприятия (англ. enterprise service bus, ESB) – связующее программное обеспечение, обеспечивающее централизованный и унифицированный обмен сообщениями между различными информационными системами. Основной принцип сервисной шины – обмен сообщениями между различными системами через единую точку, в которой при необходимости обеспечиваются контроль, преобразование данных, сохранность сообщений. Все настройки обработки и передачи сообщений предполагаются также сконцентрированными в единой точке, таким образом, при замене какой-либо информационной системы, подключенной к шине, нет необходимости в перенастройке остальных систем. DSS Consulting – компания, оказывающая услуги в сфере управленческого и ИТ-консультирования, представлена на рынке консультирования с 2003 года и уже в течение нескольких лет проводит независимый мониторинг российского рынка информационных систем и выпускает аналитические обзоры на актуальные темы. |
Я и моя команда работают над системой ERP, имеют много модулей (HR, Accounting и т.д.)
Проблема, с которой мы сталкиваемся, состоит в том, что между двумя модулями (HR, Accounting), такими как сотрудники, есть несколько общих объектов
Сотрудники системы HR имеют много деталей, таких как:
Personal Information , Visa Info , Report To , Sources , Training , Etc
Сотрудники в области бухгалтерского учета имеют немного информации
Personal Information , Bank Account , Employee Account (That it)
1) Предположим, что каждый модуль будет работать как автономная версия (это завершено)
2) Предположим, что 2 модуля будут работать вместе, так что сотрудники будут отражаться в обоих модулях, даже если они имеют разные потоки в каждой системе.
Что мне нужно, когда я определяю нового сотрудника в модуле HR, чтобы позволить модулю учета чувствовать это изменение и что происходит в обоих модулях, которые они должны иметь с одним и тем же объектом?
Учтите, что этот сотрудник связан с другими организациями, такими как компания, с которой он связан, и этот субъект компании отличается в обоих модулях (например, он имеет много деталей в HR-модуле, но в компании только для бухгалтерского учета есть некоторые ветки под ним)
Примечание. Каждый модуль имеет отдельную базу данных (не хотел, чтобы увеличить базу данных в автономной версии)
Каков правильный способ разработки обоих модулей для совместной работы? или как автономные???
Слишком поздно, и мы должны проектировать его с самого начала как общие объекты?
И если я использовал общие сущности, которые означают, что я должен сделать общую бизнес-логику и уровень доступа к данным?
Я стараюсь много говорить об этом, но такая информация будет происходить только из реальной реализации и жизненного опыта.
Технологии: Asp.net + Mysql
2 ответа
Не делайте ошибки при соединении всех ваших модулей на уровне базы данных.
Ваш модульный дизайн должен включать как объекты, так и данные. Пользовательский объект должен иметь свои данные. Все клиенты, которым нужен доступ к нему, должны пройти через объект, которому он принадлежит.
Подумайте, как объекты, не решая, как они будут развернуты. Вы можете захотеть, чтобы это был объект в памяти; это может быть распределенный компонент, который вы выбираете для удаленного использования SOAP или REST или CORBA или XML через HTTP. Но дело в том, для разложения проблемы на компоненты без совместного использования схемы.
Если вы сделаете это, вы сможете изменить схему, не затрагивая клиентов. Только владелец должен знать.
В тот момент, когда клиенты попадают в базу данных, все они связаны на уровне базы данных. Это может привести к горю позже.
Просто любопытно - зачем вы пишете ERP-систему с нуля, когда доступно так много коммерческих? Они дороги и сложны, но так пишут ваши собственные. Какова была компромиссная дискуссия?