Megatec Integration Service:Регламентные работы — различия между версиями

Материал из Megatec
Перейти к: навигация, поиск
[непроверенная версия][досмотренная версия]
(ПБД_CleanQuotas: подробные настройки шагов)
 
(не показана 21 промежуточная версия 4 участников)
Строка 1: Строка 1:
=Чистка ПБД=
+
==Введение==
 +
В процессе работы с промежуточной базой данных (ПБД) важно периодически очищать устаревшие данные, чтобы поддерживать актуальность и уменьшать объем хранимой информации. Очистка данных осуществляется с помощью задач (jobs) в SQL Server Agent, которые автоматически добавляются при установке адаптера MIS. Эти задачи включают скрипты для очистки устаревших данных из ПБД.
  
==CleanPrices==
+
==Чистка ПБД==
Внутри этого скрипта находятся две процедуры, предназначенные для удаления цен и акций:
 
* '''[CleanMISAdapterPrices]''' - удаляет цены и акции с прошедшими датами. Предварительно нужно задать количество дней за которое до текущего дня нужно оставить цены и акции. Проверяются 3 даты:
 
** дата действия по,
 
** дата продажи по,
 
** дата заезда по.
 
Если хотя бы одна из них не входит в заданное количество дней, то цену и/или акция удаляется.<br/>
 
Количество дней задается внутри скрипта в ''@days'':
 
DECLARE @days INT
 
SET @days = 365
 
  
* '''[CleanMISAdapterDeletedPrices]''' - удаляет цены и акции,  удаленные во внешней системе (эта часть скрипта уже смотрит на дату загрузки в базу). Предварительно нужно задать количество дней за которое до последней даты загрузки цен в ПБД нужно оставить удалённые цены и акции.<br/>
+
При установке адаптера в SQL Server Agent создаются задачи (jobs), которые позволяют автоматически выполнять очистку промежуточной базы данных.
Количество дней задается внутри скрипта в ''@days'':
 
DECLARE @days INT
 
SET @days = 365
 
  
==CleanQuotas==
+
Основные особенности:
Внутри этого скрипта находятся две процедуры, предназначенные для удаления квот и стопов:
+
 
 +
* По умолчанию задачи создаются '''выключенными'''. Для запуска очистки их необходимо включить вручную.
 +
* Шаги 2 и 3 задач создаются '''выключенными'''. После настройки первого шага требуется установить логику, чтобы при успешном выполнении первого шага происходил переход ко второму.
 +
* Если задача с таким именем уже существует, при установке адаптера пропускается её создание.<br/>
 +
[[Файл:Am 063.png]] Начиная с 29.11.2024, если на вашем сервере есть старые задачи по очистке ПБД, необходимо удалить их перед обновлением плагина (разовая операция). Это позволит адаптеру автоматически создать новые задачи с актуальными параметрами.
 +
 
 +
Создаваемые задачи:
 +
* Название ПБД_CleanPrices
 +
* Название ПБД_CleanQuotas
 +
 
 +
===CleanPrices===
 +
 
 +
Задача включает три процедуры, предназначенные для удаления устаревших цен и акций:<br/>
 +
[[Файл:Ag 208.png]]
 +
 
 +
* '''[CleanPrices]''' – удаляет устаревшие цены и акции на основе заданного параметра @days. Очистка осуществляется по датам:
 +
** дата действия "по";
 +
** дата продажи "по";
 +
** дата заезда "по".
 +
Если хотя бы одна из дат выходит за указанный интервал, данные удаляются.
 +
* '''[CleanDeletedPrices]''' – удаляет данные, которые были удалены во внешней системе, но остались в ПБД.
 +
 
 +
* '''[CleanNotMappedHotelPrices]''' – удаляет данные по несинхронизированным справочникам.
 +
 
 +
===CleanQuotas===
 +
Задача предназначена для очистки устаревших квот и стопов. Она включает следующие процедуры:<br/>
 +
[[Файл:Ag 198.png]]
 +
 
 +
 
 +
 
 +
* '''[CleanQuotas]''' – удаляет квоты с истекшими сроками действия.
 +
* '''[CleanDeletedQuotas]''' – удаляет квоты, удаленные во внешней системе, но сохранившиеся в ПБД.
 +
* '''[CleanNotMappedHotelQuotas]''' – удаляет данные, связанные с несинхронизированными гостиницами.
 +
 
 +
==Настройка задач==
 +
 
 +
