Модулі MySales

Створення звітуМожливості

Після натискання кнопки "Новий" у вікні вибору звітів відкриється новий конструктор звітів.

94%
Точність прогнозу

Точність для постійного асортименту в Drogas

15-20%
Зростання доходів

Зростання обороту в Chudo Market після впровадження

40%
Зменшення втрат

Скорочення списань свіжих продуктів у Blyzenko

Платформа ШІ

Єдина платформа ШІ поєднує прогнозування, поповнення, ціноутворення та промо — сигнали передаються автоматично між модулями, тому замовлення, ціни та кампанії завжди синхронізовані.

Аналітика

У конструкторі звітів є три блоки: Скрипт, категорія — блок, у якому безпосередньо написано SQL-запит.

Описано в розділі Робота із запитами ; Таблиці — блок, у якому додаються та налаштовуються стовпці звіту.

Описано в розділі Робота зі стовпцями ; Параметри — блок, у якому налаштовуються змінні параметри для запуску звіту.

Описано в розділі Робота з параметрами ; У цьому блоці користувач пише SQL-запит, який має завантажувати дані з таблиць бази даних.

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

SQL на базовому рівні можна опанувати за мінімальний час (до 1 дня).

Базові запити, необхідні для створення базових звітів, описані в розділі "Базові SQL-запити".

Цей блок документації описує можливі дії з уже написаним блоком SQL-коду; робота з базовими запитами для створення базових звітів описана в розділі "Базові SQL-запити".

SQL-код запиту вводиться в блоці "Скрипт, Категорія:": Після написання коду скрипту з ним можна виконати такі операції: Запустити для перевірки — щоб запустити звіт, натисніть кнопку.

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

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

Якщо запит теоретично може відображати більше 10 000 рядків, для перевірки рекомендується використовувати обмеження TOP 1000 або TOP 10000 після команди SELECT; Зупинити звіт — якщо звіт завантажується дуже довго або ви просто вирішили зупинити виконання, це можна зробити, натиснувши відповідну кнопку.

Ця кнопка стає червоною та активною під час виконання звіту. Перенесення полів, вибраних у SELECT, до стовпців звіту.

Стовпці завжди додаються до звіту разом із запитом. Щоб додати стовпці, натисніть відповідну кнопку.

Після натискання система сама визначить стовпці та їхні назви й додасть їх до звіту; Система також відобразить ці стовпці в блоці "Таблиці", де їх можна налаштувати.

Налаштування стовпців описані в розділі "Робота зі стовпцями". Система автоматично додає всі стовпці.

Непотрібні видаляються натисканням відповідної кнопки. Пізніше їх можна додати з блоку "Таблиця".

Перенесення параметрів звіту до поля "Параметри" для налаштування. Щоб перенести параметри, натисніть відповідну кнопку.

Після натискання система сама визначить параметри та перенесе їхні назви до поля "Параметри".

Параметри, що не були перенесені, відображаються в редакторі SQL-запитів червоним, а перенесені — зеленим.

Кожен параметр необхідно налаштувати; як їх налаштовувати та в яких форматах параметри можуть бути в SQL-коді описано в розділі "Робота з параметрами".

Усі поля, вибрані через SELECT в SQL-запиті, відображаються у двох місцях — над конструктором та в блоці "Таблиці": Система також відобразить ці стовпці в блоці "Таблиці", де їх можна налаштувати.

Налаштування стовпців описані в розділі "Робота зі стовпцями". Система автоматично додає всі стовпці.

Непотрібні видаляються натисканням відповідної кнопки. Пізніше їх можна додати з блоку "Таблиця".

Перенесення параметрів звіту до поля "Параметри" для налаштування. Щоб перенести параметри, натисніть відповідну кнопку.

Після натискання система сама визначить параметри та перенесе їхні назви до поля "Параметри".

Параметри, що не були перенесені, відображаються в редакторі SQL-запитів червоним, а перенесені — зеленим.

Кожен параметр необхідно налаштувати; як їх налаштовувати та в яких форматах параметри можуть бути в SQL-коді описано в розділі "Робота з параметрами".

Усі поля, вибрані через SELECT в SQL-запиті, відображаються у двох місцях — над конструктором та в блоці "Таблиці": Спочатку всі поля автоматично додаються до звіту після натискання відповідної кнопки у вікні SQL-запиту й відображаються над конструктором та в блоці "Таблиці".

Після видалення будь-якого поля його можна знову додати, натиснувши + поруч із його назвою в блоці "Таблиці".

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

Також можна змінювати розмір стовпців, розтягуючи їх.

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

