サポート > リポジトリ > 計算式 > モデル参照
ja | en

モデル参照項目では「ID部」と「内容部」があります。自動計算式中、どの部分を使うのかを指定することができます。

モデル参照項目は ID 部と内容部から構成されます。次に示すような形式で扱うことができます。

例:スタッフモデルの構成

ID部 内容部
1000 山田 太郎
1001 鈴木 一郎

ここで、上記のスタッフモデルを参照する項目 staffname を用意したとします。
自動計算式の中では、次のような指定を行うことができます。

${staffname}

内容部を取得します。戻り値の型はスタッフモデルへの「参照先モデル項目」に指定した項目の型になります。 上の例では "山田 太郎" "鈴木 一郎" という文字列が返されます。

${staffname#id}

ID部を取得します。戻り値の型はスタッフモデルへの「参照モデルの主キー」になります。型はスタッフモデルの主キー項目の型と同じになります。 上の例では 1000, 1001 という数値が返されます。

${staffname#content}

${staffname} と同じ意味になります。

ユーザー定義チェックにおける内容部の取得

ユーザー定義チェックの場合、内容部を取得するためには常に #content 指定が必要になります。 上の例では${staffname} ではなく、${staffname#content} をお使いください。

連結された内容部の扱い

複数の項目を連結して表示する設定を行った内容部は、式で参照することはできません。

リストボックス項目の扱い

リストボックスとして参照している項目を式中に指定した場合、新規登録画面を開いたときの初期値は null となります。これは選択肢の先頭が「(未選択)」となっているためです。よって未選択項目を作成しない場合の初期値は、表示されている選択肢の先頭の値を(#id や #content を指定して)取得することができます。

選択肢の絞り込み指定を行った場合、未選択項目を作成しない場合でも初期値は null となります。(絞り込み操作を行うことで、はじめて選択値がセットされます。)

参照連動項目は #id, #content 指定を行うことはできません。転記された値をそのまま取り扱います。

参照連動元の項目は図1に示すように ID 値が格納されます。

図1 参照連動項目の取り扱い

ここで「単価モデル」の「内容」を用いたい場合は、図2のように内容部を参照連動してください。

図2 参照連動をつなぐ

${XXX#id}の型は参照先モデルの主キーの型となります。

このため、関数内で利用する場合は必要に応じてTOSTRを用いて文字列に変換する、VALUEを用いて数値に変換するといった対応を行うことがあります。

例:モデル参照(リストボックス)の項目 item1 が選択済みのとき、選択された ID 値を返す。そうでなければ 文字列「(未選択)」を返す。(この演算結果は文字列型の項目に格納する、としています。)

IF(SELECTED(${item1}), TOSTR(${item1#id}), "(未選択)")

item1#id は整数型であるため関数 TOSTR で囲み、文字列型へ変換しています。

ジョブで用いる式(メール送受信ジョブにおける起動条件、成功時・失敗時の式など)記述では、モデル参照項目に対して #content 指定を行うことができません。#id のみ、利用できます。