DataViewToDNDataTable

 

データビューから.NETデータテーブルオブジェクトを作成

現在のデータビューから.NETデータテーブルのオブジェクトを作成します。

構文:

DataViewToDNDataTable (世代番号, タスクの項目名, 出力項目名 )

パラメータ:

  • 世代番号 …… タスクの階層位置を表す番号。カレントのタスクが0、親タスクが1、その親タスクが2 などとなります。

  • タスクの項目名(文字) …… 出力する項目の名前をカンマ区切りでリストアップした文字列

  • 出力項目名(文字) …… 出力される項目の名前をカンマ区切りでリストアップした文字列。空白の場合、ヘッダが出力されません。「@」が指定された場合、タスクに定義された項目名でヘッダが出力されます。名前にカンマが含まれている場合、その前に「\」を設定してください。

戻り値:

現在のデータビューを基にした.NETデータテーブルのオブジェクト

用途:

以下のような場合にこの関数を使用することができます。

  • インタラクティブなリッチクライアントタスクでデータを表示する場合に現在のデータビューを出力したい場合

  • 非インタラクティブなリッチクライアントタスクで、データを表示することなく出力したい場合
    この場合、関数そのものがデータビューを作成してスキャンするため、データビュー定義を保持するタスクはレコードをスキャンすることなく終了することができます。このタスクは、以下のように定義することができます。

メインデータソースを定義し、出力したいデータに基づいて、カラムに範囲条件を指定します。

[タスク後]ロジックユニットで関数を呼び出します。

[タスク終了条件]特性を「Y」に設定し、[チェック時期]特性を「前置」に設定します。この場合は、タスクは全てのレコードのスキャンするわけではありません。

注意事項:

  • これは、クライアント側の関数です。関数はすべてのデータビューのレコードを取得するためにサーバに要求しますが、リッチクライアントで使用された場合、.NETオブジェクトはクライアントで作成されるため、.NETコントロール用に利用できます。

  • 関数は非インタラクティブなタスクで使用することもできます。このため、即終了する非インタラクティブなサブタスクを呼び出して、データビューのすべてのレコードを含んだ.NETデータテーブルを取得することができ、これを親タスクのDataGridコントロールで使用することができます。

  • 特定の値のみでテーブルを作成したい場合は、テーブルの範囲を使用することができます。

  • .NETからエラーが発生した場合、関数はNULLを返し、.NET例外を発生します。DNexceptionOccured()関数は、Trueを返し、DNException()関数は、例外オブジェクトの参照情報を返します。

  • 項目名リストが‘@’と評価された場合、データ項目リストに基づいてタスクで定義されたヘッダを出力します。

  • タスク項目名にOLEやBLOB、.NET、ベクトル型の項目がある場合は、「False」が返ります。

モバイル仕様:

モバイル環境ではサポートされません。