cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Anonymous
Not applicable

Retrieving the ID property of an EntityReference

Hi,

 

I've have just started my adventures in PCF and I have come across a problem I hope someone can help with.

I have created a custom control passing in a dataset which contains an owner column. I am trying to retrieve the id of this owner, by doing the following:

let owner = this._dataset.records[recordId].getValue("ownerid") as ComponentFramework.EntityReference;

TypeScript then offers me the following options in intellisense:

Code_2019-08-01_09-35-01.png

So I choose "owner.id" to get the id.

However, when this code runs this "id" is not the id, but an object containing a property called "guid":

msedge_2019-08-01_09-38-54.png

If I try to use owner.id.guid in my TypeScript file I get an error and it fails to build.

Am I doing something wrong here? I am pretty new to TypeScript so probability is high.

Thanks

Jason

1 ACCEPTED SOLUTION

Accepted Solutions
GregHurlmanMSFT
Power Apps
Power Apps

@Anonymous - It's not you, it looks like you've found a bug in our TypeScript type definition file. To work around it, you can modify the file in your project:

Open <project directory>\node_modules\@types\powerapps-component-framework\componentframework.d.ts.

Modify line 1257 from

id: string;

to

id: { guid: string };

This will allow the TypeScript compiler's typechecking to pass.

 

I am in the process of getting our type files and documentation updated to reflect runtime reality; will update the thread once those changes have gone through.

View solution in original post

6 REPLIES 6
GregHurlmanMSFT
Power Apps
Power Apps

@Anonymous - It's not you, it looks like you've found a bug in our TypeScript type definition file. To work around it, you can modify the file in your project:

Open <project directory>\node_modules\@types\powerapps-component-framework\componentframework.d.ts.

Modify line 1257 from

id: string;

to

id: { guid: string };

This will allow the TypeScript compiler's typechecking to pass.

 

I am in the process of getting our type files and documentation updated to reflect runtime reality; will update the thread once those changes have gone through.

Anonymous
Not applicable

@GregHurlmanMSFT - Looks like there is a similar issue with the entityType property, the actual property name is etn.

 

I updated line 1262 of the type definition from

entityType?: string;

to

etn?: string;

and it works as expected.

@Anonymous Yep, saw that yesterday as well, thanks! I've got a PR open to update our types; as soon as it goes in, if you update the version number of the powerapps-component-framework package to "^1.2.0" and run npm install again, you'll get the changes.

Bhuvita
Helper II
Helper II

@Greg 

Is this issue still open because i am still facing the issue.

I'm still facing this issue when using version "^1.2.0". Has this fix gone in?

I was able to get around this by updating the version of "@types/powerapps-component-framework" in my package.json to "^1.3.4"

Helpful resources

Announcements
Power Platform Conf 2022 768x460.jpg

Join us for Microsoft Power Platform Conference

The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.

365 EduCon 768x460.png

Microsoft 365 EduCon

Join us for two optional days of workshops and a 3-day conference, you can choose from over 130 sessions in multiple tracks and 25 workshops.

Users online (2,986)