Ignore propertyChange script on load

I was going to suggest an expression binding on your entryHours template property something like this:

({Root Container.entryEnd.dateInMillis}-{Root Container.entryStart.dateInMillis})/(1000.0*60.0*60.0)

But after reading more closely, I understand you do not want the value here to always reflect the difference between start and end time like it would with the expression binding. Instead, it should maintain the value it receives via the custom property until a user changes the start or end time. Would adding a condition to your if statement something like this accomplish what you’re looking for?

#If the time was changed, save the differennce between the two to the hour input
if (event.propertyName == 'dateValue' and event.newValue != event.oldValue):

Depending on what’s available in your Ignition version (not sure if this was in older versions), you could drop a couple lines from your script, if desired, by using the dateInMillis property instead of dateValue.On the other hand, results using dateInMillis may not always be what you expect:
http://forum.inductiveautomation.com/t/spinner-control-issue/7512