Hi,
If you have some legal requirements regarding keeping and being able to reliably reproduce exact copies of invoices then optical archive is definitely a way to go and the pdf... is the de facto standard, I guess. If you are using different preprinted media types, automating reprinting the pdfs on right media can, however, be a challenge, because pdf is device independent and contains no information regarding print mode (simplex/duplex), the media type, input tray and the like.
I have been unable to solve the task of retrofitting this information to print jobs when reprinting pdfs from archive thus far, but I'm sure there are "print workflow" solutions out there that would handle the task (it's just that we don't want additional complexity of interfacing with yet another 3rd party solution and don't even want to consider paying extra for something as simple sounding as that). I'd advise to invest in at least archiving the information potentially needed to reprint the pdfs on right media, too...
If you are using normal REAPRIN0 for output, to add in additional output types with as little change of existing processes for users as possible, I'd suggest you look at FQEVENT R392, Print Workbench Dispatch Controls (which can be assigned in R392), and PWB Form type Collection. The Collection helps to easily work around the fact that IS-U Contract Account can be assigned just one Bill Form. It also allows to conveniently group all "output types" in one place. Even though SAP probably had other goals in mind when designing Collections (primarily sending output via E-Mail I think), I have been able to easily program around all the limitations.
Since the Note 2041251 - EASIBI: Not possible to adapt the print parameters using event R392 came out, the setup will work just as well for single printing as it did for mass printing. We even integrated triggering our E-Invoicing interface this way - via configuring appropriate dispatch controls so the invoice will be just archived and not printed, adding a new PWB Form of type Data Dispatch to collection and controlling what the collection will do (which Forms will get processed and which not, etc) in R392.
Yes, one would need to think carefully about performance implications and avoid doing time consuming stuff like calling smartform multiple times (REAPRIN0 already buffers the invoice and some of master data needed by PWB Formclass IS_U_BI_BILL so there should be no challenges on data access side). Competent programmer will be able to do layout creation once - get the output of SAP form as OTF/PDF once during Collection processing, for example, and work with that.
I like the simplicity, flexibility and extensibilityoffered and after Note 2041251 can think of nothing else in IS-U I can recommend as enthusiastically as Collections, PWB Dispatch controls and R392 during Invoice Printing. By now we cover and control all invoice output needs using just those, in "one place" so to speak - and no new processes for users, no need to retrain, etc. when we have to add in something new.
On demand recreation of Invoice output is IMO impossible challenge if you want it to look exactly the same as the original. IS-U Print Document does not hold all information needed to produce output (and not all of data needed is time dependent). Then you need to consider the form changes, program changes (including those you are unable to control, like SAP standard changes). I'd not advise it even if the client can live with, say, output being 90% the same as the original and would never use it if there is any kind of legal requirements involved. Optical archives can take care of reproducing documents and cut away all the complexity involved in trying to reproduce complex output from the data ...
cheers
Jānis