Атестаційні завдання K2 ERP/Домашня бухгалтерія: відмінності між версіями
R (обговорення | внесок) Створена сторінка: = Модуль обліку особистих доходів і витрат: Домашня бухгалтерія = == Реальний життєвий контекст == Користувач хоче вести облік своїх особистих фінансів або фінансів своєї родини: * фіксувати всі доходи і витрати; * категоризувати витрати за типами; * вес... |
R (обговорення | внесок) Немає опису редагування |
||
| Рядок 1: | Рядок 1: | ||
= Модуль обліку особистих доходів і витрат: Домашня бухгалтерія = | {{DISPLAYTITLE:Атестаційні завдання K2 ERP/Домашня бухгалтерія}} | ||
'''Атестаційне завдання K2 ERP — Домашня бухгалтерія''' — це практична задача для перевірки навичок розробника або впроваджувача [[K2 ERP]] у створенні модуля обліку особистих або сімейних фінансів. | |||
Модуль має дозволяти користувачу вести доходи, витрати, рахунки, перекази між рахунками, бюджети, фінансові цілі, залишки, мультивалютність, імпорт банківських виписок і звітність. | |||
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;"> | |||
'''Коротко.''' Потрібно реалізувати модуль домашньої бухгалтерії, який дозволяє бачити, скільки грошей є зараз, звідки вони надходять, куди витрачаються, чи не перевищено бюджет і наскільки користувач наблизився до фінансових цілей. | |||
</div> | |||
__TOC__ | |||
== Назва завдання == | |||
'''Модуль обліку особистих доходів і витрат: Домашня бухгалтерія'''. | |||
== Мета завдання == | |||
Мета завдання — створити в K2 ERP модуль для обліку особистих або сімейних фінансів. | |||
Система повинна дозволяти: | |||
* вести облік доходів; | |||
* вести облік витрат; | |||
* створювати рахунки та контролювати залишки; | |||
* класифікувати доходи й витрати за категоріями; | |||
* виконувати перекази між рахунками; | |||
* вести бюджетування за категоріями; | |||
* контролювати перевищення бюджету; | |||
* створювати фінансові цілі; | |||
* відстежувати прогрес накопичення; | |||
* підтримувати кілька валют; | |||
* формувати звіти й діаграми; | |||
* експортувати дані в Excel або PDF; | |||
* імпортувати операції з банківських виписок у форматі CSV. | |||
<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;"> | |||
'''Головний принцип.''' Домашня бухгалтерія — це не просто список витрат. Це система контролю особистих фінансів: рахунки → операції → категорії → бюджети → цілі → звіти → рішення. | |||
</div> | |||
== Реальний життєвий контекст == | == Реальний життєвий контекст == | ||
Користувач хоче вести облік | Користувач хоче вести облік власних фінансів або фінансів родини. | ||
У реальному житті гроші можуть зберігатися на кількох рахунках: банківських картках, готівці, депозитах, валютних рахунках або електронних гаманцях. | |||
Користувачу потрібно розуміти: | |||
* скільки грошей є на кожному рахунку; | |||
* скільки було доходів за місяць; | |||
* скільки було витрат; | |||
* на які категорії витрачається найбільше; | |||
* чи не перевищено бюджет; | |||
* скільки залишилось до фінансової цілі; | |||
* які операції були по конкретному рахунку; | |||
* як змінюється фінансовий стан у часі. | |||
Такий модуль може використовуватися не лише приватними особами, а й дуже малими бізнесами, ФОП або сімейними проєктами, де потрібен простий контроль грошей без складного бухгалтерського обліку. | |||
== Основний бізнес-процес == | |||
Типовий процес роботи з модулем виглядає так: | |||
# користувач створює рахунки; | |||
# вказує початкові залишки; | |||
# створює категорії доходів і витрат; | |||
# додає дохід, наприклад зарплату або фріланс; | |||
# система збільшує баланс відповідного рахунку; | |||
# додає витрати, наприклад продукти, транспорт або оренду; | |||
# система зменшує баланс рахунку; | |||
# за потреби користувач робить переказ між рахунками; | |||
# система списує гроші з одного рахунку і зараховує на інший; | |||
# користувач встановлює місячні бюджети по категоріях; | |||
# система контролює перевищення бюджету; | |||
# користувач створює фінансову ціль; | |||
# система показує прогрес накопичення; | |||
# у звітах видно доходи, витрати, залишки та структуру фінансів. | |||
== Основні об’єкти модуля == | |||
{| class="wikitable" style="width:100%;" | |||
! Об’єкт | |||
! Призначення | |||
|- | |||
| Категорії доходів | |||
| Класифікація джерел надходження грошей | |||
|- | |||
| Категорії витрат | |||
| Класифікація напрямів витрачання грошей | |||
|- | |||
| Рахунки | |||
| Готівка, банківські картки, депозити, валютні рахунки | |||
|- | |||
| Доходи | |||
| Операції надходження грошей | |||
|- | |||
| Витрати | |||
| Операції списання грошей | |||
|- | |||
| Перекази між рахунками | |||
| Переміщення грошей між власними рахунками | |||
|- | |||
| Бюджети | |||
| Місячні ліміти витрат за категоріями | |||
|- | |||
| Фінансові цілі | |||
| Накопичення на майбутні покупки або події | |||
|- | |||
| Валюти та курси | |||
| Підтримка UAH, USD, EUR та інших валют | |||
|- | |||
| Банківські виписки | |||
| Імпорт операцій з CSV-файлів | |||
|- | |||
| Звіти | |||
| Доходи, витрати, рух коштів, залишки, бюджети, цілі | |||
|} | |||
== Довідник «Категорії доходів» == | |||
Довідник категорій доходів потрібен для класифікації джерел надходження коштів. | |||
== Приклади категорій доходів == | |||
* зарплата; | |||
* фріланс; | |||
* інвестиції; | |||
* подарунки; | |||
* повернення боргу; | |||
* продаж речей; | |||
* інші доходи. | |||
== Поля категорії доходу == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Назва категорії | |||
| Наприклад: зарплата, фріланс, інвестиції | |||
|- | |||
| Колір або іконка | |||
| Для зручного відображення в діаграмах | |||
|- | |||
| Активність | |||
| Чи використовується категорія в поточному обліку | |||
|- | |||
| Коментар | |||
| Додатковий опис категорії | |||
|} | |||
== Довідник «Категорії витрат» == | |||
Довідник категорій витрат потрібен для аналізу, на що витрачаються гроші. | |||
== Приклади категорій витрат == | |||
* продукти; | |||
* оренда; | |||
* комунальні послуги; | |||
* транспорт; | |||
* освіта; | |||
* медицина; | |||
* розваги; | |||
* одяг; | |||
* подорожі; | |||
* підписки; | |||
* подарунки; | |||
* інші витрати. | |||
== Поля категорії витрат == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Назва категорії | |||
| Наприклад: продукти, транспорт, освіта | |||
|- | |||
| Група категорій | |||
| Обов’язкові витрати, необов’язкові витрати, накопичення тощо | |||
|- | |||
| Колір або іконка | |||
| Для діаграм і швидкого візуального аналізу | |||
|- | |||
| Активність | |||
| Чи використовується категорія | |||
|- | |||
| Коментар | |||
| Додаткова інформація | |||
|} | |||
== Довідник «Рахунки» == | |||
Довідник рахунків зберігає місця, де користувач тримає гроші. | |||
== Приклади рахунків == | |||
* карта Monobank; | |||
* готівка; | |||
* депозит ПриватБанк; | |||
* валютний рахунок USD; | |||
* валютний рахунок EUR; | |||
* електронний гаманець; | |||
* рахунок для фінансової цілі. | |||
== Поля рахунку == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Назва рахунку | |||
| Наприклад: карта Monobank, готівка, депозит | |||
|- | |||
| Тип рахунку | |||
| Готівка, банківський, депозит, валютний, інше | |||
|- | |||
| Валюта | |||
| UAH, USD, EUR або інша валюта | |||
|- | |||
| Початковий баланс | |||
| Сума на рахунку на момент початку обліку | |||
|- | |||
| Поточний баланс | |||
| Розраховується на основі операцій | |||
|- | |||
| Статус | |||
| Активний, прихований, закритий | |||
|} | |||
<div style="border:2px solid #f57c00; background:#fff3e0; padding:14px; margin:16px 0;"> | |||
'''Важливо.''' Поточний баланс рахунку не повинен редагуватися вручну без підстави. Він має формуватися з початкового балансу, доходів, витрат і переказів. | |||
</div> | |||
== Типи рахунків == | |||
{| class="wikitable" style="width:100%;" | |||
! Тип рахунку | |||
! Призначення | |||
|- | |||
| Готівка | |||
| Облік грошей у фізичній готівці | |||
|- | |||
| Банківський | |||
| Картки та поточні рахунки | |||
|- | |||
| Депозит | |||
| Накопичувальні або строкові рахунки | |||
|- | |||
| Валютний | |||
| Рахунок в іноземній валюті | |||
|- | |||
| Інше | |||
| Електронні гаманці або нестандартні джерела | |||
|} | |||
== Журнал «Доходи» == | |||
Журнал доходів призначений для фіксації всіх надходжень коштів. | |||
== Колонки журналу доходів == | |||
{| class="wikitable" style="width:100%;" | |||
! Колонка | |||
! Опис | |||
|- | |||
| Дата | |||
| Дата отримання доходу | |||
|- | |||
| Сума | |||
| Сума надходження | |||
|- | |||
| Валюта | |||
| Валюта операції | |||
|- | |||
| Категорія доходу | |||
| Зарплата, фріланс, інвестиції тощо | |||
|- | |||
| Рахунок зарахування | |||
| Куди надійшли кошти | |||
|- | |||
| Опис | |||
| Коментар до операції | |||
|} | |||
== Функціональність журналу доходів == | |||
Журнал доходів має підтримувати: | |||
* додавання доходу вручну; | |||
* редагування доходу; | |||
* видалення помилкової операції за наявності прав; | |||
* пошук за датою; | |||
* фільтрацію за категорією; | |||
* фільтрацію за рахунком; | |||
* фільтрацію за валютою; | |||
* миттєве оновлення балансу рахунку; | |||
* роботу через AJAX без перезавантаження сторінки. | |||
== Журнал «Витрати» == | |||
Журнал витрат призначений для фіксації всіх витрат користувача або родини. | |||
== Колонки журналу витрат == | |||
{| class="wikitable" style="width:100%;" | |||
! Колонка | |||
! Опис | |||
|- | |||
| Дата | |||
| Дата витрати | |||
|- | |||
| Сума | |||
| Сума витрати | |||
|- | |||
| Валюта | |||
| Валюта операції | |||
|- | |||
| Категорія витрати | |||
| Продукти, оренда, транспорт, освіта тощо | |||
|- | |||
| Рахунок списання | |||
| З якого рахунку списано кошти | |||
|- | |||
| Опис | |||
| Коментар до операції | |||
|} | |||
== Функціональність журналу витрат == | |||
Журнал витрат має підтримувати: | |||
* додавання витрати вручну; | |||
* редагування витрати; | |||
* видалення помилкової операції за наявності прав; | |||
* пошук за датою; | |||
* фільтрацію за категорією; | |||
* фільтрацію за рахунком; | |||
* фільтрацію за валютою; | |||
* автоматичний перерахунок балансу рахунку; | |||
* попередження при перевищенні бюджету; | |||
* роботу через AJAX. | |||
= | <div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;"> | ||
'''Критично.''' Додавання витрати має зменшувати баланс рахунку. Якщо витрати не впливають на залишок, модуль не виконує головну функцію домашньої бухгалтерії. | |||
</div> | |||
== | == Перекази між рахунками == | ||
Переказ між рахунками — це операція переміщення грошей між власними рахунками користувача. | |||
Приклади: | |||
* з банківської картки в готівку; | |||
* з картки на депозит; | |||
* з гривневого рахунку на валютний; | |||
* з основного рахунку на рахунок фінансової цілі. | |||
Поля | == Поля переказу == | ||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Дата | |||
| Дата переказу | |||
|- | |||
| Рахунок списання | |||
| Звідки списуються кошти | |||
|- | |||
| Рахунок зарахування | |||
| Куди зараховуються кошти | |||
|- | |||
| Сума списання | |||
| Сума, яка списується | |||
|- | |||
| Сума зарахування | |||
| Сума, яка зараховується | |||
|- | |||
| Валюта | |||
| Валюта операції | |||
|- | |||
| Курс | |||
| Використовується, якщо валюти рахунків різні | |||
|- | |||
| Коментар | |||
| Додаткове пояснення | |||
|} | |||
== | == Логіка переказу == | ||
Після проведення переказу система повинна: | |||
* | * списати суму з одного рахунку; | ||
* зарахувати суму на інший рахунок; | |||
* | * не вважати переказ доходом; | ||
* | * не вважати переказ витратою; | ||
* | * відобразити операцію в русі коштів по обох рахунках. | ||
* | |||
= | <div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;"> | ||
'''Практичний сенс.''' Переказ між власними рахунками не змінює загальний фінансовий стан користувача. Він лише змінює місце зберігання грошей. | |||
</div> | |||
== | == Бюджетування == | ||
Бюджетування дозволяє встановити місячні ліміти витрат за категоріями. | |||
Наприклад, користувач може встановити: | |||
* | * продукти — 15 000 грн на місяць; | ||
* | * транспорт — 3 000 грн на місяць; | ||
* розваги — 4 000 грн на місяць; | |||
* освіта — 5 000 грн на місяць. | |||
== | == Поля бюджету == | ||
== | {| class="wikitable" style="width:100%;" | ||
! Поле | |||
! Опис | |||
|- | |||
| Період | |||
| Місяць і рік бюджету | |||
|- | |||
| Категорія витрат | |||
| Категорія, для якої встановлено ліміт | |||
|- | |||
| Ліміт | |||
| Максимальна сума витрат | |||
|- | |||
| Фактичні витрати | |||
| Розраховується на основі операцій | |||
|- | |||
| Залишок бюджету | |||
| Ліміт мінус фактичні витрати | |||
|- | |||
| Статус | |||
| У нормі, близько до перевищення, перевищено | |||
|} | |||
== Контроль перевищення бюджету == | |||
Система має автоматично контролювати перевищення бюджету. | |||
Якщо користувач перевищує встановлений ліміт, система повинна: | |||
* показати попередження; | |||
* виділити категорію кольором; | |||
* показати суму перевищення; | |||
* за бажанням — надіслати повідомлення. | |||
== Фінансові цілі == | |||
Фінансові цілі потрібні для планування накопичень. | |||
Приклади цілей: | |||
* відпустка; | |||
* новий ноутбук; | |||
* автомобіль; | |||
* ремонт; | |||
* навчання; | |||
* фінансова подушка. | |||
== Поля фінансової цілі == | |||
=== | {| class="wikitable" style="width:100%;" | ||
! Поле | |||
! Опис | |||
|- | |||
| Назва цілі | |||
| Наприклад: «Відпустка» або «Новий ноутбук» | |||
|- | |||
| Сума цілі | |||
| Скільки потрібно накопичити | |||
|- | |||
| Поточна сума | |||
| Скільки вже накопичено | |||
|- | |||
| Планована дата досягнення | |||
| Коли користувач хоче досягти цілі | |||
|- | |||
| Прив’язаний рахунок | |||
| Рахунок, на якому зберігаються накопичення | |||
|- | |||
| Прогрес | |||
| Відсоток виконання цілі | |||
|- | |||
| Статус | |||
| Активна, досягнута, призупинена, закрита | |||
|} | |||
== Розрахунок прогресу цілі == | |||
<pre> | |||
Прогрес = Поточна сума / Сума цілі × 100% | |||
</pre> | |||
Система має показувати прогрес у вигляді відсотка або індикатора виконання. | |||
== Мультивалютність == | |||
Модуль має підтримувати кілька валют. | |||
Мінімальні валюти: | |||
* UAH; | |||
* USD; | |||
* EUR. | |||
== Вимоги до мультивалютності == | |||
Система повинна підтримувати: | |||
* довідник валют; | |||
* рахунки в різних валютах; | |||
* курси валют; | |||
* операції в різних валютах; | |||
* перекази між рахунками в різних валютах; | |||
* перерахунок загального балансу в базову валюту; | |||
* звіти по окремих валютах і в базовій валюті. | |||
== Імпорт банківських виписок CSV == | |||
Опціонально потрібно передбачити імпорт операцій із банківських виписок у форматі CSV. | |||
Імпорт має дозволяти: | |||
* завантажити CSV-файл; | |||
* розпізнати дату, суму, опис і рахунок; | |||
* визначити тип операції: дохід або витрата; | |||
* запропонувати категорію на основі опису; | |||
* показати помилки імпорту; | |||
* не дублювати вже імпортовані операції; | |||
* дозволити користувачу підтвердити імпорт. | |||
== Звітність == | |||
== Звіт «Доходи і витрати за місяць» == | |||
Звіт показує загальну картину фінансів за вибраний місяць. | |||
У звіті потрібно показати: | |||
Діаграми: | * загальну суму доходів; | ||
* загальну суму витрат; | |||
* різницю між доходами й витратами; | |||
* структуру доходів за категоріями; | |||
* структуру витрат за категоріями; | |||
* діаграми доходів і витрат. | |||
== Діаграми доходів і витрат == | |||
Для діаграм можна використовувати Chart.js. | |||
Потрібні діаграми: | |||
* структура доходів за категоріями; | * структура доходів за категоріями; | ||
* структура витрат за категоріями; | * структура витрат за категоріями; | ||
* | * порівняння доходів і витрат за місяцями; | ||
* динаміка залишків по рахунках. | |||
== Звіт «Рух коштів по рахунках» == | |||
Звіт показує всі операції по конкретному рахунку. | |||
У звіті потрібно відображати: | |||
* рахунок; | |||
* період; | |||
* залишок на початок; | |||
* доходи; | |||
* витрати; | |||
* перекази; | |||
* залишок на кінець; | |||
* деталізацію всіх операцій. | |||
== Звіт «Бюджет за місяць» == | |||
Звіт показує виконання бюджету. | |||
У звіті потрібно показати: | |||
* категорію витрат; | |||
* встановлений ліміт; | |||
* фактичні витрати; | |||
* залишок бюджету; | |||
* відсоток використання; | |||
* перевищення, якщо воно є. | |||
== Звіт «Фінансові цілі» == | |||
Звіт показує прогрес по фінансових цілях. | |||
У звіті потрібно відображати: | |||
* назву цілі; | |||
* суму цілі; | |||
* поточну суму; | |||
* прогрес; | |||
* планову дату досягнення; | |||
* залишок до цілі; | |||
* статус. | |||
== Експорт даних == | |||
Модуль має підтримувати експорт даних. | |||
Експортувати потрібно: | |||
* доходи; | |||
* витрати; | |||
* рух коштів; | |||
* бюджети; | |||
* фінансові цілі; | |||
* звіти. | |||
Формати експорту: | |||
* Excel; | |||
* PDF. | |||
== AJAX-інтерактив == | |||
Модуль має працювати зручно й швидко без зайвого перезавантаження сторінок. | |||
Через AJAX мають працювати: | |||
* | * додавання доходу; | ||
* | * додавання витрати; | ||
** | * редагування операції; | ||
** | * видалення операції; | ||
** | * переказ між рахунками; | ||
* | * миттєве оновлення балансів; | ||
* | * створення бюджету; | ||
* | * контроль перевищення бюджету; | ||
* створення фінансової цілі; | |||
* оновлення прогресу цілі; | |||
* фільтрація журналів; | |||
* побудова діаграм. | |||
== Логування змін == | |||
Модуль повинен логувати важливі зміни. | |||
Журнал змін має фіксувати: | |||
* хто створив операцію; | |||
* хто змінив операцію; | |||
* хто видалив операцію; | |||
* хто створив бюджет; | |||
* хто змінив бюджет; | |||
* хто створив фінансову ціль; | |||
* хто виконав імпорт CSV; | |||
* дату й час зміни; | |||
* старе та нове значення, якщо це можливо. | |||
== Технічні вимоги == | == Технічні вимоги == | ||
{| class="wikitable" | {| class="wikitable" style="width:100%;" | ||
! Параметр | ! Параметр | ||
! Опис | ! Опис | ||
| Рядок 154: | Рядок 665: | ||
| K2 Cloud ERP на Python або PHP | | K2 Cloud ERP на Python або PHP | ||
|- | |- | ||
| | | База даних | ||
| PostgreSQL або MySQL | | PostgreSQL або MySQL | ||
|- | |- | ||
| Фронтенд | | Фронтенд | ||
| HTML5, JavaScript | | HTML5, JavaScript | ||
|- | |||
| AJAX | |||
| Fetch API або Axios | |||
|- | |- | ||
| UI-компоненти | | UI-компоненти | ||
| DataTables, Select2, Chart.js для діаграм | | DataTables, Select2, Chart.js для діаграм | ||
|- | |- | ||
| | | Імпорт | ||
| Експорт | | CSV для банківських виписок, опціонально | ||
|- | |||
| Експорт | |||
| PDF або Excel | |||
|} | |} | ||
== | == Рекомендовані сутності бази даних == | ||
Для реалізації задачі доцільно передбачити такі сутності: | |||
{| class="wikitable" | * категорії доходів; | ||
* категорії витрат; | |||
* рахунки; | |||
* валюти; | |||
* курси валют; | |||
* доходи; | |||
* витрати; | |||
* перекази між рахунками; | |||
* бюджети; | |||
* фінансові цілі; | |||
* банківські виписки; | |||
* імпортовані операції; | |||
* звіти; | |||
* журнал змін. | |||
== Практичне завдання == | |||
У межах атестації потрібно продемонструвати робочий сценарій. | |||
Мінімальний сценарій: | |||
# створити категорії доходів; | |||
# створити категорії витрат; | |||
# створити кілька рахунків; | |||
# вказати початкові залишки; | |||
# додати дохід; | |||
# перевірити збільшення балансу рахунку; | |||
# додати витрату; | |||
# перевірити зменшення балансу рахунку; | |||
# виконати переказ між рахунками; | |||
# перевірити списання з одного рахунку і зарахування на інший; | |||
# створити місячний бюджет по категорії; | |||
# додати витрати, які наближають до ліміту; | |||
# перевірити попередження при перевищенні бюджету; | |||
# створити фінансову ціль; | |||
# прив’язати її до рахунку; | |||
# перевірити розрахунок прогресу; | |||
# сформувати звіт доходів і витрат за місяць; | |||
# сформувати звіт руху коштів по рахунках; | |||
# сформувати звіт бюджету; | |||
# сформувати звіт фінансових цілей; | |||
# експортувати звіт у Excel або PDF; | |||
# опціонально імпортувати банківську виписку CSV. | |||
== Критерії оцінювання == | |||
{| class="wikitable" style="width:100%;" | |||
! Критерій | ! Критерій | ||
! Бали | ! Бали | ||
! Що перевіряється | |||
|- | |- | ||
| Реалізація журналу доходів і витрат | | Реалізація журналу доходів і витрат | ||
| 20 | | 20 | ||
| Додавання, редагування, категоризація, фільтри, вплив на баланси рахунків | |||
|- | |- | ||
| Перекази між рахунками | | Перекази між рахунками | ||
| 15 | | 15 | ||
| Списання з одного рахунку, зарахування на інший, коректне відображення в русі коштів | |||
|- | |- | ||
| Бюджетування і фінансові цілі | | Бюджетування і фінансові цілі | ||
| 20 | | 20 | ||
| Ліміти по категоріях, контроль перевищення, цілі, прогрес накопичень | |||
|- | |- | ||
| Формування звітів і діаграм | | Формування звітів і діаграм | ||
| 20 | | 20 | ||
| Доходи й витрати, рух коштів, бюджети, фінансові цілі, Chart.js | |||
|- | |- | ||
| Інтерактивність через AJAX | | Інтерактивність через AJAX | ||
| 15 | | 15 | ||
| Додавання операцій, оновлення балансів, фільтри, діаграми без перезавантаження | |||
|- | |- | ||
| Підтримка мультивалютності | | Підтримка мультивалютності | ||
| 10 | | 10 | ||
| Валюти, курси, рахунки в різних валютах, перерахунок у базову валюту | |||
|- | |||
! Разом | |||
! 100 | |||
! Максимальна оцінка | |||
|} | |} | ||
== Шкала оцінювання == | |||
{| class="wikitable" style="width:100%;" | |||
! Бали | |||
! Рівень | |||
! Опис | |||
|- | |||
| 90–100 | |||
| Відмінно | |||
| Модуль повністю працює: доходи, витрати, рахунки, перекази, бюджети, цілі, звіти, мультивалютність і AJAX реалізовані коректно | |||
|- | |||
| 75–89 | |||
| Добре | |||
| Основна логіка працює, є незначні недоліки, які не руйнують облік особистих фінансів | |||
|- | |||
| 60–74 | |||
| Зараховано | |||
| Базовий сценарій працює, але частина функцій реалізована неповно або потребує доопрацювання | |||
|- | |||
| 0–59 | |||
| Не зараховано | |||
| Відсутня критична логіка: рахунки, доходи, витрати, перекази, баланси або звіти | |||
|} | |||
== Критичні помилки == | |||
Критичними помилками вважаються ситуації, коли: | |||
* неможливо створити рахунок; | |||
* дохід не збільшує баланс рахунку; | |||
* витрата не зменшує баланс рахунку; | |||
* переказ між рахунками помилково рахується як дохід або витрата; | |||
* переказ не змінює залишки обох рахунків; | |||
* баланс рахунку не відповідає операціям; | |||
* неможливо створити бюджет; | |||
* система не показує перевищення бюджету; | |||
* фінансова ціль не рахує прогрес; | |||
* звіти не відповідають фактичним операціям; | |||
* мультивалютні операції не зберігають валюту; | |||
* імпорт CSV створює дублікати без контролю; | |||
* зміни операцій не логуються. | |||
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;"> | |||
'''Умова складання.''' Завдання не може бути зараховане, якщо система не дозволяє пройти базовий цикл домашньої бухгалтерії: рахунок → дохід → витрата → переказ → баланс → бюджет → фінансова ціль → звіт. | |||
</div> | |||
== Очікуваний результат == | |||
У результаті виконання атестаційного завдання має бути створений модуль домашньої бухгалтерії в K2 ERP. | |||
Модуль має підтримувати категорії доходів і витрат, рахунки, доходи, витрати, перекази між рахунками, бюджетування, фінансові цілі, мультивалютність, звіти, діаграми, експорт у PDF або Excel та опціональний імпорт банківських виписок CSV. | |||
== Примітка == | == Примітка == | ||
Домашня бухгалтерія — | Домашня бухгалтерія — популярний і зрозумілий користувачам модуль, який добре демонструє базові принципи обліку грошей. | ||
Він допомагає контролювати особисті та сімейні фінанси, аналізувати витрати, уникати перевитрат і поступово досягати фінансових цілей. | |||
== Коротко == | |||
{| class="wikitable" style="width:100%;" | |||
! Питання | |||
! Відповідь | |||
|- | |||
| Що потрібно створити? | |||
| Модуль обліку особистих доходів і витрат | |||
|- | |||
| Які довідники потрібні? | |||
| Категорії доходів, категорії витрат, рахунки, валюти | |||
|- | |||
| Які основні журнали? | |||
| Доходи, витрати, перекази між рахунками | |||
|- | |||
| Що має відбуватися з балансом? | |||
| Доходи збільшують баланс, витрати зменшують, перекази змінюють два рахунки | |||
|- | |||
| Що таке бюджетування? | |||
| Місячні ліміти витрат за категоріями | |||
|- | |||
| Що таке фінансова ціль? | |||
| Накопичення на конкретну суму до визначеної дати | |||
|- | |||
| Які звіти потрібні? | |||
| Доходи й витрати, рух коштів, бюджет, фінансові цілі | |||
|- | |||
| Що є критичною вимогою? | |||
| Коректний баланс рахунків на основі всіх операцій | |||
|} | |||
== Див. також == | |||
* [[K2 Cloud ERP|K2 ERP]] | |||
* [[K2 ERP]] | |||
* [[Атестаційні завдання K2 ERP]] | |||
* [[Домашня бухгалтерія]] | |||
* [[Фінансовий облік]] | |||
* [[Доходи]] | |||
* [[Витрати]] | |||
* [[Бюджетування]] | |||
* [[Фінансові цілі]] | |||
* [[Мультивалютність]] | |||
* [[Chart.js]] | |||
* [[Excel-експорт]] | |||
* [[CSV]] | |||
[[Категорія:K2 ERP]] | |||
[[Категорія:Атестаційні завдання K2]] | |||
[[Категорія:Домашня бухгалтерія]] | |||
[[Категорія:Фінансовий облік]] | |||
[[Категорія:Бюджетування]] | |||
[[Категорія:Особисті фінанси]] | |||
[[Категорія:Корпоративна Wiki]] | |||