Hi:
So many choices for ways to do what you want. The answer really depends on the software that is available to you.
In Base SAS, you could develop a SAS Macro program with parameters and the user would only have to change the parameters to run and submit the program. (This would fall more into the category of the user supplying data input, in the form of a program call...something like:
[pre]
User 1:
%runregion(region=Canada)
User2:
%runregion(region=Asia)
[/pre]
...where the %RUNREGION Macro program was pre-defined and available for either user to run with different parameters.) An example of a SAS Macro application can be found here:
http://www.lexjansen.com/pharmasug/2009/po/po05.pdf
http://www.lexjansen.com/pharmasug/2006/applicationsdevelopment/ad05.pdf
http://www2.sas.com/proceedings/sugi27/p021-27.pdf
Or, with SAS Enterprise Guide, you could set up a project to produce the report (and do any needed data selection/data manipulation) and define parameters that were needed to run the report. When the user ran the report, they would be prompted for the value. I believe you can set up the parameter choices and how they will be displayed when you define the parameters. There are some nice screen shots of such an applcation in EG in these paper:
http://support.sas.com/resources/papers/sgf2008/eguide.pdf
http://analytics.ncsu.edu/sesug/2006/AP05_06.PDF (custom tasks in EG)
http://www2.sas.com/proceedings/sugi29/012-29.pdf (customs tasks if you have EG, and the SAS Add-in for Microsoft Office)
If you had SAS/AF (Application Facility), you could develop a SAS-based menuing system to prompt and produce a report. You can see some sample screens in this paper:
http://www2.sas.com/proceedings/sugi26/p217-26.pdf
Another approach is one where you develop your own prompting "front end" and call SAS in batch or client mode to satisfy the report request. This might involve using SAS on a server or using SAS Integration Technologies or using SAS Data Providers. Here are some papers that discuss some examples:
http://analytics.ncsu.edu/sesug/2003/SE02-Eberhardt.pdf
http://www.lexjansen.com/wuss/2004/sas_solutions/c_ss_using_sas_iom_with_a_ja.pdf
http://support.sas.com/kb/26/145.html
http://support.sas.com/kb/25/633.html
http://support.sas.com/documentation/tools/oledb/gs_about_prov.htm
http://support.sas.com/documentation/tools/oledb/
http://support.sas.com/documentation/cdl/en/itechwcdg/61500/PDF/default/itechwcdg.pdf
http://www2.sas.com/proceedings/sugi29/030-29.pdf
If you have SAS/IntrNet, you can either use htmSQL and the Application Dispatcher to create HTML forms in order to prompt the user for report parameters or you could develop your own HTML front end and just call the Application Dispatcher program. Some discussion of SAS/IntrNet capabilities is contained in these papers:
http://www2.sas.com/proceedings/sugi23/Internet/p154.pdf
http://www.ws-unternehmensberatung.com/Seugi1998/SEUGI98-vortrag.html (a comparison of SAS/AF versus SAS/IntrNet)
http://www2.sas.com/proceedings/sugi23/Internet/p156.pdf (SAS/IntrNet & Java)http://www2.sas.com/proceedings/sugi24/Internet/p181-24.pdf
Last, but certainly not least, with the SAS Enterprise Intelligence Platform and its suite of client applications, you can develop stored processes that run directly in applications like Word, Excel, PowerPoint, SAS Enterprise Guide, SAS Web Report Studio or a web-based Information Delivery Portal (which is where you'd implement custom Java server pages). Here's some information about using the Enterprise Intelligence Platform:
http://www.sas.com/resources/factsheet/sas-integration-technologies-factsheet.pdf
http://www.sas.com/technologies/bi/index.html
http://www.sas.com/technologies/bi/entbiserver/index.html
You can also use webAF and the JavaBeans included in that software, with certain other web tier configurations and SAS servers, to design your own front end applcation as described here:
http://www.sas.com/technologies/bi/appdev/appdev/webaf.html
At any rate, without knowing what SAS software you have available to use, it's very hard to point you to starting information. The simple answer to your question is ... yes, it's possible to give a user a report based on choices they make through some kind of combo-box or data input. Your choices run from the very simple code-based methods to much more complex methods. Perhaps your best bet is to work with your SAS Sales Representative or SAS Consulting for a design based on what software and programming expertise you or the customer has available.
cynthia