# Сводный отчёт по звонкам

<figure><img src="https://2409287958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfkymnT1WRuXnrJRm6ZIO%2Fuploads%2F3oAFLMmLx8lpYeUwzgW7%2F%D1%81%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9-%D0%BE%D1%82%D1%87%D1%91%D1%82-%D0%BF%D0%BE-%D0%B7%D0%B2%D0%BE%D0%BD%D0%BA%D0%B0%D0%BC.gif.gif?alt=media&#x26;token=b64c6025-0660-4179-891e-a2826d559c42" alt=""><figcaption></figcaption></figure>

Отчёт позволяет провести комплексный анализ звонков, поступающих в компанию и совершаемых сотрудниками. С его помощью можно оценить эффективность работы менеджеров и отделов, проанализировать источники обращений и выявить наиболее частые тематики звонков.

### Работа с отчетом

Отчёт содержит в себе данные о количестве звонков в различных разрезах. Гибкая система фильтров позволит вам отобразить необходимую информацию.&#x20;

К неагрегирующим фильтрам относятся:

* **Дата звонка** — фильтрует звонки по дате их совершения.
* **Направление** — позволяет выбрать входящие, исходящие и внутренние звонки.
* **Линия**, **Менеджер звонка**, **Отдел**, **Интерес к домам** и **Тематика звонка** — позволяют точечно фильтровать звонки по соответствующим характеристикам.

Фильтр Группировка позволяет настраивать структуру отчёта. В выпадающем списке вы можете:

* **Выбрать** необходимые столбцы с помощью **чекбоксов**.
* **Изменить порядок** их отображения, перетаскивая названия с помощью **иконки с шестью точками**. Порядок в списке (сверху-вниз) будет соответствовать порядку в отчёте (слева-направо).

<figure><img src="https://2409287958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfkymnT1WRuXnrJRm6ZIO%2Fuploads%2FlOKXrs9tsSniP0zDJju5%2F%D1%81%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9-%D0%BE%D1%82%D1%87%D1%91%D1%82-%D0%BF%D0%BE-%D0%B7%D0%B2%D0%BE%D0%BD%D0%BA%D0%B0%D0%BC-2.gif?alt=media&#x26;token=eb09a2a9-ae35-47dd-a931-4617ebe1c727" alt=""><figcaption></figcaption></figure>

Этот фильтр делает отчёт универсальным инструментом для анализа загрузки телефонных линий.

### Технический паспорт отчёта

#### Структура отчёта:

<figure><img src="https://2409287958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfkymnT1WRuXnrJRm6ZIO%2Fuploads%2Fey1yfFcQd6WekaCo3LL0%2F%D1%81%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9%20%D0%BE%D1%82%D1%87%D1%91%D1%82%20%D0%BF%D0%BE%20%D0%B7%D0%B2%D0%BE%D0%BD%D0%BA%D0%B0%D0%BC%201.jpg?alt=media&#x26;token=18bc6cdd-99d8-4ab8-b168-a602eac60103" alt=""><figcaption></figcaption></figure>

#### Данные в системе

**Линия** и **Направление (1-2)**:

Эти данные хранятся непосредственно в сущности самого <mark style="background-color:yellow;">**звонка**</mark>. Метрика **Линия (1)** в <mark style="background-color:purple;">**MacroData**</mark> на данный момент не выгружается. Чтобы получить данные по **Направлениям (2)** звонков обратитесь к таблице calls[^1].

Принцип выбора данных в системе без учёта дополнительных фильтров:

<figure><img src="https://2409287958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfkymnT1WRuXnrJRm6ZIO%2Fuploads%2F3jy7rwqXFezt6NBF64S6%2F%D1%81%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9%20%D0%BE%D1%82%D1%87%D1%91%D1%82%20%D0%BF%D0%BE%20%D0%B7%D0%B2%D0%BE%D0%BD%D0%BA%D0%B0%D0%BC%202.jpg?alt=media&#x26;token=5086d95f-96ea-4ccb-9cd8-24800cdcc7b7" alt=""><figcaption></figcaption></figure>

Принцип выбора данных в <mark style="background-color:purple;">**MacroData**</mark> без учёта дополнительных фильтров:

```sql
SELECT
  calls.direction,
  count(calls.id)  
FROM
  calls   
GROUP BY calls.direction;
```

**Отдел (3)** и **Менеджер звонка (8)**:

Данные об **Отделе (3)** тянутся из информации о менеджере, на которого был переведён звонок. Чтобы получить эти данные установите связь таблицы calls с таблицами users[^2] и company\_departments[^3].

Принцип выбора данных в системе без учёта дополнительных фильтров:

<figure><img src="https://2409287958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfkymnT1WRuXnrJRm6ZIO%2Fuploads%2FFtTOfxncgmVpqRXTttJg%2F%D1%81%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9%20%D0%BE%D1%82%D1%87%D1%91%D1%82%20%D0%BF%D0%BE%20%D0%B7%D0%B2%D0%BE%D0%BD%D0%BA%D0%B0%D0%BC%203.jpg?alt=media&#x26;token=8427fc22-fd91-4e5b-ab0e-b142004f6f23" alt=""><figcaption></figcaption></figure>

Принцип выбора данных в <mark style="background-color:purple;">**MacroData**</mark> без учёта дополнительных фильтров:

```sql
SELECT
  COUNT(calls.id),
  users.users_name,  
  company_departments.department_name  
FROM  
  calls  
  LEFT JOIN users ON calls.manager_id = users.id  
  LEFT JOIN company_departments ON users.departments_id = company_departments.departments_id   
GROUP BY   
  users.users_name,   
  company_departments.department_name   
ORDER BY   
  COUNT(calls.id) DESC;
```

{% hint style="info" %}
Приведённый запрос будет отображать количество звонков и по менеджеру, и по отделу одновременно ввиду специфической связи задействованных таблиц в <mark style="background-color:purple;">**MacroData**</mark>.
{% endhint %}

**Город**, **Группа Домов** и **Дом (4-6)**:

Эти данные тянутся из поля <mark style="background-color:purple;">**Интерес к домам**</mark>. В системе у сущности звонка есть собственное одноимённое поле. Для получения этих данных в <mark style="background-color:purple;">**MacroData**</mark> настройте связь calls и estate\_houses[^4] через таблицу estate\_buys[^5].

Принцип выбора данных в системе без учёта дополнительных фильтров:

<figure><img src="https://2409287958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfkymnT1WRuXnrJRm6ZIO%2Fuploads%2FUHyfKlIA9HvtVUYySCVh%2F%D1%81%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9%20%D0%BE%D1%82%D1%87%D1%91%D1%82%20%D0%BF%D0%BE%20%D0%B7%D0%B2%D0%BE%D0%BD%D0%BA%D0%B0%D0%BC%204.jpg?alt=media&#x26;token=c6c4eca7-5a12-400d-b241-98d16ae052f1" alt=""><figcaption></figcaption></figure>

Принцип выбора данных в <mark style="background-color:purple;">**MacroData**</mark> без учёта дополнительных фильтров:

```sql
SELECT  
  COUNT(calls.id), 
  estate_houses.complex_name 
FROM 
  calls 
  LEFT JOIN estate_buys ON calls.estate_id = estate_buys.id 
  LEFT JOIN estate_houses ON estate_buys.first_house_interest = estate_houses.house_id 
GROUP BY 
  estate_houses.complex_name 
ORDER BY 
  COUNT(calls.id) DESC;
```

{% hint style="warning" %}
Приведённый запрос отображает **Группу домов (5)**. Для вывода **Города (4)** и **Дома (6)** замените строку `estate_houses.complex_name` на `estate_houses.geo_city_name` или `estate_houses.public_house_name` соответственно.&#x20;
{% endhint %}

**Тематика (7)**:

Данные о тематиках звонков хранятся в <mark style="background-color:purple;">**карточке звонка**</mark> и в отдельной таблице calls\_subjects[^6].

Принцип выбора данных в системе без учёта дополнительных фильтров:

<figure><img src="https://2409287958-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfkymnT1WRuXnrJRm6ZIO%2Fuploads%2F43LLqyLU8TGUwwwueyDZ%2F%D1%81%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9%20%D0%BE%D1%82%D1%87%D1%91%D1%82%20%D0%BF%D0%BE%20%D0%B7%D0%B2%D0%BE%D0%BD%D0%BA%D0%B0%D0%BC%205.jpg?alt=media&#x26;token=444b5523-5a22-4fa6-b224-a14d13c0d85a" alt=""><figcaption></figcaption></figure>

Принцип выбора данных в <mark style="background-color:purple;">**MacroData**</mark> без учёта дополнительных фильтров:

```sql
SELECT 
  COUNT(calls.id), 
  calls_subjects.title 
FROM 
  calls 
  LEFT JOIN calls_subjects ON calls.id = calls_subjects.id 
GROUP BY 
  calls_subjects.title 
ORDER BY 
  COUNT(calls.id) DESC;
```

[^1]: Содержит данные о всех звонках в компании

[^2]: Содержит данные о пользователях в компании.

[^3]: Содержит данные об отделах в компании.

[^4]: Содержит данные о домах в компании.

[^5]: Содержит данные о заявках в компании.

[^6]: Содержит данные о тематиках звонков в компании и их атрибутах.
