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

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

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