ent
- Last UpdatedNov 12, 2024
- 6 minute read
The ent table defines the physical entities in the system that are neither personnel nor material.
There are many different terms used to describe cells, machines, work centers, production lines etc. in various industries. Even the SP95 standard proposes different terminology for batch, process, and discrete applications. This is further complicated by the fact that a particular installation, e.g., a bottling line usually has batch, process, and discrete areas and the terminology needs to be appropriate in each case.
To solve this dilemma we have decided to decouple as much as possible the business services or capabilities of any of these entities from their physical hierarchy. This then allows us to enable and assign one or more ‘services’ or ‘capabilities’ to any particular physical entity that was defined.
Each entity thus has configurable ‘capabilities’. For example, the ‘can_sched_jobs’ flag indicates whether a job can be scheduled to this entity. The ‘can_run_jobs’ field indicates whether a job can be executed on this entity. This allows a group of say ‘lathes’ or ‘saws’ to be defined and the actual ‘machine’ on which the job actually runs need only be selected just prior to running the job.
For example, for the capability of ‘running jobs’, any of these physical entities could be capable of running a job. This is distinct from the ‘service function’ of ‘scheduling jobs’ and allows us to schedule jobs to a higher level assembly station for example, where many jobs were being ‘run’ at a time on its constituent machines. It also allows us the ability to run a separate job on each spindle of a dual spindle lathe at the same time.
Any number of physical entity levels are allowed in a hierarchical structure. The top level would typically be a "logical" entity such as a site or facility. The next level would typically be ‘Super Groups of machines’, which would typically map to production lines, areas, etc. The next level down would be ‘Machine Groups’, typically cells or work centers. Level 4 would typically be machines and level 5 ‘sub machines’ e.g., pallets, lathe spindles, or tombstone faces. However, the user may define any hierarchy to suit the application at hand.
It is envisaged that a level 2 or 3 physical entity (group or supergroup) would typically be defined to map one-to-one with the definitions of Work Centers in the ERP system (if there is one). This allows for accepting schedules and tracking / reporting of data to the granularity of these ERP defined groups, but still allows for the job to be executed on one or more smaller entities within that group.
The ent table is designed to store the key information for all of these physical entities.
The parent_ent_id field will be null for the top level entities. For the children of many-to-many relationships, it defines the default parent from which schedules (or any other characteristics) are inherited, in case there’s a conflict among which parent to inherit from, e.g., shift schedules and applicable reject reasons may be inherited from a default parent entity.
We do not save deleted entities. To "deactivate" an entity but still keep it available to give meaning to its ent_ID, all capabilities may be removed from it instead. Clone and copy functions are provided when setting up to speed up creating entities with similar characteristics.
The flow_diag_img field can also be used on a command button if required.
|
Field |
Datatype |
PK |
Nulls? |
Description |
|---|---|---|---|---|
|
ent_name |
string80 |
N |
N |
The entity name. Entity names must be unique within a site. |
|
description |
string80 |
N |
Y |
Entity description |
|
parent_ent_id |
int32 |
N |
Y |
Default parent entity ID, null if top level. If an entity has multiple parents, this is the one from which to inherit things that can only be inherited from one – e.g., shift schedule. |
|
site |
int32 |
N |
Y |
ID of ancestor entity that defines site of this entity; if = ent_id, this entity is a site. Null for entities above sites, or for single-site systems |
|
hourly_cost |
tfloat |
N |
Y |
Cost of running |
|
can_sched_jobs |
logical |
N |
N |
Can jobs be scheduled to this entity? Default = No. |
|
can_run_jobs |
logical |
N |
N |
Can jobs be run on this entity? Default = Yes. |
|
can_capture_util |
logical |
N |
N |
Can utilization data be captured on this entity? Default = Yes. |
|
can_capture_labor |
logical |
N |
N |
Can labor data be captured on this entity? Default = No. |
|
can_do_dnc |
logical |
N |
N |
Can this entity communicate with machine tools? Default = No. Note: This field is currently not used. |
|
can_track_oee |
logical |
N |
N |
Can OEE statistics be captured on this entity? Default = No. |
|
can_sched_shifts |
logical |
N |
N |
Can shifts be scheduled for this entity? Default = No. |
|
can_store |
logical |
N |
N |
Is this entity a "warehouse" or storage location? Default = No. |
|
can_log_data |
logical |
N |
N |
Can this entity log data? Default = No. |
|
can_ship |
logical |
N |
N |
Can shipments be made from this entity? Default = No. Note: This field is currently not used. |
|
can_receive |
logical |
N |
N |
Can material be received at this entity? Default = No. Note: This field is currently not used. |
|
can_copy_folders |
logical |
N |
N |
Can files in folders for this entity be copied to its download directories? Default = Yes. |
|
can_capture_qm |
logical |
N |
N |
Can this entity capture QM data and have sample requests generated for it? Default = No. |
|
can_sched_jobs_ |
logical |
N |
N |
If the entity originated in the System Platform galaxy, did the named capability also originate there (by virtue of the presence and configuration of an application object below that entity in the galaxy) ? Default = No. |
|
can_run_jobs_ |
logical |
N |
N |
|
|
can_capture_util_ |
logical |
N |
N |
|
|
can_track_oee_ |
logical |
N |
N |
|
|
can_store_from |
logical |
N |
N |
|
|
entity_from_ |
logical |
N |
N |
Did this entity originate in the System Platform galaxy? Default = No. |
|
cur_pattern_id |
int32 |
N |
Y |
The ID of the shift pattern to which the current shift on the entity is associated. |
|
cur_shift_id |
int32 |
N |
Y |
Current shift on this entity; will never be null |
|
cur_shift_start_ |
tdatetime |
N |
Y |
Current shift start time on this entity in UTC; if there are no shifts, it will be the time at which the entity was created |
|
cur_shift_start_ |
tdatetime |
N |
Y |
Current shift start time on this entity in local time; if there are no shifts, it will be the time at which the entity was created |
|
cur_shift_end |
tdatetime |
N |
Y |
Current shift end time on this entity in UTC. If shift 0, the starting time of the next shift. |
|
cur_shift_end |
tdatetime |
N |
Y |
Current shift end time on this entity in local time. If shift 0, the starting time of the next shift. |
|
last_domain |
tdatetime |
N |
Y |
Unused |
|
tree_icon |
string80 |
N |
Y |
Graphic to use for tree icon/image Note: This field is currently not used. |
|
flow_diag_img |
string80 |
N |
Y |
Graphic to use for flow diagram image Note: This field is currently not used. |
|
identical_job_execs |
int32 |
N |
N |
Number of identical ‘positions’ that can run independent jobs on this entity. For example, used for batching jobs in a furnace etc. Default = 0, if set must be > 1. |
|
ent_class |
logical |
N |
N |
Is this entity identified as an entity class? Default = No. |
|
show_in_dsp_tree |
logical |
N |
N |
Should this entity appear in the data source plug-in tree? Default = Yes. Note: This field is currently not used. |
|
def_std_oper_id |
string40 |
N |
Y |
Identifies the standard operation to be used when creating a work order with no reference to a process. |
|
equipment_type |
int32 |
N |
N |
The source of utilization and production information: 1 = manual 2 = automatic (information from the UCO or OCO application objects) 3 (default) = semi-automatic (either manual or from application objects) |
|
spare1 |
string1000 |
N |
Y |
Use defined by language term 5201 |
|
spare2 |
string1000 |
N |
Y |
Use defined by language term 5202 |
|
spare3 |
string1000 |
N |
Y |
Use defined by language term 5203 |
|
spare4 |
string1000 |
N |
Y |
Use defined by language term 5204 |
|
last_edit_comment |
string254 |
N |
Y |
Reserved for internal use to indicate why this record was changed |
|
last_edit_by |
string40 |
N |
Y |
Who last changed this record |
|
last_edit_at |
tdatetime |
N |
N |
When this record was last changed |
|
ent_id |
ID 1 |
Y |
N |
Unique entity identifier |
FK from parent_ent_id to ent. (Inhibit delete)
FK from tree_icon to graphics. (Inhibit delete)
FK from flowdiag_img to graphics. (Inhibit delete)
FK from site to ent. (Inhibit delete)
FK from def_std_oper_id to std_oper. (Set null)
ent_name is UK.