Salesforce Sales Cloud 零基础学习(一) Product 和 Price Book
以前的博客大部分都是基于force.com以及lightning展开的自定义开发,其实salesforce提供了很多的标准的功能以及平台, Sales Cloud便是作为Salesforce核心的平台之一,Sales Cloud实现的是 L2C的流程,即 Lead to Cash。 Salesforce 封装了很多标准对象,其中有一部分标准对象以及功能应用实现Sales Cloud,构造成基于销售漏斗的模式的庞大的Sales Cloud。
此篇主要讲述Sales Cloud中的 Product以及 Price Book。
一. Product
Product 是所有你要卖的产品和服务。Product 在salesforce 中的API 名称为 Product2.
一个公司的产品会特别多,可以通过 Product Family 来对Product进行分类,Product Family 是Product上一个自带的Picklist字段。
不同公司或者不同行业所卖的产品不一样, Product Family定义也会不同
比如华为等国内著名的通信公司,Family可能包括软件,硬件,通信,手机,电脑等等;
针对外语教学的公司,Family可能包括 小学,初中,高中,大学,托业,雅思等等;
如果你的org有自定义的预测,也可以通过 Product Family 对你的用户进行不同的配额 ,所以设置好Product Family 还是很重要的。
在salesforce中创建一个Product特别简单,只需要必须输入Product Name,可选择的输入 Product Code等信息,点击Save便完成了一个Product的创建,只有将Active勾选才可以将这个Product添加到 Price book , opportunities , quotes。

二. Price Book
一个产品创建以后不可能独立存在,必须有一个标准的价格才可以引用在报价单中。产品价格维护在哪里,这里引出Price Book的概念。
Price Book 是一个定价的产品的集合,包括两种类型: 标准的价格手册以及自定义的价格手册;
标准价格手册是所有的产品以及服务默认的价格,无论什么产品,必须要有标准的价格手册。
针对公司来说,很多都是基于global市场的,不同的市场成熟度以及关税,竞争对手等原因,可能不同区域地区定价不同,这时就需要根据国家或者区域等 创建自定义的价格手册;
创建自定义的价格手册(Price Book)只需要创建 Price Book 的名称以及是否将他启用就创建好了。 Price Book 在Salesforce中的API名字叫 Pricebook2。
如果公司的销售业务是全球的,可以将Price Book 分成多种,比如亚太,欧美,欧洲,拉丁美,国内等等。

三. PriceBookEntry
Pricebook2 与 Product2 是多对多的关系,一个价格手册可以存在在多个产品上,一个产品也可以有多个价格手册,他们中间有一个关联表API名字为 PricebookEntry, 可以在 Product的关联列表以及 PriceBook的关联列表关联 PricebookEntry实现 PriceBook2 与 Product2的关联。
我们创建好一个 Product以后,必须先添加一个标准的价格手册,才可以继续添加自定义的价格手册。

下图展示此产品中添加了标准的价格手册为5000元,针对EMEA我们设置此产品的价格手册为6000元,针对AP设置为6500元。
针对此部分数据,其实在数据库中生成了3条 PriceBookEntry,分别绑定了standard/AP/EMEA的PriceBook2以及Test Hardware Product这个Product2。

