Перейти до вмісту

Атестаційні завдання K2 ERP/Зернотрейдер

Матеріал з K2 ERP Wiki Ukraine — База знань з автоматизації та санкцій в Україні


Атестаційне завдання K2 ERP — Зернотрейдер — це практична задача для перевірки навичок розробника або впроваджувача K2 ERP у створенні модуля обліку зернових операцій: закупівлі, приймання, зважування, контролю якості, доробки, зберігання, переміщення, продажу та формування документів.

Модуль має забезпечувати повний цикл роботи зернотрейдера або елеватора: від приймання зерна від фермера до реалізації партії покупцю з урахуванням вологості, сміттєвих домішок, базисних умов, сушіння, очищення, складських залишків і фінансових документів.

Коротко. Потрібно реалізувати модуль, який дозволяє приймати зерно, зважувати брутто/тару/нетто, фіксувати якість, перераховувати вагу до базисних умов, рахувати втрати при сушінні та очищенні, вести партії на складі, продавати зерно й формувати акти, накладні та звіти.

Назва завдання

Модуль для обліку операцій зернотрейдера: закупка, зберігання, доробка та продаж зерна.

Мета завдання

Мета завдання — створити в K2 ERP модуль для автоматизації обліку зернових операцій.

Система повинна дозволяти:

  • вести довідник культур;
  • вести постачальників зерна;
  • вести покупців зерна;
  • оформлювати надходження зерна;
  • фіксувати первинне зважування;
  • фіксувати тару, брутто та нетто;
  • зберігати показники якості;
  • перераховувати зерно до базисних умов;
  • рахувати втрати при сушінні та очищенні;
  • вести партійний облік зерна;
  • обліковувати залишки по культурах, партіях і складах;
  • формувати сертифікати якості;
  • оформлювати реалізацію зерна;
  • списувати зерно зі складу за FIFO або вручну;
  • формувати акти приймання-передачі, рахунки-фактури та товарні накладні;
  • обліковувати послуги елеватора;
  • формувати звіти по руху, залишках, якості та фінансових результатах.

Головний принцип. У зернотрейдингу важлива не лише фізична вага зерна, а й якість. Вологість, сміттєвість, доробка та базисні умови безпосередньо впливають на кількість, взаєморозрахунки, залишки й фінансовий результат.

Реальний бізнес-контекст

Компанія здійснює операції із закупівлі зернових культур у фермерських господарств, зберігає зерно на власному або сторонньому елеваторі, виконує сушіння й очищення, а потім продає зерно трейдерам, переробникам або експортерам.

У процесі роботи потрібно контролювати:

  • хто поставив зерно;
  • яка культура надійшла;
  • яка вага була при в’їзді;
  • яка тара;
  • яка вага нетто;
  • які показники вологості та сміттєвості;
  • скільки зерна зараховується на склад;
  • які втрати виникли при сушінні й очищенні;
  • по яких партіях зберігається зерно;
  • кому, коли і скільки зерна було продано;
  • яка собівартість і фінансовий результат операції.

Без автоматизованого модуля такі розрахунки часто ведуться в Excel, що створює ризик помилок у вазі, якості, взаєморозрахунках і складських залишках.

Основний бізнес-процес

Типовий процес роботи зернотрейдера виглядає так:

  1. постачальник привозить зерно;
  2. на ваговій фіксується брутто;
  3. визначається тара;
  4. система розраховує нетто;
  5. лабораторія або відповідальний працівник вводить показники якості;
  6. система перераховує зерно до базисних умов;
  7. за потреби розраховуються втрати при сушінні та очищенні;
  8. формується партія зерна;
  9. зерно зараховується на склад;
  10. створюється акт приймання-передачі;
  11. за потреби формуються рахунки або інші фінансові документи;
  12. при продажу зерно вибирається зі складу по партіях;
  13. система контролює залишок;
  14. виконується списання зерна;
  15. формується товарна накладна;
  16. дані потрапляють у звіти.

Основні об’єкти модуля

Об’єкт Призначення
Культури Пшениця, кукурудза, ячмінь, соняшник та інші культури
Постачальники Фермерські господарства або компанії, які постачають зерно
Покупці Трейдери, переробники, експортери або інші компанії, які купують зерно
Елеватори / склади Місця зберігання зерна
Партії зерна Окремі надходження зерна з конкретними характеристиками
Показники якості Вологість, сміттєвість, сорт, клас, інші лабораторні показники
Надходження зерна Документ приймання зерна від постачальника
Доробка зерна Сушіння, очищення та інші операції
Реалізація зерна Продаж зерна покупцю
Сертифікати якості Документи, що підтверджують якість партії
Елеваторні послуги Зберігання, сушка, очистка, навантаження, розвантаження
Звіти Залишки, рух зерна, якість, втрати, продажі та взаєморозрахунки

