カスタマイズ対象のレコードと紐づくレコードを更新するという点においては、やること「レコードを更新する(キーの値を直接指定)」と同じですが、紐づくレコードが更新先アプリに存在しない際にレコード追加ができるのが、やること「レコードを更新または追加する(キーの値を直接指定)」です。
この記事では、やること「レコードを更新または追加する(キーの値を直接指定)」を用い、キーの値を元に同じレコードがあれば更新、同じレコードがなければ追加するカスタマイズを作ります。実行例は次のようになります。
アプリ
カスタマイズ例を確かめるためには、2つのアプリを作成します。
※今回動かすのに必要最低限となるフィールドのみ記載しています
活動履歴
※フィールド名とフィールドコードは同じものを指定
案件管理
※フィールド名とフィールドコードは同じものを指定
カスタマイズ
カスタマイズは「活動履歴」アプリに対して行います。
また、アクションは次のように設定してください。
ボタンを配置する
やること「ボタンをメニュー位置に配置する」、条件「詳細画面を表示した時」を用います。
ボタンを押したらレコードを更新または追加する
やること「レコードを更新または追加する(キーの値を直接指定)」、条件「ボタンを押した時」を用います。
「やること」のパラメータで、キーとなるフィールドとキーの値は「案件ID」を設定し、マッピングは次の画像の要領で設定します。
カスタマイズのポイント
このカスタマイズは、やること「レコードを更新する(キーの値を直接指定)」を使った時と似ていますが、違うところは更新の対象となる、キーで紐づくレコードがなかった場合の動きです。
レコード更新をする際には「キー」が必要になります。レコード更新でパラメーターに指定した「キー」を持つ更新先のアプリのレコードを探して見つかった場合にレコード更新を行います。
ここまでは、やること「レコードを更新する(キーの値を直接指定)」と同じですが、やること「レコードを更新または追加する(キーの値を直接指定)」の場合は、指定した「キー」を持つレコードが見つからなかったときに「レコード追加」をする点が大きな違いです。
今回の例では、「活動履歴」アプリの「案件ID」フィールドと、「案件管理アプリの「案件ID」フィールドをそれぞれのキーとしています。
ですので、「活動履歴」アプリの「案件ID」フィールドに一致する値が「案件管理」アプリの「案件ID」フィールドに存在しない場合には、「案件管理」アプリにレコード追加をします。
一方、「活動履歴」アプリの「案件ID」フィールドの値と、「案件管理」アプリの「案件ID」フィールドが一致するレコードが存在する場合には、そのレコードに対してレコード更新を行います。
おわりに
この記事ではボタンを押すことで、更新先のアプリに同じキーのレコードがあればレコード更新、無ければレコード追加するカスタマイズをご紹介しました。
登録ないし更新を行う処理の場合は、やること「レコードを更新または追加する(キーの値を直接指定)」を使うと簡潔に登録/更新を含めたカスタマイズを実現できます。
また、ご不明点等ございましたら、チャットにてご質問ください!



