1
0

rex0220 計算式プラグイン テーブルソート TABLE_SORT関数版

Last updated at Posted at 2024-03-03

計算式プラグインで、TABLE_SORT関数を使用したテーブルソート・フィルターを行います。

概要

TABLE_SORT 関数で、テーブルのソート・フィルターを行います。
テーブル内項目の値で自動的にソート・フィルター処理を行うと編集中の行位置が変わってしまうので、ボタンクリック時にソート・フィルター処理を行います。

テーブル内項目にルックアップ・添付ファイル項目がある場合は、レコード保存後イベントでソートします。
※編集画面表示中にプラグインでテーブル行位置を変えると、ルックアップ・添付ファイル項目に行位置のズレが生じます。

  • TABLE_SORT 関数は、計算式プラグイン Ver.76 で追加されます

2024-03-03_19h09_28.png

操作例

ボタンクリックによるテーブルソート・フィルター操作

2024-03-03_19h33_07.gif

テーブル内項目にルックアップ・添付ファイル項目がある場合は、レコード保存後イベントでソートします。

2024-03-03_19h37_15.gif

アプリ設定

ボタンを表示するためのスペース項目を追加して、要素IDを設定します。

2024-03-03_20h00_29.png

計算式プラグイン設定

テーブルの計算式に TABLE_SORT関数を指定する場合は、「循環参照を許可」をチェックします。

2024-03-03_20h03_56.png

テーブル内項目にルックアップ・添付ファイル項目がある場合は、レコード保存後イベントを「IF(EV_INFO("mode")="success"&&更新日時」で判定します。
※計算式に更新日時を指定すると、レコード保存後イベントが実行されます。

.js
OPTION: 循環参照を許可

// header1:($HEADER1) HEADER
DIALOG(ARRAY("日付順にソート","日付順にソートします"),
  FSET(テーブル,
    TABLE_SORT(テーブル,
      TPSORT(日付)
    )
  )
)

// sp1:(sp1) SPACER
BUTTON("数値順にソート",
  FSET(テーブル,
    TABLE_SORT(テーブル,
      TPSORT(数値)
    )
  )
)

// sp2:(sp2) SPACER
BUTTON("数値の逆順にソート",
  FSET(テーブル,
    TABLE_SORT(テーブル,
      TPSORT(数値,0)
    )
  )
)

// sp3:(sp3) SPACER
DIALOG(
  ARRAY("数値未入力を削除","数値が未入力の行を削除します"),
  FSET(テーブル,
    TABLE_SORT(テーブル,
      TPFILTER(数値>0),
    )
  )
)

// テーブル.番号 NUMBER
ROWNO(テーブル)+1

// テーブル2 SUBTABLE (editable)
IF(EV_INFO("mode")="success"&&更新日時,
  TABLE_SORT(テーブル2,
    TPSORT(数値_0)
  )
)
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0