InfoMaker 11.5 新機能

新機能
InfoMaker® 11.5
Document ID: DC00358-01-1150-01
Last revised: September 2008
項目
レ ポー ト の表示の機能拡張
3D グ ラ フ様式
レ ポー ト カ ラ ムの リ ッ チテ キ ス ト 編集様式
新 し い レ ポー ト プ ロ パテ ィ
デー タ ベース イ ン タ フ ェ ース の機能拡張
Oracle 11g のネ イ テ ィ ブ ド ラ イ バ サポー ト
MS SQL Server 2008 のネ イ テ ィ ブ ド ラ イ バ サポー ト
PNG サポー ト
レ ポー ト カ ラ ム と コ ン ト ロ ールのツールチ ッ プ
ページ
1
2
3
4
4
5
11
19
21
レ ポー ト の表示の機能拡張
InfoMaker 11.5 では、 レ ポー ト の外観を、 グ ラ デーシ ョ ン、 透明
度設定、 お よ びピ ク チ ャ に よ っ て拡張で き ます。 ブ ラ シモー ド や
ピ ク チ ャ な ど の新 し いプ ロ パテ ィ に よ り 、レ ポー ト の背景の外観
を変更で き ます。 こ れ ら のプ ロ パテ ィ を使用す る こ と で、 アプ リ
ケーシ ョ ン の外観がモダ ンにな り ます。ブ ラ シモー ド プ ロ パテ ィ
を使用 し て、 レ ポー ト を も っ と 視覚的に面白い も のにす る よ う な
背景のグ ラ デーシ ョ ン効果を作成で き ます。
Copyright 2008 by Sybase, Inc. All rights reserved. Sybase trademarks can be viewed at the Sybase trademarks page
at http://www.sybase.com/detail?id=1011207. Sybase and the marks listed are trademarks of Sybase, Inc. &regi; indicates registration in the United
States of America. Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries.
Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. All other company and product names mentioned may be trademarks of
the respective companies with which they are associated.
3D グ ラ フ 様式
グ ラ デーシ ョ ン は、 あ る 色か ら 別の色への切 り 替わ り を表示 し ま す。
ブ ラ シモー ド プ ロ パテ ィ を使用す る と 、 複数の異な る ス タ イ ルのグ ラ
デーシ ョ ン効果 (水平、 垂直、 回転、 放射状) か ら 選択 し た後、 他の
プ ロ パテ ィ を設定 し て グ ラ デーシ ョ ンや透明度の外観を カ ス タ マ イ ズ
で き ます。 ピ ク チ ャ を使用す る 場合は、 ピ ク チ ャ プ ロ パテ ィ 設定を使
用 し て、 ピ ク チ ャ の外観を、 元のサ イ ズにす る か、 レ ポー ト に合わせ
て引 き 伸ばすか、 いずれかの方法で レ ポー ト 内に並べ る か を決定で き
ます。 透明度は色 と ピ ク チ ャ について調整で き ます。
新 し い レ ポー ト 表示プ ロ パテ ィ の詳細については、 以下の項目のオ ン
ラ イ ン ヘルプ を参照 し て く だ さ い。
•
ブ ラ シモー ド プ ロ パテ ィ
•
ピ ク チ ャ プ ロ パテ ィ
•
グ ラ デーシ ョ ン プ ロ パテ ィ
•
透明度
3D グ ラ フ 様式
InfoMaker 11.5 では、 3D グ ラ フ (3D 円、 3D 横棒、 3D 縦棒、 3D 折れ
線、 お よ び 3D 面) を よ り 洗練 さ れた外観で表示す る ために 3D レ ン ダ
リ ン グが追加 さ れ ま し た。 新 し い グ ラ フ様式では、 元の 3D グ ラ フ様
式で使用 さ れ る オーバーレ イ ではな く 、 デー タ 項目の透明化を使用す
る こ と がで き ま すが、 必要に応 じ て 3D グ ラ フ に元の レ ン ダ リ ン グ様
式を使用す る こ と も で き ます。
新 し いグ ラ フ レ ン ダ リ ン グ様式は、ス タ ン ド ア ロ ン グ ラ フ コ ン ト ロ ー
ルお よ び InfoMaker レ ポー ト 内のグ ラ フ コ ン ト ロ ールでサポー ト さ れ
ます。
DirectX ラ ン タ イ ム
新 し い 3D レ ン ダ リ ン グは、DirectX ラ ン タ イ ム に依存 し ます。 こ れは、
ユーザが こ の機能を最初に選択 し た と き に イ ン ス ト ール さ れ ます。 3D
レ ン ダ リ ン グ チ ェ ッ ク ボ ッ ク ス を最初にオ ン に し た と き に、 DirectX
イ ン ス ト ー ラ が起動 し ます。 サポー ト さ れない様式のチ ェ ッ ク ボ ッ ク
ス がオ ン に さ れて も 、 サポー ト さ れ る 3D グ ラ フ が選択 さ れ る ま で何
も 起 こ り ません。 イ ン ス ト ールを見送 る と 、 3D レ ン ダ リ ン グ プ ロ パ
テ ィ は無視 さ れ ます。
サポー ト さ れないプ ロ
パテ ィ
以下のプ ロ パテ ィ は、 新 し い 3D グ ラ フ様式ではサポー ト さ れません。
•
2
軸 : 線の種類、 小区分、 小区分目盛刻み、 小区分グ リ ッ ド 線、 基線
新機能
レポー ト カ ラ ムの リ ッ チ テキス ト 編集様式
•
テ キ ス ト : 軸 ラ ベル と テ キ ス ト の下線 と 位置揃え
レポー ト カ ラ ムの リ ッ チ テキス ト 編集様式
InfoMaker 11.5 では、 カ ラ ム デー タ を リ ッ チ テ キ ス ト フ ォ ーマ ッ ト
(RTF) で表示 し 、 同 じ デー タ フ ィ ール ド で異な る フ ォ ン ト と 色を使用
す る リ ッ チテ キ ス ト 編集様式を使用で き ます。
リ ッ チテ キ ス ト 編集様式で書式設定す る カ ラ ム には、プ レーン テ キ ス
ト 編集様式のカ ラ ム よ り 明 ら かに多 く の記憶容量が必要です。 こ のた
め、 カ ラ ム幅には最低 1 KB を設定す る 必要があ り ま す。 そ う し ない
と 、 大 き な テ キ ス ト デー タ 型のカ ラ ム に リ ッ チテ キ ス ト 編集様式は
使用で き ません。
デ フ ォ ル ト で は、 リ ッ チ テ キ ス ト 編集様式の カ ラ ム が プ レ ビ ュ ー
ビ ュ ーま たは実行時に編集 さ れ る と 、 必ずフ ォ ン ト ツールバーが表示
さ れ ます。 フ ォ ン ト ツールバーは、 カ ラ ム の フ ォーカ ス が失われ る と
消え ます。 ツールバーは移動で き ます。 ま た前回の位置を記憶 し ます。
コ ン ト ロ ールの RichTextToolbarActivation 定数を変更 し て、 リ ッ チテ キ
ス ト 編集様式の カ ラ ム を 含む レ ポー ト に フ ォ ーカ ス が あ る と き は必
ず ( こ の タ イ プのカ ラ ム が選択 さ れていて も 、 いな く て も ) デフ ォ ル
ト の フ ォ ン ト ツールバーを表示す る よ う にで き ます。 ま た、 こ の定数
を変更 し て、 フ ォ ン ト ツールバーが表示 さ れない よ う にす る こ と も で
き ます。
レ ポー ト プ ロパ
ティ
デー タ 型
RichTextToolbar RichTextTool
Activation
barActivation
(カ タ ロ グ)
説明
リ ッ チテ キ ス ト 編集様式の カ ラ ム を持つ
レ ポー ト にデ フ ォ ル ト の フ ォ ン ト ツ ール
バーを表示す る タ イ ミ ン グ を指定 し ま す。
値は以下の と お り です。
RichTextToolbarActivationAlways!
RichTextToolbarActivationNever!
RichTextToolbarActivationOnEdit! (デ
フ ォル ト )
リ ッ チ テ キ ス ト 編集様式 を サ ポ ー ト す る た め に導入 さ れ た プ ロ パ
テ ィ 、 イ ベン ト 、 お よ び メ ソ ッ ド を利用 し て、 ツールバーを カ ス タ マ
イ ズで き ます。 デフ ォ ル ト の ツールバーではな く 、 カ ス タ マ イ ズ し た
ツールバーを使用す る 場合は、 RichTextToolbarActivation プ ロ パテ ィ を
RichTextToolbarActivationNever! に設定す る 必要があ り ます。
InfoMaker 11.5
3
新 し い レポー ト プ ロパテ ィ
新 し い InfoMaker 式を使用 し て、 リ ッ チテ キ ス ト カ ラ ムの RTF 設定を
解除で き ます。
新 し いプ ロ パテ ィ お よ び式関数の詳細については、 以下の項目のオ ン
ラ イ ン ヘルプ を参照 し て く だ さ い。
•
RichTextToolbarActivation
•
StripRTF
新 し い レポー ト プ ロパテ ィ
InfoMaker 11.5 では、レ ポー ト と そのカ ラ ムお よ び コ ン ト ロ ールの表現
を、 グ ラ デーシ ョ ン背景、 ピ ク チ ャ 背景、 柔軟な透明度設定、 お よ び
カ ラ ム と コ ン ト ロ ールに対す る ツ ールチ ッ プ プ ロ パテ ィ の定義に よ
り 、 さ ま ざ ま な新 し い方法で操作で き ます。
新 し い レポー ト 背景プ
ロパテ ィ
新し いカ ラムと コ ン ト
ロールのプ ロパテ ィ
•
区域プ ロ パテ ィ (グ ラ デーシ ョ ン プ ロ パテ ィ )
•
ブ ラ シモー ド
•
グ ラ デーシ ョ ン プ ロ パテ ィ
•
ピ ク チ ャ プ ロ パテ ィ
•
透明度 (レ ポー ト )
•
背景プ ロ パテ ィ
•
透明度 (カ ラ ム と コ ン ト ロ ール)
•
ツールチ ッ ププ ロ パテ ィ
こ れ ら のプ ロ パテ ィ の説明は、 オ ン ラ イ ン ヘルプのプ ロ パテ ィ 名を参
照 し て く だ さ い。
デー タ ベース イ ン タ フ ェ ースの機能拡張
InfoMaker 11.5 では、 以下のデー タ ベー ス イ ン タ フ ェ ー ス が拡張 さ れ
ま し た。
4
•
Oracle 11g のネ イ テ ィ ブ ド ラ イ バ サポー ト
•
MS SQL Server 2008 のネ イ テ ィ ブ ド ラ イ バ サポー ト
新機能
デー タ ベース イ ン タ フ ェ ースの機能拡張
Oracle 11g のネ イ テ ィ ブ ド ラ イバ サポー ト
InfoMaker 11.5 セ ッ ト ア ッ プ プ ロ グ ラ ムは、オプシ ョ ン で Oracle 11g 接
続用の 「ORA」 デー タ ベース ド ラ イ バを イ ン ス ト ール し ます。 こ の ド
ラ イ バは、 セ ッ シ ョ ンお よ び接続プー リ ン グ も サポー ト し ます。
詳細については、 以下を参照 し て く だ さ い。
•
セ ッ シ ョ ンお よ び接続プー リ ン グのサポー ト
•
最近のその他の Oracle 機能に対す る ORA ド ラ イ バ サポー ト
•
ORA ド ラ イ バに関係な く サポー ト さ れ る Oracle 機能
•
ORA ド ラ イ バに対す る DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス の
変更点
セ ッ シ ョ ンおよび接続プー リ ングのサポー ト
InfoMaker ア プ リ ケ ーシ ョ ン の Oracle ク ラ イ ア ン ト イ ン タ フ ェ ー ス
(OCI) プー リ ン グは、 最初に Oracle サーバに接続 し た と き に作成 さ れ
ま す。 プー リ ン グは、 DBParm パ ラ メ ー タ の SQLCA.ServerName お よ
び NLS_Charset にそれぞれ渡 さ れ る サーバ名 と 文字セ ッ ト で識別 さ れ
ます。 2 つの Oracle 接続が同 じ Oracle サーバ と 確立 さ れ、 それぞれ異
な る 文字セ ッ ト を使用す る 場合、 こ れ ら の接続は異な る 接続プール ま
たはセ ッ シ ョ ン プールに存在す る 必要があ り ます。 プー リ ン グ関連の
すべての DBParm パ ラ メ ー タ は、 最初のデー タ ベース接続の前に設定
す る 必要があ り ます。
セ ッ シ ョ ン プー リ ン
グ
セ ッ シ ョ ン プー リ ン グ と は、 アプ リ ケーシ ョ ンがデー タ ベース に一連
の ス テー ト レ ス セ ッ シ ョ ン を 作成 し 、 保持す る こ と です。 こ れ ら の
セ ッ シ ョ ンは、 要求に応 じ て ク ラ イ ア ン ト に渡 さ れ ます。 使用で き る
セ ッ シ ョ ン がない場合、 新 し いセ ッ シ ョ ン が作成 さ れ ます。 ク ラ イ ア
ン ト がセ ッ シ ョ ン を終了す る と 、 ク ラ イ ア ン ト はそれを プールに解放
し ます。 セ ッ シ ョ ン プー リ ン グに よ り 、 プールのセ ッ シ ョ ン数は動的
に増加で き ます。
セ ッ シ ョ ン プー リ ン グは、OS ア カ ウ ン ト を使用す る 外部認証をサポー
ト し ません。 既存のセ ッ シ ョ ン プールを使用す る デー タ ベース接続に
ロ グ イ ン ID が指定 さ れない場合は、 接続にセ ッ シ ョ ン プー リ ン グ作
成者の ロ グ イ ン ID が使用 さ れ ます。
InfoMaker 11.5
5
デー タ ベース イ ン タ フ ェ ースの機能拡張
接続プー リ ング
InfoMaker で Oracle DBMS バージ ョ ン 9.x お よ び 10.x に接続す る ため
に使用す る O90 お よ び O10 デー タ ベー ス ド ラ イ バは、 DBParm パ ラ
メ ー タ CNNPool に よ る 接続プー リ ン グ をサポー ト し ます。下位互換性
のために、 こ のパ ラ メ ー タ は Oracle 11g で使用す る ORA ド ラ イ バで も
サポー ト さ れ ます。 ただ し 、 こ の ド ラ イ バで Pooling パ ラ メ ー タ が使用
さ れ る と 、 CNNPool パ ラ メ ー タ は無視 さ れます。
使用する プー リ ングの
タ イ プの決定
次の表は、 各状況で選択すべ き プー リ ン グについて説明 し てい ます。
選択
セ ッ シ ョ ン プー リ
ング
接続プー リ ン グ
プー リ ン グ な し
デー タ ベース セ ッ シ ョ ンの状況
ス テー ト レ ス (中間層ス レ ッ ド で再使用可能) で、バ ッ
ク エ ン ド サーバ プ ロ セ ス の数がデー タ ベー ス ス ケー
リ ン グの問題を引 き 起 こ す可能性があ る 場合。
ス テー ト フル (中間層ス レ ッ ド で再使用不可) で、バ ッ
ク エ ン ド サーバ プ ロ セ ス の数がデー タ ベー ス ス ケー
リ ン グの問題を引 き 起 こ す可能性があ る 場合。 物理接
続お よ びバ ッ ク エ ン ド サーバ プ ロ セ ス の数は、 接続
プー リ ン グ を使用す る こ と で削減 さ れます。 こ のため、
同 じ バ ッ ク エ ン ド サーバ構成で、 よ り 多 く のデー タ
ベース セ ッ シ ョ ン を利用で き ます。
ス テー ト フル (中間層ス レ ッ ド で再利用不可) で、バ ッ
ク エ ン ド サ ーバ プ ロ セ ス の数はデー タ ベー ス の ス
ケー リ ン グの問題を引 き 起 こ すほ ど には大 き く な ら な
い場合。
EAServer コ ン ポーネ ン ト と MTS コ ン ポーネ ン ト は、
Oracle デー タ ベース で ど ち ら の タ イ プのプー リ ン グ も
サポー ト し ません。
ロー ド バラ ン シ ン グ
Oracle Real Application Clusters (RAC) デー タ ベー ス オプ シ ョ ン に よ
り 、 1 つのデー タ ベース をデー タ ベース サーバの複数の ノ ー ド 上の複
数の イ ン ス タ ン ス で ホ ス ト で き ます。 こ れに よ り 、 デー タ ベー ス に高
可用性 と フ ェ イ ルオーバ機能が付加 さ れ ます。
作業のバ ラ ン シ ン グ要求は、 接続時 と 実
行時の 2 回、 異な る タ イ ミ ン グで発生 し ます。 接続時の ロ ー ド バ ラ ン
シ ン グは、 セ ッ シ ョ ン がアプ リ ケーシ ョ ン に よ っ て最初に作成 さ れた
と き に発生 し ま す。 こ れに よ り 、 プールの一部で あ る セ ッ シ ョ ン は、
RAC イ ン ス タ ン ス 全体に う ま く 分散 さ れ、 各 イ ン ス タ ン ス 上のセ ッ
シ ョ ンは作業を実行す る 機会を得ます。
接続時のロー ド バラ ン シ ン グ
6
新機能
デー タ ベース イ ン タ フ ェ ースの機能拡張
1 つの イ ン ス タ ン ス のみでサービ ス をサポー ト す る セ ッ シ ョ ン プール
の場合、そのプール内で最初に使用可能なセ ッ シ ョ ンが適切です。プー
ルが複数の イ ン ス タ ン ス に関わ る サービ ス を サポー ト す る 場合、 作業
要求は イ ン ス タ ン ス全体に分散 さ れ る 必要があ る ため、 よ り 多 く の要
求が容量の よ り 大 き い イ ン ス タ ン ス ま たは よ り 優れたサービ ス を提供
す る イ ン ス タ ン ス に割 り 振 ら れ ます。
セ ッ シ ョ ン プール内で最 も 作業効率
の優れたセ ッ シ ョ ン に作業要求を割 り 振 る ために、 実行時接続の ロ ー
ド バ ラ ン シ ン グ も 使用で き ます。 実行時接続 ロ ー ド バ ラ ン シ ン グは、
Oracle 11.1 以降の ク ラ イ ア ン ト が OCI セ ッ シ ョ ン プー リ ン グ を使用 し
て リ リ ース 10.2 以降の Oracle サーバに接続 さ れてい る 場合、デフ ォ ル
ト で有効です。
実行時接続のロー ド バラ ン シ ング
DBParm パ ラ メ ー タ 、 RTConnBalancing は実行時接続 ロ ー ド バ ラ ン シ
ン グ機能を サポー ト し ます。 こ れは、 Pooling パ ラ メ ー タ がセ ッ シ ョ ン
プー リ ン グに設定 さ れてい る 場合のみ使用可能です。 こ のパ ラ メ ー タ
は接続前にのみ設定で き ます。 プー リ ン グ タ イ プにセ ッ シ ョ ン プー リ
ン グ を選択す る 場合、 RTConnBalancing 値はデフ ォ ル ト で true です。
最近のその他の Oracle 機能に対する ORA ド ラ イバ サポー ト
ク ラ イ ア ン ト 結果
キャ ッ シ ュ
InfoMaker ORA ド ラ イ バは、Oracle ク ラ イ ア ン ト キ ャ ッ シ ュ をサポー ト
し ますが、 こ の機能は、 Oracle サーバおよ び ク ラ イ ア ン ト の環境設定に
依存し ます。Oracle ク ラ イ ア ン ト キ ャ ッ シ ュ は、init.ora ま たは sqlnet.ora
フ ァ イ ル で 設 定 で き ま す。 キ ャ ッ シ ュ さ れ た ク エ リ は、 「/*+
result_cache */」 を注釈 と し て付けて、 結果が ク エ リ 結果キ ャ ッ シ ュ
に格納 さ れてい る こ と を示す ヒ ン ト に し ます。ク ラ イ ア ン ト 結果セ ッ ト
を キ ャ ッ シ ュする には、InfoMaker アプ リ ケーシ ョ ンか ら StatementCache
DBParm パ ラ メ ータ に よ っ て OCI ス テー ト メ ン ト キ ャ ッ シ ュ も 有効に
する必要があ り ます。
ア プ リ ケーシ ョ ン ド
ラ イバ名
OCI ア プリ ケ ーショ ン は、独自の名前を 選択し 、それを 診断支援ツ ール
と し て設定でき ま す。AppDriverName DPBARM パラ メ ータ を 使用し て、
InfoMaker ORA イ ン タ フ ェ ース に独自のク ラ イ ア ン ト ド ラ イ バ名を 設
定でき ま す。 名前の最大長は 8 文字です。 ク ラ イ ア ン ト ド ラ イ バ名は、
V$SESSION_CONNECT_INFO ま た は GV$SESSION_CONNECT_INFO
動的パフ ォ ーマン ス ビ ュ ー ク エリ で表示でき ま す。
InfoMaker 11.5
7
デー タ ベース イ ン タ フ ェ ースの機能拡張
プ ロキシ経由の ク ラ イ
ア ン ト ア ク セス
InfoMaker ORA ド ラ イ バは、 Oracle 10.2 で導入 さ れたプ ロ キ シ認証機
能を サポー ト し ます。 プ ロ キ シ認証に よ り 、 通常、 エ ン ド ユーザは中
間層 (フ ァ イ ア ウ ォ ールな ど) で認証 さ れ、 次にデー タ ベー ス にプ ロ
キ シ ユーザ と し て ロ グ イ ン し ま す。 デー タ ベー ス に ロ グ イ ン し た後、
プ ロ キ シ ユーザはエ ン ド ユーザの ID に切 り 替え て、 そのユーザに認
可 さ れた権限を使用 し て操作を実行で き ます。
こ のプ ロ キ シ接続機能は、ConnectAs DBParm パ ラ メ ー タ に よ っ て利用
で き ます。た と えば、ユーザの ト ラ ンザ ク シ ョ ン オブジ ェ ク ト の LogID
が 「Scott」 で、 ConnectAs DBParm パ ラ メ ー タ を 「John」 に設定す る と 、
OCI ク ラ イ ア ン ト はデー タ ベース にプ ロ キ シ ユーザ (「Scott」) と し て
ロ グ イ ン し てか ら 、 エ ン ド ユーザ ID (「John」) に切 り 替わ り ます。
接続プー リ ン グ ま たはセ ッ シ ョ ン プー リ ン グ を使用 し てい る 場合、 プ
ロ キシ ユーザ名は接続ま たはセ ッ シ ョ ン プー リ ン グ作成者(PoolCreator
お よ び PoolPwd DBParm パ ラ メ ー タ で指定で き ま す) で、 ト ラ ン ザ ク
シ ョ ン オブ ジ ェ ク ト の LogID は無視 さ れ ま す。 プー リ ン グ が同種の
セ ッ シ ョ ン モー ド に設定 さ れ る場合、 プ ロ キシ セ ッ シ ョ ンは作成 さ れ
ません。
プー リ ングのないプ ロキシ接続での制限
プ ー リ ン グ の な い プ ロ キ シ 接 続 を 使 用 す る 場 合、 NLS_Charset
DBPARM を 「Local」 ま たは他の非 Unicode 文字セ ッ ト に設定す る 必要
があ り ます。 こ の DBPARM のデフ ォ ル ト 値 「Unicode」 を変更 し ない
場合、Oracle ク ラ イ ア ン ト イ ン タ フ ェース はプ ロ キ シ ク ラ イ ア ン ト 属
性で Unicode 名文字列を受け付けないため、 接続は失敗 し ます。
XMLType デー タ 型の
サポー ト
InfoMaker ORA ド ラ イ バは、 Oracle 9i で導入 さ れ た Oracle XMLType
デー タ 型を サポー ト し ます。 XMLType デー タ 型は、 InfoMaker の String
デー タ 型にマ ッ プ さ れ ますが、 こ のデー タ 型は以下では使用で き ませ
ん。
•
埋め込み SQL 文の Where 句ま たは レ ポー ト 内
•
プ ロ シージ ャ ま たは関数のパ ラ メ ー タ と し て (InfoMaker
は
XMLType を String デー タ 型 と し てバ イ ン ド し ますが、 Oracle では
こ の使用法をサポー ト し ないため)
•
Oracle カー ソ ル ス テー ト メ ン ト で直接選択す る カ ラ ム内
た と えば、 col1 カ ラ ムが XML デー タ 型の場合、 こ のカ ラ ム を以下
の コ ー ド が実行 し よ う と し てい る よ う に、 Oracle カー ソ ルで直接
選択す る こ と はで き ません。
CREATE OR REPLACE Function p_Ora_sp_char_11 return
8
新機能
デー タ ベース イ ン タ フ ェ ースの機能拡張
types.cursortype
AS
l_cursor types.cursorType;
begin
open l_cursor for select col1 from t_Ora_sp_char_11;
return l_cursor;
end;
ORA ド ラ イバに関係な く サポー ト さ れる Oracle 機能
次の表に示 さ れ る Oracle 機能は、 DPBARM パ ラ メ ー タ ま たは ORA ド
ラ イ バでは有効ではあ り ませんが、InfoMaker 11.5 アプ リ ケーシ ョ ンは
こ れ ら の機能をサポー ト し ます。
サポー ト さ れる機能 説明
デー タ ベー ス常駐接 一般的な Web ア プ リ ケ ー シ ョ ン で使用す る た め の
続 プ ー リ ン グ デー タ ベース サーバの接続プールを提供 し ます (ア
(DRCP)
プ リ ケーシ ョ ン はデー タ ベー ス 接続を確立 し 、 比較
的短時間作業 し てか ら 接続を解除す る こ と を想定 し
ます)。 アプ リ ケーシ ョ ンが こ のプールを利用す る に
は、 EZ Connect 文字列で POOLED を指定す る か、 ま
たは TNS 接続文字列で ( SERVER=POOLED ) を指定
し ます。
OCI の障害診断能力
こ の 機能 を 使用す る 前 に、 Oracle DBA を 構成 し 、
DRCP を起動す る 必要があ り ます。
こ の イ ン フ ラ ス ト ラ ク チ ャ は、 デー タ や メ タ デー タ
の破損、 ま たはデー タ ベース コ ー ド のバグ な ど に よ
る 問題を診断する のに役立ち ます。Oracle は、 イ ン シ
デン ト 番号 と 診断情報をデー タ ベー ス の外部の自動
診断 リ ポジ ト リ (ADR) に格納 し ます。
Oracle Call Interface 認証の前にデー タ ベース バージ ョ ン の文字列が流出
(OCI) セキ ュ リ テ ィ する のを防ぎ、 未承認のア ク セ ス が発生 し た場合や、
の機能拡張
ユーザ ア ク シ ョ ン が監査 さ れた際に警告を送信 し ま
す。
ORA ド ラ イバに対する DB プ ロ フ ァ イル ダ イ ア ログ ボ ッ ク スの変更点
プー リ ング パ ラ メ ー
タ
Oracle 11g 接続の DB プ ロ フ ァ イ ル ダ イ ア ロ グ ボ ッ ク ス には、[プー リ
ン グ] タ ブがあ り 、 こ こ で、 以下のプー リ ン グ パ ラ メ ー タ を選択で き
ます。
InfoMaker 11.5
9
デー タ ベース イ ン タ フ ェ ースの機能拡張
プー リ ング パラ メ ー
タ
プー リ ン グ タ イ プ
実行時の 接続 ロ ー ド
バラ ンシング
Homogeneous
セッ
シ ョ ン プー リ ン グ
最小セ ッ シ ョ ン数
最大セ ッ シ ョ ン数
インク リ メ ン ト
ユーザ名
パス ワー ド
Oracle 11g サポー ト
用のその他のパ ラ メ ー
タ
10
説明
セ ッ シ ョ ン プー リ ン グ、 接続プー リ ン グ、 ま たはな
し (デフ ォ ル ト ) を選択で き ま す。 Pooling DBParm
を設定 し ます。
こ の チ ェ ッ ク ボ ッ ク ス はデ フ ォ ル ト で オ ン です。
プー リ ン グ タ イ プで接続プー リ ン グ ま たは、 な し を
選択す る と 無視 さ れます。 RTConnBalancing DBParm
を設定 し ます。
こ のチ ェ ッ ク ボ ッ ク スはデフ ォ ル ト でオ フ です。 ま
た、 セ ッ シ ョ ン プー リ ン グ に対 し てのみ有効です。
オ ン の 場合、 プ ー ル内 の すべ て の セ ッ シ ョ ン は、
PoolCreator お よ び PoolPwd DBParm パ ラ メ ー タ が指
定 さ れ る と 、 こ れ ら に よ っ て認証 さ れ ます。 こ れ以
降の接続では、 ユーザ名 と パ ス ワ ー ド の要求が無視
さ れます。 Homogeneous セ ッ シ ョ ン モー ド では、 プ
ロ キ シ セ ッ シ ョ ン を 確 立 で き ま せ ん。
SessionHomogeneous DBParm を設定 し ます。
デー タ ベー ス 接続セ ッ シ ョ ン の最小数 を 示す整数
で、 デフ ォ ル ト の値は 1 です。 CSMin DBParm を設
定 し ま す。 こ の 値は、 SessionHomogeneous DBParm
が false に設定 さ れ る と 無視 さ れます。
デー タ ベー ス 接続セ ッ シ ョ ン の最大数 を 示す整数
で、 デフ ォ ル ト の値は 100 です。 CSMax DBParm を
設定 し ます。
セ ッ シ ョ ン ご と のデー タ ベース接続の増分を示す整
数で、 デフ ォ ル ト の値は 1 です。 CSIncr DBParm を
設定 し ます。 こ の値は、 SessionHomogeneous DBParm
が false に設定 さ れ る と 無視 さ れます。
プールが ま だ作成 さ れていない と き に、 接続プール
ま た はセ ッ シ ョ ン プール を 作成す る た めに使用 さ
れ る ユーザ名。デー タ ベース接続の前に、PoolCreator
DBParm に ユ ー ザ 名 を 示す文字列 を 設定 し ま す。
PoolCreator DBParm に値を指定 し ない と 、 ト ラ ン ザ
ク シ ョ ン オブジ ェ ク ト の LogID お よ び LogPass プ ロ
パテ ィ がプー リ ン グの作成に使用 さ れます。
プールが ま だ作成 さ れていない と き に、 接続プール
ま た はセ ッ シ ョ ン プール を 作成す る た めに使用 さ
れ る パ ス ワー ド 。PoolPwd DBParm にプール作成者の
パ ス ワー ド を示す文字列を設定 し ます。
プー リ ン グ パ ラ メ ー タ 以外に も 、 Oracle 11g デー タ ベー ス 接続 を サ
ポー ト す る デー タ ベース パ ラ メ ー タ があ り ます。 こ れ ら のパ ラ メ ー タ
を次の表に示 し ます。
新機能
デー タ ベース イ ン タ フ ェ ースの機能拡張
Oracle 11g サポー ト 用
のその他のパラ メ ー タ
アプ リ ケーシ ョ ン ド ラ
イ バ名 (ORA ド ラ イ バ
のみで使用可能)
[DB プ ロ フ ァ イ
ル設定] タ ブ ペー
ジ
システム
説明
診断用に独自の ク ラ イ ア ン ト
ド ラ イ バ名 を 設定で き ま す。
AppDriverName DPBARM を
設定 し ます。
キ ャ ッ シ ュ で き る ス ト ラ ン ザ ク シ ョ 各セ ッ シ ョ ン で キ ャ ッ シ ュ
テー ト メ ン ト 数 (O10 お ン
で き る ス テ ート メ ン ト の 数
よ び ORA ド ラ イ バでサ
( デフ ォ ルト は 0) 。 Oracle ク
ポー ト )
ラ イ ア ン ト キ ャ ッ シ ュ で使
用する 場合は 0 以外の値に設
定 す る 必 要 が あ り ま す。
StatementCache DBParm を 設
定し ま す。
編集可能なド ロ ッ プダウ ン リ
接続名 (使用可能なすべ 接続
ス ト で、 プロ キ シ 認証を 使用
て の Oracle ド ラ イ バ で
サ ポ ー ト さ れ ま す が、
し ている 場合はエン ド ユーザ
ORA ド ラ イ バのエ ン ド
を 入 力 で き ま す。 ま た、
ユーザ名 の エ ン ト リ に
DEFAULT、SYSOPER、ま たは
SYSDBA ユーザ名を 選択でき
限 り ます)
ま す。 ConnectAs DBParm を 設
定し ま す。 ConnectAs DBParm
を SYSDBA ま た は SYSOPER
に 設 定 し て い る 場 合、 接 続
プーリ ン グ ま た はセッ シ ョ ン
プ ー リ ン グ を 使用で き ま せ
ん。
MS SQL Server 2008 のネ イ テ ィ ブ ド ラ イバ サポー ト
SQL Server 2008 デー タ ベースへの接続に関す る InfoMaker のサポー ト
には、 新 し いデー タ ベース パ ラ メ ー タ のサポー ト 以外に、 新 し い SQL
Server デー タ 型のサポー ト も あ り ます。InfoMaker か ら SQL Server 2008
に接続す る には、 SNC 10.0 ド ラ イ バを イ ン ス ト ールす る 必要があ り ま
す。
詳細については、 以下を参照 し て く だ さ い。
•
新 し いデー タ ベース パ ラ メ ー タ
•
SQL Server 2008 での新 し いデー タ 型のサポー ト
•
T-SQL の機能拡張
InfoMaker 11.5
11
デー タ ベース イ ン タ フ ェ ースの機能拡張
•
サポー ト さ れない SQL Server 2008 機能
新 し いデー タ ベース パラ メ ー タ
Provider パラ メ ー タ
Microsoft SQL Native Client(SNC) イ ン タ フ ェ ース用の Provider DBParm
パ ラ メ ー タ に よ り 、デー タ ベース接続で使用す る SNC バージ ョ ン を選
択で き ます。 こ のパ ラ メ ー タ は、ス ク リ プ ト 内で SQLNCLI (SQL Server
2005 に接続す る SNC 9.0 ド ラ イ バ用) ま たは SQLNCLI10 (SQL Server
2008 に接続す る SNC 10.0 ド ラ イ バ用) に設定で き ます。 ま たは、 SNC
イ ン タ フ ェ ー ス の DB プ ロ フ ァ イ ル セ ッ ト ア ッ プ ダ イ ア ロ グ ボ ッ ク
ス の [接続] タ ブで、 こ れ ら のプ ロ バ イ ダのいずれか を選択で き ます。
プ ロ バ イ ダ を 設 定 ま た は 選 択 し な い 場 合、 デ フ ォ ル ト の 選 択 は
SQLNCLI (SQL Server 2005 用の SNC 9.0) です。 こ れに よ り 、 既存の
SNC イ ン タ フ ェース ユーザは、 何 も 修正を加えずに InfoMaker 11.5 に
移行で き ます。 InfoMaker は、 SQLNCLI プ ロ バ イ ダ と の接続に失敗す
る と 、 SQLNCLI10 プ ロ バ イ ダへの接続を試みます。 ただ し 、 明示的に
プ ロ バ イ ダ を設定 し 、 その接続が失敗す る と 、 エ ラ ー メ ッ セージが表
示 さ れ ます。
Failover パラ メ ー タ
FailoverPartner DBParm パ ラ メ ー タ で ミ ラ ー サーバの名前 を 設定で き
ま す。 こ れに よ り 、 フ ェ イ ルオーバ イ ベ ン ト が発生 し て も 、 デー タ
ベース の利用可能性が維持 さ れ ます。ま た、SNC イ ン タ フ ェース の DB
プ ロ フ ァ イ ル セ ッ ト ア ッ プ ダ イ ア ロ グ ボ ッ ク ス の [シ ス テム] タ ブ
で も ミ ラ ー サーバの名前を設定で き ます。
フ ェ イ ルオーバが発生す る と 、 SQL Server への既存の InfoMaker 接続
は切断 さ れます。 SNC ド ラ イ バは既存の接続を解放 し 、 再度確立 し よ
う と し ます。 再接続が成功す る と 、 InfoMaker は DBNotification イ ベン
ト を起動 し ます。
InfoMaker が フ ェ イ ルオーバ イ ベン ト を起動す る には、 以下の条件を
満たす必要があ り ます。
•
接続時に FailoverPartner DBParm が指定 さ れ る
•
SQL Server デー タ ベース が ミ ラ ー リ ン グ用に構成 さ れてい る
•
既存の接続が切断 さ れた と き に、 InfoMaker が正常に再接続で き る
フ ェ イ ルオーバが発生 し た場合
12
•
InfoMaker はエ ラ ー コ ー ド (998) を返 し 、 DBNotification イ ベン ト
を通知 タ イ プ DBFailover! で起動す る
•
既存のカー ソ ルは使用 さ れず、 閉 じ ら れてい る
•
失敗 し たデー タ ベース操作が再試行で き る
新機能
デー タ ベース イ ン タ フ ェ ースの機能拡張
•
コ ミ ッ ト さ れていない ト ラ ン ザ ク シ ョ ン は失われ、 新 し い ト ラ ン
ザ ク シ ョ ン を開始す る 必要があ る
SQL Server 2008 での新 し いデー タ 型のサポー ト
日付 と 時間のデー タ 型
次の表は、 SQL Server 2008 の新 し い日付 と 時間のデー タ 型、 お よ び
マ ッ プ先の PowerScript のデー タ 型を示 し てい ます。
SQL Server のデー タ 型
DATE
TIME
DATETIME2
PowerScript のデー タ 型
Date
Time (小数点以下の秒数につい て、 SQL Server
デー タ 型では最大 7 桁をサポー ト し てい ますが、
こ れは最大 6 桁ま で し かサポー ト し ません)
DateTime(小数点以下の秒数について、SQL Server
デー タ 型では最大 7 桁をサポー ト し てい ますが、
こ れは最大 6 桁ま で し かサポー ト し ません)
SQL Server 2008 DATETIMEOFFSET デー タ 型は、InfoMaker 11.5 ではサ
ポー ト さ れ ません。
SQL Server 2008 デー タ ベース のテーブル カ ラ ムにマ ッ プす
る 場合、 InfoMaker には、 レ ポー ト ペ イ ン タ の カ ラ ム のプ ロ パテ ィ に
「書式」 タ ブ、 デー タ ベース ペ イ ン タ のカ ラ ム仕様ビ ュ ーに 「Dec」 カ
ラ ムがあ り ます。 こ れ ら の フ ィ ール ド で、TIME お よ び DATETIME2 カ
ラ ムに必要な精度を示す こ と がで き ます。
精度設定
精度設定はテーブル作成のみで使用 さ れ ます。 よ り 精度の高い値を カ
ラ ム に入力 し て も 、 カ ラ ム 内のデー タ を 取得 ま た は更新 し た と き 、
InfoMaker は小数点以下の秒数 と し て最大 6 桁ま で し か使用 し ません。
Filestream デー タ 型
FILESTREAM デー タ 型に よ り 、 大容量のバ イ ナ リ デー タ を直接 NTFS
フ ァ イ ル シ ス テ ム に格納で き ます。
SQL Server デー タ ベース エ ン ジ ンは、FILESTREAM を Varbinary ( max )
デ ー タ 型 と し て 導 入 し ま す。 InfoMaker SNC イ ン タ フ ェ ー ス は、
Varbinary ( max ) デー タ 型を BLOB デー タ 型にマ ッ プ し 、SelectBlob ま た
は UpdateBlob SQL 文を使用 し て、 フ ァ イ ル ス ト リ ーム デー タ を取得
ま たは更新 し ます。 カ ラ ムが フ ァ イ ル シ ス テ ム上にデー タ を格納す る
よ う に指定す る には、Varbinary ( max ) カ ラ ム定義に FILESTREAM 属性
を含め る 必要があ り ます。 た と えば、 次の よ う にな り ます。
CREATE TABLE FSTest (
GuidCol1 uniqueidentifier ROWGUIDCOL NOT NULL
UNIQUE DEFAULT NEWID () ,
IntCol2 int,
varbinaryCol3 varbinary ( max ) FILESTREAM ) ;
InfoMaker 11.5
13
デー タ ベース イ ン タ フ ェ ースの機能拡張
PowerScript フ ァ イル ア ク セス関数を FILESTREAM デー タ と 一緒に使用 し
ない
Win32 API 関数を InfoMaker ア プリ ケ ーショ ン で直接宣言およ び使用し
て FILESTREAM データ にア ク セス する こ と ができ ま す。 ただし 、 既存
の InfoMaker フ ァ イ ル ア ク セス 関数は FILESTREAM フ ァ イ ルにア ク セ
ス する ためには使用でき ま せん。 Win32 API を 使用し た FILESTREAM
データ へのア ク セス については、 MSDN SQL Server Developer Center Web
サイ ト http://msdn.microsoft.com/en-us/library/bb933877 ( SQL.100 ) .aspx を 参照
し てく ださ い。
InfoMaker での CLR
デー タ 型の使用
.NET 共通言語 ラ ン タ イ ム (CLR: Common Language Runtime) デー タ 型
の バ イ ナ リ 値 は、 デー タ ベー ス 内 の 他 の カ ラ ム を 更新す る た め に
InfoMaker ア プ リ ケ ー シ ョ ン で使用で き る Blob 型 と し て SQL Server
デー タ ベー ス か ら 取得で き ま す。 その戻 り 値が InfoMaker のデー タ 型
と 互換性があ る 場合、 SQL ス ク リ プ ト は SQL Server 側で実行 さ れ る た
め、 CLR デー タ 型 メ ソ ッ ド を PowerScript、 動的 SQL、 埋め込み SQL、
ま たは レ ポー ト で使用で き ます。
CLR デー タ 型は、 PowerScript の文字列に も マ ッ プで き ま すが、 取得
デー タ はバ イ ナ リ デー タ の 16 進文字列表記です。
前述の メ ソ ッ ド を使用 し て、 HierarchyID デー タ 型、 空間デー タ 型、 お
よ びユーザ定義型な ど、 CLR デー タ 型 と し て導入 さ れ る すべてのデー
タ 型を処理で き ます。
HierarchyID デー タ 型
HierarchyID は可変長で、 ノ ー ド を示す値を組織構造の よ う な階層型ツ
リ ーに格納で き る シ ス テ ム デー タ 型です。 こ のデー タ 型の値は、 ツ
リ ー階層内の位置を表 し ます。
ISQL の解説 HierarchyID カ ラ ム は、 ISQL ペ イ ン タ 内 で、 CREATE
TABLE、 SELECT、 UPDATE、 INSERT お よ び DELETE ス テー ト メ ン ト
と 一緒に使用で き ます。 た と えば、 次の よ う にな り ます。
CREATE TABLE Emp (
EmpId int NOT NULL,
EmpName varchar ( 20 ) NOT NULL,
EmpNode hierarchyid NULL ) ;
HierarchyID デー タ を挿入す る ために、 以下で示す よ う に HierarchyID
ま たは HierarchyID デー タ 型に関連付け ら れた メ ソ ッ ド の正規文字列
表現を使用で き ます。
INSERT into Emp VALUES ( 1, 'Scott',
hierarchyid::GetRoot ()) ;
INSERT into Emp VALUES ( 2, 'Tom' , '/1/' ) ;
14
新機能
デー タ ベース イ ン タ フ ェ ースの機能拡張
DECLARE @Manager hierarchyid
SELECT @Manager = hierarchyid::GetRoot () FROM Emp
INSERT into Emp VALUES ( 2, 'Tom',
@Manager.GetDescendant ( NULL,NULL )) ;
DECLARE @Employee hierarchyid
SELECT @Employee = CAST ( '/1/2/3/4/' AS hierarchyid )
INSERT into Emp VALUES ( 2, 'Jim' , @Employee ) ;
HierarchyID カ ラ ムは、 バ イ ナ リ デー タ を持ち、 ISQL ペ イ ン タ の結果
ビ ュ ーにはバ イ ナ リ カ ラ ム が表示 さ れないため、 直接選択す る こ と は
で き ま せ ん。 た だ し 、 HierarchyID の ToString メ ソ ッ ド を 使 用 し て
HierarchyID デー タ を文字列値 と し て取 り 出す こ と はで き ます。 た と え
ば、 次の よ う にな り ます。
Select EmpId, EmpName, EmpNode.ToString () from Emp;
ま た、 デー タ を 取 り 出すた めに、 HierarchyID カ ラ ム で、 GetAncestor、
GetDescendant、 GetLevel、 GetRoot、 IsDescendant、 Parse、 お
よ
び
GetReparentedValue メ ソ ッ ド を 使用す る こ と も で き ま す。 こ れ ら の メ
ソ ッ ド のいずれかが HierarchyID ノ ー ド を返 し た ら 、 ToString を使用 し
てデー タ を文字列に変換 し ます。 た と えば、 次の よ う にな り ます。
Select EmpId, EmpName, EmpNode.GetLevel () from Emp;
Select EmpId, EmpName,
EmpNode.GetAncestor ( 1 ) .ToString () from Emp;
HierarchyID カ ラ ムは、 次の よ う に String 値ま たは HierarchyID 変数を
使用 し て更新で き ます。
Update Emp Set EmpNode = '/1/2/' where EmpId=4;
Delete from Emp where EmpNode = '/1/2/';
PowerScript の解説 SELECT、 INSERT、 UPDATE、 お よ び DELETE 演
算 で は、 埋 め 込み SQL 文内 で HierarchyID カ ラ ム が 使用 で き ま す。
HierarchyID デー タ は、 SelectBlob ス テー ト メ ン ト を使用 し て String ま
たは Binary ( Blob ) デー タ 型 と し て取 り 出せます。
HierarchyID デー タ を取 り 出すために String デー タ 型を使用す る 場合は
ToString メ ソ ッ ド を 使用 し ま す。 そ う で な い と 、 デー タ は バ イ ナ リ
HierarchyID 値の 16 進表記にな り ます。
次の例は、 埋め込み SQL での HierarchyID メ ソ ッ ド の使用方法を示 し
てい ます。
long id
String hid,name
Select EmpId, EmpName, EmpNode.ToString ()
into :id, :name, :hid
from Emp where EmpId=3;
InfoMaker 11.5
15
デー タ ベース イ ン タ フ ェ ースの機能拡張
Select EmpId, EmpName, EmpNode.GetLevel ()
into :id, :name, :hid
from Emp where EmpId=3;
Blob b
Selectblob EmpNode into :b from Emp where EmpId =2;
レポー ト の解説 レ ポー ト は、HierarchyID デー タ 型を直接サポー ト し ま
せん。 ただ し 、 HierarchyID は、 デー タ ソ ース SQL 内で ToString メ ソ ッ
ド ま たは関連す る HierarchyID メ ソ ッ ド を使用 し て文字列に変換で き
ます。 た と えば、 次の よ う にな り ます。
SELECT EmpId, EmpName, EmpNode.ToString () FROM Emp;
SELECT EmpId, EmpName, EmpNode.GetLevel () FROM Emp;
空間デー タ 型
Microsoft SQL Server 2008 は 2 つの空間デー タ 型、geometry デー タ 型 と
geography デー タ 型を サポー ト し ます。 SQL Server では、 こ れ ら のデー
タ 型は .NET 共通言語 ラ ン タ イ ム (CLR) デー タ 型 と し て実装 さ れてい
ます。
InfoMaker SNC イ ン タ フ ェース は CLR デー タ 型を処理 し ませんが、 空
間デー タ 型 を ToString 関数で文字列に変換 し 、 それ ら を PowerScript、
ISQL ペ イ ン タ 、 埋め込み SQL、 お よ びレ ポー ト で使用す る こ と がで き
ます。 こ れは、 HierarchyID デー タ 型の使用法 と 似てい ます。 SelectBlob
SQL 文で も 、 こ れ ら のデー タ 型のバ イ ナ リ 値を取 り 出せます。
geography および geometry データ 型は 11 個の異な るデータ オブジ ェ ク
ト ( イ ン ス タ ン ス型) をサポー ト し ますが、 こ れ ら の型の う ち、 Points、
LineStrings、 Polygons、 およ び イ ン ス タ ン ス化可能な GeometryCollection
内のオブジ ェ ク ト (MultiPoints、 MultiLineStrings、 およ び MultiPolygons)
の 7 個 の み が イ ン ス タ ン ス 化 可 能 で す。 STAsText、 STArea、
STGeometryType な ど、 こ れ ら のオブジ ェ ク ト に関連付け ら れた メ ソ ッ ド
を呼び出す こ と で、こ れ ら をデータ ベース内で作成およ び処理する こ と
がで き ます。 た と えば、 次の よ う にな り ます。
CREATE TABLE SpatialTable ( id int IDENTITY ( 1,1 ) ,
GeomCol geometry ) ;
INSERT INTO SpatialTable ( GeomCol ) VALUES (
geometry::STGeomFromText (
'LINESTRING ( 100 100,20 180,180 180 ) ',0 )) ;
select id, GeomCol.ToString () from SpatialTable;
select id, GeomCol.STAsText () ,
GeomCol.STGeometryType () ,
GeomCol.STArea () from SpatialTable;
16
新機能
デー タ ベース イ ン タ フ ェ ースの機能拡張
ユーザ定義型
ユーザ定義型 (UDT) は、 SQL Server に CLR 型 と し て実装 さ れ、 .NET
と 統合 さ れてい ます。Microsoft SQL Server 2008 では UDT の 8 KB の制
限 を 排除 し 、 UDT デー タ のサ イ ズ を 動的に拡張で き る よ う に し ま し
た。
InfoMaker SNC イ ン タ フ ェ ース は UDT デー タ 型を直接サポー ト し ませ
んが、 ToString メ ソ ッ ド を使用 し て、 HierarchyId や空間デー タ 型な ど、
他の CLR デー タ 型 と 同 じ 方法で UDT 用のデー タ を取 り 出せます。 た
だ し 、 UDT デー タ 型が PowerScript で String デー タ 型にマ ッ プ さ れ る
場合、 UDT バ イ ナ リ 値は 16 進文字列 と し て取 り 出 さ れ ます。 UDT か
ら バ イ ナ リ 形式 (blob) のデー タ を取得 ま たは更新す る には、 それぞ
れ SelectBlob ま たは UpdateBlob SQL 文を使用で き ます。
ま た、InfoMaker® アプ リ ケーシ ョ ン と 互換性のあ る デー タ を返す UDT
ま たは CLR デー タ 型 (String、 Long、 Decimal な ど) の関連 メ ソ ッ ド を
使用で き ます。
T-SQL の機能拡張
MERGE ス テー ト メ ン
ト
MERGE Transact-SQL 文は、 ソ ー ス テーブル と の結合結果を基に タ ー
ゲ ッ ト テーブル ま たは ビ ュ ーに INSERT、 UPDATE、 ま たは DELETE
演算を実行 し ます。 MERGE ス テー ト メ ン ト は、 ISQL ペ イ ン タ お よ び
動的 SQL を使用す る PowerScript で使用で き ます。 た と えば、 次の よ
う にな り ます。
String mySQL
mySQL = "MERGE INTO a USING b ON a.keycol = b.keycol " &
+ "WHEN MATCHED THEN "&
+ "UPDATE SET col1 = b.col1,col2 = b.col2 " &
+ "WHEN NOT MATCHED THEN " &
+ "INSERT ( keycol, col1, col2, col3 ) " &
+ "VALUES ( b.keycol, b.col1, b.col2, b.col3 ) " &
+ "WHEN NOT MATCHED BY SOURCE THEN " &
+ "DELETE;"
EXECUTE IMMEDIATE :Mysql;
ISQL で MERGE ス テー ト メ ン ト を使用する
MERGE ス テー ト メ ン ト はセ ミ コ ロ ン で終了 さ せ る 必要が あ り ま す。
デフ ォ ル ト では、 ISQL ペ イ ン タ が SQL の終了文字 と し てセ ミ コ ロ ン
を使用す る ため、 ISQL で MERGE ス テー ト メ ン ト を使用す る には、 終
了文字を コ ロ ン (:)、 ス ラ ッ シ ュ (/)、 ま たはその他の特殊文字に変更
す る 必要があ り ます。
InfoMaker 11.5
17
デー タ ベース イ ン タ フ ェ ースの機能拡張
GROUPING SETS
GROUPING SETS は GROUP BY 句の拡張機能で、同 じ ク エ リ 内で複数
のグループ化を定義で き ます。 GROUPING SETS は、 集計 ク エ リ お よ
び レ ポー ト の作成を容易かつ迅速に行い、 1 つの結果セ ッ ト を生成 し
ます。 こ れは、 別々にグループ化 さ れた行に対す る UNION ALL 操作
と 同 じ です。
GROUP BY 句に、 GROUPING SETS、 ROLLUP、 お よ び CUBE 演算子
が追加 さ れ ま し た。 新 し い関数 GROUPING_ID は、 既存の GROUPING
関 数 よ り も グ ル ー プ 化 の レ ベ ル が 高 い 情 報 を 返 し ま す (WITH
ROLLUP、 WITH CUBE、 お よ び ALL 構文は ISO 準拠では な い た め、
廃止 さ れ ます)。
次の例は、 GROUPING SETS 演算子 と GROUPING_ID 関数を使用 し て
い ます。
SELECT EmpId, Month, Yr, SUM ( Sales ) AS Sales
FROM Sales
GROUP BY GROUPING SETS (( EmpId, ROLLUP ( Yr, Month ))) ;
SELECT COL1, COL2,
SUM ( COL3 ) AS TOTAL_VAL,
GROUPING ( COL1 ) AS C1,
GROUPING ( COL2 ) AS C2,
GROUPING_ID ( COL1, COL2 ) AS GRP_ID_VALUE
FROM TEST_TBL GROUP BY ROLLUP ( COL1, COL2 ) ;
GROUPING SETS 演算子は、 ISQL ペ イ ン タ 、 PowerScript (埋め込み
SQL お よ び動的 SQL)、お よ びレ ポー ト (構文モー ド ) で使用で き ます。
行コ ンス ト ラ ク タ
Transact-SQL は 1 つの INSERT ス テー ト メ ン ト 内に複数の値を挿入で
き る よ う にな り ま し た。 拡張 さ れた INSERT ス テー ト メ ン ト は、 ISQL
ペ イ ン タ お よ び PowerScript (埋め込み SQL と 動的 SQL) で使用で き
ます。 た と えば、 次の よ う にな り ます。
INSERT INTO Employees VALUES ( 'tom', 25, 5 ) ,
( 'jerry', 30, 6 ) , ( 'bok', 25, 3 ) ;
ホ ス ト 変数を持っ た 1 つの INSERT ス テー ト メ ン ト に複数の値を含め
る 場合、 DisableBind DBParm を 1 に設定す る 必要があ り ます。 バ イ ン
ド 設定に関係な く 、 リ テ ラ ル値を上の例の よ う に使用す る 場合、 複数
の行を 1 つの INSERT ス テー ト メ ン ト に挿入で き ます。
互換性レ ベル
SQL Server 2008 では、ALTER DATABASE ス テー ト メ ン ト を使用 し て、
sp_dbcmptlevel プ ロ シージ ャ を置換す る こ と で、デー タ ベース の互換性
レベル (SQL Server のバージ ョ ン) を設定で き ます。 こ の構文は、ISQL
ペ イ ン タ お よ び PowerScript (動的 SQL) で使用で き ま す。 た と えば、
次の よ う にな り ます。
ALTER DATABASE <database_name>
18
新機能
PNG サポー ト
SET COMPATIBILITY_LEVEL = {80 | 90 | 100}
80 = SQL Server 2000
90 = SQL Server 2005
100 = SQL Server 2008
互換性 レ ベルは、 デー タ ベー ス サーバ全体では な く 、 特定のデー タ
ベース の動作のみに影響を与え ます。 こ れは以前のバージ ョ ン の SQL
Server に部分的な下位互換性のみを提供 し ま す。 デー タ ベー ス の互換
性レベルを暫定的な移行補助機能 と し て使用 し 、 バージ ョ ン の異な る
デー タ ベース の動作の差異を回避で き ます。
テーブル ヒ ン ト
FORCESEEK テーブル ヒ ン ト は、 ク エ リ オプテ ィ マ イ ザのデフ ォ ル ト
の動作を上書 き し ます。 こ れは、 ク エ リ に よ っ て参照 さ れ る テーブル
ま た は ビ ュ ー内のデー タ に対す る 唯一の ア ク セ ス パ ス と し て index
seek 演算を使用す る よ う に ク エ リ オプテ ィ マ イ ザに命令す る 、 高度な
パフ ォ ーマ ン ス チ ュ ーニ ン グ オプシ ョ ン を提供 し ます。 FORCESEEK
テーブル ヒ ン ト は、 ISQL ペ イ ン タ 、 PowerScript (組み込み SQL お よ
び動的 SQL)、 お よ びレ ポー ト (構文モー ド ) で使用で き ます。
た と えば、 次の よ う にな り ます。
Select ProductID, OrderQty from SalesOrderDetail
with ( FORCESEEK ) ;
サポー ト さ れない SQL Server 2008 機能
InfoMaker SNC イ ン タ フ ェース は、 SQL Server 2008 に導入 さ れたユー
ザ定義テーブル型 (テーブル構造の定義を示すユーザ定義の型) を サ
ポー ト し ません。
PNG サポー ト
InfoMaker 11.5 は、 InfoMaker レ ポー ト で使用す る 画像で PNG (Portable
Networks Graphics) フ ァ イ ル形式を サポー ト し ます。 PNG 画像は、 デ
ザ イ ン時 も 実行時 と 同様に表示 さ れます。 PNG 画像の透明部分は、 コ
ン ト ロ ールに背景色 ま たは色の グ ラ デーシ ョ ン プ ロ パテ ィ が あ る 場
合は、 割 り 当て ら れた コ ン ト ロ ールの背景色ま たは色のグ ラ デーシ ョ
ン を表示 し ます。
InfoMaker 11.5
19
PNG サポー ト
背景色プ ロ パテ ィ のない ピ ク チ ャ コ ン ト
ロ ールの場合、 PNG 画像の透明部分は親オブ ジ ェ ク ト ま たは コ ン ト
ロ ールの背景色を表示 し ます。 た と えば、 InfoMaker ピ ク チ ャ コ ン ト
ロ ールには背景色プ ロ パテ ィ が あ り ま せん。 透明な PNG 画像を ピ ク
チ ャ コ ン ト ロ ールに割 り 当て る 場合、透明部分はピ ク チ ャ コ ン ト ロ ー
ルを含む ウ ィ ン ド ウ ま たはオブジ ェ ク ト の背景色を表示 し ます。
ピ ク チ ャ コ ン ト ロールの場合
ピ ク チ ャ コ ン ト ロ ール と は異 な
り 、 ピ ク チ ャ ボ タ ン コ ン ト ロ ールには InfoMaker の背景色プ ロ パテ ィ
があ り ます。 透明な PNG 画像を ピ ク チ ャ ボ タ ン コ ン ト ロ ールに割 り
当て る と 、PNG 画像は ピ ク チ ャ ボ タ ン コ ン ト ロ ールに割 り 当て ら れた
背景色 と 一緒に表示 さ れ ます。ピ ク チ ャ ボ タ ン コ ン ト ロ ール内の PNG
画像を ピ ク チ ャ ボ タ ン コ ン ト ロ ールの コ ン テナ オブジ ェ ク ト の背景
に溶け込 ませ る 場合は、 ピ ク チ ャ ボ タ ン の BackColor プ ロ パテ ィ を そ
の コ ン テナ オブジ ェ ク ト の背景色に設定す る 必要があ り ます。
ピ ク チ ャ ボ タ ン コ ン ト ロールの場合
ピ ク チ ャ コ ン ト ロ ール の 透
明な PNG 画像を ウ ィ ン ド ウ に表示 し 、 ピ ク チ ャ コ ン ト ロ ールが リ ス
ト ボ ッ ク ス コ ン ト ロ ール (ま たは、 他の非 コ ン テナ コ ン ト ロ ールやオ
ブジ ェ ク ト ) の一部 と 重な る 場合、 PNG 画像の透明部分は、 それが重
な る コ ン ト ロ ール ま たはオブジ ェ ク ト を切 り 取 り 、 その コ ン テナ オブ
ジ ェ ク ト の背景色 と 一緒に表示 さ れ ます。 ウ ィ ン ド ウ な ど の コ ン テナ
オブジ ェ ク ト に、 背景色以外に背景画像 も あ る 場合、 PNG 画像は背景
色のみを表示 し 、 重な る 背景画像は切 り 取 り ます。
他の コ ン ト ロールまたは画像に重な る場合
制限 と 例外 PNG 画像は標準 InfoMaker タ ーゲ ッ ト で配布で き ます。 た
だ し 、 PNG 画像は リ ッ チテ キ ス ト ま たは OLE 提示様式を持つレ ポー
ト では選択で き ません。 ま た、 レ ポー ト を XSLFOP メ ソ ッ ド を使用 し
て PDF フ ァ イ ル と し てエ ク ス ポー ト し た場合、 レ ポー ト 内の PNG 画
像は生成 さ れた PDF には保存 さ れ ません。
PNG 画像は、 ビ ッ ト マ ッ プ関数ではな く GDI+ 関数で描画 さ れ ま す。
こ のため、 ピ ク チ ャ 画像 と し て PNG フ ァ イ ルを選択す る と 、 ピ ク チ ャ
お よ び ピ ク チ ャ ボ タ ン コ ン ト ロ ールの Map3DColors プ ロ パテ ィ は無
視 さ れ ます。 ま た、 PNG 画像は、 その画像がア ク テ ィ ブな間は ロ ッ ク
さ れ ます。こ れは、画像が ロ ー ド さ れ る と 直ちに解放 さ れ る ビ ッ ト マ ッ
プ画像 と は対照的です。
20
新機能
レポー ト カ ラ ム と コ ン ト ロールのツールチ ッ プ
レポー ト カ ラ ム と コ ン ト ロールのツールチ ッ プ
ツールチ ッ プは、 レ ポー ト カ ラ ム ま たは コ ン ト ロ ール上でポ イ ン タ が
止ま っ た と き にテ キ ス ト を表示 し ます。 こ のテ キ ス ト は、 そのカ ラ ム
ま たは コ ン ト ロ ールの目的を説明す る ために使用 さ れ ます。 こ の機能
を使用す る には、 ツールチ ッ プ を作成す る カ ラ ム ま たは コ ン ト ロ ール
を選択 し て、 プ ロ パテ ィ ビ ュ ーで [ツールチ ッ プ] タ ブ を選択 し ます。
こ の タ ブ を使用 し て以下の内容を指定で き ます。
•
ツールチ ッ プのテ キ ス ト
•
ツールチ ッ プの タ イ ト ル
•
背景 と テ キ ス ト の色
•
ツールチ ッ プのア イ コ ン
•
ツールチ ッ プが表示 さ れ る ま で と 消え る ま での時間
•
ツールチ ッ プ を長方形 と し て表示す る か、 吹 き 出 し と し て表示す
るか
詳細については、 オ ン ラ イ ン ヘルプで ツールチ ッ プ プ ロ パテ ィ を参
照 し て く だ さ い。
InfoMaker 11.5
21