Mark Hammer's Blog

SalesforceやTrailheadに関する情報を投稿しているブログです。

Trailhead モジュール:Permission Sets for Unlocked Packages

※この内容は2019/10時点のものです。

Learn About Profiles and Permission Sets

https://trailhead.salesforce.com/ja/content/learn/modules/permission-sets-for-unlocked-packages/learn-about-profiles-and-permission-sets

  • 説明:英語
  • Challenge:英語選択問題

Develop a Profile and Permission Set Packaging Strategy

https://trailhead.salesforce.com/ja/content/learn/modules/permission-sets-for-unlocked-packages/develop-a-profile-and-permission-set-packaging-strategy

  • 説明:英語
  • Challenge:英語選択問題

Create an Unlocked Package

https://trailhead.salesforce.com/ja/content/learn/modules/permission-sets-for-unlocked-packages/create-an-unlocked-package

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • Trailhead Playground組織でDev Hubを有効化してください。
  • sfdx force:auth:web:login -d -a DevHub コマンドを使って、Salesforce CLIからDev Hubを有効化したTrailhead Playground組織に接続してください。

Create a Permission Set and Add it to Your Package

https://trailhead.salesforce.com/ja/content/learn/modules/permission-sets-for-unlocked-packages/create-a-permission-set-and-add-it-to-your-package

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • スクラッチ組織を作成してください。
  • sfdx-package-profiles-to-permsets プロジェクトから、メタデータをスクラッチ組織にPushしてください。
  • スクラッチ組織で、以下の権限セットを作成してください。
    • 表示ラベル:Sales Manager
    • API参照名:Sales_Manager
    • Servicesオブジェクトの「参照」、「すべて表示」権限を付与
    • SKUsオブジェクトの「参照」、「すべて表示」権限を付与
  • Sales Manager権限セットをPullしてください。

Release Your Updated Package

https://trailhead.salesforce.com/ja/content/learn/modules/permission-sets-for-unlocked-packages/release-your-updated-package

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • 前のユニットでDev Hubを有効化したTrailhead Playground組織にsalesAppsパッケージをインストールしてください。

Trailhead モジュール:Salesforce CPQ Order Generation

※この内容は2019/10時点のものです。

Get Started with Salesforce CPQ Order Generation

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce-cpq-order-generation/get-started-with-salesforce-cpq-order-generation

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

「Sign Up for a Developer Edition Org with Salesforce CPQ」節の手順に従って、CPQが有効化されたDeveloper Edition組織をTrailheadに接続してください。

Generate Your First Order

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce-cpq-order-generation/generate-your-first-order

  • 説明:英語
  • Challenge:英語選択問題

Generate Multiple Orders from a Single Quote

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce-cpq-order-generation/generate-multiple-orders-from-a-single-quote

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • 以下内容で、既存の見積レコードから新しく注文レコードを作成してください。
    • 取引先名:Kevco Inc.
    • 注文開始日:2019/1/1 (年は任意)
    • 見積:Q-00023
  • 作成した注文レコードで、「注文商品を編集」から以下注文商品を追加してください。
    • WiFi Installation
    • Warranty
  • 残りの見積品目を使って、同じ見積レコードから2つ目の注文レコードを作成してください。
    • 取引先名:Kevco Inc.
    • 注文開始日:任意
    • 見積:Q-00023
    • ヒント:「注文」項目のチェックボックスを使って、この注文レコードを生成できます。

Automatically Split a Quote into Multiple Orders

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce-cpq-order-generation/automatically-split-a-quote-into-multiple-orders

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • 見積オブジェクトの「注文単位」項目(API参照名:SBQQ__OrderBy__c )の選択リスト値に、「 SBQQ__EffectiveStartDate__c 」を追加してください。
  • 見積レコード Q-00026 を以下内容で編集して、各見積品目レコードの「開始日」に基づいた複数の注文を生成してください。
    • 注文単位: SBQQ__EffectiveStartDate__c
    • 注文:チェックを入れる

Salesforce Authenticator のアカウント紐付けを削除してしまった場合の対応策

