I've been using 5000 primarily. I've been able to based on prerequisite bits firing make an hourly production tag looking something like HourlyProd[datetime.hour]

Is there anything similar in 500? I need to make hourly production counters for a 24 hour day, sectioned by shifts.
Someone had previously started it on this project, however it's rudimentary and pretty monotonous. It's as such: If time between x and x prodbit fires into a counter. It's done 10 times for the first shift. Instead of doing it 14 more times, there has to be a more direct (read as: less lines) route, right?

I feel your pain. I do most of my work in 5K but every now and then I have to do a project with a MicroLogix. As long as it is just simple control I have no issues but when it comes to data manipulation I really miss 5K.

Unfortunately RSL 500 doesn't have arrays like 5K does. So you will have to store everything in single element files (N,L,F).

How long do you need to keep the data? How many items are made in a hour? lets say you have to keep the data for a month and the data will fit into a Integer file <32767. You could potentially create a new file for each day in the month. So say N1 - N31 and in each of the N files you can have 24 elements 1 for each hour. You could then move in the data into the proper file based on the date and hour.

Hope this will help.

__________________
There is never enough money to do it right but there is always enough money to do it again.

I've been using 5000 primarily. I've been able to based on prerequisite bits firing make an hourly production tag looking something like HourlyProd[datetime.hour]

Is there anything similar in 500? I need to make hourly production counters for a 24 hour day, sectioned by shifts.
Someone had previously started it on this project, however it's rudimentary and pretty monotonous. It's as such: If time between x and x prodbit fires into a counter. It's done 10 times for the first shift. Instead of doing it 14 more times, there has to be a more direct (read as: less lines) route, right?

Thanks so much in advance.

You can use indirect addressing, just make sure all the data files exist or you may cause unintended issues. This example uses a micrologix real time clock, but if you have a SLC, you can use the clock integers, s:37 to s:42 to do the same thing.