サポートされる Access レポート機能 (SSRS)
レポート デザイナーにレポートをインポートすると、インポート プロセスによって Microsoft Access レポートが Reporting Services レポート定義言語 (RDL) ファイルに変換されます。 Reporting Servicesでは Access のいくつかの機能がサポートされていますが、Access とReporting Servicesの違いにより、一部の項目が少し変更されるか、サポートされていません。 このトピックでは、Access のレポート機能を RDL に変換する方法を説明します。
Access レポートのインポート
一部のクエリには、Access 固有のコードが含まれています。 Access のコードがレポートと一緒にインポートされることはありません。 また、クエリに埋め込み文字列が含まれている場合、レポートは正しくインポートされません。 これを修正するには、文字列を文字コードに置き換えます。 たとえば、コンマ (,) 文字を CHAR(34) に置き換えます。
インポート プロセスでセミコロンが正しく渡されない (;)接続文字列情報の XML マークアップ文字 (<、 >、など)。 接続文字列にセミコロンや XML マークアップ文字が含まれている場合は、レポートのインポート後に、新しいレポートでパスワードを手動で設定する必要があります。
インポート処理では、接続文字列に含まれる接続設定や全般的なタイムアウト設定がインポートされません。 レポートをインポートした後、これらの設定の調整が必要になる場合があります。
インポートするレポートにクエリ パラメーターを含むクエリがある場合、このクエリはレポートのインポート時に変換されません。 レポートと一緒にクエリをインポートするには、Access レポート内のクエリ パラメーターをハードコードされた値に一時的に置き換え、レポートのインポート後にこれらのハードコード値をクエリ パラメーターに置き換えます。
ページ レイアウト
Access のページ レイアウトは、Reporting Servicesとは異なります。 Access では、"集合" 単位でアイテムがページ上に配置されます。つまり、各セクションはページ上に縦方向に並べて配置されます。 このようなセクションには、レポート ヘッダー、レポート フッター、ページ ヘッダー、ページ フッター、グループ、詳細などがあります。 Reporting Servicesは、より柔軟なレイアウトを提供します。 データ領域では、グループ化と詳細を利用でき、レポート本文の希望する箇所に複数のデータ領域を配置することができます。横に並べて配置することもできます。 Reporting Servicesには、Access のページ ヘッダーとフッターと同様に、"縞模様" のページ ヘッダーとフッターも含まれています。
Access から レポート デザイナー にレポートをインポートすると、Access レポートのページ ヘッダーとフッターは、Reporting Services レポート ページヘッダーとフッターに変換されます。 グループと詳細は、一覧データ領域に変換されます。 レポート ヘッダーとレポート フッターは、個別の集合ではなく、レポート本文に配置されます。 このため、項目の配置が Access レポートの配置とは若干異なる可能性があります。
注意
一部の Access レポートでは、上下または左右に並べて配置されるようなレポート アイテムが実際には重なり合っていることがあります。 レポート デザイナーを使用してレポートをインポートすると、この重なりは修正されません。そのため、レポートの実行時に予期しない結果が発生する場合があります。
ソリューション エクスプローラー
Reporting Servicesでは、SQL Serverなどの OLE DB データ ソースがサポートされます。 Access プロジェクト (.adp) ファイルからレポートをインポートする場合は、データ ソースの接続文字列は、.adp ファイルの接続文字列から取得されます。 Access データベース (.mdb または .accdb) ファイルからレポートをインポートする場合は、データ ソースの接続文字列が Access データベースを指していることがあるため、レポートのインポート後に修正が必要になる可能性があります。 Access レポートのデータ ソースがクエリである場合は、クエリ情報は変更されることなく RDL に保存されます。 Access レポートのデータ ソースがテーブルである場合は、変換処理の際、テーブル名およびテーブル内のフィールドを基にクエリが作成されます。
カスタム モジュールを含むレポート
モジュール内にカスタムの Microsoft Visual Basic コードが含まれている場合、変換されません。 インポート処理中レポート デザイナーコードが検出されると、警告が生成され、[タスク一覧] ウィンドウに表示されます。
レポート コントロール
Reporting Servicesでは、次のアクセス制御がサポートされ、変換されたレポート定義に含まれます。
Image | ラベル | Line | Rectangle |
サブフォーム | サブレポート メモSubReport コントロールはメイン レポート内で変換されますが、サブレポート自体は個別に変換されます。 |
TextBox |
Reporting Servicesでは、次のコントロールはサポートされていません。
連結オブジェクト フレーム | CheckBox | ComboBox | コマンド ボタン |
カスタム コントロール | ListBox | オブジェクト フレーム | OptionButton |
TabControl | ToggleButton |
レポート デザイナーインポート処理中にこれらのコントロールのいずれかが検出されると、警告が生成され、[タスク 一覧] ウィンドウに表示されます。
ActiveX や Office Web コンポーネントなどのその他のコントロールは、インポートされません。 たとえば、Access レポートに OWC Chart コントロールが含まれていても、インポート時に変換されません。
レポート プロパティ
Reporting Servicesでは、Access ユーザー インターフェイスで使用できる次のプロパティがサポートされています。 コード内でしか利用できないプロパティは、サポートされません。また、そのようなプロパティは、次の一覧には含まれていません。
BackColor | 背景スタイル | 境界線色 | BorderStyle |
境界線幅 | 下余白 | 印刷時拡張 (テキスト ボックス) | 印刷時縮小 (テキスト ボックス) |
Caption | フォント太字 | フォント斜体 | FontName |
フォントサイズ | フォント下線 | フォント太さ | 改ページ |
前景色 | Height | 重複データ非表示 | ハイパーリンク |
ハイパーリンクあり | 可視 | 同一ページ印刷 (グループ) | Left |
左余白 | 線傾斜 | LineSpacing | リンク子フィールド |
リンク親フィールド | 改段 | ページフッター | ページヘッダー |
ページ | Picture | ピクチャ全体表示 (レポート) | 読みの順序 |
セクション繰り返し | 右余白 | 集計実行 | OLE サイズ |
TextAlign | 上 | 上余白 | Width |
Reporting Servicesでは、Access ユーザー インターフェイスから使用できる次のプロパティはサポートされていません。
印刷時拡張 (セクション) | 印刷時縮小 (セクション) | 小数点以下表示桁数 | 高速レーザー印刷 |
Assert | フィルター適用 | Format | 書式条件 |
同一ページ印刷グループ | 同一ページ印刷 (セクション) | 数字の形態 | Orientation |
ペイント パレット | パレット元 | ピクチャ配置 | ピクチャ表示ページ |
ピクチャサイズ | ピクチャ全体表示 (イメージ) | スクロールバー | 立体表示 |
Vertical |
グループ化
Access では、グループ式、GroupOn
プロパティ、および GroupInterval
プロパティの 3 つのプロパティを組み合わせてグループ レベルを定義します。 グループ ヘッダーまたはグループ フッターのないグループは、このグループに含まれているグループに結合されます。 グループに他のグループが含まれていない場合は、詳細セクションに並べ替えが適用され、このグループは削除されます。
式
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 | Format |
FormatCurrency | FormatDateTime | FormatNumber | FormatPercent |
Hex | Hex$ | Nz | Oct |
Oct$ | Str | Str$ | StrConv |
Val |
Reporting Servicesでは、次の変換関数はサポートされていません。
GUIDFromString
StringFromGUID
データベース関数
Reporting Servicesでは、次のデータベース関数がサポートされています。
CreateReport | GetObject | HyperlinkPart | Partition |
Reporting Servicesでは、次のデータベース関数はサポートされていません。
CodeDb | CreateControl | CreateForm | CreateGroupLevel |
CreateObject | CreateReportControl | CurrentDb | CurrentUser |
DeleteControl | DeleteReportControl | Eval | IMEStatus |
SysCmd |
日付/時刻関数
Reporting Servicesでは、次の日付/時刻関数がサポートされています。
Date | Date$ | DateAdd | DateDiff |
DatePart | DateSerial | DateValue | 日間 |
Hour | 分 | Month | MonthName |
Now | Second | Time | Time$ |
Timer | TimeSerial | TimeValue | 平日 |
WeekdayName | Year |
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では、次の相互作用関数がサポートされています。
コマンド | Command$ | CurDir | CurDir$ |
DeleteSetting | Dir | Dir$ | Environ |
Environ$ | EOF | FileAttr | FileDateTime |
Filelen | FreeFile | GetAllSettings | Getattr |
GetSetting | Loc | Lof | QBColor |
RGB | SaveSetting | Seek | SetAttr |
Shell | 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 | Sin | Sqr |
Tan |
メッセージ関数
Reporting Servicesでは、次のメッセージ関数はサポートされていません。
InputBox | InputBox$ | MsgBox |
プログラム フロー関数
Reporting Servicesでは、次のプログラム フロー関数がサポートされています。
Choose | IIf | Switch |
SQL 集計関数
Reporting Servicesでは、次の SQL 集計関数がサポートされています。
Avg | Count | Max | Min |
StDev | StDevP | SUM | Var |
VarP |
文字列関数
Reporting Servicesでは、次のテキスト関数がサポートされています。
フォーマット | Format$ | InStr | InStrRev |
LCase | LCase$ | Left | Left$ |
Len | LTrim | LTrim$ | Mid |
Mid$ | Replace | Right | Right$ |
RTrim | Space | Space$ | StrComp |
StrConv | String | String$ | StrReverse |
Trim | Trim$ | UCase | UCase$ |
定数
Access では、式の特殊な Visual Basic 定数 (例: vbTrue
) はサポートされていないため、変換は必要ありません。 ただし、例外が 1 つだけあります。キーワード Null
は、System.DbNull.Value
に変換されます。
パラメーター
インポート処理中、レポート デザイナーによって、フィールド名またはコントロールに対応していない変数がないかどうか、レポート内の各式がスキャンされます。 これらの変数は、レポートのパラメーターに追加されます。
ストアド プロシージャのデータ型は、常に string としてインポートされます。 レポートのインポート後、パラメーターを手動で変更して、正しいデータ型が使用されるようにする必要があります。
オブジェクト名
Access では、フィールドにコントロールと同じ名前を付けることができます。Reporting Servicesは行いません。 Visual Basic 6.0 では変数名にスペースを使用できます。Visual Basic .NET では実行されません。 このようなオブジェクト名はすべて、インポート処理の際、有効な名前に置き換えられ、複数のオブジェクトが同じ名前の場合は一意の名前が割り当てられます。 各式はスキャンされ、名前が変更されたオブジェクトに対応する変数の名前は、新しい名前に置き換えられます。
四角形とその内容
Reporting Servicesレポート定義では、四角形に他のレポート アイテムを含めることができます。 レポート アイテムよりも大きく、レポート アイテムの領域のうち 90% を超える領域と重なっている四角形は、そのレポート アイテムのコンテナーになります。
ビットマップ
レポート内に埋め込まれているビットマップはすべて、インポート時に .bmp 形式に変換されます。これらのビットマップの最初の形式は無視されます。 たとえば、レポートに .jpg ファイルおよび .gif ファイルが含まれていた場合、レポートと一緒にインポートされるリソースは .bmp ファイルになります。 ビットマップは、レポートの埋め込み画像として保存されます。 埋め込みイメージの詳細については、「イメージ (Report Builderおよび SSRS)」を参照してください。
その他の注意事項
上記のほか、Access からインポートされるレポートについては以下の事項も適用されます。
条件付き書式は、変換されません。
Access のレポート プロパティの説明フィールドは、変換されません。