自定义报价单关闭体验
作为管理员,您可以自定义报价单关闭体验的以下方面,让您的销售人员能够快速高效地关闭报价单:
- 在“报价单关闭”对话中将创建修订报价单字段的默认值更改为否,以避免创建不需要的修订。
- 添加命令按钮可在不打开“报价单关闭”对话的情况下快速关闭报价单。
使用功能区自定义可自定义这些报价单关闭体验。
更改创建修订报价单的默认值
当您的销售人员在 Dynamics 365 中关闭报价单时,他们可以选择在原始报价单的基础上创建修订报价单。 默认情况下,此选项在“报价单关闭”对话中打开。 但是,您可能需要将其关闭,以避免创建不需要的修订。 要执行此操作,需要编辑报价单实体的功能区定义的代码。
功能区定义是一个 XML 文件,用于控制功能区按钮和菜单的外观和行为。 您可以通过下载默认功能区数据来访问它。 在 quoteRibbon.xml
文件中,找到 closeQuote
函数,单击关闭报价单按钮时会触发此函数。 此函数有一个布尔参数,用于设置创建修订报价单的默认值。 要将默认值更改为否,您需要将此参数的值从 true 更改为 false。 以下代码片段演示如何实现此目的:
<CommandDefinition Id="Mscrm.Form.quote.CloseQuote">
<EnableRules>
<EnableRule Id="Mscrm.QuoteIsActive" />
</EnableRules>
<DisplayRules />
<Actions>
<JavaScriptFunction FunctionName="Sales.QuoteRibbonActions.Instance.closeQuote" Library="$webresource:Sales/_static/SFA/quotes/QuoteRibbonActions.js">
<BoolParameter Value="true" /> <!-- Change this value from true to false -->
</JavaScriptFunction>
</Actions>
</CommandDefinition>
确保以上定义是实体自定义解决方案的一部分。 保存并发布更改后,在“报价单关闭”对话中创建修订报价单的默认值将为否。 销售人员仍然可以通过在对话框中选择是手动创建修订报价单。
将快速关闭报价单按钮添加到命令栏
默认情况下,当销售人员关闭报价单时,会打开“报价单关闭”对话,让他们输入其他信息。 作为管理员,您可以通过添加快速报价单关闭按钮来自定义这种体验,该按钮可以让您的销售人员只需点击一下即可关闭报价单。
您可以添加多个按钮来启用不同的行为。 例如,您可以添加一个按钮来作为丢单关闭报价单并创建修订,还可以添加另一个按钮在取消状态下关闭报价单并结束商机。 以下屏幕截图是如何实现快速报价单关闭按钮的示例:
您可以使用功能区自定义将这些按钮添加到命令栏中。
要添加按钮,在报价单功能区自定义中定义新的自定义操作,并使用 QuoteRibbonActions.js
文件中的 Sales.QuoteRibbonActions.Instance.quickCloseQuoteWithoutDialog
javascript 函数
QuoteRibbonActions.js
文件用于其命令操作。
重要提示
所有这些参数都是必需的,必须按照给定顺序传递。 如果您缺少这些参数中的任何一个,按钮将无法工作。
IntParameter(状态描述):使用 IntParameter 指定报价单关闭的原因。
允许的值:5 表示“丢单”,6 表示“取消”,7 表示“修订”BoolParameter(创建修订):使用第一个 BoolParameter 指定是否要创建修订报价单。
允许的值:true、falseBoolParameter(结束商机):使用第二个 BoolParameter 指定是否结束关联的商机。
允许的值:true、false
以下代码片段包括一个示例命令定义,用于作为丢单关闭报价单并创建修订:
<CommandDefinitions>
<CommandDefinition Id="new.quote.Command0.Command">
<EnableRules>
<EnableRule Id="new.quote.EnableRule0.EnableRule" />
</EnableRules>
<DisplayRules />
<Actions>
<JavaScriptFunction FunctionName="Sales.QuoteRibbonActions.Instance quickCloseQuoteWithoutDialog" Library="$webresource:Sales/_static/sfa/quotes/QuoteRibbonActions.js">
<IntParameter Value="5" />
<BoolParameter Value="true" />
<BoolParameter Value="false" />
</JavaScriptFunction>
</Actions>
</CommandDefinition>
</CommandDefinitions>