in reply to DBI execute() args in array format (or similar) possible?

Now, I know why I am getting this error; because I am trying to call execute with the args as an array vs listing the args out manually.

No, I think you're getting this error because there is only one thing in your @args array. Your calling syntax looks correct.

By the way, it's preferable to say this:

my ($statement, $clli_ref_args, $hour_ref_args, $date_ref_args) = @_;
Or if you prefer to use multiple calls to shift, don't put the scalar variable name in list context the way you have it now.