Maintaining Measuring Component Dates
There are several date/times systematically maintained on measuring components that aid in the efficient processing of initial measurement data as well as informing the periodic estimation process.
During initial measurement data finalization these dates are maintained by a series of algorithms based on the type of measuring component and type of initial measurement.
Important Measuring Component Dates
Each initial measurement is evaluated to determine if the following dates should be updated on the measuring component.
Last Contiguous Read Date/Time
This represents the last point where an uninterrupted series of measurements were received for the measuring component. Periodic estimation uses this field to generate estimates for any periods of missing measurements for the measuring component.
For interval measuring components this date will be updated whenever the current value falls between the initial measurement's From and To Date/Time fields (inclusive) in one of two ways:
-
If there are no measurements subsequent to the initial measurement being processed it will be set to the initial measurement To Date/Time
-
If there are measurements subsequent to the initial measurement and the initial measurement has filled a gap of missing measurements then it will be set to the Last Contiguous Measurement Date/Time that is subsequent to the initial measurement To Date/Time
For scalar measuring components there is an added check to ensure that the initial measurement’s To Date/Time is exactly one expected measurement after the current last contiguous read date/time
Adjusted Latest Measurement Date/Time
For scalar meters this date is derived by assigning the last contiguous read date/time to an expected measurement date/time based on the measuring component type configuration for Expected Hours Between Measurements, First Daily Measurement Time, Early Threshold and Late Threshold.
For example, if a measurement is expected every 6 hours and the adjusted last contiguous read date/time on the measuring component is January 1st at 12:00:00AM, then the initial measurement's To Date/Time must align to the expected measurement date/time of January 1st at 06:00:00AM so the latest measurement date/time can be updated.
The expected measurement date/times are calculated using the expected hours between measurements and the first daily measurement time elements from the measuring component type. For example, if the expected hours between measurements was 6 hours and the first daily measurement date/time was 12:00:00AM, then the expected measurement date/times for each day would be:
-
12:00:00AM
-
06:00:00AM
-
12:00:00PM
-
06:00:00PM
To account for scalar reads that are not received for an exact date/time, the Early Threshold and Late Threshold elements of the measuring component type are used to align a given measurement to one of the expected measurement date/times.
Most Recent Read Date/Time
This represents the maximum measurement date/time that exists for the measuring component. This field is leveraged throughout the system to identify when certain logic must be executed. For example, if there are no measurements in the future to what is being processed then no logic dealing with future measurements need be executed.
It will be updated to the initial measurement's To Date/Time whenever the initial measurement's To Date/Time is greater than the current most recent read date/time.
Most Recent Non Estimated Read Date/Time
Represents the latest measurement processed that was not estimated. This is leveraged by the outage storm mode module.
It will be updated to the latest non-estimated measurement date/time in the initial measurement that is more recent than the current most recent non-estimated read date/time.
Identifying Data for Historical Extracts
Another important role for each of the algorithms that maintains measuring component dates is to identify whether the data being processed needs to be re-extracted for one of the existing measurement extract methods:
-
Specialized Measurement Extract
-
Specialized IMD Header Extract
-
DataConnect
-
Configurable Consumption Extract
If the data should be re-extracted a record will be created in the general processing table to be extracted at a later point.
It is important to note that by default these checks are turned off for performance reasons. If you would like to capture historical changes for any of these extracts it will need to be turned on for each individual algorithm.
Date Maintenance Algorithms
The following algorithms are used to maintain measuring component dates.
D1-UPD-DTMC - Update Latest Measurement Date/Time on MC with Consumption Sync
This algorithm applies to initial load and manual initial measurements for interval measuring components.
This algorithm maintains important summary level dates on the Measuring Component (MC) as well as initiating the Consumption Synchronization process.
The following dates are maintained:
-
Last Contiguous Read Date/Time
-
Most Recent Read Date/Time
-
Most Recent Non Estimated Read Date/Time
If the initial measurement's device configuration is configured for related measuring component consumption synchronization this algorithm can optionally identify whether there are any consumption synchronization eligible measurements on the related measuring component (eligible measurements are defined as those whose condition falls between the bottom and top ranges for consumption sync or the additional condition code for consumption sync). When the initiating initial measurement is not "back dated" or the synchronization period does not extend past the initial measurement's date range the appropriate interval or scalar consumption sync activity will be selected based on the measuring component type of the related measuring component. When the initiating initial measurement is "back dated" and there is a contiguous period of synchronization eligible measurements that extends past the date range of the initial measurement the Gap Consumption Sync Activity will be created.
Lastly this algorithm can be configured to maintain outage related activities for the device. Since the receipt of initial load data for a device indicates it is now powered on and communicating if there are any outstanding outage or estimation suppression activities (initiated via widespread outage) they can be ended as of the from date/time of the initial measurement.
D1-UPD-DTMCF - Update Latest Date/Time on MC from a Future Measurement
This algorithm applies to estimation initial measurements for interval measuring components.
This algorithm maintains important summary level dates on the Measuring Component (MC) as well as initiating the Consumption Synchronization process.
The following dates are maintained:
-
Last Contiguous Read Date/Time
-
Most Recent Read Date/Time
-
Most Recent Non Estimated Read Date/Time
As this algorithm is used on estimation initial measurement data it is not common that it will update the most recent non-estimated read date/time. However, there are circumstances where high quality estimations based on a check channel might be given a measurement quality in the regular range. In our documentation we sometimes refer to these as prorated measurements.
It is also important to note that this algorithm will not initiate consumption sync processing.
D1-UDTSCMCRE - Update Latest Measurement Date/Time on Scalar MC with Consumption Sync
This algorithm applies to initial load and manual initial measurements for scalar measuring components.
This algorithm maintains important summary level dates on the Measuring Component (MC) as well as initiating the Consumption Synchronization process.
The following dates are maintained:
-
Last Contiguous Read Date/Time
-
Adjusted Last Contiguous Read Date/Time
-
Most Recent Read Date/Time
-
Most Recent Non Estimated Read Date/Time
If the initial measurement's device configuration is configured for related measuring component consumption synchronization this algorithm can optionally identify whether there are any consumption synchronization eligible measurements on the related measuring component (eligible measurements are defined as those whose condition falls between the bottom and top ranges for consumption synchronization or the additional condition code for consumption synchronization). When the initiating initial measurement is not "back dated" or the synchronization period does not extend past the initial measurement's date range the appropriate interval or scalar consumption synchronization activity will be selected based on the measuring component type of the related measuring component. When the initiating initial measurement is "back dated" and there is a contiguous period of synchronization eligible measurements that extends past the date range of the initial measurement the Gap Consumption Sync Activity will be created.
Lastly this algorithm can be configured to maintain outage related activities for the device. Since the receipt of initial load data for a device indicates it is now powered on and communicating if there are any outstanding outage or estimation suppression activities (initiated via widespread outage) they can be ended as of the from date/time of the initial measurement.
D1-UPDDTSCMC - Update Latest Date/Time on Scalar Measuring Component
This algorithm applies to estimation initial measurements for scalar measuring components.
This algorithm maintains important summary level dates on the Measuring Component (MC) as well as initiating the Consumption Synchronization process.
The following dates are maintained:
-
Last Contiguous Read Date/Time
-
Adjusted Last Contiguous Read Date/Time
-
Most Recent Read Date/Time
-
Most Recent Non Estimated Read Date/Time
As this algorithm is used on estimation initial measurement data it is not common that it will update the Most Recent Non Estimated Read Date/Time. However, there are circumstances where high quality estimations based on a check channel might be given a measurement quality in the regular range. We sometimes refer to these as prorated measurements.
It is also important to note that this algorithm will not initiate consumption synchronization processing.