K2 Ядро
У закритій ERP розробник часто бачить тільки зовнішній інтерфейс або обмежений API. {| class="wikitable" style="width:100%; background:#e3f2fd;"
components/
- Python;
- TypeScript;
- JavaScript;
- сучасні PHP-фреймворки;
- PostgreSQL;
- API;
- веб-компоненти;
- гриди;
- форми;
- dashboard-панелі;
- інтеграційні сервіси. Дублікати, старі права, неактуальні довідники й зайві документи потрібно очищати. |-
| Технічний принцип. Структура даних компоненти має бути частиною архітектури, а не випадковим набором таблиць. базову архітектуру платформи: роботу модулів, бази даних, довідників, користувачів, ролей, доступів, компонентів, API, інтеграцій, веб-інтерфейсів, бізнес-процесів, оновлень і розширень виступає ключовою рисою K2 Ядро реалізується засобами це центральна частина K2 ERP та K2 Cloud ERP, яка. K2 Ядро |- | Перевага компонентів. Компонент можна розвивати, тестувати, версіонувати й публікувати як частину екосистеми, а не як випадкову доробку. |}
Безпека має бути частиною ядра, а не додатковим модулем “після всього”. {| class="wikitable" style="width:100%; background:#e8f5e9;"
Через API можуть виконуватися:
K2 Ядро і магазин доповнень
Спільні довідники — це одна з практичних переваг ядра K2. |}
Сучасна ERP не функціонує ізольовано. |}
K2 Ядро — це фундамент K2 ERP та K2 Cloud ERP.
Модель Open Core означає, що базова або важлива частина системи здатна бути відкритою для вивчення та розробки, але ERP-продукт загалом залишається комерційним. {| class="wikitable" style="width:100%; background:#e8f5e9;" init_db_user() Партнери K2 можуть продавати, впроваджувати, супроводжувати, навчати, створювати модулі, запускати партнерську хмару й розробляти галузеві рішення для бізнесу. |}
</syntaxhighlight>
!
K2 Ядро як відкрите ядро
Приклад запису в історії:
K2 Ядро і безпека
| Цінність відкритого ядра. Розробник здатна створювати рішення для бізнесу поверх наявної ERP-основи, а не писати власну платформу, власні довідники, власні доступи й власну інфраструктуру з нуля. |
│ ├── views.py
Інтеграційні механізми ядра
- облікові записи;
- ролі;
- права;
- сесії;
- контроль експорту;
- контроль імпорту;
- журналювання;
- аудит дій;
- обмеження доступу до конфігурацій;
- захист токенів;
- контроль API;
- резервне копіювання;
- відновлення;
- ізоляція середовищ. |}
Що входить до K2 Ядра
До базових інтерфейсних механізмів можуть належати:
- модулі працюють в одному інформаційному середовищі;
- довідники не дублюються;
- користувачі мають єдину модель доступів;
- інтерфейси мають спільну логіку;
- компоненти мають версії;
- зміни описані в history;
- API застосовується для контрольовано;
- інтеграції логуються;
- оновлення версій тестуються;
- новий компонент підсилює платформу, а не створює окремий острів. |}
Якщо CRM, складський облік, фінансовий блок, електронний документообіг і аналітичні інструменти використовують одні й ті самі довідники, бізнес-середовище отримує менше дублювання, менше помилок і більше довіри до даних. └── example_module/
| - | Помилка. Оновлювати компонент без версії, без history.txt і без тестування — небезпечно для ERP. Якщо ядро має зрозумілі правила компонентів, бази даних, API, доступів, інтерфейсів і оновлень, розробники можуть створювати доповнення, які не ламають систему. K2 Ядро має забезпечувати умови, у яких компоненти можуть підключатися, оновлюватися, взаємодіяти з базою, використовувати спільні довідники й не ламати роботу інших модулів. Якщо модулі використовують спільну інтерфейсну логіку ядра, платформа стає зрозумілішою. Ознаки правильного використання:
Компоненти K2Чому ядро важливе для K2 ERP?
</noinclude>
{{SEO
Шаблон для службового SEO-опису сторінки. }}
K2 Ядро і веб-архітектураЩо таке K2 Ядро?Типовий файл:
Одним із ключових принципів K2 Ядра виступає як робота з єдиною базою даних. Що забезпечує
| |||||||||||||||||||||||||||||
оновлення версій ядра та компонентів
Ядро K2 можна розглядати як технічний і логічний фундамент ERP-системи. API потрібне для зв’язку ядра, модулів, зовнішніх сервісів, інтеграцій і веб-інтерфейсів. У відкритішій моделі він здатна глибше розуміти логіку системи, розширювати платформу, створювати модулі й інтеграції на базі ядра. Новий компонент, інтеграційні функції ERP, форма, грид, довідник або бізнес-процес не створюються “з нуля”, а використовують уже наявний фундамент платформи.
Магазин доповнень K2 залежить від якості ядра. |-
критично. Приховати кнопку в інтерфейсі недостатньо. До нього належать архітектурні принципи, системні сервіси, базові об’єкти, робота з базою даних, користувачами, ролями, правами, компонентами, меню, формами, грідами, API, оновленнями та інтеграціями.
Сторінка K2 Ядро має допомагати користувачам і пошуковим системам зрозуміти, що виступає як технічною та архітектурною основою K2 ERP: ядро, відкрите ядро, Open Core, модулі, компоненти, єдина база даних, спільні довідники, API, ролі, доступи, K2Grid, PostgreSQL, Python, TypeScript, PHP, оновлення версій, магазин доповнень і партнерська ERP-платформа. Воно дає платформі модульність, повторне використання, відкритість для розробників, контроль даних, єдині довідники, спільну архітектуру, інтеграції та можливість масштабованого розвитку української ERP. Дія має перевірятися і на серверному рівні, і на рівні доступу до даних.
K2Grid можна розглядати як один із важливих інтерфейсних механізмів K2. У K2 Cloud ERP Python доступ до бази даних здатна здійснюватися через глобальний об’єкт:UX-перевага. Спільне ядро інтерфейсів дає можливість користувачам швидше навчатися, бо різні модулі працюють за однаковою логікою. Якщо компонент створює нові таблиці, він має робити це не хаотично, а через зрозумілу структуру, яка здатна бути оновлена, задокументована й підтримана. * базову платформу;
Dev, Test, Prod у ядрі K2
API в K2 Ядрі
Його головна цінність — перетворення ERP із набору окремих доробок на єдину платформу. Ядро має підтримувати дисципліну середовищ. Для ERP це здатна бути дуже практичним підходом. Частина ядра K2 Ядро створює умови для повторного використання логіки. Ядро дає партнерам:
Так. Якщо розробник створює компонент складу забезпечується через У простому поясненні ядро — це те, що не потрібно створювати заново; так само реалізовано CRM, документообігу, фінансових заявок, ресторану, готелю, інтернет-магазину або виробництва, він має спиратися на ядро, а не дублювати базові механізми. │ ├── models.py
[[Категорія:Розробка K2 ERP]]
{| class="wikitable" style="width:100%; background:#e8f5e9;"
У K2Grid можуть використовуватися:
Журналювати потрібно:
* [[K2 ERP]]
* [[K2 Cloud ERP]]
* [[Архітектура K2 ERP]]
* [[База даних K2 ERP]]
* [[Розгортання K2 ERP]]
* [[Розгортання системи K2 Cloud ERP Python для розробників]]
* [[Розробка веб-інтерфейсів K2]]
* [[Рекомендації для розробників K2]]
* [[Компоненти K2 ERP]]
* [[K2Grid]]
* [[Гриди K2 ERP]]
* [[Форми K2 ERP]]
* [[Магазин доповнень K2]]
* [[Сертифікація K2]]
* [[Партнерська програма K2]]
* [[Доступи K2 ERP]]
* [[Ролі K2 ERP]]
* [[Безпека K2 ERP]]
* [[API]]
* [[ORM]]
* [[Python]]
* [[TypeScript]]
* [[JavaScript]]
* [[PHP]]
* [[PostgreSQL]]
* [[Open Core]]
* [[Відкритий похідний код]]
* [[Міграція з 1С]]
* [[Міграція з BAS]]
init_db()
├── requirements.txt
=== Чи можна створювати власні модулі на базі K2 Ядра? ===
[[Категорія:Архітектура K2 ERP]]
init_db_uri()
[[Категорія:PostgreSQL]]
K2 Ядро можна умовно поділити на кілька груп механізмів. ! Не можна тестувати ризикові зміни одразу на бойовій системі. Це означає, що K2 не виступає як на 100% вільною Open Source-системою без комерційних обмежень, але частина платформи здатна бути доступною для вивчення, адаптації та розробки розширень. Це означає, що вже створені частини системи можуть бути корисними для нових модулів. Для українського бізнесу ядро K2 має ще одне значення — технологічну незалежність. |}
<syntaxhighlight lang="text">
|-
| '''Критично.''' <span style="color:#b71c1c;">Якщо ядро слабке, кожен новий компонент перетворюється на окрему доробку. K2 Ядро має підтримувати інтеграції з іншими системами й сервісами. '''K2 Ядро''' — це базовий рівень платформи K2 ERP, який відповідає за спільні механізми роботи системи.</span>
|}
Міграція має спиратися на ядро:
Для компонентів важливі:
Третя помилка — писати власний CRUD, якщо виступає як стандартний грид або форма.</span>
|}
Без ядра кожен компонент здатна мати власні довідники, власних користувачів, власні права, власний інтерфейс, власні інтеграції й власну логіку оновлень.== Типові помилки при роботі з ядром ==
== K2.db і доступ до бази ==
Сучасне K2 Ядро орієнтоване на Web-архітектуру.</span> У ньому закладені правила роботи з даними, користувачами, ролями, доступами, компонентами, оновленнями й бізнес-логікою. Воно приймає не без зусиль старі інформаційні дані, а нову інформаційну модель підприємства. |-
| '''Технічний акцент.''' <span style="color:#1565c0;">K2 Ядро — це шар, який дає можливість платформі бути не набором окремих програм, а цілісною ERP-системою.</span>
|}
Сьома помилка — публікувати зміни без тестування. До технологічного шару можуть належати Python, TypeScript, JavaScript, PHP, PostgreSQL, API, ORM, K2Grid, компоненти, сервер оновлень і веб-інтерфейси. Якщо компанія-користувач функціонує на закритій або застарілій платформі, воно залежить від конкретного вендора, старих спеціалістів, старої архітектури й обмежених можливостей розвитку.</span>
|}
{| class="wikitable" style="width:100%; background:#e3f2fd;"
'''Відкрите ядро''' дає розробникам і партнерам можливість:
K2 Ядро має підтримувати контрольовану модель оновлень. Критерій
! Це означає, що модулі не повинні створювати власні ізольовані інформаційні острови.</span>
|}
У технологічному шарі K2 можуть використовуватися:
Четверта помилка — не враховувати права доступу. як приклад:
|-
| '''Екосистемний ефект.''' <span style="color:#2e7d32;">Сильне ядро дає можливість магазину доповнень рости не хаотично, а як контрольована ERP-екосистема. До безпеки ядра належать:
Ядро не тільки функціонує з базою й модулями, а й задає підхід до веб-інтерфейсів. Якщо кожен із цих модулів створюється окремо, платформа оперативно стає фрагментованою.[[Категорія:Українське програмне забезпечення]]
|-
| '''Технологічний акцент.''' <span style="color:#1565c0;">K2 Ядро має підтримувати сучасну веб-логіку: браузерний доступ, API, модулі, компоненти, хмару, інтеграції й масштабування. Під час [[Міграція з 1С|міграції з 1С]] або [[Міграція з BAS|BAS]] ядро K2 має особливе значення. |-
| '''Правильний підхід.''' <span style="color:#2e7d32;">Міграція має використовувати ядро K2 як шанс побудувати чисту, єдину й контрольовану ERP-архітектуру. |-
| '''Ознака здорової архітектури.''' <span style="color:#2e7d32;">Кожен новий компонент K2 має робити сильнішою всю систему, а не збільшувати кількість ізольованих доробок. {| class="wikitable" style="width:100%; background:#ffebee;"
│ ├── forms.pyЯдро потрібне для того, щоб уникнути цієї фрагментації. |-
|