将解决方案用于您的自定义项

 

发布日期: 2017年2月

适用于: Dynamics 365 (online),Dynamics 365 (on-premises),Dynamics CRM 2016,Dynamics CRM Online

Microsoft Dynamics 365 中执行的任何自定义都在某个解决方案的上下文中完成。 如果您不确定解决方案是什么,请参阅您需要了解的有关解决方案的信息

本主题内容

默认解决方案

导航到某个特定解决方案

使用解决方案资源管理器

创建自己的解决方案

导入、更新和导出解决方案

解决方案导出的设置选项

隐私声明

默认解决方案

在自定义 Microsoft Dynamics 365 时,通常使用默认解决方案。 若要打开默认解决方案,请导航到“设置”>“自定义”,并选择“自定义系统”。

提示

在打开默认的解决方案之后,使用 Ctrl+D 可在浏览器中创建收藏夹或书签。 这将有助于加快打开解决方案的速度(即使在尚未打开 Web 应用程序的情况下也是如此)。

每个组织都有一个默认解决方案,并且该解决方案有一些独特的属性。 默认解决方案包含组织中所有可用的解决方案组件。 其他解决方案可能包括默认解决方案中可见的部分解决方案组件,但默认解决方案包含所有组件。

提示

在开始创建新的自定义之前,请记住更改解决方案发布商自定义前缀。详细信息:解决方案发布商

导航到某个特定解决方案

如果您的组织已经有一个应在其中工作的特定解决方案,您可以通过这种方式找到该解决方案。 若要创建新解决方案,请参阅创建自己的解决方案。

打开非托管解决方案

  1. 转到“设置”>“自定义”。

  2. 选择“解决方案”。

  3. 双击要在其中工作的非托管解决方案以将其打开。

进入该解决方案后,您将看到解决方案组件。详细信息:添加解决方案组件

使用解决方案资源管理器

在解决方案资源管理器中,可以使用左侧的导航窗格在节点的层次结构中浏览,如以下屏幕截图所示:

Default solution with entities collapsed in CRM

备注

在解决方案管理器中使用自定义工具时,请使用鼠标和键盘。 应用程序的此部分并不是为了优化触屏效果。

在选择每个节点时,可以看到一个解决方案组件的列表。 命令栏中的可用操作会发生变化,具体取决于选择的节点的上下文,以及解决方案是默认解决方案还是托管解决方案。 对于不是默认解决方案的非托管解决方案,可以使用“添加现有”命令导入尚不在解决方案中的解决方案组件。

对于托管解决方案,将不会有可用的命令,您将看到一条消息:

不能直接在托管解决方案中编辑组件。如果解决方案组件的托管属性设置为允许自定义,则可以在“自定义项”区域或其他非托管解决方案中对其进行编辑

您将需要查找默认解决方案中的解决方案组件,并尝试在其中组件,或将其添加到已经创建的其他非托管解决方案。 解决方案组件可能不可自定义。详细信息:托管属性

您需要执行的许多自定义将涉及到实体。 您可以展开“实体”节点以显示可进行某种程度的自定义的系统中的所有实体的列表。 您可以进一步展开每个实体以查看组成实体的解决方案组件,如以下屏幕截图中的帐户实体所示:

Default Solution showing expanded account entity

有关自定义解决方案资源管理器中找到的单个解决方案组件的详细信息,请参阅以下主题:

创建自己的解决方案

