Skip to main content

Appointment

The appointment entity is what Dime.Scheduler is all about. An appointment is the main deliverable of the software and represents a block in the planning board. The appointment contains the information of the appointment such as the start and end date, and it holds references to the resources that have been assigned to it.

The following entities are exposed through the API.

Appointment

Upsert appointment

Inserts or updates an appointment record. The behavior of this procedure depends on the data you pass to it:

  • The appointment id is required if you want to update an existing appointment.
  • Otherwise, it inserts an appointment resource record (linking a resource to the appointment) if the record does not exist.
NameData TypeDefaultRequiredDescription
SourceAppnvarchar(30)✔️See API reference
SourceTypenvarchar(10)✔️See API reference
JobNonvarchar(50)✔️
TaskNonvarchar(50)✔️
AppointmentNonvarchar(max)0
AppointmentIdbigint0
Subjectnvarchar(max)
Bodynvarchar(max)
StartdatetimeUse ISO 8601 format: yyyy-mm-ddThh:mm
EnddatetimeUse ISO 8601 format: yyyy-mm-ddThh:mm
IsAllDayEventbit0This field is deprecated.
Categorynvarchar(100)See API reference
TimeMarkernvarchar(100)See API reference
Importanceint0See API reference
Lockedbit0
ResourceNonvarchar(50)
AppointmentGuidnvarchar(50)
ReplaceResourcebit0
SentFromBackofficebit1
BackofficeIDnvarchar(100)
BackofficeParentIDnvarchar(100)
PlanningUOMnvarchar(20)
PlanningUOMConversiondecimal(18,6)0
PlanningQtydecimal(18,6)0
UseFixPlanningQtybit0
RoundToUOMbit0
  • This endpoint is available in the import API endpoint /import via the procedure mboc_upsertAppointment.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_upsertAppointment",
    "ParameterNames": ["SourceApp", "SourceType", "JobNo", "TaskNo", "Subject", "Start", "End"],
    "ParameterValues": ["BCCOMPANY1", "JOB", "JOB001", "TASK001", "Important meeting", "2024-01-01T15:00","2024-01-02T15:00"]
    }
    ]

Delete appointment

The behavior of this procedure depends on the data you pass to it:

  • If a resource number is provided, then the appointment resource record is deleted. The appointment record is also deleted if no more appointment resource records exist for the appointment.
  • If the resource number is not provided, then the appointment record and all linked appointment resource records are deleted.
NameData TypeDefaultRequiredDescription
SourceAppnvarchar(30)✔️See API reference
SourceTypenvarchar(10)✔️See API reference
AppointmentNonvarchar(max)0
AppointmentIdbigint
AppointmentGuidnvarchar(50)
ResourceNonvarchar(50)
SentFromBackofficebit1
  • This endpoint is available in the import API endpoint /import via the procedure mboc_deleteAppointment.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_deleteAppointment",
    "ParameterNames": ["SourceApp", "SourceType", "AppointmentNo"],
    "ParameterValues": ["BCCOMPANY1", "JOB", "x0rnJJ2b"]
    }
    ]

Upsert appointment URI

Inserts or updates an appointment URI record.

An appointment URI contains links to documents, web pages and the back-office system. You need to pass an existing appointment id or appointment GUID.

NameData TypeDefaultRequiredDescription
pSourceAppnvarchar(30)See API reference
pSourceTypenvarchar(10)See API reference
pAppointmentIdbigint0
pAppointmentGuidnvarchar(50)
pUrlnvarchar(1000)✔️
pUrlDescnvarchar(255)
  • This endpoint is available in the import API endpoint /import via the procedure mboc_upsertAppointmentUrl.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_upsertAppointmentUrl",
    "ParameterNames": ["pUrl", "pAppointmentId"],
    "ParameterValues": ["https://docs.dimescheduler.com", "15123"]
    }
    ]

Upsert appointment container

Adds or updates the allocation of an appointment to a container.

NameData TypeDefaultRequired
Containernvarchar(100)✔️
Appointmentnvarchar(100)✔️
  • This endpoint is available in the import API endpoint /import via the procedure mboc_upsertAppointmentContainer.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_upsertAppointmentContainer",
    "ParameterNames": ["Container", "Appointment"],
    "ParameterValues": ["CONTAINER001", "200"]
    }
    ]

Add assignment

Add a resource to an existing appointment, thereby creating a linked appointment.

NameData TypeDefaultRequiredDescription
SourceAppnvarchar(30)See API reference
SourceTypenvarchar(10)See API reference
AppointmentIdbigint✔️
AppointmentNonvarchar(max)0
ResourceNonvarchar(50)✔️
AppointmentGuidnvarchar(50)
SentFromBackofficebit1
  • This endpoint is available in the import API endpoint /import via the procedure mboc_addAppointmentResource.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_addAppointmentResource",
    "ParameterNames": ["AppointmentId", "ResourceNo"],
    "ParameterValues": ["100", "2"]
    }
    ]

Properties

Update appointment content

Updates the body and subject of the selected appointment.

