cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
PaulD1
Super User
Super User

CDS or D365 Connector? Delegation issues

I have experience building PowerApps against SQL but now have a project using D365 as the data source.

I've built a Canvas PowerApp using the Dynamics 365 connector (which has been very problematic) and I have been advised that I should use the CDS connector instead.

Using the D365 connector the following filter is delegable:

ClearCollect(colServiceLocations,Filter('Service Locations',dsl_serviceprovidertype=860910000))

Using the CDS connector this same Filter (changing the schema name for a Display Name) I get a delegation warning and also an incompatible type warning. 

ClearCollect(colServiceLocations,Filter('Service Locations','Service Location Type (Service Locations)' =860910000))

'Service Location Type (Service Locations)' appears to be a complex type (record). I just want to compare the Service Location ID to my know ID value.

Is is possible to make filters such as these (there are many in the App) work and be delegable with CDS connector?

Thanks!

3 REPLIES 3
v-xida-msft
Community Support
Community Support

Hi @PaulD1 ,

Could you please share a bit more about the 'Service Location Type' column in your CDS Entity? Is it a Option Set type column or Two Options type column?

 

1. If the 'Service Location Type' column is a Option Set type column in your CDS Entity, please modify your formula as bellow:

ClearCollect(
              colServiceLocations,
              Filter(
                    'Service Locations', 
                    'Service Location Type' = [@'OptionSetName'].Option1 // 'OptionSetName' represents the Option Set the 'Service Location Type' column related to in your CDS Entity
              )
)

2.JPG

 

2. If the 'Service Location Type' column is a Two option type column in your CDS Entity, please modify your formula as bellow:

ClearCollect(
              colServiceLocations,
              Filter(
                    'Service Locations', 
                    'Service Location Type' = 'Service Location Type (Service Locations)'.Option1
              )
)

 

More details about the Option Set column in CDS Entity, and how to filter based on Option Set column, please refer to the following blog:

https://powerapps.microsoft.com/en-us/blog/option-sets-and-many-to-many-relationships-for-canvas-app...

 

Best regards,

Community Support Team _ Kris Dai
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Sorry for delayed response - out of the office.

OK, taking a look at this more urgently now as I'm getting banners in the web studio advising me to move to the new CDS connectors for improved performance and reliability (which would be nice as speed and reliability of the D365 connector is a major issue for us).

When I check for the option set name in CDS, it is listed as 'Local option set'.

How do I get the name of the a Local Option Set?

If I try to supply just the numeric value for the option, or the option name I get an 'Incompatible Type' error.

OK, I think I have the syntax for a local option set:

        Filter(
            'Service Locations',
            'Service Location Type' = 'Service Location Type (Service Locations)'.X Y Z'
        )

 

Filter([Entity],[Field] = '[Field] ([Entity])'.OptionName)

Helpful resources

Announcements
PA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

secondImage

Demo Extravaganza is Back!

We are excited to announce that Demo Extravaganza for 2021 has started!

MBAS on Demand

Microsoft Business Applications Summit sessions

On-demand access to all the great content presented by the product teams and community members! #MSBizAppsSummit #CommunityRocks

Power Apps June 2021

June Power Apps Community Call

Don't miss the call this month on June 16th - 8a PDT

Top Solution Authors
Top Kudoed Authors
Users online (1,957)