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

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

Текущая версия на 18:38, 29 ноября 2024

Введение

В процессе работы с промежуточной базой данных (ПБД) важно периодически очищать устаревшие данные, чтобы поддерживать актуальность и уменьшать объем хранимой информации. Очистка данных осуществляется с помощью задач (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 и перейдите к нужной задаче.
  2. Включите задачу (для этого активируйте чекбокс «включено» на задаче).
  3. Установите значение @days, задающее количество дней, за которые сохраняются данные (для этого необходимо перейти в свойства шага задания).
  4. Отредактируйте шаги задачи (для этого необходимо в свойствах шага задания перейти в «дополнительно»):
    1. Настройте первый шаг так, чтобы при успешном выполнении он переходил ко второму шагу.
    2. Настройте второй шаг так, чтобы при успешном выполнении он переходил ко третьему шагу.
  5. Убедитесь, что указана правильная база данных Мастер-Тур.

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

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