因为默认解决方案包含所有解决方案组件,因此,如果您创建了一个单独的解决方案并在其中完成了所有自定义,则可以更加容易地直接查找已经自定义的解决方案组件。 这样可以轻松地将您的解决方案的备份导出为一个较小的文件。 如果选择执行此操作,则务必记住将您编辑的所有解决方案组件添加到此解决方案中。 在创建新的解决方案组件时,应始终在此解决方案组的上下文中创建这些组件。 这样一来,解决方案发布商自定义前缀将得到一致的应用。 在您的解决方案中创建了解决方案组件或向其中添加了现有解决方案组件后,还可以根据需要在默认解决方案中编辑它们。

  1. 导航到“设置”>“解决方案”。

  2. 选择“新建”并完成解决方案所需要的字段。

    字段

    说明

    显示名称

    在解决方案列表中显示的名称。 以后可以更改此属性。

    客户

    解决方案的唯一名称。 这是使用您在“显示名称”字段中输入的值生成的。 可以在保存解决方案之前编辑此值,但在保存了解决方案之后,将无法对其进行更改。

    发布者

    可以选择默认发布商,也可以创建一个新发布商。 除非您打算分发您的解决方案,否则应仅使用您的组织的默认发布商。

    版本

    输入您的解决方案的版本号。 此数据仅在导出解决方案时有重要意义。 在导出解决方案时,版本号将包括在文件名中。

  3. 选择“保存”。

在保存了解决方案之后,可能需要在非必填字段中添加信息。 这些步骤是可选的。 使用“说明”字段描述解决方案,并选择 HTML Web 资源作为解决方案的“配置页”。 配置页通常由分发解决方案的 ISV 使用。 完成此设置后,一个新的“配置”节点会出现在“信息”节点下面以显示此 Web 资源。 开发人员将使用该页面来加入允许您设置配置数据或启动其解决方案的指令或控件。

添加解决方案组件

在创建了解决方案之后,其中不会包含任何解决方案组件。 您可以创建新的解决方案组件,也可以使用列表菜单中的“添加现有”按钮添加默认解决方案中的任何解决方案组件。

执行此操作时,可能会出现“缺少必需组件”对话框。

Add Required Components Dialog

此对话框提醒您该解决方案组件依赖于其他解决方案组件。 如果选择“否,不包含必需组件”,则解决方案可能会在您将其导入到所有这些必需组件都不存在的其他组织中时可能会失败。 如果解决方案导入成功,则另一解决方案中的行为可能并不与原始组织完全相同,因为组件的配置方式不同于源解决方案中的组件。

通常,如果您打算将解决方案导出到其他组件,更安全的做法是将必需组件包括在内。 如果当您添加个人解决方案组件时没有添加这些组件,您可以稍后返回,选择所添加的解决方案组件并从选单中择菜“添加所需组件”。

如果您不打算导出解决方案,或者只打算将其导出为非托管解决方案并将其重新导入回同一组织,则不必包括必需组件。 如果曾导出解决方案,则将看到另一个警告,指示缺少某些必需组件。 如果只是要将该解决方案导入回同一组织,可可忽略此警告。 不使用第三方编辑工具编辑应用程序导航或功能区的步骤会期望您将解决方案重新导出到同一组织。

导入、更新和导出解决方案

导入、更新或导出解决方案的步骤可能取决于组织的规模、内部开发实践以及是否在开发将作为托管解决方案分发的解决方案。

  • 如果您的组织是只有少量自定义的小型组织,并且您是唯一的定制员,则除了定期导出默认解决方案以创建备份或者选择或购买他人提供的托管解决方案之外,您可能永远不会导出或导入解决方案。

  • 有些组织将让外部公司为其创建自定义。 在这种情况下,他们将导出其当前拥有的所有自定义,并将其发送到外部公司。 该公司将开发并测试自定义项,然后将其发回给组织供导入。

  • 大型组织可能会有多个团队的人员在自定义系统。 他们只能有一个仅从事开发和自定义的单独组织。 除了组织中每个人实际使用的生产组织以外,这些组织还经常有单独的测试组织和 UAT(用户认可测试)组织。 这些组织依赖于从一个组织导出和导入自定义来继续到创建、测试和验证解决方案流程中的下一步。

