Table of Contents

Meter

Table

Database Table Entity On Key 5 Conversions On Key 5 Tables Other Entities stored in same Table
Transaction aom.meter Meter ConvertMeter
astMeters

Columns

Property Db Table Db Column Db DataType Nullable Primary Key Joins
Code aom.meter code character varying(50) False
IsActive aom.meter is_active boolean False
CreatedByUserId aom.meter created_by_user_id bigint False
CreatedByUserCode uam.user code character varying(50) False aom.meter.created_by_user_id = uam.user.user_id
CreatedByUserFullName uam.user full_name character varying(200) False aom.meter.created_by_user_id = uam.user.user_id
CreatedOn aom.meter created_on timestamp without time zone False
ModifiedByUserId aom.meter modified_by_user_id bigint False
ModifiedByUserCode uam.user code character varying(50) False aom.meter.modified_by_user_id = uam.user.user_id
ModifiedByUserFullName uam.user full_name character varying(200) False aom.meter.modified_by_user_id = uam.user.user_id
ModifiedOn aom.meter modified_on timestamp without time zone False
Version aom.meter version integer False
PermissionTreeId aom.meter permission_tree_id bigint False
PermissionTreeCode uam.permission_tree code text False aom.meter.permission_tree_id = uam.permission_tree.permission_tree_id
PermissionTreeDescription uam.permission_tree description text True aom.meter.permission_tree_id = uam.permission_tree.permission_tree_id
SiteId aom.meter site_id bigint True
SiteCode gen.site code character varying False aom.meter.site_id = gen.site.site_id
SiteDescription gen.site description character varying False aom.meter.site_id = gen.site.site_id
Id aom.meter meter_id bigint False True
AutomaticallyUpdateAverageDailyRate aom.meter automatically_update_average_daily_rate boolean False
AutoResetValue aom.meter auto_reset_value numeric(19,4) True
AverageDailyRate aom.meter average_daily_rate numeric(19,4) False
AverageDailyRateCalculationQuantity aom.meter average_daily_rate_calculation_quantity integer True
AverageDailyRateCalculationUnit aom.meter average_daily_rate_calculation_unit aom.average_daily_rate_calculation_unit True
AverageDailyRateMaximumValue aom.meter average_daily_rate_maximum_value numeric(19,4) True
AverageDailyRateVariancePercentage aom.meter average_daily_rate_variance_percentage numeric(19,4) True
CumulativeReading aom.meter cumulative_reading numeric(19,4) True
Description aom.meter description character varying(100) False
IsPaused aom.meter is_paused boolean False
LastReading aom.meter last_reading numeric(19,4) True
LastReadOn aom.meter last_read_on timestamp without time zone True
LastResetOn aom.meter last_reset_on timestamp without time zone True
LastResetReading aom.meter last_reset_reading numeric(19,4) True
Notes aom.meter notes text True
PmrStatus aom.meter pmr_status aom.meter_pmr_status False
PmrStatusChangedOn aom.meter pmr_status_changed_on timestamp without time zone False
UnitOfMeasurementId aom.meter unit_of_measurement_id bigint False
UnitOfMeasurementCode gen.unit_of_measurement code character varying(50) False aom.meter.unit_of_measurement_id = gen.unit_of_measurement.unit_of_measurement_id
UnitOfMeasurementDescription gen.unit_of_measurement description character varying(100) False aom.meter.unit_of_measurement_id = gen.unit_of_measurement.unit_of_measurement_id
ValidateAverageDailyRateMaximumValue aom.meter validate_average_daily_rate_maximum_value boolean False
ValidateAverageDailyRateVariancePercentage aom.meter validate_average_daily_rate_variance_percentage aom.adr_max_variance_percentage_validation_option False
ValidateReadings aom.meter validate_readings boolean False

Enumerations

Mapping 1

Property Property Type Db Column Db Column Type Db Column Values
AverageDailyRateCalculationUnit AverageDailyRateCalculationUnit average_daily_rate_calculation_unit aom.average_daily_rate_calculation_unit ReadingCount
Hours
Days
Weeks
Months
Years

Mapping 2

