Создание и использование моделей отчетов на основе Teradata

Модели отчета на основе базы данных Teradata версии 12.00 или версии 6.20 можно создавать в конструкторе моделей, в диспетчере отчетов или в Microsoft Office SharePoint Server 2007 или SharePoint Server 2010

в режиме интеграции с SharePoint.

ПримечаниеПримечание

Прежде чем подключиться к источнику данных Teradata, системный администратор должен установить верную версию поставщика данных .NET для Teradata на клиенте разработки отчетов и на сервере отчетов. Дополнительные сведения см. в разделе Подключения к данными, источники данных и строки подключения (SSRS).

Строки соединения

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

Database=<data base>;Data Source=<IP address>;userid=<user name>;password=<password>

Важное примечаниеВажно!

При создании представления источников данных для модели Teradata рекомендуется указывать схему. В противном случае будут получены все схемы, к которым имеет доступ источник данных.

Поддерживаемые версии

Для создания модели необходимо пользоваться версией поставщика данных .NET Framework, которая соответствует используемой версии базы данных Teradata. Этот компонент предоставляется компанией Teradata. Системный администратор должен убедиться в правильности установленных версий на клиенте конструктора отчетов и на сервере отчетов. Дополнительные сведения см. в разделе Источники данных, поддерживаемые службами Reporting Services (SSRS).

Функциональные ограничения

Из-за особенностей внутреннего устройства базы данных Teradata процесс создания модели на ее основе имеет ряд отличий от процесса создания модели на основе источников данных других типов. Эти отличия приведены ниже.

  • Первичные ключи. Мастер представлений источников данных не находит первичные ключи в базе данных Teradata. Первичные ключи необходимы для создания модели отчета. Определить логические первичные ключи, которые могут быть использованы для создания модели, можно через меню представления источника данных в проекте модели отчета в среде Business Intelligence Development Studio. Дополнительные сведения см. в разделе Как создавать первичные ключи для моделей отчетов на основе Teradata (службы Reporting Services);

    Если существует слишком много объектов и таблиц, для которых логические ключи нужно определять вручную, то модель с преставлением источника данных можно создать на сервере отчетов. Модель, созданная на сервере отчетов, включает представление источника данных, который содержит первичные ключи. После этого ее можно загрузить на клиент конструктора отчетов и импортировать в проект модели отчета. После добавления модели в качестве существующего элемента в папке «Представления источников данных» отобразится представление источника данных.

  • Транслятор запросов языка определения семантических моделей (SMDL). Транслятор запросов SMDL имеет некоторые особенности поведения при использовании с базой данных Teradata. Это может привести к небольшим отличиям функциональных возможностей и параметров конфигурации, которые необходимы для реализации обходных путей при решении проблем и ограничений разработки в базе данных-получателе.

Эти особенности описаны в следующих разделах.

Типы данных

SMDL поддерживает только следующие типы данных Teradata.

Тип SMDL

Тип Teradata

String

CHAR, CHARACTER, CHAR VARYING, CHARACTER VARYING, CHARACTER LARGE OBJECT, CLOB, GRAPHIC, INTERVAL DAY, INTERVAL DAY TO HOUR, INTERVAL DAY TO MINUTE, INTERVAL DAY TO SECOND, INTERVAL HOUR, INTERVAL HOUR TO MINUTE, INTERVAL HOUR TO SECOND, INTERVAL MINUTE, INTERVAL MINUTE TO SECOND, INTERVAL MONTH, INTERVAL SECOND, INTERVAL YEAR, INTERVAL YEAR TO MONTH, LONG VARCHAR, LONG VARGRAPHIC, VARCHAR, VARGRAPHIC

Int16

SMALLINT

Int32

INT, INTEGER

Int64

BIGINT

Decimal

DEC, DECIMAL, NUMERIC

Double

DOUBLE PRECISION, FLOAT, REAL

Binary

BINARY LARGE OBJECT, BLOB, VARBYTE

Byte

BYTE

SByte

BYTEINT

Дата

DATE

Время

TIME

DateTime

TIMESTAMP

Для источника данных Teradata язык определения семантических моделей не поддерживает типы данных, которые не перечислены выше. В том числе не поддерживаются следующие типы:

  • TIME WITH TIME ZONE

  • TIMESTAMP WITH TIME ZONE

  • Некоторые определяемые пользователем типы данных

  • Тип DECIMAL с точностью до 29 цифр, который не может быть представлен в типе данных CLR Decimal. Например, поле источника данных может иметь точность до 38 цифр. В зависимости от точности и масштаба данных их получение во время выполнения может вызвать исключение в поставщике данных. Дополнительные сведения см. в документации по версии поставщика данных Teradata .NET Framework, установленной на клиенте конструктора отчетов и на сервере отчетов.

При использовании диспетчера отчетов или программы SharePoint для автоформирования модели отчета надо исключить столбцы, содержащие неподдерживаемые типы данных. Кроме того, если неподдерживаемый тип данных является частью первичного ключа, то не будет создана вся сущность.

При создании модели отчета с помощью конструктора моделей в модель отчета добавляются все типы данных. Таким образом, при уточнении модели необходимо вручную отфильтровать все неподдерживаемые типы данных, перечисленные выше.

Функции

Работа некоторых функций может зависеть от базы данных. Если в качестве аргумента длины для функций Left, Right и Substring указано значение меньше нуля, то в SMQL результат не будет определен.

Значения по умолчанию

В Teradata используются следующие значения по умолчанию.

Строковые литералы с символами из кодировки Юникод.

Тип данных Date поддерживает год, месяц и число, а также включает время в часах, минутах и секундах.

Параметры конфигурации

Для разных базовых источников данных доступно множество параметров конфигурации, влияющих на работу транслятора запросов в зависимости от их специфики и окружения. Следующие параметры определены в файле RSReportServer.config, который по умолчанию находится в каталоге <системный_диск>:\Program Files\Microsoft SQL Server\MRRS10.MSSQLSERVER\Reporting Services\ReportServer\.

Название

Тип

Определение по умолчанию

Описание

EnableMath

OpCasting

Boolean

False

Этот параметр включает приведение результата выполнения математических операций к десятичному формату Microsoft .NET Framework.

Некоторые математические операции в запросах могут вернуть десятичное значение, сочетание точности и масштаба которого не могут быть представлены типом данных decimal .NET Framework. Хотя результат вычисления может быть явным образом приведен к типу decimal, вряд ли пользователи узнают, что это необходимо делать во время разработки. Если явное приведение приходится делать слишком часто, этот параметр можно установить в значение True, чтобы оно производилось автоматически.