The gist of the last section is that Dime.Scheduler extends ERP, CRM or LoB systems with a graphical solution for the planning of tasks and resources. All the features Dime.Scheduler offers are tools for the planner to create and maintain an accurate schedule for the resources who need to carry out those tasks.
In this section, a few fundamental concepts are bundled together, more details will follow further on in the manuals. The goal is to introduce you to Dime.Scheduler's lingo and how the concepts are related to each other.
Resources, types and filters
A resource is a representation of an entity that is able to perform tasks and is subjected to a schedule. As explained in the last section, a resource can be anything like a consultant or a moving lift.
A resource type arranges resources in logical groups. An example of a resource type in the construction business could be "excavator" or "bulldozer". Just as with the resources, a resource type can be anything, which gives you tremendous flexibility in the planning process.
Task and resource filters allow you to define requirements for the resource(s) to carry out a task. For example, in order to execute the "Translate user manual to Spanish" task, a resource would for instance need to possess a C2 CEFR level for Spanish.
From job to appointment
Traditionally, back office systems are used to create the work orders and the subsequent tasks that must be completed. Using the bidirectional synchronization mechanism, the data is fed into Dime.Scheduler and made available to the user. All the planner needs to do is to find a resource and an appropriate time to carry out the task.
The tasks that are yet to be scheduled are called open tasks. Some tasks may be related to the same work order, which is called a job. For instance, a job could be to service the HVAC of a large government building. When you break down the assignment, you could identify smaller units of work (i.e. tasks) such as replacing filters, cleaning the coils, inspecting the settings, etc.
As soon as a task is scheduled (i.e. the task has been assigned to a resource on a given date), then it is converted to an appointment. This conversion will always be synchronized with the back office using the connectors, just like every subsequent transaction. An appointment contains the data for a particular event, whereas a planned task also contains information about the resources that are assigned to the appointment.
Categories and time markers
Categories and time markers are part of the indicator set that identify and label appointments. They can be considered as a reflection of the status of an appointment on a given point in time. Such a status can be easily leveraged to enforce business logic in the back office systems.
Profiles and layouts
Profiles and layouts are not fundamental to the planning process but they are fundamental for Dime.Scheduler. In fact, they are part of what makes Dime.Scheduler so flexible. As will be covered in depth in the components section, profiles and layouts enable the user to create personalized workspaces, which introduces a whole new level of flexibility as profiles and layouts can be reused and shared with other profiles, layouts and user groups.
Users and user groups
Dime.Scheduler has a granular and data-driven security system. Needless to say, users are the basic entities that represent physical users. Users can log in with their Windows or Azure credentials, or they can use the forms authentication that Dime.Scheduler provides.
User groups are containers that coalesce users and then acts as a proxy, which makes security management much smoother. It also allows users to collaborate with other users of the group by sharing profiles and layouts.
Roles and user actions
Dime.Scheduler applies Role Based Access Control (RBAC). Users needs to have security clearance to be able to use protected features. A (static) list of security rules - also named user actions - is enforced in the application. An example of a user action is the 'edit appointment' action which protects all editing appointment capabilities.
A user role is a group of user actions and can be assigned to users and user groups. Administrators can create user roles as they like and assign user actions. This implies that user actions are not directly assigned to users. Instead, actions are assigned to user roles, and user roles are assigned to users and user groups.
Links and Action URIs
In contrast to an action URI, links are static and not contextual. They are good old links to other resources accessible via the internet.
An action URI is a dynamic link with placeholders that is populated by properties of tasks, jobs and appointments. For example, this allows you to view the details of a job in Microsoft Dynamics NAV or Microsoft Dynamics 365 Business Central in just one click from Dime.Scheduler.