- Created by Maarten Lapere, last modified by Jérôme Vincendon on May 21, 2019
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 21 Next »
Dimensions allow you to link multiple Resource, Staff or Group records to a single Reservation, and actually plot that Reservation to all the related records' calendars. The process of achieving this is twofold:
- create lookups on the Reservation object, linking the Object you want to link (Resource, Staff of Group)
- define Dimension Fields on that corresponding Dimension, to tell Booker25 that these fields should be plotted
- define Dimension Junctions on the Dimension to tell Booker25 that you have related lists that should be plotted
Dimension
Dimensions are a way to let Booker25 know which objects related to a reservation are important.
Field | Type | Required | Description |
---|---|---|---|
Dimension Object Name | Text | Yes | The API name of an object to which reservations are related. |
Availability Lookup | Text | No | The API name of a lookup from Availability to the dimension object. For more information see this article about Availabilities |
Dimension Field
Dimensions Fields are a way to let Booker25 know which lookups on a reservation are important.
Field | Type | Required | Description |
---|---|---|---|
Dimension | Lookup | Yes | The Dimension record that is the parent of this Dimension Field. |
Dimension Field Name | Text | Yes | The API name of a lookup field on Reservation. |
Enable Advanced Lookup Filtering | Checkbox | No | Enables the advanced lookup filter on the reservation form for this dimension field. The advanced lookup filter allows you to use autocomplete to search through valid related records. It will only show records in which the current reservation will be valid. So for example meeting rooms in closed buildings or staff that are unavailable because of holiday or sick leave will not be shown. Or if you have added a service to the reservation, it will only show records in which that service is actually available during the time of the reservation. A known limitation of the advanced lookup filter is that it doesn't support custom lookup filters. |
Auto Populate on Calendar | Picklist | Yes | Controls if this dimension field gets populated with the related record id when creating a new reservation on the calendar. Options:
|
Availability Checking | Picklist | Yes | Defines the behavior when Reservations are saved outside of the available times for the related dimension record.
For more information, see this article about Conflict Checking, and this article about Availabilities |
Double Booking Checking | Picklist | Yes | Defines the behavior when double bookings are detected for Reservations in this Dimension.
For more information, see this article about Conflict Checking. |
Dimension Allow Double Booking Field | Text | No | The API name of a checkbox field1 on the related dimension object. When Enforce Double Booking Check is enabled, but this field on the related record equals true, the double booking is allowed. |
Reservation Allow Double Booking Field | Text | No | The API name of a checkbox field1 on reservation. When Enforce Double Booking Check is enabled, but this field on the reservation equals true, the double booking is allowed. |
Capacity Checking | Picklist | Yes | Defines the behavior when a Reservation's quantity exceeds the Dimension's capacity.
For more information, see this article about Conflict Checking. |
Dimension Capacity Field | Text | No2 | The API name of a number field3 on the related object, which holds the capacity of the related record. This capacity can't be exceeded if Enforce Capacity Check is enabled. |
Reservation Quantity Field | Text | No2 | The API name of a number field3 on the reservation, which holds the quantity of the reservation. This quantity is checked to not exceed the related record's capacity if Enforce Capacity Check is enabled. |
Reservation Skip Capacity Check Field | Text | No | The API name of a checkbox field1 on reservation. When Capacity Checking is set to 'Soft' or 'Hard', but this field on the related record equals true, the reservation will be saved normally. |
1: Can also be a cross-object reference or a checkbox formula on Reservation. However the latter will not be set yet when working from the Reservation Form UI.
2: Required when Enforce Capacity Check is enabled.
3: Can also be a number formula, and can also be a cross-object reference.
Dimension Junction
Dimensions Junctions are a way to let Booker25 know which junctions between a dimension and a reservation are important.
A junction object is an object that sits in between two other objects (i.e. it has a lookup to each of the two objects). This creates a many-to-many relationship between those objects. For more information, see https://help.salesforce.com/articleView?id=relationships_manytomany.htm&type=5
An example of this would be a contact list, where you link multiple contacts to a reservation. Using dimension junctions you can:
- Make this list visible on the reservation form
- Make the reservation visible on the contact calendar for each contact in the list
- (Optional) Make Booker25 detect and prevent double bookings for these contacts.
Field | Type | Required | Description |
---|---|---|---|
Dimension | Lookup | Yes | The Dimension record that is the parent of this Dimension Junction. |
Dimension Junction Name | Text | Yes | The API name of an object. This object should be a junction between reservation and the dimension. |
Reservation Lookup API Name | Text | Yes | The API name of a field on the object. This field should be a lookup (or master-detail) to Reservation. |
Dimension Lookup API Name | Text | Yes | The API name of a field on the object. This field should be a lookup (or master-detail) to the dimension. |
Availability Checking | Picklist | Yes | Defines the behavior when Reservations are saved outside of the available times for the related dimension record.
For more information, see this article about Conflict Checking, and this article about Availabilities |
Double Booking Checking | Picklist | Yes | Defines the behavior when double bookings are detected for Reservations in this Dimension.
For more information, see this article about Conflict Checking. |
Dimension Allow Double Booking Field | Text | No | The API name of a checkbox field1 on the dimension. When Enforce Double Booking Check is enabled, but this field on the related record equals true, the double booking is allowed. |
Reservation Allow Double Booking Field | Text | No | The API name of a checkbox field1 on reservation. When Enforce Double Booking Check is enabled, but this field on the reservation equals true, the double booking is allowed. |
Junction Allow Double Booking Field | Text | No | The API name of a checkbox field1 on the object itself. When Enforce Double Booking Check is enabled, but this field equals true, the double booking is allowed. |
1: Can also be a cross-object reference or a checkbox formula on Reservation. However the latter will not be set yet when working from the Reservation Form UI.
Trigger hook
For every Dimension Junction you create, make sure you also create a Trigger for its object, which calls the following method: B25.DimensionJunctionTriggerHook.execute()
This makes Booker25 check permissions on the object.
trigger <Trigger_Name> on <Dimension_Junction_API_Name> (before insert) { B25.DimensionJunctionTriggerHook.execute(); }
Related articles
-
Page:
-
Page:
-
Page:
-
Page:
-
Page:
- No labels