После установки адаптера задачи создаются в выключенном состоянии. Для настройки выполните следующее:
 +
 
 +
# Откройте '''SQL Server Agent''' и перейдите к нужной задаче ('''ПБД_CleanPrices''' или '''ПБД_CleanQuotas''').
 +
# Включите задачу (откройте её свойства и активируйте чекбокс '''«Включено»''' у самой задачи).
 +
# Убедитесь, что указана правильная промежуточная база данных в каждом шаге.
 +
# Установите значение '''@days''' — количество дней, за которые сохраняются данные (вводится в тексте команды шага).
 +
# Отредактируйте логику переходов между шагами (в свойствах шага, вкладка '''Дополнительно'''):
 +
## Первый шаг: при успешном выполнении переход ко второму шагу.
 +
## Второй шаг: при успешном выполнении переход к третьему шагу.
 +
## Третий шаг: при успешном выполнении — '''Завершить задачу с успешным результатом'''.
 +
 
 +
[[Файл:Ag_197.png|редактирование значения @days]]
 +
 
 +
[[Файл:Ag 209.png|редактирование шагов в задаче]]
 +
 
 +
===CleanPrices: подробные настройки шагов===
 +
 
 +
Задача запускает три процедуры очистки цен и акций. Для каждого шага задайте параметры, как указано ниже.
 +
 
 +
;Шаг 1. Очистка устаревших цен и акций
 +
* '''Общие:'''
 +
** '''Имя шага:''' CleanPrices
 +
** '''Тип:''' Transact-SQL script (T-SQL)
 +
** '''База данных:''' (ваша ПБД)
 +
** '''Команда (пример):''' EXEC [CleanMISAdapterPrices] @days=365; Замените '''365''' на требуемое значение хранения в днях.
 +
* '''Дополнительно:'''
 +
** При успехе: '''Перейти к следующему шагу'''
 +
** При ошибке: '''Завершить задачу с ошибкой'''
 +
** '''Повторы (необязательно):''' Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин
 +
 
 +
;Шаг 2. Удаление помеченных как удалённые цен
 +
* '''Общие:'''
 +
** '''Имя шага:''' CleanDeletedPrices
 +
** '''Тип:''' Transact-SQL script (T-SQL)
 +
** '''База данных:''' (ваша ПБД)
 +
** '''Команда:''' EXEC [CleanMISAdapterDeletedPrices] @days=365; Замените '''365''' на требуемое значение хранения в днях.
 +
* '''Дополнительно:'''
 +
** При успехе: '''Перейти к следующему шагу'''
 +
** При ошибке: '''Завершить задачу с ошибкой'''
 +
** '''Повторы (необязательно):''' Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин
 +
 
 +
;Шаг 3.  Очистка данных по несинхронизированным справочникам
 +
* '''Общие:'''
 +
** '''Имя шага:''' CleanNotMappedHotelPrices
 +
** '''Тип:''' Transact-SQL script (T-SQL)
 +
** '''База данных:''' (ваша ПБД)
 +
** '''Команда:''' EXEC [CleanMISAdapterNotMappedHotelPrices] @days=365, @mtDatabaseName = '', @serverName = ''; Замените '''365''' на требуемое значение хранения в днях. Укажите в mtDatabaseName БД Мастер-тур. Укажите в serverName имя сервера где хранится БД Мастер-тур и ПБТ
 +
* '''Дополнительно:'''
 +
** При успехе: '''Завершить задачу с успешным результатом'''
 +
** При ошибке: '''Завершить задачу с ошибкой'''
 +
** '''Повторы (необязательно):''' Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин
 +
 
 +
===CleanQuotas: подробные настройки шагов===
 +
 
 +
Задача запускает три процедуры очистки квот и стопов. Настройте шаги аналогично.
 +
 
 +
;Шаг 1. Очистка устаревших квот/стопов
 +
* '''Общие:'''
 +
** '''Имя шага:''' CleanQuotas
 +
** '''Тип:''' Transact-SQL script (T-SQL)
 +
** '''База данных:''' (ваша ПБД)
 +
** '''Команда (пример):''' EXEC [CleanMISAdapterQuotas] @days=365; Замените '''365''' на требуемое значение хранения в днях.
 +
* '''Дополнительно:'''
 +
** При успехе: '''Перейти к следующему шагу'''
 +
** При ошибке: '''Завершить задачу с ошибкой'''
 +
** '''Повторы (необязательно):''' Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин
 +
 
 +
