# Not all Easy Chart properties trigger a property change?

**URL:** <https://forum.inductiveautomation.com/t/not-all-easy-chart-properties-trigger-a-property-change/100885>\
**Category:** Ignition\
**Tags:** ignition81, vision\
**Created:** [January 14, 2025, 7:56pm UTC](https://forum.inductiveautomation.com/t/not-all-easy-chart-properties-trigger-a-property-change/100885 "2025-01-14T19:56:46Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Justin\_Butler](https://avatars.discourse-cdn.com/v4/letter/j/ac8455/32.png) [@Justin\_Butler](https://forum.inductiveautomation.com/u/Justin_Butler)\
**Post date:** [January 14, 2025, 7:56pm UTC](https://forum.inductiveautomation.com/t/not-all-easy-chart-properties-trigger-a-property-change/100885/1 "2025-01-14T19:56:46Z")

</div>

Hoping to clarify what properties do and don't trigger a property change within the Easy Chart.

When editing the property change scripting for the chart, the event is described to "Fires whenever a _bindable_ property of the source component changes." However, I am running into an issue that the Unit Count and Unit properties don't seem to trigger any event when they are adjusted within the chart using the following inputs:  
 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/9/4/9475ea670f08d78e3570dd2fb7a9f54fe0e3ee02.png)

Both of these properties are bindable so I would expected them to trigger an event. Even the basic debugging propertyChange script below does not cause the print statements to be logged to the console.

```python
if event.propertyName == 'unitCount':
	print('Here')
	
if event.propertyName == 'unit':
	print('Here')

```

Has anyone ever successfully used these two properties to trigger a property change?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [January 14, 2025, 8:49pm UTC](https://forum.inductiveautomation.com/t/not-all-easy-chart-properties-trigger-a-property-change/100885/2 "2025-01-14T20:49:26Z")

</div>

Yeah, a lot of components have a limited set of change-generating properties, because the author has to deliberately include a `firePropertyChange()` call in the properties' setter methods.

The designer Bean for the component is supposed to mark the proper ones as bindable, but not all are done correctly.

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [January 14, 2025, 11:48pm UTC](https://forum.inductiveautomation.com/t/not-all-easy-chart-properties-trigger-a-property-change/100885/3 "2025-01-14T23:48:25Z")

</div>

> [@Justin\_Butler](#):
>
> Has anyone ever successfully used these two properties to trigger a property change?

@justinedwards.jle could probably be asked to hook into the appropriate internal listeners to watch for a value change, if you really wanted to drive something programmatically off these. The `RealtimeDateRange` component you're modifying can be accessed from a chart reference with `getRtDateRange()`, and that component has the internal combobox and spinner you'd have to hook listeners up to in order to receive events as those properties change:

```python
    PMIComboBox combo;
    PMISpinner numericTF;

```

---

<div class="post-metadata">

**Author:** ![justinedwards.jle](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/justinedwards.jle/32/37854_2.png) [@justinedwards.jle](https://forum.inductiveautomation.com/u/justinedwards.jle)\
**Post date:** [January 15, 2025, 3:26am UTC](https://forum.inductiveautomation.com/t/not-all-easy-chart-properties-trigger-a-property-change/100885/4 "2025-01-15T03:26:16Z")

</div>

I don't do it this way. I use a template window with a side panel. The side panel has a radio button for toggling between real time and historical modes, and I keep my own spinner and drop-down there. Selecting real time mode gets the real time date range and sets its parent's visibility to false, so the user never sees or directly interacts with any of it.

---

<div class="post-metadata">

**Author:** ![Justin\_Butler](https://avatars.discourse-cdn.com/v4/letter/j/ac8455/32.png) [@Justin\_Butler](https://forum.inductiveautomation.com/u/Justin_Butler)\
**Post date:** [January 16, 2025, 8:46pm UTC](https://forum.inductiveautomation.com/t/not-all-easy-chart-properties-trigger-a-property-change/100885/5 "2025-01-16T20:46:58Z")

</div>

Ok interesting, thanks for the responses. Having given it some thought - I've realized I'm probably looking at the wrong variables anyways for what I'm trying to achieve.

I'm trying to have some scripting behind the chart set the Tag History Resolution to a dynamic number (1s, 1d, 1w, etc.) based on how wide of a time range the chart is showing. But I only want the resolution number to be updated when the time range between the start and stop date changes and not every time the start or end date changes (ie like scrolling through historical data).

I originally had this linked to property changes to startDate and endDate but realized those are not updated simultaneously when sliding through historical data so the time range is always changing sizes.
