web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Project entity for CDS?
Power Apps
Unanswered

Project entity for CDS?

(0) ShareShare
ReportReport
Posted on by

Hi all!

 

This may come off as a dumb question but I am wondering what would be the best entity to use to differentiate different projects for my company?

 

At any given time an Account with my company will have multiple projects ongoing. Each of those projects then has multiple tasks/actions that need to be performed in order to complete that project. Some of those tasks are related to standard entities like sending emails, while others actions are more specific to my company.

 

I have an idea of how to model this in CDS, but am unsure if my solution is the best solution.

 

From reading up on CDS I'm thinking that using the "Activities" entity would be the best fit for my problem. For every new project I would just create a new custom entity of type "Activity." I would then create other custom entities that would be similar to the Task standard entity, and would give them a child relationship to the custom activity entity I created to represent a new project.

 

But this still leaves me with a few questions.

 

If I were to use a custom entity of type activity, could I add a field that would allow this custom entity to have a parent or child entity of the type activity? Of the type standard? If I had custom entities that were created to represent specific tasks, could I relate those custom entities to multiple activities, basically having a many-to-many relationship between custom entities of type tasks and custom activity entities? For eg; I own a dog care company. Each client would be an account, and each time they visit me would be a new custom entity of type activity. The tasks performed could be different each visit (ie. giving the dog a bath, taking the dog on a walk, giving the dog a treat, etc.) but the tasks performed would come from a list of services that I provide. That way a different client (account) could visit me (new activity) and have the same task performed as a separate client at a separate visit.

 

How I'm trying to think of "Account" is like it is a file folder for everything in a given project, and then the different tasks related to that project would be like subfolders. At the same time though I want those tasks to be able to be in multiple folders, as some tasks are repeated across projects.

 

Thank you!

 

I have the same question (0)
  • Verified answer
    EricRegnier Profile Picture
    8,720 Most Valuable Professional on at

    Hi @Anonymous,

    You can definitely satisfy your project management requirements building custom entities in CDS. Not sure if you saw but there is a 1st party app named Dynamics 365 Project Service Automation (PSA) which is built on top of CDS to manage projects. Might be worth looking into it to see if it would be fit for purpose instead of re-inventing the wheel.

    For the activities, think of activities like interactions such as emails, phone calls, posts, etc between customers/users/parties, and the respective entity (in your case would be the Project or Account). That said, activity type of entity doesn't seem to be the right fit for Project. I would create a standard custom entity and enable activities so interactions/activities/tasks can be tracked against it.

    For your other questions, yes you can add custom fields to an activity. And yes you can have a parent-child relationship between then by having a lookup field to itself. For the tasks, suggest to use the out-of-the-box task entity.

    Hope this clarifies a little....

  • Community Power Platform Member Profile Picture
    on at

    Thanks, @EricRegnier!

     

    I'm checking out Dynamics 365 PSA and that seems like a good fit for our business. Thank you for the suggestion!

     

    First a quick question; if I were to go the route of creating a standard custom entity for Project, I assume that I can have parent-child relationship by using lookup field to itself, same as with an activity entity?

     

    My longer follow-up question would be if I had different tasks that I repeated (like the list of services from my dog care company) should I (1) just create multiple entries in the already-made Task entity for every service I provide? Eg, Entry 1 would be "dog walking," entry 2 would be "dog bathing," entry 3 would be "give treat," etc. Or should I (2) create a new entity for each service and model it after the Tasks entity. Eg, a new standard custom entity entirely for "dog walking" and a new standard custom entity for "dog bathing," etc.

     

    I'm assuming that I would have different things I want to track for different tasks. Eg, I want to track number of treats given for the "give treat" task for each time I give treats to a dog, but it's not necessary to track that information for the "dog bathing" task.

     

    If I went the first (1) route could I just leave these custom fields empty for the tasks they don't pertain to? How would I track the different instances I did of that task? Eg, keep track of how I gave 2 treats to the dog of my customer Sally vs. 1 treat to the dog of my customer William. Or even 2 treats to Wanda's dog Skittles and 3 treats to Wanda's dog Bow-wow. 

     

    It seems like if I went the second (2) route then all of the fields I create would be populated with information, and it seems like I could then have each entry in that standard custom entity be a different time that I completed the Task for which the entity is named. Eg, Entry 1 would be giving treats to Sally's dog on Wednesday, entry 2 would be giving treats to William's dog on Thursday, entry 3 would be giving treats to Sally's dog on Friday, etc. Would this be the correct course of action?

     

    Thank you again! I'm but a novice at this and have been tasked with getting all my company data into CDS

  • EricRegnier Profile Picture
    8,720 Most Valuable Professional on at

    Glad it helped!

    • Yes, you can have a parent-child relationship for both standard and activity entities
    • It really depends on your requirements and would need more details to really advise however, here’s what we typically suggest:
      • Can use out-of-the-box Task with a custom “Service Type” field that can be either global option set or lookup to Service Type entity. So you would have many Tasks but different task/service types.
      • One custom entity “Service” with a similar “Service Type” field. This seems to be what you are looking for because Task is more of generic simple task that you might assign to users as part of your overall Service
    • yes, you can leave those fields empty or show /hide the fields with business rules or have different forms for different service types
    • each instance of the task/service would be a different record so Sally is a record with its details and William and another record. 

    cheers

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Ajay Kumar Gannamaneni – Community Spotlight

We are honored to recognize Ajay Kumar Gannamaneni as our Community Spotlight for December…

Leaderboard > Power Apps

#1
WarrenBelz Profile Picture

WarrenBelz 717 Most Valuable Professional

#2
Michael E. Gernaey Profile Picture

Michael E. Gernaey 329 Super User 2025 Season 2

#3
Power Platform 1919 Profile Picture

Power Platform 1919 268

Last 30 days Overall leaderboard