Поделиться через


Поддерживаемые функции отчетов Access (службы SSRS)

При импорте отчета в конструктор отчетов процесс импорта преобразует отчет Microsoft Access в файл Reporting Services языка определения отчетов (RDL). Reporting Services поддерживает несколько функций Access, однако из-за различий между Access и Reporting Services некоторые элементы изменяются незначительно или не поддерживаются. В этом разделе описано преобразование функций отчетов Access в функции на языке определения отчетов.

Импорт отчетов Access

Некоторые запросы содержат специальный код Access. Этот код не импортируется вместе с отчетом. Кроме того, если запрос содержит внедренные строки, то отчет может импортироваться неправильно. В этом случае необходимо заменить строки кодами символов. Например, запятую (,) нужно заменить на «CHAR(34)».

Процесс импорта неправильно передает точку с запятой (;) или символы разметки XML (<, >и т. д.) в сведениях о строке подключения. Если строка соединения содержит такой символ, то необходимо вручную задать пароль в новом отчете после импорта.

Параметры соединения и общего времени ожидания в строке соединения не импортируются. Эти параметры можно настроить после импорта отчета.

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

Макет страницы

Макет страницы в Access отличается от макета в Reporting Services. Access упорядочивает элементы на странице, используя «полосы», то есть разделы на странице располагаются вертикально. Эти разделы могут включать заголовок отчета, нижний колонтитул отчета, верхний и нижний колонтитулы страницы, группы и подробные сведения. Reporting Services обеспечивает более гибкий макет. Области данных предоставляют возможности группирования и отображения подробных сведений; многочисленные области данных можно размещать в любых местах текста отчета, в том числе и рядом друг с другом. Reporting Services также включает "чередующийся" верхний и нижний колонтитулы страницы, аналогичные верхним и нижним колонтитулам страницы в Access.

При импорте отчета из Access в конструктор отчетов верхний и нижний колонтитулы из отчета Access преобразуются в колонтитулы Reporting Services страницы отчета. Группы и подробности преобразуются в списочную область данных. Верхний и нижний колонтитулы помещаются в текст отчета, а не в отдельные полосы. Это приводит к тому, что расположение элементов немного отличается от макета отчета Access.

Примечание

В некоторых отчетах Access элементы отчета, которые на первый взгляд располагаются рядом, могут в действительности перекрываться. Если импорт отчета выполнялся с помощью конструктора отчетов, это перекрытие не корректируется и может привести к непредвиденным результатам при запуске отчета.

обозревателе решений

Reporting Services поддерживает источники данных OLE DB, например SQL Server. При импорте отчета из файла проекта Access (ADP) строка подключения для источника данных извлекается из этого файла. При импорте отчета из файла базы данных Access (MDB или ACCDB) строка соединения может указывать на базу данных Access. В этом случае ее придется изменить после импорта. Если источником данных отчета Access является запрос, то данные запроса импортируются в RDL-файл без изменений. Если источником данных отчета Access является таблица, то в процессе преобразования запрос создается на основе имени и полей таблицы.

Отчеты с пользовательскими модулями

Если в модулях содержится пользовательский код Microsoft Visual Basic, он не преобразуется. Если конструктор отчетов обнаруживает код во время импорта, в окне Список задач создается предупреждение.

Элементы управления отчетом

Reporting Services поддерживает следующие элементы управления доступом и включает их в преобразованные определения отчетов.

Изображение Метка график; Прямоугольник
SubForm SubReport

Примечание В то время как элемент управления SubReport преобразуется в отчете main, сам вложенный отчет преобразуется отдельно.
TextBox

Reporting Services не поддерживает следующие элементы управления:

BoundObjectFrame CheckBox ComboBox CommandButton
CustomControl ListBox ObjectFrame OptionButton
TabControl ToggleButton

Если конструктор отчетов обнаруживает какой-либо из этих элементов управления в процессе импорта, в окне Список задач создается предупреждение.

