Original requirements in
Split from
Create a new custom object : named Pricing Campaign CPC with: the following characteristics:
| Label | Pricing Campaign CPC |
|---|---|
| Plural Label | Pricing Campaign CPCs |
| Object Name | Pricing_Campaign_CPC |
| Description | IPP-182 |
| Record Name | Pricing Campaign CPC Name |
| Data Type | Auto Number |
| Display format | CPC -{00000000} |
| Allow Reports | True |
| Allow Activitie | True |
| Track Field History | True |
| Allow in Chatter Groups | False |
| Enable Licensing | False |
| Allow Sharing | True |
| Allow Bulk API Access | True |
| Allow Streaming API Access | True |
| Deployment Status | Deployed |
| Allow Search | True |
| Record Types | None required (Master only) |

| Field Name | API Name | Data Type | Track History | Required | Read Only | Picklist Values or formula | Help Text | Profile access | Comments | Layout Section | Needed for initial Data Load (Kunal files)? | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Owner | Owner | Lookup(User,Group) | Yes | Yes (default) | Pricing Campaign CPC Owner (standard Owner field of the object); See Automation Section | Information | ||||||
| 2 | Account Manager Review | Account_Manager_Review__c | Picklist | Yes |
| Restrict picklist to the values defined in the value set = TRUE See Account_Manager_Review_cannot_be_null VR | Account Manager input | ||||||
| 3 | Annual sales | Annual_sales__c | Number(18, 0) | Yes, on layout | Metrics | ||||||||
| 4 | Annual volume | Annual_volume__c | Number(18, 0) | Yes, on layout | Metrics | ||||||||
| 5 | Capped Reco price - Document Currency | Capped_Reco price_Document_Currency__c | Currency(18, 0) | Not relevant for initial Data load | |||||||||
| 6 | Capped Reco price - Pricing Currency | Capped_Reco price_Pricing_Currency__c | Currency(18, 0) | Not relevant for initial Data load | |||||||||
| 7 | Capped Recommended price (%) | Capped_Recommended_price__c | Percent(18, 0) | Yes, on layout | Overall | Not relevant for initial Data load | |||||||
| 8 | Committed price | Committed_price__c | Currency(18, 0) | Pre-populate with Capped_Reco price_Pricing_Currency__c on record creation (WFR. trigger, whatever) | Account Manager input | ||||||||
| 9 | Contracting model | Contracting_model__c | Text Area(255) | Dimension | Not relevant for initial Data load | ||||||||
| 10 | Country | Country__c | ???? | Requires Automation to grab value from Sold_To__c BillingCountry Note: the value that needs to be exposed in Pricing Campaign CPC is the full name of the Country, and not the ISO Code (ie, United States and not US; Portugal and not PT). | Dimension | Not relevant for initial Data load | |||||||
| 11 | CPC Status | CPC_Status__c | Formula (Text) |
| Bring Quote (Opp) Stage if there is a Quote in the CPC record; otherwise, bring the Account Manager Review field. | Overall | |||||||
| 12 | Dataiku ID | Dataiku__ID__c | Text(50) (External ID) | Yes, on layout | Field to be populated by Dataiku with the Pricing campaign ID | Not relevant for initial Data load | |||||||
| 13 | Decision logic (path to microsegment) | Decision_logic_path_to_microsegment__c | Text Area(255) | Yes, on layout | To be aligned with Cheryl | Model Data | Not relevant for initial Data load | ||||||
| 14 | Document Currency | Document_Currency__c | Text Area(255) | Yes, on layout | Dimension | Not relevant for initial Data load | |||||||
| 15 | End Use | End_Use__c | Text Area(255) | If Value here is not present in End_Use of OLIs, system should ignore the one at CPC level | Dimension | Not relevant for initial Data load | |||||||
| 16 | Forecasted annual volume | Forecasted_annual_volume__c | Number(18, 0) | If below MOQ populate first bracket on quote; on the Create Quote button - if this value is lower than the OLIs MOQ, than bring the MOQ field to the OLIs Estimated Annual Volume, otherwise, Estimate Annual Volume = Forecasted Annual Volume. | Metrics | Not relevant for initial Data load | |||||||
| 17 | FX rate used | FX_rate_used__c | Number(18, 0) | Yes, on layout | Metrics | Not relevant for initial Data load | |||||||
| 18 | Important features | Important_features__c | Long Text Area(32768) | Model Data | Not relevant for initial Data load | ||||||||
| 19 | Last price | Last_price__c | Number(18, 0) | Yes, on layout | Metrics | Not relevant for initial Data load | |||||||
| 20 | Local Currency | Local_Currency__c | Text Area(255) | Yes, on layout | Dimension | Not relevant for initial Data load | |||||||
| 21 | Market Cluster | Market_Cluster__c | Text Area(255) | Yes, on layout | If Value here does not match the one in Market Cluster of OLIs, system should ignore the one at CPC level | Overall | |||||||
| 22 | Market segment | Market_Segment__c | Text Area(255) | Yes, on layout | Dimension | Not relevant for initial Data load | |||||||
| 23 | Microsegment (node) | Microsegment_node__c | Number(18, 0) | Yes, on layout | Model Data | Not relevant for initial Data load | |||||||
| 24 | Modelling approach | Text Area(255) | Yes, on layout | Dimension | Not relevant for initial Data load | ||||||||
| 25 | Modelling level | Text Area(255) | Yes, on layout | Dimension | Not relevant for initial Data load | ||||||||
| 26 | Node price | Number(18, 0) | Yes, on layout | Metrics | Not relevant for initial Data load | ||||||||
| 27 | Price reco rationale | URL(255) | Yes, on layout | Link to Dataiku chart (when available) | Account Manager input | Not relevant for initial Data load | |||||||
| 28 | Pricing Campaign | Lookup(Pricing Campaign) | Yes, visible only on Compact Layout | See Section Compact Layout below | Dimension | on initial load, 3 campaigns: Long Tail, non-Long Tail and H2 | |||||||
| 29 | Pricing Currency | Picklist | Yes, on creation | Global Value Set: Pricing Currency
| Overall | Not relevant for initial Data load | |||||||
| 30 | Pricing Increment - Document Currency | Currency(18, 0) | Not relevant for initial Data load | ||||||||||
| 31 | Pricing Increment - EUR | Currency(18, 0) | Not relevant for initial Data load | ||||||||||
| 32 | Pricing Increment - Pricing Currency | Currency(18, 0) | Not relevant for initial Data load | ||||||||||
| 33 | Pricing region | Picklist | Yes, on creation | Use the newly created Global Value Set Pricing Region | Promote Opportunity.Region__c picklist values to Global Value Set (called Pricing Region) | Overall | Not relevant for initial Data load | ||||||
| 34 | Product | Lookup(Product) | Yes, on creation | Yes, visible only on Compact Layout | Retrieved from Product_Code__c - see Automations Section below
| Overall | will come from Product code automation | ||||||
| 35 | Product Code | Text(20) (External ID) | Yes, on creation | Yes, on layout | Dataiku source: material_group_product_lvl3_code SF match: Material Group Code field (Material_Group__c) on Product object | Overall | |||||||
| 36 | Product H4 | Picklist | X | Use Global picklist values | Dimension | Formula field to bring the Product H4 Name (ie. Aquivino) | |||||||
| 37 | Projected sales impact | Number(18, 0) | X | Overall | Formula - will be used for Dataiuk entries only | ||||||||
| 38 | Quantified importance of feature | Number(18, 0) | X | Model Data | Not relevant for initial Data load | ||||||||
| 39 | Quote | Lookup to Opportunity automatically filled if Quote was created via that specific CPC record | X | Not relevant for initial Data load | |||||||||
| 40 | Reason for rejection | Picklist | - Competitive threat - Growth customer or initiative - Price fixed by contract - Customer or product discontinued - Other (Please describe) | Account Manager input | Not relevant for initial Data load | ||||||||
| 41 | Region | Formula field to capture the Sold-to Account ECCO Reporting Region | Formula field | Use Global picklist values | Dimension | Not relevant for initial Data load | |||||||
| 42 | Rejection description | Free text | Account Manager input | Not relevant for initial Data load | |||||||||
| 43 | Sold-To | Account Lookup | Compact Layout | For full CPC - Needs to be aligned with account access rules (confidentiality, roll up to managers) | Retrieved from Sold To "SAP Code"; If failing to match during upload, needs to notify campaign owner Check SAP Code at account level. | Overall | Not relevant for initial Data load | ||||||
| 44 | Sold-To SAP Name | Free text | X | To store the SAP Name of the Sold-To "Account" | Overall | ||||||||
| 45 | Sold-To Code | Free text | Yes | X | Overall | ||||||||
| 46 | Team Cluster | Picklist | Formula | Formula field to grab value from Account;s Team Cluster | Dimension | Not relevant for initial Data load | |||||||
| 47 | Uncapped Recommended price - EUR | Number(18, 0) | X | Metrics | Not relevant for initial Data load | ||||||||
| 48 | Uncapped Recommended price (%) | Number(18, 0) | X | Metrics | Not relevant for initial Data load | ||||||||
| 49 | Unit of Measurement | Picklist | Same values as Unit of Measurement at Pricing setting level: Retrieve value of "Unit of Measure" from the corresponding product pricing setting (Region, currency, market segment) | Not relevant for initial Data load | |||||||||
| 50 | Weighted average price | Number(18, 0) | X | Metrics | Not relevant for initial Data load |
New Compact Layout

Compact Layout Assignment

| Validation Rule Name | Formula | Error Message | Error Location | |
|---|---|---|---|---|
| Account_Manager_Rejected |
| Please provide a Reason for Rejection. | Field: Reason for Rejection | |
| Account_Manager_Review_cannot_be_null |
| Account Manager Review cannot be null. | Field: Account Manager Review |
On record creation - the field Sold-To (Account lookup) needs to be automatically populated with the Account found via the value available in the Pricing Campaign CPC field Sold-To Code - the Account field where the code can be queried is:
SAP Code | SAP_Sold_To_Number__c | Text(10) (External ID) (Unique Case Insensitive) |
On insertion of Pricing Campaign CPC record - the standard Owner User lookup needs to be the same as the Account Owner from the Account lookup (Sold-To) retrieved from the automation Account lookup retrieval
On insertion of Pricing Campaign CPC record - the Product_Code__c value should be used to do a lookup on all the Product records (specifically on its field Product___r.Material_Group__c);
Sharing and security : Private (only Owner and user above in role hiearchy) + Edit access. Do we need to give a view all and/or modify all to some profiles or users ? Is some region managers who need to see more than their records ? What about confidential accounts ? Access only by owner or account team ? Product manager access ?
Don’t create tab for this object
Create a “Pricing Campaign CPC” tab at Pricing campaign level