The People Manager module manages the allocation of people to rooms over time.
People Manager is enabled if setting PersonModule is TRUE, when setting PersonArchibusMode then determines which room occupant data model is accessed. Thus SISfm supports three alternative methods of modelling room occupants:
The following describes each table:
em_schedule | ||
em_schedule_id | Person allocation identifier. Must be autonumber data type. Optional field, see table occupant_group below. | |
em_number | Person identifier, matched with field em.em_number (however see settings EmNumberField and EmExtraKeyField). The value (TBA) signifies a person to be advised, with no entry in table em. | |
bl_id | Allocation room building ID. | |
fl_id | Allocation room floor ID. | |
rm_id | Allocation room room ID. | |
loc_code | Allocation room location code, matched with field rm.loc_code. | |
zone_no | Allocation room zone number. | |
start_date | Allocation start date. | |
end_date | Allocation end date. May be undefined. | |
present | Allocation person presence factor, 1.0 means that the person is present full time. Zero means that the person is the custodian of allocated equipment. | |
book_id | Allocation booking ID. Optional field, required by the Workstation Bookings module. | |
book_em_id | Allocation booking user ID. Optional field, required by the Workstation Bookings module. | |
book_check_in_time | Allocation booking check in time. | |
occupant_group_id | Occupant group ID. Optional field, see table occupant_group below. | |
updated_by updated_date | The user (upper-case adsName) and time of the last update. Optional fields. | |
rm_zone | ||
bl_id | Room building ID. | |
fl_id | Room floor ID. | |
rm_id | Room room ID. | |
loc_code | Room location code, matched with field rm.loc_code. | |
zone_no | Room zone number. | |
zone_name | Room zone name. Optional field. | |
dv_id dp_id | Room zone ownership. Optional fields. If present, they are initially populated with the room ownership, with the exception of bookable zones whose ownership may be undefined to allow bookings by anyone. | |
group_id | Room zone group ID. Optional field, see table em_group below. | |
category | Room zone category. Optional field, requires an enumeration list if present. | |
capacity | Room zone capacity. Optional field, if not present room zone capacities of 1 are used. | |
notes | Room zone notes. Optional field. | |
location_x location_y | Room zone location. Optional fields, if present the Zone Location function is available in Map Enquiry (subject to the MapRoomZoneLocation access security function). | |
hot | Room zone is a "hot desk" if true, when it is not available for allocations. Optional field, if not present the Set Hot Zone and Unset Hot Zone functions are not available. | |
reserved | Room zone is not currently available for allocations if true. Optional field, if not present the Reserve Zone and Unreserve Zone functions are not available. | |
decommissioned | Room zone has been decommissioned if true, when it no longer contributes to the room capacity. Optional field, if not present the Decommission Zone and Recommission Zone functions are not available. | |
bookable | Room zone is available for bookings by the Workstation Bookings module. | |
updated_by updated_date | The user (upper-case adsName) and time of the last update. Optional fields. | |
em_group | Zone groups. Optional table, if this and field rm_zone.group_id exist, the Zone Groups page is available in People Manager (subject to the PeopleGroups access security function). | |
group_id | Zone group ID. | |
em_number | Zone group contact identifier, matched with field em.em_number. (However see settings EmNumberField and EmExtraKeyField). | |
description | Zone group description. | |
occupant_group | Occupant groups. Optional table. If this, table occupant_group_new, field em_schedule.em_schedule_id, or field em_schedule.occupant_group_id do not exist, or PersonArchibusMode is TRUE, the Occupant Groups screen is not available in People Manager (and otherwise is subject to the PeopleOccupantGroups access security function), and the Occupant Groups function is not available in Map Enquiry (and otherwise is subject to the MapRoomOccupantGroups access security function). | |
occupant_group_id | Occupant group ID. | |
name | Occupant group name. | |
occupant_group_new | New occupants in occupant groups. Optional table, see table occupant_group above. | |
occupant_group_new_id | New occupant ID. Must be autonumber data type. | |
occupant_group_id | New occupant group ID. | |
em_number | New occupant identifier, matched with field em.em_number (however see settings EmNumberField and EmExtraKeyField). | |
present | New occupant presence factor, 1.0 means that the person will be present full time. | |
rmpct | ||
em_id | Person identifier, matched with field em.em_id. NOTE that EmNumberField must be set to em_id and EmExtraKeyField must not be set. | |
bl_id | Allocation room building ID. | |
fl_id | Allocation room floor ID. | |
rm_id | Allocation room room ID. | |
rm_cat | Allocation room category. | |
rm_id | Allocation room type. | |
dv_id | Allocation room division. | |
dp_id | Allocation room department. | |
date_start | Allocation start date. | |
date_end | Allocation end date. May be undefined. | |
pct_time | Allocation person % time, 100 means that the person is present full time. | |
pct_space | Allocation person % space, 100 means that the person occupies the whole room. | |
area_rm | Allocation person room area. | |
loc_code | Allocation room location code, matched with field rm.loc_code. | |
group_id | Occupant group ID. Optional field, see table em_group above. | |
location_x location_y | Occupant location. Optional fields, if present the Occupant Location function is available in Map Enquiry (subject to the MapRoomZoneLocation access security function). |
NOTES
For tables rm_zone and em_schedule, fields bl_id,fl_id,rm_id were optional from version 7.7.0 and became mandatory from version 8.5.2. Upon entry to the People Manager module, they are populated if null, to allow them to be added when rows exist.
Reference tables (sisfm_flds.ref_table) bl,fl,rm are required for fields bl_id,fl_id,rm_id in both tables in order to create reports that use them.
The primary key for em_schedule should be an additional autonumber field, which must be em_schedule.em_schedule_id to use Occupant Groups or the Workstation Bookings module.
The primary key for rm_zone should be fields bl_id,fl_id,rm_id,zone_no.
During initialisation when PersonArchibusMode is TRUE, People Manager creates a "no occupants" row in table rmpct for each room with no occupants, and populates rmpct.loc_code if absent because the row was created by Archibus.
Fields rmpct.area_rm is calculated from rmpct.pct_space and rm.area when an allocation is added or edited.
Fields rmpct.dv_id, rmpct.dp_id are obtained from rm.dv_id, rm.dp_id when an allocation is added or edited (see Archibus space application parameter InferRoomDepartments).
In order to use the Zone Location (or Occupant Location) and Occupant Groups functions in Map Enquiry, floor plans must include a View Points layer. This should be defined using the MapFloorLayerPointView setting (MS Access examples are included in the supplied app.config file). To use Occupant Groups in Map Enquiry, this setting must fulfil the following requirements: