Входящая операторская задача — различия между версиями
(Новая страница: «Наверх __TOC__ '''Задача:''' * Создать входящую задачу по обработке клиентов. Иметь ...») |
|||
Строка 10: | Строка 10: | ||
=== Создание таблицы абонентов === | === Создание таблицы абонентов === | ||
− | Для хранения информации по абоненту | + | Для хранения информации по абоненту создана таблица "'''clients'''" со следующими полями: |
+ | :* '''Id''' - номер абонента в списке. Тип '''Int''', создается автоматически. | ||
+ | :* '''phone''' - телефон клиента. Тип '''Nvarchar (auto)'''. Назначение '''Телефон'''. | ||
+ | :* '''name''' - имя клиента. Тип '''Nvarchar (auto)''' | ||
+ | :* '''company''' - название компании. Тип '''Nvarchar (auto)''' | ||
+ | :* '''city''' - город. Тип '''Nvarchar (auto)''' | ||
+ | :* '''comment''' - комментарий к клиенту. Тип '''Nvarchar (auto)''' | ||
+ | Для хранения информации по созданным заявкам создана таблица "'''clients_history'''". Таблица нужна для вывода истории заказов по клиенту. В таблице имеются следующие поля: | ||
+ | :* '''Id''' - номер записи в списке. Тип '''Int''', создается автоматически. | ||
+ | :* '''phone''' - телефон клиента. Тип '''Nvarchar (auto)''' | ||
+ | :* '''order''' - наименование товара. Тип '''Nvarchar (auto)''' | ||
+ | :* '''count''' - количество товара. Тип '''Nvarchar (auto)''' | ||
+ | :* '''summa''' - сумма. Тип '''Nvarchar (auto)''' | ||
+ | :* '''datetime''' - Дата заказа. Тип '''Datetime''' | ||
=== Диалоговый сценарий входящей задачи=== | === Диалоговый сценарий входящей задачи=== | ||
+ | Диалоговый сценарий "'''Вход_Диалоговый'''" запускается всякий раз, когда клиент соединяется с оператором по задаче. Задача этого сценария предоставить оператору форму для заполнения, а далее занести все данные в соответствующие таблицы. | ||
+ | |||
+ | Диалоговый сценарий имеет следующий вид: | ||
+ | |||
+ | |||
+ | [[Файл:Входящая задача-001.png|center]] | ||
+ | |||
+ | |||
+ | *Компонент "'''Диалоговая форма'''" - основная форма по входящей задаче. В этой форме оператор заполняет все необходимые данные по клиенту. Форма выглядит следующим образом: | ||
+ | |||
+ | |||
+ | Пример настройки текстового поля "'''Имя'''": | ||
+ | |||
+ | * Значение - переменная name (Поле таблицы) | ||
+ | * Сохранение - в существующую переменную name | ||
+ | |||
+ | |||
+ | Таким образом происходит сохранение: | ||
+ | * Имя - в переменную '''name''' (поле таблицы) | ||
+ | * Компания - в переменную '''company''' (поле таблицы) | ||
+ | * Город - в переменную '''city''' (поле таблицы) | ||
+ | * Компания - в переменную '''comment''' (поле таблицы) | ||
+ | |||
+ | * Заказ - в переменную '''order''' (строковая) | ||
+ | * Кол-во - в переменную '''count''' (строковая) | ||
+ | * Сумма - в переменную '''summa''' (строковая) | ||
+ | |||
+ | Пример настройки таблицы "'''История заказов'''". | ||
+ | |||
+ | * Значения - используется SQL-запрос, который делает выборку всех заказов по этому клиенту. | ||
+ | |||
+ | select * from clients_history where phone=[phone] | ||
+ | |||
+ | * Столбцы - используются три столбца Дата/время (Поле '''datetime'''), Заказ (поле '''order''') и Сумма (поле '''summa'''). | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | *Компонент "'''Добавлять заказ?'''" - проверяет, заполнено ли поле с заказом. В компоненте сравнивается выражение ''[order]+[summa]'' с пустой строкой. Если правда (обе переменные пустые, сценарий заканчивается). | ||
+ | |||
+ | *Компонент "'''Добавление заказа в историю'''" - выполняется, если хотя бы в одной переменной "'''order'''" или "'''summa'''" содержится информация. Используется следующий SQL-запрос: | ||
+ | |||
+ | insert into clients_history (phone,[order],[count],summa,[datetime]) | ||
+ | values (@phone,@order,@count,@summa,getdate()) | ||
+ | |||
+ | где | ||
+ | |||
+ | @count - переменная '''count''' (строковая) | ||
+ | @order - переменная '''order''' (строковая) | ||
+ | @phone - переменная '''phone''' (поле таблицы) | ||
+ | @summa - переменная '''summa''' (строковая) | ||
Версия 12:31, 24 февраля 2014
Содержание
Задача:
- Создать входящую задачу по обработке клиентов. Иметь возможность ввести данные клиента.
- При повторном звонке отобразить данные оператору. Также оператор должен видеть историю заказов клиента.
Создание таблицы абонентов
Для хранения информации по абоненту создана таблица "clients" со следующими полями:
- Id - номер абонента в списке. Тип Int, создается автоматически.
- phone - телефон клиента. Тип Nvarchar (auto). Назначение Телефон.
- name - имя клиента. Тип Nvarchar (auto)
- company - название компании. Тип Nvarchar (auto)
- city - город. Тип Nvarchar (auto)
- comment - комментарий к клиенту. Тип Nvarchar (auto)
Для хранения информации по созданным заявкам создана таблица "clients_history". Таблица нужна для вывода истории заказов по клиенту. В таблице имеются следующие поля:
- Id - номер записи в списке. Тип Int, создается автоматически.
- phone - телефон клиента. Тип Nvarchar (auto)
- order - наименование товара. Тип Nvarchar (auto)
- count - количество товара. Тип Nvarchar (auto)
- summa - сумма. Тип Nvarchar (auto)
- datetime - Дата заказа. Тип Datetime
Диалоговый сценарий входящей задачи
Диалоговый сценарий "Вход_Диалоговый" запускается всякий раз, когда клиент соединяется с оператором по задаче. Задача этого сценария предоставить оператору форму для заполнения, а далее занести все данные в соответствующие таблицы.
Диалоговый сценарий имеет следующий вид:
- Компонент "Диалоговая форма" - основная форма по входящей задаче. В этой форме оператор заполняет все необходимые данные по клиенту. Форма выглядит следующим образом:
Пример настройки текстового поля "Имя":
- Значение - переменная name (Поле таблицы)
- Сохранение - в существующую переменную name
Таким образом происходит сохранение:
- Имя - в переменную name (поле таблицы)
- Компания - в переменную company (поле таблицы)
- Город - в переменную city (поле таблицы)
- Компания - в переменную comment (поле таблицы)
- Заказ - в переменную order (строковая)
- Кол-во - в переменную count (строковая)
- Сумма - в переменную summa (строковая)
Пример настройки таблицы "История заказов".
- Значения - используется SQL-запрос, который делает выборку всех заказов по этому клиенту.
select * from clients_history where phone=[phone]
- Столбцы - используются три столбца Дата/время (Поле datetime), Заказ (поле order) и Сумма (поле summa).
- Компонент "Добавлять заказ?" - проверяет, заполнено ли поле с заказом. В компоненте сравнивается выражение [order]+[summa] с пустой строкой. Если правда (обе переменные пустые, сценарий заканчивается).
- Компонент "Добавление заказа в историю" - выполняется, если хотя бы в одной переменной "order" или "summa" содержится информация. Используется следующий SQL-запрос:
insert into clients_history (phone,[order],[count],summa,[datetime]) values (@phone,@order,@count,@summa,getdate())
где
@count - переменная count (строковая) @order - переменная order (строковая) @phone - переменная phone (поле таблицы) @summa - переменная summa (строковая)