Щоб змінити параметри поля, натисніть на його назву — після цього відкриється вікно з такими параметрами: Style All — редагування загального стилю звіту.

Процес аналогічний редагуванню в будь-якому іншому текстовому редакторі; Expand by — це поле детально описано в розділі Expand By і Group By ; Group by — це поле детально описано в розділі Expand By і Group By ; Name — користувач задає назву цього стовпця у звіті; Key — вказує, які дані підтягувати до стовпця.

Наприклад, є запит: SELECT SKU_ID SKU, STORE_ID STORE FROM SALES_SKU Якщо поставити код поля STORE в налаштуваннях стовпця SKU, то у звіті в стовпці SKU відображатимуться дані зі стовпця STORE.

Але це можливо лише якщо відображається один стовпець SKU; якщо відображаються обидва стовпці SKU і STORE, то додавання коду поля не спрацює.

Не можна додавати код поля до того самого поля. Data type — вибір типу даних для відображення в полі.

Підтримуються такі типи даних: Text — для текстових полів, наприклад "Назва товару"; Number — для числових полів, наприклад "Обсяг продажів"; Data — для полів із будь-яким форматом дати, наприклад "Тиждень продажів" або "Дата продажів"; Format — це поле з'являється при виборі типу даних "Number" або "Date".

Link — дозволяє додати посилання на іншу сторінку, дані або щось інше.

Наприклад, є запит: SELECT SKU_ID SKU, SITE_LINK LINK FROM MONITORING Стовпець SKU відображає коди товарів, а стовпець LINK — посилання на сайт.

У такому разі, якщо вибрати посилання на LINK у полі "Link" у налаштуваннях стовпця SKU, то у звіті при натисканні на число в стовпці SKU відкриватиметься посилання зі стовпця LINK.

Посилання можна додавати лише до інших стовпців; Width — користувач може обмежити можливу ширину поля у звіті.

Значення вводиться в пікселях. Якщо ширина встановлена "auto", поле розтягнеться під текст.

Style Cell — редагування окремого стилю відображення інформації у звіті.

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

Ці параметри дозволяють реалізувати крос-стовпці — коли в одному стовпці відображаються дані з кількох інших стовпців.

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

Ця функціональність буде пояснена детальніше на прикладі нижче.

Користувач створив запит для відображення продажів за перший тиждень протягом останніх 5 років для вибраної позиції 56 по всіх магазинах (Магазин 1 та Магазин 2): У результаті він отримав такий звіт: Можна побачити, що звіт відобразив 10 рядків, але у не дуже зручному форматі.

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

У такому вигляді: Для таких перетворень використовується Expand By.

Спочатку потрібно прибрати стовпець із відображення — той, дані з якого потрібно розгорнути та вставити в інший стовпець.

У цьому прикладі це стовпець із тижнями — WEEK WK.

Тому необхідно у верхньому рядку стовпців натиснути відповідну кнопку поруч зі стовпцем WEEK; Наступний крок — натиснути відповідну кнопку поруч зі стовпцями, у яких потрібно відображати інший стовпець.

У нашому випадку це стовпці Продажі та Залишки — тому натискаємо кнопку поруч з обома стовпцями, після чого вказуємо, який стовпець потрібно відображати всередині — у нашому випадку це WK (Тиждень); Після цього WK також відображається в полі Expand By у налаштуваннях відповідних стовпців.

Для Expand by можна використовувати будь-які стовпці, що не відображаються у звіті, але присутні в запиті.

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

У цьому прикладі необхідно, щоб дані групувалися за магазинами — тобто в полі Group by вибирається STR (назва стовпця, що підтягує дані по магазинах у SQL-запиті).

Group by можна вибрати лише для одного стовпця; в інших стовпцях з Expand by цей вибір підтягнеться автоматично.

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

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

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

Після того як параметри з'явилися в блоці "Параметри", їх можна налаштувати.

Існує два типи параметрів: :parameter - такі параметри передають одне конкретне значення і повинні бути вказані в коді як: where variable = :parameter; [parameter_list] - такі параметри передають набір значень і повинні бути вказані в коді як: where variable [parameter_list]; Наприклад, якщо потрібно передати число "5" як параметр, використовується формат :parameter після знаку рівності.

У результаті після запуску звіту параметр буде діяти в коді як: where value = 5.

Якщо потрібно передати набір — наприклад (1,3,8), то використовується формат [parameter_list] без знаку рівності.

У результаті після запуску звіту параметр буде діяти в коді як: where value in (1,3,8).

Можна використовувати будь-які зручні назви параметрів; головне — використовувати правильний формат.

Щоб налаштувати параметр, натисніть на його назву в блоці "Параметри".

Після натискання відкривається вікно з такими налаштуваннями параметра: ID — ідентифікатор параметра — підтягується автоматично відповідно до поля, до якого він застосовується; змінити не можна; Name — назва параметра — повинна збігатися з назвою параметра в коді; Display — назва параметра, що відображатиметься при запуску звіту; Type — вибір типу параметра — дуже важливо вказати правильний тип для коректної роботи параметра та уникнення помилок.

Підтримуються такі типи параметрів: Text — параметр передасть текстове значення; може використовуватися лише з форматом параметра: parameter; Number — параметр передасть числове значення; може використовуватися лише з форматом параметра: parameter; Data — параметр передасть дату у форматі YYYY-MM-DD; може використовуватися лише з форматом параметра: parameter; Week — параметр передасть дату у форматі тижня ISO — YYYYWW; може використовуватися лише з форматом параметра: parameter; Month — параметр передасть дату у форматі місяця ISO — YYYYMM; може використовуватися лише з форматом параметра: parameter; List — параметр передасть набір значень у будь-якому форматі.

Використовується, якщо потрібно передати більше одного значення. Наприклад (1, 3, 8) або (store, warehouse) або (202015, 202025).

Може використовуватися лише з форматом параметра [parameter_list]; Select — параметр передасть набір значень, вибраних спеціальним запитом, що вказується в полі "Query".

Може використовуватися лише з форматом параметра: parameter; Min — мінімальне значення параметра.

Може використовуватися для чисел, дат, тижнів, місяців; Max — максимальне значення параметра.

Може використовуватися для чисел, дат, тижнів, місяців; Query — заповнюється лише для формату "Select".

Щоб відобразити можливі запити, потрібно ввести в поле текст "select" — доступні запити автоматично з'являться у списку.

При запуску звіту інформація, підтягнута із запиту, відображатиметься у спадному списку при виборі значення параметра.

Наразі автоматично підтримуються такі запити (але можна також створювати додаткові): report_select_stores — використовується для вибору магазину зі списку для значення параметра; report_select_groups — використовується для вибору групи зі списку для значення параметра; report_select_managers — використовується для вибору менеджера зі списку для значення параметра; report_select_contracts — використовується для вибору контракту зі списку для значення параметра; report_select_suppliers — використовується для вибору постачальника зі списку для значення параметра; report_select_whs — використовується для вибору складу зі списку для значення параметра; report_select_fcst — використовується для вибору номера прогнозу зі списку для значення параметра; Index — можна вводити лише для параметрів типу Date, Week, Month.

Індекс дозволяє автоматично віднімати або додавати значення до параметра.

Так, якщо задати параметр Date та Index зі значенням -10, то за замовчуванням при запуску звіту значення дати відображатиметься на 10 днів менше, ніж вказана дата за замовчуванням у полі "Value".

Якщо поле "Value" порожнє, дата відніматиметься від поточної; Value — вводиться значення за замовчуванням, яке відображатиметься при виборі параметрів перед запуском звіту.

Нижче наведені варіанти задання параметрів у SQL-запиті для різних типів даних: where sku_id = :sku_id - використовується для вибору конкретного SKU за кодом MySales.

При запуску звіту в параметр передається один номер SKU.

Тип параметра повинен бути "Number"; where sku_id [sku_id_list] - використовується для вибору кількох SKU за кодом MySales.

При запуску звіту в параметр передається набір номерів SKU, розділених комами.

Тип параметра повинен бути "List"; where item_code = :item_code - використовується для вибору конкретного SKU за внутрішнім кодом.

При запуску звіту в параметр передається один текстовий код.

Тип параметра повинен бути "Text"; where item_code [item_code_list] - використовується для вибору кількох SKU за внутрішнім кодом.

При запуску звіту в параметр передається набір текстових кодів SKU, розділених комами.

Тип параметра повинен бути "List"; where ((sku_id = :sku_id) or (:sku_id = 0)) - складний параметр — використовується для можливості відображати всі SKU або один конкретний.

У такому разі для відображення всіх SKU при запуску звіту в параметр вводиться значення 0, або номер конкретного SKU для відображення одного SKU; Наведені вище приклади задання параметрів у коді є актуальними для всіх типів параметрів і полів.

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

Можна викликати структуру бази, натиснувши відповідну кнопку та вибравши "Show DB".

Після вибору відкриється вікно, в якому відображатимуться всі таблиці та всі поля в них.

У вікні бази даних працює пошук, що дозволяє знайти таблиці та стовпці.