您选择的策略应取决于您的需要。 要记住的一些重要事情:

  • 您无法将默认解决方案导出为托管解决方案。

  • 我们不支持将内部部署中的默认解决方案导入到 Dynamics 365(在线) 组织中,或者将 Dynamics 365(在线) 组织中的默认解决方案导入到内部部署。 我们支持在这些部署类型之间导入自定义解决方案,但不支持导入默认解决方案。

  • 导出托管解决方案时,无法将其重新导入到从中将其导出的组织。

  • 当您打算分发解决方案,请仅将其导出为托管解决方案。

  • 除非确定要在非托管解决方案中的所有自定义项,并允许这些自定义项覆盖您以前创建的任何自定义项,否则永远不要导入非托管解决方案。

  • 解决方案不能删除任何内容。 导入一个非托管解决方案可能会覆盖现有的自定义,但其不能完全移除它们。 例如,如果您为实体创建一个自定义字段,并随后导入包含不具有自定义字段的实体定义的解决方案,那么您创建的自定义字段将依然存在。 同样,您导入的解决方案中的任何变化都将存在。

  • 不能导入与现有实体具有相同名称的自定义实体。 但是,Microsoft Dynamics 365 允许重复显示名称。

  • 只能导入您对其拥有组织级创建、读取和更新权限的项。

  • 必须具有系统管理员安全角色才能导入安全角色、组织设置、SDK 消息处理步骤和插件程序集。

  • 如果您导入包括系统上未安装的语言的自定义项,则在自定义项中定义的任何标签都将默认为 Microsoft Dynamics 365 系统(从中导入自定义项的系统)的基本语言。

  • 所有导入的安全角色都将附加到根业务部门。

  • 如果导入的安全角色来自同一个 Dynamics 365 系统,则将合并应用于该安全角色的所有更改。 安全角色的系统实体上的所有权限都将替换为由导入的安全角色所定义的权限。

导入解决方案

可以使用以下步骤手动导入解决方案。 只能导入从受信任源获取的解决方案。 自定义项可能包含可向外部源发送数据的代码。

  1. 转到“设置”>“解决方案”。

  2. 在解决方案列表菜单,选择“导入”。

  3. 在“导入解决方案”对话框中,选择解决方案包步骤将浏览找到包含要导入的解决方案的压缩(.zip 或 .cab)文件。

  4. 选择“下一步”

  5. 在您“导入”前,您能够查看关于解决方案的信息。

  6. 在完成解决方案导入期间,可能需要等待一会儿。 若此不成功,则您可以查看结果并选择“关闭”。

如果导入了需要发布的任何更改,则这些自定义项只有在发布之后才可用。 有关更多信息,请参阅 发布自定义项

如果导入失败,您将看到显示捕获的错误和警告的报告。 您能够选择“下载日志文件”以获取导致导入失败的详细信息。 解决方案导入失败的最常见原因是解决方案不包含一些必需的解决方案组件。

下载日志文件时,您将发现一个可以使用 Microsoft Office Excel 打开并查看内容的 XML 文件。

备注

无法编辑活动的传递规则集。 因此,如果您正在向带有同样 ID 规则的组织中导入包括可用路径规则组的解决方案,则解决方案导入失败。详细信息:为传递案例自动创建规则

更新解决方案

有时,您可能需要安装对现有托管解决方案的更新。 该过程类似于安装新的托管解决方案,但是会遇到一些不同的选项。 如果您要更新从其他人那里获取的解决方案,则应从解决方案发布商那里获取有关应选择哪些选项的指导。

  1. 转到“设置”>“解决方案”。

  2. 在解决方案列表菜单,选择“导入”。

  3. 在“导入解决方案”对话框中,选择解决方案包步骤将浏览找到包含要更新的解决方案的压缩(.zip 或 .cab)文件。

  4. 选择“下一步”

  5. 在您选择“下一步”前可以查看关于解决方案的信息。 该页面将无法显示一个黄色条,指示“此解决方案包中包含已安装的解决方案的更新”。

  6. 您将具有以下选项:

    • 维护自定义项(推荐)

      选择此选项将保留对组件执行的所有非托管自定义项,但也表示此解决方案中包含的某些更新将不会生效。

    • 覆盖自定义项

      选择此选项会覆盖包括在此解决方案中的之前对组件执行的任何非托管的自定义项。 包括在此解决方案中的所有更新都将生效。

    选择适合的选项,然后选择“下一步”。

  7. 在完成解决方案导入期间,可能需要等待一会儿。 若此不成功,则您可以查看结果并选择“关闭”。

