「TableをX++で作るには?」の編集履歴(バックアップ)一覧に戻る

TableをX++で作るには? - (2012/04/24 (火) 16:31:02) のソース

TableをX++で作るには、AOTの操作関数を使います。

クラスを作成し(例:TableManagerClass)、以下のようなメソッドを定義します。
> static void CreateTable(str _tablePath, str _tableName)
> {   
>    // テーブルを作成する
>    TreeNode      treeNode;
>    ;
> 
>    if(TreeNode::findNode(_tablePath + _tableName)) // テーブルが既に存在した場合
>    {
>        info(_tablePath + _tableName + " は既に存在しています");
>    }
>    else
>    {
>        // 追加先のノードを取得
>        treeNode = TreeNode::findNode(_tablePath);
>    
>        // テーブルを追加
>        treeNode.AOTadd(_tableName);
> 
>        // AOTと同期させる
>        SqlDataDictionary::synchronize();
>        
>        info(_tablePath + _tableName + " を追加しました");
>    }
> }

Jobを作成し、以下のように書きます。
> static void JobCreateTable(Args _args)
> {
>    // テーブルを作成する
>    str tablePath;
>    str tableName;
>    ;
> 
>    // テーブルのパスとテーブル名
>    tablePath = "\\Data Dictionary\\Tables\\";
>    tableName = "Table_Test";
>    
>    // テーブルを生成する
>    TableManagerClass::CreateTable(tablePath, tableName);
> }

Jobを実行するとテーブルが作成されます。
(既にテーブルが存在する場合には、メッセージのみ表示しています)