Maybe I'm missing something but can't you just create a process that you call everytime you want to view or print and have a rule that increases a number attribute before you view or printed the doc?
Note: Since you don't have much control over the printing once the doc is displayed in the browser I'm not sure your going to be able to count the number of times it prints. (Its a local browser function, unless your using the PRINT feature to print to a printer on the Aware server). But increasing a counter before its viewed shouldn't be an issue.