Skip to content

Retrieve EnvironmentVariableValue in Power Fx

Posted in Power Platform, and Dynamics 365

In my private project (Key Box), I store a JSON configuration in an Environment Variable. To retrieve its value, I use two queries. The first query to retrieve the GUID of the Environment Variable Definition and the second query to retrieve the Environment Variable Value. I don’t use the Retrieve EnvironmentVariableValue function because I also need to update the environment variable later.

Power Fx to query an EnvironmentVariable and its EnvironmentVariableValue

1. Get the environment variable definition record by schema name

Set(
    envVarDefRec; 
    First(
        Filter(
            'Environment Variable Definitions';
            'Schema Name' = "new_YourSchemaName"
        )
    )
);;

Set(name; value) to create the variable envVarDefRec and store the value.
First(table) to get the first record of the passed table.
Filter(table; condition) to filter the Environment Variable Definitions table by scheme name.

2. Get the EnvironmentVariableValue record

Set(
    envVarValRec; 
    First(
        envVarDefRec.'Environment Variable Values'
    )
);;

Set(name; value) to create the variable envVarValRec and store the value.
First(table) to get the first record of the passed table.

3. Get the value from the EnvironmentVariableValue record

Set(name; value) to create the variable envVarVal and store the value of envVarValRec.Value.

Set(envVarVal; envVarValRec.Value);;

Bonus: Apply the default value from EnvironmentVariableDefinition record if the EnvironmentVariableValue is empty.

If(condition; then) to do the next action only if the condition is fulfilled.
IsBlank(value) to check is envVarVal contains data.
Set(name; value) to fill the variable envVarVal and store the value of envVarValRec.Value.

If(
    IsBlank(envVarVal);
    Set(envVarVal;envVarDefRec.'Default Value')
);;

Be First to Comment

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    This site uses Akismet to reduce spam. Learn how your comment data is processed.