mcpField
P
platform-validation-rule-generate

platform-validation-rule-generate

github.com/forcedotcomデータ・データベース1.1k6.2k 回インストール1 日前に更新
リポジトリ

platform-validation-rule-generate について

Salesforce の入力規則メタデータを作成・トラブルシューティングするスキルです。データ層のビジネスルールを適用する担当者向けに、数式、エラーメッセージ、関数の使い方、ファイル形式を案内します。

主な機能

  1. 01入力規則メタデータの生成
  2. 02レコード検証数式の作成
  3. 03エラーメッセージと有効状態の設定
  4. 04数式関数の使い方の確認
  5. 05XML と拡張子要件への準拠

活用シーン

  1. 01無効なレコードの保存防止
  2. 02オブジェクトへのデータ品質ルール追加
  3. 03入力規則のデプロイエラー調査

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/forcedotcom/sf-skills --skill platform-validation-rule-generate

インストール後、Claude Code で/platform-validation-rule-generateを入力して読み込まれたか確認します。

詳細

このスキルを使用する場面

次のような場合に、このスキルを使用します。

  • データ品質を確保するための検証ルールを作成する
  • 無効なレコードが保存されないようにする
  • 数式を使用して検証ルールのメタデータを生成する
  • オブジェクトにビジネスロジックの検証を追加する
  • 検証ルールに関連するデプロイエラーをトラブルシューティングする

仕様

ValidationRule メタデータ仕様

概要

検証ルールは、Salesforce のデータ品質とビジネスロジックを確保するために使用される宣言型メタデータコンポーネントです。レコードの保存時に数式を評価し、式が TRUE を返した場合は保存操作を阻止します。

目的

-データ層でビジネスルールを適用する -無効または不完全なレコードが保存されないようにする -ユーザーを適切に案内する、わかりやすいエラーメッセージを表示する

必須プロパティ
検証ルールの主要プロパティ
  • fullName

    • 検証ルールの一意な API 名
    • 先頭は文字である必要があります
      • 文字、数字、アンダースコアを含めることができます
    • アンダースコアで終わることはできません
    • 連続するアンダースコアを含めることはできません
    • 40 文字を超えることはできません。
  • active -検証ルールが有効かどうかを示します true → ルールが適用されます false → ルールは無効です

  • errorConditionFormula

  • レコードデータを評価する論理式

  • TRUE または FALSE を返す必要があります

  • TRUE の場合、検証ルールがエラーを発生させます

  • errorMessage

    • 検証に失敗したときにユーザーに表示されるメッセージ
  • 最大長:255 文字

関数ごとのガイドライン
  • TEXT - TEXT() 関数は Text 項目に使用してはいけません。これを修正するには、TEXT() 関数を削除するだけでかまいません。
  • CASE - Salesforce の CASE() 関数では、最後のパラメーターがデフォルト値です。管理者はこれを指定し忘れることが多く、CASE() 関数のパラメーター数は常に偶数です。
  • VALUE - VALUE() 関数は Text 項目にのみ使用してください。VALUE() 関数のパラメーターに数値が使用されている場合は、VALUE() 関数を削除してください。
  • DAY - DAY() 関数は Date 項目にのみ使用してください。DAY() 関数のパラメーターに Datetime 項目が使用されている場合は、まず Date に変換してください。
  • MONTH - MONTH() 関数は Date 項目にのみ使用してください。MONTH() 関数のパラメーターに Datetime 項目が使用されている場合は、まず Date に変換してください。
  • DATEVALUE - DATEVALUE() 関数は DateTime 項目にのみ使用してください。DATEVALUE() 関数のパラメーターに Date が使用されている場合は、DATEVALUE() 関数を削除してください。
  • ISPICKVAL - 選択リスト型項目の等価性を確認する場合は、ISPICKVAL() 関数を使用する必要があります。
  • ISCHANGE - レコードの値が変更されたかどうかを確認するには、ISCHANGE() 関数を使用してください。
重要なルール
  1. 数式の XML 処理(最もよくあるエラー)

    • errorConditionFormula に XML タグが含まれる場合は、必ずメタデータ XML 内の CDATA セクションに記述してください。
  2. 「更新」指示の解釈。数式の変更指示を受けた場合は、置き換えと追加を区別してください。

    • 「数式を[アクション]に更新する」:既存の数式ロジックを新しい要件で完全に置き換えます。
    • 「数式を[アクション]も行うように更新する」:既存のロジックを維持し、新しい要件を追加します(通常はロジックを AND() 関数または OR() 関数で囲みます)。
  3. ファイル形式の要件

    • 検証ルールのファイルには、必ず .validationRule-meta.xml 拡張子を使用してください。

コメント