バインドに指定されたサイズが小さすぎたため、1 つ以上の列の値が切り捨てられました

キューブまたはディメンジョンの処理中に、下記のエラーが表示され生成に失敗することがある。
バックエンド データベースのアクセス モジュールでエラーが発生しました。 バインドに指定されたサイズが小さすぎたため、1 つ以上の列の値が切り捨てられました。
原因は、ファクトデータベース(=データウェアハウス)からキューブまたはディメンジョンにデータを取得する際に、フィールドのサイズが異なっており転送できないということである。筆者がハマッたのは、ファクトデータベースのテーブル定義を変更しあるフィールドのサイズをChar(50)からChar(100)に変更したが、SSASのデータソースビューにサイズ変更が反映されていないためこのエラーが発生しているようであった。これを解決するべく、SSAS側にデータソースビューを「最新の状態に更新」したところ、テーブルの列のプロパティのLengthが100に変わったことを確認できるが、問題は解決しない。

散々調べた結果、これを解決するためには、キューブのソースコードを修正しなければならないことがわかった。
具体的な手順は次の通り。
  1. 該当のキューブを選択し、右クリックでコードを表示する
  2. 該当カラムのDataSizeセクションを探し、カラムサイズを変更する。上記の例の場合は50から100に変更する
  3. キューブを処理する

トラックバック

トラックバックURL:
http://www.apricot-jp.com/cgi/mt/mt-tb.cgi/313

関連情報

・Analysis Serviecsのデータベース(キューブ)の名前を変更する方法
・SQL Server 2008へリモート接続する方法
・警告 : 属性リレーションシップに指定された名前と、関連属性の名前が異なります
・配置と処理および再接続の違い
・Reportingで表示する計算列 
・UDM(Unified Dimentional Model)の使い道
・キューブの集計がおかしい時
・バインドに指定されたサイズが小さすぎたため、1 つ以上の列の値が切り捨てられました
・列 "NAME" では、Unicode 形式の文字列データ型と Unicode 以外の形式の文字列データ型を変換できません
・ログオン失敗: 要求された種類のログオンは、このコンピュータではユーザーに許可されていません
・MDXクエリの簡単な作り方
・Adventure Workサンプルデータベースのインストール方法
・MDXクエリの結果を型付データセットに格納する方法
・データ ソース 'XXX' には、処理中の操作にはサポートされていない ImpersonationMode が含まれています。
・処理中の操作にはサポートされていない ImpersonationMode が含まれています。
・ユーザー 'XXXX' には、この操作を行うのに必要な権限が与えられていません。 (rsAccessDenied)
・VS.NETからReportServerへレポートを配置する方法
・ユーザー 'XXXX' には、この操作を行うのに必要な権限が与えられていません。 (rsAccessDenied)
・SQL Server 2005 SP1適用方法
・SQL Server 2005のインストール方法(その1)

Copyright(C) 2007 アーキテクト360 Allrights reserved.