アプリケーション・コンポーザを使用した営業リード検証ルールの作成方法
リード管理ユーザーは、リード顧客が販売アカウントであるか、リード顧客がリードにプライマリ製品を関連付けたかに関係なく、リードのステータスを「適格」に変更できます。
ただし、会社のリード管理ビジネス・プロセスの遵守を強制するために、リードをいつ「適格」ステータスに設定するかを制御するビジネス・ルールを作成する必要があります。
この例では、アプリケーション・コンポーザを使用して、ユーザーがリードのステータスを「適格」に変更する前に販売先住所とプライマリ製品が存在することを確認する検証ルールを作成する方法について説明します。
販売先住所の検証ルールの作成
営業リードの販売先住所の存在を検証するルールを作成する方法を次に示します。
- 
               「アプリケーション・コンポーザ」に移動します。 
- 
               「営業」を選択して、オブジェクト検索をフィルタします。 
- 
               オブジェクト・ビューから、「標準オブジェクト」、「営業リード」、「サーバー・スクリプト」の順に選択します。 
- 
               「オブジェクト関数」タブをクリックし、「新規オブジェクト関数を追加」アイコンをクリックします。 「オブジェクト関数の作成」ページが表示されます。 
- 
               「関数名」フィールドに、スペースなしの名前 isSellToExistsを入力します。
- 
               「戻り値」フィールドで、「ブール」を選択します。 
- 
               「関数本体」領域で、次を入力します。 if(null != CustomerId){ def partySites = newView('Address'); def criteria = partySites.createViewCriteria(); def criteriaRow = criteria.createRow(); criteria.insertRow(criteriaRow); def criteriaItem = criteriaRow.ensureCriteriaItem('PartyId'); criteriaItem.setValue(CustomerId) partySites.appendViewCriteria(criteria) partySites.executeQuery(); while(partySites?.hasNext()) { def partySite = partySites.next(); def partySiteUses = partySite?.getAttribute('PartySiteUse'); while (partySiteUses?.hasNext()) { def partySiteUse = partySiteUses.next(); if ('SELL_TO' == partySiteUse?.getAttribute('SiteUseType')) { return true; } } } } return false;
- 
               「検証」をクリックします。 
- 
               「保存して閉じる」をクリックします。 
プライマリ製品の強制ルールの作成
次に、営業リードのプライマリ製品の関連付けを強制するためのルールを作成します。
- 
               「新規オブジェクト関数を追加」アイコンをクリックして、「オブジェクト関数の作成」ページに移動します。 
- 
               「関数名」フィールドに、スペースなしの名前 isPrimaryProductAssignedを入力します。
- 
               「戻り値」フィールドで、「ブール」を選択します。 
- 
               「関数本体」領域で、次を入力します。 if((null != PrimaryInventoryOrgId && null != PrimaryInventoryItemId) || null != PrimaryProductGroupId) return true; else return false;
- 
               「検証」をクリックします。 
- 
               「保存して閉じる」をクリックして、サーバー・スクリプト営業リード・ページに戻ります。 
リード評価の検証ルールの作成
次に、ユーザーが営業リードに「適格」ステータスを設定したときに販売先住所およびプライマリ製品の存在をチェックする検証ルールを作成します。
- 
               「検証ルール」タブをクリックして、「オブジェクト・ルール」領域に移動します。 
- 
               新規検証ルールの追加アイコンをクリックします。 
- 
               「オブジェクト検証ルールの作成」ページで、「ルール名」フィールドにナビゲートし、スペースなしのルール名 qualifyLeadを入力します
- 
               「ルール定義」領域で、次を入力します。 if(isAttributeChanged('StatusCode') && getAttribute('StatusCode') == 'QUALIFIED') return (isPrimaryProductAssigned() && isSellToExists()); else return true;
- 
               「エラー・メッセージ」領域で、次のメッセージ・テキストを入力します。 Primary Product and Sell to Address are required for qualifying a Lead.
- 
               「保存して閉じる」をクリックします。 これで、アプリケーション・コンポーザを使用して、リードを評価するときのプライマリ製品フィールドおよび販売先住所フィールドの検証ルールを作成するタスクが完了しました。 
ルールのテスト
ルールの検証方法は次のとおりです。
- 
               「リード評価」→「リードの編集」ページにナビゲートします。 
- 
               「アクション」メニューから「適格」を選択します。 「プライマリ製品」および「販売先住所」フィールドにデータが含まれていない場合は、次のエラー・メッセージ・テキストが表示されます。 Primary Product and Sell to Address are required for qualifying a Lead.