如果导入了需要发布的任何更改,则这些自定义项只有在发布之后才可用。 有关更多信息,请参阅 发布自定义项

解决方案发布商可能会要求您导入现有的非托管自定义项,使用该选项更新其托管解决方案来覆盖自定义项,然后重新导入您的非托管自定义项。 这将有助于确保应用他们预期的更改,同时保留您的自定义项。

导出解决方案

我们建议您定期导出您的非托管自定义项,以便拥有备份以备不时之需。 您无法导出托管解决方案。

  1. 转到“设置”>“解决方案”。

  2. 在列表中选择您想要到处的解决方案并选择“导出”。

  3. 在“发布自定义项”步骤中,会提醒您只导出已发布的自定义,并且在选择“下一步”前您可以选择“发布所有自定义项”。

  4. 如果您的解决方案中包含任何缺少的必需组件,则将显示“缺少必需组件”步骤。 仅当您打算将此解决方案作为非托管解决方案导入到原组织时,才能忽略此警告。 否则,请按照对话框内的说明取消操作并添加必需组件。

  5. 在“导出系统设置(高级)”步骤中,可以选择要包括在您的解决方案中的某些系统设置。 若您的解决方案基于系统设置组的任一一个,选中并选择“下一步”。

    有关随各个选项提供的设置的详细信息,请参阅解决方案导出的设置选项。

  6. 在“包类型”步骤中,必须选择是将解决方案导出为“非托管”解决方案还是“托管”解决方案。

  7. 下一步允许您为特定的 Dynamics 365 版本选择目标解决方案。 那些可能要导出符合早期版本的解决方案的 ISV 通常使用此选项。 除非您要将该解决方案导入到未升级到与您所使用的组织版本相同的版本的组织中,否则接受默认即可。

    有关详细信息请参阅 SDK 主题MSDN:导出适用于特定 Dynamics 365 版本的解决方案

  8. 选择“导出”,以下载解决方案文件。

下载文件相关的具体行为会因浏览器不同而有差异。

备注

您可以使用“导出为”解决方案从 适用于 Microsoft Dynamics 365 的 2016 年 12 月更新(联机) 导出到 Microsoft Dynamics CRM Online 2016 更新 1 和从 适用于 Microsoft Dynamics 365 的 2016 年 12 月 Service Pack(本地) 导出到 Microsoft Dynamics CRM 2016 Service Pack 1。

解决方案导出的设置选项

下表显示了导出解决方案时可用的选项:

设置

说明

自动编号

市场活动前缀

用于市场活动编号的前缀。

案例前缀

用于整个 Microsoft Dynamics 365 中所有案例的前缀。

合同前缀

用于整个 Dynamics 365 中所有合同的前缀。

发票前缀

用于整个 Dynamics 365 中所有发票编号的前缀。

文章前缀

用于 Dynamics 365 中所有文章的前缀。

订单前缀

用于整个 Dynamics 365 中所有订单的前缀。

唯一字符串长度

追加到发票编号、报价单号和订单号的字符数。

日历

日历类型

系统的日历类型。 默认设置为美国公历

日期格式代码

有关日期在整个 Microsoft Dynamics 365 中的显示方式的信息。

日期分隔符

在 Dynamics 365 的日期格式中用于分隔年、月、日的字符。

约会最长持续时间

约会可以持续的最多天数。

显示周数

用于指定是否在 Dynamics 365 的日历中显示周数的信息。

时间格式代码

用于指定时间在整个 Dynamics 365 中的显示方式的信息。

周起始日代码

在整个 Dynamics 365 中指定的每周的第一天。

自定义项

是否启用应用程序模式

指示是否将 Dynamics 365 加载到一个未启用地址栏、工具栏和菜单栏的浏览器窗口。

电子邮件跟踪

允许使用未解析的地址电子邮件发送

指示是否允许用户发送电子邮件至未解析方(另一方必须有一个电子邮件地址)。