Product2 / PriceBook2 / PriceBookEntry 表字段可以参看:https://help.salesforce.com/articleView?id=products_fields.htm&type=5
针对上面的记录,我们可以搜索PriceBookEntry获取具体信息:
SELECT Product2.Name,Product2.ProductCode, Product2.Family,
Pricebook2.Name,UnitPrice
FROM PricebookEntry
WHERE Product2.Name = 'Test Hardware Product'
结果展示:
{
"done": true,
"records": [
{
"Product2": {
"Name": "Test Hardware Product",
"ProductCode": "THP001",
"Family": "Hardware",
"attributes": {
"type": "Product2",
"url": "/services/data/v35.0/sobjects/Product2/01t0I000006vngqQAA"
}
},
"UnitPrice": 6000.0,
"attributes": {
"type": "PricebookEntry",
"url": "/services/data/v35.0/sobjects/PricebookEntry/01u0I00000AUZ5mQAH"
},
"Pricebook2": {
"Name": "EMEA",
"attributes": {
"type": "Pricebook2",
"url": "/services/data/v35.0/sobjects/Pricebook2/01s0I00000DFFk0QAH"
}
}
},
{
"Product2": {
"Name": "Test Hardware Product",
"ProductCode": "THP001",
"Family": "Hardware",
"attributes": {
"type": "Product2",
"url": "/services/data/v35.0/sobjects/Product2/01t0I000006vngqQAA"
}
},
"UnitPrice": 6500.0,
"attributes": {
"type": "PricebookEntry",
"url": "/services/data/v35.0/sobjects/PricebookEntry/01u0I00000AUZ5rQAH"
},
"Pricebook2": {
"Name": "AP",
"attributes": {
"type": "Pricebook2",
"url": "/services/data/v35.0/sobjects/Pricebook2/01s0I00000DFFnsQAH"
}
}
},
{
"Product2": {
"Name": "Test Hardware Product",
"ProductCode": "THP001",
"Family": "Hardware",
"attributes": {
"type": "Product2",
"url": "/services/data/v35.0/sobjects/Product2/01t0I000006vngqQAA"
}
},
"UnitPrice": 5000.0,
"attributes": {
"type": "PricebookEntry",
"url": "/services/data/v35.0/sobjects/PricebookEntry/01u0I00000AUZ5hQAH"
},
"Pricebook2": {
"Name": "Standard Price Book",
"attributes": {
"type": "Pricebook2",
"url": "/services/data/v35.0/sobjects/Pricebook2/01s28000004fVQMAA2"
}
}
}
],
"totalSize": 3
}
查询结果
当我们希望Product2 active/inactive时,自动将其上面所有PriceBook2 active/inactive时,我们可以在Setup搜索 Product Settings,将‘When changing active flag on a product record, automatically update active flag on related prices’ 勾选即可。
Product2的信息可能存在于以下的关联列表中:
Opportunity / Quote / Order / Contract.
Product 关联列表和 Quote Line Item 关联列表会显示 相关联的 Product信息。
总结:Salesforce的Sales Cloud的功能很强大,本篇只是描述最基本的Product以及Pricebook之间的关系,后期还会持续更新Lead -> Cash 过程中的业务以及相关的表和功能。篇中有错误地方欢迎指出,有问题欢迎留言。
Salesforce Sales Cloud 零基础学习(一) Product 和 Price Book的更多相关文章
- Salesforce Sales Cloud 零基础学习(三) Lead & Opportunity & Quote
上一篇讲的是Account 和 Contact,本篇主要描述 Lead & Opportunity & Quote.他们的主要的作用如下: Lead 用来存储潜在客户. Opportu ...
- Salesforce Sales Cloud 零基础学习(二) Account 和 Contact
上一篇我们讲了Sales Cloud 中关于一个公司的产品和定价手册的概念,产品需要卖给企业客户(包括渠道伙伴以及合作伙伴等等)或者是个人客户,那客户信息存在哪里?针对企业客户,通过谁去串联起和企业客 ...
- Salesforce Sales Cloud 零基础学习(四) Chatter
Chatter是一个Salesforce实时协作应用程序,它允许你的用户一起工作.互相交谈和共享信息,不管用户角色或位置如何,连接.并激励用户在整个组织内高效工作. Chatter 让用户们在 Opp ...
- Community Cloud零基础学习(五)Topic(主题)管理
我们以前讲过 Service Cloud 零基础(三)Knowledge浅谈,我们日常可以看见很多得文章或者帖子,我们可以将其通过data category / group进行管理.但是一个系统中得文 ...
- Salesforce 集成篇零基础学习(一)Connected App
本篇参考: https://zhuanlan.zhihu.com/p/89020647 https://trailhead.salesforce.com/content/learn/modules/c ...
- Service Cloud零基础学习(二)Entitlement & MileStone
https://trailhead.salesforce.com/content/learn/modules/entitlements 很少会有人不买东西,买的多了也很少没有人没有经历过售后流程.我们 ...
- Community Cloud零基础学习(一)启用以及简单配置
本篇参考: https://trailhead.salesforce.com/en/content/learn/trails/communities https://trailhead.salesfo ...
- Community Cloud零基础学习(三)Partner Account
本篇参考:http://salesforce.vidyard.com/watch/bLE3QNRSej2iasw9vvc6Tk http://salesforce.vidyard.com/watch/ ...
- Community Cloud零基础学习(四)Builder创建自定义的布局
前几篇讲了Community Cloud权限配置等信息,但是没有太讲过 Community如何进行配置layout,本篇主要描述使用Builder去进行符合需求的Community Layout的构建 ...
随机推荐
- 虚拟DOM
传统的 DOM 操作是直接在 DOM 上操作,当需要修改一系列元素中的值时,就会直接对 DOM 进行操作.如果需要操作的DOM元素过多,则成本太高,而采用 Virtual DOM 则会对需要修改的 D ...
- 获取ADO连接字符串
自己如何获取ADO连接字符串 有时候我们参考网上的ADO连接字符串写未必就能连接上数据库.今天详细介绍下这个很流行的如何获取ADO字符串的方法,就能很容易直观看到这个连接字符串是否真能连接上数据库.编 ...
- 快速排序——JavaScript实现
基本原理: 1.从一个数组中任意挑选一个元素作为中轴元素: 2.将剩下的元素以中轴元素作为比较的标准,将小于等于中轴元素的放到中轴元素的左边,将大于中轴元素的放到中轴元素的右边: 3.以当前中轴元素的 ...
- maven学习四:maven集成jetty插件发布web项目 标签: maven
http://blog.csdn.net/u014079773/article/details/50167833
- 【翻译】Flume 1.8.0 User Guide(用户指南) source
翻译自官网flume1.8用户指南,原文地址:Flume 1.8.0 User Guide 篇幅限制,分为以下5篇: [翻译]Flume 1.8.0 User Guide(用户指南) [翻译]Flum ...
- JPA的初级CRUD-01
一.JPA 1.1 什么是JPA JPA:(Java Persistence API) ORM的规范 JPA是规范,Hibernate是它的实现(不唯一,但最好) 最底层的操作还是JDBC(引入驱动包 ...
- uni-app 顶部导航点击更换图标
更换顶部导航的iconfont.ttf图标,先在配置文件配置好按钮: pages.json文件 "buttons": [ { "text": "\ue ...
- js的map方法遍历数组
map方法有返回值,返回值用变量接收. 例子: var num = [1, 2, 3]; var newNum = num.map((ele, index) => { return ele + ...
- ProcessingElement.h
processing element模块 #ifndef __NOXIMPROCESSINGELEMENT_H__ #define __NOXIMPROCESSINGELEMENT_H__ #incl ...
- java操作FTP的一些工具方法
java操作FTP还是很方便的,有多种开源支持,这里在apache开源的基础上自己进行了一些设计,使用起来更顺手和快捷. 思路: 1.设计FTPHandler接口,可以对ftp,sftp进行统一操作, ...