Property Property Type Db Column Db Column Type Db Column Values
PmrStatus MeterPmrStatus pmr_status aom.meter_pmr_status LatestMeterReadingNotValid
NotUsedByTask
MeterIsInActive
AdrIsZero
Generated
GenerationRequired

Mapping 3

Property Property Type Db Column Db Column Type Db Column Values
ValidateAverageDailyRateVariancePercentage AdrVariancePercentageValidationOption validate_average_daily_rate_variance_percentage aom.adr_max_variance_percentage_validation_option SystemOption
Yes
No

Queries

The list of example Meter queries can be interpreted using the following legend:

Legend Description
Primary Table Alias The alias for the aom.meter table in the query
Include References Include (true) or exclude (false) all lookup table joins in the query
Include Permissions Include (true) or exclude (false) the permission table join in the query to enforce or skip row-level security based on the permissions for the user

Query 1

Primary Table Alias Include References Include Permissions
_m False False
SELECT
    _m.code AS "Code",
    _m.is_active AS "IsActive",
    _m.created_by_user_id AS "CreatedByUserId",
    _m.created_on AS "CreatedOn",
    _m.modified_by_user_id AS "ModifiedByUserId",
    _m.modified_on AS "ModifiedOn",
    _m.version AS "Version",
    _m.permission_tree_id AS "PermissionTreeId",
    _m.site_id AS "SiteId",
    _m.meter_id AS "Id",
    _m.automatically_update_average_daily_rate AS "AutomaticallyUpdateAverageDailyRate",
    _m.auto_reset_value AS "AutoResetValue",
    _m.average_daily_rate AS "AverageDailyRate",
    _m.average_daily_rate_calculation_quantity AS "AverageDailyRateCalculationQuantity",
    _m.average_daily_rate_calculation_unit AS "AverageDailyRateCalculationUnit",
    _m.average_daily_rate_maximum_value AS "AverageDailyRateMaximumValue",
    _m.average_daily_rate_variance_percentage AS "AverageDailyRateVariancePercentage",
    _m.cumulative_reading AS "CumulativeReading",
    _m.description AS "Description",
    _m.is_paused AS "IsPaused",
    _m.last_reading AS "LastReading",
    _m.last_read_on AS "LastReadOn",
    _m.last_reset_on AS "LastResetOn",
    _m.last_reset_reading AS "LastResetReading",
    _m.notes AS "Notes",
    _m.pmr_status AS "PmrStatus",
    _m.pmr_status_changed_on AS "PmrStatusChangedOn",
    _m.unit_of_measurement_id AS "UnitOfMeasurementId",
    _m.validate_average_daily_rate_maximum_value AS "ValidateAverageDailyRateMaximumValue",
    _m.validate_average_daily_rate_variance_percentage AS "ValidateAverageDailyRateVariancePercentage",
    _m.validate_readings AS "ValidateReadings"
FROM
    aom.meter _m


Query 2

Primary Table Alias Include References Include Permissions
_m True False
SELECT
    _m.code AS "Code",
    _m.is_active AS "IsActive",
    _u.user_id AS "CreatedByUserId",
    _u.code AS "CreatedByUserCode",
    _u.full_name AS "CreatedByUserFullName",
    _m.created_on AS "CreatedOn",
    _u1.user_id AS "ModifiedByUserId",
    _u1.code AS "ModifiedByUserCode",
    _u1.full_name AS "ModifiedByUserFullName",
    _m.modified_on AS "ModifiedOn",
    _m.version AS "Version",
    _pt.permission_tree_id AS "PermissionTreeId",
    _pt.code AS "PermissionTreeCode",
    _pt.description AS "PermissionTreeDescription",
    _s.site_id AS "SiteId",
    _s.code AS "SiteCode",
    _s.description AS "SiteDescription",
    _m.meter_id AS "Id",
    _m.automatically_update_average_daily_rate AS "AutomaticallyUpdateAverageDailyRate",
    _m.auto_reset_value AS "AutoResetValue",
    _m.average_daily_rate AS "AverageDailyRate",
    _m.average_daily_rate_calculation_quantity AS "AverageDailyRateCalculationQuantity",
    _m.average_daily_rate_calculation_unit AS "AverageDailyRateCalculationUnit",
    _m.average_daily_rate_maximum_value AS "AverageDailyRateMaximumValue",
    _m.average_daily_rate_variance_percentage AS "AverageDailyRateVariancePercentage",
    _m.cumulative_reading AS "CumulativeReading",
    _m.description AS "Description",
    _m.is_paused AS "IsPaused",
    _m.last_reading AS "LastReading",
    _m.last_read_on AS "LastReadOn",
    _m.last_reset_on AS "LastResetOn",
    _m.last_reset_reading AS "LastResetReading",
    _m.notes AS "Notes",
    _m.pmr_status AS "PmrStatus",
    _m.pmr_status_changed_on AS "PmrStatusChangedOn",
    _uom.unit_of_measurement_id AS "UnitOfMeasurementId",
    _uom.code AS "UnitOfMeasurementCode",
    _uom.description AS "UnitOfMeasurementDescription",
    _m.validate_average_daily_rate_maximum_value AS "ValidateAverageDailyRateMaximumValue",
    _m.validate_average_daily_rate_variance_percentage AS "ValidateAverageDailyRateVariancePercentage",
    _m.validate_readings AS "ValidateReadings"
