データ連結したSPREADに値を入力すると正しく更新できない
対象製品
SPREAD for .NET 2.5J Web Forms Edition
詳細
データ連結したSPREADに値を入力し更新しようとするとサーバー側でエラーが発生することがあります。値を入力したセルの背景色やテキスト色が変化します。これはSPREADがデータモデルの更新に失敗しサーバー側でエラーが発生したことを示しています。
製品ではデータ連結した場合、データソースの各フィールドについてデータ型を参照し、コントロール各列のセル型を自動的に設定します。例えばデータベースのDateTime型フィールドがコントロール上では日付型セルに設定されるという具合です。
製品では日付型に'ああああ'と入力するなど、セル型に一致しないデータを更新しようとした場合、入力検証にてエラーとなり更新が失敗します。
上記の動作に対処するためには、データ連結後にアプリケーション側にてセル型を設定し、セル型に基づく入力検証を徹底する必要があります(データ連結後にアプリケーション側にてセル型を設定するにはSheetViewのDataAutoCellTypesプロパティをFalseに設定して下さい)。
またセル型はコントロールに対する値の入力・出力動作を決定するものです。コントロールのデータモデル自体のデータ型を決定するものではありません。そのため例えばセル型を文字型に設定してもデータモデルが整数型の場合、文字列を入力して更新しようとするとデータモデルを更新することができずサーバー側でエラーが発生します。
製品ではデータ連結した場合、データソースの各フィールドについてデータ型を参照し、コントロール各列のセル型を自動的に設定します。例えばデータベースのDateTime型フィールドがコントロール上では日付型セルに設定されるという具合です。
製品では日付型に'ああああ'と入力するなど、セル型に一致しないデータを更新しようとした場合、入力検証にてエラーとなり更新が失敗します。
上記の動作に対処するためには、データ連結後にアプリケーション側にてセル型を設定し、セル型に基づく入力検証を徹底する必要があります(データ連結後にアプリケーション側にてセル型を設定するにはSheetViewのDataAutoCellTypesプロパティをFalseに設定して下さい)。
またセル型はコントロールに対する値の入力・出力動作を決定するものです。コントロールのデータモデル自体のデータ型を決定するものではありません。そのため例えばセル型を文字型に設定してもデータモデルが整数型の場合、文字列を入力して更新しようとするとデータモデルを更新することができずサーバー側でエラーが発生します。
キーワード
データ連結
この文書は、以前は次のFAQ IDで公開されていました : 9154