メインソース特性

[データビュー]エディタ内のメインソース定義でパークした場合、[メインソース特性]シートが表示されます。表示されない場合、Alt+Enterを押下するか、[編集]メニューやコンテキストメニューから[特性]を選択してください。

[メインソース特性]では、[データ]リポジトリからデータソースを選択することができます。このデータソースのレコードは、実行タスクで随時読み込まれます。

オンラインタスクやブラウザタスクの場合、エンドユーザがレコードからレコードに移動することでメインソースにアクセスすることができます。この方法が、エンドユーザにとっての唯一のレコード処理であることを意味しています。

バッチタスクの場合は、データソースのレコードは自動的に繰り返しアクセスされます。バッチタスクの動作を参照してください。

ヘッダ行に「SQLコマンド」が定義されている場合、[メインソース特性]にアクセスできません。

データベースファイルの代わりにスクラッチファイルを使用する場合、メインソース定義は、デフォルトの「0」のままにしてください。バッチタスクでスクラッチファイルを使用すると、タスクを無限ループさせることができます。

オンラインタスクの場合、カスタマイズメニューや印刷処理の起動プログラムのように、データベースを使用する必要がない場合にスクラッチファイルが使用できます。

[メインソース特性]には、以下の特性があります。

特性

内容

詳細

 

データソース番号

[データ]リポジトリに定義されたXMLドキュメントやデータベーステーブルを指定することができます。このデータソースのレコードは、実行タスクで随時読み込まれます。

データソースを選択すると、[データソース名]特性にデータソースの名前が表示されます。

ヘッダ行に「SQLコマンド」が定義されている場合、[メインソース特性]にアクセスできません。

データソース名

blue_up.jpg

ここには、データソース名が表示されます。同じ名前のデータソースが複数リンクされた場合、名前を区別するために、この特性を変更することができます。ただし、空白にすることはできません。

SQLコマンドの場合は、タスクが発行するSQLコマンドが表示されます。SQLコマンドは、1つのデータベースにのみ発行することができ、2つの物理的に隔てられているデータベース上のテーブルを参照することができません。Magic uniPaaSがサポートする機能によって複数のデータベースのテーブルから構成されているデータビューを取得することができます。

インデックス

blue_up.jpg

デフォルトのインデックスは、[インデックス]テーブルの最初に定義されたインデックスです。インデックスを指定すると、タスクがデータビューレコードを取り出す順番が決まります。[インデックス(式)]特性を使用して定義することもできます。

[インデックス]の値が「0」に設定されており、[インデックス(式)]が使用されない場合は、インデックスを使用せずに物理的な順序でレコードが取り出されます。

SQLコマンド定義の場合は、この特性にアクセスできません。

アクセス

blue_up.jpg

この特性は、マルチユーザ環境でのテーブルのアクセス方法を指定します。

  • R=読込 …… 読み取り専用アクセスの場合です。

  • W=書出 …… 読み取り/書き込みアクセスの場合に指定します。

プログラムに[リンク]コマンドを定義する場合、[リンクタイプ]にもとづいて以下のように設定されます。

  • R=読込 …… 照会リンク、結合リンク、外部結合リンク

  • W=書出 …… 書込リンク、登録リンク

APGを実行してリンクが定義されるプログラムを作成した場合、アクセスモードは、「読込」になります。

SpecialLinkWriteAccess という特殊フラグを使用することで、旧バージョンと同じような動作にすることができます。

詳細については、「マルチユーザ環境」を参照してください。

データ

 

データソース(式)

blue_up.jpg

この特性には、実行中にデータソースの物理ファイル名を式で指定します。この特性が指定されていない場合、[データソース番号]で指定された[データ]リポジトリに定義されているデータソース名を使用します。

この特性を利用することで、同じデータ構成の異なるデータソースを使用することができます。

XMLソースに対するデータソース(式)

[データソース(式)]特性は、[XMLソース項目]特性が空白の場合のみ有効です。この特性は、英数字が返る式のみ指定できます。

この特性には、XMLファイルをパスやURLで指定する式を定義します。

ここには、XMLの内容そのものではなくファイル名で指定します。例えば、“c:\my.xml”, "http:/localhost/my.xml" と言うように指定します。

XML ソース項目

blue_up.jpg

[XMLソース項目]特性は、XMLソースでのみ有効です。この特性には、BLOB型項目を指定できます。指定された項目はXMLに変換されます。タスクは、この項目を読み書きすることができます。

ここからズームして[項目一覧]を表示できます。ここには、メインプログラムを除く上位タスクと自タスクのBLOB型項目が表示されます。

拡張

 

共有

blue_up.jpg

この特性は、マルチユーザ環境で同時実行している他のタスクがどのようにテーブルにアクセスできるかを指定します。

  • R=読込 …… 他のタスクに読み取り専用アクセスだけを許可する時に使用します。

  • W=書出 …… 他のタスクにも読み取りと書き込みアクセスを許可する時に使用します。この場合には、行ロックによる排他制御が行われます。

  • N=なし …… 共有アクセスを許可しない時に使用します。この場合にはテーブルレベルで排他ロックがかかります。

[アクセス]と[共有]が両方とも「W=書出」の場合、レコードロックが実行されます。また、[アクセス]が「W=書出」で[共有]が「R=読込」の場合、テーブルの共有が可能になります。さらに、[共有]が「N=なし」の時には、テーブルは排他使用となります。

アクセス/ 共有モードの詳細については、「マルチユーザ環境」を参照してください。

オープン

blue_up.jpg

この特性には、以下のオプションがあります。

  • N=標準 …… 通常はこのオープンモードを利用します。

  • R=再索引 …… ISAM系のデータベースでのみ有効です。このオープンモードは、テーブルをオープンする時にMagic uniPaaSが全てのインデックスを削除し、タスクの実行が終了し、テーブルをクローズする時にインデックスを再構築するように指示します。作成モードで大きなテーブルをインポートする場合、あるいはテーブルに対して大量のインデックス値の修正を実行しなければならない場合などに、[再索引]オープンモードはパフォーマンスを向上させる機能があります。全てのインデックスを除去しておくことにより、挿入または修正のたびに行われるインデックス操作(Pervasive SQL のB ツリーをバランス化する処理など)のための時間が不要になります。処理が終了すると、Magic uniPaaSはテーブル全体に対してインデックス構造を作成します。
    [再索引]オープンモードが使えるか否かは、データベースゲートウェイがサポートしているかどうかに依存します。このオープンモードを指定した場合、重複不可のインデックスに重複するキー値を入力すると、インデックス再構築の処理で予期しない結果が生じることがあります。例えば、Pervasive SQL はインデックス再構築の処理をそのまま中止します。他のデータベースゲートウェイはその重複する行をスキップする場合があります。

更新レコードの識別

blue_up.jpg

データベースを更新する前に、別のユーザが修正した行を識別できるようにするため、SQL テーブルに対するWhere 句の作成方法を指定できます。

この特性には、以下のいずれかのオプションを指定できます。

  • P=位置

  • S=位置と選択項目

  • U=位置と更新項目

  • S=メインソースに依存

この特性は、遅延トランザクションを使用しているタスクのSQL系のリンクテーブルにのみ適用されます。

XMLソースの場合は、「S=メインソースに依存」の状態で無効になっています。共有は、「N=なし」に設定されています。

関連トピック: