2015年1月29日木曜日

iDempiere 想定業務フロー 1.7 Sales Order 受注 ワークフロー 検証

前回の投稿で特定の顧客のSales Order  (Document Type:Standard Order)から受注した場合、担当者にメール送信するワークフローの設定をしたので、試してみます。

正直言うと、「想定外」のことがいろいろと。。

今回新規追加した Process_SO_Amadon_Alert の Node: (SendEmail) で、指定した送信先メールアドレスにメールが飛ぶことは確認できたのですが、、、、
(現在空欄ですが、下図赤枠の部分です。)
Sales Order 作成時に必須項目である Sales Representative の人にもメールが飛んでしまいます。
ちなみにワークフローで指定した人を Sales Representative に指定した場合、同じメールが届くことになります。(2通来る)

代替案その1:
メールは Amadon担当者と Sales Representative  の両方に送信されることを許容する

代替案その2:
ワークフロー側の Email Address を空欄にし、 Sales Representative に Amadon担当者をセットする。
(Business Partner 画面で、 Amadon の Sales Representative に担当者名をセットしておけば、SO 作成時に Amadon向け受注とすればデフォルトで担当者名がセットされる)

代替案その2は業態や会社によって、営業の評価軸に関係することもあり個別に検討が必要かと思います。
(例えばここで入力した Sales Representative が営業の成績の要素となっている場合などは選択できないかもしれません)

今回はこの会社は基本的に担当顧客の売上(利益)で営業が評価されると想定し、代替案その2として先に進みたいと思います。

というわけで簡単に確認してみます。


Menu -> Quote-to-Invoice -> Sales Orders -> Sales Order
新規作成

Target Document Type: Standard Order
Business Partner: Amadon
Price List: 適当に
Sales Representative: 多田さん(Amadon担当、Business Partner 画面で担当者として登録済み)
Order Line: 適当に

これで Document Action を Complete します。

ワークフローの動作を確認してみます。

Menu -> System Admin -> General Rules -> Workflow ->  Workflow Process

親タブの2行がオーダーの登録で起動されたワークフロー、うち1行目が今回の Process_SO_Amadon_Alert

これを選択すると、実行された Node が出ます。
ここに (SendEmail) とあるので、(Start) に設定した Condition を満たしており、 (SendEmail)が実行されたことがわかります。

送信されてきたメールがこちら。(ちょっと本文がずれてますが、、)

Amadon 以外の受注を試してみます。

 Business Partner は ヨドゴシ として、受注します。


子タブを見ると今度は (SendEmail)が見当たりません。

これで特定の顧客からの受注時にメールを飛ばすワークフローは完成です。
思ったのですが、 Process_SO_Amado_Alert 作らなくても Process_Order のワークフローを修正すればむやみにワークフロー増やさなくても良いかもしれませんね。
(パフォーマンスにどの程度影響するのかによりますが、)

--------------------
メール送信のテストは結構検証が大変です。
というのも、どこで詰まっているのかわかりませんが、数時間遅れてメールが届くこともあり、検証時に結果のパターン認識が思うように進みませんでした。。(同じ条件でもメールの受け取り方が違うように見えて悩んでいると、あとあとメールが届くとか、、)
検証するときはサーバーの /var/log/maillog を直接見た方がいいかもしれませんね。
-----------------------

0 件のコメント:

コメントを投稿