Такие элементы управления, как ActiveX и веб-компоненты Office, не импортируются. Например, если отчет Access содержит элемент управления «Диаграмма веб-компонентов Office», то этот элемент не будет преобразован при импорте.

Свойства отчета

Reporting Services поддерживает следующие свойства, доступные через пользовательский интерфейс Access. Свойства, доступные только в коде, не поддерживаются и не перечисляются ниже.

BackColor BackStyle BorderColor BorderStyle
BorderWidth BottomMargin CanGrow (текстовое поле) CanShrink (текстовое поле)
Caption FontBold FontItalic FontName
FontSize FontUnderline FontWeight ForceNewPage
ForeColor Высота HideDuplicates Гиперссылка
IsHyperlink IsVisible KeepTogether (группа) Левый
LeftMargin LineSlant LineSpacing LinkChildFields
LinkMasterFields NewRowOrCol PageFooter PageHeader
Страницы Picture PictureTiling (отчет) ReadingOrder
RepeatSection RightMargin RunningSum SizeMode
TextAlign TOP TopMargin Ширина

Reporting Services не поддерживает следующие свойства, доступные через пользовательский интерфейс Access.

CanGrow (раздел) CanShrink (раздел) DecimalPlaces FastLaserPrinting
Фильтр FilterOn Формат FormatConditions
GrpKeepTogether KeepTogether (раздел) NumeralShapes Ориентация
PaintPalette PaletteSource PictureAlignment PicturePages
PictureSizeMode PictureTiling (изображение) ScrollBars SpecialEffect
Vertical

Группирование

В Access уровень групп определяется сочетанием трех свойств: выражением группы, свойством GroupOn и свойством GroupInterval. Группа, у которой отсутствуют верхний и нижний колонтитулы, объединяется с группой, которую она содержит. Если группа не содержит других групп, то сортировка применяется ко всему разделу и группа удаляется.

Выражения

С помощью выражений в Access задаются значения, отображаемые в текстовых полях. В дополнение к некоторым агрегатным функциям в access используется Visual Basic в качестве языка выражений. Конструктор отчетов преобразует эти выражения Access в выражения отчета.

Функции

В определении отчета Reporting Services используется Visual Basic .NET в качестве собственного языка выражений, а в Access 2002 — Visual Basic. В следующих списках описаны функции, поддерживаемые Reporting Services.

Функции массивов

Reporting Services поддерживает следующие функции массива:

  • LBound

  • UBound

Функции преобразования

Reporting Services поддерживает следующие функции преобразования.

Asc CBool CByte CCur
CDate CDbl CDec Chr
Chr$ CInt CLng CSng
CStr CVar CVDate Формат
FormatCurrency FormatDateTime FormatNumber FormatPercent
Hex Hex$ Nz Окт
Oct$ Str Str$ StrConv
Val

Reporting Services не поддерживает следующие функции преобразования:

  • GUIDFromString

  • StringFromGUID

Функции базы данных

Reporting Services поддерживает следующие функции базы данных.

CreateReport GetObject HyperlinkPart Секция

Reporting Services не поддерживает следующие функции базы данных.

CodeDb CreateControl CreateForm CreateGroupLevel
CreateObject CreateReportControl CurrentDb CurrentUser
DeleteControl DeleteReportControl Eval IMEStatus
SysCmd

Функции даты/времени

Reporting Services поддерживает следующие функции даты и времени.

Дата Date$ DateAdd DateDiff
DatePart DateSerial DateValue День
Hour Минута Месяц MonthName
Сейчас Второе Time Time$
Таймер TimeSerial TimeValue День недели
WeekdayName Год

Функции DDE/OLE

Reporting Services не поддерживает следующие функции DDE/OLE.

DDE DDEIntitate DDERequest DDESend
LoadPicture

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

Reporting Services не поддерживает следующие агрегатные функции предметной области.

DAvg DCount DFirst DLast
DLookup DMax DMin DStDev
DStDevP DSum DVar DVarP

