特定の条件に一致する行や一部のデータだけ自動処理で値を更新したい
自動処理機能で「条件分岐」パーツまたは「レコード検索」パーツを使用することで、特定の条件を満たす場合のみ値を自動更新することが可能です。
「楽楽販売」では、自動処理のパーツを組み合わせることで、業務ルールに基づいたデータの自動更新を実現できます。
条件の判定には、操作しているレコード自身の値を基準にする方法と、操作しているレコード以外のレコードを対象にデータが存在するかどうかを基準にする方法の2通りがあります。
最適な構築手法の選び方・判断基準
実現したい判定内容に合わせて、使用する自動処理パーツを選択してください。
- 現在のレコード内の値(ステータスや金額など)を条件にする場合
➔ 1. 「条件分岐」パーツを使用します。操作中のレコードの項目が「〇〇なら」という単純な判定に適しており、処理速度が速い特徴があります。 - 操作しているレコード以外のレコードを対象にデータが存在するかを条件にする場合
➔ 2. 「レコード検索」パーツを使用します。
「マスタデータベースに登録がある場合のみ」や「同一データベース内で重複するデータがない場合のみ」といった、データベース全体を横断した判定に適しています。
1. 「条件分岐」パーツで操作中のレコード内容を判定して更新する方法
メリット:操作しているレコード(または明細行)の値を即座に判定するため、設定がシンプルで処理がスムーズです。
デメリット:操作中のレコード以外の情報を直接参照して条件にすることはできません。(※データベース全体の検索や別DBの確認を行いたい場合は、後述の「レコード検索」パーツをご活用ください。)
【設定箇所】 DB設定(スパナアイコン)>機能設定>自動処理設定
【設定手順】
- 自動処理の新規作成
「新規追加」ボタンより自動処理名を入力し、実行単位(レコード単位または明細単位)を選択して「確定」ボタンをクリックします。 - 「条件分岐」パーツの登録
「自動処理パーツを登録する」から「条件分岐」パーツを選択します。詳細設定にて、判定基準となる項目と条件を設定します。
【設定例】ステータスが「完了」のレコードのみ後続の処理を実行したい場合:
条件:【選択レコード】の「ステータス」項目が「完了」と「等しい」 - 「レコード更新」パーツの配置
「条件分岐」パーツの「YES(青い矢印)」の先に「レコード更新」パーツを登録します。詳細設定にて、更新したい項目に新しい値を割り当てます。
上記のように設定することで、手順2の条件に合致したレコードのみ手順3のレコード更新処理が実行されます。手順2の条件に合致しないレコードは、「NO(赤い矢印)」の先にパーツを配置しない場合、何も更新されません。
2. 「レコード検索」パーツでデータの有無を判定して更新する方法
メリット:「特定の条件に合うレコードが1件でもあるか」という基準で処理を分けられるため、重複チェックやマスタ連携に非常に強力です。
デメリット:検索対象が広いため、「条件分岐」パーツに比べると処理に時間がかかる場合があります。
【設定箇所】 DB設定(スパナアイコン)>機能設定>自動処理設定
【活用例1】自動処理を実行したデータベース内で検索する場合(同一データベース内の重複チェック)
同一のデータベース内に同じデータが既に登録されているかを検索し、重複が存在する場合のみ値を自動更新する設定例です。
【活用シーン】見積データベースに見積レコードを作成した際、同一の顧客名が過去に登録されているかを検索し、重複している場合に見積レコードの「過去取引有無」項目を「あり」に自動更新したい場合
【設定手順】
自動処理は「見積DB」に作成する前提とします。
- 「レコード検索」パーツの登録
自動処理の先頭に「レコード検索」パーツを配置します。
条件指定で「AND条件(すべての条件に当てはまる)」を選択し、下記のように2つの条件を設定します。
・検索対象:見積DB(自動処理を実行するデータベース自身を選択)
・条件1:「顧客名」が「【選択レコード】の顧客名」と「等しい」
・条件2:「キー項目」が「【選択レコード】のキー項目」と「等しくない」
(※選択レコード自身を検索結果から除外する設定です) - 「レコード更新」パーツの配置
「レコード検索」パーツの「YES(1件以上存在した)」の先に「レコード更新」パーツを配置し、詳細設定で更新内容を指定します。
・更新項目:「過去取引有無」項目に「あり」を割り当て
注意
同一データベース内を検索する場合、検索条件を一致条件(「顧客名」項目が「【選択レコード】の顧客名」と「等しい」など)のみにすると、自動処理を実行した自分自身(選択レコード)も検索結果に含まれて常に条件にヒットしてしまいます。
そのため、検索条件で選択レコード自身を除外する設定が必須となります。
この設定により、同一の見積データベース内に同じ顧客名のレコードが既に存在する場合のみ、「過去取引有無」項目が「あり」に自動更新されます。
【活用例2】別のデータベースを検索する場合(別DBのマスタデータ確認)
自動処理を実行したデータベースとは異なる別のデータベース(マスタデータベースなど)にデータが存在するかを確認し、存在する場合のみ値を自動更新する設定例です。
【活用シーン】受注データベースで受注レコードを登録した際、別データベースである「顧客マスタ」に該当の顧客が登録されているかを確認し、登録がある場合のみ受注レコードの「顧客確認フラグ」項目を「確認済」に自動更新したい場合
【設定手順】
- 「レコード検索」パーツの登録
自動処理の先頭に「レコード検索」パーツを配置し、詳細設定で下記のように検索条件を設定します。
・検索対象データベース:顧客マスタ(参照したいデータベースを選択)
・検索条件:「顧客コード」項目が「【選択レコード】の顧客コード」と「等しい」 - 「レコード更新」パーツの配置
「レコード検索」パーツの「YES(1件以上存在した)」の先に「レコード更新」パーツを配置し、詳細設定で更新内容を指定します。
・更新項目:「顧客確認フラグ」項目に「確認済」を割り当て
この設定により、受注データベースの「顧客コード」が別データベースの「顧客マスタ」に存在する場合のみ、「顧客確認フラグ」項目が「確認済」に自動更新されます。
関連マニュアル
詳細な仕様の違いや作成手順については、下記記事をご確認ください。
条件によって処理を分ける「条件分岐」パーツの設定方法
条件分岐パーツの基本的な使い方や、YES/NOの分岐先にパーツを追加する手順について詳しく解説しています。
自動処理設定:「条件分岐」パーツ
既存レコードの値を書き換える「レコード更新」パーツの設定方法
特定の項目を一律の値に更新したり、他の項目の値を転記したりする際の設定手順を記載しています。
自動処理設定:「レコード更新」パーツ
別DBのレコードを特定して判定に使う「レコード検索」パーツの設定方法
他のデータベースから条件に合うデータを探し出し、その有無で処理を分岐させる方法を解説しています。
自動処理設定:「レコード検索」パーツ
(記事ID:2579)
「自動処理設定」の関連記事一覧
こちらの記事もあわせてご確認ください。
- 毎月固定で発生する受注案件レコードを自動で作成(登録)する方法・設定手順
- 明細項目の「最小値」を抽出して見出し項目に設定する方法・設定手順
- 「送付状」を自動作成する方法・設定手順
- 自動処理のメール送信で「なりすまし判定」を回避するためにSMTPのEnvelope-From(Return-Path)を固定ドメインに設定する方法・設定手順
- 帳票出力用の納品書雛形(Excelサンプル)を入手する方法
- 「楽楽販売」からeFAXを利用して自動でFAX送信を行う方法・設定手順
- 自動処理のメール送信でラクス提供の標準アドレスをFROMアドレスに設定する方法はあるか
- 帳票に商品ごとのバーコード(JAN・CODE39等)を表示させる方法
- 複数の明細行(オプション等)を1行に合算して帳票出力する方法はあるか
- 帳票(請求書など)のExcelフォーマットに出力されるお客様情報を変更・紐付けし直す方法