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 Apps News & Annoucements carousel

Power Apps News & Announcements

Keep up to date with current events and community announcements in the Power Apps community.

Power Apps Community Blog Carousel

Power Apps Community Blog

Check out the latest Community Blog from the community!

Users online (4,897)