CSVDocument

Q1
CSVDocumentのデータをページ単位で切り出す
A1
CSVDocumentの切り出しにはspliceメソッドを用います。

spliceメソッドにて行数を指定すると、指定行以降が新しいオブジェクト(返り値)に、残りの行が元のオブジェクトに残ります。
この特性を利用して、spliceの処理を2回行うことで任意のページのデータを取得することができます。
ただし、spliceメソッドを用いると元のCSVDocumentのデータが変わってしまうため、事前にコピーを取ってから行うことをお勧めします。


[サンプルコード]

CSVDocumentから10行単位の2ページ目のデータ(11〜20行目)を切り出してSpreadに反映
Form Form1 {
    :
    CSVDocument csv_data;
    csv_data << CSV {
        "1",aaa
        "2",bbb
        :
        "24",zzz
    };
    Spread Spread1 {
        :
        SpreadRow SpreadRow1 {
            SpreadColumn SpreadColumn1;
            SpreadColumn SpreadColumn2;
        }
    }
    if (!$DESIGNTIME) {
        var current_page = 2; /* 現在ページ */
        var page_per_rows = 10; /* 1ページの行数 */

        var csv_data_tmp = new CSVDocument;
        /* ここでCSVDocumentをコピー */
        csv_data_tmp << csv_data;
        /* 現在ページの開始行以降のデータを取得 */
        var csv_tmp = csv_data_tmp.splice((current_page-1)*page_per_rows);
        /* 現在ページの終了行以降のデータを切り捨て */
        csv_tmp.splice(page_per_rows);
  
        Spread1.SpreadRow1.truncate();
        Spread1.SpreadRow1 << csv_tmp;
    }
}
管理番号:Csv_001
  Biz-Collections Bizの宝箱 トップへ
  Biz/Browser・Biz/Designer TIPS集 トップへ