NameData TypeDefaultRequiredDescription
SourceAppnvarchar(30)See API reference
SourceTypenvarchar(10)See API reference
AppointmentIdbigint
AppointmentNonvarchar(max)0
AppointmentGuidnvarchar(50)
SentFromBackofficebit1
Subjectnvarchar(max)
Bodynvarchar(max)
  • This endpoint is available in the import API endpoint /import via the procedure mboc_updateAppointmentContent.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_updateAppointmentContent",
    "ParameterNames": ["AppointmentId", "Subject"],
    "ParameterValues": ["1", "Hello world!"]
    }
    ]

Update appointment planning quantity

Updates the planning quantity of an appointment.

NameData TypeDefaultRequiredDescription
SourceAppnvarchar(30)See API reference
SourceTypenvarchar(10)See API reference
AppointmentIdbigint
AppointmentNonvarchar(max)0
PlanningQtydecimal(18,6)
AppointmentGuidnvarchar(50)
SentFromBackofficebit1
  • This endpoint is available in the import API endpoint /import via the procedure mboc_updateAppointmentPlanningQty.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_updateAppointmentPlanningQty",
    "ParameterNames": ["AppointmentId", "PlanningQty"],
    "ParameterValues": ["1", "24"]
    }
    ]

Indicators

Set time marker

Update the time marker assigned to the appointment. Can be used to update status or progress of the appointment.

NameData TypeDefaultRequiredDescription
SourceAppnvarchar(30)See API reference
SourceTypenvarchar(10)See API reference
AppointmentIdbigint
AppointmentNonvarchar(max)0
TimeMarkernvarchar(100)
AppointmentGuidnvarchar(50)
SentFromBackofficebit1
  • This endpoint is available in the import API endpoint /import via the procedure mboc_updateAppointmentTimeMarker.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_updateAppointmentTimeMarker",
    "ParameterNames": ["AppointmentId", "TimeMarker"],
    "ParameterValues": ["1", "TIMEMARKER002"]
    }
    ]

Set category

Updates the category assigned to the appointment. Can be used to update status or progress of the appointment.

NameData TypeDefaultRequiredDescription
SourceAppnvarchar(30)See API reference
SourceTypenvarchar(10)See API reference
AppointmentIdbigint
AppointmentNonvarchar(max)0
Categorynvarchar(100)
AppointmentGuidnvarchar(50)
SentFromBackofficebit1
  • This endpoint is available in the import API endpoint /import via the procedure mboc_updateAppointmentCategory.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_updateAppointmentCategory",
    "ParameterNames": ["AppointmentId", "Category"],
    "ParameterValues": ["1", "CATEGORY002"]
    }
    ]

Set lock

Locks or unlocks an appointment. A locked appointment can not be modified nor deleted on the planning board.

NameData TypeDefaultRequiredDescription
SourceAppnvarchar(30)See API reference
SourceTypenvarchar(10)See API reference
AppointmentIdbigint
AppointmentNonvarchar(max)0
Lockedbit0
AppointmentGuidnvarchar(50)
SentFromBackofficebit1
  • This endpoint is available in the import API endpoint /import via the procedure mboc_updateAppointmentLocked.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_updateAppointmentLocked",
    "ParameterNames": ["AppointmentId", "Locked"],
    "ParameterValues": ["1", "true"]
    }
    ]

Set importance

Sets the importance of an appointment.

NameData TypeDefaultRequiredDescription
SourceAppnvarchar(30)See API reference
SourceTypenvarchar(10)See API reference
AppointmentIdbigint
AppointmentNonvarchar(max)0
Importanceint0See API reference
AppointmentGuidnvarchar(50)
SentFromBackofficebit1
  • This endpoint is available in the import API endpoint /import via the procedure mboc_updateAppointmentImportance.
  • Example body:
    [
    {
    "StoredProcedureName": "mboc_updateAppointmentImportance",
    "ParameterNames": ["AppointmentId", "Importance"],
    "ParameterValues": ["1", "2"]
    }
    ]

API reference

Source

Dime.Scheduler is a centralized planning application. One the key tenets is the ability to accommodate data from different origins. For instance, it is perfectly acceptable to plan work orders from Business Central, CRM, imported Excel sheets, etc., and Dime.Scheduler won't break a sweat because of the existence of the Source App and SourceType fields in the data model.

Source App

When the planner makes an appointment for a resource or task, Dime.Scheduler knows which system to notify. Through the connector setup, Dime.Scheduler will find a matching SourceApp and send the appointment to the corresponding URI subsequently. The source app field is a unique identifier that identifies a back office instance such a tenant of Business Central, a test environment, an instance of CRM cloud, or any other application you wish to use to feed the data into Dime.Scheduler.

Source Type

The SourceType is used inside the back-office system itself. A source type represents a distinct entity such as a service order, production order, assembly order, etc.

The standard connectors that Dime Software provides make it possible to plan different types of resources and tasks. When Dime.Scheduler posts an appointment to a standard connector, it ends up in a staging table, which is then processed by the connector to make sure the appointment produced in Dime.Scheduler is traced back to the original record using the externally identifiable fields (JobNo, TaskNo, ResourceNo) that identify the record.

Category

Controls the visual indicator of the planned task in the planning board. Read more about this topic here.

Time Marker

Controls the visual indicator of the planned task in the planning board. Read more about this topic here.