Функции обработки ошибок

Reporting Services поддерживает следующие функции обработки ошибок.

Err Ошибка Error$ IsError

Reporting Services не поддерживает следующую функцию обработки ошибок:

  • CVErr

Финансовые функции

Reporting Services поддерживает следующие финансовые функции.

DDB FV IPmt IRR
MIRR NPer NPV Pmt
PPmt PV Тариф SLN
SYD

Функции взаимодействия

Reporting Services поддерживает следующие функции взаимодействия.

Get-Help Command$ CurDir CurDir$
DeleteSetting Dir Dir$ Environ
Environ$ EOF FileAttr FileDateTime
FileLen FreeFile GetAllSettings GetAttr
GetSetting Loc LOF QBColor
RGB SaveSetting Seek SetAttr
Оболочка Spc Вкладка

Reporting Services не поддерживает следующие функции взаимодействия.

DoEvents В Входные данные Input$

Функции проверки

Reporting Services поддерживает следующие функции проверки.

IsArray IsDate IsEmpty IsError
IsNull IsNumeric IsObject TypeName
VarType

Reporting Services не поддерживает следующую функцию проверки:

  • IsMissing

Математические функции

Reporting Services поддерживает следующие математические функции.

Abs Atn Cos Exp
Исправление Int Журнал Rnd
Round Sgn Синус Sqr
Tan

Функции сообщений

Reporting Services не поддерживает следующие функции сообщений.

InputBox InputBox$ MsgBox

Функции управления потоком выполнения программы

Reporting Services поддерживает следующие функции потока программ.

Нажмите кнопку IIf Коммутатор

Агрегатные функции SQL

Reporting Services поддерживает следующие агрегатные функции SQL.

Avg Count Max Min
StDev StDevP SUM Var
VarP

Текстовые функции

Reporting Services поддерживает следующие текстовые функции.

Формат Format$ InStr InStrRev
LCase LCase$ Левый Left$
Len LTrim LTrim$ Mid
Mid$ Заменить Правый Right$
RTrim Пробел Space$ StrComp
StrConv Строка String$ StrReverse
Trim Trim$ UCase UCase$

Константы

Access не поддерживает специальные константы Visual Basic (например, vbTrue) в выражениях, поэтому преобразование не требуется. Однако есть одно исключение: ключевое слово Null преобразуется в System.DbNull.Value.

Параметры

При импорте конструктор отчетов просматривает каждое выражение отчета на наличие переменных, которые не соответствуют именам полей и элементам управления. Эти переменные добавляются к параметрам отчета.

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

Имена объектов

Access позволяет полям иметь то же имя, что и элементы управления; Reporting Services нет. Visual Basic 6.0 разрешает пробелы в именах переменных; Visual Basic .NET не поддерживает. При импорте имена таких объектов заменяются допустимыми именами, а объектам с одинаковыми именами присваиваются уникальные имена. Просматриваются все выражения, и имена переменных, соответствующих переименованным объектам, заменяются новыми именами.

Прямоугольники и включение

В определении отчета Reporting Services прямоугольники могут содержать другие элементы отчета. Любой прямоугольник, превышающий размеры элемента отчета и перекрывающий более 90% его поверхности, становится контейнером этого элемента.

Растровые изображения

Все битовые карты, внедренные в отчет, преобразуются при импорте в формат BMP, независимо от первоначального формата. Например, если отчет содержит файлы в формате JPG или GIF, то ресурсы, импортированные вместе с отчетом, будут преобразованы в BMP-файлы. Битовые карты хранятся в отчете в виде внедренных изображений. Сведения о внедренных образах см. в разделе Образы (Report Builder и службы SSRS).

Другие вопросы

Дополнительно к приведенным выше сведениям при импорте отчетов Access необходимо учитывать следующие замечания.

  • Условное форматирование не преобразуется.

  • Поле описания в свойствах отчета Access не преобразуется.