适用于: 画布应用
Copilot Studio
Desktop 流
模型驱动应用
Power Platform CLI
Dataverse 函数
将 GUID (全局唯一 GUID 标识符)字符串转换为值,或创建新 GUID 值。
描述
使用该GUID函数将具有十GUIDGUID六进制表示形式的字符串转换为可以传递给数据库的值。 Microsoft Dataverse 和 SQL Server 等数据库系统使用 GUID 值作为键。
该字符串可以包含大写或小写字母,但必须采用以下格式之一的 32 个十六进制数字:
- “123e4567-e89b-12d3-a456-426655440000”( 标准位置中的连字符)
- “123e4567e89b12d3a456426655440000”( 无连字符)
如果未指定参数,该函数将 GUID创建新的参数。
若要将 GUID 值转换为字符串,请将其用于字符串上下文。 该值 GUID 转换为带有连字符和小写字母的十六进制字符串。
生成新 GUID函数时,该函数使用伪随机数创建版本 4 IETF RFC 4122GUID。 将字符串转换为 a GUID时,该函数通过接受 32 个十六进制数字的任何字符串支持任何 GUID 版本。
易失函数
GUID 在不使用参数的情况下使用可变函数。 每次计算该函数时会返回不同的值。
在数据流公式中使用可变函数时,仅当重新计算公式时,它才会返回不同的值。 如果公式中没有其他任何更改,则在应用处于打开状态时会保留相同的值。
例如,如果将标签控件的 Text 属性设置为 GUID(),则应用处于活动状态时它不会更改。 仅当你关闭并重新打开应用时,才会获得其他值。
如果函数是其他更改的公式的一部分,则会重新计算该函数。 例如,如果将 Label 控件的 Text 属性设置为此公式,则用户每次更改文本输入控件的值时都会生成一个GUID:
TextInput1.Text & “ ” & GUID()
在行为公式中使用GUID时,每次计算公式时都会对其进行计算。 有关详细信息,请参阅本主题后面部分的示例。
语法
GUID( [ GUIDString ] )
- GUIDString –可选。 具有十六进制表示形式的 GUID文本字符串。 如果未提供字符串,该函数将创建一个新 GUID函数。
GUID( 动态 )
示例
基本用法
基于十六进制字符串表示形式返回 GUID 值:
GUID( "0f8fad5b-d9cb-469f-a165-70867728950e" )
还可以提供不带 GUID 连字符的字符串。 此公式返回相同的 GUID 值:
GUID( "0f8fad5bd9cb469fa16570867728950e" )
在上下文中使用该值,以将新数据库记录的状态字段设置为完整的值:
Patch( Products, Default( Products ), { Status: GUID( "F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4" ) } )
你可能不想向用户显示 GUID,但 GUID 可以帮助你调试应用。 若要在上一示例中创建的记录中显示“状态”字段的值,请将 Label 控件的 Text 属性设置为以下公式:
First( Products ).Status
标签控件显示 f9168c5e-ceb2-4faa-b6bf-329bf39fa1e4。
创建 GUID 的表
将 Button 控件的 OnSelect 属性设置为以下公式:
ClearCollect( NewGUIDs, ForAll( Sequence(5), GUID() ) )此公式创建一个单列的表,用于循环五次,从而得到五个 GUID。
添加 Data table 控件,将其 Items 属性设置为 NewGUIDs,并显示值字段。
按住 Alt 键并选择按钮。
该数据表显示了 GUID 的列表:
再次选择该按钮以显示新的 GUID 列表:
若要生成单个 GUID 而不是表,请使用以下公式:
Set( NewGUID, GUID() )