Программируемость

Вместо того, чтобы использовать для управления основными данными только диспетчер, можно воспользоваться автоматизацией и внедрить ряд действий в отдельное приложение. К счастью, MDS — это не только готовое приложение, но и платформа разработки, которую можно использовать для интеграции функций управления основными данными в существующие бизнес-процессы.

Совет Пример кода с созданием модели и добавлением сущностей см. в статье одного из разработчиков MDS «Creating Entities using the MDS WCF API» (Создание сущностей с помощью MDS WCF API) по адресу http://sqlblog.com/blogs/mds_team/archive/2010/01/29/creating-entities-using-the-mds-wcf-api.aspx.

Библиотека классов

MDS API позволяет произвольным образом настроить все необходимые действия по созданию, заполнению, поддержанию, управлению и обеспечению безопасности в моделях основных данных и сопутствующих данных. Чтобы создать собственное решение для управляющих, можно использовать следующие пространства имен:

  • Microsoft.MasterDataServices.Services Содержит класс, поставляющий экземпляры класса MdsServiceHost, и класс с API для операций над бизнес-правилами.
  • Microsoft.MasterDataServices.Services.DataContracts Содержит классы, представляющие модели и объекты моделей.
  • Microsoft.MasterDataServices.Services.MessageContracts Содержит классы, представляющие запросы и ответы в операциях MDS.
  • Microsoft.MasterDataServices.Services.ServiceContracts Содержит интерфейс, определяющий контракт службы для операций MDS, основанный на WCF и предназначенный для работы с бизнес-правилами, основными данными, метаданными и безопасностью.

Примечание Дополнительные сведения о библиотеках классов MDS см. в справке SQL Server 2008 R2 по адресу https://msdn.microsoft.com/ru-ru/library/ee638492(SQL.105).aspx.

Веб-служба Master Data Services

В состав MDS входит API веб-служб, позволяющий создавать дополнительные приложения, интегрирующие MDS в структуру приложений и процессов организации. API предоставляет доступ к определениям моделей основных данных, а также к самим данным. Например, с помощью API можно целиком отказаться от использования диспетчера основных данных.

Совет Пример кода с использованием этой веб-службы в клиентском приложении см. в следующей статье одного из разработчиков MDS: «Getting Started with the Web Services API in SQL Server 2008 R2 Master Data Services» (Начало работы с API веб-служб MDS в SQL Server 2008 R2) по адресу http://sqlblog.com/blogs/mds_team/archive/2010/01/12/getting-started-with-the-web-services-api-in-sql-server-2008-r2-master-data-services.aspx.

Функции сопоставления

В MDS также есть ряд новых функций Transact-SQL, которые можно использовать для сопоставления и очистки данных из различных систем перед загрузкой в подготовительные таблицы:

Mdq.NGrams Выдает поток токенов (n-грамм) длины n для использования при сравнении строк для поиска приблизительно совпадающих строк.

  • Mdq.RegexExtract Ищет совпадения по регулярному выражению.
  • Mdq.RegexIsMatch Указывает, есть ли совпадение с регулярным выражением.
  • Mdq.RegexIsValid Указывает, допустимо ли регулярное выражение.
  • Mdq.RegexMask Преобразует набор параметров регулярного выражения в двоичное значение.
  • Mdq.RegexMatches Ищет все совпадения с регулярным выражением во входной строке.
  • Mdq.RegexReplace Заменяет все совпадения с регулярным выражением во входной строке на другую строку.
  • Mdq.RegexSplit Преобразует входную строку в массив строк, деля ее по позициям совпадений с регулярным выражением во входной строке.
  • Mdq.Similarity Возвращает индекс сходства строк, построенный по заданному алгоритму сопоставления.
  • Mdq.SimilarityDate Возвращает индекс сходства двух дат.
  • Mdq.Split Преобразует входную строку в массив строк, деля ее по указанным символам-разделителям.

Примечание Дополнительные сведения о функциях MDS см. в статье «Функции служб Master Data Services (Transact-SQL)» в справке SQL Server 2008 R2 по адресу https://msdn.microsoft.com/ru-ru/library/ee633712(SQL.105).aspx.