Skip to content

Commit a3eba99

Browse files
authored
Merge pull request #8183 from MicrosoftDocs/matp-3256723
Matp 3256723
2 parents 48bc851 + 19de0f5 commit a3eba99

15 files changed

+824
-0
lines changed

powerapps-docs/maker/TOC.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2057,6 +2057,14 @@
20572057
href: ./data-platform/monitor-manage-processes.md
20582058
- name: Best practices for real-time workflow processes
20592059
href: ./data-platform/best-practices-workflow-processes.md
2060+
- name: Use Dataverse low-code plug-ins (experiemental)
2061+
items:
2062+
- name: Create low-code plug-ins
2063+
href: ./data-platform/low-code-plug-ins.md
2064+
- name: Example low-code plug-ins
2065+
href: ./data-platform/lowcode-plug-ins-examples.md
2066+
- name: Low-code plug-ins Power Fx
2067+
href: ./data-platform/low-code-plug-ins-powerfx.md
20602068
- name: Work with actions
20612069
items:
20622070
- name: Use actions
Lines changed: 188 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,188 @@
1+
---
2+
title: Low-code plug-ins Power Fx
3+
description: Supported Power Fx expressions for use with Microsoft Dataverse low-code plug-ins
4+
author: Mattp123
5+
ms.author: matp
6+
ms.service: powerapps
7+
ms.topic: how-to
8+
ms.date: 05/18/2023
9+
ms.custom: template-how-to
10+
---
11+
# Low-code plug-ins Power Fx (experimental)
12+
13+
[!INCLUDE [cc-beta-prerelease-disclaimer](../../includes/cc-beta-prerelease-disclaimer.md)]
14+
15+
Low-code plug-ins can add business logic to your apps using the Power Fx expression language and directly integrate with Dataverse business data and external data through Power Platform connectors. With low-code plug-ins, you can quickly build rich workflows without any code.
16+
17+
> [!IMPORTANT]
18+
> - This is an experimental feature. Use this if you're an early adopter, see something useful to you, and would like to help test the feature.
19+
> - Experimental features aren’t meant for production use and may have restricted functionality. These features are available before an official release so that customers can get early access and provide feedback.
20+
> - Experimental features can radically change or completely disappear at any time. For this reason the feature is not enabled by default and you must explicitly opt in to use it.
21+
22+
Low-code plug-ins support many of the Power Fx operators, variables, and formulas. For more information about Power Fx, go to these articles:
23+
24+
- [Expression grammar](/power-platform/power-fx/expression-grammar)
25+
- [Operators](/power-platform/power-fx/operators)
26+
- [Variables](/power-platform/power-fx/variables)
27+
- [Formula reference](/power-platform/power-fx/formula-reference)
28+
29+
The following table lists the Power Fx formulas that work but have limitations or don’t work but have an alternative for use with low-code plug-ins.
30+
31+
|Power Fx formula |Supported in plug-ins? | Limitation or work around |
32+
|---------|---------|---------|
33+
|Set | Yes | Requires the variable to exist (as bound table row property) and the variable type to match what you’re trying to set it to. <br /> For an automated action, update the associated row’s values by passing `ThisRecord` as the first argument (referring to the row that triggered the data event), then the desired column updates in the second object parameter, such as `Set( ThisRecord, { Description: “Updated description text” } );` |
34+
|Collect | Yes | Requires the variable to exist and the variable type to match what you’re trying to set it to. |
35+
|Defaults | No | Use Collect instead. For example, instead of *Patch(account, Defaults(account), {“Account Name”: “Example Account”})* use `Collect(account, {“Account Name”: “Example Account”})`. |
36+
|User() | No | Instead use Viewer, which has a subset of information about the user who invoked the action (both instant and automated). |
37+
38+
## Formulas not currently supported with low-code plug-ins
39+
40+
:::row:::
41+
:::column span="":::
42+
Clear
43+
:::column-end:::
44+
:::column span="":::
45+
ClearCollect
46+
:::column-end:::
47+
:::column span="":::
48+
Update
49+
:::column-end:::
50+
:::row-end:::
51+
:::row:::
52+
:::column span="":::
53+
UpdateIf
54+
:::column-end:::
55+
:::column span="":::
56+
SortByColumns
57+
:::column-end:::
58+
:::column span="":::
59+
Concurrent
60+
:::column-end:::
61+
:::row-end:::
62+
:::row:::
63+
:::column span="":::
64+
DropColumns
65+
:::column-end:::
66+
:::column span="":::
67+
AddColumns
68+
:::column-end:::
69+
:::column span="":::
70+
IsEmpty
71+
:::column-end:::
72+
:::row-end:::
73+
:::row:::
74+
:::column span="":::
75+
SetFocus
76+
:::column-end:::
77+
:::column span="":::
78+
IsType
79+
:::column-end:::
80+
:::column span="":::
81+
JSON
82+
:::column-end:::
83+
:::row-end:::
84+
:::row:::
85+
:::column span="":::
86+
Download
87+
:::column-end:::
88+
:::column span="":::
89+
PlainText
90+
:::column-end:::
91+
:::column span="":::
92+
RemoveIf
93+
:::column-end:::
94+
:::row-end:::
95+
:::row:::
96+
:::row-end:::
97+
:::row:::
98+
:::column span="":::
99+
GroupBy
100+
:::column-end:::
101+
:::column span="":::
102+
SetProperty
103+
:::column-end:::
104+
:::column span="":::
105+
RenameColumns
106+
:::column-end:::
107+
:::row-end:::
108+
:::row:::
109+
:::column span="":::
110+
Search
111+
:::column-end:::
112+
:::column span="":::
113+
ShowColumns
114+
:::column-end:::
115+
:::column span="":::
116+
UTCNow
117+
:::column-end:::
118+
:::row-end:::
119+
:::row:::
120+
:::column span="":::
121+
UTCToday
122+
:::column-end:::
123+
:::column span="":::
124+
Validate
125+
:::column-end:::
126+
:::column span="":::
127+
Weekday
128+
:::column-end:::
129+
:::row-end:::
130+
:::row:::
131+
:::column span="":::
132+
As
133+
:::column-end:::
134+
:::column span="":::
135+
Calendar
136+
:::column-end:::
137+
:::column span="":::
138+
Choices
139+
:::column-end:::
140+
:::row-end:::
141+
:::row:::
142+
:::column span="":::
143+
Clock
144+
:::column-end:::
145+
:::column span="":::
146+
Select
147+
:::column-end:::
148+
:::column span="":::
149+
Notify
150+
:::column-end:::
151+
:::row-end:::
152+
:::row:::
153+
:::column span="":::
154+
Errors
155+
:::column-end:::
156+
:::column span="":::
157+
HashTags
158+
:::column-end:::
159+
:::column span="":::
160+
ISOWeekNum
161+
:::column-end:::
162+
:::row-end:::
163+
:::row:::
164+
:::column span="":::
165+
WeekNum
166+
:::column-end:::
167+
:::column span="":::
168+
Refresh
169+
:::column-end:::
170+
:::column span="":::
171+
SaveData, LoadData, and ClearData
172+
:::column-end:::
173+
:::row-end:::
174+
:::row:::
175+
:::column span="":::
176+
Form-related formulas (EditForm, NewForm, SubmitForm, ResetForm, and ViewForm)
177+
:::column-end:::
178+
:::column span="":::
179+
Device sensor formulas (Acceleration, App, Compass, Connection, and Location)
180+
:::column-end:::
181+
:::column span="":::
182+
<!--empty-->
183+
:::column-end:::
184+
:::row-end:::
185+
186+
## See also
187+
188+
[Use Dataverse low-code plug-ins (experimental)](low-code-plug-ins.md)

0 commit comments

Comments
 (0)