I need to send a Smart Form output via e-mail. The Smart Form is being called and executed by a program that we will consider "unmodifiable." How can I do this?
You didn't specify the nature of the form or print program, but I suspect we are discussing application-driven output.
In any case, I suggest you take a close look at the print program. If it is a standard one provided by SAP, it is quite possible that hooks already exist to send your Smart Form output via e-mail as a PDF attachment.
See for example the call to function 'LF_FM_NAME' in standard print program RLB_INVOICE. Notice the preceding call to function WFMC_PREPARE_SMART_FORM? This function does the heavy lifting for you; here, no additional work is needed in either the form or the print program. To generate e-mail output, the remaining work essentially is:
1) SD output configuration (e.g. mapping the relevant billing output type to transmission medium 5 - 'External send' - via the IMG)
2) SAPconnect configuration (txn SCOT -- there are several notes in the SAP Service Marketplace discussing this component, such as 152474 and 312690).
3) Setting up the sender and recipient e-mail addresses (e.g. sender = txn SU3 data; recipient = bill-to party's txn XD02 data).
Hopefully, the print program at issue has the hooks you need. If not, you may need to explore the possibility of (a) changing it, (b) cloning it and changing the cloned version, or (c) manipulating the values directly within the form itself via field-symbols (which may or may not work). Whichever approach you take, I wish you luck.