Мастер-Тур:Загрузка услуг — различия между версиями
[досмотренная версия] | [досмотренная версия] |
Schukin (обсуждение | вклад) |
Schukin (обсуждение | вклад) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 142: | Строка 142: | ||
==Механизм пересадки услуг== | ==Механизм пересадки услуг== | ||
===Автоматический перенос=== | ===Автоматический перенос=== | ||
− | Был создан механизм, который автоматически | + | Был создан механизм, который автоматически через некоторый интервал времени (согласно настройкам задания(job "Job_QuotaTypeTransfer")) ищет по всем квотам следующую ситуацию: |
*По одинаковым параметрам услуги (любой квотируемой услуги) есть на одну и ту же дату квоты 2 типов: allotment и commitment, и по квоте commitment есть свободные места, а по квоте allotment занято хотя бы одно место | *По одинаковым параметрам услуги (любой квотируемой услуги) есть на одну и ту же дату квоты 2 типов: allotment и commitment, и по квоте commitment есть свободные места, а по квоте allotment занято хотя бы одно место | ||
Пример:<br /> | Пример:<br /> | ||
[[Файл:Ds081.png]]<br /> | [[Файл:Ds081.png]]<br /> | ||
− | Если | + | Если найдена подобная ситуация заполнения квоты, то при запуске механизма пересчета квот часть номеров/туристов с Allotment будет пересажена в Commitment. Пересадка осуществляется для тех путевок, которые были оформлены раньше, но если мест свободно меньше, чем нужно в путевке, то ищутся следующие путевки по увеличению даты оформления, если такие путевки не найдены, то первая путевка сажается частично, то есть часть людей садятся на Allotment, часть на Commitment (касается авиаперелетов). |
Если по услуге Отель свободные места на Commitment есть только на несколько дней, а не на весь заезд, то пересадка на Commitment идет только этих нескольких дней, остальные остаются на Allotment. | Если по услуге Отель свободные места на Commitment есть только на несколько дней, а не на весь заезд, то пересадка на Commitment идет только этих нескольких дней, остальные остаются на Allotment. | ||
− | Цель механизма состоит в том, что бы не | + | Цель механизма состоит в том, что бы не создавалось ситуации, при которой были бы заняты квоты Allotment, если есть свободные места в квоте Commitment. |
− | |||
− | |||
− | |||
− | |||
− | |||
Также при наличии 2 типов квот: на заезд и на период, пересадка идёт в более приоритетную квоту, то есть на заезд. | Также при наличии 2 типов квот: на заезд и на период, пересадка идёт в более приоритетную квоту, то есть на заезд. | ||
+ | |||
В стандартном режиме работы приоритеты идут следующим образом: | В стандартном режиме работы приоритеты идут следующим образом: | ||
#Квота Commitment на заезд | #Квота Commitment на заезд | ||
Строка 163: | Строка 159: | ||
#Квота Allotment на заезд | #Квота Allotment на заезд | ||
#Квота Allotment на период | #Квота Allotment на период | ||
− | При | + | [[Файл: mb_030.png|left|Предупреждение]] <br /> |
+ | При условии, что на квоте типа Commitment есть свободные места для переноса, но стоит StopSale – перенос не осуществляется. | ||
+ | Важно! Услуги, сидящие на request или подтвержденные вне квоты, данным механизмом не обрабатываются. | ||
+ | |||
+ | Также в процессе данного переноса должны анализируются квоты типа "любой"/"любая", не зависимо от типа квоты. Данный перенос может осуществляться в рамках одного типа квоты, а именно - в том, случае если для отеля заведено несколько квот, одна из которых на любой тип номера и на любую категорию номера, то необходимо проверять не освободились ли места в более определенной квоте, например "любой"/"standart", и если там есть свободное место – то переносить людей из квоту "любой"/"любая" в эту квоту. | ||
+ | |||
+ | Приоритет переноса (от наивысшего): | ||
+ | #dbl / standard | ||
+ | #dbl / любая | ||
+ | #любая / standard | ||
+ | #любая / любая | ||
+ | |||
+ | [[Файл: mb_030.png|left|Предупреждение]] <br /> | ||
+ | Важно! Если существует квота Alloment dbl/standard и Comitment любая/любая, то перенос будет осуществлен из Alloment в Comitment. | ||
+ | |||
+ | |||
+ | |||
+ | ====Настройка SYSStatusToQuotaTransfer==== | ||
+ | Добавлена настройка SYSStatusToQuotaTransfer, в которую добавляются значения из Order_Status, согласно ей рассматриваются только те договора, у который состояние находится в настройке. | ||
+ | Например, | ||
+ | |||
+ | <TABLE><TR><TD> | ||
+ | <syntaxhighlight lang="sql"> | ||
+ | update SystemSettings set SS_ParmValue='4,7'where [SS_ParmName]='SYSStatusToQuotaTransfer' | ||
+ | </syntaxhighlight> | ||
+ | </TD></TR></TABLE> | ||
+ | |||
+ | свидетельствует о том что будут рассматриваться договора у который статус "Не подтвержден" или "ОК". | ||
+ | |||
+ | [[Файл: mb_030.png|left|Предупреждение]] <br /> | ||
+ | Заявки со статусом "отказано партнером" не перебрасываются ни при каких вариантах. | ||
+ | |||
+ | |||
+ | |||
+ | Обработка статусов: система анализирует статусы заявок сидящих на allotment, после чего перебрасывает в commitment | ||
+ | #Со статусом ОК | ||
+ | #Со статусом "в работе" | ||
===Ручной перенос=== | ===Ручной перенос=== | ||
[[Файл:Ds082.png|x500px|Экран "Загрузка услуг"]]<br /> | [[Файл:Ds082.png|x500px|Экран "Загрузка услуг"]]<br /> | ||
Строка 170: | Строка 202: | ||
Отличие от автоматизированного переноса туристов состоит в том, что ручной механизм делает перенос только в рамках тех данных, которые открыты у пользователя на момент нажатия кнопки, а не по всей базе данных. | Отличие от автоматизированного переноса туристов состоит в том, что ручной механизм делает перенос только в рамках тех данных, которые открыты у пользователя на момент нажатия кнопки, а не по всей базе данных. | ||
− | После нажатия кнопки происходит проверка на условия | + | После нажатия кнопки происходит проверка на условия указанные выше и начинается подбор услуг для пересадки в квоты. |
− | <br />[[Файл: | + | <br />[[Файл:Ds096.png|x500px]]<br /> |
+ | В случае, если такие ситуации найдены выдается предупреждение перед началом пересадки. | ||
+ | <br />[[Файл:Ds097.png|x500px]]<br /> | ||
При положительном ответе, начинается процесс переноса квот. | При положительном ответе, начинается процесс переноса квот. | ||
<br />[[Файл:Ds085.png|x500px]]<br /> | <br />[[Файл:Ds085.png|x500px]]<br /> | ||
Строка 179: | Строка 213: | ||
− | <br />[[Файл: | + | <br />[[Файл:Ds099.png|x500px]]<br /> |
В случае успешного завершения переноса система сообщит количество перенесенных услуг. | В случае успешного завершения переноса система сообщит количество перенесенных услуг. | ||
− | <br />[[Файл: | + | <br />[[Файл:Ds098.png|x500px]]<br /> |
В случае, если нет необходимости переноса услуг. | В случае, если нет необходимости переноса услуг. | ||
<br />[[Файл:Ds088.png|x500px]]<br /> | <br />[[Файл:Ds088.png|x500px]]<br /> | ||
[[Category:Мастер-Тур]] | [[Category:Мастер-Тур]] |
Версия 18:16, 21 февраля 2013
Статья находится на стадии разработки.
Версия статьи от 21-02-2013. Для перехода на версию статьи, соответствующую используемой Вами версии программы, нажмите ссылку в таблице
Более ранние версии: |
Содержание
Введение
Режим Загрузка услуг позволяет вести контроль наличия свободных/израсходованных квот, состояния квотируемых услуг, количества и состава туристов, пользующихся той или иной услугой (как квотируемых, так и не квотируемых) в оформленных путевках. Вход в данный режим осуществляется из главного меню ПК Мастер-Тур (раздел Реализация турпродукта).
Работа в экране Наличие мест/Загрузка услуг
В первую очередь необходимо выбрать класс услуги. Затем укажите страну и город предоставления услуги в полях Страна, Город соответственно. При необходимости укажите поставщика услуги и выберите город начала поездки. В фильтрах по датам задайте период отображения данных.
Для класса услуг Авиаперелет, для удобства контроля определенного направления, имеется возможность наложить дополнительный фильтр Город вылета (для других услуг это поле отображаться не будет). Выпадающий список в этом поле формируется автоматически при создании услуг: в него попадают все города вылета в город, указанный в поле Город. Например: в вашем туре в Арльберг вылеты осуществляются не только из Москвы, но и Нижнего Новгорода и Уфы. Выбрав один из этих городов в поле Город вылета, вы сможете получить информацию по конкретно выбранным направлениям.
В центральной части экрана слева располагается полный список услуг в соответствии с наложенными ограничениями, справа – таблица с информацией о состоянии блоков (свободных и занятых квот) и количестве используемых услуг по датам. Индикация строк и ячеек в таблице состояния квот подробно описана в разделе Квоты. Соответственно разработано два режима работы с данными: Наличие мест и Загрузка услуг. Переключение между этими двумя режимами осуществляется по кнопке Наличие мест/Загрузка услуг на панели инструментов.
По умолчанию услуги в таблице отображаются в виде списка дополнительных описаний, выбранной услуги (здесь для класса услуги Авиаперелет в выбранную страну и и город в списке авиаперелетов синим значком подсвечиваются прямые перелеты, зелёным значком – обратные авиаперелёты).
Опция Раскрыть все отображает в экране детализацию по всем услугам сразу. При выборе в контекстном меню функции Раскрыть раскрывает детализацию только для выбранной в экране услуги (выделить группу услуг можно удерживая нажатой кнопку Ctrl).
В экране Загрузка услуг таблицу с услугами можно дополнить отображением поставщиков услуг и статусов бронирования услуг. Для услуги Отель/Круиз можно просмотреть загрузку по занятым номерам или по количеству туристов, пользующихся услугой: опции Загрузка по номерам, по людям соответственно.
Может возникнуть ситуация, когда один и тот же рейс осуществляет перелет по сложному маршруту, например, Екатеринбург–Москва, Москва–Альберг. При выбранных условиях страна – Австрия, город – Арльберг, рейс Екатеринбург–Москва в экране не отобразится, а вам необходимо посмотреть наличие свободных мест/загрузку услуг на этот рейс. В этом случае выделите в таблице услугу и в контекстном меню выберите Прикрепить. Строка с прикреплённой услугой помечается знаком «плюс».
Проверка корректности числа снятых мест
Функция проверки корректности числа снятых мест доступна пользователю, принадлежащему к группе avAdmin. Для этого в эране Наличие мест/Загрузка услуг предусмотрена кнопка Проверка. В окне Проверка корректности числа снятых мест приведена подробная инструкция, что необходимо сделать, если найдено несоответствие числа снятых мест числу услуг поставленных на квоту.
Режим Наличие мест
Работа в экране Наличие мест аналогична работе в экране Квоты (см. Квоты). Здесь дополнительно можно наложить фильтр по типу квот: commitment или allotment.
При работе с квотами выделенными на услугу в контекстном меню, вызываемом левой кнопкой мыши, доступны функции:
- Изменить число мест в квоте
- Поставить/Снять Stop-Sale
Работа с занятыми квотами и услугами на запросе
На каждую конкретную дату по занятым квотам и местам можно получить различные сведения о туристах пользующихся квотой или пользующихся услугой вне квоты. Для этого в таблице данных в строках с детализацией расходования квот левой кнопкой мыши на определенную дату вызовите контекстное меню и выберите Полный список клиентов или Список клиентов на блоке:
- Полный список клиентов: сюда входят услуги занявшие квоту, услуги на wait-листе и все не квотируемые услуги, относящиеся к выбранной услуге (такие услуги можно увидеть в режиме Загрузка услуг)
- Список клиентов на блоке: собственно, список клиентов на блоке.
В строках таблицы с занятыми местами (неквотируемыми услугами) в контекстном меню будут доступны функции Полный список клиентов и Список на услугу.
Функции Полный список клиентов, Список клиентов на блоке и Список на услугу вызывают одно и то же окно Список на услугу (о том, как работать в этом окне смотри ниже - «Работа в окне Список на услугу»).
Чтобы получить информацию по услуге, стоящей на листе ожидания, в строке с детализацией квоты, имеющей статус Request щелчком левой клавишей мыши в таблице с данными вызовите окно Список на услугу.
Работа в окне Список на услугу
Окно Список на услугу (далее в названии окна будет отображаться дата, на которую отображается информация, и описание услуги) содержит подробную информацию о туристах и услугах, которыми пользуются туристы.
Разработано два режима отображения информации: по туристам либо по услугам. Можно выбрать язык представления данных: русский или латинский. Переключаться между этими режимами можно при помощи выпадающих списков в верхней части экрана.
Для более эффективной работы с данными имеется возможность наложить фильтры:
- по состоянию оплат оформленных путевок: полностью оплаченные, частично оплаченные, неоплаченные;
- по возрасту туристов: взрослые, дети, инфанты.
В режиме работы с услугами можно отобрать путевки Без клиентов. В этом случае в отбор попадут только те путевки, в которых внесены данные не всех туристов, пользующихся услугой, например путевка, в которой из 95 туристов в услуге авиаперелет внесены данные только одного туриста. По этой причине количество туристов в режиме Туристы по услугам может не совпадать с количеством туристов в путевках в режиме Услуги.
В строке состояния в нижней части окна отображается:
- в режиме Туристы по услугам: общее число туристов; количество туристов по каждой продолжительности тура.
- в режиме Услуги: количество путевок и туристов в них.
В этом окне кнопкой Список столбцов можно вызвать дополнительное окно настройки отображения необходимых колонок (ниже на рисунке представлен список столбцов для услуг Авиаперелет в режиме Туристы по услуге). В зависимости от режима работы, Услуги или Туристы по услугам, и от класса услуги перечень доступных колонок будет меняться.
В экране Список на услугу можно задать номер авиабилета. Для этого необходимо нажать один раз на соответствующую туристу колонку № а/б (см. рисунок ниже) и ввести в текстовое поле номер авиабилета. Сохранение введенного номера авиабилета происходит при переходе в другое поле, при закрытии окна или нажатии на кнопку Сохранить. В случае, если нажата кнопка Обновить, когда курсор еще находится в поле № а/б, то сохранения не происходит.
Для каждой услуги здесь имеется возможность отслеживать статус бронирования. В ячейке со статусом указывается число, рассчитанное по формуле: Количество человек умноженное на Продолжительность услуги.
Кнопкой Туристы на панели инструментов можно войти в режим работы с данными туристов – в экран Туристы. В режиме работы с туристами этот же экран вызывается двойным щелчком по записи.
Кнопкой Путевка можно перейти в режим работы с путевкой – в экран Турпутевка. В режиме работы с путевками этот экран также может быть вызван двойным щелчком по записи.
Имеется возможность изменить параметры услуги, например, заменить рейс. Для этого в режиме работы Услуги (поскольку будет изменяться услуга) выделите в таблице необходимую запись и нажмите на панели инструментов кнопку Пересадка туристов. После этого в появившемся окне Определите параметры изменения услуги будет предложено заменить:
- для класса услуг Авиаперелет: рейс, тариф, партнера по услуге, дату начала действия услуги
- для класса услуг Отель/Круиз: услугу (отель), проживание, питание, партнера, дату начала действия услуги.
После выбора в этом окне необходимых параметров будут появляться соответствующие дополнительные окна редактирования выбранной услуги. После переноса, если услуга квотируемая, то она снимается с редактируемой в данный момент квоты и становится на другую квоту, если в результате изменения параметров образовалась квотируемая услуга. Таким образом, если на новую услугу, получившуюся в результате изменения параметров, квоты не внесены, то увидеть такую услугу можно будет только в режиме Загрузка услуг.
После изменения каких-либо параметров, по нажатии кнопки ОК, программа будет требовать подтверждение изменения. На рисунке ниже показано подтверждение замены в услуге рейса.
Обнуление квот
Для корректной работы с обнуленными квотами необходимо создать задание (job). Для этого необходимо прогнать по базе данных скрипт JOB_ChangeQuotaPlaces.sql (его можно скачать при обновлении на релиз ПК «Мастер-Тур» 2009.2.17). При прогоне скрипта создается задание (job) ChangeQuotaPlaces. Он запускает хранимую процедуру ChangeQuotaPlaces. Запускается каждые 30 секунд. Выполняет возврат путевок в квоту при условии, что там освободились места.
Существует возможность изменить число мест в квоте на количество мест меньшее, чем на данный момент времени сидит туристов на квоте. Изменения производятся через экран Редактирование числа мест в квоте (доступен из экранов Квота и Загрузка услуг по пункту в контекстном меню строки Изменить число мест в квоте). Для этого в колонке Установить число мест необходимо указать число мест меньшее, чем в колонке Занято мест.
Регулируется возможность обнуления квоты разрешением (action) Квоты > Разрешить редактирование числа мест, меньше занятых. По умолчанию этого разрешения у пользователя нет.
Далее при нажатии на кнопку ОК вызывается экран с сообщением о том, что часть туристов будут сняты с квоты и запросом на подтверждение этого действия. По умолчанию услуги, снятые с квоты будут подтверждены все квоты.
После подтверждения запроса о снятии туристов с квоты производится пересадка последних оформленных туристов (сортировка по дате создания путевки) с квоты на подтверждение все квоты. Статус услуги в путевке не меняется (остается ОК).
В экране Загрузка услуг пересаженные туристы не отличаются от туристов, которые были вручную размещены на подтверждение вне квоты. Но в экране Список на услугу такие туристы отображаются в колонке Ok_Wait без подсветки. Это сделано для того, чтобы была возможность отличать туристов, которые ждут посадки на квоту, от реально подтвержденных вне квоты.
В случае, если освободились места в квотах, с которых были сняты туристы – будет произведен возврат снятых туристов в эту квоту (сортировка по дате создания путевки). Запрос на возврат туристов в квоту осуществляется с периодичностью, заданной в джобе ChangeQuotaPlaces (по умолчанию – раз в 30 секунд). Возврат в квоту происходит по всем туристам путевки. Если, например, освободилось всего 1 место в квоте, а в путевке, которая должна быть возвращена в квоту 2 туриста, то происходит дальнейшая проверка до тех пор, пока не будет обнаружена путевка где только один человек, который и будет посажен на данную квоту. Квота всегда заполнена максимально возможным числом туристов.
Режим Загрузка услуг
Работа в этом режиме осуществляется по аналогии с работой в режиме Наличие свободных мест (см. "Режим Наличие свободных мест" и "Работа с занятыми квотами и услугами на запросе"). В таблице отображается полный состав услуг (квотируемых и не квотируемых), количество человек, которые ими пользуются. Данные можно дополнить отображением поставщиков и статусов услуг.
Информацию по загрузке услуг в экране дополнительно можно отобрать по городу начала маршрута в оформленных путевках, выбрав город в поле Город начала поездки. Для услуги Отель/Круиз можно выбрать вид представления данных:
- По номерам – количество проданных номеров;
- По людям – количество человек, пользующихся услугой.
Механизм пересадки услуг
Автоматический перенос
Был создан механизм, который автоматически через некоторый интервал времени (согласно настройкам задания(job "Job_QuotaTypeTransfer")) ищет по всем квотам следующую ситуацию:
- По одинаковым параметрам услуги (любой квотируемой услуги) есть на одну и ту же дату квоты 2 типов: allotment и commitment, и по квоте commitment есть свободные места, а по квоте allotment занято хотя бы одно место
Пример:
Если найдена подобная ситуация заполнения квоты, то при запуске механизма пересчета квот часть номеров/туристов с Allotment будет пересажена в Commitment. Пересадка осуществляется для тех путевок, которые были оформлены раньше, но если мест свободно меньше, чем нужно в путевке, то ищутся следующие путевки по увеличению даты оформления, если такие путевки не найдены, то первая путевка сажается частично, то есть часть людей садятся на Allotment, часть на Commitment (касается авиаперелетов).
Если по услуге Отель свободные места на Commitment есть только на несколько дней, а не на весь заезд, то пересадка на Commitment идет только этих нескольких дней, остальные остаются на Allotment.
Цель механизма состоит в том, что бы не создавалось ситуации, при которой были бы заняты квоты Allotment, если есть свободные места в квоте Commitment.
Также при наличии 2 типов квот: на заезд и на период, пересадка идёт в более приоритетную квоту, то есть на заезд.
В стандартном режиме работы приоритеты идут следующим образом:
- Квота Commitment на заезд
- Квота Commitment на период
- Квота Allotment на заезд
- Квота Allotment на период
При условии, что на квоте типа Commitment есть свободные места для переноса, но стоит StopSale – перенос не осуществляется. Важно! Услуги, сидящие на request или подтвержденные вне квоты, данным механизмом не обрабатываются.
Также в процессе данного переноса должны анализируются квоты типа "любой"/"любая", не зависимо от типа квоты. Данный перенос может осуществляться в рамках одного типа квоты, а именно - в том, случае если для отеля заведено несколько квот, одна из которых на любой тип номера и на любую категорию номера, то необходимо проверять не освободились ли места в более определенной квоте, например "любой"/"standart", и если там есть свободное место – то переносить людей из квоту "любой"/"любая" в эту квоту.
Приоритет переноса (от наивысшего):
- dbl / standard
- dbl / любая
- любая / standard
- любая / любая
Важно! Если существует квота Alloment dbl/standard и Comitment любая/любая, то перенос будет осуществлен из Alloment в Comitment.
Настройка SYSStatusToQuotaTransfer
Добавлена настройка SYSStatusToQuotaTransfer, в которую добавляются значения из Order_Status, согласно ей рассматриваются только те договора, у который состояние находится в настройке. Например,
update SystemSettings set SS_ParmValue='4,7'where [SS_ParmName]='SYSStatusToQuotaTransfer'
|
свидетельствует о том что будут рассматриваться договора у который статус "Не подтвержден" или "ОК".
Заявки со статусом "отказано партнером" не перебрасываются ни при каких вариантах.
Обработка статусов: система анализирует статусы заявок сидящих на allotment, после чего перебрасывает в commitment
- Со статусом ОК
- Со статусом "в работе"
Ручной перенос
В экран "Загрузка услуг" была добавлена кнопка Пересадка, отвечающая за ручной запуск механизма.
Отличие от автоматизированного переноса туристов состоит в том, что ручной механизм делает перенос только в рамках тех данных, которые открыты у пользователя на момент нажатия кнопки, а не по всей базе данных.
После нажатия кнопки происходит проверка на условия указанные выше и начинается подбор услуг для пересадки в квоты.
В случае, если такие ситуации найдены выдается предупреждение перед началом пересадки.
При положительном ответе, начинается процесс переноса квот.
Процесс можно прервать кнопкой Отмена.
В случае, если перенос услуги уже начался, прервать его невозможно. Механизм дождется завершения переноса текущей услуги и завершит процесс, не приступая к новым услугам.
В случае успешного завершения переноса система сообщит количество перенесенных услуг.
В случае, если нет необходимости переноса услуг.