Salesforceにログインする際に、セキュリティを高めるために2段階認証を有効にしているユーザの方もいらっしゃるかと思います。
Salesforceにて2段階認証を有効にする際、一般的には Salesforce Authenticator にアカウントの紐付けを行うと思いますが、もし Salesforce Authenticator の紐付けを誤って削除してしまうとどうなるでしょう。

Salesforce Authenticator のアカウント紐付けを削除すると起こること

Salesforce Authenticator の紐付けを行ったアカウントを用意し、 Salesforce Authenticator 側でアカウントの削除を行った後にSalesforceにログインすると、以下画面が表示されます。

Salesforce Authenticator から紐付けを削除した場合のログイン後画面

画面には「モバイルデバイスでアカウントをアプリケーションから削除した場合、個人設定でアカウントを再接続できます。」とありますが、ログインが成功しないため個人設定画面に遷移することはできません。
また、「別の検証方法を使用してください」というリンクもありますが、 Google Authenticator など他のワンタイムパスワードジェネレータを登録していない場合、使用できる別の検証方法がありません。

つまり、「パスワードも、パスワードリセットに使う秘密の質問の回答も忘れた」のと同じく、Salesforceにログインできないアカウントとなってしまいます。

誤って紐付けを削除した場合の回避策

このような状況を避けるため、 Salesforce Authenticator にはバックアップ作成機能がありますが、バックアップをとっていない場合は「諦めて別のアカウントを作成するしかないのか」と思うかもしれません。
しかし、状況によっては Salesforce Authenticator の紐付けを削除したアカウントを、再度ログイン可能にすることができます。

具体的にフローチャートにしたものが以下になります。

f:id:mark-hammer:20190925225742p:plain
紐付け削除時の対応フローチャート

パターン1: 同じ組織に他のシステム管理者がいる場合

これは自分が一般ユーザ、または複数のシステム管理者が同じ組織にいる状況となります。

この場合は、以下手順を他のシステム管理者に実行してもらうことで Salesforce Authenticator のアカウント紐付けをリセットすることができます。

  1. システム管理者にSalesforceにログインしてもらい、設定画面の「ユーザ」画面を表示する。
  2. アカウント紐付けを削除してしまったアカウントの詳細画面を表示する。
  3. 「アプリケーション登録: Salesforce Authenticator」の「切断」リンク(下図)をクリックする。
  4. アカウント紐付けを削除してしまったアカウントで再度ログインすると2段階認証登録画面に遷移するので、ここで新たに Salesforce Authenticator の紐付けを行う。

手順3. の「切断」リンク

パターン2: 同じ組織に他のシステム管理者がおらず、Salesforceサポートに問い合わせができる場合

これはSalesforceの有償組織(Enterprise Edition, Professional Edition等)を使用しており、かつ自分以外にシステム管理者がいない組織が該当します。

この場合は、自分の組織内でアカウント紐付けを解除することができないため、Salesforceサポートに問い合わせて対応を依頼することになります。
なお、ログインできないためヘルプ&トレーニングからのケース登録ができないので、Salesforceサポートに電話でお問い合わせが必要になります。

パターン3: 同じ組織に他のシステム管理者がおらず、Salesforceサポートに問い合わせができない場合

これはDeveloper Edition組織、かつシステム管理者用ユーザを他に用意していない組織が該当します。

この場合は対応策がないですが、Developer Edition組織は無償、かつ無制限に作成可能なため、「新しくDeveloper Edition組織を作成してください」が回答となります。

ただし、Trailheadが紐付いているアカウントの場合、TrailheadサポートにLogin Issueとして問い合わせをすると解消してもらえるかもしれません。

なお、Trailheadは無償であり、サポートもSLAがないと思われるためいつ返事がもらえるかは分かりません。
運がよければ解消してもらえる程度に考えた方がいいかもしれません。*1

おわりに

ちなみに、今回の手順は2段階認証に Google Authenticator 等、別のワンタイムパスワードジェネレーターを使用しているユーザにも適用できます。*2

この投稿が困ったときの一助になれば幸いです。

*1:Login Issueはユーザにとって重大なため、対応はしてもらえると思うのですが、「Trailheadサポートに対応してもらえました」というコメントを今まで見たことがないのです。

