I guess it depends on what you are doing with the bits. I've been using Ignition a lot lately, which is super simple to do this, it's a little bit harder to do in AHMI, so I think my mind wasn't thinking platform specific. But, an example, even in AHMI, if I was to create a graphic that showed the PLC card IO status, I would read the word and then break apart the bits for each channel. I do that in alarms as well. It's more efficient to read 10 words, then 10*16 or 10*32 BOOLs. But, do what ever is easiest and makes more sense to you.
I get that.. I put all alarm bits in a bit file ( usually B13) and monitor the value of the entire file, if all the words add up to more than "ZERO" i set an alarm output and read which bit is set to send to the HMI to display the appropriate alarm message. For a reset- I use a fll to fill the file with zeros, if an alarm is still present it will write a one back to the file for the alarm. I am sure there are other ways and maybe better to do that. There are much better PLC programmers than me out there but I manage to get the job done.
For some things I want to read the actual status of the physical inputs. After re-checking the system. I am not having issues reading physical inputs on the local chassis, Only the remote.