使用功能区将参数传递给 URL
发布日期: 2017年1月
适用于: Dynamics 365 (online),Dynamics 365 (on-premises),Dynamics CRM 2016,Dynamics CRM Online
功能区操作在 <CommandDefinition> (RibbonDiffXml) 元素的 <Actions> (RibbonDiffXml) 元素中定义。 使用功能区,将上下文 Microsoft Dynamics 365 信息作为查询字符串参数传递给 URL 的方法有多种。
使用 <Url> (RibbonDiffXml) 元素。 在 Url 元素中,使用 PassParams 属性。
将 <Url> (RibbonDiffXml) 元素与 <CrmParameter> (RibbonDiffXml) 元素结合使用。 在从 Url 元素使用时,必须设置名称属性值。
将 <JavaScriptFunction> (RibbonDiffXml) 元素与 <CrmParameter> (RibbonDiffXml) 元素结合使用。
使用 PassParams 属性设置动态值
使用 PassParams 属性向目标 URL 传递参数时,会向目标应用程序提供记录或用户上下文的相关信息。 如果功能区控件是使用 PassParams 属性配置的,则传递所有参数。 下表列出传递的参数。
参数 |
客户 |
说明 |
---|---|---|
typename |
实体名称 |
实体的名称。 对于自定义实体,该参数包括自定义前缀,例如 new_entityname。 |
type |
实体类型代码 |
唯一标识当前组织中的实体的整数。 备注 Entity Type Code 值由实体在组织中的创建顺序决定。 不同组织中,客户实体的Entity Type Codes通常不同。 |
id |
对象 GUID |
表示记录的全局唯一标识符 (GUID)。 |
orgname |
组织名称 |
组织的唯一名称。 |
userlcid |
用户语言代码 |
当前用户使用的语言代码标识符。 |
orglcid |
组织语言代码 |
代表组织的基本语言的语言代码标识符。 |
四位数或五位数区域设置 ID 的语言代码。 可在区域设置 ID (LCID) 图表中找到有效区域设置 ID 值。
备注
建议使用实体名称而非实体类型代码,因为实体类型代码在不同的 Microsoft Dynamics 365 安装中可能不同。
示例
以下示例显示不带参数的 URL:
http://myserver/mypage.aspx
以下示例显示当为称作“AdventureWorksCycle”的组织的帐户实体提供功能区控件时包括的参数,如果用户的语言和组织基本语言为英语,则帐户记录的 GUID 为 DBD5DBFB-0666-DC11-A5D9-0003FF9CE217:
http://myserver/mypage.aspx?orgname=AdventureWorksCycle&userlcid=1033&orglcid=1033&type=1&typename=account&id=%7BDBD5DBFB-0666-DC11-A5D9-0003FF9CE217%7D
在 URL 中使用 Querystring 参数
可以在 URL 属性中包括 querystring 参数。 如果您希望使用使用 URL 打开窗体、视图、对话框和报表打开特定 Microsoft Dynamics 365 记录或视图,则这会非常有用。
备注
如果 URL 包括用于在 URL 中分隔多个 querystring 参数的和号 (&) 字符,您将无法导入功能区。 该字符会使 XML 无效。 必须对带“&”的 URL 属性值中的和号字符进行转义。
读取已传递的参数
通常使用 HttpRequest.QueryString 属性在目标 .aspx 页中读取传递的参数。详细信息:HttpRequest.QueryString 属性
备注
如果 URL 的目标是 Web 资源,则它只能接受主题将参数传递到 Web 资源中标识的参数。 传递自定义值的唯一机会是将它们包括在 data 参数中。 在单个参数中包括多个值需要一些特殊处理。详细信息:示例:通过 Data 参数向 Web 资源传递多个值
另请参阅
自定义命令和功能区
使用 URL 打开窗体、视图、对话框和报表
<Url> (RibbonDiffXml)
定义功能区选项卡显示规则
示例:导出功能区定义
Microsoft Dynamics 365
© 2017 Microsoft。 保留所有权利。 版权