SMART datagrid v.1 > Examples

Back  Forward

Load Tree Data  Example  準備中...

TreeDataLoader.loadを利用すればサーバーから取得したいろんな形式の原本データを TreeDataSetとしてロードすることができる。 

Code -1
    new TreeDataLoader(dataSet).load('csv', data, {
        start: 1,
        quoted: true,
        ...
    });

loadメソッドのはじめてのパラメーターはデータの形式を指定する。現在'csv''json''xml'三つを支援する。 dataは原本データであるが、はじめてのパラメーターに指定した形式によって文字列かJson客体、もしくはXMLドキュメント客体でありえる。 

既存にあったデータ行達をすべて削除した後新しい行達を生成して、 ロード完了の後onRowCountChangedイベントが発生する。 

1. Csvデータ

以下のような形式でセーブされたcsvファイルをサーバーから取得してツリーデータセットを構成する。 最初の行はフィールドの名前が入っているのでロードオプションのstart1になる。 また、値をクォーテーションマークで包んだフィールド達が存在するのでquotedtrueに指定して、 NUMBERフィールドの値に数字てはない文字が入っているのでcurrencytrueに指定する。 オプションに指定できる値たちについての詳しい説明はTreeDataLoader.loadトピックを参考する。 

重要なオプションはtreeFielduseTreeFieldだが、下のファイルでは二つ目のフィールドにツリー情報があるので treeFieldは1になり、このフィールドの値たちはデータセットにセーブされないようにuseTreeFieldはfalseになる。 より詳しい説明はloadトピックを参考する。 

Icon,Tree,Loan Number,Country,Interest Rate,Currency of Commitment,Project ID,Original Principal Amount,Cancelled Amount,Disbursed Amount,Repaid to IBRD,Sold 3rd Party,First Repayment Date,Last Repayment Date
0,1,IBRD00010,France,4.25,USD,P037383,"$250,000,000.00 ",$0.00 ,"$250,000,000.00 ","$38,000.00 ","$249,962,000.00 ",11/01/1952,05/01/1977
0,1.1,IBRD00020,Netherlands,4.25,USD,P037452,"$191,044,211.75 ",$0.00 ,"$191,044,211.75 ","$103,372,211.75 ","$87,672,000.00 ",04/01/1952,10/01/1972
0,1.2,IBRD00021,Netherlands,4.25,USD,P037452,"$3,955,788.25 ",$0.00 ,"$3,955,788.25 ",$0.00 ,"$3,955,788.25 ",04/01/1953,04/01/1954
0,1.2.1,IBRD00030,Denmark,4.25,USD,P037362,"$40,000,000.00 ",$0.00 ,"$40,000,000.00 ","$17,771,000.00 ","$22,229,000.00 ",02/01/1953,08/01/1972

Csv形式でセーブされたtextファイルを読み取る。 

Tree - 1
rows
2. Jsonデータ

以下のようなJsonアレイをデータセットとしてロードするためにはまずタイプを"json"に指定して、 rows, childRowsオプションを指定すればいい。 Rowsは最上位行として取得する客体達がどんなものたちであるかを指定することで、 childRowsは以後に子行のアレイがどのプロパティーに入っているかを指定することである。 このサンプルではアレイの最上位項目をデータセットの最上位行達として生成するために Rowsを空の文字列で指定して、"rows"プロパティーで指定したjsonアレイを子行達として取得するために childRowsは"rows*で指定する。 

プロパティーについてのより詳しい説明はTreeDataLoader.loadトピックを参考する。 

[
  {
    "icon": "0",
    "loan_number": "IBRD00010",
    "country": "France",
    "first_date": "11/01/1952",
    "last_date": "05/01/1977",
    "rows": [
      {
        "icon": "0",
        "loan_number": "IBRD00020",
      },
      {
        "icon": "0",
        "loan_number": "IBRD00021",
        "country": "Netherlands",
        "rows": [
          {
            "icon": "0",
            "loan_number": "IBRD00030",
            "country": "Denmark",
          },
          {
            "icon": "0",
            "loan_number": "IBRD00040",
          }
        ]
      },
      {
        "icon": "0",
        "loan_number": "IBRD00050",
      }
    ]
  },
  {
    "icon": "1",
    "loan_number": "IBRD00060",
    "country": "Chile",

Json形式でセーブされたtextファイルを読み取る。 

Tree - 2
rows
3. Xmlデータ

以下のようにXmlテキストファイルで渡されたデータをツリーデータセットとしてロードするためにはまずタイプを"xml"に指定して、 rowschildRowsオプションを指定すればいい。 Jsonの場合と比べてプロパティーの名前は同じだが指示する内容は異なる。 

Rowsはデータ行として取得するxml elementたちのtag名である。 下のサンプルではrowだ。 childRowsは子行達を取得するelement達を含めたelementのtag名である。 サンプルではrowsである。このプロパティーは指定しないこともできるが子element達を含む上位elementが他に存在せず、 すぐ下にrowsで指定したelement達が含まれている場合である。 

プロパティーについてのより詳しい説明はTreeDataLoader.loadトピックを参考する。 

<?xml version="1.0" encoding="UTF-8"?>
<rows>
    <row>
        <icon>0</icon>
        <tree>1</tree>
        <loan_number>IBRD00010</loan_number>
        <country>France</country>
        <first_date>11/01/1952</first_date>
        <last_date>05/01/1977</last_date>
        <rows>
            <row>
                <icon>0</icon>
                <tree>1.1</tree>
                <loan_number>IBRD00020</loan_number>
            </row>
            <row>
                <icon>0</icon>
                <tree>1.2</tree>
                <rows>
                    <row>
                        <icon>0</icon>
                        <tree>1.2.1</tree>
                        <loan_number>IBRD00030</loan_number>
                    </row>
                    <row>
                        <icon>0</icon>
                        <tree>1.2.2</tree>
                        <loan_number>IBRD00040</loan_number>
                    </row>
                </rows>
            </row>
            <row>
                <icon>0</icon>
                <tree>1.3</tree>
                <loan_number>IBRD00050</loan_number>
            </row>
        </rows>
    </row>
    <row>
        <icon>1</icon>
        <tree>2</tree>
        <loan_number>IBRD00060</loan_number>
        <rows>
            <row>
                <icon>1</icon>
                <tree>2.1</tree>
                <loan_number>IBRD00070</loan_number>
                <repaid_amount>$0.00</repaid_amount>

Xml形式でセープされたtextファイルを読み取る。 

Tree - 3
rows

ソースを見る 

See Also
TreeDataLoader.load
TreeDataSet
TreeView
ツリー概要
Examples
ツリーデータセット