Урок 20 Работа с SQL-запросом — различия между версиями

Материал из Oktell
Перейти к: навигация, поиск
(Новая страница: «{|cellpadding="10" cellspacing="0" border="0" | Наверх | [[Урок 19 Обработка неудачного входящего соедин...»)
 
Строка 9: Строка 9:
  
 
В этом уроке разбирается компонент "SQL-запрос".  
 
В этом уроке разбирается компонент "SQL-запрос".  
 +
 +
 +
[[Файл:Урок20-006.png |center]]
  
  
Строка 25: Строка 28:
 
Для создания и использования собственной таблицы существуют два способа:
 
Для создания и использования собственной таблицы существуют два способа:
  
'''1)''' Использовать модуль "'''Таблицы абонентов'''" в разделе "'''Call-центр'''". Созданная таблица будет располагаться в БД '''Oktell'''<br>
+
'''1)''' Использовать модуль "'''Таблицы абонентов'''" в разделе "'''Call-центр'''". Созданная таблица будет располагаться в БД '''Oktell'''
'''2)''' Вручную создать таблицу в любой базе данных с помощью '''SQL Server Management Studio'''<br>
+
 
 +
'''2)''' Вручную создать таблицу в любой базе данных с помощью '''SQL Server Management Studio'''
  
 
После создания таблицы вы сможете обращаться к ней, записывать и считывать данные в ходе работы сценариев. Рассмотрим описанный процесс поподробнее.  
 
После создания таблицы вы сможете обращаться к ней, записывать и считывать данные в ходе работы сценариев. Рассмотрим описанный процесс поподробнее.  
Строка 38: Строка 42:
  
 
Чтобы создать таблицу в базе данных '''Oktell''':
 
Чтобы создать таблицу в базе данных '''Oktell''':
* Перейдите в модуль "Проекты". Нажмите '''Добавить'''. Создайте проект.  
+
* Перейдите в модуль "Проекты". Нажмите '''Добавить'''. Создайте проект.
 +
 
 +
 
 +
[[Файл:Урок20-001.png |center|600px]]
 +
 
 +
 
* Перейдите в модуль "Таблицы абонентов". Нажмите '''Добавить'''.  
 
* Перейдите в модуль "Таблицы абонентов". Нажмите '''Добавить'''.  
 +
 +
 +
[[Файл:Урок20-002.png |center|600px]]
 +
 +
 
* На вкладке "'''Подключение'''" введите название таблицы. В примере название таблицы "'''Lesson20'''". Нажмите "'''Далее'''".  
 
* На вкладке "'''Подключение'''" введите название таблицы. В примере название таблицы "'''Lesson20'''". Нажмите "'''Далее'''".  
 
* На вкладке "'''Данные'''" добавьте столбцы для хранения данных. В примере добавлены следующие столбцы:
 
* На вкладке "'''Данные'''" добавьте столбцы для хранения данных. В примере добавлены следующие столбцы:
Строка 46: Строка 60:
 
:*'''Datetime''' - поле для хранения времени звонка. Тип Datetime
 
:*'''Datetime''' - поле для хранения времени звонка. Тип Datetime
 
* Нажмите "'''Сохранить'''".  
 
* Нажмите "'''Сохранить'''".  
 +
 +
 +
[[Файл:Урок20-003.png |center|500px]][[Файл:Урок20-004.png |center|500px]]
 +
  
 
Созданная таблица будет доступна в базе данных '''Oktell''' и к ней можно будет обращаться в сценариях. С помощью модуля "'''Таблицы абонентов'''" вы можете в любой момент времени посмотреть находящиеся записи в таблице, изменить их значение, удалить строки или очистить таблицу.  
 
Созданная таблица будет доступна в базе данных '''Oktell''' и к ней можно будет обращаться в сценариях. С помощью модуля "'''Таблицы абонентов'''" вы можете в любой момент времени посмотреть находящиеся записи в таблице, изменить их значение, удалить строки или очистить таблицу.  
Строка 52: Строка 70:
 
=== Создание таблицы вручную===  
 
=== Создание таблицы вручную===  
  
Если у вас нет модуля Call-центра, вы можете создать таблицы абонентов вручную, пользуясь программой SQL Server Management Studio (SSMS). Для каждой версии Microsoft SQL Server устанавливается соответствующая версия SSMS.  
+
Если у вас нет модуля Call-центра, вы можете создать таблицы абонентов вручную, пользуясь программой '''SQL Server Management Studio''' ('''SSMS'''). Для каждой версии '''Microsoft SQL Server''' устанавливается соответствующая версия SSMS.  
  
 
Программа доступна доступна на сайте [http://www.microsoft.com/  http://www.microsoft.com/].  
 
Программа доступна доступна на сайте [http://www.microsoft.com/  http://www.microsoft.com/].  
Строка 58: Строка 76:
 
Чтобы создать таблицу вручную:
 
Чтобы создать таблицу вручную:
  
* Зайдите в SSMS и создайте запрос вида (пример для таблицы '''Lesson20''' (см.выше))
+
* Зайдите в '''SSMS''' и создайте запрос вида (пример для таблицы '''Lesson20''' (см.выше))
  
 
  USE [oktell]
 
  USE [oktell]
Строка 78: Строка 96:
 
  GO
 
  GO
  
* Нажмите '''F5'''. Таблица '''Lesson20''' будет создана в БД '''Oktell''' и к ней можно будет обращаться в сценариях.  
+
* Нажмите '''F5''' или кнопку "'''Выполнить'''". Таблица '''Lesson20''' будет создана в БД '''Oktell''' и к ней можно будет обращаться в сценариях.  
 +
 
 +
 
 +
[[Файл:Урок20-005.png |center|600px]]
  
  

Версия 12:26, 24 марта 2014

Наверх К предыдущему уроку

В этом уроке разбирается компонент "SQL-запрос".


Урок20-006.png


Введение

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

Базы данных, в основном, применяются в целях хранения сведений по абонентам, информации по коммутациям и различных системных настроек. В своей работе Oktell использует Microsoft SQL Server. Когда вы устанавливаете программу, автоматически создаются 3 системные базы данных:

  • oktell - основная БД для хранения оперативной статистики и статистики АТС.
  • oktell_settings - БД для хранения настроек комплекса, используемых для загрузки сервера.
  • oktell_cc_temp - БД для хранения статистики работы call-центра в пространственных таблицах.

Обращение сервера Oktell к БД всегда осуществляется через основную базу oktell.

Для создания и использования собственной таблицы существуют два способа:

1) Использовать модуль "Таблицы абонентов" в разделе "Call-центр". Созданная таблица будет располагаться в БД Oktell

2) Вручную создать таблицу в любой базе данных с помощью SQL Server Management Studio

После создания таблицы вы сможете обращаться к ней, записывать и считывать данные в ходе работы сценариев. Рассмотрим описанный процесс поподробнее.


Создание таблицы

С помощью модуля "Таблицы абонентов"

ВНИМАНИЕ: Для того, чтобы вы могли использовать этот модуль, в вашей системе должна быть приобретена хотя бы одна лицензия оператора Call-центра.

Чтобы создать таблицу в базе данных Oktell:

  • Перейдите в модуль "Проекты". Нажмите Добавить. Создайте проект.


Урок20-001.png


  • Перейдите в модуль "Таблицы абонентов". Нажмите Добавить.


Урок20-002.png


  • На вкладке "Подключение" введите название таблицы. В примере название таблицы "Lesson20". Нажмите "Далее".
  • На вкладке "Данные" добавьте столбцы для хранения данных. В примере добавлены следующие столбцы:
  • CallerId - поле для хранения телефона абонента. Тип Nvarchar(auto)
  • CalledId - поле для хранения набранного номера. Тип Nvarchar(auto)
  • Datetime - поле для хранения времени звонка. Тип Datetime
  • Нажмите "Сохранить".


Урок20-003.png
Урок20-004.png


Созданная таблица будет доступна в базе данных Oktell и к ней можно будет обращаться в сценариях. С помощью модуля "Таблицы абонентов" вы можете в любой момент времени посмотреть находящиеся записи в таблице, изменить их значение, удалить строки или очистить таблицу.


Создание таблицы вручную

Если у вас нет модуля Call-центра, вы можете создать таблицы абонентов вручную, пользуясь программой SQL Server Management Studio (SSMS). Для каждой версии Microsoft SQL Server устанавливается соответствующая версия SSMS.

Программа доступна доступна на сайте http://www.microsoft.com/.

Чтобы создать таблицу вручную:

  • Зайдите в SSMS и создайте запрос вида (пример для таблицы Lesson20 (см.выше))
USE [oktell]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Lesson20](
	[Id] [int] IDENTITY(1,1) NOT NULL,
	[CallerId] [nvarchar](2000) NULL,
	[CalledId] [nvarchar](2000) NULL,
	[Datetime] [datetime] NULL,
PRIMARY KEY CLUSTERED 
(
	[Id] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
  • Нажмите F5 или кнопку "Выполнить". Таблица Lesson20 будет создана в БД Oktell и к ней можно будет обращаться в сценариях.


Урок20-005.png


Использование SQL-запросов в сценариях

Наверх К предыдущему уроку