MB-800 · Question #143
Drag and Drop Question A company uses Dynamics 365 Business Central. You group salespeople into teams and assign each team a Salesperson code. A salesperson reports that they can see the sales…
The correct answer is Enter Salesperson/Purchase Code in User Setup.; Define Permission set and select Permissions.; Select the field number for the Salesperson code.; Enter the Salesperson code. Explanation: Restricting Sales Order Visibility by Salesperson in D365 Business Central The Core Mechanism Business Central uses Security Filters on Permission Sets to restrict table-level data access. The filter can reference a dynamic variable (%SPCODE%) that resolves to the…
Question
Exhibit
Answer Area
Drag items
Correct arrangement
- Enter Salesperson/Purchase Code in User Setup.
- Define Permission set and select Permissions.
- Select the field number for the Salesperson code.
- Enter the Salesperson code.
Explanation
Explanation: Restricting Sales Order Visibility by Salesperson in D365 Business Central
The Core Mechanism
Business Central uses Security Filters on Permission Sets to restrict table-level data access. The filter can reference a dynamic variable (%SPCODE%) that resolves to the salesperson code assigned to the logged-in user - but only if that assignment exists in User Setup first. This creates a dependency chain that dictates the correct sequence.
Step-by-Step Breakdown
Step 1 - Enter Salesperson/Purchase Code in User Setup
This must come first. User Setup is where BC links a Windows/Azure AD user account to a Salesperson Code. Without this mapping, the dynamic filter variable %SPCODE% has nothing to resolve to at runtime. Every salesperson who needs data restriction must have their code entered here before any filter logic can work.
Step 2 - Define Permission Set and select Permissions
Next, you open (or create) a Permission Set and navigate into its Permissions to access table-level configuration. This is the container where Security Filters live in BC. You must be inside a Permission Set's table permissions view before you can define any field-level filter - you cannot configure security filters from the Sales Header table directly.
Step 3 - Select the field number for the Salesperson Code
Within the Permission Set's permissions for the Sales Header table (Table 36), you specify the Security Filter by choosing which field to filter on. The Salesperson Code field has a specific field number. You must identify the field before you can enter a value for it - field selection comes before value entry.
Step 4 - Enter the Salesperson Code
Finally, you enter the filter value. In practice this is the dynamic token %SPCODE%, not a hardcoded code. BC resolves this at login to the current user's Salesperson Code from User Setup (Step 1), making the filter personal and automatic for each user.
Why the Distractors Are Wrong
| Distractor | Why it's excluded |
|---|---|
| Enter Sales document Security Filter (column in Sales Header) | Misleading - you don't set the security filter on the table column itself; it's set inside a Permission Set. |
| Enter Sales Responsibility Center | This restricts by location/warehouse responsibility, not by individual salesperson identity. Wrong tool for this scenario. |
Common Mistakes
- Skipping User Setup (Step 1): Configuring the Permission Set filter first is tempting, but
%SPCODE%won't resolve without the User Setup mapping already in place. - Entering a hardcoded salesperson code instead of
%SPCODE%in Step 4 - this breaks the solution because every user would then see the same fixed person's orders. - Confusing Responsibility Centers with Salesperson filters - both restrict sales document visibility but serve completely different business purposes.
Topics
Community Discussion
No community discussion yet for this question.
