Every chapter in this course covered one building block on its own. This last chapter does the opposite: one small example that uses several of them together, so you can see how they actually combine on a real customization instead of staying separate ideas in your head.
The scenario: tracking shared equipment
Imagine a company that lends out shared equipment internally — laptops, projectors, tools — and wants a simple way to track who currently has what. Nothing fancy, just enough structure to answer "where is this thing, and who's responsible for it?" A perfect size for walking through this course in one go.
Step 1 — Create the table
Start with a new custom table called Equipment, the drawer that holds one record per item. Since only internal staff use it and it isn't tied to a specific customer, it makes sense as an organization-owned table — a shared reference, not assigned to one person or team.
Step 2 — Add columns
Next, a handful of columns get added — the labeled blanks on each item's index card:
| Column | Data type | Why |
|---|---|---|
| Name | Text | e.g. "Dell Laptop #14" |
| Serial Number | Text | Unique identifier for the physical item |
| Status | Choice (option set) | Values like Available, In Use, Retired — a fixed list is safer than free text |
Step 3 — Add a relationship
To know who has an item checked out, Equipment needs a relationship to Account (or Contact) — one-to-many, where one Account can link to many pieces of Equipment. On the Equipment form, that shows up as a lookup column: "Checked Out To."
Step 4 — Build the form
With the table, columns, and relationship in place, the form is what a staff member sees: one section grouping Name, Serial Number, Status, and the "Checked Out To" lookup together, in the order that makes sense — the same instinct as separating "Contact Info" from "Billing Info" on a printed intake form.
Step 5 — Build a view
To find equipment later, a view called "Equipment In Use" lists just the records where Status equals "In Use," showing Name, Serial Number, and Checked Out To — a saved search someone opens any time instead of scrolling past every retired item ever entered.
Step 6 — Rely on search for the one-off lookup
Marking Name and Serial Number as find columns means anyone can type a serial number into Quick Find and land on the right item in seconds — no need to open the "Equipment In Use" view first. For a harder question, like "every retired laptop checked out to someone in the Sales team last year," Advanced Find handles the multi-condition query, and its result can be saved as a brand-new view.
Step 7 — Add a business rule
One simple business rule keeps the data honest: "if Status equals Retired, require a Retirement Date." No code, just a condition and an action, reacting instantly the moment someone changes Status — the same warning-light behavior from the Business Rules chapter.
Step 8 — Automate the quiet follow-up
Finally, a background Workflow triggers when Status changes to "Retired," automatically emailing the equipment coordinator so a physical pickup gets scheduled — running server-side, with no one watching, exactly the kind of quiet background job Workflows are still a solid choice for.
Where to go from here
You've now covered the full set of customization building blocks. Two good next steps: the existing deep-dive tutorial D365 CRM Fundamentals & Configuration goes further into security roles, business units, and solutions — the layer that controls who can see and do what with the tables you just learned to build. And a dedicated Security & Access course, covering exactly that in the same step-by-step format as this one, is coming next to this learning path.