Virtual Tables in Dynamics 365 CE: Real-Time Integration with FinOps Invoices

Ever wanted to show real-time financial data in Dynamics 365 CE without duplicating records or setting up complex sync jobs? That’s exactly what we achieved using Virtual Tables—connecting Finance & Operations (FinOps) with Customer Engagement (CE) to display invoice data directly inside Account records. Why Virtual Tables? No data duplication – data stays in FinOps Real-time access – always fresh Native UI experience in model-driven apps Less maintenance vs. custom sync/integration Use Case: Invoice Visibility from FinOps in CE Our goal was to embed invoice records under the Account form in Dynamics 365 CE using a subgrid. These records were to be fetched live from FinOps, using Virtual Tables backed by OData. Step-by-Step Implementation 1. Install Required Solutions Install the Virtual Entity Bridge for FinOps Ensure Dual-write core components are set up Coordinate with the FinOps team to expose OData feeds (like Invoice headers) 2. Configure Virtual Entity Data Source Go to Advanced Settings > Administration > Virtual Entity Data Sources Create a new data source of type OData v4 Data Provider Provide the endpoint URL from FinOps Use Service Principal authentication for security 3. Define the Virtual Table In Power Apps: Go to Solutions > New Table Tick Virtual Table checkbox Bind it to the OData source Define key fields (InvoiceID, CustomerNumber, etc.) Add columns like date, amount, status, etc. 4. Add Subgrid to the Account Form Use the Form Editor on Account entity to insert a subgrid linked to the virtual table. Filter it by customer number or related lookup. Configure appropriate views. What We Gained Sales teams could view invoice payment status in real-time Finance data remained secure in FinOps No duplication = no sync jobs = no reconciliation headaches Minimal performance impact when used on-demand Tips Use indexed fields in your OData queries Don’t overload subgrids with unnecessary columns Test access with non-admin users Apply security roles cautiously Conclusion If you're running both Dynamics 365 CE and FinOps, Virtual Tables are a game changer. They provide seamless access to external data with minimal setup and maximum control.

Apr 15, 2025 - 05:27
 0
Virtual Tables in Dynamics 365 CE: Real-Time Integration with FinOps Invoices

Ever wanted to show real-time financial data in Dynamics 365 CE without duplicating records or setting up complex sync jobs?

That’s exactly what we achieved using Virtual Tables—connecting Finance & Operations (FinOps) with Customer Engagement (CE) to display invoice data directly inside Account records.

Why Virtual Tables?

  • No data duplication – data stays in FinOps
  • Real-time access – always fresh
  • Native UI experience in model-driven apps
  • Less maintenance vs. custom sync/integration

Use Case: Invoice Visibility from FinOps in CE

Our goal was to embed invoice records under the Account form in Dynamics 365 CE using a subgrid. These records were to be fetched live from FinOps, using Virtual Tables backed by OData.

Step-by-Step Implementation

1. Install Required Solutions

  • Install the Virtual Entity Bridge for FinOps
  • Ensure Dual-write core components are set up
  • Coordinate with the FinOps team to expose OData feeds (like Invoice headers)

2. Configure Virtual Entity Data Source

Go to Advanced Settings > Administration > Virtual Entity Data Sources

Create a new data source of type OData v4 Data Provider

  • Provide the endpoint URL from FinOps
  • Use Service Principal authentication for security

3. Define the Virtual Table

In Power Apps:

  • Go to Solutions > New Table
  • Tick Virtual Table checkbox
  • Bind it to the OData source
  • Define key fields (InvoiceID, CustomerNumber, etc.)
  • Add columns like date, amount, status, etc.

4. Add Subgrid to the Account Form

Use the Form Editor on Account entity to insert a subgrid linked to the virtual table.

  • Filter it by customer number or related lookup.
  • Configure appropriate views.

Virtual Entity Subgrid

What We Gained

  • Sales teams could view invoice payment status in real-time
  • Finance data remained secure in FinOps
  • No duplication = no sync jobs = no reconciliation headaches
  • Minimal performance impact when used on-demand

Tips

  • Use indexed fields in your OData queries
  • Don’t overload subgrids with unnecessary columns
  • Test access with non-admin users
  • Apply security roles cautiously

Conclusion

If you're running both Dynamics 365 CE and FinOps, Virtual Tables are a game changer. They provide seamless access to external data with minimal setup and maximum control.