18 Giugno 2025

Enhanced Component Properties, User Defined Functions, and UntypedObjects on the move

Taking another big step forward, Enhanced Component Properties (ECP) are now generally available (GA) and ready for your production workloads! ECPs are a great way to modularize and reuse your logic across an app, with the added bonus that ECPs can be shared across apps through a component library.

Another popular way to reuse formulas, User defined functions (UDF) have entered preview! We are now in the last stage of shipping this popular feature and hope to GA in the next couple of months. If you have not used this feature yet, now would be a great time to give it a try and let us know what you think in the community experimental features forum.

Last but not least, User Defined Types (UDT) will be reaching Preview soon too. We are planning for their GA shortly after UDFs.

UntypedObject becomes Dynamic

Until the introduction of UDFs and UDTs, the names of data types wasn’t used in Power Fx syntax. So, until now we haven’t worried that much about the data type names. During the development of the ParseJSON function we needed a new data type, the name UntypedObject was proposed, and it stuck.

Since then, UntypedObjects have become very popular. But unfortunately, it isn’t the best name. First, it is a long compound word and not very friendly. It doesn’t always represent an Object, it can be a single number. It isn’t actually Untyped, as we know the types of the elements we parsed from JSON (number, text, Boolean, array, etc). Power Platform connectors use the term Dynamic, requiring a mapping in our documentation from Untyped to Dynamic. Also, C# uses Dynamic as the name of a dynamic data type in a similar way.

If we were going to make a change, now would be the time. And so we have. We have renamed UntypedObject to Dynamic. Not to worry, there is no change in semantics, this is a name change only. If you aren’t using UDFs or UDTs, there is no change at all. The only folks who will notice a change, and need to update their code, are those who were passing UntypedObjects as UDF parameters, using it as a UDF return type, or using it in a UDT.

The documentation is in the process of being updated. The list of available data types for parameters, not including those you may define with UDTs, is now:

Void as UDF parameter

One last change, which shouldn’t have a meaningful impact, is that Void is no longer supported as a UDF parameter data type. This was never useful, as soon as a formula touched a Void data type it would result in a runtime error. Now it produces a compile time error which are always preferred.

Onward to more GA

Our next post on UDFs will be that they have GA’d and can now be used in production. We hope to be there soon. If you run into any issues or have suggestions, please let us know on the community experimental features forum.
The post Enhanced Component Properties, User Defined Functions, and UntypedObjects on the move appeared first on Microsoft Power Platform Blog.
Source: Microsoft Power Platform

Share: