Contents SAS/IntrNet 9.1: SAS Design-Time Controls Previous Next

How SAS Design-Time Controls Work with SAS/IntrNet Software

You do not have to have SAS installed on your client machine in order to use SAS Design-Time Controls. However, you must install and configure a SAS/IntrNet Application Server on a machine on your network. You must also have a Web server installed on a machine on your network. The Web server must be accessible from both the client machine on which the Web pages are created and from any Web browser machine on which the pages are viewed. The following diagram illustrates the required infrastructure.

SAS Design-Time Control infrastructure

The client, Web server, and SAS server machines can be three different machines, two different machines, or a single machine. Often, the client machine (with the HTML editor) also functions as a Web browser machine.

When you insert a SAS Design-Time Control into a Web page, it reads the Windows registry and loads your default SAS server connection information. However, the control does not connect to the SAS server at this time. When you invoke the properties dialog for the control and make selections on the various tabs of the dialog, the control makes connections to the SAS server. The control queries the server for information such as a list of available data sets or a list of variables and presents this information to you in the properties dialog.

A series of events occur when you save the Design-Time Control and when the Web page is browsed. The specific events that occur depend upon the current processing mode of the control. The processing mode can be set so that the control generates static content or dynamic content.

If the control is set to generate static content, the events occur in the following manner.

When the control is saved When the Web page is browsed
  • Control property settings are serialized into the Web page as an HTML comment.

  • Control connects to the SAS server and sends the current property settings.

  • SAS server runs a program that is stored on the server using the current control settings as input.

  • SAS server returns static content (usually HTML).

  • Control deposits content into the Web page.

  • Static content is returned to the browser each time the page is viewed. No SAS processing is performed at this point.

If the control is set to generate dynamic content, then you have a choice of generating Active Server Page (ASP) code or JavaServer Page (JSP) code. In either case, the events occur in the following manner.

When the control is saved When the Web page is browsed
  • Control property settings are serialized into the Web page as an HTML comment.

  • Control generates a URL string containing all the property settings.

  • Control wraps the URL string in ASP or JSP code and deposits the code into the Web page. No SAS processing is performed at this point.

  • ASP or JSP code connects to SAS server and sends the current property settings.

  • SAS server runs a program that is stored on the server using the current control settings as input.

  • SAS server returns content (usually HTML).

  • ASP or JSP code deposits content into the Web page.

In both the static and dynamic cases, the resulting page should initially look identical. However, over time, the dynamic output might change if the underlying data changes.

In the static case, the SAS processing is performed once when you construct the page. The advantage of processing just once is low cost. The disadvantage is that you do not get to see the latest data values if your data source changes.

In the dynamic case, the SAS processing is performed for each user that visits the page. Users can see up-to-the-minute data values, an important advantage when the data sources are volatile. However, frequent processing can become prohibitive if the processing takes a long time or if the page gets a lot of visits. We recommend that you consider the pros and cons of dynamic publishing before deploying your Web pages.

Sometimes, you might find it necessary to blend static and dynamic publishing. For more information about how to get the best of both techniques, see Scheduled Publishing.


Contents SAS/IntrNet 9.1: SAS Design-Time Controls Previous Next