参考: モデル シートの検証ルール
モデル シートの検証ルールを作成する場合、行のドット表記のブール式と列コードを使用します。 読みやすくするために、行と間隔を追加できます。 # を使用してコメントを含めることもできます。
無効な式を入力すると、エラー メッセージが表示され、問題の解決に役立つ可能性があります。
式で正しいデータ タイプの列を使用することを手動で確認する必要があります。 これらの関数は、以下のデータ タイプでサポートされます。
関数 | サポートされているデータ タイプ |
|---|---|
day | 日付 |
div | 数値またはチェックボックス |
条件 | 論理 |
isblank | すべてのデータ |
長さ | String |
month | 日付 |
四半期 | 日付 |
部分文字列 | String |
switch | 日付、数値、文字列 |
toDate | 日付 |
toNumber | String |
year | 日付 |
検証ルールの例
ルール | 式 | タイプ |
|---|---|---|
ラベルは 4 文字以上である必要があります。 | length(ROW.Label) > 4 | True |
"価格設定の例外" に値がある場合を除き、"販売価格" は "購入価格" 以上の値である必要があります。 | if (isBlank(ROW.pricing_exception), ROW.purchase_price, ROW.selling_price) >= ROW.purchase_price | True |
"終了日" は "開始日" と同じかそれ以降の日付を指定する必要がありますが、これは "終了日" が入力されている場合に限ります。 | if (not(isblank(ROW.end_date)),ROW.end_date, ROW.start_date) >= ROW.start_date | True |
開始日は、2020 年 12 月 21 日より前である必要があります。 | ROW.StartDate < to date (2020, 12, 21) | True |
開始日は CY2023 以降である必要があります。 | year(ROW.StartDate) >= 2023 | True |
"ラベル" 列に入力されるすべての値が、必須接頭辞 "required-prefix" で始まることを必須にします。 | if (isblank(ROW.Label),"required-prefix",substring(ROW.Label, 1, 15)) = "required-prefix" | True |
採用日が第 3 四半期または第 4 四半期にある場合は、"採用の例外" を入力する必要があります。 | not (isblank(if (quarter(ROW.hire_date) >= 3,ROW.hiring_exception,"exception_not_required"))) | True |
"変更リクエスト" が選択されている場合、"コメント" は空欄にできません。 | ROW.ChgRqst=0 または (ROW.ChgRqst = 1 and not(isblank (ROW.comment))) | True |
Level が QA の場合、社員には年間給与が必要です。 | ROW.Level!="qa" または (ROW.Level = "qa" and ROW.per = "yr") | True |
空白でない場合、"社員数" は 1 より大きい値でなければなりません。 | isblank(ROW.numEmployee) or (not(isblank(ROW.numEmployee)) and ROW.numEmployee > 1) | True |
TAM の値が収益より大きい必要があります。 | ROW.tam > ROW.Rev | True |
週あたりの時間数は、20 ~ 40 の間でなければなりません。 | ROW.HoursPerWeek >= 20 および ROW.HoursPerWeek <= 40 | True |
"承認済" の場合、"Fieldmarkscore" は 1 より大きい必要があります。 | Row.Approval != "yes" or (ROW.Approval = "yes"amd ROW.fieldMgrScore >=1) | True |
すべての社員 ID (テキスト列) は、200 未満の数値で開始する必要があります。 | tonumber (ROW.EmployeeID) <200 | True |
給与が 10% 増加した場合は、コメントが必要です。 | (div(ROW.Input_Total_Base_Pay - ROW.Total_Base_Pay, ROW.Total_Base_Pay) <0.1) or not isblank(Row.Memo) | True |
経費勘定科目が入力されると、"リクエスト者の氏名" と "コスト センターの所有者" も入力する必要があります。 | isblank(ROW.ExpenseAccount) or not (isblank(ROW.ExpenseAccount) or isblank(ROW.NameOfRequestor) or isblank(ROW.Cost CenterOwner)) | True |
資産クラス値は IT 製品と関連付ける必要があります。 | Switch (ROW.AssetClass, " Hardware", "it Product", "software", "it Product", "non IT Product") = "IT 製品" | True |
役員の新規採用を計画している場合、コメントが必須です。 | ROW.Position_Status="open" かつ ROW.Supervisory_Organization = "Supervisory_execury_management_group" かつ isblank(ROW.Memo) | False |
TAM を空白にすることはできません。 | isblank(ROW.tam) | False |