;Шаг 2. Удаление квот, удалённых во внешней системе
 +
* '''Общие:'''
 +
** '''Имя шага:''' CleanDeletedQuotas
 +
** '''Тип:''' Transact-SQL script (T-SQL)
 +
** '''База данных:''' (ваша ПБД)
 +
** '''Команда:''' EXEC [CleanMISAdapterDeletedQuotas] @days=365 ; Замените '''365''' на требуемое значение хранения в днях.
 +
* '''Дополнительно:'''
 +
** При успехе: '''Перейти к следующему шагу'''
 +
** При ошибке: '''Завершить задачу с ошибкой'''
 +
** '''Повторы (необязательно):''' Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин
 +
 
 +
;Шаг 3. Очистка данных, связанные с несинхронизированными гостиницами.
 +
* '''Общие:'''
 +
** '''Имя шага:''' CleanNotMappedHotelQuotas
 +
** '''Тип:''' Transact-SQL script (T-SQL)
 +
** '''База данных:''' (ваша БД Мастер-Тур)
 +
** '''Команда:'''EXEC [CleanMISAdapterNotMappedHotelQuotas] @days=365, @mtDatabaseName = '', @serverName = ''; Замените '''365''' на требуемое значение хранения в днях. Укажите в mtDatabaseName БД Мастер-тур. Укажите в serverName имя сервера где хранится БД Мастер-тур и ПБТ 
 +
* '''Дополнительно:'''
 +
** При успехе: '''Завершить задачу с успешным результатом'''
 +
** При ошибке: '''Завершить задачу с ошибкой'''
 +
** '''Повторы (необязательно):''' Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин

Текущая версия на 19:04, 17 октября 2025

Введение

В процессе работы с промежуточной базой данных (ПБД) важно периодически очищать устаревшие данные, чтобы поддерживать актуальность и уменьшать объем хранимой информации. Очистка данных осуществляется с помощью задач (jobs) в SQL Server Agent, которые автоматически добавляются при установке адаптера MIS. Эти задачи включают скрипты для очистки устаревших данных из ПБД.

Чистка ПБД

При установке адаптера в SQL Server Agent создаются задачи (jobs), которые позволяют автоматически выполнять очистку промежуточной базы данных.

Основные особенности:

  • По умолчанию задачи создаются выключенными. Для запуска очистки их необходимо включить вручную.
  • Шаги 2 и 3 задач создаются выключенными. После настройки первого шага требуется установить логику, чтобы при успешном выполнении первого шага происходил переход ко второму.
  • Если задача с таким именем уже существует, при установке адаптера пропускается её создание.

Am 063.png Начиная с 29.11.2024, если на вашем сервере есть старые задачи по очистке ПБД, необходимо удалить их перед обновлением плагина (разовая операция). Это позволит адаптеру автоматически создать новые задачи с актуальными параметрами.

Создаваемые задачи:

  • Название ПБД_CleanPrices
  • Название ПБД_CleanQuotas

CleanPrices

Задача включает три процедуры, предназначенные для удаления устаревших цен и акций:
Ag 208.png

  • [CleanPrices] – удаляет устаревшие цены и акции на основе заданного параметра @days. Очистка осуществляется по датам:
    • дата действия "по";
    • дата продажи "по";
    • дата заезда "по".

Если хотя бы одна из дат выходит за указанный интервал, данные удаляются.

  • [CleanDeletedPrices] – удаляет данные, которые были удалены во внешней системе, но остались в ПБД.
  • [CleanNotMappedHotelPrices] – удаляет данные по несинхронизированным справочникам.

CleanQuotas

Задача предназначена для очистки устаревших квот и стопов. Она включает следующие процедуры:
Ag 198.png


  • [CleanQuotas] – удаляет квоты с истекшими сроками действия.
  • [CleanDeletedQuotas] – удаляет квоты, удаленные во внешней системе, но сохранившиеся в ПБД.
  • [CleanNotMappedHotelQuotas] – удаляет данные, связанные с несинхронизированными гостиницами.

Настройка задач

