Troubleshooting

A Tab I Expect Is Missing: Causes and Fixes

User Solutions TeamUser Solutions Team
|
6 min read

When a module tab you expect is not on screen, the cause is almost always a permission code your assigned roles do not grant, and the fix is to add that code to a role you hold. EDGEBIC by User Solutions hides tabs a user has no permission to view rather than showing them grayed out, so a missing permission looks like a missing feature.

This post is the detailed version of the missing-tab symptom in the EDGEBIC troubleshooting guide. For the underlying model, what an effective permission is explains how roles and overrides combine.

What You Are Seeing

A colleague describes a screen you do not have. Reports, Work Centers, Import, or the Master Production Schedule simply is not among your tabs. Nothing is grayed out, no error appears, and reinstalling changes nothing. On another workstation, signed in as an administrator, the tab is right there.

The absence is the diagnostic. A grayed-out control means the module is present but an action inside it is blocked. A missing tab means the module's View permission is not in your effective set.

Why It Happens

Cause 1: Your roles never granted the module's View code. Permissions are organized as a tree of sections, then modules, then actions. Every module has its own View code, and a role that grants scheduling actions does not automatically grant master data or reporting views. A role assembled for one job function commonly omits sections nobody thought to tick.

Cause 2: A custom role did not pick up a new code after an update. On startup, the permission catalog is compared against the codes the software defines. New codes are inserted and every new code is granted to the Administrator role. Custom roles are deliberately not touched. That is the right default, because an upgrade should never silently widen what a Planner or Shop Supervisor can reach, but it means a newly shipped module is invisible to everyone except administrators until someone edits the custom roles.

Cause 3: You do not hold the role you are looking at. It is easy to inspect a role, confirm the View code is ticked, and conclude the configuration is fine, without checking that the user is actually assigned to that role. Roles with similar names make this worse. Because permissions come only from roles, and roles only ever add, no user-level exception can be subtracting the code, so a correct-looking grant that has no effect almost always means the assignment is not what you assumed.

Cause 4: The permission was added while you were signed in. Your permission set is captured at sign-in and held for the session. A grant made after you signed in does not reach you until you sign out and back in. That case has its own post: a permission change did not take effect.

Cause 5: Startup did not complete the permission sync. If startup fails before the catalog sync runs, for example because a pending database update did not apply, older codes remain in place and newly gated screens can fail their checks silently. Resolve the startup problem first, then restart.

How to Fix It

  1. Identify the code that gates the module. Open Settings, Security, Roles, edit any role, and expand the permission tree. Sections group modules, modules group actions. Find the module by name and note its View code.
  2. Check the user's roles. Open Settings, Security, Users, select the user, and open the edit dialog. The role selections show every role assigned.
  3. Check each role's matrix. Open each assigned role and confirm whether the module's View code is ticked. If none of them tick it, that is your answer.
  4. Compare against a colleague who can see the tab. Read their role selections alongside the affected user's. The difference between the two lists is usually the whole answer, and it catches similar-name mistakes faster than reading a permission tree does.
  5. Grant the code. Add the View code to the role that should carry it, which is the durable fix for a job function. When just one person needs it, build a narrow add-on role and assign it alongside their existing one: how to give one user extra access covers that route.
  6. Have the user sign out and back in. The session's permission set is captured at sign-in, so the tab appears on the next login and not before.

A Worked Example

A Planner role is built with the Production section (manufacturing orders, schedule generate, drag reschedule, edit and log actuals, routing view and edit), the Sales section (quote view, add, edit, simulate, plus customer view), the Insights section (report view and export, dashboard view and configure), and the Data section (import run and mask management). It grants Settings View but deliberately omits the clear-data and data-source codes.

A planner on that role can schedule, quote, import, and report. If nobody ticked the Master Data section, that planner cannot see Products, Work Centers, Shifts, or Holidays. Everything else works, which is exactly why the gap goes unnoticed until someone tries to add a machine.

How to Prevent It

  • Build roles from a written job description, section by section. Walk the whole permission tree once per role rather than ticking codes as complaints arrive. The section headings make omissions visible.
  • Re-review custom roles after every update. New modules ship with new codes, and only the Administrator role gets them automatically. Add a role review to your upgrade checklist.
  • Name add-on roles for the capability, not the person. An Import Operator role assigned to two people stays readable a year later; a role called Dave Extra does not.
  • Check the assignment before escalating. When a role clearly grants a code and the tab is still missing, the user not holding that role, or not having signed out and back in, covers nearly every remaining case.
  • Never rename a permission code. Audit rows store the code string, so a rename orphans history and breaks existing grants. User and permission mistakes catalogs the rest of these traps.

A missing tab almost always means your assigned roles do not grant the view permission that gates that module. Tabs are hidden rather than disabled so the screen stays uncluttered, which is why the tab simply is not there instead of appearing grayed out. An administrator can open Settings, Security, Users, check which roles you hold, then open each role and confirm the module's View code is ticked.

New permission codes are added to the catalog automatically on startup and are granted to the Administrator role, but custom roles do not gain new codes on their own. If your shop uses a custom Planner or Supervisor role, an administrator must edit that role and tick the new module's codes after an update. Until then, users on those custom roles will not see the new tab even though the software includes it.

Yes, but not because of a per-user exception, since permissions come only from roles and roles only ever add. There are two real causes. Either the user does not actually hold the role you inspected, which the role selections on their user record will show and which similar role names make easy to miss, or the grant was made while they were signed in, because the permission set is captured at sign-in and a session keeps the set it started with. Check the assignment first, then have them sign out and back in.

Expert Q&A: Deep Dive

Q: Our new planner sees the schedule but there is no Work Center tab at all. Her role has scheduling permissions. What is wrong?

A: Scheduling permissions and master data permissions are separate sections in the permission tree. Her role likely grants the Production section codes for viewing and generating schedules but not the Master Data section code that gates the Work Center module. Open Settings, Security, Roles, edit her role, expand the Master Data section, and tick the Work Center View code, plus Add and Edit if she should maintain machines. She has to sign out and sign back in for the change to reach her session.

Q: We added a module after an upgrade and only the administrator can see it. Everyone else's tabs look the same as before. Why?

A: The startup sync inserts new permission codes into the catalog and grants every one of them to the Administrator role, which is why the administrator sees the module immediately. Custom roles are deliberately left alone so an upgrade never silently widens access. Edit each custom role, find the new module in the permission tree, tick the codes that role should have, and save. Users pick up the change on their next sign-in.

Frequently Asked Questions

Ready to Transform Your Production Scheduling?

User Solutions has been helping manufacturers optimize their production schedules for over 35 years. One-time license, 5-day implementation.

User Solutions Team

User Solutions Team

Manufacturing Software Experts

User Solutions has been developing production planning and scheduling software for manufacturers since 1991. Our team combines 35+ years of manufacturing software expertise with deep industry knowledge to help factories optimize their operations.

Let's Solve Your Challenges Together