忽略内部邮件

指示由内部 Dynamics 365 用户或队列发送的邮件是否应该被追踪。

最大跟踪号

回收利用前的最大追踪数目。

呈现电子邮件的安全框架

在安全=“受限”属性集的情况下,在 IFRAME 的 web 表单中标记以呈现电子邮件主体。 这是附加的安全措施,但可能导致提示凭据。

跟踪前缀

跟踪令牌前缀的历史记录列表。

跟踪令牌 xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" 基础

用于向隶属于不同部署的用户提供单独的跟踪令牌标识符的基数目。

跟踪令牌 xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" 位数

用于代表跟踪令牌标识符的数字位数。

常规

阻止附件

防止上载或下载某些被视为危险的附件类型。

货币格式代码

有关货币符号在 Dynamics 365 中的排列格式的信息。

货币符号

货币符号

全名显示顺序

在 Dynamics 365 中,名称将被显示的顺序。

启用显示状态

有关是否启用 IM 显示状态的信息。

负数格式

用于指定负数在整个 Dynamics 365 中的显示方式的信息。

数字格式

指定数字在整个 Dynamics 365 中的显示方式。

定价小数精度

价格可使用的小数位数。

分派时与先前负责人共享

用于指定分派时是否与先前负责人共享的信息。

市场营销

允许自动创建响应

指示是否允许创建自动响应

允许自动取消预订

指示是否允许自动取消预订。

允许自动取消预订确认

指示是否允许发送自动取消订阅确认电子邮件。

允许市场营销电子邮件执行

指示是否允许营销邮件执行。

Outlook 同步

允许通讯簿同步

指示 Microsoft Office Outlook 中是否允许后台通讯簿同步。

允许脱机计划同步

指示是否允许 Microsoft Office Outlook 中的后台脱机同步。

允许计划同步

指示是否允许与 Outlook 的计划同步。

电子邮件发送轮询频率

在 Outlook 中用于发送电子邮件的普通轮询频率。

地址同步最低频率

在 Outlook 中用于通讯簿同步的普通轮询频率。

最低脱机同步频率

在 Outlook 中用于后台脱机同步的普通轮询频率。

最低同步频率

预定 Outlook 同步间的最短允许时间。

自动标记最大周期数

收到一封新电子邮件时,邮件自动标记所需的最大轮询周期数目

自动标记时间间隔

Outlook 中电子邮件自动标记的正常轮询频率。

ISV 配置

服务日历外观配置

可以定义服务日历的视觉样式。详细信息:MSDN:服务日历外观配置

隐私声明

启用解决方案即表示您同意与外部系统共享数据。 从外部系统导入到 Microsoft Dynamics 365 (online) 的数据将受我们隐私声明的约束,您可以在此处访问我们的隐私声明。

您可以在 Microsoft Dynamics 365 (online) 中导入和导出解决方案。 在执行此操作时,将通过您的计算机与 Microsoft 服务器之间的安全连接传输解决方案,其中可能包含个人信息。 反之,导入到 Dynamics 365 (online) 的第三方代码最终可以将客户数据传输到外部系统(即 InsideView),或配置/扩展与 Microsoft 以外的一方控制的其他外部系统实现同步(即导出)的实体。
如果要导入的解决方案会将客户数据传输到 Dynamics 365 (online) 安全边界以外的位置,管理员将受邀在将第三方代码上传到 Dynamics 365 (online) 实例之前验证服务/软件/应用程序调用的客户数据的类型。
第三方服务/软件/应用程序或解决方案对客户数据的提取由客户而非 Microsoft 控制。 这些外部解决方案提取的数据点适用的最终规定和隐私政策由管理员控制;建议运行这些服务/软件/应用程序的第三方对适用政策进行充分审核。

另请参阅

自定义入门
使用细分的解决方案和修补程序简化解决方案更新
自定义所需的权限
自定义概念
自定义概述
白皮书:解决方案生成器的模式和原理

© 2017 Microsoft。 保留所有权利。 版权