Довідник «Культури»

Довідник культур містить перелік зернових і олійних культур, з якими працює компанія.

Поля культури

Поле Опис
Назва культури Наприклад: пшениця, кукурудза, ячмінь, соняшник
Сорт або клас Сорт, клас або інша класифікація культури
Базисна вологість, % Нормативна вологість для перерахунку
Базисна сміттєвість, % Нормативний показник сміттєвих домішок
Одиниця виміру Зазвичай тонна або кілограм
Активність Чи використовується культура в поточному обліку

Приклади культур

Культура Приклад базисної вологості Приклад базисної сміттєвості
Пшениця 14% 2%
Кукурудза 14% 2%
Ячмінь 14% 2%

Важливо. Базисні показники мають зберігатися в довіднику культур, щоб система могла автоматично виконувати перерахунок ваги й не вимагати ручного введення нормативів у кожному документі.

Довідник «Постачальники»

Довідник постачальників містить фермерські господарства, агрокомпанії або інших контрагентів, які постачають зерно.

Поля постачальника

Поле Опис
Назва господарства Назва фермерського господарства або компанії
Код ЄДРПОУ / ІПН Реєстраційний або податковий код
Контактна особа Представник постачальника
Телефон Контактний номер
Email Електронна адреса
Банківські реквізити Реквізити для взаєморозрахунків
Статус Активний або неактивний

Довідник «Покупці»

Довідник покупців містить компанії, які купують зерно.

Покупцями можуть бути:

  • трейдери;
  • переробники;
  • експортери;
  • комбікормові заводи;
  • інші аграрні компанії.

Довідник покупців може мати ті самі реквізити, що й довідник постачальників, або використовувати єдиний довідник Контрагенти з ознакою типу контрагента.

Довідник «Елеватори / склади»

Для обліку місць зберігання потрібно передбачити довідник елеваторів або складів.

Поля складу / елеватора

Поле Опис
Назва Назва елеватора або складу
Адреса Місце розташування
Власник Власний або сторонній елеватор
Тип зберігання Силос, склад, майданчик або інший тип
Місткість Максимальна місткість зберігання
Статус Активний або неактивний

Журнал «Надходження зерна»

Журнал надходження зерна показує всі приймальні акти та партії, які надійшли від постачальників.

Колонки журналу надходження

Колонка Опис
Номер приймального акту Унікальний номер документа
Дата прийому Дата надходження зерна
Постачальник Хто привіз зерно
Культура Яка культура надійшла
Склад / елеватор Куди зараховується зерно
Брутто Вага до віднімання тари
Тара Вага тари або транспорту
Нетто Брутто мінус тара
Вологість, % Фактична вологість зерна
Сміттєвість, % Фактична сміттєва домішка
Базисна вага Вага після перерахунку до базисних умов
Зараховано на склад Кількість, яка фактично потрапляє в залишки
Статус Чернетка, прийнято, проведено, скасовано

Форма надходження зерна

Форма надходження зерна повинна містити заголовок документа, блок зважування, блок якості та розрахункову частину.

Заголовок документа

У заголовку потрібно передбачити:

Поле Опис
Номер акту Генерується автоматично або вводиться вручну
Дата прийому Дата й час приймання зерна
Постачальник Вибір із довідника
Культура Вибір із довідника культур
Склад / елеватор Куди зараховується зерно
Транспорт Номер авто або інша інформація
Коментар Додаткова інформація

Блок зважування

У блоці зважування потрібно фіксувати:

  • брутто;
  • тару;
  • нетто;
  • дату й час зважування;
  • оператора вагової;
  • джерело ваги: ручне введення або API вагового обладнання.

Формула нетто

Нетто = Брутто - Тара

Блок якості

У блоці якості потрібно фіксувати лабораторні показники.

Мінімальні показники:

  • вологість;
  • сміттєвість;
  • сорт або клас;
  • за потреби — білок, клейковина, натура, олійність або інші показники.

Перерахунок до базисних умов

Система має автоматично перераховувати фактичну вагу зерна до базисних умов.

Формула перерахунку по вологості

Нетто базисне = Нетто × (100 - Фактична вологість) / (100 - Базисна вологість)

Наприклад, якщо фактична вологість більша за базисну, базисна вага буде меншою за фізичну вагу.

Втрати при сушінні

Сушіння зменшує вагу зерна через зниження вологості.