FROM
    aom.meter _m
    JOIN uam.user _u ON _m.created_by_user_id = _u.user_id
    JOIN uam.user _u1 ON _m.modified_by_user_id = _u1.user_id
    JOIN uam.permission_tree _pt ON _m.permission_tree_id = _pt.permission_tree_id
    LEFT JOIN gen.site _s ON _m.site_id = _s.site_id
    JOIN gen.unit_of_measurement _uom ON _m.unit_of_measurement_id = _uom.unit_of_measurement_id


Query 3

Primary Table Alias Include References Include Permissions
_m False True
Parameter Name Data Type Value
@permission_user_id Bigint 500000000000
@permission_id Bigint 20400
WITH permission_tree_ids AS
(
    SELECT DISTINCT unnest(psd.permission_tree_ids) AS permission_tree_id FROM uam.user_permission up JOIN uam.permission_set_data psd ON up.permission_set_id = psd.permission_set_id WHERE up.user_id = @permission_user_id AND up.permission_id = @permission_id
)
SELECT
    _m.code AS "Code",
    _m.is_active AS "IsActive",
    _m.created_by_user_id AS "CreatedByUserId",
    _m.created_on AS "CreatedOn",
    _m.modified_by_user_id AS "ModifiedByUserId",
    _m.modified_on AS "ModifiedOn",
    _m.version AS "Version",
    _m.permission_tree_id AS "PermissionTreeId",
    _m.site_id AS "SiteId",
    _m.meter_id AS "Id",
    _m.automatically_update_average_daily_rate AS "AutomaticallyUpdateAverageDailyRate",
    _m.auto_reset_value AS "AutoResetValue",
    _m.average_daily_rate AS "AverageDailyRate",
    _m.average_daily_rate_calculation_quantity AS "AverageDailyRateCalculationQuantity",
    _m.average_daily_rate_calculation_unit AS "AverageDailyRateCalculationUnit",
    _m.average_daily_rate_maximum_value AS "AverageDailyRateMaximumValue",
    _m.average_daily_rate_variance_percentage AS "AverageDailyRateVariancePercentage",
    _m.cumulative_reading AS "CumulativeReading",
    _m.description AS "Description",
    _m.is_paused AS "IsPaused",
    _m.last_reading AS "LastReading",
    _m.last_read_on AS "LastReadOn",
    _m.last_reset_on AS "LastResetOn",
    _m.last_reset_reading AS "LastResetReading",
    _m.notes AS "Notes",
    _m.pmr_status AS "PmrStatus",
    _m.pmr_status_changed_on AS "PmrStatusChangedOn",
    _m.unit_of_measurement_id AS "UnitOfMeasurementId",
    _m.validate_average_daily_rate_maximum_value AS "ValidateAverageDailyRateMaximumValue",
    _m.validate_average_daily_rate_variance_percentage AS "ValidateAverageDailyRateVariancePercentage",
    _m.validate_readings AS "ValidateReadings",
    _m.permission_tree_id AS "_m_permission_tree_id"
