明細項目は、通常は親レコード(ヘッダ)に紐づく「行の集まり」として扱われますが、自動処理の「レコード検索」パーツを活用することで、特定の明細行だけを1つの独立したデータとして抽出できます。
この際、各明細行に自動で割り振られる一意の管理番号である「明細キー(明細ID)」を検索条件に使用することで、他の行に影響を与えることなく、特定の1行のみをピンポイントで更新・修正できます。
この設定により、複雑な受注明細や在庫明細の中から特定のデータだけを正確に書き換える運用が実現できます。
現在の「楽楽販売」の仕様では、自動処理の「レコード更新」パーツ単体で、検索工程を挟まずに特定の明細IDを直接指定して更新することはできません。
そのため、必ず「レコード検索」パーツを前段に配置し、対象の明細行を特定する手順が必要となります。
特定の明細行を個別に修正するためには、まず「どの明細行か」をシステムに探させ、その見つかった行に対して更新命令を出すという2段階のパーツ構成が必要になります。
以下の手順で設定を行ってください。
【設定箇所】 データベース設定>機能設定>自動処理設定
1. 自動処理の新規作成
対象のデータベースの自動処理設定画面にて「新規追加」をクリックし、任意の処理名を入力して確定します。この際、実行単位は「レコード単位」または「明細単位」のどちらでも構築可能ですが、特定の1行を検索で特定する場合は「レコード単位」で開始するのが一般的です。
2. 「レコード検索」パーツで特定の明細行を特定する
自動処理の最初のパーツとして「レコード検索」パーツを登録し、詳細設定で以下の通り設定します。
・検索対象: 更新したい明細がある「自身のデータベース」を指定します。
・検索結果: 「検索結果を明細単位で取得する」のチェックボックスに必ずチェックを入れます。※このチェックを入れないと、明細行単位での特定ができません。
・1件まで絞込み: 「複数件存在した場合に、並び順の1番目のみを抽出する」にチェックを入れます。これにより、後続のパーツで「単一の明細行」として指定可能になります。
・検索条件: 「明細キー」が(直接入力や他の項目値など)「指定したい明細ID」と「等しい」という条件を設定します。
3. 「レコード更新」パーツで値を書き換える
手順2の「YES(検索結果あり)」の分岐先に「レコード更新」パーツを登録し、詳細設定で以下の通り設定します。
・対象レコード: 「選択」ボタンをクリックし、リストの中から【検索レコード】(手順2で設定したパーツ名)を直接選択します。これにより、検索でヒットした特定の明細行のみがピンポイントで更新対象となります。
・更新内容: 修正したい項目に対して、新しい値を割り当てます。
※「明細キー」は、レコードのキー項目と行番号を組み合わせた「(キー項目の値)-(数値)」という形式でシステムが自動生成する一意のIDです。
インポートや自動処理で特定の行を識別する際の「更新キー」として利用されます。
※「レコード検索」パーツで「1件まで絞込み」にチェックを入れない場合、検索結果が「複数行データ」として扱われるため、後続の「レコード更新」パーツの対象レコードとして選択できなくなる原因となります。必ず1件に絞り込む設定を行ってください。
詳細な仕様の違いや作成手順については、下記記事をご確認ください。
検索結果を明細単位で取得する際の詳細な挙動や、条件の組み合わせ方について解説しています。
自動処理設定:「レコード検索」パーツ
検索結果を対象にして値を更新する際の手順や、明細の更新ルールについて詳しく記載されています。
自動処理設定:「レコード更新」パーツ
明細キーがどのように生成され、どのようなシーンで利用されるかの詳細が記載されています。
項目設定:項目タイプ
(記事ID:2834)