Comment by nradov

7 years ago

It's not always necessary or desirable to store all times as UTC. What you actually need is a time plus offset from UTC. Storing times as UTC is essentially just a special case of that where the offset is always 0.

Most lab data is communicated to other systems using HL7 V2.x messages. The standard does allow for including a time zone offset in all date/time fields. However, many older implementations fail to include the offset and just use local time. Obviously that's not a good idea.

>It's not always necessary or desirable to store all times as UTC. What you actually need is a time plus offset from UTC. Storing times as UTC is essentially just a special case of that where the offset is always 0.

It depends on the needs of the system. For example, a patient comes in, and has a test or takes a medication at 8am local time (12 noon UTC). Now the patient moves one timezone east, and their new Dr. looks at that test/medication record. How do you display the time of that test? 8am (when the test was taken local time), or 9am (the wall clock time in the new timezone). If you care about waiting 24 hours before the next test, the latter is what you want. If you want to know how early in the patient's morning the test was taken, you prefer the former.