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
Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Difinity Conference 2022

Difinity Conference 2022

Register today for two amazing days of learning, featuring intensive learning sessions across multiple tracks, led by engaging and dynamic experts.

European SharePoint Conference

European SharePoint Conference

The European SharePoint Conference returns live and in-person November 28-December 1 with 4 Microsoft Keynotes, 9 Tutorials, and 120 Sessions.

Power Apps Ideas

Changes to Ideas Coming

We are excited to announce a new way to share your ideas for Power Apps!

Users online (1,888)