Domain 1 β€” Module 4 of 4 100%
4 of 15 overall
Domain 1: Create a foundation for intelligent applications Free ⏱ ~24 min read

AI in the Data Layer: Prompt Columns and Row Summaries

Two AI capabilities that live inside Dataverse itself β€” a column that generates and stores its own value, and a Copilot summary that surfaces on a table's main forms and views.

The idea behind AI in the data layer

Most people’s mental model of AI in a business app is a chat box bolted onto the side. Dataverse does something more interesting: it puts AI inside the table. In the case of a prompt column, the generated value is stored in Dataverse and behaves like any other stored value. A row summary works differently β€” it is generated presentation, not a stored column β€” and telling those two apart is most of this module.

That is the thread running through both features in this module, and it is why they belong in Domain 1 alongside tables and columns rather than in the AI-focused Domain 3.

Prompt columns

Simple explanation

A prompt column is a column whose value is written by AI.

You point it at some other columns in the same table and give it an instruction in plain English β€” something like β€œwrite a one-line summary of this shipment’s status using the destination, the delay reason and the current status.” Dataverse runs that instruction and stores the answer in the column.

The important part: once it is stored, it is just a column. Apps read it, flows read it, reports read it. Nothing has to know it came from AI.

When does it actually run?

This is the highest-value fact in the module, because it is the one candidates guess at.

The refresh semantics, stated exactly

Microsoft’s documentation states: β€œPrompt column values are populated when records are created and when the input column values are updated.”

Read that carefully. It means the behaviour is event-driven:

  • βœ“ On record create
  • βœ“ When an input column value changes
  • βœ— Not on a schedule
  • βœ— Not on every retrieve

So if a scenario says β€œthe summary must reflect data that changes on a related record,” a prompt column will not pick that up β€” the trigger is a change to its own input columns.

The naming trap

There are two different things in this exam called β€œprompt,” and they live in different domains.

Two objects that both involve prompts, and are frequently confused
Prompt columnPrompt in AI hub
What it isA Dataverse column data typeA reusable AI asset you build and save
Where it livesOn a table, alongside Text and Choice columnsIn AI hub, as a standalone asset
How it is consumedBy reading the column β€” apps, flows, reportsBy calling it from an app or a cloud flow
Exam domainDomain 1 β€” data model foundationDomain 3 β€” business logic and automation
Result storageStored in the column automaticallyReturned to the caller; you decide what to do with it
How to tell which one a question means

Look for the word column, or for language about the value being stored on the record. That is a prompt column.

Look for language about calling or consuming a prompt from an app or a flow, or about inputs, knowledge and model settings. That is an AI hub prompt.

Row summaries

A row summary is a Copilot-generated summary of a record, driven by a prompt that the maker writes.

Ravi’s original ask was β€œI need to see at a glance whether a shipment is in trouble.” Not a report. Not a dashboard. A sentence at the top of the record. That is precisely what a row summary is for.

Where it appears

  • A collapsible summary bar at the top of a main form
  • Accessible for individual rows from views

Forms that carry one display a form AI icon.

Where it is configured

On the table, under Customizations β†’ Row summary. Once one exists, you edit it via Row summary (applied).

The scope fact that catches people out

A row summary is table-wide, not form-specific. Microsoft’s documentation is explicit: β€œWhen you configure the row summary, it applies to all views and main forms for the table.”

This is a genuinely counterintuitive design if you are used to thinking of forms as independent artefacts. You cannot configure one row summary for the dispatcher’s form and a different one for finance’s form β€” there is one per table.

You can hide it, but that is also a table-level action, not a per-form one: you return to Row summary on the table and unselect Show row summary, which hides it everywhere.

The prerequisite

Row summaries do not appear until an administrator has enabled the AI insight cards environment setting.

This is Mei’s job, and it is exactly the kind of detail that makes a good exam question β€” a maker configures everything correctly, nothing appears, and the answer is an environment setting they do not control.

The exclusions

Three Dynamics 365 tables where row summaries are not available

Row summaries are not available for the Case, Lead and Opportunity tables.