У модулі потрібно розраховувати втрати при сушінні залежно від початкової та нормативної вологості.

Спрощена логіка:

Втрати при сушінні = Нетто - Нетто після доведення до базисної вологості

Втрати при очищенні

Очищення зменшує вагу зерна через видалення домішок.

Спрощена логіка:

Втрати при очищенні = Нетто × (Фактична сміттєвість - Базисна сміттєвість) / 100

Якщо фактична сміттєвість менша або дорівнює базисній, втрати при очищенні можуть дорівнювати нулю.

Критично. Розрахунок зарахованої ваги має враховувати не лише фізичне нетто, а й якісні показники зерна. Без цього складські залишки та взаєморозрахунки з постачальниками будуть некоректними.

Партійний облік зерна

Кожне надходження зерна має формувати партію.

Партія зерна повинна зберігати:

  • культуру;
  • постачальника;
  • дату надходження;
  • склад або елеватор;
  • фізичну вагу;
  • базисну вагу;
  • показники якості;
  • втрати при сушінні;
  • втрати при очищенні;
  • залишок партії;
  • сертифікат якості;
  • документ-підставу.

Сертифікати якості

Для кожної партії потрібно передбачити можливість зберігати сертифікат якості.

Сертифікат може містити:

  • номер;
  • дату;
  • культуру;
  • партію;
  • постачальника;
  • показники лабораторного аналізу;
  • файл сертифіката;
  • відповідального працівника.

Доробка зерна

Доробка зерна включає операції сушіння, очищення або інші технологічні операції, які змінюють кількість і якість зерна.

Документ «Доробка зерна»

Документ доробки має містити:

Поле Опис
Дата Дата виконання доробки
Партія Партія зерна, яка доробляється
Операція Сушіння, очищення або інша операція
Вага до доробки Вага до операції
Вологість до Показник до сушіння
Вологість після Показник після сушіння
Сміттєвість до Показник до очищення
Сміттєвість після Показник після очищення
Втрати Розраховані втрати
Вага після доробки Кількість, що залишається після операції

Елеваторні послуги

Модуль має дозволяти обліковувати вартість послуг елеватора.

До таких послуг можуть належати:

  • зберігання;
  • сушіння;
  • очищення;
  • навантаження;
  • розвантаження;
  • лабораторний аналіз;
  • зважування;
  • інші послуги.

Розрахунок послуг елеватора

Послуга Можлива база розрахунку
Зберігання Тонно-дні або фіксований тариф за тонну
Сушіння Тонни × різниця вологості × тариф
Очищення Тонни × тариф або втрати домішок
Навантаження / розвантаження Тонни × тариф

Журнал «Реалізація зерна»

Журнал реалізації зерна показує всі відвантаження покупцям.

Колонки журналу реалізації

Колонка Опис
Номер товарної накладної Унікальний номер документа реалізації
Дата відвантаження Дата продажу або відвантаження
Покупець Контрагент, який купує зерно
Культура Культура, що продається
Склад / елеватор Звідки списується зерно
Партія Партія, з якої відвантажується зерно
Вага до відвантаження Кількість зерна
Ціна за тонну Вартість однієї тонни
Загальна сума Підсумкова сума реалізації
Статус Чернетка, проведено, скасовано

Вибір зерна зі складу

При реалізації зерна система повинна дозволяти вибрати зерно зі складу.

Можливі режими списання:

  • FIFO;
  • ручний вибір партії.

FIFO для зерна

FIFO означає, що першим списується зерно з партії, яка першою надійшла на склад.

Це корисно для контролю старіння зерна, якості, умов зберігання та коректної собівартості.

Ручний вибір партії

Ручний вибір потрібен, якщо покупцю продається конкретна партія зерна з певними характеристиками або сертифікатом якості.

Важливо. При продажу зерна система повинна контролювати залишок по конкретній культурі, складу та партії. Продаж більшої кількості, ніж є на складі, не допускається.

Облік складу

Складський облік зерна має підтримувати залишки:

  • по культурах;
  • по складах або елеваторах;
  • по партіях;
  • по постачальниках;
  • по якості;
  • по базисній і фізичній вазі.

Залишки зерна

Звіт залишків має показувати:

Поле Опис
Культура Яка культура зберігається
Склад / елеватор Місце зберігання
Партія Партія зерна
Постачальник Хто поставив зерно
Фізична вага Фактичний залишок
Базисна вага Перерахований залишок
Вологість Показник якості
Сміттєвість Показник якості

Інтеграція з ваговим обладнанням

Модуль може підтримувати інтеграцію з ваговим обладнанням через API.

Якщо інтеграція не реалізована, потрібно передбачити ручне введення ваги.