*2:前節パターン1の手順3で、「アプリケーション登録: ワンタイムパスワードジェネレータ」の右にある「切断」リンクをクリックすれば対応できます。

Trailhead モジュール:AppExchange Solutions

※この内容は2019/9時点のものです。

Discover AppExchange Solutions

https://trailhead.salesforce.com/ja/content/learn/modules/appexchange-solutions/discover-appexchange-solutions

  • 説明:英語
  • Challenge:英語選択問題

Find Your Way Around AppExchange

https://trailhead.salesforce.com/ja/content/learn/modules/appexchange-solutions/find-your-way-around-appexchange

  • 説明:英語
  • Challenge:英語選択問題

Tour Solutions by Type

https://trailhead.salesforce.com/ja/content/learn/modules/appexchange-solutions/tour-solutions-by-type

  • 説明:英語
  • Challenge:英語選択問題

Install an AppExchange Solution

https://trailhead.salesforce.com/ja/content/learn/modules/appexchange-solutions/install-appexchange-solution

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • AppExchangeより「Flow Video Player & File Viewer」フローソリューションをインストールしてください。
  • Flow Builderにて以下作業を実施してください。
    • 画面フローを新規作成してください。
    • 以下の通り画面コンポーネントをフローに追加してください。
      • 表示ラベル:Welcome Video
      • API参照名:Welcome_Video
    • インストールしたYoutube Playerコンポーネントを画面コンポーネントに追加してください。
      • API参照名:VideoViewer
      • Youtube Video ID:n6lsAsgCnH8
    • フローの各要素を接続してください。
    • 画面フローを保存してください。
      • フローの表示ラベル:Welcome Video Flow
      • フローのAPI参照名:Welcome_Video_Flow
  • 画面フローを実行して、Youtube Videoを参照してください。