The reason is not a limitation β€” it is that Dynamics 365 Customer Service and Dynamics 365 Sales supply their own summaries for these tables. Those built-in summaries have a narrower reach, though: they appear only on main forms, not in views.

So the answer to β€œwhy can’t I configure a row summary on Case?” is β€œbecause Customer Service already provides one” β€” not β€œbecause the feature is broken.”

The language trap

This is the sharpest single fact in the module and a natural exam question.

Row summaries generate in the language of the prompt

The summary is generated in the language of the prompt itself β€” regardless of the user’s language settings.

So a prompt written in English produces English summaries for every user, including users whose Dataverse language is set to something else. The user’s language preference does not influence it.

The fix, per Microsoft’s guidance, has two parts and needs both:

  1. Include the LanguageCode input in the prompt.
  2. Add the instruction β€œYou must respond in language <LanguageCode>.”

Adding the input without the instruction does not achieve anything on its own.

The timing detail worth knowing: Microsoft adds that language instruction by default for newly configured summaries. It is the pre-existing summaries β€” ones configured before this behaviour shipped β€” where you have to go back and add it manually. So a summary that stubbornly answers in English while a newer one on the next table behaves correctly is not a bug; it is an older summary that never received the default instruction.

Writing a good row-summary prompt

Microsoft’s own guidance for these prompts is practical, and worth knowing because it maps directly to β€œwhich prompt is better” question shapes:

  • List the columns to include β€” or the ones to exclude. Do not assume the model will pick well on its own.
  • Specify formatting β€” for example, β€œwrite the summary as a bulleted list.”
  • Handle multi-language explicitly, using the LanguageCode pattern above.

Kite Freight, concretely

Ravi wants at-a-glance trouble detection on Depot Run records.

StepWhoWhat happens
1MeiEnables the AI insight cards environment setting. Nothing works until this is done
2NadiaOpens the Depot Run table β†’ Customizations β†’ Row summary
3NadiaWrites a prompt naming the columns to include β€” status, destination depot, scheduled arrival, delay reason β€” and asks for a bulleted list
4β€”The summary appears on every main form and in views for Depot Run. Not just the one form Nadia had open
5RaviSees the collapsible summary bar at the top of each run record, and can pull a summary for individual rows from a view

Separately, Nadia adds a prompt column called Run Risk Note to the same table, with the scheduled arrival and delay reason as input columns. Because it is stored, the depot dashboard and a downstream cloud flow can both read it without calling any AI service themselves β€” and it refreshes whenever a run is created or those two input columns change.

Why Nadia used both, not one

They solve different problems, and noticing the difference is the exam skill:

  • The row summary is for a human reading a record. It is presentation. It is not stored as data and cannot be filtered, sorted or used by a flow.
  • The prompt column is data. It is stored, so it can be read by apps, flows and reports β€” and used in views.

If a scenario needs the generated text to drive downstream logic, it needs a prompt column. If it just needs a human to grasp a record quickly, a row summary is the lighter answer.

Quick recall

Question

When are prompt column values populated?

Click or press Enter to reveal answer

Question

A row summary is configured on a form. True or false?

Click or press Enter to reveal answer

Question

Which environment setting must an administrator enable before row summaries appear?

Click or press Enter to reveal answer

Question

Which three tables cannot have a row summary, and why?

Click or press Enter to reveal answer

Question

A user's Dataverse language is French, but the row summary prompt is written in English. What language is the summary?

Click or press Enter to reveal answer

Check yourself

Knowledge Check

Nadia configures a row summary on the Depot Run table while working in the Dispatcher form. Later, a finance user opens Depot Run in the Finance form and is surprised to see a summary bar. What is the explanation?

Knowledge Check

A maker has written a row summary prompt and saved it, but no summary bar appears on any form. Security roles and the form configuration are both correct. What is the most likely cause?

Knowledge Check

Kite Freight needs an AI-generated risk note on each Depot Run that a nightly cloud flow can read and filter on. Which capability fits?

Knowledge Check

Kite Freight operates in New Zealand and Japan. The row summary prompt is written in English, but Japanese-speaking dispatchers need summaries in Japanese. What must the maker do?