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

Announcements

No record found.

News and Announcements icon
Community site session details

Community site session details

Session Id :
Customer experience | Sales, Customer Insights,...
Suggested Answer

Relationship between Contacts and Address tables

(0) ShareShare
ReportReport
Posted on by 20
I'm building a CRM in Dynamics and have access to the Sales module.
 
We intend to store Customer and Address data in the Contacts and Address (customeraddress) tables. This data will be passed to Dynamics through a separate API.
 
I am new to dynamics, and i'm playing around with these tables in Model Driven Apps. I want to create a model driven app with the following layout:
 
1. Contacts View that shows the contact data with their associated Addresses
2. Contacts Form that allows me to enter new or update existing addresses
3. Addresses View that shows all addresses and their associated customers 
4. Addresses Form that allows me to enter a new address and associate it with the Customer.
 
This should be pretty standard, and I can replicate something similar with custom tables and relationships, but I want to use these built in tables. 
 
I am aware that the Contacts table has pre-built in address columns, but we want to separate the addresses into a separate table. We need a many to one relationship, where one customer may have many addresses. These addresses may be primary, secondary, addresses. We need to be able to display these pieces of data on both the contacts view and form. 
 
When entering data into the addresses table in dataverse, I can associate an address record with a contact through the parent column, however when clicking into that contact in the model driven app, the address subgrid i have added does not show any addresses.
 
Help me understand how to use these tables please.
 
I have the same question (0)
  • Daniyal Khaleel Profile Picture
    764 Most Valuable Professional on at
    The reason your subgrid is empty is because it’s not filtered to the related records. Configure the subgrid to “only related records” via the correct relationship, and your Contact form will display the addresses properly
    Result:
    • The customeraddress table is a bit legacy and not as flexible. If you want modern flexibility (multiple types of addresses, flags, etc.), many projects create a custom “Address” table and relate it to Contact/Account.
    • If you do stick with customeraddress, you can add custom fields to it (like Primary/Secondary flags).
    • To display “Primary Address” on the Contact directly, you can:
    • Use a Quick View form for the related Address.
    • Or a Rollup column that brings primary address fields from customeraddress into Contact
  • Suggested answer
    ManoVerse Profile Picture
    940 Super User 2026 Season 1 on at
     Even though you're associating addresses via the Parent column in customeraddress, the subgrid on the Contact form may not show them because:
    • The subgrid might be pointing to the wrong relationship.
    • The relationship between contact and customeraddress is polymorphic (i.e., ParentCustomerId can point to either an Account or a Contact).
    • The subgrid needs to be filtered correctly to show only addresses where the parent is a Contact.
    Open the Contact form in the form designer.
    1. Add a subgrid and configure it:
    2. Table: Customer Address
    3. Default View: Use a view that filters addresses where ParentCustomerId equals current Contact.
    4. Filter by Related Records: Enable this and select the correct relationship (e.g., customeraddress_contact).
  • Suggested answer
    Tom_Gioielli Profile Picture
    3,084 Super User 2026 Season 1 on at
    Can you confirm that the address subgrid is set as follows? 
     
  • Suggested answer
    Rishabh Kanaskar Profile Picture
    6,219 Super User 2026 Season 1 on at
    Hi,
     
    Follow the below steps on how to get the standard Contacts and Customer Address tables working in a Model-Driven App the way you described:
    1. Relationship Setup
    > The customeraddress table already has a lookup field called Parent that points to a Contact or Account.
    > Make sure the relationship between Contacts and Customer Address is properly created and Relationship Behavior is set to Referential, Restrict Delete (or appropriate behavior).
    > In the relationship, confirm the Related Records Filtering is enabled so the subgrid only shows addresses related to that contact.
     
    2. Form Subgrid
    > On the Contact form, add a Subgrid.
    > Set Records to Only Related Records.
    > Choose the Customer Addresses table as the entity.
    > Set Default View to a view that includes the address fields you want to display.
    > Make sure the subgrid is bound to the correct lookup relationship (Parent → Contact).
     
    3. Views
    > For Contacts View showing addresses, you cannot show multiple child records directly in the main view. You can instead:
        > Use a Calculated or Rollup field on Contact to summarize the number of addresses or key fields.
        > Or use a Quick View Form to show the primary address fields.
     
    4. Address Form
    > On the Customer Address form, include the Parent lookup to associate the address with a contact.
    > When you open the contact from the subgrid, the parent lookup will auto-fill and save the relationship.
     
    5. Common Issues
    > Subgrid not showing data is usually because:
        > The relationship is not correctly configured.
        > Related Records Filtering is off.
        > The subgrid view is empty or doesn’t include the records you expect.
     
    6. Many-to-One Use Case
    > Each Contact can have many addresses via the Parent lookup (1:N).
    > Each Address is linked to one Contact via the same lookup.
     
    Thanks
    Rishabh

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

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Stars!

Meet the Microsoft Dynamics 365 Contact Center Champions

We are thrilled to have these Champions in our Community!

Congratulations to the March Top 10 Community Leaders

These are the community rock stars!

Leaderboard > Customer experience | Sales, Customer Insights, CRM

#1
ManoVerse Profile Picture

ManoVerse 192 Super User 2026 Season 1

#2
11manish Profile Picture

11manish 129

#3
CU11031447-0 Profile Picture

CU11031447-0 100

Last 30 days Overall leaderboard

Product updates

Dynamics 365 release plans