Trailhead モジュール:認定 Platform デベロッパー資格の更新 (Summer '19)

※この内容は2019/9時点のものです。

Summer '19 の Platform デベロッパー向けの新機能の学習

https://trailhead.salesforce.com/ja/content/learn/modules/platform-developer1-maintenance-summer19/learn-whats-new-for-platform-developers-summer19

  • 説明:日本語
  • Challenge:日本語選択問題

Apex 一括処理クラスからのプラットフォームイベントの使用のハンズオン

https://trailhead.salesforce.com/ja/content/learn/modules/platform-developer1-maintenance-summer19/get-hands-on-using-platform-events-from-batch-apex-classes-summer19

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

※本Challengeには公式が作成した解説があります。

※筆者注:Challengeの前に「ハンズオン Challenge への準備」節の手順に従って未管理パッケージをインストールしてください。

  • Database.RaisesPlatformEventsインターフェースを実装するよう、BatchLeadConvertクラスを更新してください。
  • BatchApexErrorEventオブジェクトタイプに対するApexトリガ「BatchApexErrorTrigger」を作成してください。また、各イベントレコードについて、以下の通りBatchLeadConvertErrors__cレコードの対応する項目に、イベントレコードからキャプチャしたデータを保存するようロジックを実装してください。
    • AsyncApexJobId: AsyncApexJobId__c
    • JobScope: Records__c
    • StackTrace: StackTrace__c
  • トリガが安全に一括処理されるように、1つのDML文で新規レコードのリストを全部挿入するようにしてください。

Trailhead モジュール:認定 Platform アプリケーションビルダー資格の更新 (Summer '19)

※この内容は2019/9時点のものです。

Summer '19 のアプリケーションビルダー向けの新機能の学習

https://trailhead.salesforce.com/ja/content/learn/modules/platform-app-builder-maintenance-summer19/learn-whats-new-for-app-builders-in-summer19

  • 説明:日本語
  • Challenge:日本語選択問題

セールスマイルストンの紙吹雪のハンズオン

https://trailhead.salesforce.com/ja/content/learn/modules/platform-app-builder-maintenance-summer19/get-hands-on-with-sales-milestones-confetti

  • 説明:日本語
  • Challenge:英語ハンズオン

【Challenge要約】

※本Challengeには公式が作成した解説があります。

  • 以下内容でパス設定を行ってください。
    • パス名:Milestones
    • API参照名:Milestones
    • オブジェクト:商談
    • レコードタイプ: -- マスタ --
    • 選択リスト:フェーズ
    • 「ステップ 2: 項目を選択してパスの各ステップのガイダンスを入力」では「次へ」をクリックしてください。「成功へのガイダンス」を設定する必要はありません。
  • 「ステップ 3: 状況を設定して保存」を以下の通り設定してください。
    • 「A. ユーザがパスの特定のステップに到達したら、画面に紙吹雪を表示して成功をお祝いします。」を有効にしてください。
    • 選択リスト値:「Closed Won」を「Selected for Celebration」に設定してください。
    • お祝いの頻度:常に
    • 「B. パスを有効化してください。現時点でこのパスを使用する準備が整っていない場合、保存して後で有効化できます。」を有効にし、「完了」をクリックしてください。
  • 以下の通り商談を作成してください。
    • 商談名:Big Deal
    • 完了予定日:今日の日付(Challengeチェック対象外)
    • フェーズ:Prospecting
  • パスを使用し、作成した商談のフェーズを「Closed Won」に設定してください。

Trailhead モジュール:認定アドミニストレーター資格の更新 (Summer '19)

※この内容は2019/9時点のものです。

Summer '19 の新機能の学習

https://trailhead.salesforce.com/ja/content/learn/modules/administrator-certification-maintenance-summer19/learn-whats-new-in-summer-19

  • 説明:日本語
  • Challenge:日本語選択問題

メールテンプレートへの画像の挿入のハンズオン

https://trailhead.salesforce.com/ja/content/learn/modules/administrator-certification-maintenance-summer19/get-hands-on-with-inserting-images-into-your-email-templates

  • 説明:日本語
  • Challenge:英語ハンズオン

【Challenge要約】

※本Challengeには公式が作成した解説があります。

  • Lightning メールテンプレートの「フォルダおよび拡張共有」をオンにしてください。
  • 以下内容でメールテンプレートフォルダを作成してください。
    • フォルダの表示ラベル:Sales
    • フォルダの一意の名前:Sales
  • 以下内容でメールテンプレートを作成してください。
    • メールテンプレート名:General
    • フォルダ:Sales
    • 件名:General
    • メールテンプレートに画像を追加してください。

Trailhead モジュール:Salesforce モバイルアプリケーションのカスタマイズ

※この内容は2019/9時点のものです。

Salesforce モバイルアプリケーションの使用開始

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce1_mobile_app/salesforce1_mobile_app_intro

  • 説明:日本語
  • Challenge:日本語選択問題

グローバルクイックアクションの作成

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce1_mobile_app/salesforce1_mobile_app_actions_global

  • 説明:日本語
  • Challenge:英語ハンズオン

Challenge要約

  • 以下内容で新規グローバルアクションを作成してください。
    • アクション種別:レコードを作成
    • 対象オブジェクト:商談
    • 表示ラベル:New Offer
    • 名前:New_Offer
  • 作成したグローバルアクションのページレイアウトに、以下項目のみ設定してください。
    • 商談名
    • 完了予定日
    • フェーズ
    • 金額
  • 定義済み項目値にて、「フェーズ」項目の値を「Qualification」にするよう設定してください。

※筆者注:
設定を正しく実施しても The 'Opportunity Name', 'Close Date', 'Stage' and 'Amount' fields do not appear to be on the new action page layout. というエラーが発生する場合は、Challenge用組織のユーザ言語を[English]に変更し、再度Challengeの確認を実施してください。

オブジェクト固有のクイックアクションの作成

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce1_mobile_app/salesforce1_mobile_app_actions_objectspecific

  • 説明:日本語
  • Challenge:英語ハンズオン

Challenge要約

  • 取引先オブジェクトの「Account Layout」ページレイアウトに対し、「Salesforce モバイルおよび Lightning Experience のアクション」の先頭に「モバイルスマートアクション」を配置してください。

※筆者注:
設定を正しく実施してもFound Quick Actionというエラーが発生する場合は、Challenge用組織のユーザ言語を[English]に変更し、再度Challengeの確認を実施してください。

コンパクトレイアウトのカスタマイズ

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce1_mobile_app/salesforce1_mobile_app_compact_layouts

  • 説明:日本語
  • Challenge:英語ハンズオン

Challenge要約

  • 以下内容で取引先オブジェクトにコンパクトレイアウトを作成してください。
    • 表示ラベル:Mobile Account Layout
    • 名前:Mobile_Account_Layout
    • コンパクトレイアウト項目:取引先名、年間売上、電話、種別を選択
  • 主コンパクトレイアウトをMobile Account Layoutに変更してください。

※筆者注:
設定を正しく実施しても The 'Mobile Account Layout' compact layout does not appear to have the following fields in this order: Account Name, Annual Revenue, Phone, Type. というエラーが発生する場合は、Challenge用組織のユーザ言語を[English]に変更し、再度Challengeの確認を実施してください。

ナビゲーションのカスタマイズ

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce1_mobile_app/salesforce1_mobile_app_navigation

  • 説明:日本語
  • Challenge:日本語選択問題

Lightningメールテンプレートでリード、取引先責任者両方の会社名を同じ差し込み項目で差し込みたい

お題

最近、こんな質問をいただきました。

  • キャンペーンから、キャンペーンメンバーであるリード、取引先責任者それぞれに対しメールテンプレートを使ってメールを送りたい。
  • Lightning Experience から一括メールを送信する場合、Salesforce Classicと違ってリード、取引先責任者両方に送信できるメールテンプレートが使える、と聞いた。
  • なので試してみたが、差し込み項目に {{{Recipient.Company}}} を使っても取引先責任者側の会社名を入れることができない。
  • Salesforceサポートに聞いたら、「 {{{Recipient.Company}}} では取引先責任者側の会社名を入れることができないので、取引先責任者はカスタム数式項目を差し込み項目にしてほしい。なおリードとの共用はできない。」と言われた。

この質問を聞いた私は、最初「確かにSalesforceサポートの言っていることは正しい」と伝えましたが、「リード、取引先責任者両方に送信できないならClassicメールテンプレートのままでいい。」と言われてしまいました。

なぜできないの?

デフォルトの場合、通常会社名はリードでは「会社名」(API参照名では"Company")、取引先責任者では「取引先名」(API参照名では"Account.Name")項目に入ります。
一方、Lightningメールテンプレートでの受信者側差し込み項目は、 {{{Recipient.[API参照名]}}} の形で設定する必要があります。

つまり、リードの「会社名」、取引先責任者の「取引先名」は項目のAPI参照名が異なるため、1つの差し込み項目で両方対応することができないのです。*1

解決策を考える

一旦上記を伝えた後、何か解決策はないかな・・・と思いながら差し込み項目一覧を見ていると、リード、取引先責任者両方のマークを持つ項目もあることに気づきました。

f:id:mark-hammer:20190715135009p:plain
リード、取引先責任者両方のマークを持つ項目もある

そしてしばらく眺めた後、「同じ項目名、API参照名にすれば解決できるんじゃない」と思いました。

項目を作る

試しに、以下のような項目を作成しました。

  • リード
    • 項目名:メールテンプレート用取引先名
    • API参照名:accountname
    • 数式:Company
  • 取引先責任者
    • 項目名:メールテンプレート用取引先名
    • API参照名:accountname
    • 数式:Account.Name

Lightningメールテンプレートを作成する

上記項目を作成した後、再度Lightningテンプレートで差し込み項目選択画面を開くと、「メールテンプレート用取引先名」がリード、取引先責任者両方で使用できる形で選べるようになります。

f:id:mark-hammer:20190715133727p:plain
差し込み項目で選べるようになる

これを選択し、 {{{Recipient.accountname__c}}} をメールテンプレートに追加することで、リード、取引先責任者両方の会社名を同じ差し込み項目で差し込むことが可能になります。

注意事項

上記の通り、差し込み項目は {{{Recipient.[API参照名]}}} の形となるため、リード、取引先責任者に同じAPI参照名の項目がある場合、意図しない値が入る場合があります。

例えば、

  • リード
    • 項目名:高校名
    • API参照名:Field1
  • 取引先責任者
    • 項目名:社内評価
    • API参照名:Field1

のような項目がある状態で、リードの「高校名」をメールテンプレートに使用する場合、{{{Recipient.Field1__c}}} が差し込み項目となります。
このメールテンプレートを取引先責任者にも使用する場合、送信メールには入れたくない「社内評価」項目が入ってしまうこととなります。

おわりに

今回は、リード、取引先責任者両方の会社名を、カスタム数式項目を使って同じ差し込み項目で差し込む方法を考えました。
個人的にはこういった形でカスタム項目を使用するのは好みではないので、「このオブジェクトのレコードの場合はこの項目、…」みたいな設定が差し込み項目に対してもできればいいなと思いました。

この投稿が何かの役に立つことができれば幸いです。

*1:合わせて、Lightningメールテンプレートではオブジェクトをまたぐ項目は差し込み項目に指定できない(参考ヘルプ)という要件もあります。この要件のため取引先責任者の「取引先名」はLightningメールテンプレートでは差し込みができません。

データインポートウィザード: 取引先の一致条件にある「名前と場所」とは?

2021/11/9追記

本投稿で話題に出した取引先の一致条件「名前と場所」が「名前と部門」に変わりました。

f:id:mark-hammer:20211109120021p:plain

以下は一致条件が「名前と場所」だった頃の話です。(記録のために残します。)

はじめに

Salesforceに一括でデータ追加、更新を行うためのツールの1つである、データインポートウィザード。
APIが使えない(=データローダが使えない)Professional Editionでも利用可能な、システム管理者の味方となるツールの1つですが、インポート用CSVにあるレコードとSalesforceに登録済みのレコードが一致しているかどうかをチェックするために、「一致条件」を指定する必要があります。

通常、一致条件にはSalesforce ID、または外部IDに指定した項目を指定しますが、データインポートウィザードで指定可能な取引先の一致条件には、「名前と場所」というものがあります。

f:id:mark-hammer:20190703222406p:plain
[取引先の一致条件]選択画面

この「名前と場所」とは、具体的にどの取引先項目を指すのでしょうか。
一見すると名前は「取引先名」だと思いますが、場所、と言われてもどの項目を指すのか今一つピンときません。

英語画面で内容を確認してみる

分からない時はとりあえず英語画面を確認してみる、ということで、ユーザ言語を英語に変更し、再度データインポートウィザード画面を開きます。

f:id:mark-hammer:20190703222828p:plain
[取引先の一致条件]選択画面(英語)

すると、「名前と場所」は、英語版だと「Name & Site」になることが分かりました。
「Name」は「取引先名」で間違いないと思います。
さて、「Site」とはどの項目なのでしょうか。

「場所」=「Site」=「取引先部門」!?

設定画面より取引先の項目一覧画面を確認し、API参照名が「Site」になっている標準項目を探してみます。

f:id:mark-hammer:20190703223112p:plain
取引先の項目一覧

すると、API参照名が「Site」の項目は…「取引先部門」項目であることが分かります。

つまり、取引先の一致条件「名前と場所」は、「取引先名」と「取引先部門」の2項目の組み合わせで一致の有無を確認しています。

実際に動作を確認してみる

実際に、取引先名、取引先部門を分けた以下の表に沿ったデータをCSVで作成し、データインポートウィザードで取り込んでみます。

取引先名 取引先部門 郵便番号(請求先)
テスト取引先1 (空白) 1300000
テスト取引先1 (空白) 1400000
テスト取引先2 10000 2300000
テスト取引先2 (空白) 2400000

結果はこうなりました。

取引先名 取引先部門 郵便番号(請求先) レコード作成結果
テスト取引先1 (空白) 1300000
テスト取引先1 (空白) 1400000 ×(上のレコードと重複判定)
テスト取引先2 10000 2300000
テスト取引先2 (空白) 2400000

取引先部門を指定なしとして、2レコード作成した「テスト取引先1」は、1レコードだけ作成されました。
一方、取引先部門を指定なし、値指定の2パターン用意した「テスト取引先2」は、2レコードとも作成されました。

最後に

取引先の一致条件にある「名前と場所」、実際に指す項目は「取引先名」と「取引先部門」と日本人にとってはあまり想定しない結果となりました。
この投稿がいつか参考になれば幸いです。