Executing SAS Stored Processes from the SAS Information Delivery Portal

What Is a Stored Process?

A SAS Stored Process is a specialized SAS program that is stored in a central location, and which can be executed from the SAS Information Delivery Portal at your request. Stored processes give portal users the ability to run SAS reports dynamically in order to obtain the most current available data. The benefits of stored processes include centralized code management, increased security, and ad hoc reporting capabilities.
Developers in your organization create stored processes for portal users and assign permissions for running the stored processes. For details about creating stored processes, see the SAS 9.3 Stored Processes: Developer’s Guide.

How Stored Processes Are Executed from the SAS Information Delivery Portal

The SAS Stored Process Web application is required in order to run stored processes from the SAS Information Delivery Portal. The SAS Stored Process Web application was deployed with the SAS Web Infrastructure Platform when you installed and configured the portal.
All portal users who have the appropriate permissions can run a stored process by clicking its icon or link in the portal. Users might first have to search for a stored process before they can run it. As with other portal objects, users can bookmark a stored process, add a stored process to a collection portlet, and publish it to a Package. If users add a Stored Process Navigator portlet to their portal views, they can explore the stored processes that have been defined in metadata (if they have the appropriate permissions). After running the stored process, users can bookmark the results or e-mail the results to other users.
When a user runs a stored process, by default, an Execution Options form is displayed, enabling the user to filter the output contents and to specify particular options for running the stored process. (Developers can choose not to display this form for stored processes that they create. Developers can also create their own custom input form.)
Stored processes fall into two broad categories that affect how the stored process is executed:
  • streaming output: If a stored process was defined to stream output to the viewer, the results of the stored process are displayed in the portal immediately after execution.
  • non-streaming output: If a stored process does not stream output to the viewer, the results are packaged for later viewing. Users have several options for viewing the stored process output.
The next section provides more information about non-streaming stored processes.

Characteristics of Non-Streaming Stored Processes

Depending on how the developer defined the stored process, a non-streaming stored process can produce transient package output, permanent package output, or no output (this latter type serves no useful purpose for users, but might provide some utility for administration). For descriptions of these output types, see the SAS 9.3 Stored Processes: Developer's Guide.
The SAS Information Delivery portal provides several options for locating and viewing the results of non-streaming stored processes. To accommodate the package format of non-streaming stored processes, the portal depends on additional software that is not required for streaming stored processes. The following list summarizes the dependencies, options, and behaviors of non-streaming stored processes:
  • Users can run the stored process in background mode. Background processing enables users to continue working in the portal while the stored process executes. After a stored process finishes running in the background, the results of the stored process are added to the WebDAV and can be viewed later in the Result Navigator portlet by the user. (Users might need to add the Results Navigator portlet to their portal views before they can see the package.)
    Note: Background processing is one of the default options that is available in the Execution Options input form. Your developers can create their own input form, however. The developer is responsible for prompting or setting execution options such as background processing.
  • A stored process that runs in the background generates an alert upon successful execution. The alert is displayed in the Stored Process Alerts portlet. From the Stored Process Alerts portlet, users can track, view, and remove the stored process. For more information, see About Stored Process Alerts.
  • Depending on how the stored process was created, permanent package output can be published to the SAS Content Server's WebDAV repository.
  • If the stored process package is a permanent package that is associated with a SAS publication channel, the package output is added automatically to the publication channel. (Users must add the channel to their portal views before they can see the package.) The SAS Information Delivery Portal must be installed in order to access publication channels, or to subscribe to the channels with portal as the delivery transport.

Main Tasks for Administering Stored Processes

The developer who creates a stored process designates the server on which the stored process runs, registers the stored process in metadata, and assigns access permissions for the stored process. Check with the developer to obtain information about the stored process as appropriate. For example, if you plan to share the stored process with portal users, you will want to know which group to share it with. You might also want to know the purpose of the stored process and what type of output it produces.
Here are the main tasks for administering stored processes. Perform the tasks that are appropriate for your environment:
  • Share a page that contains a stored process: You can log on to the SAS Information Delivery portal, add the stored process to a collection portlet, and share that page with portal users. You might need to search for the stored process before it becomes available to you.
    For instructions about sharing a page or adding items to a portlet, see the online Help that is provided with the portal.
    Note: All portal users can add stored processes to collection portlets in their personal portal views.
  • Add a publication channel to the portal: If the stored process publishes a package to a SAS publication channel, you can create the SAS publication channel (if it has not already been created). You can also define subscriber profiles and set up subscriptions for portal users. For instructions about how to create subscriber profiles and set up subscriptions, see the online Help for the portal.
    After the publication channel is created, users can log on to the portal and add the channel to their portal views. When users run the stored process, the results are added automatically to the channel. Note that the Publication Channel Subscriptions portlet is refreshed only when the Refresh button is clicked in the portlet, or when you navigate to the page that contains the portlet. The group content administrators can add the channel to a page, and share that page with their respective groups.
  • Ensure access to the SAS Content Server WebDAV repository: If the stored process publishes a package to a SAS Content Server WebDAV repository, make sure you have set up the appropriate SAS users and groups to enable users to access the package. For details, see Planning for Portal Users and Groups .
  • Provide a Stored Process Alerts portlet to portal users: You might want to provide a Stored Process Alerts portlet to some or all or to all users. The Stored Process Alerts portlet displays an alert for any background stored process when the stored process is executed. By adding the Results Navigator portlet to the portal, users can access the results for the Stored Process directly. To provide a Stored Process Alerts portlet to a group of users, create a page template and define a Stored Process Alerts portlet in the page template. For details about creating a page template, see Adding, Editing, and Removing Page Templates. You can also add stored processes to this same page template by defining a collection portlet in the page template, and defining the stored processes as collection data for that portlet. Or, you can add a Stored Process Navigator portlet to the page template.
    Note: All portal users can add Stored Process Alerts, collection, and Stored Process Navigator portlets to their portal views.
  • Share stored process results: You can log on to the portal, run a stored process, and share the results with others by publishing or e-mailing the resultant package. (All portal users who have access permission to the stored process can perform this task.)
Example stored processes are installed automatically if you install the portal. The samples are delivered in the Stored Process Web application through the sas.storedprocess9.3.ear file. Samples are available in the SAS-installation-directory\SASWebInfrastructurePlatform\9.3\Static\wars\sas.storedprocess\input\Products\SAS_Intelligence_Platform\Samples directory. You can log on to the portal and search for SAS stored processes.
For more information about stored process metadata, see the online Help in SAS Management Console. See also the SAS 9.3 Stored Processes: Developer’s Guide.

About Stored Process Alerts

Stored process alerts are used to notify you that certain types of SAS stored processes have finished executing and that the results are ready to view. Stored process alerts are displayed in the Stored Process Alerts portlet on a portal page. All users in your organization with access to the portal can add the Stored Process Alerts portlet to their personal portal views. You can also provide a Stored Process Alerts portlet to a group of users by adding the portlet to a page template that you share with the respective group.
Stored processes that run in the background generate alerts upon execution. After you run a background stored process, you can click the alert message in your Stored Process Alerts portlet to see the results of the stored process. (If the stored process was defined with no output, the alert is not linked.) From the Stored Process Alerts portlet, you can also remove the results of the stored process by deleting the respective alert.
Stored processes that generate alerts require that WebDAV or personal repositories be available.
Some SAS products can generate additional types of alert notifications. The alerts for those products are described in their product documentation.
For instructions about adding a Stored Process Alerts portlet or managing alerts, see the online Help that is provided with the portal.