FROM
    aom.meter _m
    JOIN permission_tree_ids permission_join ON _m.permission_tree_id = permission_join.permission_tree_id


Query 4

Primary Table Alias Include References Include Permissions
_m True True
Parameter Name Data Type Value
@permission_user_id Bigint 500000000000
@permission_id Bigint 20400
WITH permission_tree_ids AS
(
    SELECT DISTINCT unnest(psd.permission_tree_ids) AS permission_tree_id FROM uam.user_permission up JOIN uam.permission_set_data psd ON up.permission_set_id = psd.permission_set_id WHERE up.user_id = @permission_user_id AND up.permission_id = @permission_id
)
SELECT
    _m.code AS "Code",
    _m.is_active AS "IsActive",
    _u.user_id AS "CreatedByUserId",
    _u.code AS "CreatedByUserCode",
    _u.full_name AS "CreatedByUserFullName",
    _m.created_on AS "CreatedOn",
    _u1.user_id AS "ModifiedByUserId",
    _u1.code AS "ModifiedByUserCode",
    _u1.full_name AS "ModifiedByUserFullName",
    _m.modified_on AS "ModifiedOn",
    _m.version AS "Version",
    _pt.permission_tree_id AS "PermissionTreeId",
    _pt.code AS "PermissionTreeCode",
    _pt.description AS "PermissionTreeDescription",
    _s.site_id AS "SiteId",
    _s.code AS "SiteCode",
    _s.description AS "SiteDescription",
    _m.meter_id AS "Id",
    _m.automatically_update_average_daily_rate AS "AutomaticallyUpdateAverageDailyRate",
    _m.auto_reset_value AS "AutoResetValue",
    _m.average_daily_rate AS "AverageDailyRate",
    _m.average_daily_rate_calculation_quantity AS "AverageDailyRateCalculationQuantity",
    _m.average_daily_rate_calculation_unit AS "AverageDailyRateCalculationUnit",
    _m.average_daily_rate_maximum_value AS "AverageDailyRateMaximumValue",
    _m.average_daily_rate_variance_percentage AS "AverageDailyRateVariancePercentage",
    _m.cumulative_reading AS "CumulativeReading",
    _m.description AS "Description",
    _m.is_paused AS "IsPaused",
    _m.last_reading AS "LastReading",
    _m.last_read_on AS "LastReadOn",
    _m.last_reset_on AS "LastResetOn",
    _m.last_reset_reading AS "LastResetReading",
    _m.notes AS "Notes",
    _m.pmr_status AS "PmrStatus",
    _m.pmr_status_changed_on AS "PmrStatusChangedOn",
    _uom.unit_of_measurement_id AS "UnitOfMeasurementId",
    _uom.code AS "UnitOfMeasurementCode",
    _uom.description AS "UnitOfMeasurementDescription",
    _m.validate_average_daily_rate_maximum_value AS "ValidateAverageDailyRateMaximumValue",
    _m.validate_average_daily_rate_variance_percentage AS "ValidateAverageDailyRateVariancePercentage",
    _m.validate_readings AS "ValidateReadings",
    _m.permission_tree_id AS "_m_permission_tree_id",
    _u.permission_tree_id AS "_u_permission_tree_id",
    _u1.permission_tree_id AS "_u1_permission_tree_id",
    _s.permission_tree_id AS "_s_permission_tree_id",
    _uom.permission_tree_id AS "_uom_permission_tree_id"
FROM
    aom.meter _m
    JOIN permission_tree_ids permission_join ON _m.permission_tree_id = permission_join.permission_tree_id
    JOIN uam.user _u ON _m.created_by_user_id = _u.user_id
    JOIN uam.user _u1 ON _m.modified_by_user_id = _u1.user_id
    JOIN uam.permission_tree _pt ON _m.permission_tree_id = _pt.permission_tree_id
    LEFT JOIN gen.site _s ON _m.site_id = _s.site_id
    JOIN gen.unit_of_measurement _uom ON _m.unit_of_measurement_id = _uom.unit_of_measurement_id