У будь-якому випадку система має зберігати:

  • джерело зважування;
  • дату й час зважування;
  • оператора;
  • значення ваги;
  • документ, до якого прив’язана вага.

Друковані форми

Модуль повинен формувати друковані документи.

Акт приймання-передачі зерна

Акт приймання-передачі має містити:

  • номер і дату;
  • постачальника;
  • культуру;
  • склад або елеватор;
  • брутто;
  • тару;
  • нетто;
  • вологість;
  • сміттєвість;
  • базисну вагу;
  • зараховану кількість;
  • підписи сторін.

Товарна накладна

Товарна накладна має містити:

  • номер і дату;
  • покупця;
  • культуру;
  • партію;
  • вагу;
  • ціну за тонну;
  • загальну суму;
  • реквізити сторін;
  • підписи.

Рахунок-фактура

Рахунок-фактура має містити:

  • покупця;
  • культуру;
  • кількість;
  • ціну;
  • суму;
  • податкову інформацію, якщо використовується;
  • реквізити для оплати.

Звітність

Звіт «Залишки зерна»

Звіт показує залишки зерна на дату.

У звіті потрібно бачити:

  • культуру;
  • склад;
  • партію;
  • постачальника;
  • фізичну вагу;
  • базисну вагу;
  • показники якості;
  • вартість залишку, якщо ведеться собівартість.

Звіт «Рух зерна за період»

Звіт показує всі операції з зерном за період.

У звіті потрібно відображати:

  • надходження;
  • доробку;
  • переміщення;
  • реалізацію;
  • втрати;
  • залишок на початок;
  • залишок на кінець.

Звіт «Втрати при доробці»

Звіт показує втрати при сушінні й очищенні.

У звіті потрібно відображати:

  • партію;
  • культуру;
  • вагу до доробки;
  • вагу після доробки;
  • втрати при сушінні;
  • втрати при очищенні;
  • загальні втрати;
  • відсоток втрат.

Звіт «Продаж зерна»

Звіт показує реалізацію зерна за вибраний період.

У звіті потрібно відображати:

  • покупця;
  • культуру;
  • партію;
  • кількість;
  • ціну за тонну;
  • суму продажу;
  • собівартість, якщо ведеться;
  • фінансовий результат.

AJAX-інтерактив

Інтерфейс модуля має підтримувати роботу без зайвого перезавантаження сторінок.

Через AJAX мають працювати:

  • створення надходження зерна;
  • вибір постачальника;
  • вибір культури;
  • введення ваги;
  • миттєвий перерахунок нетто;
  • миттєвий перерахунок базисної ваги;
  • розрахунок втрат при сушінні та очищенні;
  • створення партії;
  • вибір партії при реалізації;
  • перевірка залишків;
  • формування документів.

Логування змін

Усі важливі зміни потрібно логувати.

Журнал змін має фіксувати:

  • хто створив приймальний акт;
  • хто ввів вагу;
  • хто змінив показники якості;
  • хто виконав перерахунок;
  • хто провів документ;
  • хто сформував партію;
  • хто виконав реалізацію;
  • хто змінив залишки або скасував документ;
  • дату й час зміни;
  • старе та нове значення.

Технічні вимоги

Параметр Опис
Бекенд K2 Cloud ERP на Python або PHP
База даних PostgreSQL або MySQL
Фронтенд HTML5, JavaScript
AJAX Axios або Fetch API
UI-компоненти DataTables, Select2
Друк PDF-акти й накладні через Stimulsoft або внутрішній механізм K2
Інтеграція API вагового обладнання або ручне введення ваги

Рекомендовані сутності бази даних

Для реалізації задачі доцільно передбачити такі сутності:

  • культури;
  • базисні показники культур;
  • постачальники;
  • покупці;
  • елеватори / склади;
  • надходження зерна;
  • рядки надходження;
  • зважування;
  • лабораторні показники;
  • партії зерна;
  • доробка зерна;
  • елеваторні послуги;
  • реалізація зерна;
  • рядки реалізації;
  • сертифікати якості;
  • складські залишки;
  • рух зерна;
  • взаєморозрахунки;
  • друковані форми;
  • журнал змін.

Практичне завдання

У межах атестації потрібно продемонструвати робочий сценарій.

Мінімальний сценарій:

  1. створити культуру з базисними показниками вологості та сміттєвості;
  2. створити постачальника;
  3. створити покупця;
  4. створити склад або елеватор;
  5. оформити надходження зерна;
  6. ввести брутто і тару;
  7. перевірити автоматичний розрахунок нетто;
  8. ввести фактичну вологість і сміттєвість;
  9. перевірити перерахунок до базисних умов;
  10. розрахувати втрати при сушінні;
  11. розрахувати втрати при очищенні;
  12. сформувати партію зерна;
  13. зарахувати зерно на склад;
  14. сформувати акт приймання-передачі;
  15. створити сертифікат якості;
  16. оформити реалізацію зерна покупцю;
  17. вибрати партію вручну або за FIFO;
  18. перевірити контроль залишку;
  19. сформувати товарну накладну;
  20. сформувати рахунок-фактуру;
  21. сформувати звіт залишків зерна;
  22. сформувати звіт руху зерна;
  23. сформувати звіт втрат при доробці;
  24. сформувати звіт продажу зерна.

Критерії оцінювання

Критерій Бали Що перевіряється
Реалізація довідників культур, постачальників і покупців 10 Культури, базисні показники, контрагенти, елеватори або склади
Журнал надходження і перерахунок базисної ваги 20 Брутто, тара, нетто, вологість, сміттєвість, базисна вага, зарахування на склад
Журнал реалізації і списання зі складу 20 Продаж зерна, вибір партій, FIFO, контроль залишків, списання
Розрахунок втрат при сушінні та очищенні 20 Формули доробки, втрати, зміна ваги партії, збереження результатів
Автоматичне формування актів і накладних 20 Акт приймання-передачі, товарна накладна, рахунок-фактура, сертифікат якості
Інтерактивність через AJAX і підсумки в таблицях 10 Миттєві перерахунки, вибір довідників, перевірка залишків, зручність інтерфейсу
Разом 100 Максимальна оцінка

Шкала оцінювання

Бали Рівень Опис
90–100 Відмінно Модуль повністю працює: надходження, якість, базисна вага, доробка, партії, реалізація, документи й звіти реалізовані коректно
75–89 Добре Основна логіка працює, є незначні недоліки, які не руйнують зерновий облік
60–74 Зараховано Базовий сценарій працює, але частина функцій реалізована неповно або потребує доопрацювання
0–59 Не зараховано Відсутня критична логіка: надходження, перерахунок ваги, партії, списання, залишки або документи

Критичні помилки

Критичними помилками вважаються ситуації, коли:

  • неможливо оформити надходження зерна;
  • нетто не розраховується з брутто й тари;
  • базисна вага не враховує фактичну вологість;
  • втрати при сушінні або очищенні не розраховуються;
  • партія зерна не формується після приймання;
  • зерно не зараховується на склад;
  • реалізація не списує зерно зі складу;
  • система дозволяє продати більше зерна, ніж є на залишку;
  • FIFO працює неправильно або не враховує партії;
  • сертифікат якості не прив’язується до партії;
  • акт приймання-передачі або товарна накладна не формуються;
  • звіти не відповідають рухам зерна;
  • зміни ваги або якості не логуються.

Умова складання. Завдання не може бути зараховане, якщо система не дозволяє пройти базовий цикл зернотрейдингу: надходження → зважування → якість → перерахунок → партія → склад → реалізація → списання → документи → звіт.

Очікуваний результат

У результаті виконання атестаційного завдання має бути створений модуль обліку операцій зернотрейдера в K2 ERP.

Модуль має підтримувати довідники культур, постачальників, покупців і складів, документи надходження зерна, зважування, показники якості, перерахунок до базисних умов, доробку, партійний облік, сертифікати якості, реалізацію зерна, FIFO або ручне списання, друковані документи та звітність.

Примітка

Модуль зернотрейдингу є критичним для агрокомпаній, елеваторів, трейдерів, переробників і експортерів.

Правильна реалізація такого модуля дозволяє мінімізувати втрати, уникати неточностей у взаєморозрахунках, контролювати якість зерна та будувати довіру з контрагентами.

Коротко

Питання Відповідь
Що потрібно створити? Модуль обліку операцій зернотрейдера
Які довідники потрібні? Культури, постачальники, покупці, склади або елеватори
Який головний документ надходження? Приймальний акт або документ надходження зерна
Що розраховується при прийманні? Нетто, базисна вага, втрати при сушінні та очищенні
Що формується після приймання? Партія зерна та акт приймання-передачі
Як списується зерно при продажу? За FIFO або ручним вибором партії
Які друковані документи потрібні? Акт приймання-передачі, товарна накладна, рахунок-фактура, сертифікат якості
Які звіти потрібні? Залишки зерна, рух зерна, втрати при доробці, продаж зерна
Що є критичною вимогою? Повний цикл: зважування → якість → базисна вага → партія → склад → продаж

Див. також