Класи та команди K2 ERP Python
Клас K2ReportEmbed
K2.logging_message(
Основні методи K2Report
│ ├── roles/
Документ описує загальні вимоги до компонентів K2 ERP, базові системні класи, структуру компонентів, правила документування та приклади використання окремих класів. Це потрібно для того, щоб систему можна було оновлювати, документувати, тестувати й підключати до інших модулів без ручного хаосу. ! Параметри:
{% endblock %}
domain_name
|
Назва домену |
domain_protocol
|
Протокол домену |
domain
|
Поточний домен |
port
|
Порт |
db
|
Підключення до бази даних |
default_language
|
Мова за замовчуванням |
Створює слайдер зображень у контейнері або модальному вікні. SEO-опис
Приклади використання K2
|-
| __init__()
| Ініціалізація об’єкта
|-
| content()
| Формування контенту
|-
| create_names_yml()
| Створення назв YML-конфігурацій
|-
| search_class_prop()
| Пошук властивостей для розширення класу
|-
| select_grid()
| Вибір grid
|-
| show_grid()
| Відображення grid
|}
! | Слайдер зображень, loader, видалення loader та повідомлення користувачу |}
Системні класи K2 ERP забезпечують базову роботу ядра, об’єктів, безпеки, шляхів, даних, налаштувань, повідомлень, перекладів і оновлень. Створити користувача на рівні бази даних:
current_user_permissions = K2().get_user_permissions()
Copyright © 2000-2025 К2®, Rudiuk Serhii. це технічна документація; так само реалізовано які працюють із Python-версією K2 ERP. |-
| create_contact()
| Створює контакт на основі даних ліда
|-
| check_lead()
| Перевіряє, чи існує контакт із заданим телефоном
|-
| crm_data(route, data)
| Отримує інформаційні дані для друкованих форм CRM
|-
| process_options()
| Обробляє параметри JSON-запиту й налаштовує об’єкти K2Grid
|}
removeBootstrapLoader()
!
K2().create_db_role(user_name, password)
! SEO-опис
showUserAlert(message, type = 'light')=== createImageSliderModal() ===
Призначення документаМетод create_contact()K2.get_path_abs(__file__) file_class = 'k2equipment' Клас K2Report | |
|---|---|
name
|
Назва компоненти |
version
|
реліз системи компоненти |
Приклади:
dashboard_settings=k2report_embed
! Клас
Клас так само наслідується від K2Obj. Призначення
k2log==2.0.0.2 k2grid==2.0.4.1
create_contact() створює контакт на основі даних існуючого ліда. Метод
! Метод базовий метод: == Вимоги до компоненти K2 ERP ==
Основні атрибути
-
У каталозі
languages/
│ ├── models.py
! Атрибут
]== Локалізації ==
Клас містить методи для обробки запитів на затвердження змін у технічній документації обладнання. k2report_embed = K2ReportEmbed(reports_id) Клас K2CRMПриклад: Методи класу K2/languages/en/LC_MESSAGES/messages.mo
{| class="wikitable" style="width:100%;"
├── __init__.py
K2().get_current_user()
У компоненті має бути вказане авторство.<pre>
Шаблони мають бути розроблені так, щоб не конфліктувати з глобальними шаблонами системи. K2.get_platform()
{| class="wikitable" style="width:100%;"
removeBootstrapLoader(containerId)
datasource_value = ["SELECT * FROM table1", "SELECT * FROM table2"]
! | Від <code>K2Obj</code>
|-
| Де описуються залежності компонент?<code>K2Production</code> застосовується для для виробничих процесів. Призначення
Метод здатна зберігати повідомлення в журналі та відправляти його клієнту через Socket.IO. Призначення
)
Клас взаємодіє з базою даних, керує файлами звітів і генерує JSON-дані для подальшого використання.</div>
Видаляє анімацію завантаження з контейнера. У K2 ERP використовуються допоміжні JavaScript-функції для роботи з інтерфейсом, зображеннями, завантаженням і повідомленнями користувачу.<code>K2Obj</code> — базовий клас для об’єктів системи K2 ERP. Призначення
yml_path = K2.search_yml('users')
[[Категорія:Документація для розробників]]
Ця сторінка потрібна для того, щоб розробники K2 ERP працювали з компонентами в єдиному стилі. reports_id = [
<pre>
!
Клас K2EquipmentFunction
! * як має виглядати структура компоненти;
* які файли виступає як обов’язковими;
* де зберігати моделі, роути, хуки й додаткові об’єкти;
* як описувати залежності;
* як оформлювати документацію для користувачів і розробників;
* які базові класи доступні в ядрі K2 ERP;
* як використовувати системні API;
* які JavaScript-допоміжні функції доступні для інтерфейсу. Поле
Отримати поточного користувача:
Додає анімацію завантаження у вказаний контейнер. │ ├── schema/
{| class="wikitable" style="width:100%;"
| |
|---|---|
designer()
|
Відображає сторінку редагування друкованої форми |
viewer()
|
Відображає сторінку перегляду друкованої форми |
dashboard_viewer()
|
Відображає сторінку перегляду дашборду |
dashboard_designer()
|
Відображає сторінку редагування дашборду |
json_data_create(...)
|
Створює JSON-дані на основі джерел даних і періоду |
save_report_id()
|
Зберігає ідентифікатор і конфігурація звіту |
mrt_report_create(report_id, design_type_id=None)
|
Створює MRT-файл звіту на основі шаблону |
table_report_data(datasource_value, datasource_keys)
|
Обробляє SQL-дані для джерел звіту |
save_info_report_designer()
|
Зберігає інформацію про звіт і генерує MRT-файл |
data_source_lists_creating(group_reports_id)
|
Створює списки джерел даних для звіту |
Основні властивості інстансу
Документація оптимізує зрозуміти:
def test_dashboard():
Приклад:
json_data = k2_designer.json_data_create(
K2 — це ядро системи K2 ERP. |-
| models.py
| ORM-структури та моделі бази даних компоненти
|-
| views.py
| провідний клас компоненти, роути та API
|-
| objects/
| Додаткові класи, від яких залежить функції ERP компоненти
|-
| hooks.py
| Хуки для розширення або зміни стандартної поведінки системи
|-
| requirements-components.txt
| Залежності від інших компонент K2 ERP
|-
| requirements.txt
| Python-залежності компоненти
|-
| README.md
| SEO-опис цілі компоненти, способу використання та важливих приміток
|-
| history.txt
| історія продукту змін, написана зрозумілою для користувача мовою
|-
| doc/
| Документація, схеми, бізнес-процеси та інструкції
|-
| tests/
| Юніт-тести компоненти
|-
| examples/
| Приклади використання компоненти
|-
| widgets/
| Віджети, дашборди та візуальні елементи
|-
| languages/
| Локалізації та переклади
|-
| static/
| Зображення, стилі, JavaScript, текстові ресурси
|-
| templates/
| Шаблони компоненти
|-
| yml/
| YML-конфігурації
|}
Метод відправляє запит на затвердження змін у технічній карті обладнання. Метод
Принцип. Компонента повинна бути самодостатньою, але не повинна ламати глобальну структуру K2 ERP. Призначення
Файли перекладів зберігаються у структурі:
Клас K2Production
Приклад backend Flask
Права користувача
r— читання;w— запис;i— вставка;d— видалення;c— створення;exp— експорт;imp— імпорт;del_— відновлення;settable— конфігурація таблиці;cutpast— вирізати / вставити;enable— доступність;active— активність. requirements-components.txt
Клас K2Obj
Окремо варто відзначити створюють компоненти, підключають системні класи, використовують API, пишуть документацію, тести і допоміжні JavaScript-функції виступає ключовою рисою розробників забезпечується через Класи та команди K2 ERP Python.=== Основні методи K2DocsCRM ===
Основні функції ERP
K2ReportEmbed;K2ReportDesigner. Клас наслідується відK2Objі виступає як батьківським класом для:
! Якщо контакт не знайдено, відповідні поля очищаються. Група
{% else %}
└── setup.py
process_options() обробляє JSON-запит і налаштовує K2Grid залежно від значення параметра name. SEO-опис
datasource_value,
!=== Основні групи методів ===
<div style="border:2px solid #f57c00; background:#fff3e0; padding:14px; margin:16px 0;">
K2_Cloud_ERP_Python_01.png|Ілюстрація K2 ERP Python|посилання=Файл:K2_Cloud_ERP_Python_01.png
[[Категорія:API]]
<code>K2ReportDesigner</code> надає функціональність для створення, редагування та перегляду звітів і дашбордів. Метод
<pre>
|-
| <code>component_list()</code>
| Пошук встановлених компонент
|-
| <code>get_current_user()</code>
| Повертає об’єкт поточного користувача
|-
| <code>get_user_counterparts_id()</code>
| Пошук id поточного контрагента
|-
| <code>get_user_counterparts_name()</code>
| Пошук назви поточного контрагента
|-
| <code>get_user_project_id()</code>
| Пошук id поточного проєкту користувача
|-
| <code>get_user_project_name()</code>
| Пошук назви поточного проєкту користувача
|-
| <code>get_user_storage_id()</code>
| Пошук id поточного складу
|-
| <code>get_user_stoages_name()</code>
| Пошук назви поточного складу
|-
| <code>get_user_structural_division_id()</code>
| Пошук id поточного підрозділу
|-
| <code>get_user_structural_division_id_tree()</code>
| Пошук підрозділів за ієрархією
|-
| <code>get_menu_url()</code>
| Повертає список URL активних пунктів меню
|-
| <code>search_menu_items()</code>
| Пошук пунктів меню
|-
| <code>search_menu_items_category()</code>
| Пошук категорій пунктів меню
|-
| <code>search_static_files()</code>
| Пошук статичних файлів
|-
| <code>url_map()</code>
| Робота з картою URL
|}
! SEO-опис
Компонента K2 ERP повинна мати стандартизовану структуру.<pre>
! Призначення
Для компонент K2 застосовується для стандартний формат:
== Клас K2UpdateRemainder ==
'49952f397efff44d7ce0e5cb9aa625fb'
<pre>
K2 має методи для збереження, завантаження та відправлення повідомлень користувачу. | <code>K2</code>
|-
| Від чого наслідуються об’єкти системи?== Ресурси компоненти ==
'k2dashboard_production/k2dashboard_production.html',
Інструкція користувача повинна автоматизовано підтягуватися системою документації K2 ERP, створюючи окремий розділ документації для встановленого продукту.<pre>
{% endif %}
== Клас K2LogbookTMDoc ==
<code>K2EquipmentFunction</code> — підклас <code>K2Obj</code>, призначений для роботи з функціональністю обладнання в K2 ERP. Призначення
! |-
| self.secur
| Підключення класу безпеки
|-
| self.path
| Підключення класу пошуку шляхів
|-
| self.data
| Підключення класу синхронізації даних
|-
| self.settings
| Підключення класу налаштувань
|-
| self.notifications
| Підключення класу сповіщень
|}
usr_perm = K2().get_user_permissions()
Метод
Метод check_lead()Атрибути
Приклад структури компонентиКоротко. Компонент K2 ERP має бути не без зусиль набором Python-файлів. Значення datasource_keys = ["table1_data", "table2_data"] Приклад команди:
return render_template(
! Що зберігається
│ ├── static/
|-
| <code>images</code>
| Масив URL-адрес зображень
|-
| <code>containerId</code>
| Ідентифікатор контейнера для вставки слайдера
|}
! |-
| <code>init_db()</code>
| Підключення <code>db_uri</code> для вибраної бази даних
|-
| <code>init_db_custom(key)</code>
| Підключення custom <code>db_uri</code> за ключем
|-
| <code>init_db_uri()</code>
| Пошук і ініціалізація файлу підключення до бази даних
|-
| <code>init_db_uri_custom()</code>
| Зчитування підключень із <code>db_custom.yml</code>
|-
| <code>init_db_uri_user()</code>
| Ініціалізація підключення до БД для поточного користувача
|-
| <code>init_db_user()</code>
| Підключення <code>db_uri</code> для користувача
|-
| <code>create_db_role(user_name, password)</code>
| Створення користувача на рівні БД
|-
| <code>drop_db_role(user_name)</code>
| Видалення користувача на рівні БД
|-
| <code>kill_user_sessions(target_username)</code>
| Завершення сесій користувача на рівні БД
|}
)
│ │ └── roles.py
{| class="wikitable" style="width:100%;"
<pre>
|-
| <code>add_authorized_users(user_id, login)</code>
| Додає користувача до списку авторизованих
|-
| <code>check_authorized_users(user_id)</code>
| Перевіряє, чи користувач системи активний
|-
| <code>check_logout_users(user_id)</code>
| Перевіряє користувачів, що вийшли
|-
| <code>dell_authorized_users(user_id)</code>
| Видаляє користувача зі списку авторизованих
|-
| <code>get_authorized_users()</code>
| Отримує список авторизованих користувачів
|}
Згенерувати ID:
/languages/en/LC_MESSAGES/messages.po page_url='/kadm/users',
|
datasource_is_counterpart_id = [True, False] showBootstrapLoader(containerId) <pre> == Клас K2ReportDesigner == ! │ └── additional_developer_docs/ ! ![[Категорія:K2 ERP Python]] == K2 ERP JavaScript == Повертає ідентифікатор створеного каруселя або модального вікна.== Методи авторизації користувачів == ! Призначення K2.logging_message(status, message, page_url=None, show_message=True) └── k2adm/ == Системні класи == pydoc -w k2/k2obj.py '1673a4fab757fb6c5df970fdc6ee680c', У K2 ERP використовуються щонайменше українська та англійська мови. date_to = "2023-12-31" K2.get_path_to_root(__file__) Відображає повідомлення користувачу у вигляді Bootstrap Toast. │ ├── history.txt show_message=False Клас відповідає за базові параметри домену, підключення до бази даних, мову, поточного користувача, список компонентів, конфігурація, доступи, сесії та службові методи. Статус |
|---|