Salesman Profile

From UG

(Difference between revisions)
Jump to: navigation, search
(Related Workflow and Use Case)
(Figures: removed Figure 2, renamed Figure 3)
 
(45 intermediate revisions not shown)
Line 3: Line 3:
== General Info ==
== General Info ==
-
* mantis: http://mantis.jaguarfreight.com/mantis/view.php?id=2051
+
* mantis: http://mantis.jaguarfreight.com/mantis/view.php?id=2052
-
* Related Terminology and Concepts - read [[Salesman]]
+
-
== Business Requirements ==
+
== Salesman Functionality Overview ==
-
=== Core Need ===
+
There are 3 components at the moment:
-
Ability to manage all JFS salesmen.
+
-
=== Requirements ===
+
* Salesman Profile:
 +
** tag jag user as a salesman
 +
** manage commission schedule
 +
** manage salesman accounts
 +
** manage monthly targets
-
==== CRUD ====
+
* [http://mantis.jaguarfreight.com/wiki/Commissions_Report Commissions Report]
-
Need [[CRUD]] interface to [[Salesman]] object.
+
* [http://mantis.jaguarfreight.com/wiki/Salesman_Target_Report Salesman Target Report]
-
==== Access Restrictions ====
+
* Misc: set access permissions
-
* These Salesman Commission Schedules and Salesman Accounts should not be visible to most users
+
** These Salesman Commission Schedules and Salesman Accounts should not be visible to most users
-
* They should be limited to management users only
+
** They should be limited to management users only
-
== Related Workflows and Use Cases ==
+
== Concepts ==
-
=== Create Salesman ===
+
=== Salesman ===
-
1)
+
'''Salesman''' - jaguar employee who is in search for new companies who need to ship goods. Once such company agrees to send us orders ([[CT]]s) [[Inside Sales]] operators would create new [[Client Company]] in CT2. We call such company a '''Salesman Account'''.
-
== Preliminary Design ==
+
===Salesman Account ===
 +
 
 +
See [[#Salesman]]
 +
 
 +
=== Commission ===
 +
 
 +
'''Commission''' - see also http://en.wikipedia.org/wiki/Commission_(remuneration)
 +
 
 +
=== Commission Percentage ===
 +
 
 +
'''Commission Percentage''' is a number. It represents share of a Jaguar profit that is due to the [[#Salesman]] (as it is a part of her compensation). This number changes - see [[#Commission Schedule]].
 +
 
 +
=== Commission Start Date ===
 +
 
 +
''' Commission Start Date ''' - first date to calculate commission. This is [[Client Company]] specific.
 +
 
 +
=== Commission Schedule ===
 +
 
 +
'''Commission Schedule''' - represents change in [[#Commission Percentage]] based on how much time has elapsed since [[#Commission Start Date]].
 +
 
 +
''Example:''
 +
 
 +
* 1st year commission at 10%
 +
* 2nd year commission at 7%
 +
* 3rd year commission at 3%
 +
* 4th year and on commission 0%
 +
 
 +
These numbers are [[#Salesman]] specific. They are stored in the [http://mantis.jaguarfreight.com/wiki/Salesman_Profile#Interface Commision Shedule table] of the [[Salesman Profile]].
 +
 
 +
Given [[#Salesman]] has same schedule for all of his [[#Salesman Account]]s.
 +
 
 +
=== Commission Amount ===
 +
 
 +
'''Commission Amount''' - dollar amount of commission that given [[#Salesman]] receives for specific [[#Client Company]] for specific Time Frame.
 +
* The calculation of [[Gross Profit]] should include all individual CTs that have [[Sailing Date]] within this Time Frame.
 +
* The calculation of commissions uses [[#Commission Schedule]] and is based upon '''profit''' CT only:
 +
:* if a profit on that CT, then there is commission due
 +
:* if a loss on that CT, then there is NO commission due
 +
 
 +
''Example 1''
 +
 
 +
Assume that:
 +
 
 +
* for Client Company ABC Corp. salesman John Smith has a Commission Percentage of 10% for Dec 2009 and 5% for Jan 2010
 +
* [[Gross Profit]] for Client Company ABC Corp. for Dec 2009 is 2000 USD
 +
* [[Gross Profit]] for Client Company ABC Corp. for Jan 2010 is 1000 USD
 +
* Commission Start Date of John Smith for Client Company ABC Corp. is Jan 1, 2009
 +
 
 +
Then Commission Amount for Client Company ABC Corp., salesman John Smith and time frame ''from Dec 1, 2009 to Jan 31, 2010'' is:
 +
 
 +
2000 x .10 + 1000 x .05 = 200 + 50 = 250
 +
 
 +
=== Salesman Monthly Target ===
 +
A dollar figure '''set''' by the VP of sales that a salesman is to reach per calendar month for all of his [[#Salesman Account]]s.
 +
 
 +
=== Salesman Monthly Actual ===
 +
It is '''calculated''' by adding all profit values for all shipments associated with all of her accounts.
 +
 
 +
== Design ==
=== Access Restrictions ===
=== Access Restrictions ===
-
* Access Restrictions to info from Salesman Profiles should be limited to management users only. Access control proceeds in Users Admin Access window in "Acc.Sales Persons" line. See on [[#Figure 0. Users Access Admin window | Figure 0]].
+
* Access Restrictions to info from Salesman Profiles should be limited to management users only.
-
=== Interface ===
+
=== Data Tables ===
-
* All Salesman [[http://mantis.jaguarfreight.com/wiki/Salesman#Salesman]] info and controls are available through Sales Persons interface ("Acc -> Sales Persons"). See on [[#Figure 1. Sales Persons menu item | Figure 1]].
+
* There are three tables for Salesman feature:
-
* Sales Persons table contains list of all Salesman Profiles. This table looks the same like "Jaguar Users" table in Admin. See on [[#Figure 2. Sales Persons table | Figure 2]].
+
-
* Each Salesman Profile shows on "Add/Edit Salesman Profile" window.  See on [[#Figure 3. Salesman Profile window | Figure 3]]. This window contains three tables:  
+
** '''Commision Shedule table'''
** '''Commision Shedule table'''
-
*** This table corresponds to the Commission Shedule specification [[http://mantis.jaguarfreight.com/wiki/Salesman#Commission_Schedule]] and represents change in Commission Percentage [[http://mantis.jaguarfreight.com/wiki/Salesman#Commission_Percentage]] of current Salesman.
+
*** This table corresponds to the [[#Commission_Schedule]] specification and represents change in [[#Commission_Percentage |Commission Percentage]] of current Salesman.
*** System keeps history of all set Percentage values of Salesman for each Time frame, but displays only actual of them.
*** System keeps history of all set Percentage values of Salesman for each Time frame, but displays only actual of them.
-
*** Table consists of three columns:
+
*** Table consists:
-
**** Time Frame - time in years has elapsed since Commission Start Date [[http://mantis.jaguarfreight.com/wiki/Salesman#Commission_Start_Date]].
+
**** Time Frame - time in years has elapsed since [[#Commission_Start_Date]].
**** Commission Percentage - number representing share of a Jaguar profit that is due to the current Salesman.
**** Commission Percentage - number representing share of a Jaguar profit that is due to the current Salesman.
-
**** Date Set - date of set percentage value for Time frame for the current Salesman.
+
**** Date Set - date of set percentage value for Time frame for the current Salesman. ''details needed'' --[[User:Andrei|Andrei]] 17:31, 11 January 2011 (EST)
-
*** Current Salesman has same schedule for all of his Salesman Accounts [[http://mantis.jaguarfreight.com/wiki/Salesman#Salesman_Account]].  
+
*** Current Salesman has same schedule for all of his [[#Salesman_Account]].  
** '''Salesman Accounts table'''
** '''Salesman Accounts table'''
-
*** This table contains list of all Salesman Accounts with appropriate Commission Start/End Dates
+
*** This table contains list of all Salesman Accounts with appropriate Commission Start/End Dates.
-
*** Table consists of three columns:
+
*** Table consists:
**** Client Company (=Salesman Account) - company which agrees to send us orders (CTs).
**** Client Company (=Salesman Account) - company which agrees to send us orders (CTs).
**** Commission Start Day - first date to calculate commission for specified Client Company.  
**** Commission Start Day - first date to calculate commission for specified Client Company.  
**** Commission End Day - last date to calculate commission for specified Client Company.  
**** Commission End Day - last date to calculate commission for specified Client Company.  
** '''Salesman Monthly table'''
** '''Salesman Monthly table'''
-
*** This table contains list of set '''target''' and calculated '''actual''' Salesman Montly values
+
*** This table contains list of set '''target''' Salesman Montly values.
-
*** Table consists of four columns:
+
*** Table consists:
-
**** Year of Salesman Monthly.
+
**** "Year-Month" pair of Salesman Monthly.
-
**** Month of Salesman Monthly.  
+
**** Salesman [[#Salesman_Monthly_Target]] value.
-
**** Salesman Monthly Target [[http://mantis.jaguarfreight.com/wiki/Salesman#Salesman_Monthly_Target]] value.
+
-
**** Salesman Monthly Actual [[http://mantis.jaguarfreight.com/wiki/Salesman#Salesman_Monthly_Actual]] value.
+
-
* Each table must have control buttons for CRUD-functionality: Add, Edit, Remove.
+
-
** Adding/editing of the relevant information executes in special pop-up windows. See on [[#Figure 4. Comission Schedule window | Figure 4]], [[#Figure 5. Salesman Account window | Figure 5]] and [[#Figure 6. Salesman Monthly window | Figure 6]].
+
-
** Removing of info executes after confirming in standard CT2 Question messageboxes with appropriate messages.
+
-
*** in case of inability to remove of the relevant information (f.e. when this info is used for the calculations of commission amount) system displays standard CT2 Error window.  
+
-
== Final Detailed Design ==
+
== Detailed Design ==
-
== Figures ==
 
-
=== Figure 0. Users Access Admin window ===
+
=== Business Workflows and Events ===
-
[[File:Usersaccessadmin_salespersons.gif]]
+
-
=== Figure 1. Sales Persons menu item ===
+
-
[[File:Accmenu_sales_persons.gif]]
+
-
=== Figure 2. Sales Persons table ===
+
-
[[File:Sales_persons_table.gif]]
+
-
=== Figure 3. Salesman Profile window ===
+
-
[[File:Salesman_profile.gif]]
+
-
=== Figure 4. Comission Schedule window ===
+
-
[[File:Edit_commission_schedule.gif]]
+
-
=== Figure 5. Salesman Account window ===
+
-
[[File:Edit_salesman_account.gif]]
+
-
=== Figure 6. Salesman Monthly window ===
+
-
[[File:Edit_salesman_monthly.gif]]
+
-
== History ==
+
'''Normal Workflows:'''
-
=== m2052 ===
+
* New Salesman Hired
-
* mantis [http://mantis.jaguarfreight.com/mantis/view.php?id=2052 2052]
+
* Set Monthly target for Salesman (first time)
 +
* Salesman gets his first account
 +
* Calculate Salesman Commissions
 +
* Generate Salesman Target Report
 +
* Update Monthly target for Salesman
 +
* Add additional accounts
 +
* Close Accounts
 +
* Change Commission schedule
 +
* Delete or Archive Salesman
-
==== BA ====
+
'''Some Exceptional Workflows:'''
-
* see [[#Business Requirements]]
+
* Salesman hired with accounts
 +
* Client added by mistake
 +
* No targets set
-
==== SA ====
+
== Figures ==
 +
 
 +
=== Consolidated Example of Data Tables ===
 +
[[File:Salesman_profile.gif]]
 +
 
 +
== History ==
-
see [[#Preliminary Design]]
+
=== 0002052: (Salesman: Profile) Create this new component ===

Current revision as of 22:35, 11 January 2011


Contents

[edit] General Info

[edit] Salesman Functionality Overview

There are 3 components at the moment:

  • Salesman Profile:
    • tag jag user as a salesman
    • manage commission schedule
    • manage salesman accounts
    • manage monthly targets
  • Misc: set access permissions
    • These Salesman Commission Schedules and Salesman Accounts should not be visible to most users
    • They should be limited to management users only

[edit] Concepts

[edit] Salesman

Salesman - jaguar employee who is in search for new companies who need to ship goods. Once such company agrees to send us orders (CTs) Inside Sales operators would create new Client Company in CT2. We call such company a Salesman Account.

[edit] Salesman Account

See #Salesman

[edit] Commission

Commission - see also http://en.wikipedia.org/wiki/Commission_(remuneration)

[edit] Commission Percentage

Commission Percentage is a number. It represents share of a Jaguar profit that is due to the #Salesman (as it is a part of her compensation). This number changes - see #Commission Schedule.

[edit] Commission Start Date

Commission Start Date - first date to calculate commission. This is Client Company specific.

[edit] Commission Schedule

Commission Schedule - represents change in #Commission Percentage based on how much time has elapsed since #Commission Start Date.

Example:

  • 1st year commission at 10%
  • 2nd year commission at 7%
  • 3rd year commission at 3%
  • 4th year and on commission 0%

These numbers are #Salesman specific. They are stored in the Commision Shedule table of the Salesman Profile.

Given #Salesman has same schedule for all of his #Salesman Accounts.

[edit] Commission Amount

Commission Amount - dollar amount of commission that given #Salesman receives for specific #Client Company for specific Time Frame.

  • if a profit on that CT, then there is commission due
  • if a loss on that CT, then there is NO commission due

Example 1

Assume that:

  • for Client Company ABC Corp. salesman John Smith has a Commission Percentage of 10% for Dec 2009 and 5% for Jan 2010
  • Gross Profit for Client Company ABC Corp. for Dec 2009 is 2000 USD
  • Gross Profit for Client Company ABC Corp. for Jan 2010 is 1000 USD
  • Commission Start Date of John Smith for Client Company ABC Corp. is Jan 1, 2009

Then Commission Amount for Client Company ABC Corp., salesman John Smith and time frame from Dec 1, 2009 to Jan 31, 2010 is:

2000 x .10 + 1000 x .05 = 200 + 50 = 250

[edit] Salesman Monthly Target

A dollar figure set by the VP of sales that a salesman is to reach per calendar month for all of his #Salesman Accounts.

[edit] Salesman Monthly Actual

It is calculated by adding all profit values for all shipments associated with all of her accounts.

[edit] Design

[edit] Access Restrictions

  • Access Restrictions to info from Salesman Profiles should be limited to management users only.

[edit] Data Tables

  • There are three tables for Salesman feature:
    • Commision Shedule table
      • This table corresponds to the #Commission_Schedule specification and represents change in Commission Percentage of current Salesman.
      • System keeps history of all set Percentage values of Salesman for each Time frame, but displays only actual of them.
      • Table consists:
        • Time Frame - time in years has elapsed since #Commission_Start_Date.
        • Commission Percentage - number representing share of a Jaguar profit that is due to the current Salesman.
        • Date Set - date of set percentage value for Time frame for the current Salesman. details needed --Andrei 17:31, 11 January 2011 (EST)
      • Current Salesman has same schedule for all of his #Salesman_Account.
    • Salesman Accounts table
      • This table contains list of all Salesman Accounts with appropriate Commission Start/End Dates.
      • Table consists:
        • Client Company (=Salesman Account) - company which agrees to send us orders (CTs).
        • Commission Start Day - first date to calculate commission for specified Client Company.
        • Commission End Day - last date to calculate commission for specified Client Company.
    • Salesman Monthly table
      • This table contains list of set target Salesman Montly values.
      • Table consists:

[edit] Detailed Design

[edit] Business Workflows and Events

Normal Workflows:

  • New Salesman Hired
  • Set Monthly target for Salesman (first time)
  • Salesman gets his first account
  • Calculate Salesman Commissions
  • Generate Salesman Target Report
  • Update Monthly target for Salesman
  • Add additional accounts
  • Close Accounts
  • Change Commission schedule
  • Delete or Archive Salesman

Some Exceptional Workflows:

  • Salesman hired with accounts
  • Client added by mistake
  • No targets set

[edit] Figures

[edit] Consolidated Example of Data Tables

File:Salesman_profile.gif

[edit] History

[edit] 0002052: (Salesman: Profile) Create this new component

Personal tools