После установки адаптера задачи создаются в выключенном состоянии. Для настройки выполните следующее:

  1. Откройте SQL Server Agent и перейдите к нужной задаче (ПБД_CleanPrices или ПБД_CleanQuotas).
  2. Включите задачу (откройте её свойства и активируйте чекбокс «Включено» у самой задачи).
  3. Убедитесь, что указана правильная промежуточная база данных в каждом шаге.
  4. Установите значение @days — количество дней, за которые сохраняются данные (вводится в тексте команды шага).
  5. Отредактируйте логику переходов между шагами (в свойствах шага, вкладка Дополнительно):
    1. Первый шаг: при успешном выполнении переход ко второму шагу.
    2. Второй шаг: при успешном выполнении переход к третьему шагу.
    3. Третий шаг: при успешном выполнении — Завершить задачу с успешным результатом.

редактирование значения @days

редактирование шагов в задаче

CleanPrices: подробные настройки шагов

Задача запускает три процедуры очистки цен и акций. Для каждого шага задайте параметры, как указано ниже.

Шаг 1. Очистка устаревших цен и акций
  • Общие:
    • Имя шага: CleanPrices
    • Тип: Transact-SQL script (T-SQL)
    • База данных: (ваша ПБД)
    • Команда (пример): EXEC [CleanMISAdapterPrices] @days=365; Замените 365 на требуемое значение хранения в днях.
  • Дополнительно:
    • При успехе: Перейти к следующему шагу
    • При ошибке: Завершить задачу с ошибкой
    • Повторы (необязательно): Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин
Шаг 2. Удаление помеченных как удалённые цен
  • Общие:
    • Имя шага: CleanDeletedPrices
    • Тип: Transact-SQL script (T-SQL)
    • База данных: (ваша ПБД)
    • Команда: EXEC [CleanMISAdapterDeletedPrices] @days=365; Замените 365 на требуемое значение хранения в днях.
  • Дополнительно:
    • При успехе: Перейти к следующему шагу
    • При ошибке: Завершить задачу с ошибкой
    • Повторы (необязательно): Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин
Шаг 3. Очистка данных по несинхронизированным справочникам
  • Общие:
    • Имя шага: CleanNotMappedHotelPrices
    • Тип: Transact-SQL script (T-SQL)
    • База данных: (ваша ПБД)
    • Команда: EXEC [CleanMISAdapterNotMappedHotelPrices] @days=365, @mtDatabaseName = , @serverName = ; Замените 365 на требуемое значение хранения в днях. Укажите в mtDatabaseName БД Мастер-тур. Укажите в serverName имя сервера где хранится БД Мастер-тур и ПБТ
  • Дополнительно:
    • При успехе: Завершить задачу с успешным результатом
    • При ошибке: Завершить задачу с ошибкой
    • Повторы (необязательно): Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин

CleanQuotas: подробные настройки шагов

Задача запускает три процедуры очистки квот и стопов. Настройте шаги аналогично.

Шаг 1. Очистка устаревших квот/стопов
  • Общие:
    • Имя шага: CleanQuotas
    • Тип: Transact-SQL script (T-SQL)
    • База данных: (ваша ПБД)
    • Команда (пример): EXEC [CleanMISAdapterQuotas] @days=365; Замените 365 на требуемое значение хранения в днях.
  • Дополнительно:
    • При успехе: Перейти к следующему шагу
    • При ошибке: Завершить задачу с ошибкой
    • Повторы (необязательно): Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин
Шаг 2. Удаление квот, удалённых во внешней системе
  • Общие:
    • Имя шага: CleanDeletedQuotas
    • Тип: Transact-SQL script (T-SQL)
    • База данных: (ваша ПБД)
    • Команда: EXEC [CleanMISAdapterDeletedQuotas] @days=365 ; Замените 365 на требуемое значение хранения в днях.
  • Дополнительно:
    • При успехе: Перейти к следующему шагу
    • При ошибке: Завершить задачу с ошибкой
    • Повторы (необязательно): Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин
Шаг 3. Очистка данных, связанные с несинхронизированными гостиницами.
  • Общие:
    • Имя шага: CleanNotMappedHotelQuotas
    • Тип: Transact-SQL script (T-SQL)
    • База данных: (ваша БД Мастер-Тур)
    • Команда:EXEC [CleanMISAdapterNotMappedHotelQuotas] @days=365, @mtDatabaseName = , @serverName = ; Замените 365 на требуемое значение хранения в днях. Укажите в mtDatabaseName БД Мастер-тур. Укажите в serverName имя сервера где хранится БД Мастер-тур и ПБТ
  • Дополнительно:
    • При успехе: Завершить задачу с успешным результатом
    • При ошибке: Завершить задачу с ошибкой
    • Повторы (необязательно): Повторные попытки: 0–3; Интервал повтора (в минутах): 1–5 мин