Skip to content

v2.2.0 ステータス名の整合性チェック

Latest

Choose a tag to compare

@youtotto youtotto released this 10 Aug 04:32
· 1 commit to main since this release

kintone App Toolkit v2.2.0

ステータス名の整合性チェックを追加しました。

フィールドコードと同じく、ステータス名も変更・削除すると参照が置き去りになります。
v2.1.0 で追加した整合性チェックを、ステータス名にも広げました。


追加

存在しないステータス名への参照を検出

プロセス管理のステータス名を変更・削除しても、条件式や JavaScript は追随しません。
その結果、条件が永久に成立しなくなり、処理が無言で動かなくなります。

設定の条件式(一覧・通知・アクセス権など)

[一覧] 旧一覧      条件式のステータス指定  →  差戻し
[通知] 承認依頼    条件式のステータス指定  →  審査中

JavaScript

const nStatus = event.nextStatus.value;
switch (nStatus) {
  case 'S25:9月変社保料チェック中':   // ← このステータスは存在しない
  ...
}

検出結果は Health タブの整合性チェックに、フィールドコードの検出と並べて表示されます。
依存関係レポート(Markdown)にも含まれます。

対応している書き方

kintone のプロセス管理カスタマイズで実際に使われる形に合わせています。

対象
プロセスイベント event.nextStatus.value / event.status.value
ステータスフィールド record['ステータス'].value / record.ステータス.value
変数への代入 const nStatus = event.nextStatus.value; → 以降の nStatus を追跡
比較 === / == / !== / !=(左右どちらに文字列が来ても検出)
分岐 switch (nStatus) { case '...': }

コメント内の記述は検出対象外です。


仕様

  • 確度は「可能性が高い」 — 条件式や JavaScript からの文字列抽出に依存するため、断定しません
  • プロセス管理が無効なアプリでは検証しません — ステータスが未定義の状態では、すべてが「存在しない」と判定されてしまうため
  • ステータスフィールドが無いアプリでも、event.nextStatus.value 経由の判定は検証できます

表記の変更

検出対象がフィールドコードだけでなくなったため、表示を変更しました。

箇所 変更前 変更後
Health の見出し 存在しないフィールドコードへの参照が N 件あります 存在しない参照が N 件あります
表の列名 存在しないコード 存在しないコード / 名前
レポートの節 存在しないフィールドコードへの参照 存在しない参照(フィールドコード・ステータス名)

更新にあたって

解析ロジックを更新したため、JavaScript 解析のキャッシュは自動的に無効になります
Toolkit を開き直すと再解析され、結果に反映されます。
すぐに確認したい場合は Field Scanner の「Scan」を実行してください。