Sunteți pe pagina 1din 304

SAS Digital Marketing 5.

Administrators Guide

The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2007. SAS Digital Marketing 5.1: Administrators Guide. Cary, NC: SAS Institute Inc.

SAS Digital Marketing 5.1: Administrators Guide


Copyright 2007, SAS Institute Inc., Cary, NC, USA All rights reserved. Produced in the United States of America. For a hard-copy book: No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, or otherwise, without the prior written permission of the publisher, SAS Institute Inc. For a Web download or e-book: Your use of this publication shall be governed by the terms established by the vendor at the time you acquire this publication. U.S. Government Restricted Rights Notice: Use, duplication, or disclosure of this software and related documentation by the U.S. government is subject to the Agreement with SAS Institute and the restrictions set forth in FAR 52.227-19, Commercial Computer Software-Restricted Rights (June 1987). SAS Institute Inc., SAS Campus Drive, Cary, North Carolina 27513. 1st printing, December 2007 SAS Publishing provides a complete selection of books and electronic products to help customers use SAS software to its fullest potential. For more information about our e-books, e-learning products, CDs, and hard-copy books, visit the SAS Publishing Web site at support.sas.com/pubs or call 1-800-727-3228. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. indicates USA registration. Other brand and product names are registered trademarks or trademarks of their respective companies.

Contents
I Overview 1

Whats New in SAS Digital Marketing 5.1


Chapter 1. Introduction to SAS Digital Marketing . . . . . . . . . . . . . .

3
7

II Installation
Chapter 2. Installing SAS Digital Marketing . . . . . . . . . . . . . . . .

19
21

III Conguration
Chapter 3. Chapter 4. Chapter 5. Conguring SAS Digital Marketing . . . . . . . . . . . . . . .

35
37 97 133

Customizing the Server . . . . . . . . . . . . . . . . . . . . Modifying Advanced Server Properties . . . . . . . . . . . . . .

IV Maintenance
Chapter 6. Chapter 7. Chapter 8. Chapter 9. Managing Advanced Broadcast Tools . . . . . . . . . . . . . . . Managing SAS Jobs . . . . . . . . . . . . . . . . . . . . . Managing JDBC Connections . . . . . . . . . . . . . . . . .

155
157 189 221 229 255

Managing Broadcast Tracking and Replies . . . . . . . . . . . . .

Chapter 10. Optimizing SAS Digital Marketing . . . . . . . . . . . . . . . .

V Appendixes
Appendix A. Using JMS With Broadcasts . . . . . . . . . . . . . . . . .

267
269

Glossary

283

Index

287

Credits

Documentation
Writing Lynne Bresler, Marie Dexter, Jennifer Jeffreys-Chen, Michael Monaco, and Jenna Moore Carolyn Sutton and Joan Knight Tim Arnold, Monica McClain, and Stacy Suggs

Editing Production Support and Cover Design

Software
Development Jennifer Jeffreys-Chen, Michael Monaco, and Susanna Wallenberger Jennifer Jeffreys-Chen and Merri Jensen

Installation and Deployment Testing

Lynne Bresler, Jenna Moore, Keri Rehm, and Shannon Smith

Support
Technical Product Management Steve Nash Michael Monaco

About SAS Digital Marketing

Overview of SAS Digital Marketing


SAS Digital Marketing provides a suite of tools to plan, create, test, execute, and track your electronic communication campaigns. With this comprehensive solution, you can deliver large-scale e-mail and wireless text message campaigns in-house and seamlessly coordinate your campaigns with other channels and marketing programs. You can easily customize your electronic communications at the individual level and deliver effective messages to the customers that are more likely to respond. With SAS Digital Marketing, you can achieve higher response rates and higher return on your marketing investment.

Software Requirements
SAS Digital Marketing uses the following software: a POP3 or IMAP e-mail account that processes returned e-mail (bounces) and replies one of the following platforms or operating environments: Windows Server 2003 Family, Windows XP, or Windows 2000 Family Solaris 8, Solaris 9, or Solaris 64 HPUX-IPF or HPUX-PA-RISC AIX Linux JRE 1.4.1 or 1.4.2 for the server and JRE 1.4.1 for the client an SMTP e-mail server for e-mail transmissions a JDBC provider such as a SAS/SHARE server or SAS Workspace Server Internet Explorer 6, Internet Explorer 7, or Mozilla Firefox Foundation SAS 9.1.3 SP4 on any supported platform a Web application server such as Apache Tomcat, BEA WebLogic, or IBM WebSphere an e-mail gateway to send SMS messages an SMS Application Service Provider, such as Clickatell Mobile Messaging (www.clickatell.com ) and PSWinCom SMS gateway (www.pswin.com), or an SMTPSMS gateway that sends SMS, MMS, and WAP Push messages to wireless devices N OTE : IMAP support for JavaMail API is experimental in this version of SAS Digital Marketing.

ii

Accessibility Features
SAS Digital Marketing includes the following accessibility and compatibility features that improve usability of the product for users with disabilities. These features are related to accessibility standards for electronic information technology adopted by the U.S. Government under Section 508 of the U.S. Rehabilitation Act of 1973, as amended. If you have questions or concerns about the accessibility of SAS products, send e-mail to accessibility@sas.com.

Standard Keyboard Shortcuts


SAS Digital Marketing adheres to accessibility standards for the Windows platform. SAS Digital Marketing can be navigated by using the keyboard. The following table includes some guidelines: Task Move forward through controls Move backward through controls Display drop-down list contents Display menus that have focus Activate buttons and menu selections that have focus Keyboard Control TAB SHIFT+TAB ALT+down arrow down arrow ENTER

You can also access menu items by using the keyboard shortcuts listed in the drop-down menus or by clicking ALT + the underlined letter.

iii

Part I

Overview

Whats New in SAS Digital Marketing 5.1

Overview
SAS Digital Marketing 5.1 has the following changes and enhancements: improved conguration in SAS Digital Marketing enhanced security features enhanced digital data repository enhanced support for broadcast denitions improved integration with SAS Customer Intelligence software enhanced reporting enhancements to the Web Studio interface documentation enhancements

Improved Conguration
Conguration of SAS Digital Marketing has been improved. You can now create the WAR les for tracking deployment and SAS Web Studio deployment on the middle tier from the SAS Digital Marketing Conguration wizard. No additional steps are required.

Enhanced Security Features


This version of SAS Digital Marketing provides the following security enhancements: Different groups of users can have access to different resources in the SAS Digital Marketing system. Fewer re wall ports are required to be opened. Only approved content can be published to a digital channel.

4 !

Enhanced Digital Data Repository


You can organize images, audio les, video, and links into libraries. The ability to share these les makes it easier for you to browse and retrieve content for use in your campaigns. You can use Web resources to create multichannel broadcasts.

Enhanced Support for Broadcast Denitions

Support for RSS Feeds


You can now create multichannel broadcasts to support really simple syndication (RSS) feeds. RSS feeds are interactive digital channels that are growing quickly in popularity. SAS Digital Marketing enables you to dene, deploy, and track your RSS feeds.

Multichannel Broadcasts
You are now able to create a single broadcast that can be used across different digital channels. These channels include distribution via Web sites, RSS feeds, mobile devices, or e-mail. SAS Digital Marketing enables you to dene, test, and execute a multichannel campaign by using a broadcast wizard.

Improved E-mail Delivery


SAS Digital Marketing provides domain throttling, which limits the rate at which e-mails are sent to a specic domain, such as yahoo.com. This ensures that your e-mails are not agged as junk e-mail and ltered from recipients accounts.

Improved Integration with SAS Customer Intelligence


Integration between SAS Customer Intelligence and SAS Digital Marketing has been streamlined in the following ways:

Enhanced Reporting ! 5

You can view export denitions from SAS Marketing Automation in SAS Digital Marketing. You can view broadcast denitions from SAS Digital Marketing in SAS Marketing Automation. You can link multiple cells to a single communication, even when different treatments are used to personalize content. SAS Digital Marketing and SAS Customer Intelligence share contact and response history tables. SAS Enterprise Guide now is packaged with SAS Digital Marketing.

Enhanced Reporting
SAS Digital Marketing and SAS Customer Intelligence share contact and response history tables, which enables common reporting between these applications.

Enhancements to the SAS Digital Marketing Web Studio User Interface


SAS Digital Marketing Web Studio provides additional functionality. In the SAS Digital Marketing Web Studio interface, you can perform the following tasks: create, manage, and monitor e-mail broadcasts. To edit the HTML content, your site administrator can download the TinyMCE Web-based Javascript editor, which is now available from the SAS Digital Marketing Server Conguration wizard. delete, rename, move, duplicate, and summarize SMS and ASP broadcasts. SMS and ASP broadcasts are fully supported. change your password. If the basic security mode is used, then your default password is assigned by SAS Digital Marketing when the software is installed or congured by your software administrator. You can now change your password in SAS Digital Marketing Web Studio. After you change your password on the server, you must update your connection information on your client. run new reports. The Visual Reports are now supported for text content in a broadcast. You can also run reports for RSS feeds and new multichannel broadcasts.

6 !

Documentation Enhancements
In addition to the existing SAS Digital Marketing references, a separate book, the SAS Digital Marketing Web Studio: Users Guide, has been created. This book contains information for all users of Web browser clients.

Chapter 1

Introduction to SAS Digital Marketing


Contents
Overview of the Software . . . . . . . . . . . . . Architecture of SAS Digital Marketing . . . . . . About the Multi-tiered Architecture . . . . Broadcast Delivery and Response Tracking Life Cycle of the Broadcast . . . . . . . . . . . . Life Cycle of E-mail Broadcasts . . . . . . Life Cycle of RSS Feeds . . . . . . . . . . Life Cycle of SMS Broadcasts . . . . . . . Life Cycle of ASP Broadcasts . . . . . . . Customizing the Broadcasts . . . . . . . . . . . Using This Documentation . . . . . . . . . . . . Purpose of This Documentation . . . . . . Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 8 8 10 11 11 11 14 15 16 16 16 17

Overview of the Software


SAS Digital Marketing is a client and server application that quickly delivers e-mail, RSS feeds, and Simple Message Service (SMS) broadcasts to your customers within single channel or multichannel marketing campaigns. You can easily customize broadcast content at the individual level and deliver relevant, personalized messages to customers who are more likely to respond. Comprehensive response tracking enables you to determine the effectiveness of your broadcasts across a variety of marketing channels. Specically, SAS Digital Marketing offers the following features: an intuitive graphical interface to create customized e-mail, SMS, and Application Service Provider (ASP) broadcasts as well as to dene and manage RSS feeds. the ability to push broadcast content to the Web so that message content is shared across your enterprise scalability to send millions of messages each day or several thousand messages a week data access to use virtually any database

8 ! Chapter 1: Introduction to SAS Digital Marketing

integration with SAS Customer Intelligence software and predictive analytics to identify the best message for each customer or target segment For e-mail and multichannel broadcasts, SAS Digital Marketing also supports the following: opt-out processing that conditionally aborts the messages to the e-mail addresses that are contained in an opt-out table a global duplication policy that lters out all duplicate e-mail addresses when you send a broadcast

Architecture of SAS Digital Marketing

About the Multi-tiered Architecture


SAS Digital Marketing is designed to efciently process large amounts of data and provide timely feedback on broadcast response. A multi-tier architecture enables SAS Digital Marketing to distribute functionality across computer resources. A tier represents a conceptual category of software components that perform similar computing tasks and that require similar resources. Different tiers do not always represent separate computers or groups of computers. You scale the architecture to meet your workload demand. For a large company, the architecture might comprise many machines that run different operating systems. For prototyping, demonstrations, or very small enterprises, you can install all of the tiers on a single machine. The architecture of SAS Digital Marketing consists of the following tiers: Client tier provides desktop access to single channel or multichannel broadcasts, customer intelligence data, and processing functionality. The Web browser interface provides functionality to manage broadcasts and generate reports on broadcast response. More comprehensive functionality is available in an intuitive graphical user interface on individual desktop computers. Middle tier provides access to functionality in the Web browser interface. This tier uses Java servlets that are deployed on a Web application server to track broadcast response, create reports, and distribute content. This tier also passes processing and analysis requests to the server tier. Server tier uses SAS Digital Marketing, SAS, and e-mail servers to process the workload and manage the data sources that contain your customer intelligence. Several types of servers are available to handle the workload. The software can distribute the processing loads to a network of servers so that large scale requests by multiple clients are handled quickly. This tier also stores the data source tables in relational database management systems or SAS tables.

About the Multi-tiered Architecture ! 9

Figure 1.1 summarizes the architecture of SAS Digital Marketing.


Figure 1.1 SAS Digital Marketing Multi-tier Architecture

10 ! Chapter 1: Introduction to SAS Digital Marketing

Broadcast Delivery and Response Tracking


A SAS Digital Marketing broadcast includes a denition phase to create customized content, an execution phase to deliver the broadcast, and a tracking phase to record responses from recipients. The broadcast delivery architecture provides high-performance, customized content delivery through a Mail Transport Agent (MTA). Response tracking architecture enables you to monitor message or RSS content viewing, track Web browsing, and classify recipient responses. SAS Digital Marketing provides integrated reporting and analysis of broadcast responses, or you can use extract, transform, and load (ETL) processes for advanced analysis and visualizations.

Delivery Architecture
SAS Digital Marketing uses the following functionality: Java RMI technology for remote client communication. J2EE JavaMail technology for delivery of e-mail to the MTA. an ASP or SMS gateway for sending SMS, Multimedia Message Service (MMS), or Wireless Application Protocol (WAP) Push messages. Extensible Stylesheet Language (XSL) for e-mail content specication. Java Database Connectivity (JDBC) technology for access to data tables that provide digital message delivery and customization. SAS Digital Marketing clients that provide the graphical user interface. an MTA that is essentially an e-mail server. You must provide a fully congured e-mail server for SAS Digital Marketing to use. JavaMail supports Simple Mail Transfer Protocol (SMTP), Post Ofce Protocol (POP), and Internet Message Access Protocol (IMAP) communication methods to an MTA. N OTE : IMAP support for the JavaMail application program interface (API) is experimental in this version of SAS Digital Marketing.

Tracking Architecture
The tracking architecture includes the following components: Java Servlet technology to track click-through and e-mail open rate. SAS Digital Marketing provides several tracking and utility servlets for the mid-tier. You must deploy a Web application server to track e-mail broadcasts when you use these servlets. For more information, see Conguring the Tracking and Web Publication Tier on page 54. J2EE JavaMail technology to implement an e-mail client that records e-mail replies.

Life Cycle of the Broadcast ! 11

Life Cycle of the Broadcast

Life Cycle of E-mail Broadcasts


The life cycle of the SAS Digital Marketing broadcast includes the denition phase to create the content, the execution phase to deliver the broadcast, and the tracking phase to record responses from recipients. Each e-mail message uses an address that is stored in the customer database and retrieved by using JDBC technology. After the message content and e-mail header are created, you can edit the content to customize the e-mail. The SAS Digital Marketing server processes the broadcast. If you created an e-mail broadcast, then you can also use grid computing across a grid network to distribute your broadcasts. The MTA sends the e-mail message to the recipient. The response table records the recipients response to the e-mail. By using the information in the customer database, you can correlate the responses in the response table to customers. Figure 1.2 shows the life cycle of an e-mail broadcast.

Life Cycle of RSS Feeds


The life cycle of SAS Digital Marketing Really Simple Syndication (RSS) feeds includes the denition phase to create the RSS content, the schedule phase to publish Web content that an RSS feed can request, and the tracking phase to record responses from recipients. a multi-channel broadcast is used to make the content available to be pulled by an RSS feed reader. RSS feeds distribute updated content to subscribers by displaying a headline, an optional short description, and a link to a detailed article. To use broadcasts through an RSS feed, you create an RSS feed to dene your content topic. You publish the content to the RSS feed by referencing the Web publish URL for the feed when the feed XML is requested. Java servlets that are deployed on a Web application servers process requests by subscribers to read the content. JDBC technology is used to record the request in the response table. Figure 1.3 shows the life cycle of multichannel broadcast that uses an RSS feed.

12 ! Chapter 1: Introduction to SAS Digital Marketing

Figure 1.2 The Life Cycle of an E-mail Broadcast

Life Cycle of RSS Feeds ! 13

Figure 1.3 The Life Cycle of an RSS Feed

14 ! Chapter 1: Introduction to SAS Digital Marketing

Life Cycle of SMS Broadcasts


The life cycle of the SAS Digital Marketing SMS broadcast includes the denition phase to create the content and the execution phase to deliver the broadcast. Each SMS message uses a phone number that is stored in the customer database and retrieved by using JDBC technology. After the message content and header for the text message are created, you can use the content editor to customize the text message. The SAS Digital Marketing server processes the broadcast. You can also use grid computing across a grid network to distribute your broadcasts. The MTA sends the text messages to the SMTP-SMS gateway, which is used to deliver short text messages to the recipient. Figure 1.4 shows the life cycle of an SMS broadcast.
Figure 1.4 The Life Cycle of an SMS Broadcast

Life Cycle of ASP Broadcasts ! 15

Life Cycle of ASP Broadcasts


The life cycle of the SAS Digital Marketing ASP broadcast includes the denition phase to create the content and the execution phase to deliver the broadcast. Each ASP message uses a phone number that is stored in the customer database and retrieved by using JDBC technology. After the message content is created and the ASP parameters are specied, you can use the content editor in the SAS Digital Marketing client to customize the text message. The SAS Digital Marketing server processes the broadcast. You can also use grid computing across a grid network to distribute your broadcasts. The ASP broadcast denition connects to mobile networks through an ASP that provides a HyperText Transfer Protocol (HTTP) post interface. You congure the ASP broadcast denition to post the appropriate requests that send SMS, MMS, or WAP Push messages. Figure 1.5 shows the life cycle of an ASP broadcast.
Figure 1.5 The Life Cycle of an ASP Broadcast

16 ! Chapter 1: Introduction to SAS Digital Marketing

Customizing the Broadcasts


SAS Digital Marketing provides a variety of features that enable you to customize your broadcasts. With the broadcast wizard, you can create broadcasts that have customized content and tracking information. The broadcast wizard creates an XSL template that contains the rules for generating customized content. A comprehensive content editor enables you to modify the components of a broadcast denition. You can use XSL to customize the e-mail or text message content so that each recipient receives a unique message. Likewise, you can use a third-party editor, such as FrontPage, Dreamweaver, or the TinyMCE HTML editor, to edit the message content. You can congure SAS Digital Marketing to use grid computing in order to distribute a broadcast transmission across multiple computers. Grid computing enables you to easily increase your e-mail message delivery capacity by adding more computers to the grid network. JDBC technology enables you to access your customer data and response data. SAS Digital Marketing has been optimized for SAS JDBC providers. By using SAS JDBC providers in conjunction with SAS/ACCESS software, you can store your customer and response data on many different databases. You can also use a third-party JDBC provider, such as mySQL, to access your customer and response databases.

Using This Documentation

Purpose of This Documentation


This document describes how to install and congure SAS Digital Marketing software. This document is organized as follows: Chapter 1, Introduction to SAS Digital Marketing, explains the purpose of SAS Digital Marketing and summarizes related information and services. Chapter 2, Installing SAS Digital Marketing, explains how to install the software. Chapter 3, Conguring SAS Digital Marketing, explains how to congure the software and deploy the tracking servlets. Chapter 4, Customizing the Server, explains how to modify the SAS Digital Marketing server settings after the software has been installed and congured. Chapter 5, Modifying Advanced Server Properties, describes the advanced server properties that you can use to set global policies for your site. Chapter 6, Managing Advanced Broadcast Tools, explains several tools that assist in the creation and management of broadcasts.

Intended Audience ! 17

Chapter 7, Managing SAS Jobs, explains how to use SAS jobs to create reports and consolidate data. Chapter 8, Managing JDBC Connections, explains how to use the JDBC connections. Chapter 9, Managing Broadcast Tracking and Replies, explains how to use the E-mail Reply Manager to process broadcast replies. Chapter 10, Optimizing SAS Digital Marketing, explains how to improve performance by distributing the broadcast transmissions across the grid network.

Intended Audience
This documentation is for users who install, congure, and optimize SAS Digital Marketing under the UNIX or Linux operating environments, and on PC platforms. SAS and other programming expertise is not required.

Part II

Installation

Chapter 2

Installing SAS Digital Marketing


Contents
Overview of Installing the Software . . . . . . . . . . . Software Components . . . . . . . . . . . . . . . Installation Requirements . . . . . . . . . . . . . Directory Structure for SAS Digital Marketing . . Java Servlets . . . . . . . . . . . . . . . . . . . . Migrating Broadcasts from SAS E-mail Marketing Installing a SAS Digital Marketing Server . . . . . . . . Introduction to the Server Installation . . . . . . . Run the Server Installer . . . . . . . . . . . . . . Installing a SAS Digital Marketing Grid Node . . . . . . Introduction to the Grid Node Installation . . . . . Run the Grid Node Installer . . . . . . . . . . . . Installing a SAS Digital Marketing Client . . . . . . . . Introduction to the Client Installation . . . . . . . Run the Client Installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 21 22 23 24 26 26 26 27 30 30 30 32 32 33

Overview of Installing the Software

Software Components
Before you run SAS Digital Marketing, a site administrator must install the software and deploy Web archive les to a middle tier. SAS Digital Marketing provides utilities to install and congure the following software components: Server installs SAS Digital Marketing clients and the SAS Digital Marketing server. Grid node installs SAS Digital Marketing clients and a SAS Digital Marketing grid node. Client installs the SAS Digital Marketing Studio client.

22 ! Chapter 2: Installing SAS Digital Marketing

Java Servlets and Web Studio congures Java servlets in the Web archive (WAR) les. You deploy these les on a Web application server. SAS Digital Marketing can process sizable e-mail broadcasts across multiple computers when you install grid nodes and congure the server to use the computers in the grid network. The server can distribute the e-mail broadcast transmission across an unlimited number of grid nodes.

Installation Requirements
To use SAS Digital Marketing, you must have the following software and resources: a computer that is running under one of the following platforms or operating environments: Windows Server 2003 Family, Windows XP, or Windows 2000 Family Solaris 8, Solaris 9, or Solaris 64 HPUX-IPF running HP-UX 11i Version 2 HPUX-PA-RISC running HP-UX 11i, version 1 (64-bit) AIX, Release 5.1 or Release 5.2 Red Hat Enterprise Linux 2.1 or 3.1 SuSE Linux Enterprise Server 8 + Service Pack 1 a valid license le JRE 1.4.1 or 1.4.2 for the server, and JRE 1.4.1 for the client an SMTP e-mail server for e-mail transmissions a JDBC provider such as a SAS/SHARE server or SAS Workspace Server Internet Explorer 6, Internet Explorer 7, or Mozilla Firefox Foundation SAS 9.1.3 SP4 on any supported platform a Web application server such as Apache Tomcat, BEA WebLogic, or IBM WebSphere a POP3 or IMAP e-mail account that processes returned e-mail (bounces) and replies. an e-mail gateway to send SMS messages an SMS Application Service Provider, such as Clickatell Mobile Messaging (www.clickatell.com ) and PSWinCom SMS gateway (www.pswin.com), or an SMTPSMS gateway that sends SMS, MMS, and WAP Push messages to wireless devices N OTE : IMAP support for JavaMail API is experimental in this version of SAS Digital Marketing.

Directory Structure for SAS Digital Marketing ! 23

SAS Digital Marketing under AIX requires an IBM 1.4.1 32-bit JRE. For more information, see SAS Note SN-012999. For information about specic hardware, software, and memory congurations, see the Install Center at http://support.sas.com. N OTE : You can also use MySQL, MS-SQL, DB2, and Oracle as direct JDBC providers. However, SAS Digital Marketing is optimized for SAS JDBC drivers, which enables connectivity to any of the databases that SAS/ACCESS supports.

Directory Structure for SAS Digital Marketing


SAS Digital Marketing uses the following les and directories: asps directory contains the metadata for the ASP broadcast types. broadcasts directory contains e-mail and SMS broadcast denitions. The samples subdirectory contains examples of broadcast denitions. cong directory contains the server conguration les. These les include the server.properties le that further customizes the SAS Digital Marketing server. content directory contains the broadcast content (HTML, TXT, XSL, and AOL les). deployments directory contains the WAR les with servlets that you congured for deployment. doc directory contains documentation les. history directory contains history les for broadcast executions. images directory contains image les that are used to demonstrate bulk loading of resources. jars directory contains third-party JAR and custom CLASS les that are downloaded to a rich client connection. lib directory contains the JAR les that are required by SAS Digital Marketing. logs directory contains the server and broadcast logs. meta-inf directory contains the JavaMail descriptors for the SMTP spooler. mid directory contains the uncongured SAS Digital Marketing servlets Web archive, bess.war, and the SAS Digital Marketing Web Studio archive, sdm.war.

24 ! Chapter 2: Installing SAS Digital Marketing

nodecong directory contains grid node settings. pending directory contains temporary les that are used for domain throttling. replies directory contains e-mail message replies and bounces. reports directory contains XSL templates that are used to generate HTML broadcast reports. WEBROOT directory contains Web resources les. rss directory contains that RSS Feed denitions that are used by the Feed Manager. samples directory contains the les that are examples of e-mail content. sasmacro directory contains SAS macro programs that are used to generate SAS reports. spool directory contains spooled e-mails that are stored by the SMTP spooler. temp directory contains temporary les that are used in broadcast executions. This documentation uses the word ROOT to refer to the directory where you installed SAS Digital Marketing. SAS Digital Marketing requires Write access to the ROOT directory and its subdirectories when a user runs the server.

Java Servlets
SAS Digital Marketing stores the Java servlets for response tracking and the Web publication framework in the Web archive le, bess.war. You use the SAS Digital Marketing Servlet Conguration wizard to congure a WAR le for deployment that contains the servlets. For more information, see Conguring the Tracking and Web Publication Tier on page 54.

Java Servlet Requirements


To use the servlets in the bess.war le, your Web application server must be visible to the intended recipients of the broadcast. Corporate computing environments often use a rewall to prevent unauthorized access to a companys private information from the Internet or a network. SAS Digital Marketing requires deployment of the WAR le that contains the servlets on a Web application server that is outside your rewall and visible from the Internet.

Java Servlets ! 25

Broadcast Tracking Servlets


SAS Digital Marketing provides the following tracking servlets: redir servlet takes all the variables that are passed to the servlet, records them in a table, and then redirects the browser to the link variable. crumb servlet is a 1x1 GIF image that is embedded in the HTML content that tracks when an e-mail recipient views the HTML le. The crumb servlet records all the variables that are passed in and returns a blank 1x1 GIF image to the browser. get servlet tracks the links that were clicked in the text content. N OTE : The get servlet is also used for HTML content when the IndexedLinks server property is set. For more information, see Response Server Properties on page 151. optout servlet tracks the opt-out responses from a broadcast. For more information, see Response Tracking (Chapter 7, SAS Digital Marketing: Users Guide).

Web Publication Servlets


SAS Digital Marketing provides the following Web publication servlets: pub servlets retrieves formatted broadcast content from the SAS Digital Marketing server. Several variants of the pub servlet are available that distinguish the context by which the content is requested. res servlet retrieves an ad-hoc Web resource that is hosted on the SAS Digital Marketing server. rss servlet retrieves an RSS feed that SAS Digital Marketing manages. For more information, see Overview of RSS Feeds (Chapter 6, SAS Digital Marketing: Users Guide).

26 ! Chapter 2: Installing SAS Digital Marketing

Migrating Broadcasts from SAS E-mail Marketing


You can still use broadcast denitions that were created with SAS E-mail Marketing when you upgrade to SAS Digital Marketing. If you plan to use these broadcast denitions, then do not uninstall SAS E-mail Marketing before you install SAS Digital Marketing. After SAS Digital Marketing is installed, copy the les from the following SAS E-mail Marketing directories:
ROOT/content to the SAS Digital Marketing ROOT/content directory ROOT/broadcasts to the SAS Digital Marketing ROOT/broadcasts directory ROOT/history to the SAS Digital Marketing ROOT/history directory ROOT/logs to the SAS Digital Marketing ROOT/logs directory

You should not replace the entire SAS Digital Marketing directory. Merge the contents of both directories instead. Otherwise, you will lose the predened SAS Digital Marketing sample broadcast denitions.

Installing a SAS Digital Marketing Server

Introduction to the Server Installation


Your site must install SAS Digital Marketing on at least one server. After you have veried the installation requirements, start the SAS Digital Marketing installation program from the SAS Software Navigator on the SAS Digital Marketing CD-ROM. N OTE : If SAS E-mail Marketing 2.1 or 2.2 is installed, then the installer installs a separate version of SAS Digital Marketing. For information about using broadcast denitions that were created in SAS E-mail Marketing, see Migrating Broadcasts from SAS E-mail Marketing on page 26.

Run the Server Installer ! 27

Run the Server Installer


To create a server, complete the following steps: 1. After the InstallShield wizard opens and you select a language, click Next. 2. Select Server as the installation conguration and click Next. N OTE : If SAS Digital Marketing is already installed on your computer, then you are not prompted about how to congure the installation. The Installer wizard displays the softwares current location. Click Next to re-install SAS Digital Marketing in this location.

28 ! Chapter 2: Installing SAS Digital Marketing

3. Specify the location of the directory to use for software installation and click Next. You must have Write access to the directory. Click Browse to locate another directory.

4. Specify the directory location of the broadcast and the content les and click Next.

Run the Server Installer ! 29

When you create a broadcast denition, a copy of the broadcast content is stored in the content directory. This content is available for use when you execute the broadcast. If you uninstall SAS Digital Marketing before you install a new release of the software, then your broadcasts will not be available. 5. Specify the port number and click Next.

SAS Digital Marketing uses Java Remote Method Invocation (RMI) technology. The port that you specify is the port number on which RMIs registry accepts calls on this computer. If another application on this computer uses port 9221, specify a different port number to avoid conicts. N OTE : Other ports are also used by RMI for client-server connectivity. To restrict the ports that are used, see the CustomSocketFactory server property in Properties for Restricting Ports on page 145. 6. Review the installation information and click Next to install the software. If you decide to change a setting, click Back to return to the appropriate step in the wizard. 7. Decide whether to run the Conguration wizard and click Next. For more information, see Conguring the SAS Digital Marketing Server on page 38. If you select No, then click Next and Finish to close the Installer window.

30 ! Chapter 2: Installing SAS Digital Marketing

Installing a SAS Digital Marketing Grid Node

Introduction to the Grid Node Installation


When you expect to send e-mail to a large number of recipients, you can create a series of grid nodes on other computers that distribute the processing of the e-mail broadcast transmission. After you install a grid node, you must modify the SAS Digital Marketing server to use the computers that are in the grid network. N OTE : Before you can use grid computing, a SAS Digital Marketing server must be installed. Each computer that is part of the grid network requires one of the following platforms or operating environments: Windows Server 2003 Family, Windows XP, or Windows 2000 Family Solaris 8 or Solaris 9 HPUX-IPF running HP-UX 11i Version 2 HPUX-PA-RISC running HP-UX 11i, version 1 (64-bit) AIX, Release 5.1 or Release 5.2 Red Hat Enterprise Linux 2.1 or 3.1 SuSE Linux Enterprise Server 8 + Service Pack 1 SAS Digital Marketing under AIX requires an IBM 1.4.1 32-bit JRE. For more information, see SAS Note SN-012999. For more information about specic hardware, software, and memory congurations, see the Install Center at http://support.sas.com.

Run the Grid Node Installer


To create a grid node, complete the following steps: 1. Start the SAS Digital Marketing installation program from the SAS Software Navigator on the SAS Digital Marketing CD-ROM, using the computer that will serve as a grid node. 2. After the InstallShield wizard opens and you select a language, click Next.

Run the Grid Node Installer ! 31

3. Select Grid Node as the installation conguration and click Next. N OTE : If SAS Digital Marketing is already installed on your computer, then you are not prompted about how to congure the installation. The Installer wizard displays the softwares current location. Click Next to re-install SAS Digital Marketing in this location.

4. Specify the location of the directory to use for software installation and click Next. Click Browse to locate another directory. N OTE : You must have Write access to this directory. 5. Specify the port number and click Next. SAS Digital Marketing uses Java Remote Method Invocation (RMI) technology. The port that you specify is the port number on which RMIs registry accepts calls on this computer. If another application on this computer uses port 9221, specify a different port number to avoid conicts. 6. Review the installation choices and click Next to install the software. If you decide to change a setting, click Back to return to the appropriate step in the wizard. 7. Decide whether to run the Conguration wizard and click Next. For more information, see Conguring a Grid Node on page 256. If you select No, then click Next and Finish to close the Installer window.

32 ! Chapter 2: Installing SAS Digital Marketing

Installing a SAS Digital Marketing Client

Introduction to the Client Installation


To install SAS Digital Marketing as a client, your site must install SAS Digital Marketing as a server on a computer that you can access through your network. A SAS Digital Marketing client must have the ability to connect to the SAS Digital Marketing server. For more information about connecting to a server, see Running SAS Digital Marketing (Chapter 2, SAS Digital Marketing: Users Guide). Each computer that runs a SAS Digital Marketing client requires one of the following platforms or operating environments: Windows Server 2003 Family, Windows XP, or Windows 2000 Family Solaris 8 or Solaris 9 HPUX-IPF running HP-UX 11i Version 2 HPUX-PA-RISC running HP-UX 11i, version 1 (64-bit) AIX, Release 5.1 or Release 5.2 Red Hat Enterprise Linux 2.1 or 3.1 SuSE Linux Enterprise Server 8 + Service Pack 1 SAS Digital Marketing under AIX requires an IBM 1.4.1 32-bit JRE. For more information, see SAS Note SN-012999. For more information about specic hardware, software, and memory congurations, see the Install Center at http://support.sas.com. N OTE : The Microsoft Windows operating environment provides the best performance for SAS Digital Marketing Studio.

Run the Client Installer ! 33

Run the Client Installer


To create a SAS Digital Marketing client, complete the following steps: 1. Start the SAS Digital Marketing installation program from the SAS Software Navigator on the SAS Digital Marketing CD-ROM using the computer that will serve as a client. 2. After the InstallShield wizard opens and you select a language, click Next. 3. Select Client as the installation conguration and click Next. N OTE : If SAS Digital Marketing is already installed on your computer, then you are not prompted about how to congure the installation. The Installer wizard displays the softwares current location. Click Next to re-install SAS Digital Marketing in this location.

4. Specify the location of the directory to use for software installation and click Next. Click Browse to locate another directory. N OTE : You must have Write access to this directory. 5. Review the installation choices and click Next to install the software. If you decide to change a setting, click Back to return to the appropriate step in the wizard. Click Finish to close the Installer window.

Part III

Conguration

Chapter 3

Conguring SAS Digital Marketing


Contents
Overview of Conguring the Software . . . . . . . Conguring the SAS Digital Marketing Server . . How to Congure the Server . . . . . . . . . Run the Server Conguration Wizard . . . . Conguring the Tracking and Web Publication Tier How to Congure the Middle Tier . . . . . . Deploying the Servlet WAR File . . . . . . . Testing the Tracking Servlets . . . . . . . . Updating the Server . . . . . . . . . . . . . Reconguring the Tracking Servlets . . . . . Conguring a Proxy Server . . . . . . . . . Conguring SAS Digital Marketing Web Studio . . How to Congure the Web Application . . . Deploying the Web Studio WAR File . . . . Updating the Server To Use Web Studio . . . Congure the Web Studio Server . . . . . . Implementing the Broadcast Scheduler . . . Implementing the SAS Language Adapter . . Conguring SAS Information Delivery Portal . . . About SAS Information Delivery Portal . . . Add a Link to SAS Digital Marketing . . . . Validating Your Conguration . . . . . . . . . . . Create a Sample Data Table . . . . . . . . . Preview a Sample Broadcast . . . . . . . . . Congure a Windows Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 38 38 39 54 54 54 67 70 71 79 83 83 83 83 84 85 86 88 88 89 93 93 94 95

38 ! Chapter 3: Conguring SAS Digital Marketing

Overview of Conguring the Software


SAS Digital Marketing provides tools to congure the server and middle tiers and to validate your software installation. You use the SAS Digital Marketing Server Conguration wizard or select Server Conguration from the Tools menu in SAS Digital Marketing Studio to specify server settings. The Server Conguration wizard creates Web archive (WAR) les that are deployed on the middle tier. The Server Conguration wizard can also create a service under the Windows environment that automatically starts the SAS Digital Marketing server. The middle tier contains the tracking and SAS Digital Marketing Web Studio deployment. Java servlets on the tracking deployment monitor the broadcast response, process multichannel broadcasts, host broadcast content, and manage Web resources. The Server Conguration wizard creates the WAR le that contains the servlets (bess.war) for the tracking and Web publication tier. You deploy the WAR le on a Web application server that is located outside a corporate rewall. You can also use the Servlet Conguration wizard in SAS Digital Marketing Studio to change the properties of the Java servlets. SAS Digital Marketing provides Web pages that enable you to test the middle tier and update the server to use the Java servlets. For more information, see Conguring the Tracking and Web Publication Tier on page 54. The Server Conguration wizard also creates the Web archive le (sdm.war) that contains the Java servlets to run the SAS Digital Marketing Web Studio client. After the WAR le that contains the servlets is deployed on a Web application server, you can manipulate broadcasts, manage Web resources, and produce advanced broadcast reports in a Web browser. You can locate this Web application server inside a corporate rewall. To create advanced reports in SAS Digital Marketing Web Studio, you also congure the SAS language adapter and Foundation SAS. For more information, see Conguring SAS Digital Marketing Web Studio on page 83. N OTE : If your site plans to support multiple SAS Digital Marketing Web Studio interactive users and you plan to generate numerous broadcast reports in batch mode, then you should consider a second deployment of the WAR le that contains the servlets (sdm.war). You can run the broadcast reports in batch mode on one deployment, and your users can use the second deployment to work interactively in SAS Digital Marketing Web Studio.

Conguring the SAS Digital Marketing Server

How to Congure the Server


You use the Server Conguration wizard to congure the server on the computer that is running the wizard. SAS Digital Marketing stores your conguration settings in the cong.xml le that is located in ROOT/config directory. You should not edit this le directly.

Run the Server Conguration Wizard ! 39

N OTE : If a SAS Digital Marketing client is running on a server that you have just congured, then either restart the client or click Refresh from the toolbar to use the new server settings.

Run the Server Conguration Wizard


To run the Server Conguration wizard, complete the following steps: 1. Start the Server Conguration wizard by selecting the SAS Digital Marketing Conguration shortcut from the Start menu under Windows or by running the scong shell script under the UNIX or Linux operating environments. After the wizard starts, a window appears that lists the pre-installation requirements. In order to proceed with the conguration, you must provide the location of the license le that was included in your site installation data. N OTE : If the SAS Digital Marketing server is currently running, then always stop the server before you use the Server Conguration wizard. 2. Click Next after you have reviewed pre-installation requirements. Then specify the location of the license le and click Next.

40 ! Chapter 3: Conguring SAS Digital Marketing

SAS Digital Marketing assumes that your license le is located in the ROOT/config directory for the software installation. Click Browse to locate the le in another directory. N OTE : Your license is distributed with your site installation data and it is found with your other SAS licenses. 3. Specify the location of the third-party database JDBC JAR les or custom CLASS les. Then click Next. SAS Digital Marketing incorporates these les into the WAR le that tracks broadcast responses.

N OTE : : You might want custom CLASS les for ASP decoders, Adobe Dreamweaver Snippets. or MaxMind extensions. SAS Digital Marketing can use a database from another vendor, such as MySQL, to track replies and responses from a broadcast. If the audit table, response table, or reply table use databases other than SAS/SHARE, then you must include JDBC connection third-party JARs. For each database, you acquire the connection JARs that are required to connect to that database from Java. For example, DB2 requires the db2jcc.jar le. To include JARs in the WAR le that contains the servlets, complete the following steps: a) Click Add JAR. b) For each database, specify the location of the JAR le in the Open window. c) Click OK. To delete a JAR le, select the le in the JARs box and click Remove.

Run the Server Conguration Wizard ! 41

If new JAR or CLASS les are installed on the SAS Digital Marketing server, then these les are automatically installed on the SAS Digital Marketing Studio client when you connect to this server. You are asked to restart the SAS Digital Marketing Studio client after the JAR les are installed. 4. Specify the JDBC connection information for the SAS/SHARE server, SAS Workspace Server, or the third-party database server to use in SAS Digital Marketing and click Next.

To specify a new JDBC connection, click Add. To verify the JDBC connection, click Test. For more information, see Managing the Connections Settings on page 222.

42 ! Chapter 3: Conguring SAS Digital Marketing

5. Specify the settings for sending broadcasts and click Next.

You can specify the number of times that SAS Digital Marketing tries to send a broadcast message and whether to simulate the broadcast transmission. You can also specify to automatically use the opt-out table to lter the e-mail transmission. For non-Asian languages, use 8-bit as the value for Default mime transfer encoding. Some Asian languages use 7-bit mime transfer encoding or another other value. For more information, see MIME (RFC 2045). Use the E-mail Servers table to verify your outgoing SMTP mail server and add additional e-mail servers. For more information about changing these settings, see Send Options on page 112.

Run the Server Conguration Wizard ! 43

6. Specify the location of the middle tier, or specify that you want to create a new WAR le for the Java servlets and click Next. The Java servlets collect response metrics for e-mail broadcasts, process multichannel broadcasts, and manage Web resources.

If the WAR le that contains the Java servlets is already deployed on a Web application server, then select Use an existing tracking deployment. Specify the location of the middle tier by entering the base URL address for the Web application server. To verify that the tracking servlets work correctly, click Test. If you want to create a new WAR le that contains the servlets for the middle tier, select Create a new tracking deployment. You specify settings for the JDBC connection, the link table, and the opt-out table.

44 ! Chapter 3: Conguring SAS Digital Marketing

7. If you are creating a new tracking deployment, then specify the JDBC connection information for the SAS/SHARE server, SAS Workspace Server, or the third-party database server that SAS Digital Marketing uses to collects response data and click Next.

To specify a new JDBC connection, click Add. To verify the JDBC connection, click Test. For more information, see Managing the Connections Settings on page 222.

Run the Server Conguration Wizard ! 45

8. If you are creating a new tracking deployment, then specify the link table to track the response to embedded links in the text content and click Next.

Select an existing table, or enter a valid table name for the JDBC provider in the Table box. SAS Digital Marketing automatically creates the table if it is not found. If you want to use a different table connection, then use the Connections drop-down list to select the connection denition. Tracked links in text content can become quite large. Unlike with HTML content, the recipient sees the actual link in the text content. When a tracked link is embedded in the broadcast content, SAS Digital Marketing adds the URL to the link table and generates an index. SAS Digital Marketing uses the index to shorten the tracked URLs in the text content that a recipient receives. The table that contains the links must always be available so that the URLs are found when a recipient clicks the links. N OTE : You can set the IndexedLinks server property to use indexed links in HTML content. For more information, see Response Server Properties on page 151. Select Redirect to custom error page if the link table or link is unavailable to specify the location of a Web page. This Web page opens when an e-mail recipient clicks an invalid link or if the link table is not available. You must locate the Web page outside a corporate rewall so that it is available to your e-mail recipients. This Web page also displays when the link table is inaccessible and the e-mail recipient clicks a tracked link in the e-mail content that is indexed.

46 ! Chapter 3: Conguring SAS Digital Marketing

9. If you create a new tracking deployment, then specify the opt-out table to record the e-mail addresses of recipients and click Next. SAS Digital Marketing excludes the e-mail addresses in this table from receiving e-mail transmissions.

Select an existing table, or enter a valid table name for the JDBC provider in the Table box. SAS Digital Marketing automatically creates the table if it is not found. If you want to use a different table connection, then use the Connections drop-down list to select the connection denition. If the Automatically apply opt-out table during send processing option is set and SAS Digital Marketing records an address in the opt-out table, then no broadcast e-mails are sent to this address. Addresses are recorded in the opt-out table when an e-mail recipient clicks a link in the e-mail message that has the opt-out servlet embedded. This link is created by using the Insert HTML opt-out link or Insert TEXT opt-out link options in the Insert other expressions dialog box. Addresses are also recorded in the opt-out table when you set a Reply Manager rule threshold. For more information, see Response Tracking (Chapter 7, SAS Digital Marketing: Users Guide). Select Redirect to custom opt-out notication page to specify the location of a Web page that opens when an e-mail recipient decides to opt out of an e-mail broadcast. The Web page should include a message that you are processing the request to remove the recipient from the mailing list.

Run the Server Conguration Wizard ! 47

10. Specify the settings for e-mail broadcasts and then click Next. For the initial phase of setup, you can use the default values.

You can specify the execution and preview characteristics. To prevent duplicate broadcasts from being sent to the same recipient address, you must set the options to create an audit table and record all audit events. You can also congure SAS Digital Marketing to distribute the broadcast transmissions to a grid network. For more information about changing these settings, see E-mail Options on page 107. N OTE : If you select the Prevent duplicate e-mails per broadcast option, then SAS Digital Marketing sends only one broadcast per e-mail address. Therefore, transaction broadcasts work only once for each e-mail address. You can override this duplication policy by setting the !EM_PREVENT_DUPS! directive to true. For more information about this directive, see Using E-mail Directives (Appendix B, SAS Digital Marketing Users Guide).

48 ! Chapter 3: Conguring SAS Digital Marketing

11. Specify the settings to log server actions and to create broadcast audit records and then click Next. For the initial phase of setup, you can use the default values.

You can control when and where SAS Digital Marketing records the audit data. To create audit records, set the Audit level to all, select Write audit records to a table, and click Congure Audit Table to specify the audit table. For more information, see Logging Options on page 109. Select Display server log in the server console window if you want the log information to appear in this window. The log information is recorded in the ROOT/wrapper.log le when the server runs as a Windows service. N OTE : For the SAS Digital Marketing clients to create reports that access the audit table, you must specify an explicit host in the JDBC connection denition. Therefore, do not specify a JDBC connection that has localhost as the value in the Connection Denitions dialog box.

Run the Server Conguration Wizard ! 49

12. Specify the settings to process e-mail replies and click Next. You must rst provide a POP3 or IMAP e-mail account and a JDBC provider to record the reply classication. After these values are set, you can congure the server to periodically download the replies and classify them.

To congure the e-mail reply account, click Congure Reply Manager. For the SAS Digital Marketing clients to create reports that accesses the reply table, you must specify an explicit host in the JDBC connection denition. Therefore, do not specify localhost as the Universal Resource Identier (URI). For more information, see E-mail Reply Options on page 101. N OTE : Support for IMAP is experimental for this release.

50 ! Chapter 3: Conguring SAS Digital Marketing

13. Specify the users that can access SAS Digital Marketing and the proxy settings for your site and then click Next.

To specify the users that can access SAS Digital Marketing, select Basic from the Security Mode drop-down list. Click Add, Edit, or Remove to create or modify the credentials that authenticates a user or a group of users. To use a metadata server that centralizes the management of user credentials, select metadata from the Security Mode drop-down list. SAS Digital Marketing uses the metadata repository to authenticate that the user has permission to log on to the SAS Digital Marketing server. You must specify the location of the metadata server and the user credentials for the SAS Digital Marketing administrator. For more information, see Security Options on page 128. N OTE : When you use a metadata server for user authentication, SAS Digital Marketing grants all users Level 3 permission. This level means you cannot stop or congure the SAS Digital Marketing server. To use ASP broadcasts, you must use an Internet proxy and specify the values for the proxy and port.

Run the Server Conguration Wizard ! 51

14. Specify whether to use the TinyMCE HTML editor in SAS Digital Marketing Web Studio and select Next.

If you want to edit the HTML content for a broadcast using the TinyMCE Web-based Javascript editor, then select Download and install TinyMC third party software. Use the URL drop-down list to select the location of the installation le. Click Browse to locate the le in another directory. To use TinyMCE as the HTML content editor in SAS Digital Marketing Studio, you must also set the WebAppURL server property. For more information, see Integration Utils Server Properties on page 141. N OTE : To download the software, you might need to congure the SAS Digital Marketing server to use an Internet proxy. Use the previous step to select Use an Internet proxy and specify your proxy and port settings.

52 ! Chapter 3: Conguring SAS Digital Marketing

15. Specify the settings to spawn threads and click Next. By default, the broadcast execution runs in multiple threads for efciency.

You can optimize the e-mail broadcast execution by specifying the number of threads. You can also specify the number of asynchronous threads that SAS Digital Marketing uses to deliver spooled SMTP messages to an e-mail server. For more information, see Adjusting the SMTP Spooler on page 263.

Run the Server Conguration Wizard ! 53

16. Print or save the post-conguration checklist and click Finish.

SAS Digital Marketing updates the WAR les for the middle tier. These les are located in ROOT/mid directory. You deploy the updated WAR les on a Web application server. For more information, see The post-conguration checklist provides a list of steps on how to deploy the WAR les and validate your settings. To create a paper copy of the instructions, select Print Check list. For information about creating a sample broadcast to test the server conguration, see Validating Your Conguration on page 93. To create a service under the Windows environment that automatically starts the SAS Digital Marketing server when your computer starts, select Register SAS Digital Marketing as a Windows Service.

54 ! Chapter 3: Conguring SAS Digital Marketing

Conguring the Tracking and Web Publication Tier

How to Congure the Middle Tier


You deploy a WAR le that contains the tracking and Web publication serlvets on a Web application server. SAS Digital Marketing uses this deployment to process Java servlet requests and host your Web resources. The Web application server must be visible to your intended e-mail recipients, so locate the server outside any corporate rewalls. SAS Digital Marketing supports deployment of the WAR le on BEA WebLogic, Apache Tomcat, and IBM WebSphere. If you used the Server Conguration wizard to create a new tracking deployment, then a new WAR le that contains the servlets is automatically created. You can also use the Servlet Conguration wizard to change settings for the broadcast response tracking servlets or to congure the Web publication servlets. For more information, see Reconguring the Tracking Servlets on page 71. SAS Digital Marketing stores the servlet settings in the web.xml le in the updated WAR le that contains the servlets (bess.war). The le is located in the ROOT/deployments directory on the computer that was used to congure SAS Digital Marketing. After the WAR le is deployed, you can use SAS Digital Marketing Web pages to test Java servlets on the middle tier. You can also update the SAS Digital Marketing server to use the Java servlets that you just tested. N OTE : If you congure the Web publication servlets to use HTTP proxy settings, then you deploy one WAR le that contains the servlets inside the corporate rewall that omits proxy URLs. You deploy another WAR le that the includes a proxy URL for the servlets outside the corporate rewall. For more information, see Conguring a Proxy Server on page 79.

Deploying the Servlet WAR File


After the Java servlets are congured, you can deploy one of the following Web application servers: BEA WebLogic Apache Tomcat IBM WebSphere N OTE : You must deploy the WAR le that contains the servlets on a Web application server outside a corporate rewall and make the server visible to the intended recipients of your broadcasts.

Deploying the Servlet WAR File ! 55

Deploy to BEA WebLogic


To deploy the WAR le to a BEA WebLogic server, use the WebLogic Server Console to complete the following steps: 1. Click Deploy a new Web application Module from the Deployments node.

2. Click upload your le(s) in the Deploy a Web application Module pane.

56 ! Chapter 3: Conguring SAS Digital Marketing

3. Click Browse to locate the bess.war le that you congured with the Server or Servlet Conguration wizard. Then click Upload.

4. Navigate to the uploaded bess.war le, select it, and click Target Module.

Deploying the Servlet WAR File ! 57

5. Use the default name of bess and click Deploy.

WebLogic deploys the WAR le that contains the servlets. Now, test that the Java servlets have started. For more information, see Verify the Tracking Servlets on page 68.

Deploy to Apache Tomcat


To deploy the WAR le that contains the servlets to a Tomcat 4.1 server, copy the WAR le to the webapps folder of the Tomcat installation and restart Tomcat. The name of the folder for the Tomcat installation must not include any blank spaces. Upon restarting, Tomcat unpacks the bess.war le and congures the Java servlets for use. Now, test that the servlets have started. For more information, see Verify the Tracking Servlets on page 68.

58 ! Chapter 3: Conguring SAS Digital Marketing

If you run Tomcat with the -security option, then make the following change in $CATALINA_HOME/conf/catalina.policy le:
grant codeBase "file:${catalina.home}/webapps/sdm/-" {permission java.security.AllPermission;}; grant codeBase "file:${catalina.home}/webapps/bess/-" {permission java.security.AllPermission;};

Restart Tomcat to use the new conguration option.

Deploy to IBM WebSphere


To deploy the WAR le that contains the servlets to an IBM WebSphere server, use the WebSphere Administrative Console to complete the following steps: 1. Expand the Applications node in the Administrative Console and open Install New Application. In the Preparing for the application installation pane, specify the location of the WAR le. Specify the name bess in the Context Root box and click Next.

Deploying the Servlet WAR File ! 59

2. Click Next in the Preparing for the application installation pane to use the default values.

60 ! Chapter 3: Conguring SAS Digital Marketing

3. Click Continue in the Application Security Warnings pane.

Deploying the Servlet WAR File ! 61

4. Click Next to use the default values for Step 1 in the Install New Application pane.

62 ! Chapter 3: Conguring SAS Digital Marketing

5. Select the check box for SAS Digital Marketing Tracking Servlets, and click Next to use defaults_host for Step 2.

Deploying the Servlet WAR File ! 63

6. Select SAS Digital Marketing Tracking Servlets check box, specify the Web application server for the middle tier and click Apply. Click Next to use defaults_host for Step 3.

64 ! Chapter 3: Conguring SAS Digital Marketing

7. Click Finish in the Install New Application pane.

Deploying the Servlet WAR File ! 65

8. Click Save to Master Conguration after the WAR le is installed.

66 ! Chapter 3: Conguring SAS Digital Marketing

9. Click Save.

Testing the Tracking Servlets ! 67

10. To start the Java servlets, expand the Applications node in the Administrative Console and select Enterprise Applications. In the application list, check bess.war and click Start.

Now test that the servlets have started. For more information, see Verify the Tracking Servlets on page 68.

Testing the Tracking Servlets


You use the SAS Digital Marketing Tracking Servlets Test page to verify the deployment of the middle tier and test the Java servlets. After you verify the deployment, update a SAS Digital Marketing server to use the tracking servlets.

68 ! Chapter 3: Conguring SAS Digital Marketing

Verify the Tracking Servlets


To run the Tracking Servlets Test page, complete the following steps: 1. Open a Web browser. 2. Append /test to the Web address for the root URL of the BESS deployments. For example, if your BESS deployments are located at http://appserver.com/bess, then the test URL is http://appserver.com/bess/test. If the Java servlets are running on the middle tier, then the following test page appears:

N OTE : When a servlet does not start, stop and restart the Web application server, and then restart the servlet.

Testing the Tracking Servlets ! 69

Test the Crumb Servlet To test the crumb servlet, complete the following steps: 1. Under Crumblet Tester, specify the broadcast events table in the Table box. N OTE : Your database vendor might require that you specify both a database name and table name, such as Test.Responses. If the database name is omitted for some versions of MySQL, then you receive a No database specified error. Specify the identication number in the ClientID box. SAS Digital Marketing writes a record to the specied response table. The record contains the identication number. Click Test Crumblet Servlet to run the servlet and to create a 1x1 GIF image similar to the image that SAS Digital Marketing embeds in the e-mail content.

2. 3.

N OTE : View events are not tracked for users of AOL 5.0. Therefore, the crumb servlet is not used. For users of AOL 6.0 and later, view events are treated as HTML. When the test is successful, the Web page indicates that the crumblet servlet was successfully invoked. Likewise, the response table is created on the JDBC connection that you specied in the Servlet Conguration wizard. This table should contain a row that includes the ClientID and a preview click event (pclick) as the broadcast response. If JMS is congured, then JMS listeners also receive a pview event that embeds the ClientID as a property. For more information, see Overview of JMS on page 269. Test the Redir Servlet To test the redir servlet, complete the following steps: 1. Under Redirect Tester, specify the URL of the target Web page in the Target URL box. For example, to use the SAS Web page as your target URL, specify http://www.sas.com. Specify the name of the table for broadcast events in the Table box. N OTE : Your database vendor might require that you specify both a database name and table name, such as Test.Responses. If the database name is omitted for some versions of MySQL, then you receive a No database specified error. Specify the identication number in the ClientID box. SAS Digital Marketing writes a record that contains the identication number to the specied response table. Click Test Redirect Servlet to run the servlet.

2.

3. 4.

When the test is successful, the Web page for the target URL displays. Likewise, the response table is created on the JDBC connection that you specied in the Servlet Conguration wizard. This table contains a row that includes a link to the target URL, the ClientID value, and a pview event as the broadcast response. If JMS is congured, then JMS listeners receive a pclick event that embeds the target URL link and the ClientID as the properties. For more information, see Types of Response Events (Chapter 7, SAS Digital Marketing: Users Guide). To view the response table, use the JDBC Table Viewer that is included in the SAS Digital Marketing. For more information, see Using the JDBC Table Viewer (Chapter 2, SAS Digital Marketing: Users Guide).

70 ! Chapter 3: Conguring SAS Digital Marketing

Updating the Server


After you verify the deployment of the middle tier, use the Congure the SAS Digital Marketing Tracking and Web Publication Tier page to quickly update a SAS Digital Marketing server. You must deploy the WAR le on a Web application server that is located outside a corporate rewall.

Assign the Tracking and Web Publication Tier Location


To run the Congure the SAS Digital Marketing Tracking and Web Publication Tier page, complete the following steps: 1. Open a Web browser. 2. Append /config to the Web address for the root URL of the BESS deployments. For example, if your BESS deployments are located at http://appserver.com/bess, then the test URL is http://appserver.com/bess/config. 3. Specify the location of the SAS Digital Marketing server. 4. Specify the user credentials to log on to the server.

Reconguring the Tracking Servlets ! 71

5. Click Update to congure the server. When you receive the message that the middle tier is successfully updated on the server, click Close. To verify that SAS Digital Marketing server is correctly updated, use the Server Conguration window. For more information, see Middle Tier Options on page 125.

Reconguring the Tracking Servlets


The Servlet Conguration wizard enables you to change the settings of the broadcast tracking and Web publication servlets. After the WAR le that contains the servlets is modied, you must deploy the bess.war le to a Web application server.

Run the Servlet Conguration wizard


To run the Servlet Conguration wizard, complete the following steps: 1. Start a SAS Digital Marketing Studio client, and connect to the SAS Digital Marketing server. Then select Servlet Conguration from the Tools menu. 2. Specify the location of the bess.war le and click Next.

72 ! Chapter 3: Conguring SAS Digital Marketing

3. Specify the JDBC connection information for the SAS/SHARE server, SAS Workspace Server, or the third-party database server that SAS Digital Marketing uses to collect response data and click Next.

To specify a new JDBC connection, click Add. To verify the JDBC connection, click Test. For more information, see Managing the Connections Settings on page 222. Select Turn on servlet debug mode to write debug messages to the Web server log. Debug information is written to the log when a recipient opens e-mail that contains a crumb or when a recipient clicks a link that is tracked. This option also enables you to access an exception log from the Tracking Servlets Test page. For more information, see Verify the Tracking Servlets on page 68.

Reconguring the Tracking Servlets ! 73

4. Specify the link table to track the response to embedded links in the text content and click Next.

Select an existing table, or enter a valid table name for the JDBC provider in the Table box. SAS Digital Marketing automatically creates the table if it is not found. If you want to use a different table connection, then use the Connections drop-down list to select the connection denition. Tracked links in text content can become quite large. Unlike with HTML content, the recipient sees the actual link in the text content. When a tracked link is embedded in the broadcast content, SAS Digital Marketing adds the URL to the link table and generates an index. SAS Digital Marketing uses the index to shorten the tracked URLs in the text content that a recipient receives. The table that contains the links must always be available so that the URLs are found when a recipient clicks the links. N OTE : You can set the IndexedLinks server property to use indexed links in HTML content. For more information, see Response Server Properties on page 151. Select Redirect to custom error page if the link table or link is unavailable to specify the location of a Web page that opens when an e-mail recipient clicks a link that is not available. You must locate the Web page outside a corporate rewall so that it is available to your email recipients. This Web page also displays when the link table is inaccessible and the e-mail recipient clicks a tracked link in the e-mail content that is indexed.

74 ! Chapter 3: Conguring SAS Digital Marketing

5. Specify the opt-out table to record the e-mail addresses of recipients that you want excluded from receiving e-mail transmissions and click Next.

Select an existing table, or enter a valid table name for the JDBC provider in the Table box. SAS Digital Marketing automatically creates the table if it is not found. If you want to use a different table connection, then use the Connections drop-down list to select the connection denition. If the Automatically apply opt-out table during send processing option is set and SAS Digital Marketing records an address in the opt-out table, then no broadcast e-mails are sent to this address. SAS Digital Marketing records e-mail addresses in the opt-out table when you use the Insert HTML opt-out link and Insert TEXT opt-out link options in the Insert other expressions dialog box. The opt-out servlet is embedded in the broadcast message. Addresses are also recorded in the opt-out table when you set a Reply Manager rule threshold. For more information, see Response Tracking (Chapter 7, SAS Digital Marketing: Users Guide). Select Redirect to custom opt-out notication page to specify the location of a Web page that opens when an e-mail recipient decides to opt-out of an e-mail broadcast. The Web page should include a message that you are processing the request to remove the recipient from the mailing list.

Reconguring the Tracking Servlets ! 75

6. Specify the location of the third-party database JDBC JAR les. SAS Digital Marketing uses the JAR les to connect to your database server in order to write response records. Also specify the location of any third-party JMS JAR les that SAS Digital Marketing needs to connect to a JMS provider. Then click Next.

SAS Digital Marketing can use a database from another vendor, such as MySQL, to track replies and responses from a broadcast. If the audit table, response table, or reply table use databases other than SAS/SHARE, then you must include JDBC connection third-party JARs. For each database, acquire the connection JARs that are required to connect to that database from Java. For example, DB2 requires the db2jcc.jar le. To connect to the server with the data table, specify the location of the JAR le that provides the JDBC connectivity. SAS Digital Marketing can use JMS to process responses in real time. JMS might need a third-party JAR le to connect to the JMS Queue or to the JMS Topic that you post broadcast events to. For example, if you use JMS with WebLogic as a JMS provider, then the wljmsclient.jar le is required when you deploy other Web application servers. For more information, see Overview of JMS on page 269.

76 ! Chapter 3: Conguring SAS Digital Marketing

To include JARs in the WAR le that contains the servlets, complete the following steps: a) Click Add JAR. b) For each database, specify the location of the JAR le in the Open window. c) Click OK. To delete a JAR le, select the le in the JARs box and click Remove. 7. Specify URLs for the HTTP proxies. Then click Next.

HTTP proxy settings enhance the security of your network. The number of open HTTP connections are limited between the SAS Digital Marketing server and the Web application server outside your corporate rewall. SAS Digital Marketing uses a proxy server inside your rewall to process the requests that are received from the Java servlets.

Reconguring the Tracking Servlets ! 77

To include an HTTP proxy in the WAR le, complete the following steps: a) Click Add Proxy. b) Specify the URL in the Enter proxy URL window. c) Click OK. To delete a proxy setting, select the name of the proxy in the URL in the Proxies box and click Remove. N OTE : To use HTTP proxy settings, you deploy two versions of the WAR le. This conguration of the WAR le is deployed outside the corporate rewall. For more information, see Conguring a Proxy Server on page 79. 8. Decide whether you want to use JMS for real-time broadcasts and specify the JMS conguration. Then click Next.

78 ! Chapter 3: Conguring SAS Digital Marketing

9. Specify the location to store the updated bess.war le and click Finish.

You are now ready to deploy the WAR le that contains the servlets to your Web application server on the middle tier. For more information, see Deploying the Servlet WAR File on page 54 and Updating the Server on page 70.

Conguring a Proxy Server ! 79

Conguring a Proxy Server


When SAS Digital Marketing uses a middle tier to deliver message content, manage RRS feeds, and host Web resources, you can congure a WAR le that contains servlets to use a proxy server to process the HTTP requests. You improve network security by restricting connectivity between the SAS Digital Marketing server inside your corporate rewall and the Web application server outside your corporate rewall. The Java RMI technology that SAS Digital Marketing uses for remote client communication is prevented from randomly opening multiple ports and connections when HTTP requests are received. By conguring a WAR le to use HTTP proxy settings, you limit the HTTP requests to a specied set of ports. To use a proxy server, you create two middle tier deployments: a Web application server inside the corporate rewall with a WAR le that omits proxy URLs. This becomes the proxy server. a Web application server outside the corporate rewall with a WAR le that species at least one port connection to the proxy server.

Deploy the Proxy Server


To deploy a proxy server, complete the following steps: 1. Use the Server Conguration wizard to create a new WAR le called bess.war. For more information, see Run the Server Conguration Wizard on page 39. 2. Deploy this WAR le on a Web application server that is located inside your corporate rewall. For more information, see Deploying the Servlet WAR File on page 54. 3. After you test the tracking servlets, update the SAS Digital Marketing server to use the tracking and Web publication tier. For more information, see Updating the Server on page 70.

80 ! Chapter 3: Conguring SAS Digital Marketing

4. In SAS Digital Marketing Studio, use the Servlet Conguration wizard to recongure the WAR le that contains the servlets to use HTTP proxy settings. Select Servlet Conguration from the Tools menu. Except for the HTTP proxy settings, click Next to use the exact settings of the WAR le that you deployed on the Web application server inside your corporate rewall.

To specify the port connections for the proxy server, complete the following steps: a) Click Add Proxy. b) Specify the URL for the proxy server in the Enter proxy URL window. This value is the URL address for the tracking and Web publication tier that you deployed on a Web application server inside your corporate rewall. c) Click OK. For more information, see Run the Servlet Conguration wizard on page 71. 5. After you nish the steps of the Servlet Conguration wizard, deploy the WAR le that contains the servlets to a Web application server that is located outside your corporate rewall.

Conguring a Proxy Server ! 81

6. Open the proxy servers Web application port between the tracking deployments that are inside and outside your corporate rewall. 7. In SAS Digital Marketing Studio, open the Server Conguration window by selecting Server Conguration from the Tools menu. Select Middle Tier Options, and specify the base URL for the tracking deployment that is located outside your corporate rewall. To verify that the tracking servlets work correctly, click Test.

82 ! Chapter 3: Conguring SAS Digital Marketing

8. Verify that your hosted Web resources and broadcast denitions access content on the middle tier. Use the Web tab on the Properties dialog box for a broadcast denition or hosted Web resource. To test a hosted Web resource, complete the following steps: a) In SAS Digital Marketing, select the Web Resources tab to locate a hosted resource. b) Open the HTML subfolder under the Samples folder. c) Select an HTML le and right-click to select Properties from the pop-up menu. d) Select the Web tab and click Test to verify that the SAS Digital Marketing server received the HTTP request from the middle tier.

For more information, see Viewing the Web Resources (Chapter 2, SAS Digital Marketing: Users Guide).

Conguring SAS Digital Marketing Web Studio ! 83

Conguring SAS Digital Marketing Web Studio

How to Congure the Web Application


The SAS Digital Marketing Conguration wizard automatically creates the WAR le that you need to use SAS Digital Marketing Web Studio. The conguration settings are stored in the sdm.war le. This le is located in the ROOT/deployments directory on the computer that was used to congure SAS Digital Marketing. After the WAR le is deployed, you can use the SAS Digital Marketing Web Studio client to automatically set the WebAppURL server property to the location of this deployment. This enables a SAS Digital Marketing Studio client to use the TinyMCE HTML editor to edit HTML content, to view visual reports, and to run advanced Web reports. For more information, see Integration Utils Server Properties on page 141. N OTE : You do not need SAS Digital Marketing installed on your computer to use SAS Digital Marketing Web Studio. However, the SAS Digital Marketing Web Studio client must have the ability to connect to a SAS Digital Marketing server.

Deploying the Web Studio WAR File


You must deploy the sdm.war le on a Web application server, such as Tomcat, WebLogic, or WebSphere, that is inside the corporate rewall. The steps to deploy the le are similar to those for conguring the tracking and Web publication tier. You use sdm rather than bess for the name of the Web application module in WebLogic or the context root in WebSphere. Tomcat automatically uses sdm as the Web application unless you renamed the sdm.war le. For more information, see Deploying the Servlet WAR File on page 54.

Updating the Server To Use Web Studio


You can use the Congure SAS Digital Marketing Server for Web Reporting page to quickly set the WebAppURL server property to use the URL for the deployment of the SAS Digital Marketing Web Studio. After the server is updated, you can select Run Visual Report from the Actions menu in SAS Digital Marketing to view a visual click-through report for an e-mail broadcast.

84 ! Chapter 3: Conguring SAS Digital Marketing

Congure the Web Studio Server


To update the server, complete the following steps: 1. Log on to SAS Digital Marketing Web Studio with administrative privileges (Level 4 permission). For more information, see Open Web Studio (Chapter 2, SAS Digital Marketing: Web Studio Users Guide). 2. Click on the toolbar.

3. Specify the location of the SAS Digital Marketing server. 4. Specify the user credentials to log on to the server. 5. Click Update to congure the server. 6. After you receive the message that SAS Digital Marketing server is successfully updated, click Close.

Implementing the Broadcast Scheduler ! 85

Implementing the Broadcast Scheduler


To schedule broadcasts in SAS Digital Marketing Web Studio, you must congure the SAS Digital Marketing server to allow scheduling through the SAS Digital Marketing client. For more information, see Scheduling Options on page 117. You must congure the SAS Digital Marketing server to enable Web Studio users to specify broadcast recipients by using one of the following methods: an uploaded recipient le a table a distribution list If you do not use one these methods to congure SAS Digital Marketing Web Studio, then the scheduling functionality is not available. N OTE : You can also congure a global data model to simplify the underlying structure of the data source for a broadcast. For more information, see Managing Global Data Models on page 166.

Schedule Broadcasts with an Uploaded Recipient File


The TempTable server properties enable you to execute from a le. If you set the TempTable server properties to a valid JDBC connection, then you can schedule to send a broadcast to a list of recipients in a specied le. The list of recipients in this le must be separated by a new line. For example, you might set the following server properties:
TempTableDriver=com.mysql.jdbc.Driver TempTableURI=jdbc:mysql://machine.na.sas.com:3306/ TempTableUser=validuserid TempTablePassword=validpassword TempTableBaseName=library.tablebase

In this example, SAS Digital Marketing checks the le for valid addresses as the le is uploaded to a temporary table with a base name of tablebase. The table is stored in the database that is dened by these server properties. For more information, see Properties for Executing from a File on page 143.

86 ! Chapter 3: Conguring SAS Digital Marketing

Schedule Broadcasts from a Table


You set the WebSelectionTable server properties to specify the location of a valid JDBC connection and library. Web Studio users schedule a broadcast transmission by selecting a table from the data base that is located in the specied library. For example, you might set the following server properties:
WebSelectionTableDriver=com.mysql.jdbc.Driver WebSelectionTableURI=jdbc:mysql://machine.na.sas.com:3306/ WebSelectionTableUser=validuserid WebSelectionTablePassword=validpassword WebSelectionTableLibrary=library

In this example, the scheduling functionality in SAS Digital Marketing Web Studio displays the list of tables in the library specied in the WebSelectionTableLibrary server property. You can then select the table that contains the list of broadcast recipients. For more information, see Properties for Executing from a Table on page 143.

Schedule Broadcasts Using a Distribution List


You can also use distribution lists to schedule the broadcast. If only distribution lists are dened on the server, then you see only the option to schedule to a distribution list. For more information about creating a distribution list, see Managing Distribution Lists on page 158.

Implementing the SAS Language Adapter


Requirements for the SAS Language Adapter
The SAS language adapter enables you to easily access SAS Digital Marketing data and broadcast denitions within SAS ETL processes. The adapter also eliminates the need to make separate connections to the different databases that store SAS Digital Marketing data. The SAS Digital Marketing server becomes the access point for all SAS Digital Marketing data. A user simply logs on to the SAS Digital Marketing server to retrieve the response data that is associated with a broadcast denition. For more information, see Overview of the SAS Language Adapter on page 190.

Implementing the SAS Language Adapter ! 87

The following software is required to use the SAS language adapter: Foundation SAS 9.1.3 SP4 on any supported platform a SAS Digital Marketing server SAS Digital Marketing Web Studio IOM workspace server (optional) Internet Explorer 6, Internet Explorer 7, or Mozilla Firefox N OTE : To generate SAS reports in an Asian language, install Foundation SAS to use UTF-8 encoding and set the locale of the SAS session to the Asian country. You can run your SAS jobs either in batch mode or by using an IOM workspace server. An IOM workspace server is recommended if your site has more than ve users generating reports simultaneously. If you choose to use the workspace server, then this server must be running. For information about how to congure the IOM workspace server, see the SAS 9.1.3 Integration Technologies Administrators Guide at http://support.sas.com/rnd/ itech/doc9/admin_oma/sasserver/iombridge/iom_quicko.html. For an example of a conguration le, see http://support.sas.com/rnd/itech/doc9/ admin_ldap/sasserver/iombridge/ldifsamp.html. SAS Digital Marketing ships with server properties that the site administrator can use to optimize the performance of your IOM sessions or batch sessions. For information about these properties, see Optimize Server Properties on page 144.

Congure the SAS Language Adapter


To run a SAS job in SAS Digital Marketing, complete the following steps: 1. Verify that the sdm.war le is deployed on a Web application server. For more information, see Conguring SAS Digital Marketing Web Studio on page 83. 2. If you want to execute SAS jobs on an IOM workspace server, start the workspace server. 3. Select Server Conguration from the Tools menu and select the SAS options node. 4. Use the Integrated Execution Context drop-down list to select how you want to run the SAS jobs from SAS Digital Marketing. If you run SAS jobs in batch mode, then select Batch SAS and type the path of the SAS executable in SAS Command Line box. If you run the SAS jobs on the IOM workspace server, then select Workspace Server and specify the name of the workspace server. You must also specify your username and password for that server.

88 ! Chapter 3: Conguring SAS Digital Marketing

5. Click Test SAS Connection to verify that the SAS connection works. N OTE : If you have registered SAS Digital Marketing as a Windows service and your SAS connection fails, then you might have to modify the properties of the service to specify the account and password that run the service. For more information, see Congure a Windows Service on page 95. 6. Select the Execute batch jobs periodically check box if you want to run the SAS job at a regular interval. You can specify the minutes between runs. 7. Customize the output from the SAS jobs. Use ODS Style to specify the style of the HTML output. Use Graph Device to specify the graphical output format. N OTE : If Java is selected as the graph device, then make sure that you apply the patches from SAS Notes SN-V9-017502 and SN-V9-017593 to Foundation SAS. For more information, see http://support.sas.com/techsup/search/sasnotes.html. N OTE : Depending on the graph device that you select, SAS Digital Marketing Web Studio users might need to install additional software to view the graphical output from SAS reports. For more information, see Requirements for Viewing SAS Reports (Chapter 2, SAS Digital Marketing: Web Studio Users Guide). 8. Click OK. You manage your SAS jobs from the SAS Job Editor. For more information, see Developing SAS Code on page 195.

Conguring SAS Information Delivery Portal

About SAS Information Delivery Portal


SAS Information Delivery Portal is a J2EE Web application that enables you to aggregate data from a variety of sources and present the data in a Web browser. For more information about SAS Information Delivery Portal, see the SAS Information Delivery Portal Help, which is available from within the product. For additional information, see the SAS Intelligence Platform: Web Application Administration Guide, which is available at http://support.sas.com/documentation/configuration/913admin.html.

Add a Link to SAS Digital Marketing ! 89

Add a Link to SAS Digital Marketing


To use SAS Digital Marketing from SAS Information Delivery Portal, you create a portal content item that is accessed by using a URL. To create a new link and add it to a collection portlet, complete the following steps: 1. Create a Level 1 user account on the SAS Digital Marketing server. You use this account to view reports for the broadcast denitions on the SAS Digital Marketing server. In SAS Digital Marketing Studio, select Server Conguration from the Tools menu. Then select Security Options from the Server node and click Add to specify the user credentials. For more information, see Security Options on page 128. 2. Verify that the sdm.war le has been deployed on a Web server such as Tomcat, WebLogic, or WebSphere. For more information, see Conguring SAS Digital Marketing Web Studio on page 83. 3. Log on to SAS Information Delivery Portal as a Content Administrator. 4. Select Create New Content from the Options menu.

90 ! Chapter 3: Conguring SAS Digital Marketing

5. Select Link and click Create from the Create New Content page.

6. Create the link that displays the broadcast groups and broadcast denitions. You must specify a name for the link and a URL. The description of the link and the keywords are optional. For the URL, specify following the syntax:
http://deployedhost:port/sdm/weblist.jsp?noheader &server=server&user=user_id&password=pw

where deployedhost is the location of server that is running the SAS Digital Marketing Web Studio deployment. For more information, see Conguring SAS Digital Marketing Web Studio on page 83. server is the location of the SAS Digital Marketing server that you use to store the broadcasts denitions. user and password are the user credentials to log on to the SAS Digital Marketing server. Use the Level 1 user account that you created.

Add a Link to SAS Digital Marketing ! 91

7. Specify the groups of users that have access to the reports. Select PUBLIC from the Location (group) drop-down list and click Create.

8. Verify that the link is available. Click Done twice, and click Search on the SAS Portal home page. Then specify the link name in the Keywords box, select Link in the Content Types box, and click Search to display the link.

92 ! Chapter 3: Conguring SAS Digital Marketing

9. Create a bookmark. Click

and select Bookmark from the pop-up menu.

10. Log on to SAS Information Delivery Portal to open your personal portal. The link is now available in the Bookmarks list.

Validating Your Conguration ! 93

11. Click SAS Digital Marketing Reports to use Web Studio to create broadcast reports. For more information, see Monitoring Broadcasts in Web Studio (Chapter 2, SAS Digital Marketing: Web Studio Users Guide).

Validating Your Conguration

Create a Sample Data Table


When you edit, preview, or schedule a sample broadcast denition, SAS Digital Marketing automatically selects the sample data table in the specied library as the data source table. To create a sample data source table, complete the following steps: 1. Start a SAS Digital Marketing Studio client, and connect to the SAS Digital Marketing server. For more information, see Running SAS Digital Marketing (Chapter 2, SAS Digital Marketing: Users Guide).

94 ! Chapter 3: Conguring SAS Digital Marketing

2. Select Create Sample Table from the Tools menu. The Create Sample Table dialog box opens.

3. Use the drop-down list to select the JDBC connection. If you want to use a different table connection, then use the Connections drop-down list to select the connection denition. 4. Select the location of the library, and enter the table name in the Table box. N OTE : The examples in the documentation use the EXAMPLES library for the location of the data tables. 5. Click OK. 6. If the data source table already exists, then conrm that you want to replace it. You can also create the sample data table by running the CONTACT_DETAILS.SAS program in the ROOT/samples directory. Modify the program to include a LIBNAME statement that uses examples as the libref. Then submit the program in a SAS session that runs on a SAS/SHARE server. For more information about how to start a SAS/SHARE server, see the SAS SHARE Users Guide.

Preview a Sample Broadcast


SAS Digital Marketing provides sample broadcast denitions in the ROOT/broadcast/samples directory that you can use to validate your SAS Digital Marketing conguration settings. These broadcast denitions use the sample data source table that is created selecting Create Sample Table from the Tools menu.

Congure a Windows Service ! 95

To preview a sample broadcast denition, complete the following steps: 1. Start a SAS Digital Marketing Studio client, and connect to the SAS Digital Marketing server. For more information, see Running SAS Digital Marketing (Chapter 2, SAS Digital Marketing: Users Guide). 2. Select the AML Report - January 2004 broadcast denition in the E-mail folder under the Broadcasts folder. 3. Select Preview from the Actions menu or right-click to select Preview from the pop-up menu. The Preview Broadcast wizard opens. 4. Click Next to use the sample data source table. 5. Specify an e-mail address to receive the sample broadcast. To set the number of entries in the data source table that SAS Digital Marketing uses to create e-mail messages, change the value in the Sample size box. 6. Click Finish to close the wizard and send the broadcast. 7. Select the Log tab to verify that the broadcast transmission was sent. Check the Inbox for the e-mail address of the preview broadcast to verify that e-mail messages were received.

Congure a Windows Service


You can register SAS Digital Marketing as a service under the Windows environment. Then the SAS Digital Marketing server and grid nodes automatically start when your computer starts. The service is set up as a local system account that runs the application in the background. The nal step in the SAS Digital Marketing Conguration wizard provides an option to congure a service that starts the server. To manually congure the service, complete the following steps: 1. Install and congure SAS Digital Marketing as described in Installing a SAS Digital Marketing Server on page 26. Then validate your SAS Digital Marketing installation and the conguration settings. For more information, see Validating Your Conguration on page 93. 2. Verify that the service batch les properly start the server or grid node. You can run the sem.bat le or the semgridnode.bat le. Both les are located in ROOT directory. 3. After you have veried that the SAS Digital Marketing server is running, start a SAS Digital Marketing client as described in Running SAS Digital Marketing (Chapter 2, SAS Digital Marketing: Users Guide). Then stop the server by selecting stop from the Actions menu, or click stop on the toolbar.

96 ! Chapter 3: Conguring SAS Digital Marketing

4. Register the batch les as a service. Run either the SEMInstallApp-NT.bat le or the SEMGridNodeInstallApp-NT.bat le. 5. Restart your computer to start the service. N OTE : To unregister the service, run either the SEMUnInstallApp-NT.bat le or the SEMGrideNodeUninstallApp-NT.bat le. The SAS Digital Marketing server or grid node will no longer start when the computer initializes. For more information about troubleshooting problems, see the Java Service Wrapper documentation at http://wrapper.tanukisoftware.org/doc/english/index.html.

Chapter 4

Customizing the Server


Contents
Overview of Customizing the Server . . . . . . . Using the Server Conguration Window . . . . . Open the Server Conguration Window . . Server Conguration Window Components E-mail Reply Options . . . . . . . . . . . . . . . About E-mail Reply Options . . . . . . . . Conguring E-mail Replies . . . . . . . . JMS Conguration Options . . . . . . . . . . . . About JMS Conguration Options . . . . . Conguring JMS . . . . . . . . . . . . . . SAS Options . . . . . . . . . . . . . . . . . . . About SAS Options . . . . . . . . . . . . Conguring SAS . . . . . . . . . . . . . . ASP Denition Manager . . . . . . . . . . . . . About the ASP Denition Manager . . . . Conguring an ASP Denition . . . . . . Distribution List Manager . . . . . . . . . . . . About the Distribution List Manager . . . Conguring a Distribution List . . . . . . E-mail Options . . . . . . . . . . . . . . . . . . About E-mail Options . . . . . . . . . . . Conguring E-mail Broadcasts . . . . . . Specifying Grid Nodes . . . . . . . . . . . Logging Options . . . . . . . . . . . . . . . . . About Logging Options . . . . . . . . . . Customizing the Audit Records . . . . . . Dene the Audit Table . . . . . . . . . . . Send Options . . . . . . . . . . . . . . . . . . . About Send Options . . . . . . . . . . . . Conguring the Broadcast Transmission . Conguring SMTP E-mail Servers . . . . Performance Options . . . . . . . . . . . . . . . About Performance Options . . . . . . . . Conguring the Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 99 99 99 101 101 101 102 102 102 103 103 104 105 105 105 106 106 106 107 107 107 108 109 109 110 111 112 112 112 113 115 115 115

98 ! Chapter 4: Customizing the Server

Throttled Domain Manager . . . . . . . . . . . . . . . About the Throttled Domain Manager . . . . . . Conguring Throttled Domains . . . . . . . . . Scheduling Options . . . . . . . . . . . . . . . . . . . About Scheduling Options . . . . . . . . . . . . Conguring the Broadcast Scheduler . . . . . . Using a Notication List . . . . . . . . . . . . . WAP Integration Options . . . . . . . . . . . . . . . . About WAP Integration Options . . . . . . . . . Conguring the WAP Integration . . . . . . . . Web Services . . . . . . . . . . . . . . . . . . . . . . About Web Services Specications . . . . . . . Conguring Web Services Specications . . . . Contact History Options . . . . . . . . . . . . . . . . About Contact History Options . . . . . . . . . Conguring Contact History . . . . . . . . . . . Response History Options . . . . . . . . . . . . . . . About Response History Options . . . . . . . . Conguring Response History . . . . . . . . . . Connection Options . . . . . . . . . . . . . . . . . . . About Connection Options . . . . . . . . . . . . Conguring the Connections . . . . . . . . . . . Middle Tier Options . . . . . . . . . . . . . . . . . . About Middle Tier Options . . . . . . . . . . . Conguring the Middle Tier . . . . . . . . . . . Advanced Server Properties . . . . . . . . . . . . . . About Advanced Server Properties . . . . . . . Conguring the Advanced Server Properties . . Viewing the Advanced Server Properties Settings Security Options . . . . . . . . . . . . . . . . . . . . About Security Options . . . . . . . . . . . . . Types of Security . . . . . . . . . . . . . . . . . Basic Security Mode . . . . . . . . . . . . . . . Metadata Security Mode . . . . . . . . . . . . . User Group Settings . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

116 116 117 117 117 118 118 119 119 119 120 120 120 121 121 122 122 122 123 124 124 124 125 125 125 126 126 126 127 128 128 128 129 131 132

Overview of Customizing the Server ! 99

Overview of Customizing the Server


You can use the Server Conguration window to customize the SAS Digital Marketing server. The server conguration affects the creation, transmission, and analysis of broadcasts. It also affects control of SAS Marketing Automation integration, JDBC connections, the location of the middle tier, and server access. SAS Digital Marketing stores server conguration settings in the config.xml le that is in the ROOT/config directory on the server that you are connected to. You should not edit this le directly.

Using the Server Conguration Window

Open the Server Conguration Window


To open the Server Conguration window, start a SAS Digital Marketing Studio client and connect to the SAS Digital Marketing server as an administrator. In SAS Digital Marketing Studio, select Server Conguration from the Tools menu.

Server Conguration Window Components


The left pane of the Server Conguration window displays a hierarchical view of the server settings that are categorized by the function of an option. To examine or change a server setting, click one of the following options: Broadcast Analysis E-mail Reply Options JMS Conguration Options SAS Options Broadcast Denition ASP Denition Manager Distribution List Manager E-mail Options

100 ! Chapter 4: Customizing the Server

Broadcast Transmission Logging Options Send Options Performance Options Throttled Domain Manager Scheduling Options WAP Integration Options Customer Intelligence Web Services Contact History Options Response History Options Server Connection Options Middle Tier Options Advanced Server Properties Security Opitons

Conguring E-mail Replies ! 101

E-mail Reply Options

About E-mail Reply Options


You use E-mail Reply options to specify how to process broadcast replies. You must rst provide a POP3 or an IMAP e-mail account and a JDBC provider to record the reply classication. After you provide these settings, you can congure the server to periodically download the replies and classify them. To view these options, select Tools!Server Conguration!E-mail Reply Options.

Conguring E-mail Replies


To automatically process replies, select Automatically check for and process e-mail replies. You can create two types of replies: correlated and uncorrelated. A correlated reply uses a unique e-mail address for each broadcast denition so that the broadcast is automatically connected to the reply. An uncorrelated reply uses the same e-mail address for every broadcast. For more information, see Working with the E-mail Reply Manager on page 235 and Monitoring Replies on page 232. To congure the e-mail reply account, click Congure Reply Manager. For more information, see Conguring the E-mail Reply Manager on page 236.

102 ! Chapter 4: Customizing the Server

JMS Conguration Options

About JMS Conguration Options


You use the JMS conguration options to congure the SAS Digital Marketing server to handle replies in real time. The Java message service (JMS) is an enterprise API that asynchronously sends and receives messages. A JMS provider runs as a service on a Web application server, such as BEA WebLogic. Then JMS queues and JMS topic are set up to provide real-time broadcast reply and response processing. To view the JMS conguration options, select Tools!Server Conguration!JMS Conguration Options.

Conguring JMS
To congure the SAS Digital Marketing server to use JMS, select the check box and specify the JMS provider settings. For more information, see Conguring a JMS Provider on page 269 and Using the JMS Provider on page 281.

About SAS Options ! 103

SAS Options

About SAS Options


You use the SAS options to specify the options to run the SAS System with SAS Digital Marketing. You must congure these options to use the SAS language adapter. The SAS language adapter enables you to access within SAS ETL processes the data and broadcast denitions from SAS Digital Marketing Web Studio. N OTE : Before you can run a SAS job and reports, you must deploy SAS Digital Marketing Web Studio and set the WebAppURL server property. For more information, see Conguring SAS Digital Marketing Web Studio on page 83. To view the SAS options, select Tools!Server Conguration!SAS Options.

104 ! Chapter 4: Customizing the Server

Conguring SAS
Use the Integrated Execution Context drop-down list to select how you want to run the SAS jobs from SAS Digital Marketing. To verify that you have entered this information correctly and that the SAS connection works, click Test SAS Connection. If you run SAS jobs in batch mode, then select Batch SAS and type the path of the SAS executable in SAS Command Line box. When you install Foundation SAS and SAS Digital Marketing on the same server, the default location of the Foundation SAS installation automatically appears in the SAS Command Line box. If you run the SAS jobs on the IOM workspace server, then select Workspace Server and specify the name of the workspace server. You must also specify your username and password for that server. An IOM workspace server is recommended if your site has more than ve users that generate reports simultaneously. If you use the IOM workspace server, then this server must be running. N OTE : To generate SAS reports in multiple languages, install Foundation SAS to use UTF-8 encoding. For more information, see Implementing the SAS Language Adapter on page 86. Select the Execute batch jobs periodically check box if you want to run the SAS job at a regular interval. You can specify the minutes between runs. By default, batch jobs are run every 60 minutes. To customize the output from the SAS jobs, you can use the following options: ODS Style species the style of the HTML output. Graph Device species the graphical output format to use for any graphs that appear in the output. If your Web browser is Mozilla Firefox, then you should select Java as the graphical output format. The ActiveX driver is not supported. When you select ActiveX as the graph device, each SAS Digital Marketing client must install the SAS/GRAPH control for ActiveX. To install the ActiveX drive, use the support.sas.com Web site to download the SAS/GRAPH driver. Currently, the URL address is
http://www.sas.com/apps/demosdownloads/setupcat.jsp?cat=SAS%2FGRAPH+Software

When you select Java as the graph device, make sure that you apply the patches from SAS Notes SN-V9-017502 and SN-V9-017593 to Foundation SAS. For more information, see http://support.sas.com/techsup/search/sasnotes.html.

Conguring an ASP Denition ! 105

ASP Denition Manager

About the ASP Denition Manager


You use the ASP Dention Manager to create the metadata for an ASP broadcast. An ASP broadcast interfaces with an application service provider (ASP) to deliver SMS, MMS, or WAP Push messages to handheld wireless devices using phone numbers that are stored in a data source table. The ASP broadcast denition connects to mobile networks by using an ASP that provides an HTTP post interface. SAS Digital Marketing provides a generic interface to use the API specications of the ASP. You congure the ASP broadcast denition to post the appropriate requests that send SMS, MMS, or WAP Push messages. To view the ASP denitions, select Tools!Server Conguration! ASP Denition Manager.

Conguring an ASP Denition


To create a new ASP denition, click Add. To delete an ASP denition, select the name and click Remove. To modify an ASP denition, select the name and click Edit. To copy an ASP denition, click Duplicate and specify a new name. When you click Edit or Add, the ASP Denition Properties dialog box opens. For more information, see Managing ASP Denitions on page 170.

106 ! Chapter 4: Customizing the Server

Distribution List Manager

About the Distribution List Manager


You use the Distribution List Manger to simplify how a user selects the data source tables and variables. SAS Digital Marketing uses this information in the broadcast denition to customize messages and track broadcast responses. A distribution list contains information to assign the data source tables and variables. When you dene, preview, or schedule a broadcast, you can use distribution lists to create global data models and limit the data source tables that a user selects. To view the distribution lists, select Tools!Server Conguration!Distribution List Manager.

Conguring a Distribution List


To create a new distribution list, click Add. The New Distribution List wizard opens. To delete a distribution list, select the name and click Remove. To modify a distribution list, select the name and click Edit. The distribution list Properties dialog box opens. For more information, see Managing Distribution Lists on page 158.

Conguring E-mail Broadcasts ! 107

E-mail Options

About E-mail Options


You use the e-mail options to change the settings to preview and execute e-mail broadcasts. You can also specify how to distribute the broadcast execution across multiple servers. To view the e-mail options, select Tools!Server Conguration!E-mail Options.

Conguring E-mail Broadcasts


Use Number of table observations to use for previewing to specify the default number of e-mails that SAS Digital Marketing sends when you preview an e-mail broadcast. SAS Digital Marketing starts from the top entry in the recipient data source table to create the e-mails that are sent. Use Preview timeout in seconds to specify the amount of time in seconds that SAS Digital Marketing uses to create an e-mail before the preview transmission has a timeout.

108 ! Chapter 4: Customizing the Server

Select Identify preview messages in the subject line to add a prex to the e-mail subject line. The prex includes the word PREVIEW, the message number, and content type in the e-mail subject line. Select Prevent duplicate e-mails per broadcast to lter out all duplicate e-mail addresses when you send a broadcast transmission. You must select all for the e-mail audit level and select Write audit records to a JDBC table on the Logging tab. SAS Digital Marketing records when a recipient is sent e-mail and examines the audit table before e-mail is sent from another recipient table. If you re-execute a broadcast and use the same recipient table, then SAS Digital Marketing does not send a duplicate e-mail. N OTE : If you select the Prevent duplicate e-mails per broadcast option, then SAS Digital Marketing sends only one broadcast per e-mail address. Therefore, transaction broadcasts work only once for each e-mail address. You can override this duplication policy by setting the !EM_PREVENT_DUPS! directive to true. For more information, see Using E-mail Directives (Appendix B, SAS Digital Marketing Users Guide).

Specifying Grid Nodes


The Available Grid Nodes for Distributed Execution table lists the nodes that SAS Digital Marketing can use for distributive execution of broadcasts. Use Number of messages to generate per thread to specify the number of messages that SAS Digital Marketing distributes to each node on the grid network when a thread is requested. To specify a new grid node, click Add. To delete a grid node, select the host name and click Remove. To update a grid node, select the server name and click Edit. When you click Edit or Add, a dialog box opens. Specify the name of the grid node in the dialog box. For more information, see Conguring a Grid Node on page 256.

About Logging Options ! 109

Logging Options

About Logging Options


You use the Logging options to specify the types of audit records that SAS Digital Marketing creates for the broadcast transmissions. You can also specify the level of detail in records that SAS Digital Marketing displays in the log. To remove the duplicate broadcasts, you must set the options to create an audit table and record all the audit events for every individual broadcast transmission. If you plan to drill down through the reports in SAS Digital Marketing Web Studio, then you should also record all the audit events. You can view audit records in the Query Broadcast Response window. For more information, see Viewing Broadcast Response (Chapter 4, SAS Digital Marketing: Users Guide). To view the Logging options, select Tools!Server Conguration!Logging Options.

110 ! Chapter 4: Customizing the Server

Customizing the Audit Records


You can specify the information that SAS Digital Marketing records in the audit table and the audit log. Use the Audit level drop-down list to select the following records: none suppresses audit records. all creates audit records for every individual broadcast transmission. failures creates audit records only for broadcast transmission failures. Select Write audit records to a table to write the records to an audit table and to any congured JMS providers. To create a new table each time you execute a broadcast, select Create a unique audit table per broadcast. SAS Digital Marketing appends a timestamp to the audit table name that enables you to easily identify when the broadcast was executed. To specify the audit table name, click Congure Audit Table. For more information, see Dene the Audit Table on page 111. To control the amount of information that appears on the Log tab, use the Server log level dropdown list. SAS Digital Marketing displays the following information: Level 1 includes only the operations. Level 2 includes the operation and user. Level 3 includes the operation, user, and server method. Select Display server log in the server console window if you want the log information to appear in this window. The log information is recorded in the ROOT/wrapper.log le.

Dene the Audit Table ! 111

Dene the Audit Table


To identify the audit table, click Congure Audit Table. The Congure Audit Table dialog box opens.

To specify information about the audit table, complete the following steps: 1. Select the folder for the audit table. 2. Select an existing table or enter the name of the table in the Table box. SAS Digital Marketing automatically creates the table if it is not found in the folder. 3. Click OK to store your settings. Use the Connections drop-down list to use a different table connection. N OTE : In order for the SAS Digital Marketing clients to create reports that access the audit table, you must specify an explicit host in the JDBC connection denition. Therefore, do not specify a JDBC connection that has localhost as the Universal Resource Identier (URI).

112 ! Chapter 4: Customizing the Server

Send Options

About Send Options


You use the Send options to set the default values for a broadcast transmission. You can specify the number of times that SAS Digital Marketing tries to send a broadcast and whether to simulate the broadcast transmission. You can also test your outgoing SMTP mail server and congure additional e-mail servers. To view the Send options, select Tools!Server Conguration!Send Options.

Conguring the Broadcast Transmission


To change the number of attempts that SAS Digital Marketing makes to send a broadcast, specify a value in the Number of send retries box. If you want to test the performance of a broadcast transmission without actually sending the broadcast, then select Simulate transmissions with a time delay. Use Simulated send delay (in milliseconds) to specify the amount of time in milliseconds that SAS Digital Marketing waits after an individual message is rendered. Select Automatically apply opt-out table during send processing to use the opt-out table to lter the broadcast transmission. When SAS Digital Marketing records an address in the opt-out table, no broadcast e-mails are sent to this address. SAS Digital Marketing records addresses in the opt-

Conguring SMTP E-mail Servers ! 113

out table when you use the Insert HTML opt-out link and Insert TEXT opt-out link options in the Insert other expressions dialog box to embed the opt-out servlet in the broadcast message. Addresses are also recorded in the opt-out table when you set a Reply Manager rule threshold. For more information, see Response Tracking (Chapter 7, SAS Digital Marketing: Users Guide). For non-Asian languages, use 8-bit as the value for Default mime transfer encoding. Some Asian languages expect 7-bit mime transfer encoding or another value. For more information, see MIME (RFC 2045). To override the encoding on a per e-mail basis, use the !EM_ENCODING! directive. For more information, see Using E-mail Directives (Appendix B, SAS Digital Marketing Users Guide).

Conguring SMTP E-mail Servers


SAS Digital Marketing uses the servers in the SMTP E-mail Servers table to send the broadcast. You must specify at least one outgoing e-mail server. To dene a new e-mail server, click Add. To delete an e-mail server, select the server name and click Remove. To update an e-mail server, select the server name and click Edit. When you add or update an e-mail server, the SMTP Server Settings dialog box opens. N OTE : The e-mail servers that you use to preview your broadcasts or to send reports must accept partial e-mail addresses.

General Options
Use the General tab to enter the name of your server and the port that the e-mail server uses on that host. If the server is congured to require authentication, then select Server Requires Authentication and enter the user credentials.

114 ! Chapter 4: Customizing the Server

Advanced Options
Use the Advanced tab to select the SMTP driver from the SMTP Provider drop-down list. You can congure SAS Digital Marketing to use a third-party JavaMail driver such as the PowerMTA driver, or you can specify another third-party driver. You can also click Add to specify property and value pairs that SAS Digital Marketing uses to send e-mails on this e-mail server.

If you have multiple outgoing servers, then SAS Digital Marketing rotates the broadcast transmission between the e-mail servers. By default, preview broadcasts are sent to the same server as the broadcasts that are currently executing. To improve performance, your site administrator can use the PreviewSMTPServer server property to specify a different SMTP server to process the preview broadcast. For more information, see Properties for Specifying a Different SMTP E-mail Server on page 147.

Conguring the Performance ! 115

Performance Options

About Performance Options


You use the Performance options to set the maximum number of threads that SAS Digital Marketing spawns in order to optimize the broadcast transmission. By default, the broadcast transmission runs in multiple threads for efciency. To view the Performance options, select Tools!Server Conguration!Performance Options.

Conguring the Performance


To improve the e-mail broadcast transmissions, specify the number of threads. You can also specify the number of asynchronous threads that SAS Digital Marketing uses to deliver spooled SMTP messages to an e-mail server. For more information, see Adjusting the SMTP Spooler on page 263.

116 ! Chapter 4: Customizing the Server

Throttled Domain Manager

About the Throttled Domain Manager


You use the Throttled Domain Manager to control the maximum rate at which SAS Digital Marketing delivers e-mail to specic domains. Larger e-mail providers, such as AOL, MSN, or Yahoo, implement policies that identify e-mail as spam based on the rate at which messages are sent from an e-mail domain address. If you send a large volume of e-mail on one connection or quickly resend multiple undelivered e-mail, then an e-mail provider might deny service and damage the effectiveness of your broadcasts. When you send a broadcast to a throttled domain, SAS Digital Marketing processes messages in the ROOT/pending directory. If you use an SMTP spooler, then SAS Digital Marketing uses two directories. The ROOT/spool directory contains messages that the STMP spooler can rapidly send. The ROOT/pending directory contains messages that are not sent because of the restriction on the maximum delivery rate. If the SAS Digital Marketing server stops broadcast transmission, then the throttled messages are still available to send. SAS Digital Marketing automatically resumes broadcast transmission after the server restarts. N OTE : Most high performance Mail Transfer Agents (MTA), like PowerMTA, automatically implement domain throttling. For high volume implementations, such as a daily e-mail transmission rate over one million, you might consider using throttling at the MTA level. To view the throttled domains, select Tools!Server Conguration!Throttled Domain Manager.

About Scheduling Options ! 117

Conguring Throttled Domains


By default, the throttled domain settings for aol.com, gmail.com, hotmail.com and yahoo.com are based on values that SAS has used to send broadcast transmissions. The Throttled Domain Manager enables you to add domains and specify the maximum number of messages to deliver per minute. To dene a new throttled domain, click Add, specify the name, and click OK. SAS Digital Marketing automatically sets the maximum delivery rate to 120 messages per minute. To change the delivery rate, select the name and enter a value in the Maximum column. To delete a throttled domain, select the name and click Remove.

Scheduling Options

About Scheduling Options


You use the Scheduling options to congure the broadcast scheduler and create a notication list that SAS Digital Marketing uses to send messages about broadcast transmissions. N OTE : Some platform-specic schedulers do not support a daily, weekly, or monthly schedules for the execution of future tasks. To view the Scheduling options, select Tools!Server Conguration!Scheduling Options.

118 ! Chapter 4: Customizing the Server

Conguring the Broadcast Scheduler


If the SAS Digital Marketing server is run under Windows, then you can specify a user account that Windows uses to execute a scheduled broadcast. A user account is not required when a Windows administrator starts the SAS Digital Marketing server. If you use a user account to schedule broadcasts, then this user must have administrator permissions; otherwise, the broadcast transmission will fail. The Windows Task Scheduler uses this account to log on to the computer and run the task that executes the broadcast. N OTE : If you specify a password with an expiration date, then you must remember to update the Windows system account for scheduling when the password changes.

Using a Notication List


Notication messages are sent to the e-mail addresses in the notication list when the server schedules execution, starts execution, cancels execution, or nishes execution of a broadcast denition. The CCAdmin server operation also instructs the server to send one proof copy of the broadcast content to the notication list when a broadcast starts to execute.

Create a Notication List


To create the notication list, complete the following steps: 1. Click New. 2. Enter a valid e-mail address for the scheduling notication. 3. Click OK. To revise the notication list, select an e-mail address. Use the check boxes to specify the types of scheduling events (add, start, nish, cancel, and remove) that generate a scheduling notication. By default, every e-mail address receives notication of each scheduling event. To edit the e-mail address, click Modify. To remove the e-mail address from the list, click Remove.

Conguring the WAP Integration ! 119

WAP Integration Options

About WAP Integration Options


You use the WAP integration options to set a default Wireless Application Protocol (WAP) Integration broadcast. SAS Digital Marketing uses the WAP URL address in an ASP broadcast denition to deliver the mobile HTML content for the multichannel broadcast. To view the WAP integration options, select Tools!Server Conguration!WAP Integration Options.

Conguring the WAP Integration


SAS Digital Marketing lists the ASP broadcast denitions that include at least one parameter with a WAP URL address. Select the name of an ASP broadcast denition. To change the WAP integration broadcast for an individual multichannel broadcast, use the WAP tab in the Broadcast Properties dialog box. For more information, see Managing WAP Integration Broadcasts on page 178 and WAP Properties (Chapter 4, SAS Digital Marketing: Users Guide).

120 ! Chapter 4: Customizing the Server

Web Services

About Web Services Specications


You use the Web Services to specify the connection parameters for the Web application server that SAS Customer Intelligence software uses to integrate with SAS Digital Marketing. The Web services specications are used by the SAS Digital Marketing server to locate the recipient list when a CI export denition is used to create a broadcast denition. The SAS Digital Marketing server also uses these settings to send contact history, response history, and reply history to SAS Customer Intelligence software when a broadcast denition that uses a CI export denition executes. To view the Web services specications, select Tools!Server Conguration!Web Services.

Conguring Web Services Specications


Use CI Mid-tier URL to specify the location of the middle tier. Enter the URL address for the Web application server. Use CI User name and CI Password to enter the user credentials. To verify that the connection works correctly, click Test.

About Contact History Options ! 121

Contact History Options

About Contact History Options


You use the Contact History options to specify broadcast transmission events that the SAS Digital Marketing server sends to SAS Customer Intelligence software. When a broadcast denition that uses a CI export denition executes and is unsuccessful, SAS Digital Marketing records the event in the Audit table. The SAS Digital Marketing server periodically examines this table for new records and transmits specic events as a failed contact. To view the Contact History options, select Tools!Server Conguration!Contact History Options.

122 ! Chapter 4: Customizing the Server

Conguring Contact History


Use the check boxes to select the events that you want recorded as a failed contact. SAS Digital Marketing examines the Status column in the Audit table to track the following information: when status is duplicate, records duplicated e-mail addresses as a failed contact when status is invalid, records invalid e-mail addresses as a failed contact when status is abort, records aborted or failed e-mail sent as a failed contact when status is opt out, records elimination through opt out list as a failed contact when status is dynamic abort, records elimination through XSL template conditional logic as a failed contact. N OTE : To send these events to SAS Customer Intelligence software, set the audit level to all and store the records in an audit table. For more information, see Logging Options on page 109.

Response History Options

About Response History Options


You use the Response history options to specify the broadcast response events that the SAS Digital Marketing server sends to SAS Customer Intelligence software. When a broadcast denition that uses a CI export denition executes, the tracking servlets record responses in the Response table. The SAS Digital Marketing server periodically examines this table for new records and transmits the response history.

Conguring Response History ! 123

To view the Response History options, select Tools!Server Conguration!Response history Options.

Conguring Response History


Use the check boxes to select the events that you want recorded as a response. SAS Digital Marketing examines the Bessevent column in the Response table to track the following information: for an open event, records tracked view events as a response for a click event, records tracked click events as a response

124 ! Chapter 4: Customizing the Server

Connection Options

About Connection Options


You use the Connection options to create or modify the JDBC connections for the data source tables. To open the Connection Denitions dialog box, select Tools!Server Conguration!Connection Options.

Conguring the Connections


To modify a JDBC connection, select the table name. Use the text boxes to change the driver, Universal Resource Identier (URI), user ID, and password that SAS Digital Marketing uses to connect to a JDBC provider. For more information, see Conguring JDBC Data Providers on page 222.

Conguring the Middle Tier ! 125

Middle Tier Options

About Middle Tier Options


You use the Middle Tier options to specify the location of the tracking and Web publication tier that has been deployed on a Web application server. Java servlets monitor the broadcast response, process multichannel broadcasts, host broadcast content, and manage Web resources. To view the Middle Tier options, select Tools!Server Conguration!Middle Tier Options.

Conguring the Middle Tier


To specify the location of the middle tier, enter the base URL address for the Web application server. To verify that the tracking servlets work correctly, click Test. N OTE : To run the wizard that enables you to customize the WAR le that contains the servlets, select Servlet Conguration from the Tools menu. For more information, see Conguring the Tracking and Web Publication Tier on page 54.

126 ! Chapter 4: Customizing the Server

Advanced Server Properties

About Advanced Server Properties


You use the server properties on the Advanced Server Properties tab to customize the SAS Digital Marketing application for your site. These properties should be set only by an advanced user, such as your site administrator. To view the Advanced Server Properties tab, select Tools!Server Conguration!Advanced Server Properties.

Conguring the Advanced Server Properties


The server properties are categorized into groups. You can use the Displayed Group drop-down list to select the group of properties to display. SAS Digital Marketing sets as a preference the last group that you select. The next time that you view the table, the last group that you selected is displayed by default. To sort the server properties by group, click the heading in the Group column. By default, the server properties appear alphabetically by name, without considering the alphanumeric case of the server property name. If you sort the name in ascending order, then a server property that starts with a lowercase character appears at the bottom of the table. Conversely, if you sort the name in

Viewing the Advanced Server Properties Settings ! 127

descending order, then a server property that starts with a lowercase character appears at the top of the table. Therefore, when you add a server property that does not start with an uppercase character, it appears either at the bottom or the top of the table. The Set column indicates when a server property has been set. To congure a server property, assign a value to the Value column and select the check box in the Set column. If you decide not to use a server property, then delete the entry from the Value column. For a complete description of each server property, see Overview of Advanced Server Properties on page 133. N OTE : You can also use the ebtool command to set the server properties in batch mode. For more information, Using Batch Mode (Chapter 2, SAS Digital Marketing: Users Guide).

Add a Server Property


To include additional server properties in the Server Conguration window, complete the following steps: 1. Right-click a row in the Advanced Server Properties tab. 2. From the pop-up menu, select Add. The Add Server Property dialog box opens. 3. In the New Property Name box, specify the name of the server property. Click OK. This property is not assigned to a group and appears at the top of the Advanced Server Properties tab. You can set this property by typing a value in the Value column.

Delete a Server Property


To reset the value of a server property to its default value, complete the following steps: 1. Right-click a row in the Advanced Server Properties tab. 2. From the pop-up menu, select Delete. A dialog box prompts you to conrm this deletion. Click Yes. This property is deleted from the Advanced Server Properties tab. If you deleted a server property that shipped with SAS Digital Marketing, then the next time you open the Server Conguration window, the server property is again displayed. However, it is reset to its default value. If you deleted a server property that you created, then this server property is permanently deleted.

Viewing the Advanced Server Properties Settings


You can also view the settings for the active server properties from the Current Server Properties section in the About SAS Digital Marketing dialog box. To open the About SAS Digital Marketing dialog box, select About SAS Digital Marketing from the Help menu.

128 ! Chapter 4: Customizing the Server

Security Options

About Security Options


You use the Security options to control how users access SAS Digital Marketing and to specify the proxy settings for your site. If a rewall is used while SAS Digital Marketing is running, then you must use an Internet proxy and specify your proxy and the port number. To view the Security options, select Tools!Server Conguration!Security Options.

Types of Security
SAS Digital Marketing provides different levels of functionality-based security modes and the user credentials. The following types of security modes are available: None does not require user credentials to log on to the server. All users have administrative privileges. Basic requires user credentials to log on to the server. SAS Digital Marketing authenticates each user. Metadata requires user credentials to log on to the server. A metadata server authenticates each user.

Basic Security Mode ! 129

The following levels of user authorization are available: Level 1 can view broadcasts, Web resources, or RSS content, preview broadcasts, and run broadcast reports but cannot create or modify broadcasts, resources or feeds, send broadcasts, or stop the server. can create or modify broadcasts, Web resources, or RSS content, preview broadcasts, and run broadcast reports but cannot create RSS feeds, send broadcast transmissions, or stop the server. can create or modify broadcasts, Web resources, or RSS content, preview broadcasts, run broadcast reports, and send or stop broadcasts transmissions, but cannot create RSS feeds or stop the server. can create, view, preview, and send or stop broadcast transmissions as well as stop, pause, and resume the server. This user can congure the server, the Java servlets, security for distribution lists, groups, and RSS feeds, the Reply Manager, or the JDBC connections and create or modify global data models, SAS reports about the broadcasts, or RSS feeds.

Level 2

Level 3

Level 4

N OTE : When you use a metadata server to authenticate user credentials, SAS Digital Marketing grants Level 3 permission to all users except the software administrator.

Basic Security Mode


The basic security mode authenticates user credentials based on information that you specify in SAS Digital Marketing. To use the basic security mode, select Basic from the Security Mode drop-down list.

130 ! Chapter 4: Customizing the Server

SAS Digital Marketing automatically provides a default user ID for each user authorization level. The following users are provided: User ID guest writer runner admin Password guest1 writer1 runner1 admin1 Authorization Level 1 Level 2 Level 3 Level 4

You can use the Groups tab to create and manager user groups. N OTE : You can also manage the user and groups settings by running a SAS job in batch mode. SAS Digital Marketing provides a SAS program, called Example - Dening Users and Groups, in the SAS Job Editor under the Batch Jobs folder that you can modify. For more information, see Working with SAS Jobs on page 192.

Change User Settings


To change the user settings, complete the following steps: 1. Click Add in the Authentication box to create new user credentials. To modify the user credentials, select a user name from the Users box and click Edit. 2. Specify the user name and password.

3. Select authorization level from the drop-down list. 4. Click OK to store the changes.

Metadata Security Mode ! 131

To remove obsolete users, select the user name from the Users tab in the Authentication box and click Remove. Then click Yes to conrm that you want to remove this user from the list. N OTE : When you are not a Level 4 user, select Change Password from the Tools menu to change your password. For more information, see Change Your Password (Chapter 2, SAS Digital Marketing: Users Guide).

Metadata Security Mode


The metadata security mode uses a metadata server to centralize the management of user credentials. SAS Digital Marketing uses the metadata repository to authenticate the user credentials. To use the metadata security mode, select Metadata from the Security Mode drop-down list.

You must specify the location of the metadata server and the user credentials for the SAS Digital Marketing software administrator. Unlike with the basic security mode, you do not have to specify a different user ID and password for the user credentials. Using the metadata server authentication forces the SAS Digital Marketing Server user credentials to match your operating environment credentials. N OTE : When you use a metadata server to authenticate user credentials, SAS Digital Marketing grants Level 3 permission to all users except the software administrator.

132 ! Chapter 4: Customizing the Server

User Group Settings


You can assign users that have permission to access SAS Digital Marketing to one or more user groups. You use a user group to simplify assigning read and write permission for broadcast groups, distribution lists, Web resources, and RSS feeds. For more information, see Managing Security on page 167. Click Groups in the Authentication box to view the user groups. To create a new user group, click Add, specify the user group name, and select the group members. To delete a user group, select the group name and click Remove. To update a user group, select the user group name and click Edit. When you click Edit or Add, the User Group Settings dialog box opens.

To add or delete group members, select the user ID or group user name and click . Then click OK to save the new user group settings.

or

N OTE : : If the metadata security mode is used, then you must rst enter the user ID to add it to the user group.

Chapter 5

Modifying Advanced Server Properties


Contents
Overview of Advanced Server Properties . . . Description of the Advanced Server Properties Audit Server Properties . . . . . . . . . Client User Interface Server Properties . Edit Server Properties . . . . . . . . . . Encoding Server Properties . . . . . . . Integration Utils Server Properties . . . . JDBC Server Properties . . . . . . . . . Optimize Server Properties . . . . . . . Properties for Restricting Ports . . . . . Preview Server Properties . . . . . . . . Reply Management Server Properties . . Response Server Properties . . . . . . . Scheduling Server Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 134 134 135 138 140 141 142 144 145 146 147 151 153

Overview of Advanced Server Properties


SAS Digital Marketing ships with a list of server properties that you can use to set global policies for your site. For example, you can restrict the values for the From and Reply to elds. You can also congure a location for response tables. To set these server properties in SAS Digital Marketing Studio, select Server Properties in the Server Conguration window. For more information, see Advanced Server Properties on page 126. You can also use the ebtool command to set these server properties in batch mode. For more information, see Using Batch Mode (Chapter 2, SAS Digital Marketing: Users Guide). N OTE : Only a user with administrative privileges (Level 4 permission) should modify the server properties. To view the settings for the server properties, select About SAS Digital Marketing from the Help menu. The server property settings appear in the System Information section of the About SAS Digital Marketing dialog box. These server properties are categorized into the following groups:

134 ! Chapter 5: Modifying Advanced Server Properties

Audit Client UI Edit Encoding Integration Utils JDBC Optimize Ports Preview Reply Management Response Scheduling You can also use the ebtool command to set these server properties in batch mode. For more information, see Using Batch Mode (Chapter 2, SAS Digital Marketing: Users Guide).

Description of the Advanced Server Properties

Audit Server Properties


You can set the following audit server properties: AuditAspRequest species whether the application server provider (ASP) requests that are sent for each broadcast message are written to the aspresp column in the audit table. The requests are sent when the broadcast is executed. By default, this property is set to false. DiscardDynamicAbortEvents prevents SAS Digital Marketing from writing dynamic abort audit records for e-mail, SMS, ASP, and multichannel broadcasts to the audit table. This option helps conserve space in the database.

Client User Interface Server Properties ! 135

Client User Interface Server Properties


You can set the following client user interface (UI) server properties: AdapterFont species the font that SAS/GRAPH should use when generating graphs for the SAS reports. By default, this property is set to Arial. AllowSpacesInGroupName species whether the name for a broadcast group can include blank spaces. By default, this property is set to true. AllowTrackedVarSelection species whether the Tracking panel is always available from the New Broadcast wizard in SAS Digital Marketing Studio. By default, this property is set to false. AlwaysShowTrackingPanel when a customer intelligene (CI) export denition is used for the recipient list, species whether to enable the user to select additional tracked variables. Otherwise, the user can select only the variables that are required to correlate the broadcast to the original campaign in the CI common data model. SAS Digital Marketing does not store the optional variables in the common data model. By default, this property is set to false. AutoSelectNewBroadcasts species whether new broadcasts are automatically selected in SAS Digital Marketing Studio. By default, this property is set to false. DisableGroupWebEdits species whether you can edit groups in SAS Digital Marketing Web Studio. When you set this property to true, the New Group option is not visible, and the Rename and Delete menu items are dimmed. By default, this property is set to false. EmailAddressCheck species whether to perform stringent checking for an invalid e-mail address. When this property is set to true, the e-mail address must have a local part followed by a domain part that is separated by an @, and must not end in a period (localname@domainname). When you preview or schedule a broadcast, SAS Digital Marketing identies invalid e-mail addresses in the log and audit table. The property is set to false by default. EmailAddressVariable species the value for the e-mail address variable for any new broadcasts. When this property is set, all data source tables must contain the variable that you specied, and this variable must contain the e-mail addresses for the broadcast recipients. When this property is set, users cannot select a different e-mail address variable because of the following changes to the user interface: In SAS Digital Marketing Studio, the E-mail Address Variable drop-down list is dimmed in the E-mail Broadcast Header panel of the New Broadcast wizard. In SAS Digital Marketing Web Studio, the Address Variable eld is not available from the New Broadcast page.

136 ! Chapter 5: Modifying Advanced Server Properties

By default, this property is not set, and the user can select the variable to use as the e-mail address variable. For information about how to use server properties to create a global data model for incoming recipient lists and for tracking data, see Managing Global Data Models on page 166. EmailTrackedVariables species the tracking variables to use for an e-mail broadcast. The tracking variable should contain unique information, such as a customer ID number, so that SAS Digital Marketing can track the behavior of each broadcast recipient. To specify the tracking variables to use, specify values as a comma-separated list. When this property is set, the user cannot change the tracking variable because of the following changes to the user interface: In SAS Digital Marketing Studio, the user cannot change the variable that is selected in the Tracking Variables box in the Tracking panel of the New Broadcast wizard. In SAS Digital Marketing Web Studio, the Tracked Variables eld is not displayed on the New Broadcast page. By default, this property is not set, and the user can select the variables to track. N OTE : If you specify both the EmailTrackedVariables and the ResponseTableBase properties and the variable that you specied for the EmailTrackedVariables property exists in your data source, then in SAS Digital Marketing Studio the Tracking panel does not appear in the New Broadcast wizard or in the New Broadcast Content wizard. For information about how to use server properties to create a global data model for incoming recipient lists and for tracking data, see Managing Global Data Models on page 166. EmailVariables species the variables that are in the recipient table. The variables should contain the e-mail addresses for the recipients, unique tracking information (such as customer ID), or other information that you might use to customize your broadcast content. To specify the e-mail variables to use, specify values as a comma-separated list. When this property is set, the user cannot change these variables because of the following changes to the user interface: In SAS Digital Marketing Studio, the Data Model panel of the New Broadcast wizard is not available, so end users cannot select the data source for the broadcast. In SAS Digital Marketing Web Studio, the Broadcast Variables eld is not available from the New Broadcast page. By default, this property is not set, and the user can select the variables to use. For information about how to use server properties to create a global data model for incoming recipient lists and for tracking data, see Managing Global Data Models on page 166. HideSASPredenedLibraries species whether to show the GISMAPS, MAPS, SASHELP, and SASUSER libraries when the user can select a data source. Users can select a data source from the List Structure panel of the New Broadcast wizard, the Preview Broadcast wizard, or the Schedule Broadcast wizard in SAS Digital Marketing Studio.

Client User Interface Server Properties ! 137

By default, this property is set to true, and these libraries are not available from the wizards. As a result the user must specify a full two-level name (for example, EXAMPLES.CONTACT_DETAILS) when selecting a data source. The site administrator can still access these predened libraries from the SAS JDBC Explorer window. HideTables displays in SAS Digital Marketing Studio a predened set of tables that the administrator has set up as distribution lists. If this property is set to true, then users at your site can use distribution lists only in the New Broadcast wizard, the Preview Broadcast wizard, and the Schedule Broadcast wizard to select a data source table. LockSentBroadcasts species whether to lock broadcasts that have been previously sent or broadcasts that are scheduled for execution. If this property is set to true, then the SAS Digital Marketing Studio user cannot edit the broadcast. This broadcast can be opened in read-only mode. When this property is set to true, then the user sees the following in SAS Digital Marketing Studio: In the SAS Digital Marketing Studio window, if a user right-clicks on a broadcast that has been sent or one that is scheduled for execution, then the pop-up menu that appears does not contain the Delete, Dene New Content, or Edit options. Instead, this pop-up menu has a View option that the user can select to view the broadcast content. A dialog box also opens telling the user that the broadcast has already been sent or is scheduled and that any edits are not saved. N OTE : If a broadcast is selected in the main window when you change the LockSentBroadcasts property, then you must select the broadcast again for the options in the pop-up menu to update. In the content editor in SAS Digital Marketing Studio, the Save Broadcast option from the File menu and the Save icon are not available. The user can edit the broadcast content, but when the user closes the content editor a message appears stating that the content is not saved. In the SAS Digital Marketing Web Studio, the Edit options are not available for broadcasts that have been executed. SaveLastURLPassword species whether to save the last password in the URL userid/password dialog box in SAS Digital Marketing Studio. By default, this property is set to false. ShowCustomizeContentMenuItems species whether to show in SAS Digital Marketing Web Studio the View Customized HTML and View Customized Text menu items for a broadcast that contains HTML or text content. By default, this property is set to false. ShowRecipientTable species whether SAS Digital Marketing Web Studio displays information about the recipient table when a broadcast is scheduled. If a database table is used, then SAS Digital Marketing displays a Web page with the name of the table and the number of recipients. You click the table name to display the contents of the table. The ShowRecipientTableRowCount server property determines the number of rows that are displayed. If a distribution list is used, then SAS Digital Marketing displays a Web page with the name of the distribution list and the number of recipients. By default, this property is set to false.

138 ! Chapter 5: Modifying Advanced Server Properties

ShowRecipientTableRowCount species the number of rows in the recipient table to display when SAS Digital Marketing Web Studio is used to schedule a broadcast and ShowRecipientTable is set to true. By default, this property is set to 10. TrackedVariableWarningThreshold species the number of tracked variables that you can select from the data source table before SAS Digital Marketing displays a warning message. You should limit the number of tracked variables when the value of the tracked variables are included in the tracked links. Otherwise, the URL address might become too long. By default, this property is set to 3. UseFileDialog species whether the Browse buttons in SAS Digital Marketing Studio should use AWT FileDialog selection or Swing JFileChooser. If this property is set to true, then the AWT FileDialog selection is used. By default, this property is set to false and the Swing JFileChooser is used. UserSourcePanel species whether to display in SAS Digital Marketing Studio the User Input selection in the List Structure step of the New Broadcast wizard. By default, this property is set to false.

Edit Server Properties


You can set the following edit server properties: Aol5Supported species whether SAS Digital Marketing Studio supports AOL 5.0. When this property is set to true, you can create and edit a broadcast denition that contains AOL 5.0 content. The New Broadcast wizard also displays the AOL Content and AOL Encoding options. By default, this property is set to false. BlankDuplicatedTable species whether to omit the name of the data source table when you duplicate a broadcast that does not use a global data model. This property prevents users from executing the duplicated broadcast against the recipient list from the original broadcast. By default, this property is set to false, and the table name is not removed. N OTE : SAS Digital Marketing ignores the BlankDuplicatedTable server property because a global data model is used. DisableAltSyntax species whether to use the alternate syntax that SAS Digital Marketing Studio provides for inserting variables into e-mail content. If this property is set to true, then the alternative syntax is disabled. For more information about this alternate syntax, see Syntax for Inserting a Variable in the Content (Chapter 5, SAS Digital Marketing: Users Guide). By default, this property is set to false and the alternate syntax is enabled.

Edit Server Properties ! 139

DisableAttachments species whether attachments are allowed in e-mail campaigns. When you set this property to true, SAS Digital Marketing ignores the attachments that you specify in the !EM_ATTACH! directive. For more information, see Using E-mail Directives (Appendix B, SAS Digital Marketing: Users Guide). By default, this property is set to false. DreamweaverSnippetDir species the default location of the snippets for your Dreamweaver installation. By default, SAS Digital Marketing uses a default location of the following:
%userprofile%nApplication DatanMacromedian $DREAMWEAVER_RELEASEnConfigurationnSnippets

where DREAMWEAVER_RELEASE is the location that you specied in the HTML Edit Command box of the Preferences dialog box. You need to specify this server property only if the default location is not in this location. By default, this property is not set. EditColorCoding controls whether the text for HTML, text, or AOL Rich Text source that appears in the content editor is color coded. When you use SAS Studio Marketing Studio with Asian languages, you need to turn off the color coding in the content editor. By default, this property is set to true. HTMLEditorCommand species the third-party HTML editor to use in SAS Digital Marketing Studio. The default HTML editor is Microsoft Ofce FrontPage. The site administrator can change this default value. SAS Digital Marketing Studio users can override the default value from the Preferences dialog box. For more information, see Setting the Preferences (Chapter 2, SAS Digital Marketing: Users Guide). StaticEmailSupported species whether SAS Digital Marketing clients provide the ability to create static e-mail broadcasts. A static e-mail broadcast delivers identical content to each recipient in the data source table. SAS Digital Marketing does not track responses or replies for a static e-mail broadcast. Static broadcasts do not require modications to the default conguration and require only an MTA for e-mail delivery. By default, this property is set to false. SuspendStudioWhileEditing species whether to close the content editor in the SAS Digital Marketing Studio when you open an external editor. If you set this option to true, then the user cannot have both the content editor from SAS Digital Marketing Studio and the external editor open simultaneously. By default, this property is set to false, and the user can have the content editor and the external editor open simultaneously. If both the content editor and the external editor are open, then the user can edit content in an external editor (such as Dreamweaver) and simultaneously view the changes in the content editor. For an example of how this works, see Editing Content in Dreamweaver (Chapter 5, SAS Digital Marketing: Users Guide). TextEditorCommand species the third-party text editor to use in SAS Digital Marketing Studio. The default text editor is NotePad. The site administrator can change this default value. SAS Digital Marketing Studio users can override the default value from the Preferences dialog box. For more information, see Setting the Preferences (Chapter 2, SAS Digital Marketing: Users Guide).

140 ! Chapter 5: Modifying Advanced Server Properties

Encoding Server Properties


You can set the following encoding server properties: EncodeTrackedVariables species that the server that is used by java.net.URLEncoder.encode() to encode the tracked variables. If your tracking variables include DBCS values or spaces, then the values might not be saved correctly in the response table. Specifying this property xes the problem where DBCS characters are used for tracking or for variables with spaces. N OTE : The server does not encode the tracked variables in the broadcast denitions that were created before this server property is set. EncodingChoices species the encoding choices that are available to users when dening a new broadcast. If you specify only one value for this property, then the HTML Encoding, Text Encoding, and AOL Encoding drop-down lists are not available from the following locations: the New Broadcast wizard in SAS Digital Marketing Studio the New Broadcast Content wizard in SAS Digital Marketing Studio the New Broadcast page in SAS Digital Marketing Web Studio To specify several encoding options, use a comma-separated list. EscapeNewLines controls whether new lines in your text content are compiled with enclosing <xsl:text> tags. Specifying this property results in larger compiled XSL les, but you must specify this option to send Asian language broadcasts with plain text components. By default, this property is set to false. EscapeSpaces controls whether spaces in your text content are compiled with enclosing <xsl:text> tags. Specifying this property results in larger compiled XSL les, but you must specify this option to send Asian language broadcasts with plain text components. By default, this property is set to false. HTMLEscapeNewLines controls whether new lines in your HTML content are compiled with enclosing <xsl:text> tags. By default, this property is set to false. HTMLEscapeSpaces controls whether spaces in your HTML content are compiled with enclosing <xsl:text> tags. By default, this property is set to false.

Integration Utils Server Properties ! 141

Integration Utils Server Properties


You can set the following integration utilities server properties: AppIdListerClass species the class that contains the getApplicationIdentiers method. You can use an application identier to correlate a broadcast to another business process. The primary advantage of using an application identier is that this identier is carried with the response data and audit data. You cannot use the identier to integrate response data from SAS Digital Marketing into other business processes after a broadcast executes. When you set this property, a list of valid application identiers is displayed in the New Broadcast wizard in SAS Digital Marketing Studio and the New Broadcast page in SAS Digital Marketing Web Studio. SAS Digital Marketing ships with an example for providing application identiers to integrate with other applications or business processes. To use this example, set this property to ExampleAppIdExits. This refers to the ExampleAppIDExits.java source le that is saved in the ROOT directory of the SAS Digital Marketing server install. By default, this property is set to blank. BatchSASOptions species additional global arguments for the SAS command lines that create SAS reports when you select batch SAS as your SAS environment. For example, to ensure that the batch SAS session uses UTF-8 mode when SAS Marketing Optimization generates your reports, set the server property to -encoding utf-8 -dbcs. HTMLValidationClass sets a global policy for HTML content. For example, a site can decide that JavaScript is not allowed in the content of e-mail broadcasts. A validation class can enforce that policy. SpamAssassinCommand species the SpamAssassin shell script or BAT le on your computer. If you are running SpamAssassin as a daemon, then you can set this property to spamc.exe. By default, this property is set to
C:\perl\bin\spamassin.bat

For more information about how to use the SpamScanClass and SpamAssassin Command server properties, see Using the SpamAssasin Spam Filter on page 181. SpamScanClass species the class that has implemented the scanMessage static method. A ScanMessage implementation ships in com.sas.email.server.BulkEmailUtils. To use SpamAssassin scoring when your broadcasts are previewed, set this property to
com.sas.email.server.BulkEmailUtils

By default, this property is set to blank so that SAS Digital Marketing does not use SpamAssassin. For more information about how to use the SpamScanClass and SpamAssassin Command server properties, see Using the SpamAssasin Spam Filter on page 181.

142 ! Chapter 5: Modifying Advanced Server Properties

WebAppURL species the URL for the Web application server that is running SAS Digital Marketing Web Studio. You must specify this property before you use the visualreport options with the ebtool command. You must also set this option to export a Web resource from the Web Resource Manager or import a Web resource into a broadcast. N OTE : You do not need to specify this server property to deploy SAS Digital Marketing Web Studio. The Congure SAS Digital Marketing Server for Web Reporting page automatically updates the SAS Digital Marketing server to use the URL for the deployment of the Web application. Also, setting this property adds the following options to SAS Digital Marketing Studio: The Run SAS Report option is available from the Actions menu. You can run this report for individual broadcast denitions. This option is also available from the popup menu for a broadcast denition in SAS Digital Marketing Studio. You can also run a SAS report by clicking in the toolbar. When the SAS Digital Marketing user runs a SAS report, the Run SAS Report page opens in SAS Digital Marketing Web Studio. The user can select the SAS report to run. The SAS reports are created by the site administrator. For more information, see Viewing SAS Reports (Chapter 4, SAS Digital Marketing: Users Guide). The Run Visual Report option is available from the Actions menu. You can run a visual report for an individual broadcast denition. This option is also available from the pop-up menu for a broadcast denition in SAS Digital Marketing Studio. When the SAS Digital Marketing user runs a visual report, the visual report for that broadcast opens in a new Internet Explorer window. The reports content is based on the parameters that the administrator species. When you specify the WebAppURL server property, you can use the TinyMCD Web-based Javascript editor as the HTML content editor in SAS Digital Marketing Studio. To edit a broadcast using this editor, right-click the broadcast name in SAS Digital Marketing Studio. From the pop-up menu, select HTML Content with TinyMCE from the Edit menu. N OTE : You can download and install TinyMCE when you specify whether to use an external HTML editor from the SAS Digital Marketing Server Conguration wizard. For more information, see Run the Server Conguration Wizard on page 39. The syntax for the value that you specify is the following:
http://deployedhost:port/sdm/

JDBC Server Properties


Property for Specifying Bad E-mail Addresses
You can set the following server property to set the threshold for bad e-mail addresses: BadUploadAddressThreshold species the maximum number of e-mail addresses in an uploaded recipient le that can be

JDBC Server Properties ! 143

invalid. When this threshold is exceeded in SAS Digital Marketing Web Studio, then the upload of the le to a temporary table stops. The value for this property is an integer value. By default, this property is set to -1, which means there is no threshold.

Properties for Executing from a File


You might want to execute from a le. To add a File selection to the Broadcast Scheduling wizard, you must specify the following server properties: TempTableBaseName species the timestamp when a temporary table is created. TempTableDriver species the JDBC driver. The values that are available from the drop-down list are the drivers that you have installed. TempTablePassword species the JDBC password. TempTableURI species the URI. You can select the URI from the drop-down list or enter a new value. The values that are available from this drop-down list depend on the driver that you selected. TempTableUser species the user ID for the JDBC connection. When you specify these options, the le is uploaded as a temporary table for processing. This table is deleted by the SAS Digital Marketing Server after processing is complete. SAS Digital Marketing supports only one recipient per line, and each e-mail address is veried as being a valid e-mail address. If an e-mail address is not valid, then you are prompted when the error occurs.

Properties for Executing from a Table


You might want to execute from a table. To add a table selection to Schedule Broadcast wizard in SAS Digital Marketing Web Studio, you must specify the following server properties: WebSelectionTableDriver species the JDBC driver. The values that are available from the drop-down list are the drivers that you have installed. WebSelectionTableLibrary species the base library that contains the recipient tables that you want to use. WebSelectionTablePassword species the JDBC password. WebSelectionTableURI species the URI. The values that are available from this drop-down list depend on the driver that you selected. WebSelectionTableUser species the user ID for the JDBC connection.

144 ! Chapter 5: Modifying Advanced Server Properties

When you specify these options, you can choose from the Schedule Broadcast wizard in SAS Digital Marketing Web Studio a table that contains the addresses of the recipients of the broadcast.

Optimize Server Properties


Properties for Optimizing Batch SAS Sessions
You can use the following server properties to optimize your batch SAS sessions: MaximumBatchSessions species the maximum number of batch SAS sessions to run concurrently. By default, this property is set to 2. MaximumBatchWait species the maximum time (in seconds) to wait for an available SAS batch session before returning a "Server is too busy" message. By default, this property is set to 150 seconds or 2.5 minutes.

Properties for Optimizing an IOM Workspace Connection


If you have ve or more users who are generating reports concurrently, it is recommended that you congure an IOM workspace server for deployments. MaximumIOMCachedConnections species the maximum number of IOM connections to have cached in memory for quicker access. By default, this property is set to 3. If this property is set to -1, then no connections are cached, and the MaximumIOMConnections server property is ignored, if specied. N OTE : If this property is set to -1, then the number of SAS Workspace Server sessions is equal to the number of jobs that are running at one time. This conguration is not recommended. MaximumIOMConnectionAge species the maximum time (in seconds) that an IOM workspace connection can remain idle and still be used. You might specify this property to prevent a workspace connection from being closed. By default, this property is set to 600 seconds (or 10 minutes). If the workspace connection has not been used in 10 minutes, then the connection is closed, and a new connection is created. MaximumIOMConnections species the maximum number of IOM workspace connections that you can establish at one time. This maximum number includes cached connections and temporary connections. The value that you specify is the maximum number of SAS jobs that can run simultaneously. By default, this property is set to 3.

Properties for Restricting Ports ! 145

MaximumIOMWait species the maximum time (in seconds) to wait for an available SAS workspace session before returning a "Server is too busy" message. By default, this property is set to 150 seconds or 2.5 minutes.

Other Optimization Properties


You can also set the following optimization server properties: FeedRefreshInterval species the amount of time in seconds that SAS Digital Marketing caches the published RSS XML. The default value is 600 seconds. NetConservation turns off several events (such as OnThreadStart and OnThreadStop) for situations where network bandwidth is an issue. networkaddress.cache.ttl species the number of seconds to cache a successful lookup. This property is for the IP address caching policy for successful name lookups from the domain name service. The value for this property is an integer. By default, this property is set to -1, which keeps the successful lookup in the cache. networkaddress.cache.negative.ttl species the number of seconds to cache an unsuccessful lookup. This property is for the IP address caching policy for unsuccessful name lookups from the domain name service. The value for this property is an integer. By default, this property is set to 10, which removes the unsuccessful lookup from the cache after 10 seconds. NoLocalHostCheck species whether to skip the localhost check when SAS Digital Marketing Studio is looking up grid nodes. By default, when you allocate grid nodes, an in-process grid node is allocated if the requested host is localhost. In some TCP/IP tunneling scenarios, localhost could actually mean proxy to another box. By default, this property is set to false.

Properties for Restricting Ports


By default, remote method invocation (RMI) uses random ports for its connections. Because the selection of the port is random, you cannot specify access restrictions on the range of ports that the software might need to make its connections. Many companies restrict the ports you can use in order to restrict network trafc and increase network security. If you are using a rewall, VPN, or TCP/IP tunneling, then your site administrator has specied a list of authorized ports that you can use. To specify that SAS Digital Marketing Studio use a specic range of ports, you must specify the following properties:

146 ! Chapter 5: Modifying Advanced Server Properties

CustomSocketFactory indicates that you want to specify a custom socket for RMI operations. By default, this property is set to false. SocketEnd species the port number of the end socket. SocketStart species the port number of the start socket. Unlike other server properties, you specify these properties as command line options of the Java invocation for each client, grid node, or controller. You can also set these properties on the CommandLineArgs statement in INI les in the ROOT directory in Windows environments or in shell scripts in UNIX environments. The following example shows how you specify these options:
-DCustomSockeyFactory=true -DSocketStart=20000 -DSocketEnd=21000

Preview Server Properties


General Properties for Previewing
You can set the following preview server properties: PreviewConrmation displays a conrmation dialog box when a broadcast has executed or previews have been sent. This dialog box is displayed only when the SimplePreview property is also set to true. By default, this property is set to false, and the dialog box is not displayed. PreviewList species whether to show all the e-mail addresses that received a preview e-mail, if the PreviewConrmation property is set to true. By default, this property is set to false. PreviewSelectionMax species the number of rows to display in the Preview Recipient Selection panel of the Preview Broadcast wizard. By default, SAS Digital Marketing Studio displays the rst 1000 rows. The smallest value that you can specify is 100. Increasing the number of rows to display can impact performance. For more information, see Run the Preview Broadcast Wizard (Chapter 4, SAS Digital Marketing: Users Guide). SimplePreview species whether to show the Preview Broadcast wizard when you generate a broadcast preview for an e-mail broadcast. If this property is set to true, then a simplied dialog box opens if the data source table in the broadcast denition is valid and is resolved. In this dialog box, you can specify the recipient address by selecting an e-mail address from a drop-down list, or you can type the e-mail address. In this dialog box, you can also specify the parts of the broadcast, such as the

Reply Management Server Properties ! 147

HTML content or text content, to send. If you preview an e-mail broadcast, then the subject line of the broadcast includes a version number, for example PREVIEW 1.1. When you set the SimplePreview property to true, you might also want to set the PreviewConrmation property to true. If you do, then SAS Digital Marketing Studio displays a conrmation dialog box when a broadcast has executed or previews have been sent. If this property is set to false, then the Preview Broadcast wizard opens.

Properties for Specifying a Different SMTP E-mail Server


By default, previews are sent to the same server as the broadcasts that are currently executing. If you are executing a large number of broadcasts, then you might want to send these previews to a different SMTP e-mail server for a faster delivery of the previews. To specify a different SMTP e-mail server for previews, you must specify the following server properties: PreviewSMTPPassword species the password for the SMTP e-mail server that you specied in the PreviewSMTPServer property. PreviewSMTPPort species the port of the SMTP e-mail server that you specied in the PreviewSMTPServer property. PreviewSMTPServer species the name of the SMTP e-mail server that you want to use for previews. N OTE : The SMTP e-mail server that you specify must be congured and accessible by the controller and permit partial e-mail addresses. PreviewSMTPUser species the user ID for the SMTP e-mail server that you specied in the PreviewSMTPServer property. N OTE : The mail servers that you use to preview your broadcasts or send reports must accept partial e-mail addresses.

Reply Management Server Properties


You can set the following reply management server properties: DefaultFrom species a default value for the From box in the New Broadcast wizard. This value can be overwritten when you create a new broadcast. The syntax for the DefaultFrom property is the following:
DefaultFrom=user@sas.com

N OTE : If you also set the PossibleFrom property, then you must specify this default value as one of the values of the PossibleFrom property. If you do not set this property, then SAS

148 ! Chapter 5: Modifying Advanced Server Properties

Digital Marketing does not display the default value that you specied for the DefaultFrom property in the From box. DefaultReplyTo species a default value for the Reply to box in the New Broadcast wizard. This value can be overwritten when you create a new broadcast. The syntax for the DefaultReplyTo property is the following:
DefaultReplyTo=user@sas.com

N OTE : If you also set the PossibleReplyTo property, then you must specify this default value as one of the values of the PossibleReplyTo property. If you do not set this property, then SAS Digital Marketing Studio does not display the default value that you specied for the DefaultReplyTo property in the Reply to box. DefaultSMSFrom species the default value in the From box in the New Broadcast wizard when you are creating an SMS broadcast. By default, this property is set to blank. DefaultSMTPFrom species a default value for the SMTP From box in the New Broadcast wizard. This value can be overwritten when you create a new broadcast. The syntax for the DefaultSMTPFrom property is the following:
DefaultSMTPFrom=user@sas.com

EmailFromOverride species a value for the SMTP Email From box in the New Broadcast wizard, the New Broadcast Content wizard, and the Header tab in the Properties dialog box. If you set this property, then the SMTP Email From box is not available in the user interface, so users cannot change this value. The SMTP Email From box enables you to track correlated replies. For more information, see Using Correlated Replies on page 232. InternalMessageFrom overrides the value of the From eld for internal messages. You can send internal mail by selecting the Mail menu option from the Actions menu in the Query Responses window, the Query Reply window, or the Summary window. You can also specify the e-mail notication list for internal messages from the Scheduling tab in the Server Conguration window. For more information, see Scheduling Options on page 117. By default, this server property is not set, and the value of the From eld is used. PossibleFromxxx species the list of values that appear in the From box in the New Broadcast wizard and in the Header tab of the Broadcast Properties dialog box. The value of xxx is the number of the e-mail address that you want to include in the list. For example, if you want John Smiths and Marcel Duprees e-mail addresses available from the From box, then you would specify the PossibleFrom property twice.
PossibleFrom1=john.smith@yourcompany.com PossibleFrom2=marcel.dupree@yourcompany.com

If you set this property, then only those e-mail addresses that you specied can be used in a broadcast. You must specify these properties in sequential order. If you skip a number,

Reply Management Server Properties ! 149

then the list contains only the values before the skipped value. All values after the skip are ignored, so if you specied PossibleFrom1, PossibleFrom2, and PossibleFrom4, then the fourth value (and any subsequent values) is ignored. In the following example, the e-mail address specied for PossibleFrom4 does not appear in the From box because it is specied out of sequence.
PossibleFrom1=john.smith@yourcompany.com PossibleFrom2=marcel.dupree@yourcompany.com PossibleFrom4=susan.jones@yourcompany.com

By default, the PossibleFrom property is set to blank. If you also set the DefaultFrom property, then you must include the default e-mail address in the list of possible values. The following examples show how SAS Digital Marketing Studio uses the values of the DefaultFrom and PossibleFrom properties to populate the From box. If the DefaultFrom property is blank and no value is specied for the PossibleFrom property, then the user can enter any value for the From box in the New Broadcast wizard or Header tab in the Broadcast Properties dialog box. If you specied a value for the DefaultFrom property but no values were specied for the PossibleFrom property, then the From box displays the value that you specied for the DefaultFrom property. If you specied a value for the DefaultFrom property and you specied a value for the PossibleFrom property but none of the possible values match the value of the DefaultFrom property, then the only values that are available from the From box are the PossibleFrom values. The rst value in the list is the default. In the following example, only Marcel Duprees e-mail address is available from the From box.
DefaultFrom=john.smith@yourcompany.com PossibleFrom1=marcel.dupree@yourcompany.com

If you specied a value for the DefaultFrom property and you specied values for the PossibleFrom property and one of these values is the same as the DefaultFrom property, then the DefaultFrom value also appears in the From box, and it is selected as the default. In the following example, both John Smith and Marcel Duprees e-mail addresses are available from the From box.
DefaultFromTo=john.smith@yourcompany.com PossibleFromTo1=marcel.dupree@yourcompany.com PossibleFromTo2=john.smith@yourcompany.com

PossibleReplyToxxx species the list of values that appear in the Reply to box in the New Broadcast wizard and in the Header tab of the Broadcast Properties dialog box. The value of xxx is the number of the e-mail address that you want to include in the list. For example, if you want John Smith and Marcel Duprees e-mail addresses to be available from the Reply to box, then you would specify the PossibleReplyTo property twice.
PossibleReplyTo1=john.smith@yourcompany.com PossibleReplyTo2=marcel.dupree@yourcompany.com

150 ! Chapter 5: Modifying Advanced Server Properties

If you set this property, then only those e-mail addresses that you specied can be used in a broadcast. You must specify these properties in sequential order. If you skip a number, then the list contains only the values before the skipped value. All values after the skip are ignored, so if you specied PossibleReplyTo1, PossibleReplyTo2, and PossibleReplyTo4, then the fourth value (and any subsequent values) is ignored. In the following example, the e-mail address specied for PossibleReplyTo4 does not appear in the Reply to box because it is specied out of sequence.
PossibleFrom1=john.smith@yourcompany.com PossibleFrom2=marcel.dupree@yourcompany.com PossibleFrom4=susan.jones@yourcompany.com

By default, the PossibleFrom property is set to blank. If you also set the DefaultReplyTo property, then you must specify the same default e-mail address using the PossibleReplyTo property to display the default e-mail address from the Reply To drop-down list in the New Broadcast wizard. The following examples show how SAS Digital Marketing Studio uses the values of the DefaultReplyTo and PossibleReplyTo properties to populate the Reply To drop-down list. If the DefaultReplyTo property is blank and no value is specied for the PossibleReplyTo property, then the user can enter any value for the Reply To box in the New Broadcast wizard or Header tab in the Broadcast Properties dialog box. If you specied a value for the DefaultReplyTo property but no values were specied for the PossibleReplyTo property, then the From eld displays the value for the DefaultReplyTo property. If you specied a value for the DefaultReplyTo property and you specied a value for the PossibleReplyTo property but none of these are the same as the DefaultReplyTo property, then the only values that are available from the Reply To drop-down list are the PossibleReplyTo values. The rst value in the list is the default.
DefaultReplyTo=john.smith@yourcompany.com PossibleReplyTo1=marcel.dupree@yourcompany.com

If you specied a value for the DefaultReplyTo property and you specied values for the PossibleReplyTo property and one of these values is the same as the DefaultReplyTo property, then the DefaultReplyTo value also appears in the Reply To drop-down list, and it is selected as the default.
DefaultReplyTo=john.smith@yourcompany.com PossibleReplyTo1=marcel.dupree@yourcompany.com PossibleReplyTo2=john.smith@yourcompany.com

ReplyFilterRegex enables you to specify regular expressions for the reply rules. When you specify this option, SAS Digital Marketing Studio treats the reply rules as Java expressions that are compiled with the java.util.regex.Pattern class. By default, this property is set to false, and SAS Digital Marketing Studio matches the text in the replies to the reply rule. If the text in the reply matches a rule, then the message is added to that reply category. If you want to specify regular expressions for the reply rules, then set this option to true. Using regular expressions for ltering replies is slower but can provide greater exibility for categorizing replies.

Response Server Properties ! 151

Response Server Properties


You can set the following response server properties: BrowserSummary species whether to include the default summary report information about the types and versions of Web browsers that recipients used to interact with your e-mail broadcast. Setting this property to true might increase the time it takes to generate a broadcast summary. By default, this property is set to false. DomainSummary species whether to include in the default summary report information about the domains that the broadcast was sent to. If you set this property to true, it might take longer to generate a broadcast summary. By default, this property is set to false. IndexedLinks creates shorter HTML links that obfuscate the tracking information (such as CLIENT_ID value) from the recipient. This property uses the get and getp servlets to generate a click or pclick event. By default, this property is set to false. LinkToOmitxxx species the links to omit from your tracking. The value of xxx is the number of the link that you want to omit. For example, if you want to omit two links from your tracking, then you would specify the LinkToOmit property twice.
LinkToOmit1=http://www.sas.com LinkToOmit2=http://www.yourcompany.com

Links that you select to omit are not selected for tracking in the New Broadcast wizard and New Broadcast Content wizard. You must specify these properties in sequential order. If you skip a number, then only the links that are specied in sequential order are omitted. If you specied LinkToOmit1, LinkToOmit2, and LinkToOmit4, then the fourth value (and any subsequent values) is ignored. In the following example, the link specied for LinkToOmit4 is not omitted because it is specied out of sequence.
LinkToOmit1=http://www.sas.com LinkToOmit2=http://www.yourcompany.com LinkToOmit4=http://www.yourdomain.com

By default, all links that appear in the HTML, text, and AOL Rich Text are selected for tracking. MaxResponseTables species the maximum number of response tables to generate if the ResponseTableBase property is set to true. By default, this property is set to 1000.

152 ! Chapter 5: Modifying Advanced Server Properties

NegativeLinkxxx species a list of links to treat as negative response events when a recipient clicks any of these links. The value of xxx is the number of the link. You must specify these properties in sequential order. For example, if you want to two links to be negative response events, then you would specify the NegativeLink property twice.
NegativeLink1=http://www.sas.com/apps/jmp/email_preference.jsp NegativeLink2=http://www.sas.com/apps/userid/email_preference.jsp

These links are not selected for tracking in the New Broadcast wizard and New Broadcast Content wizard. ReplySummary species whether to include in the default summary report information about the types of replies that were received from the e-mail broadcast. Setting this property to true might increase the time it takes to generate a broadcast summary. By default, this property is set to false. ReplySummaryPeriod species the number of days to look back in the reply table for determining implicitly correlated replies. The period starts from the time and date that you run the reply summary. By default, this property is set to seven days. If you use the default and ran the reply summary at 9:00am on August 18, then SAS Digital Marketing would look back in the reply table through 9:00am on August 11. If you set this property to 0, then SAS Digital Marketing does not include implicitly correlated replies in the reply summary. N OTE : To use this property, you must also set the ReplySummary property to true. ResponseTableBase species the prex for the names of the response tables. The number of response tables is specied by the MaxResponseTables property. The ResponseTableBase property enables you to congure where to save the response tables. For example, you want to save all the response tables to the SDMDATA library and the prex for each table name should be RESPONSE. You set the ResponseTableBase property to SDMDATA.RESPONSE to automatically save the response tables to the SDMDATA library. As you execute the broadcasts, several tables named SDMDATA.RESPONSE_xxx are created in the SDMDATA library. After this property is set, the Response table box is not available from the New Broadcast wizard in SAS Digital Marketing Studio. The user also cannot modify the settings for the response tables. By default, this property is set to blank, and the user must specify a value for the response table in the New Broadcast wizard and the New Broadcast Content wizard. N OTE : If you specify both the EmailTrackedVariables and the ResponseTableBase properties and the variable that you specied for the EmailTrackedVariables property exists in your data source, then the Tracking panel does not appear in the New Broadcast wizard or the New Broadcast Content wizard. sem.testlink species the link to use when testing the redir tracking servlet. By default, this property is set to http://www.sas.com.

Scheduling Server Properties ! 153

TrackMailToLinks species whether to track the e-mail addresses that are specied using mailto tags in the HTML content of a broadcast. The behavior of mailto tags can vary depending on the client that is displaying the broadcast. These tracked links are treated the same as other tracked links in SAS Digital Marketing Studio. These links appear in the Link Summary section of the Summary window. By default, this property is set to false. VarPassingOverride selects the Pass tracking variables to the target URLs check box in the New Broadcast wizard. The Pass tracking variables to the target URLs option determines whether tracked variables are included as parameters in the links that are embedded in the e-mail content. When this property is set to true, the user who is creating a new broadcast denition in SAS Digital Marketing Studio cannot specify this option. This property enables the SAS Digital Marketing administrator to set this option globally for your site. By default, this property is not set and the user can choose whether to set the Pass tracking variables to the target URLs option for each broadcast denition.

Scheduling Server Properties


You can set the following scheduling server properties: CCAdmin species whether SAS Digital Marketing Studio sends a proof copy of all e-mail broadcasts to the e-mail addresses that you specify on the Scheduling tab. By default, this property is set to false. ExecuteWizardSkipIntro species to skip the rst step in the Scheduling wizard, if the table that was dened in the broadcast denition exists. By default, this property is set to false. NoSeparateScheduleBrowser species whether the Scheduled Broadcast window appears in a separate window. If this property is set to true, then the Scheduled Broadcast window does not appear in a separate window. By default, this property is set to false. ScheduledKeepPeriod species how many days to keep a broadcast in the scheduling list after the broadcast has been executed. This option enables you to see on the Scheduling tab how many broadcasts have run over X number of days. By default, this property is set to 0, and no broadcasts are kept in this list. Scheduler24HourTime species whether the time in the Schedule Broadcast wizard appears as 24 hour time. If you set this property to true, then the time that appears in the Time to start broadcast execution box of the Scheduling panel uses the 24 hour time format. By default, this property is set to false and the time values use the AM and PM format.

154 ! Chapter 5: Modifying Advanced Server Properties

ScheduleShowTableDesc species whether to display the table descriptions in the Schedule Broadcast to Table window. If you set this property to true, then the table descriptions are displayed. By default, this property is set to false. SchedulingInstalled determines whether the scheduling functionality is installed and congured. If this property is set to true, then the scheduling functionality is installed. If you use SAS Digital Marketing with SAS Marketing Automation, then any scheduling should be handled by SAS Marketing Automation. If another application such as SAS Marketing Automation is going to handle the scheduling, then you should set this option to false.

Part IV

Maintenance

Chapter 6

Managing Advanced Broadcast Tools


Contents
Overview of Advanced Broadcast Tools . . . . Managing Distribution Lists . . . . . . . . . . About Distribution Lists . . . . . . . . . Creating a Distribution List . . . . . . . Modifying a Distribution List . . . . . . Managing Global Data Models . . . . . . . . . About Global Data Models . . . . . . . Types of Global Data Models . . . . . . Managing Security . . . . . . . . . . . . . . . About Security . . . . . . . . . . . . . . Change Security . . . . . . . . . . . . . Managing ASP Denitions . . . . . . . . . . . About ASP Denitions . . . . . . . . . . Using the ASP Denition Manager . . . Modifying the ASP Denition Properties Managing WAP Integration Broadcasts . . . . About WAP Integration Broadcasts . . . Conguring WAP Integration Broadcasts Using the SpamAssasin Spam Filter . . . . . . About Spam Filters . . . . . . . . . . . . Understanding SpamAssassin . . . . . . Implementing a SpamAssassin Filter . . Using Geolocation Technology . . . . . . . . . About Geolocation Technology . . . . . Installing a Geolocation Database . . . . Conguring a Server Extension . . . . . MaxMind Server Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 158 158 158 161 166 166 166 167 167 168 170 170 170 171 178 178 178 181 181 181 182 183 183 184 186 187

158 ! Chapter 6: Managing Advanced Broadcast Tools

Overview of Advanced Broadcast Tools


A broadcast denition contains information that SAS Digital Marketing uses to create, process, and track your e-mail or wireless text message transmissions. A broadcast denition includes a broadcast header, the message content, and metadata. SAS Digital Marketing uses the metadata to identify the data model for the data source tables, the variables that track e-mail responses, and the users that have permission to use the broadcast groups and Web resource groups. As a site administrator, you can use several tools to simplify the creation of broadcast denitions. SAS Digital Marketing provides distribution lists to automate the selection of data source tables and tracked variables for a broadcast. You can use these distribution lists and server properties to create global data models that limit the selection of the data sources for a broadcast. The ASP Denition Manager enables you to create the metadata for an ASP broadcast. You can also use server properties to add a spam lter score to the broadcast header when an e-mail broadcast is previewed.

Managing Distribution Lists

About Distribution Lists


A distribution list simplies how a user selects the data source tables and variables that SAS Digital Marketing uses in the broadcast denition to customize messages and track broadcast responses. Instead of selecting this data when you dene, preview, or schedule a broadcast, a distribution list contains information to assign the data source tables and variables. You can use distribution lists to create global data models and limit the data source tables that a user selects. For more information, see Managing Global Data Models on page 166.

Creating a Distribution List


Use the New Distribution List wizard to create the distribution list. You must specify the name for the distribution list, a prex for the response table, at least one data source table, an address variable, and at least one tracked variable. Currently, SAS Digital Marketing only supports tables as the data elements. Users are unable to select the address variable or the tracking settings when a distribution list is used to create a broadcast denition. N OTE : You can also create a distribution list by running a SAS job in batch mode. SAS Digital Marketing provides a SAS progam, called Example - Managing Distribution Lists, in the SAS Job Editor under the Batch Jobs folder that you can modify. For more information, see Working with SAS Jobs on page 192.

Creating a Distribution List ! 159

Run the New Distribution List Wizard


To create a distribution list, complete the following steps: 1. Select Server Conguration from the Tools menu in the SAS Digital Marketing window. Then select the Distribution List Manager from the Broadcast Denition node and click Add. The New Distribution List wizard opens. 2. Type the name for the distribution list, an optional description, and a prex for the response table name. Then, selet the broadcast channel, and click Next.

In the Response table base name box, enter the prex value to create a valid JDBC table name. SAS Digital Marketing automatically assigns the response table name when you create a new e-mail broadcast denition. Use the Channels box to specify whether the distribution list is for an e-mail or a phone channel. SAS Digital Marketing uses the channel to determine the distribution lists that are available in the New Broadcast wizard. Select E-mail to create a distribution list for e-mail and multichannel broadcasts. Select Phone for SMS and ASP broadcasts.

160 ! Chapter 6: Managing Advanced Broadcast Tools

3. Specify the data source tables, also called data elements, for the distribution list and click Next. You can use multiple tables.

To select an element for the distribution list, complete the following steps: a) Click Add. The Open Table dialog box appears. b) Select the JDBC data table that contains the recipient information. c) Click OK. If you do not want to use a table, select the table name and click Remove. If you want to examine the structure of a table, select the table name and click Details. The Properties dialog box appears. Use the Columns tab to view the variables in the table. When the recipients for the broadcast transmissions are stored in multiple tables, create a logical message group by selecting multiple data source tables. However, each table must use the same variable to store the e-mail address or phone number of the recipients. 4. Specify the address variable, select the variables to e-mail responses, and click Finish. If you want to change a setting, then click Back to return to the appropriate step in the wizard.

Modifying a Distribution List ! 161

In the Address variable drop-down list, select the name of the variable in the table that contains e-mail addresses or wireless phone numbers. Use the Distribution List Variables box to select the variables that SAS Digital Marketing includes in the response table when you track the response to an e-mail broadcast.

Modifying a Distribution List


To modify a distribution list, select Server Conguration from the Tools menu in the SAS Digital Marketing window and then select the Distribution List Manager from the Broadcast Denition node. You use the Distribution List Manager to perform the following actions: Add creates a new distribution list. Edit displays or modies the properties of an existing distribution list. Remove deletes a distribution list.

162 ! Chapter 6: Managing Advanced Broadcast Tools

To modify a distribution list, select the name of distribution list and click Edit. The Properties dialog box opens. A series of tabs enable you to view and change the properties for the distribution list.

General Tab
Use the General tab to change the name of the distribution list, the optional description, the prex for the response table, and broadcast channel.

Modifying a Distribution List ! 163

Variables Tab
Use the Variables tab to change the address variable and the tracked variables.

The value in the Address variable drop-down list identies the variable in the data table that contains e-mail addresses or wireless phone numbers. The Distribution List Variables box identies the variables that SAS Digital Marketing includes in the response table when you track the response to an e-mail broadcast.

164 ! Chapter 6: Managing Advanced Broadcast Tools

Elements Tab
Use the Elements tab to change the data source table or to select additional data source tables. Each table is one element of the distribution list. When you have multiple data elements, each table must use the same variable to store the e-mail address or phone number of the recipients.

To select an element for the distribution list, click Add. The Open Table dialog box appears. Select the JDBC data table that contains the recipient information and click OK. If you do not want to use a table, select the table name and click Remove. To examine the table structure for an element, select the table name and click Details. The Properties dialog box appears. Use the Columns tab to view the variables in the table.

Modifying a Distribution List ! 165

Security Tab
Use the Security tab to set read and write permission for an individual user or a group of users in a broadcast denition that is created with the distribution list. For more information, see Managing Security on page 167.

166 ! Chapter 6: Managing Advanced Broadcast Tools

Managing Global Data Models

About Global Data Models


You use global data models to identify the underlying structure of the data source tables that SAS Digital Marketing clients require to create a broadcast denition. A series of server properties enable you to create global data models. SAS Digital Marketing supports three types of global data models. N OTE : You can also use a Customer Intelligence (CI) export denition as the data source. SAS Digital Marketing retrieves the export database from the SAS Customer Intelligence software to create the broadcast denition.

Types of Global Data Models


No Global Data Model
By default, SAS Digital Marketing does not provide a global data model. Consequently, when a broadcast is created, a user must specify the data source table for the broadcast. When a new e-mail broadcast is created, the user also species the response data table and the variables in the data source table to track the broadcast response.

Fixed Number of Global Data Models


SAS Digital Marketing uses distribution lists to support a xed number of global data models. To create a xed number of global data models, complete the following steps: 1. Create a distribution list for each data model. The distribution list includes the response table, the recipient data source, the address variable, and the tracked variables. For more information, see Managing Distribution Lists on page 158. 2. Set the HideTables server property to true. SAS Digital Marketing restricts the data sources for the broadcast denitions by prohibiting the selection of JDBC data tables in the New Broadcast wizard. Users must select a distribution list for the data model. After you create a xed number of global data models, the Data Model tab in the Properties dialog box displays the distribution lists.

Managing Security ! 167

One Global Data Model


You can create a single global data model so that everyone at your site uses the same data structure to create their broadcasts. To support one global data model, you must set the following server properties: EmailVariables species the variables that are in the recipient table. When you set this property, the user cannot select the data source table for the broadcast denition. EmailAddressVariable species the e-mail address variable for any new broadcasts. When you set this property, the user cannot change the address variable for the broadcast header. EmailTrackedVariables species the tracked variables to use for an e-mail broadcast. When you set this property, the user cannot change the tracked variable that SAS Digital Marketing stores in the response table. ResponseTableBase species the prex for the names of the response tables. When you set this property, then users cannot assign the name for the response table. N OTE : When you set these sever properties, SAS Digital Marketing uses only one data model to create a new broadcast denition. Distribution lists are not available. For more information about the e-mail server properties, see Client User Interface Server Properties on page 135. For more information about the ResponseTableBase server property, see Response Server Properties on page 151.

Managing Security

About Security
SAS Digital Marketing enables you to congure a broadcast group, a distribution list, a Web resource group, or an RSS feed channel that grants read and write permission for an individual user or a group of users. You create user groups, that consolidate a group of users, on a SAS Digital Marketing server in order to simplify how permission is granted. For more information, see User Group Settings on page 132. Use the Security tab in the Properties dialog box to set security for an individual or user group. When a user has write authorization (at least Level 2 permission), you can deny write permission. When a user has read authorization (Level 1 permission) only, you cannot grant write permission.

168 ! Chapter 6: Managing Advanced Broadcast Tools

Change Security
To change the authorization for a user or group of users, complete the following steps: 1. Open the Properties dialog box. For a broadcast group, select the folder in the navigation tree. Then select Properties from the pop-up menu. For a Web resource group, select a folder or a le in the Web Resources tab. Then select Properties from the pop-up menu. For an RSS feed, select an RSS feed channel in the RSS Feeds tab. Then select Properties from the pop-up menu. For a distribution list, select Distribution List Manager from the Broadcast Denition node in the Server Conguration window. Select the distribution list and click Edit. 2. Select the Security tab and click Add. 3. Select the users or user groups that you want to change the read or write permission for and click OK.

To select multiple users, press down the CTRL key and click the rows with the user name or user group.

Change Security ! 169

4. To change the authorization, select the user name or user group from the list of users. Then use the Permissions table to select either Allow or Deny to set read and write permission.

To grant a user only read authorization, select Allow in the Read row and Deny in the Write row. 5. After you grant all the permissions, click OK. By default, SAS Digital Marketing grants both read and write authorization to every user that has at least Level 2 permission. To change the authorization for individual users, complete the following steps: 1. Select All Users and click Deny in the Write row. 2. Click Add and select the individual users or groups of users that should have write permission. Then click OK. 3. Select a user from the list of users, and then select Allow in the Write row. 4. After you grant all the permissions, click OK. If you decide to delete a user or group from the list, then select the user name or user group and click Remove. You cannot remove the All Users group.

170 ! Chapter 6: Managing Advanced Broadcast Tools

Managing ASP Denitions

About ASP Denitions


Each ASP requires different parameters to connect to and send customized SMS, MMS, and WAP Push messages. SAS Digital Marketing provides a generic interface to create the structure and metadata for an ASP broadcast denition. You can use the ASP Denition Manager to add new or modify existing ASP broadcast types that are based on the API specications of a third-party ASP. SAS Digital Marketing stores the metadata for the ASP broadcast types in XSL les that are located in the ROOT/asps directory. You should not edit the XSL les directly. Instead, you should use the ASP Denition Manager. You must acquire from the ASP the specications for the HTTP interface. The specications are used when you create a new ASP broadcast. In order for an ASP broadcast denition to send broadcast messages, you must register with the ASP and purchase credits to use their service. For example, you might want to create ASP broadcast denitions that send SMS messages through a Clickatell SMS gateway. To create a new ASP broadcast type, you use the API specications for SMS that are located at http://www.clickatell.com. To send an ASP broadcast behind a rewall, you must congure the SAS Digital Marketing server to use proxy and port security settings. Use Security Options from the Server node in the Server Conguration window and select Use an internet proxy to specify your proxy and port settings. For more information, see Security Options on page 128.

Using the ASP Denition Manager


To create or modify the metadata for an ASP broadcast type, select Server Conguration from the Tools menu in the SAS Digital Marketing window and then select the ASP Denitions Manager from the Broadcast Denition node. The ASP Denition Manager window opens.

Modifying the ASP Denition Properties ! 171

The available ASP broadcast types appear in the ASP Denitions list. SAS Digital Marketing provides the Clickatell SMS and Clickatell WAP broadcast types as examples of a third-party ASP. To use these ASP denitions, you must register with Clickatell and purchase credits at http://www.clickatell.com. SAS Digital Marketing also provides the NowSMS broadcast type to send mobile messages to the Now SMS/MMS gateway (NowSMS) when a GSM device or mobile phone is connected to a SAS Digital Marketing server. For more information, see http://www.nowsms.com. You can perform the following actions in the ASP Denition Manager window: Add creates a new ASP denition type. To add an ASP denition, click Add. The ASP Denition Properties dialog box opens. Edit displays or modies the properties of an existing ASP denition type. To view the properties of an ASP denition, select the name in the ASP Denitions list and click Edit. The ASP Denition Properties dialog box opens. Remove deletes an ASP denition type. To remove a denition, select the name from the ASP Denitions box and click Remove. Done closes the window.

Modifying the ASP Denition Properties


If you select Add or Edit in the ASP Denition Manager, then the ASP Denition Properties dialog box opens. A series of tabs enable you to view and change the properties for an ASP denition type. You dene parameters that match the API specications of the third-party ASP. The New Broadcast wizard automatically includes the ASP broadcast denition types and incorporates the parameters in the wizard steps.

General Tab
Use the General tab to create the name for the ASP denition and to provide information about the ASP specications.

172 ! Chapter 6: Managing Advanced Broadcast Tools

You can specify the following items on the General tab: Name species the name for the ASP broadcast type. The New Broadcast wizard displays this name in the Broadcast Type drop-down list. Description species descriptive text about the ASP broadcast type. Format the text with HTML tags. The New Broadcast wizard displays the description after you select the broadcast type from the Broadcast Type drop-down list. URL species the Web address of the HTTP-to-SMS gateway. The Web address corresponds to an ASP specication on where to post the HTTP request. Response Decoder species the class name of the decoder that SAS Digital Marketing uses to interpret the HTTP response. For more information, see Implementing an Automatic ASP Response Decoder on page 177. To use the NowSMS ASP to send SMS messages through an HTTP post interface, you might enter the following information: Name: Description:
NowSMS <html>NowSMS is an easy-to-install SMS Gateway, MMS Gateway,

WAP Push Proxy Gateway, and Multimedia Messaging Center (MMSC) for Windows NT/2000/XP. For more information about NowSMS, see http://nowsms.com. <p><p>To use the NowSMS gateway you must have a GSM modem or a phone connected to your SAS Digital Marketing server.

Modifying the ASP Denition Properties ! 173

URL:

http://serverlocation:8800/?

Response Decoder: AspResponseDecoder N OTE : (Optional) You can write a custom decoder to interpret the responses that are received from the ASP. Use the specications to determine the content of their responses. You can examine ClickatellDecoder.java as an example of a decoder. For more information, see Implementing an Automatic ASP Response Decoder on page 177.

Administrative Tab
Use the Administrative tab to specify the parameters that the ASP uses to authenticate your request for access to the HTTP post interface. Administrative parameters usually occur one time in the ASP request and have a xed value such as user ID, password, and api ID. The New Broadcast wizard prompts you for the Administrative parameters and stores the values in the ASP broadcast denition.

You can perform the following actions on the Administrative tab: Add creates a new administrative parameter. To add a parameter, click Add. The Parameter Properties dialog box opens. Modify modies the properties of an existing administrative parameter. To change the properties, select the name of the parameter and click Modify. The Parameter Properties dialog box opens.

174 ! Chapter 6: Managing Advanced Broadcast Tools

Remove deletes an administrative parameter. To remove a parameter, select the row with the name of the parameter and click Remove. To dene an administrative parameter, you specify the name of the parameter, a descriptive label, and the default value in the Parameter Properties dialog box. You also set whether the parameter is required by the ASP or is a password.

The value in the Name box corresponds to the name of the parameter that SAS Digital Marketing adds to the URL that gets posted to the ASPs HTTP interface. The value in the Label box is used by the New Broadcast wizard to describe the parameter. The value in the Default Value box is used by the New Broadcast wizard to automatically assign a default value for the parameter. You must dene the parameters that the ASP requires on either the Administrative Parameters tab or the Parameters tab and select the Parameter is required to use ASP check box. When the New Broadcast wizard prompts for the administrative parameters, you must specify the value of a required parameter; otherwise, the wizard does not move to the next step. Set a parameter as a password by selecting Parameter is used to specify a password. The New Broadcast wizard hides the password by displaying asterisks instead of the actual value. To use theNowSMS ASP to send SMS messages, you create the following two administrative parameters: Name: Label: Default Value: Name: Label: Default Value:
User User:

Password Password:

Modifying the ASP Denition Properties ! 175

For both parameters, select Parameter is required to use ASP. For the password parameter, select Parameter is used to specify a password.

Parameters Tab
Use the Parameters tab to specify the remaining parameters that the ASP needs in order to deliver SMS, MMS, or WAP Push messages. The New Broadcast wizard prompts you for the ASP parameters and stores the values in the ASP broadcast denition.

You can perform the following actions on the Parameters tab: Add creates a new non-administrative parameter. To add a parameter, click Add. The Parameter Properties dialog box opens. Modify modies the properties of an existing parameter. To change the properties, select the name of the parameter and click Modify. The Parameter Properties dialog box opens. Remove deletes a non-administrative parameter. To remove a parameter, select the row with the name of the parameter and click Remove. To dene a non-administrative parameter, you specify the name of the parameter, a descriptive label, and the default value in the Parameter Properties dialog box. You also set whether the parameter is required by the ASP or is an address variable.

176 ! Chapter 6: Managing Advanced Broadcast Tools

Every ASP SMS request to the HTTP post interface must include the recipient phone number and the message content that you want sent to the recipient. You must examine the API specications of the third-party ASP to determine the parameters that specify this information. Select Parameter is required to use ASP for parameters that are required by the ASP HTTP interface. When the New Broadcast wizard prompts for the non-administrative parameters, you must specify the value of a required parameter; otherwise, the wizard does not move to the next step. Select Parameter species a WAP URL to use the parameter in the New Broadcast wizard to create a WAP integration broadcast. Select Parameter is used to specify the recipient address variable to set the parameter that species the column with the recipient phone numbers. The New Broadcast wizard requires that at least one parameter contain the phone numbers. If you assign a default value, then use the variable in the data source table that contains the phone numbers for the recipients. To use the NowSMS ASP to send SMS messages, you might create the following non-administrative parameters: Name: Label: Default Value: Name: Label: Default Value:
Text Text: SMS message

Phone number To:

Modifying the ASP Denition Properties ! 177

For both parameters, select Parameter is required to use ASP. For the rst parameter, select Parameter is used to specify the recipient address variable.

Implementing an Automatic ASP Response Decoder


You can implement a response decoder to interpret each HTTP response. The response decoder decodes the HTTP response that is written to the audit table and provides an understandable format in the Query Response window. You use the AuditAspRequest server property to specify that the decoded response information is written to the audit table when the ASP broadcast denition is executed. The variable in the audit table is called aspresp. For more information, see Audit Server Properties on page 134 and Auditing Broadcast Transmissions (Chapter 4, SAS Digital Marketing: Users Guide). Suppose you send a request to the ASP and receive the following response:
to=19191234567;result=200;msg_id=115247;

You might want an interpretation of this response written to the audit table:
200: Success; msg_id=117206;

This message enables you to quickly understand the response information, such as a successful transmission, without having to examine the API specications. SAS Digital Marketing provides one sample decoder, ClickatellDecoder.java. To use the ClickatellDecoder you must revise &user=user , &password=password , and &api=api to correspond to your Clickatell user ID, password, and api ID. Then you recompile the class. Your response decoder must meet the following specications: stores the compiled class in the ROOT directory on the SAS Digital Marketing server. includes a static method called decode that uses an input parameter of type String to take the response string and a return parameter of type String to return the decoded response. Here is an example of a sample signature:
public static String decode(String response)

N OTE : After the class is compiled, you must restart the SAS Digital Marketing server in order to use any changes to the response decoder program.

178 ! Chapter 6: Managing Advanced Broadcast Tools

Managing WAP Integration Broadcasts

About WAP Integration Broadcasts


A Wireless Application Protocol (WAP) integration broadcast uses the WAP URL address in an ASP broadcast denition to deliver mobile HTML content for the multichannel broadcast. You congure a WAP integration broadcast so that the interaction between the multichannel broadcast and WAP integration broadcast is transparent when the multichannel broadcast is scheduled.

Conguring WAP Integration Broadcasts


To congure a WAP integration broadcast, complete the following steps: 1. Register with an ASP provider and purchase credit, such as Clickatell for sending mobile messages. Then use the ASP Denition Manager to dene a connection to your ASP provider. Test your driver and verify that you can use the ASP denition to send an SMS message. For more information, Using the ASP Denition Manager on page 170. 2. In the ASP Denition Manager, select the ASP denition that you created in the previous step and click Duplicate. Specify a unique name for the new ASP denition. 3. Select the new ASP denition and click Edit. In the ASP Denition Properties dialog box, select the Parameters tab. Then select the WAP URL parameter and click Modify.

Conguring WAP Integration Broadcasts ! 179

4. Select Parameter species a WAP URL and click OK. To save the ASP denition, click OK.

180 ! Chapter 6: Managing Advanced Broadcast Tools

5. Use this ASP denition in the New Broadcast wizard to create a new ASP broadcast. The default WAP URL address is
http://www.google.com/m?q=sas.

To modify the URL address, use the Broadcast Properties dialog box.

For more information, see Using Broadcast Properties (Chapter 4, SAS Digital Marketing: Users Guide). 6. Select Test on the General tab in the Broadcast Properties dialog box. Enter a mobile device phone number and click OK.

7. Verify that the mobile device received the HTML content.

Using the SpamAssasin Spam Filter ! 181

You can dene several WAP integration broadcasts. To set the default WAP integration broadcast, use the WAP Integration Options in the Server Conguration window. After you set the WAP integration option, all multichannel broadcasts automatically use this WAP integration broadcast to send HTML content to a mobile device. For more information, see WAP Integration Options on page 119. To change the WAP Integration broadcast after the multichannel broadcast is created, use the WAP tab in the broadcast properties dialog box. For more information, see WAP Properties (Chapter 4, SAS Digital Marketing: Users Guide).

Using the SpamAssasin Spam Filter

About Spam Filters


SAS Digital Marketing provides tools that enables you to compute spam lter scores for e-mail broadcast messages. Mail lters use this score to identify e-mail messages as unsolicited commercial e-mail (UCE) or spam. You can use SpamAssassin to integrate spam lter scores in the preview functionality of SAS Digital Marketing when an e-mail message is sent.

Understanding SpamAssassin
SpamAssassin is open source software for e-mail spam ltering that is based on content-matching rules. A large set of rules is provided that determine whether an e-mail message is spam. SpamAssassin searches specic elds in the e-mail header and the e-mail body for the occurrence of certain expressions. If a match is found, then the e-mail is assigned a spam lter score. SpamAssassin can add customizable e-mail header information to the e-mail message that includes the spam lter score. The e-mail recipient or Internet service provider might use the score that results from multiple tests or other criteria to determine whether the e-mail message is placed in a spam folder, deleted, or agged. You can congure SAS Digital Marketing to display the SpamAssassin score when an e-mail broadcast is previewed. Each SpamAssasin test consists of a label and a description. Usually the label is an upper case identier that is separated by underscores, such as LIMITED_TIME_ONLY. The description for this label might be Offers a limited time offer. E-mail passes the test when the message contains certain variants of a phrase, such as limited time only. If SpamAssassin assigns +0.3 as the spam lter score, then the e-mail must pass additional tests in order to meet a spam threshold. After the spam lter score reaches the spam threshold (5), SpamAssassin classies the e-mail as spam. Some tests, such as those for invalid message IDs or years, are assigned a very high score, so that a single test might cause the e-mail to meet the spam threshold. When the total spam lter score is above the value of the required_hits setting that is specied in

182 ! Chapter 6: Managing Advanced Broadcast Tools

the SpamAssassin conguration, the e-mail is identied as spam and rewritten according to several options. For the default conguration, SpamAssassin appends the content of the e-mail as a MIME attachment, with a brief excerpt in the message body, and a description of the tests that classied the e-mail as spam. If the score is lower, then information about the passed tests and the total score is added to the e-mail headers. This score might be used in post-processing for less severe actions, such as tagging the e-mail as suspicious.

Implementing a SpamAssassin Filter


SAS Digital Marketing uses the version of SpamAssassin that is licensed by Perl (Mail::SpamAssassin in CPAN). For information about how to install SpamAssassin, see SpamAssassin by Alan Schwartz. To use SpamAssassin with SAS Digital Marketing, you need only the basic SpamAssassin shell script or BAT le. This script processes an incoming MIME message on standard input and then outputs the scored message. You congure SAS Digital Marketing to use SpamAssassin during an e-mail preview by setting the SpamScanClass and SpamAssassinCommand server properties.

Set the Spam Server Properties


To use SAS Digital Marketing with the versions of SpamAssassin that are licensed by Perl, complete the following steps: 1. Set the SpamAssassinCommand server property to the SpamAssassin shell script or BAT le on your computer. If you run SpamAssassin as a daemon, then set the SpamAssassinCommand server property to SPAMC.EXE. 2. Set the SpamScanClass server property to use com.sas.email.server.BulkEmailUtils so that SAS Digital Marketing uses a scanMessage implementation. After you set the server properties, validate your SpamAssassin integration in a SAS Digital Marketing client. Use the broadcast denition in the Samples/E-mail folder to preview the Edumation Monthly Newsletter. This message generates a score of 1.4 that is below the default spam threshold value of 5.0. To see the spam lter score, examine the e-mail header in your e-mail reader. For more information, see Examining the Spam Filter Score (Chapter 4, SAS Digital Marketing: Users Guide).

Using Geolocation Technology ! 183

Using Geolocation Technology

About Geolocation Technology


SAS Digital Marketing can use geolocation technologies to support Geo marketing analysis. This technology uses IP addresses to determine a users geographic latitude, longitude and, by inference, city, region, and country. A users IP address is compared with known locations of other electronically neighboring servers and routers Geo marketing analysis enables you to display data in a geographical context and to: determine the location of your customers characterize your customers or make inferences based on IP registration visualize the data in a geographic context by generating a digital map calculate summary information for specic locations view customer response within specic locations SAS Digital Marketing can use MaxMind (www.maxmind.com) technologies to augment your response data. The response table contains geographical information based on recipient e-mail addresses and the location of the response. While geolocation has some inherent precision problems, this technology is used for fraud detection and criminal investigations. As broadband support becomes more prevalent over dial-up Internet access, the correlation between IP address and physical location becomes more accurate. Once your response data is augmented with geographical information, you can visualize your e-mail response using SAS/GRAPH software.

184 ! Chapter 6: Managing Advanced Broadcast Tools

You can also use the SAS language adapter to connect the geographic information to your selection process and further segment the customers that receive particular e-mail offers. For more information, see Chapter 7, Managing SAS Jobs.

Installing a Geolocation Database


Several vendors provide IP registration data to support geolocation. SAS Digital Marketing integrates with MaxMind GeoIP City Database. A free version of the product, called GeoLite City, enables you to develop and test your geo marketing strategies. When the geo marketing strategy is ready to deploy, you should purchase the more extensive database along with a subscription to keep the database accurate. To install MaxMind GeoIP City Database, complete the following steps: 1. Download the binary format of the GeoCity Lite or GeoCity database from:
http://www.maxmind.com/app/city

Installing a Geolocation Database ! 185

This version of the database uses an open source Java API to efciently search the database. 2. Unpack the binary archive le GeoLiteCity.dat or GeoIPCity.dat with a le compression utility such as WinZip. Store the le in the ROOT/config directory on the SAS Digital Marketing server. 3. Download the latest version of the Java API from:
http://www.maxmind.com/download/geoip/api/java/

Unpack the archive le GeoIPJava-n.zip with a le compression utility such as WinZip. Store the le in a directory on the SAS Digital Marketing server such as c:/geobuild.

4. Build the Java API. MaxMind provides only the Java API in source form. To build the Java API, use a 1.4.n Java software development kit (SDK) that is available from the Sun Developer Network at:
http://java.sun.com/j2se/1.4.2/download.html

5. In the DOS Prompt window, change the directory to the Java source directory under source/com/maxmind/geoip. Compile the source jars by executing the following command:
javac *.java

186 ! Chapter 6: Managing Advanced Broadcast Tools

6. Back up the source directory and the jar le by executing the following command:
jar -cvf geocity.jar *

7. Copy the support jar le, geocity.jar, to the ROOT/lib directory on the SAS Digital Marketing server.

Conguring a Server Extension


In order to access MaxMind GeoIP City Database, you must congure SAS Digital Marketing to use the MaxMind server extension. A server extension is a protected thread that is invoked when the SAS Digital Marketing server starts. In this thread you can perform periodic processing that facilitates reporting or integrates with other business processes.

MaxMind Server Properties ! 187

SAS Digital Marketing automatically provides a MaxMind server extension. The server extension source is also provided in the ROOT/doc/javaext directory. This server extension periodically runs and augments the response data with geographic information. To congure a server extension you must set the SEMServerExtension family of server properties in the server.properties le in the ROOT/config directory. To use the MaxMind server extension, add the following server property:
SEMServerExtension1=MaxMindExtension

MaxMind Server Properties


SAS Digital Marketing provides the following server properties that are specic to the MaxMind server extension: MaxMindDatFile species the complete path to the MaxMind DAT le. By default, SAS Digital Marketing searches for GeoCity.dat or GeoLitCity.dat in the ROOT/config directory on the server. MaxMindServer species the SAS Digital Marketing server that you want to use. By default, this property is set to localhost:9221. MaxMindUser species the user ID for the SAS Digital Marketing server that you specied in the MaxMindServer property. MaxMindPassword species the password for the SAS Digital Marketing server that you specied in the MaxMindServer property. MaxMindPeriod species the period in days from the date of execution to continue to augment response data. By default SAS Digital Marketing augments only broadcasts that have executed in the past 30 days. To improve performance, SAS Digital Marketing limits the length of the period. MaxMindInterval species the interval in minutes to wait between each augmentation of the response data. By default the extension augments the response data with geographic information every 15 minutes.

Verify the Geolocation Database


After the server is congured, you can examine the server log to verify that the MaxMind server extension is running.
NOTE: MaxMind extension being installed.

188 ! Chapter 6: Managing Advanced Broadcast Tools

NOTE: Checking for "\SASDigitalMarketing\5.1\.\config\GeoCity.dat" NOTE: Checking for "\SASDigitalMarketing\5.1\.\config\GeoLiteCity.dat" NOTE: MaxMind extension now running.

When the server extension executes, the log indicates how many IP addresses have resolved along with any errors that might have occurred.
NOTE: NOTE: NOTE: NOTE: NOTE: NOTE: NOTE: NOTE: Augmenting response table for 6183_both (Broadcast_zrn4k2) Found 4 IP addresses to resolve. Augmentation took 3234 milliseconds. Augmenting response table for 6211_Both (Broadcast_ysi8g2) Found 0 IP addresses to resolve. Augmentation took 641 milliseconds. Augmenting response table for 6245_both (Broadcast_108q8xv) Found 0 IP addresses to resolve.

If you have pre-existing response data, then the rst execution of the MaxMind server extension might require a considerable amount of processing time (hours). After the initial argumentation of the response data is complete, updates to new response data should require less than a minute. When the server log contains no error messages, the MaxMind extension is properly congured on the SAS Digital Marketing server so that your response data is automatically augmented with geographic information. For information about the response table, Response Table Layout (Chapter A, SAS Digital Marketing: Users Guide).

Maintain the Geolocation Database


The MaxMind GeoLite City database is less accurate and updated on a quarterly basis. For the most accurate response data, you should purchase the more extensive MaxMind GeoIP City database along with a subscription and regularly refresh the data. To refresh the data with a new DAT le, complete the following steps: 1. Stop the SAS Digital Marketing server by selecting Stop from the Actions menu. 2. Copy the new DAT le to the ROOT/config directory on the SAS Digital Marketing server. 3. Restart your SAS Digital Marketing server.

Chapter 7

Managing SAS Jobs


Contents
Overview of the SAS Language Adapter . . . . . Understanding the SAS Language Adapter How the SAS Language Adapter Works . . Working with SAS Jobs . . . . . . . . . . . . . What Is a SAS Job? . . . . . . . . . . . . About the SAS Job Manager . . . . . . . . Create a SAS Job . . . . . . . . . . . . . . Edit a SAS Job . . . . . . . . . . . . . . . Remove a SAS Job . . . . . . . . . . . . . Rename a SAS Job . . . . . . . . . . . . . Developing SAS Code . . . . . . . . . . . . . . Working with the SAS Job Editor . . . . . Viewing the Log . . . . . . . . . . . . . . Selecting the Target . . . . . . . . . . . . Viewing the Properties . . . . . . . . . . . Viewing the Compiled SAS Code . . . . . Accessing Tasks . . . . . . . . . . . . . . Setting Preferences for the SAS Job Editor Consolidating Data . . . . . . . . . . . . . . . . About Consolidating Data . . . . . . . . . Using the Default SAS Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 190 190 192 192 192 193 194 194 194 195 195 196 197 198 199 199 203 206 206 206

190 ! Chapter 7: Managing SAS Jobs

Overview of the SAS Language Adapter

Understanding the SAS Language Adapter


The SAS language adapter enables you (as the site administrator) to access the data and broadcast denitions in SAS Extraction, Transformation, and Load (ETL) processes from SAS Digital Marketing. The SAS language adapter eliminates the need for separate connections to the different databases that contains SAS Digital Marketing data. Instead, you can connect to the SAS Digital Marketing server to access the response data that is associated with SAS Digital Marketing broadcasts. The advantages of using the SAS language adapter rather than accessing the SAS Digital Marketing data directly are the following: Using the Web tier prevents the SAS code from having to know how to correlate the broadcast monikers to database tables. You need to connect only to the SAS Digital Marketing server rather than connecting to each database that SAS Digital Marketing is congured to use. Consequently, if the administrator changes the database, your SAS code is not affected by these changes. The code automatically detects the new data location. You can use the SAS language adapter to do the following: to run several advanced reports, such as an audit histogram, a reply histogram, or a response histogram. For more information, see Viewing SAS Reports (Chapter 4, SAS Digital Marketing: Users Guide). to consolidate SAS Digital Marketing data with the data from other solutions and business processes. For more information, see Consolidating Data on page 206. N OTE : You must have administrative privileges (Level 4 permission) to manage SAS jobs.

How the SAS Language Adapter Works


The SAS language adapter consists of several pieces that you must install and congure. For information about installation requirements and how to congure the SAS language adapter, see Implementing the SAS Language Adapter on page 86. N OTE : To generate SAS reports in multiple languages, such as Asian language and non-Asian language, install Foundation SAS to use UTF-8 encoding. Make sure Foundation SAS supports both UNICODE and DBCS. If batch SAS is used as your SAS environment and the default conguration

How the SAS Language Adapter Works ! 191

for your SAS session does not use UTF-8 mode, then use the BatchSASOptions server property to set the ENCODING= option to use UTF-8. For additional information, see Integration Utils Server Properties on page 141. If an IOM workspace server is used as your SAS environment, then see SAS 9.1.3 Integration Technologies Server Administors Guide for information how to congure your workspace server to use UTF-8 mode. After you have congured the SAS language adapter, you can create and manage SAS jobs from SAS Digital Marketing. When you execute the SAS job, the SAS program uses the Web reporting tier to query broadcast data as an XML stream. The SAS program that you develop using the SAS language adapter in SAS Digital Marketing can be run in any SAS 9 environment, such as the following: interactive SAS environment batch mode SAS Data Integration Studio SAS Enterprise Guide on the SAS Stored Process Server The SAS Digital Marketing server provides an environment for running and developing SAS programs that can be used with SAS Digital Marketing. The following gure shows how the SAS language adapter works:
Figure 7.1 How the SAS Language Adapter Works

192 ! Chapter 7: Managing SAS Jobs

After the user executes a SAS program in any execution environment, the Web reporting tier is called from SAS using the URL access method to retrieve the XML query. An XML LIBNAME is assigned to the URL FILEREF. Then by using the SAS Digital Marketing server, a SAS ETL process can access the broadcast data (from the response, reply, customer, or audit databases) like any other SAS data set.

Working with SAS Jobs

What Is a SAS Job?


A SAS job is the le that contains the SAS code that you run to generate a SAS report or to consolidate data. These jobs are organized into the following groups: Group Reports When you execute a SAS job in this group, the SAS code runs against all of the broadcasts in the selected broadcast group. Broadcast Reports When you execute a SAS job in this group, the SAS code runs against the currently selected broadcast. Batch Jobs When you execute a SAS job in this group, the SAS code consolidates the data from SAS Digital Marketing with the data from another application or process.

About the SAS Job Manager


SAS Digital Marketing ships with several default SAS jobs that create reply, send, and response histogram reports. You can use this SAS code as the basis for developing other reports for other execution environments. You can manage these reports from the SAS Job Manager. To open the SAS Job Manager, select SAS Manage Jobs from the Tools menu.

Create a SAS Job ! 193

Create a SAS Job


To create a SAS job, complete the following steps: 1. In SAS Digital Marketing, select Manage SAS Jobs from the Tools menu. The SAS Job Manager dialog box opens. 2. Click Add. The New SAS Job dialog box opens.

3. In the Name box, specify the name of the new SAS job. 4. From the Type drop-down list, select the category for the job. You can choose from the following types: Broadcast Report, Group Report, or Batch Job. 5. Select the Open new job in editor check box if you want the job to open in the SAS Job Editor after you click OK. For more information, see Developing SAS Code on page 195. 6. Click OK.

194 ! Chapter 7: Managing SAS Jobs

Edit a SAS Job


To edit a SAS job, complete the following steps: 1. In SAS Digital Marketing, select Manage SAS Jobs from the Tools menu. The SAS Job Manager dialog box opens. 2. From the list of SAS jobs, select the job that you want to edit and click Edit. The SAS Job Editor opens. For more information, see Developing SAS Code on page 195.

Remove a SAS Job


To delete a SAS job, complete the following steps: 1. In SAS Digital Marketing, select Manage SAS Jobs from the Tools menu. The SAS Job Manager dialog box opens. 2. From the list of SAS jobs, select the job that you want to delete and click Remove. A dialog box prompts you to conrm this deletion. Click Yes. The SAS job is deleted from the SAS Job Manager.

Rename a SAS Job


To rename a SAS job, complete the following steps: 1. In SAS Digital Marketing, select Manage SAS Jobs from the Tools menu. The SAS Job Manager dialog box opens. 2. From the list of SAS jobs, select the job that you want to rename and click Rename. The Rename dialog box opens. 3. In the New Name box, type the new name of the SAS job. Click OK. The new name for the job appears in the SAS Job Manager.

Working with the SAS Job Editor ! 195

Developing SAS Code

Working with the SAS Job Editor


Using the SAS Job Editor, you can edit the SAS code in your SAS jobs to customize and develop new reports.

The upper portion of the window displays the SAS code and the report that was created from any code that you submitted. If no code has been submitted yet, then the text Select submit to execute the SAS job is visible.

196 ! Chapter 7: Managing SAS Jobs

N OTE : If you are developing SAS code using the JAVA SAS/GRAPH driver, then any graphical output in the report does not appear in the SAS Job Editor. When you submit the SAS code, an external Web browser window (such as Internet Explorer) opens to display the report. For more information about how each graph device driver works with SAS reports, see Requirements for Viewing SAS Reports (Chapter 2, SAS Digital Marketing: Web Studio Users Guide). The lower portion of the window contains the following tabs: Log tab displays events from executing the SAS code and any errors. The log includes the time when the SAS code is executed and the total processing time. Target tab enables you to select the group or broadcast against which to run the report. N OTE : This tab is not available if you are editing a batch SAS job. Properties tab lists the properties of the current report. Compiled SAS Code tab displays the compiled SAS code that you can run in any execution environment.

Viewing the Log


The Log tab reports the events from running the SAS code and any errors or warnings.

Selecting the Target ! 197

After SAS Digital Marketing runs the SAS code, the icon on the Log tab changes to one of the following: species that the code ran with no errors or warnings. species that an error occurred when running the SAS code. You should review these errors in the log. species that a warning was generated when running the SAS code. You should review these warnings in the log. The log also includes the time when the SAS code is executed and the total processing time.

Selecting the Target


The Target tab lists the groups or broadcasts against which you can run the report.

198 ! Chapter 7: Managing SAS Jobs

If you selected a group report, then this tab lists the groups that you dened in SAS Digital Marketing Web Studio. From this tab, you can select the group to use to run the report. If you selected a broadcast report, then this tab lists all of the broadcasts. From this tab, you can select the broadcast to use to run the report. N OTE : This tab is not available if you are editing a batch SAS job.

Viewing the Properties


The Properties tab lists the properties for the current report. You can see the graph device for the report, whether the report was generated successfully, any SAS ODS options that were specied, the le extension, and the mime type.

Accessing Tasks ! 199

Viewing the Compiled SAS Code


The Compiled SAS Code tab displays the compiled SAS code that you can run in any execution environment.

Accessing Tasks
The menu bar and the toolbar enable you to access tasks that create and manage your SAS code. The list of active menu options varies according to the current window and according to the kind of object that is selected. Unavailable menu options are disabled or hidden. Many menu and toolbar options are also available in pop-up menus. You use the menus to perform common tasks.

File Menu
Save saves your SAS code. Save As enables you to specify a lename and location for the SAS code when you save it. Page Setup opens the page setup utility so that you can specify the paper size, page orientation, page

200 ! Chapter 7: Managing SAS Jobs

margins, and printer properties. Print prints the SAS code as it appears in the SAS Job Editor. Close closes the SAS Job Editor.

Edit Menu
Cut deletes the selected text and stores it on the clipboard. Copy copies the selected text onto the clipboard. Nothing is copied if you do not select any text. Paste inserts the contents of the clipboard into the SAS code at the pointer position. Undo deletes the most recent text string that you typed or reverses your most recent edit action. Select All selects all the SAS code. Find/Replace searches for each case of a specic word or phrase in the SAS code. You can replace this word or phrase with alternative text. When you search, you can specify to match by capitalization or the entire word. You can also specify the direction of the search and whether to search both the code and the comments, only the code, or only the comments. Go To Line enables you to jump to a line in the SAS code. This functionality is useful when you are trying to x compilation errors in the code.

View Menu
Refresh refreshes the contents of the SAS Job Editor. In Browser displays the report that is generated by the SAS code in a separate browser window. Select Preferences from the Tools menu to specify the command that opens your external Web browser. Find Previous Error moves to the previous error or warning in the log. When SAS Digital Marketing runs the SAS code, any errors or warnings appear in the log. You can nd these errors or warnings by using this menu option. For more information about the log, see Viewing the Log on page 196. Find Next Error moves to the next error or warning in the log. When SAS Digital Marketing runs the SAS code, any errors or warnings appear in the log. You can nd these errors or warnings by using this menu option. For more information about the log, see Viewing the Log on page 196.

Accessing Tasks ! 201

Actions Menu
Submit submits the SAS code for execution. The Log tab shows the results of the SAS job and any errors that might have occurred. If a report is created, it appears in the right pane of the SAS Job Editor.

Tools Menu
Manage JDBC Connections manages the connections to the JDBC data table. For more information, see Conguring JDBC Data Providers on page 222. JDBC Table Viewer starts the JDBC table viewer so that you can examine every record in the JDBC data table. For more information, Using the JDBC Table Viewer (Chapter 2, SAS Digital Marketing: Users Guide). Manage SAS Jobs opens the SAS Job Manager. For more information, see About the SAS Job Manager on page 192. Preferences enables you to specify the appearance of the SAS code in the editor. For more information, see Setting Preferences for the SAS Job Editor on page 203.

202 ! Chapter 7: Managing SAS Jobs

Help Menu
Using this Window starts Help for the active window. Help Contents starts Help for SAS Digital Marketing. About SAS Code Editor provides information about the release of the SAS Code Editor, and system information such as the operating system name, the JRE version, and the ROOT and working directory names.

Using the Toolbar


The following buttons are available from the SAS Job Editor toolbar: saves the SAS job. submits the SAS code for execution. The Log tab shows the results of the SAS job and any errors that might have occurred. If a report is created, it appears in the right pane of the SAS Job Editor. moves to the previous error in the log. When SAS Digital Marketing runs the SAS code, any errors or warnings appear in the log. You can nd these errors or warnings by using this menu option. For more information about the log, see Viewing the Log on page 196. moves to the next error in the log. When SAS Digital Marketing runs the SAS code, any errors or warnings appear in the log. You can nd these errors or warnings by using this menu option. For more information about the log, see Viewing the Log on page 196. displays the report that was generated from the SAS code in an external Web browser. prints the source content as it appears in the SAS Job Editor. deletes the selected text from the source content and stores it on the clipboard. copies the selected text onto the clipboard. Nothing is copied if you do not select any text. inserts the contents of the clipboard into the source content at the pointer position. deletes the most recent text string that you typed or reverses your most recent edit action.

Setting Preferences for the SAS Job Editor ! 203

searches for each case of a specic word or phrase in the SAS code. You can replace this word or phrase with alternative text. When you search, you can specify to match by capitalization or the entire word. You can also specify the direction of the search and whether to search both the code and the comments, only the code, or only the comments. starts the JDBC table viewer so that you can examine every record in the JDBC data table. For more information, see Using the JDBC Table Viewer (Chapter 2, SAS Digital Marketing: Users Guide).

Setting Preferences for the SAS Job Editor


You can use the Preferences dialog box in the SAS Job Editor to specify the appearance of the SAS code and to dene keywords.

Specifying the General Options


On the General tab, you can specify the following options: Show line numbers

204 ! Chapter 7: Managing SAS Jobs

displays the line numbers in the SAS code. Displaying the line numbers can make it easier to nd errors in the code. Auto indent indents the lines in the SAS code. Document coloring applies colors to the different elements in the SAS code. These colors help you quickly see the comments, any macros, or other programming statements. Read only changes the permissions on the le so that you can view the SAS code but cannot edit it. Tab size species the number of spaces for a tab. File type species the type of le. In SAS Digital Marketing, the default le type is SAS Program File. N OTE : The other le types do not apply in SAS Digital Marketing. Collapsible code sections species whether you can expand and collapse sections in the SAS code. If you select this option, then you can also choose from the following options: Show section lines in text divides the code into sections by using horizontal lines. Show section brackets in margin displays in the margin brackets to show the content that is in each section.

Customize the Appearance of the SAS Code


By default, the SAS language editor highlights your text in different colors and font styles. This can help you easily distinguish the different elements in the SAS code and detect basic syntax errors more quickly. You can adjust the text color, font, font size, and font style to create and save your own appearance schemes. To customize the appearance of a le, complete the following steps: 1. Select Preferences from the Tools menu. The Editor Options dialog box opens. 2. Click the Appearance tab. 3. From the File type drop-down list, select SAS Program File to change the appearance of the SAS code. N OTE : The SAS Program File option is selected by default. The other le types do not apply in SAS Digital Marketing. 4. From the Scheme drop-down list, select the Scheme that you want to use. N OTE : If you want to apply this scheme to the SAS code, click OK. If you want to customize this scheme, then continue with the next steps.

Setting Preferences for the SAS Job Editor ! 205

5. In the Font section, select the Name and Size. 6. In the Elements box, select the syntax element for which you want to adjust the appearance. If you are not sure what the name of the element is, you can click an element in the sample le that is displayed in the Preview box. 7. For the syntax element, select the foreground color, background color, and font style (for example, bold, italic, and so on). 8. Repeat these steps for each element that you want to customize. 9. To save the scheme that you created, click Save As. In the Save Scheme dialog box, type the name of the scheme and click OK. The scheme now appears in the Scheme drop-down list. N OTE : To delete a scheme that you have created, click Delete. You cannot delete the schemas that ship with SAS Digital Marketing. 10. Click OK to apply your appearance changes.

Create User-Dened Keywords


You might want to create user-dened keywords for programming elements, such as SAS procedure statements, variables, and other user-dened formats. To create a user-dened keyword, complete the following steps: 1. Select Preferences from the Tools menu. The Editor Options dialog box opens. 2. Click the General tab. 3. Click Dened Keywords. The User dened keywords dialog box opens. 4. To add a new keyword, click Add. The Add user dened keyword dialog box opens. 5. Type the name of the new keyword in the Enter new keyword box and click OK. The new keyword now appears in the User dened keywords dialog box. To rename an existing keyword, select the keyword from the list and click Rename. In the Rename user dened keyword dialog box, type the new name for the keyword and click OK. To delete an existing keyword, select the keyword from the list and click Delete.

206 ! Chapter 7: Managing SAS Jobs

Consolidating Data

About Consolidating Data


You can use the SAS language adapter to consolidate SAS Digital Marketing data with the data from other solutions or processes. For example, every night you want to consolidate your SAS Digital Marketing data with the data from another process. At the end of the SAS job, you could set a property that saves the date and time of the last data consolidation. The next night when the build runs again, the SAS job consolidates only the SAS Digital Marketing data that was created or updated since the last consolidation. To faciliate these types of consolidation jobs, SAS Digital Marketing has a set of SAS jobs that can be congured to execute periodically in batch mode. Several macros ship with SAS Digital Marketing. For more information, see Using the Default SAS Macros on page 206.

Using the Default SAS Macros


SAS Digital Marketing ships with several default macros. These macros are saved in the ROOT/sasmacro/sem.sas le and eliminate the need to create ebtool URLs. You can include the macro code directly in a SAS job, or you can use these macros in any execution context where you can run SAS code. N OTE : Additional macros are described in the ROOT/sasmacro/sem.sas le. You can also create custom macros. If you deploy these custom macros to the sem.sas le, then your macros are available to all SAS jobs in any execution environment.

Using the Default SAS Macros ! 207

SEM_DO_PREVIEW Macro
The SEM_DO_PREVIEW macro enables you to send a preview e-mail from within SAS. The syntax for this macro is the following:
%macro sem_do_preview(intable,results,moniker,address)

The user-supplied values are the following: intable is the name of the data source table that contains the e-mail addresses and the customization data for the recipients. results is the table that contains the responses from sending the broadcast. moniker is the moniker of the broadcast that you want to send. address is the e-mail address of the preview recipient. The preview recipient should receive a preview e-mail for each row in the data source table. The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password={sas001}YWRtaW4x; sem_broadcast_moniker=Broadcast_1108665300405; sem_broadcast_name=%nrstr(AML Report - January 2004); sem_url=http://localhost/sdm/;

data work.recipients; salutation_nm="Dr. Bob"; email_address_txt="bob@acme.com"; run; %sem_do_preview(work.recipients,work.results,&sem_broadcast_moniker,me@domain.com); ods html file=_webout; proc print data=work.results;run; ods html close; %sem_set_meta(text/html,.html,0,Report generation successful.);

208 ! Chapter 7: Managing SAS Jobs

SEM_DO_TRANSACTION Macro
The SEM_DO_TRANSACTION macro enables you to send an e-mail from SAS. The syntax for this macro is the following:
%macro sem_do_transaction(intable,results,moniker)

The user-supplied values are the following: intable is the name of the data source table that contains the e-mail addresses and customization data for the recipients. results is the table that contains the responses from sending the broadcast. moniker is the moniker of the broadcast that you want to send. Each row in the data source table results in one broadcast message being sent. The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password={sas001}YWRtaW4x; sem_broadcast_moniker=Broadcast_1108665300405; sem_broadcast_name=%nrstr(AML Report - January 2004); sem_url=http://localhost/sdm/;

data work.recipients; salutation_nm="Dr. Bob"; email_address_txt="bob@acme.com"; run; %sem_do_transaction(work.recipients,work.results,&sem_broadcast_moniker); ods html file=_webout; proc print data=work.results;run; ods html close; %sem_set_meta(text/html,.html,0,Report generation successful.);

Using the Default SAS Macros ! 209

SEM_EXPORT_PROPERTIES Macro
The SEM_EXPORT_PROPERTIES macro enables you to export the server properties to SAS macros. N OTE : When a SAS job is initialized, the SEM_EXPORT_PROPERTIES macro is called automatically. The syntax for this macro is the following:
%macro sem_export_properties()

The following is an example of how you might use this macro:


FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_url=http://localhost/sdm/;

%sem_export_properties(); %put &WebAppURL=;

210 ! Chapter 7: Managing SAS Jobs

SEM_GET_ALL_BROADCASTS Macro
The SEM_GET_ALL_BROADCASTS macro extracts the list of dened broadcasts into an output table. The syntax for this macro is the following:
%macro sem_get_all_broadcasts(table,period,details)

The user-supplied values are the following: table is the name of the reply table period is the number of days to look back to get broadcasts executed during that period details is whether to get the broadcast details The following is an example of how to get a list of all the broadcasts that were executed in the past 30 days:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_broadcast_moniker=Broadcast=1108665300405; sem_broadcast_name=%nrstr(Data Quality Forum); sem_url=http://localhost/sdm/;

%sem_get_all_broadcasts(work.broadcasts,30,false); ods html file=_webout; proc print data=work.broadcasts; run; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

Using the Default SAS Macros ! 211

SEM_GET_ALL_REPLIES Macro
The SEM_GET_ALL_REPLIES macro extracts the replies from the reply table. If you do not specify any response variables to retrieve, then all the rows in the table are retrieved. For more information about the reply table, see Reply Table Layout (Appendix A, SAS Digital Marketing: Users Guide). The syntax for this macro is the following:
%macro sem_get_all_replies(table,variables,where)

The user-supplied values are the following: table is the name of the reply table variables are the rows of the variables to retrieve in the reply table where is the SQL WHERE clause for creating a subset of the response records N OTE : The SEM_GET_ALL_REPLIES macro does not correlate the broadcasts to the reply records. To correlate broadcasts to the reply records, use the SEM_GET_REPLIES macro. The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_url=http://localhost/sdm/;

%sem_get_all_replies(work.replies,,); ods html file=_webout; goptions device=activex gsfname=_webout gsfmode=replace; run; title "All Reply Data"; proc gchart data=work.replies; pie3d type; run; quit; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

212 ! Chapter 7: Managing SAS Jobs

SEM_GET_AUDIT Macro
The SEM_GET_AUDIT macro extracts from the audit table the data for the specied audit variables into a table. If you do not specify any audit variables to retrieve, then all the rows in the table are retrieved. For more information about the audit table, see Audit Table Layout (Appendix A, SAS Digital Marketing: Users Guide). The syntax for this macro is the following:
%macro sem_get_audit(table, moniker,variables,where)

The user-supplied values are the following: table is the name of the audit table moniker is the broadcast moniker variables are the rows of audit variables to retrieve where is the SQL WHERE clause for creating a subset of the response records The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_broadcast_moniker=Broadcast=1108665300405; sem_broadcast_name=%nrstr(Data Quality Forum); sem_url=http://localhost/sdm/;

%sem_get_audit(work.audit,&sem_broadcast_moniker,,); ods html file=_webout; title "Audit Data for &sem_broadcast_name"; proc print data=work.audit; run; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

Using the Default SAS Macros ! 213

SEM_GET_GROUP Macro
The SEM_GET_GROUP macro extracts the contents of a broadcast group. The syntax for this macro is the following:
%macro sem_get_group(b_table,g_table,path)

The user-supplied values are the following: b_table is the name of the table for the broadcasts in the group g_table is the name of the table for any subgroups in the broadcast group path is the path of the group to examine The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_group=%nrstr(\Samples\Dynamic); sem_group_name=%nrstr(Dynamic); sem_url=http://localhost/sdm/;

%sem_get_group(work.broadcasts,work.groups,&sem_group); ods html file=_webout; proc print data=work.groups; run; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

214 ! Chapter 7: Managing SAS Jobs

SEM_GET_HISTORY Macro
The SEM_GET_HISTORY macro extracts from the history data the broadcast history and reply history. The syntax for this macro is the following:
%macro sem_get_history(table,moniker,replies)

The user-supplied values are the following: table is the name of the table that contains the history data moniker is the broadcast moniker replies is whether to retrieve the reply history The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_url=http://localhost/sdm/;

%sem_get_history(work.history,&sem_broadcast_moniker,true); ods html file=_webout; proc print data=work.history; run; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

Using the Default SAS Macros ! 215

SEM_GET_PROPERTIES Macro
The SEM_GET_PROPERTIES macro extracts the values of the server properties into a table. The syntax for this macro is the following:
%macro sem_get_properties(table)

The user-supplied value for table is the name of the table that contains the server properties. The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_broadcast_moniker=Broadcast=1108665300405; sem_broadcast_name=%nrstr(Data Quality Forum); sem_url=http://localhost/sdm/;

%sem_get_properties(work.properties); ods html file=_webout; proc print data=work.properties; run; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

216 ! Chapter 7: Managing SAS Jobs

SEM_GET_REPLIES Macro
The SEM_GET_REPLIES macro extracts the replies for a specic broadcast from the reply table. For more information about the reply table, see Reply Table Layout (Appendix A, SAS Digital Marketing: Users Guide). The syntax for this macro is the following:
%macro sem_get_replies(table,moniker,implicit)

The user-supplied values are the following: table is the name of the reply table moniker is the broadcast moniker implicit is whether to get the implicit replies N OTE : Your site administrator can set the ReplySummaryPeriod server property to specify the number of days to look back in the reply table for determining implicitly correlated replies. For more information, see Response Server Properties on page 151. The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_broadcast_moniker=Broadcast=1108665300405; sem_broadcast_name=%nrstr(Data Quality Forum); sem_url=http://localhost/sdm/;

%sem_get_replies(work.replies,&sem_broadcast_moniker,true); ods html file=_webout; title "Reply Data for &sem_broadcast_name"; proc print data=work.replies; run; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

Using the Default SAS Macros ! 217

SEM_GET_RESPONSE Macro
The SEM_GET_RESPONSE macro extracts from the response table the data for the specied response variables into a table. If no variables are specied, then all the variables in the response table are retrieved. For more information about the response table, see Reply Table Layout (Appendix A, SAS Digital Marketing: Users Guide). The syntax for this macro is the following:
%macro sem_get_response(table, moniker,variables,where)

The user-supplied values are the following: table is the name of the response table moniker is the broadcast moniker variables are the response variables to retrieve where is the SQL WHERE clause for creating a subset of the response records The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_broadcast_moniker=Broadcast=1108665300405; sem_broadcast_name=%nrstr(Data Quality Forum); sem_url=http://localhost/sdm/;

%sem_get_response(work.response,&sem_broadcast_moniker,,); ods html file=_webout; title "Response Data for &sem_broadcast_name"; proc print data=work.response; run; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

218 ! Chapter 7: Managing SAS Jobs

SEM_GROUP_HISTORY Macro
The SEM_GROUP_HISTORY macro extracts from the history data the broadcast groups. The syntax for this macro is the following:
%macro sem_group_history(table,group,period)

The user-supplied values are the following: table is the name of the table that contains the history data group is the broadcast group period is the number of days to look back for broadcast executions The following is an example of how you might use this macro to extract the 30-day history for a group:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_group=%nrstr(\Samples\Dynamic); sem_group_name=%nrstr(Dynamic); sem_url=http://localhost/sdm/;

%sem_group_history(work.history,&sem_group,30); ods html file=_webout; proc print data=work.history; run; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

Using the Default SAS Macros ! 219

SEM_SET_META Macro
The SEM_SET_META macro sets the return type and status for a broadcast report. This macro tells the Web browser whether the report is an HTML le or an image le. It also states whether the report was successful or failed to execute. The syntax for this macro is the following:
%macro sem_set_meta(mimeType,ext,rc,message)

The user-supplied values are the following: mimeType is the mime type that the job will return ext is the extension for the output rc is the return code from the job message is the status message to display to the user The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_group=%nrstr(\Samples\Dynamic); sem_group_name=%nrstr(Dynamic); sem_url=http://localhost/sdm/;

%sem_group_history(work.history,&sem_group,30); ods html file=_webout; proc print data=work.history; run; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

220 ! Chapter 7: Managing SAS Jobs

SEM_SET_PROPERTY Macro
The SEM_SET_PROPERTY macro enables you to save the consolidation state so it is available the next time that you run a SAS job. When a job is initialized, SAS Digital Marketing automatically exports any server properties that you set to SAS macro variables. This action enables you to reference the server property as a SAS macro. For example, a SAS macro called &WebAppURL gives you the location of your SAS Digital Marketing Web Studio deployment. The syntax for this macro is the following:
%macro sem_set_property(property,value)

The user-supplied values are the following: property is the name of the server property that you want to set value is the value of the property The following is an example of how you might use this macro:
FILENAME _MACROS "sem.sas"; %INCLUDE _MACROS; FILENAME _WEBOUT TEMP; FILENAME _WEBMETA TEMP; %let %let %let %let sem_server=localhost:9221; sem_user=admin; sem_password=(sas001)YWRtaW4x; sem_url=http://localhost/sdm/;

%sem_set_property(MyProperty,%nrstr(My Value)); %sem_get_properties(work.properties); ods html file=_webout; proc print data=work.properties; run; %sem_set_meta(text/html,.html,0,Report generation successful.); ods html close;

Chapter 8

Managing JDBC Connections


Contents
Overview of JDBC Connections . . . . . . Conguring JDBC Data Providers . . . . . Types of JDBC Data Providers . . . Managing the Connections Settings . Add a JDBC Connection . . . . . . . Using SAS JDBC Explorer . . . . . . . . . About SAS JDBC Explorer . . . . . Components of SAS JDBC Explorer SAS JDBC Explorer Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 222 222 222 224 225 225 226 226

Overview of JDBC Connections


Java Database Connectivity (JDBC) technology enables you to connect to your databases through Java applications. SAS Digital Marketing use the data tables in these databases to customize your broadcast content and to record information about broadcast transmissions. For information about the data tables, see SAS Digital Marketing Tables (Appendix A, SAS Digital Marketing: Users Guide). As a site administrator, you can manage JDBC connections by conguring JDBC data providers and specifying the connection denitions. SAS Digital Marketing provides the JDBC Explorer for the site administrator to manage and query the data tables. Other users can use the JDBC table viewer to view, copy, or export the data tables. For more information, see Using SAS JDBC Explorer on page 225 and Using the JDBC Table Viewer (Chapter 2, SAS Digital Marketing: Users Guide). N OTE : SAS Digital Marketing provides several server properties to simplify how you manage the JDBC connections. For more information, see JDBC Server Properties on page 142.

222 ! Chapter 8: Managing JDBC Connections

Conguring JDBC Data Providers

Types of JDBC Data Providers


SAS Digital Marketing can use any JDBC provider. However, the server has been optimized for SAS JDBC providers. The JAR le for the SAS/SHARE and SAS Integrated Object Model (IOM) provider is automatically installed with the server and servlets. For third-party databases with SAS Digital Marketing, one or more JDBC third-party JAR les are required for each database. You can use the Server Conguration wizard to automatically add thirdparty JAR les to the Web reporting and the tracking servlet WAR les. For more information, see Run the Server Conguration Wizard on page 39. The default connection assumes that a SAS/SHARE server is running as your local host. If you are using SAS Digital Marketing in conjunction with a SAS Intelligence Platform, you can use the SAS Workspace server instead of a SAS/SHARE server. If you have administrative privileges (Level 4 permission), then you can dene multiple JDBC providers for use with the server, modify the default connection, or create a new connection.

Managing the Connections Settings


You use Connection Options under the Server node to create or modify the JDBC connections for the data source tables. To open the Connection Denitions dialog box, select Tools!Server Conguration! Connection Options.

Managing the Connections Settings ! 223

To modify a JDBC connection, select the name. Use the text boxes to change the driver, Universal Resource Identier (URI), user ID, and password that SAS Digital Marketing uses to connect to a JDBC provider. You can perform the following actions: Add adds a new connection. To add a connection, click Add. Use the text boxes to specify the driver, URI, user ID, and password that SAS Digital Marketing uses to connect to a JDBC data provider. For more information, see Add a JDBC Connection on page 224. N OTE : For the SAS Digital Marketing clients to create reports that access the audit table, you must specify an explicit host in the JDBC connection denition. Therefore, do not specify a JDBC connection that has localhost as the URI. Remove removes a connection. To remove a connection, select the name from the Connections box and click Remove. Test tests a JDBC connection. To perform a test, select the name from the Connections box and click Test. A message box appears that indicates whether the connection succeeded or failed. You might need to change the driver, based on the type of database that you are connecting to. SAS Digital Marketing automatically includes the share and iom drivers. To connect to another third-party database, specify the driver in the Driver box.

224 ! Chapter 8: Managing JDBC Connections

N OTE : When you change the driver, the URI box is automatically populated with a suggested server and data port. This information might not be correct for your server. Enter the correct server and data port for your connection.

Add a JDBC Connection


To add a connection, complete the following steps: 1. Open the Server Conguration window and select Connections Options under the Server node, or open the JDBC Explorer and select Manage JDBC Connections from the Tools menu. 2. Specify the scope for the new JDBC connection. Select JDBC Connections in the Connection Options list to add a JDBC connection that is available to all SAS Digital Marketing users. Select My Connections in the Connection Options list to add a JDBC connection that is available only for your use. 3. Click Add. 4. Specify the name for the new connection. 5. Specify the driver, URI, user ID, and password. SAS Digital Marketing uses these values to connect to a JDBC data provider. Click Test to verify the connection. 6. Click OK.

About SAS JDBC Explorer ! 225

Using SAS JDBC Explorer

About SAS JDBC Explorer


When you have administrative privileges (Level 4 permission), use SAS JDBC Explorer to manage the JDBC connections and to access the JDBC tables on your sites SAS Digital Marketing servers. With SAS JDBC Explorer you can: view the contents of an existing JDBC table create a duplicate table create a new table by copying an existing tables structure submit SQL statements to query the tables or perform a calculation, such as a total To open SAS JDBC Explorer in SAS Digital Marketing Studio, select JDBC Explorer from the Tools menu or click Explore JDBC Connections, , from the toolbar.

226 ! Chapter 8: Managing JDBC Connections

Components of SAS JDBC Explorer


The SAS JDBC Explorer displays a hierarchical view of the contents of each connection in the left portion of the window. This view is called the navigation tree. To view the contents of a specic connection, click the connection name. If any libraries are dened, then a list of libraries appears. Click the library name to view in the right portion of the window the JDBC tables in that library. N OTE : When the HideSASPredenedLibraries server property is set to true, the GISMAPS, MAPS, SASHELP, and SASUSER libraries are still accessible from the SAS JDBC Explorer window. For more information, see JDBC Server Properties on page 142. The lower portion of the window contains the following tabs: Log tab records events as they happen. The log includes the time when a table was created or deleted. It also lists any errors that occurred when an SQL statement was executed. SQL tab enables you to submit an SQL statement to query the list of JDBC tables or to perform a calculation. Type the SQL statement in this tab, and then select Submit SQL Statement from the Actions menu. The Log tab displays any errors or notes that were generated when the SQL statement was executed. The log also lists if the SQL statements were executed successfully. N OTE : Many menu and toolbar tasks are also available from the pop-up menu on the SQL tab. This pop-up menu also enables you to insert an SQL statement or to undo or redo changes to your SQL code. To access the pop-up menu, right-click the SQL tab.

SAS JDBC Explorer Tasks


The menu bar and the toolbar enable you to access tasks that manage your JDBC tables. The list of active menu options varies according to the current window and according to the kind of object that is selected. Unavailable menu options are disabled or hidden. Many menu and toolbar options are also available in pop-up menus. For example, you can use the menu to open a JDBC table, or you can right-click in the table and select Open in the pop-up menu. N OTE : The ability to manage the tables is dependent on the users database privileges when the selected table exists on a third-party database such as Oracle, Teradata, or DB2.

File Menu
New opens the JDBC Explorer in a new window or enables you to add a new table.

SAS JDBC Explorer Tasks ! 227

Duplicate copies the selected table and adds the copied table to the same directory. By default, the name of the copied table is Original-table-name_copy. Clone copies the table structure of the selected table. The content is not copied; only the structure is copied. By default, the name of the cloned table is Original-table-name _clone. Delete deletes the selected table. Rename enables you to rename the selected table. Properties displays the properties of the selected JDBC table. The Properties window displays general information, such as the name of the table and the connection, and the columns in the table, such as the column name, type, and size. Close closes the JDBC Explorer.

Edit Menu
Cut deletes the selected table or tables. Copy copies the selected text in the SQL tab onto the clipboard. Nothing is copied if you do not select any text. Paste pastes the text from the clipboard to the current location in the SQL tab. Select All selects all the content in the current library.

View Menu
Explorer Console displays the Log and SQL tabs at the bottom of the Explorer window. You can choose to display or hide these tabs. Refresh refreshes the view of the JDBC Explorer.

Actions Menu
Clear Log clears the contents of the Log tab. Submit SQL Statement enables you to submit the SQL statements that you entered in the SQL tab.

228 ! Chapter 8: Managing JDBC Connections

Tools Menu
Manage JDBC Connections manages the connections to the JDBC data table. For more information, see Conguring JDBC Data Providers on page 222. JDBC Table Viewer starts the JDBC table viewer so that you can examine every record in the JDBC data table. For more information, see Using the JDBC Table Viewer (Chapter 2, SAS Digital Marketing: Users Guide).

Help Menu
Using this Window opens Help for SAS JDBC Explorer. Help Contents starts Help for the application. For more information, see Using Help (Chapter 2, SAS Digital Marketing: Users Guide). About SAS JDBC Explorer provides information about the release of the JDBC Explorer and also provides system information such as the operating system name, the JRE version, and the home and working directory names.

Using the Toolbar


In SAS JDBC Explorer, the following toolbar buttons are available: moves up one level. deletes the selected table. copies the selected text in the SQL tab onto the clipboard. Nothing is copied if you do not select any text. pastes the text from the clipboard to the current location in the SQL tab. refreshes the view of the JDBC Explorer. opens the JDBC table viewer.

Chapter 9

Managing Broadcast Tracking and Replies


Contents
Overview of Broadcast Tracking . . . . . . . . . . Tracking Responses . . . . . . . . . . . . . . . . . About Tracking Parameters . . . . . . . . . Set the Response Table . . . . . . . . . . . . Change the Response Table . . . . . . . . . Monitoring Replies . . . . . . . . . . . . . . . . . About Monitoring Replies . . . . . . . . . . Using Correlated Replies . . . . . . . . . . Using Uncorrelated Replies . . . . . . . . . Create Correlated Replies . . . . . . . . . . Working with the E-mail Reply Manager . . . . . About the E-mail Reply Manager . . . . . . Conguring the E-mail Reply Manager . . . Using the E-mail Reply Manager . . . . . . E-mail Reply Manager Tasks . . . . . . . . Understanding Reply Filters and Reply Rules Working with the Reply Filter Categories . . . . . Default Reply Filter Categories . . . . . . . Add a Reply Filter Category . . . . . . . . . Delete a Reply Filter Category . . . . . . . . Reply Rules Properties . . . . . . . . . . . . Managing Reply Rules . . . . . . . . . . . . . . . Create a New Reply Rule . . . . . . . . . . Edit an Existing Reply Rule . . . . . . . . . Delete a Reply Rule . . . . . . . . . . . . . Forwarding Replies . . . . . . . . . . . . . . . . . About Forwarding Replies . . . . . . . . . . Add a Forwarding E-mail Address . . . . . . Edit a Forwarding E-mail Address . . . . . . Delete a Forwarding E-mail Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 230 230 231 231 232 232 232 232 233 235 235 236 240 241 243 244 244 245 246 247 250 250 251 252 252 252 252 253 253

230 ! Chapter 9: Managing Broadcast Tracking and Replies

Overview of Broadcast Tracking


After a broadcast is executed, SAS Digital Marketing users can measure the effectiveness of a broadcast transmission by analyzing delivery rate, click through rate, and open rate. To track the broadcasts, you must rst deploy the broadcast response tracking servlets on a Web application server that is visible to your recipients. Usually the tracking and Web publication tier is deployed outside any corporate rewalls. For more information, see Conguring the Tracking and Web Publication Tier on page 54. You can set tracking parameters that use SAS Digital Marketing to record an e-mail recipients response to a broadcast. These tracking parameters include the broadcast variables, the tracking variables, and the e-mail address variables for an e-mail broadcast. For more information, see About Tracking Parameters on page 230. After a broadcast executes, the tracking servlets collect responses to the broadcast. Each tracking servlet invocation generates a record in the response table. The columns in this record correspond to recipients response. SAS Digital Marketing Studio users can specify the response table when the broadcast denition is created, or you can set the response table that your entire site uses. For more information, see Set the Response Table on page 231. SAS Digital Marketing provides the E-mail Reply Manager with a set of predened reply lter categories to capture information about reply messages. The reply messages are processed and categorized for all broadcast transmissions through an incoming domain mailbox. You should assign administrator privileges (Level 4 permission) to a user that can assume the responsibility of managing the E-mail Reply Manager. This includes monitoring the Other category for patterns that might indicate the need for additional lter categories or rules. This individual must also decide whether to take action for the different categories of replies. For more information, see Working with the E-mail Reply Manager on page 235.

Tracking Responses

About Tracking Parameters


As the site administrator, you can set the tracking parameters for the SAS Digital Marketing users at your site. You can use either a distribution list or server properties. If these tracking parameters are specied, then the Open and Link Tracking panels are not available in the New Broadcast wizard. How you specify these parameters depends on the data model that your site uses. If your site uses one global data model, then you can specify the EmailVariables, EmailTrackedVariables, and EmailAddressVariables server properties. SAS Digital Marketing Studio uses the values that you specify and enforces them when appropriate. If your site uses multiple global data models, then you can specify logical distribution lists to dene each model.

Set the Response Table ! 231

If you are uncertain about data model that your site will use, then do not specify the tracking parameters. For more information about data models, see Managing Global Data Models on page 166.

Set the Response Table


You can set the response tables for your site by using the ResponseTableBase server property to congure how the response tables are saved. After this property is set, the Response table box is not available from the New Broadcast wizard or Add RSS Content wizard, and the user cannot modify the settings for the response tables. For more information, see Response Server Properties on page 151.

Change the Response Table


To change the response table, you must have administrative privileges (Level 4 permission). N OTE : It is recommended that you do not change the response table after a broadcast executes. If you change the response table for an executed broadcast, then the new response table omits the response records for the e-mails that were previously sent. To change the response table for a broadcast, complete the following steps: 1. In SAS Digital Marketing Studio, select the broadcast from the list of broadcast denitions and select Change Response Table from the Edit menu. N OTE : You cannot change the response table for a broadcast that has no tracked variables associated with it. If you select a broadcast without tracked variables, then the Change Response Table menu item is not available. 2. In the Change Response Table dialog box, specify the new response table and click OK. You can also change the response table from the Query Broadcast Response window. For more information, see Using the Query Broadcast Response Window (Chapter 7, SAS Digital Marketing: Users Guide).

232 ! Chapter 9: Managing Broadcast Tracking and Replies

Monitoring Replies

About Monitoring Replies


When you send an e-mail broadcast, the message header can contain three possible return e-mail addresses: From, Reply To, and SMTP Reply To. The From and Reply To e-mail addresses are always visible to the recipient, while the SMTP Reply To e-mail address is hidden. To manage replies in SAS Digital Marketing, you must set at least one return e-mail address to a domain mailbox that the E-mail Reply Manager is congured to monitor. The E-mail Reply Manager uses a series of predened lters to categorize e-mail broadcast reply and bounce messages. You can customize the reply lter categories and add processing rules. You can also use reply and bounce messages to eliminate invalid addresses from your broadcast recipient lists. When the return e-mail header includes an XSL expression, SAS Digital Marketing can correlate the e-mail replies from broadcast recipients or the e-mail messages that bounce back from an e-mail server.

Using Correlated Replies


A correlated reply is an e-mail message that a broadcast recipient sends back or that an e-mail server bounces back, which SAS Digital Marketing connects to the originating broadcast. The connection occurs if the return e-mail address in the message header for the broadcast denition is set to the broadcast moniker at the incoming domain mailbox. When the Reply Manager receives and processes the reply message, SAS Digital Marketing uses the moniker to correlate the message back to the originating broadcast. You can view all the reply messages for a selected broadcast from the Replies tab in the Query Broadcast Response window. Correlated replies (reply messages that you can connect to a selected broadcast) are identied with a green ag. Uncorrelated replies (reply messages that are implicitly correlated to the selected broadcast) are identied with a yellow ag. For more information, see Using the Query Reply Data Window (Chapter 7, SAS Digital Marketing: Users Guide).

Using Uncorrelated Replies


An uncorrelated reply is an e-mail message that a broadcast recipient sends back or that an e-mail server bounces back, which is not connected to the originating broadcast. Uncorrelated replies are useful when your primary interest is identifying the recipient e-mail addresses that bounce back and you are uninterested in connecting replies to a specic broadcast transmission. For uncorrelated replies, the return e-mail address in the message header for the broadcast denition uses a single e-mail address so the incoming domain mailbox is not unique.

Create Correlated Replies ! 233

You can view all the reply messages for a selected broadcast from the Replies tab in the Query Broadcast Response window. Uncorrelated replies (reply messages that are implicitly correlated to the selected broadcast) are marked with a yellow ag while correlated replies (reply messages that you can connect to a selected broadcast) are marked with a green ag.

Example of an Uncorrelated Reply


You might send an e-mail to foo@sas.com and receive a reply that was a hard bounce. Because you did not customize the return e-mail address for the broadcast denition, the hard bounce that you received is not tied to a specic broadcast. You know only that a hard bounce was received from a particular e-mail address. You cannot determine the broadcast message that was sent. SAS Digital Marketing provides implicit broadcast correlation for these types of replies. The uncorrelated replies that you received are matched to an audit table that was executed in the past n days.

Create Correlated Replies


To correlate reply messages, complete the following steps: 1. Congure an incoming domain mailbox. A domain mailbox is a mailbox that receives all the mail for a given domain. For example when your domain mailbox is congured for sas.com, any reply messages that use this domain (e-mail_address@sas.com) are sent to that domain mailbox. You can also use wildcard characters to set the domain mailbox. For example, reply messages for a specic broadcast, such as broadcast_*, go to a designated mailbox. N OTE : The domain conguration is external to SAS Digital Marketing and is specic to the e-mail server that you use. 2. In SAS Digital Marketing, congure the E-mail Reply Manager to use the domain mailbox that you congured. Specify the incoming e-mail server and log on information for the domain mailbox on the Inbox tab of the Reply Manager Conguration dialog box. For more information, see Conguring the E-mail Reply Manager on page 236. 3. Each e-mail broadcast denition must include at least one return e-mail address that is set to the broadcast moniker at the domain mailbox. To ensure that every broadcast uses a return e-mail address that SAS Digital Marketing can correlate, set the EmailFromOverride server property. SAS Digital Marketing uses the value of this server property for the SMTP Mail From address in every broadcast denition and users cannot change it. You set the server property to the following value:
<xsl:value-of select="$moniker"/>@replydomain

where replydomain is the name of your domain mailbox. For more information on the EmailFromOverride server property, see Reply Management Server Properties on page 147.

234 ! Chapter 9: Managing Broadcast Tracking and Replies

As an alternative, you can set the EmailFromOverride server property to use a global domain mailbox for all broadcasts that are created at your site. Congure one mailbox to process the replies, such as anything@replydomain. Then use the EmailFromOverride server property to insert <moniker>@replydomain. SAS Digital Marketing hides the value of the SMTP Reply From address from your users when this server property is set. If the EmailFromOverride server property is not set and you want the replies correlated, then your SAS Digital Marketing users must set at least one return e-mail address to the broadcast moniker at the incoming domain mailbox. You can use the following approaches in the New Broadcast wizard or the Properties dialog box for an e-mail broadcast or a multichannel broadcast: Set the value of Reply to and From return e-mail addresses to
<xsl:value-of select="$moniker"/>@replydomain

where replydomain is the name of your domain mailbox. As a best practice, the values of the Reply to and From should be the e-mail address of an actual person. Replies are sent to an actual person who can answer questions or address recipients concerns. The advantage to this approach is that all replies are correlated to a broadcast. The disadvantage to this approach is that the e-mail recipient can see this address, and the e-mail might be identied as spam. Set the value of SMTP Mail From to
<xsl:value-of select="$moniker"/>@replydomain

where replydomain is the name of the domain mailbox for your correlated replies. The advantage to this approach is that the e-mail recipients do not see this address. The disadvantage is that not all replies, such as Out of Ofce replies, are correlated.

Working with the E-mail Reply Manager ! 235

N OTE : If the EmailFromOverride server property is set, then the SMTP Mail From box is not available. For more information, see Creating E-mail Broadcasts (Chapter 3, SAS Digital Marketing: Users Guide) and see Customizing the Header Information (Chapter 5, SAS Digital Marketing: Users Guide).

Working with the E-mail Reply Manager

About the E-mail Reply Manager


SAS Digital Marketing uses reply categories to lter the reply messages for an e-mail or multichannel broadcast and creates a record about the reply in a reply table. As the site administrator, you can customize the reply categories and rules. The E-mail Reply Manager enables you to manage the reply categories and view the reply messages. You should consider assigning administrator privileges (Level 4 permission) to a user that can assume the responsibility of managing the E-mail Reply Manager. Someone should monitor the Other category for patterns that might indicate the need for additional lter categories or rules. This individual must also decide whether to take action for the different categories of replies.

236 ! Chapter 9: Managing Broadcast Tracking and Replies

SAS Digital Marketing stores the conguration information for the E-mail Reply Manager in the replymgr.xml le that is located in the ROOT/config directory. You should not edit this le directly. Instead, you should use the Reply Manager Conguration dialog box that is available from the E-mail Reply Option node in the Server Conguration window. For more information, see E-mail Reply Options on page 101.

Conguring the E-mail Reply Manager


When you congure the reply message account, you can specify the e-mail account information, the location of the JDBC table to record the reply classications, the reply categories, and the JMS queue and topic. You can modify these options by using the Reply Manager Conguration dialog box. You can open the Reply Manager Conguration dialog box in the following ways: From the E-mail Reply Manager, select Reply Manager Conguration from the Tools menu. From the Server Conguration window click Congure Reply Manager from the E-mail Reply Options node. In the Reply Manager Conguration dialog box, use the following tabs to congure the reply message account: Inbox Reply Table Priority JMS

Conguring the E-mail Reply Manager ! 237

Inbox Tab
You use the Inbox tab to specify the POP3 or IMAP e-mail account information. This account receives the e-mail replies and bounces for broadcasts transmissions that use return e-mail addresses with the incoming domain mailbox in the message header.

You must specify the e-mail server information for the incoming domain mailbox. Enter the name of the server host, and specify the port that the server uses on that host. The domain conguration is external to SAS Digital Marketing and is specic to the e-mail server that you use. If the server is congured to require authentication, then specify the user credentials. N OTE : Support for IMAP is experimental for this release.

238 ! Chapter 9: Managing Broadcast Tracking and Replies

Reply Table Tab


You use the Reply Table tab to specify the location of the JDBC table that SAS Digital Marketing uses to record the e-mail reply records.

You can specify the JDBC table in either of the following ways: Select an existing table from the list. The tables in this list depend on the JDBC connection that you have selected. To select a different table connection, use the Connections drop-down list. Enter a valid table name for the JDBC provider in the Table box. This name can be for an existing table or a new table. SAS Digital Marketing automatically creates the table if it is not found in the folder. N OTE : For the SAS Digital Marketing clients to create reports that access the reply table, you must specify an explicit host in the JDBC connection denition. Therefore, do not specify a JDBC connection that has localhost as the URI. For more information, see Managing the Connections Settings on page 222.

Conguring the E-mail Reply Manager ! 239

Priority Tab
You use the Priority tab to specify the reply categories. You can add, delete, and update reply categories as well as specify the order in which to process the categories.

For more information about the reply rules and categories, see Understanding Reply Filters and Reply Rules on page 243.

240 ! Chapter 9: Managing Broadcast Tracking and Replies

JMS Tab
You use the JMS tab to set up a JMS queue and topic to handle replies in real time.

For more information, see Overview of JMS on page 269.

Using the E-mail Reply Manager


To open the E-mail Reply Manager, use SAS Digital Marketing Studio to perform any of the following actions: Click the Reply Manager icon on the toolbar.

Select Reply Manager from the Tools menu. Select Tools!Server Conguration!E-mail Reply Options and then click Congure Reply Manager.

E-mail Reply Manager Tasks ! 241

E-mail Reply Manager Tasks


In the E-mail Reply Manager, the menu bar and the toolbar enable you to access tasks that manage the reply lter categories. The list of active menu tasks varies according to the current window and according to the kind of object that is selected. Inactive menu tasks are disabled or hidden.

File Menu
New Reply Filter Category creates a new reply lter category. For more information, see Add a Reply Filter Category on page 245. Exit closes the E-mail Reply Manager.

Edit Menu
Delete deletes the selected reply messages. You cannot delete a reply lter category by using the Edit menu. Select All selects all the reply messages for the selected reply lter category in the navigation tree.

242 ! Chapter 9: Managing Broadcast Tracking and Replies

Actions Menu
Refresh refreshes the contents of the E-mail Reply Manager.

Tools Menu
Query Reply Data opens the Query Reply Data window. For more information, see Using the Query Reply Data Window (Chapter 7, SAS Digital Marketing: Users Guide). Reply Manager Conguration opens the Reply Manager Conguration dialog box. For more information about the available options, see E-mail Reply Options on page 101. JDBC Table Viewer starts the JDBC table viewer. For more information, see Using the JDBC Table Viewer (Chapter 2, SAS Digital Marketing: Users Guide).

Help Menu
Using this Window provides Help about the active window. Help Contents starts Help for SAS Digital Marketing. For more information, see Using Help (Chapter 2, SAS Digital Marketing: Users Guide). About E-mail Reply Manager provides information about the SAS Digital Marketing client and about the server release of the E-mail Reply Manager. Also provides system information such as the operating system name, the JRE version, the ROOT and working directory names, and the settings of the server properties.

Using the Toolbar


The toolbar contains shortcuts to the tasks on the menu bar. The list of active tasks varies according to the current work area and according to the kind of object that is selected. Inactive tasks are disabled or hidden. Tool tips appear when you place your mouse pointer over an icon on the toolbar. Click the icon to select a task. The following buttons are available on the toolbar: creates a new reply lter category. For more information, see Add a Reply Filter Category on page 245. refreshes the contents of the E-mail Reply Manager. opens the Query Reply Data window. For more information, see Using the Query Reply Data Window (Chapter 7, SAS Digital Marketing: Users Guide).

Understanding Reply Filters and Reply Rules ! 243

starts the JDBC table viewer. See Using the JDBC Table Viewer (Chapter 2, SAS Digital Marketing: Users Guide).

Understanding Reply Filters and Reply Rules


When messages are not delivered successfully to the recipient or when the recipient sends a reply, the E-mail Reply Manager uses a lter to categorize the incoming message. SAS Digital Marketing stores these messages in a directory and adds a record to the reply table for each message. The reply lter categories and their rules determine how to process these returned messages and whether the reply history is sent to SAS Customer Intelligence software. SAS Digital Marketing provides several predened reply lter categories and rules that you can update and customize for your site. N OTE : To use the reply lter, you must use broadcast denitions that create correlated replies. For more information, see Using Correlated Replies on page 232. Each reply rule consists of the following information: unique ID priority subject match body match sender match SAS Digital Marketing assigns the unique ID that you cannot change. The subject match, body match, and sender match are compared against the contents of the subject, body, and sender of the reply to determine whether the message matches a reply lter category. For example, if the body of the returned message contains the string user unknown, then the message is assigned to the Hard Bounce reply lter. E-mail Reply Manager represents each reply lter category as a folder. If you click a reply lter category in the navigation tree, then the reply messages for that category appear in the E-mail Reply Manager in a table on the right.

244 ! Chapter 9: Managing Broadcast Tracking and Replies

To review the contents of a reply message, right-click the message and select Open from the pop-up menu.

Working with the Reply Filter Categories

Default Reply Filter Categories


The E-mail Reply Manager enables you to manage the reply rules and dene the categories for these rules. The following reply lter categories are automatically available: Address Change messages about changes in the e-mail address of a recipient. Return Receipt automated replies that notify you that the messages were received. Attachment Warning attachments that were removed from a message. Spam Warning messages that were rejected by a spam lter. Soft Bounce messages that are not delivered at the moment. Hard Bounce messages that are not delivered.

Add a Reply Filter Category ! 245

Out of Ofce messages about recipients that are out of the ofce. Unsubscribe messages about recipients that no longer want to receive broadcast messages. Automated Response automated replies from the recipients address. Replies replies to the broadcast message. Other messages that did not meet any of the reply rules dened in the other categories. This category is required by SAS Digital Marketing and must use Other as its name. You can specify any value for the label. Do not assign any reply rules to this category.

Add a Reply Filter Category


To add a new reply lter category, complete the following steps: 1. In the E-mail Reply Manager, right-click the Reply Filter Categories folder in the navigation tree and then select New Reply Filter Category from the pop-up menu or select New Reply Filter Category from the File menu.

246 ! Chapter 9: Managing Broadcast Tracking and Replies

2. In the Properties dialog box, use the tabs to specify the lter name, options, rules, and forwarding addresses for the reply lter. For more information, see Reply Rules Properties on page 247.

3. Click OK. N OTE : Messages that the E-mail Reply Manager has already categorized are not processed again and are not placed into new or updated categories. When you create new reply categories or change the reply rules, then any messages that have already been saved and categorized are not processed again with the new rules or placed into the new categories. This is also true if you delete categories.

Delete a Reply Filter Category


To delete a reply lter category, complete the following steps: 1. In the E-mail Reply Manager, select the folder for that category in the navigation tree. 2. Select Delete from the pop-up menu. 3. When the Delete Category dialog box opens, click Yes.

Reply Rules Properties ! 247

If you delete a reply lter category, the E-mail Reply Manager no longer displays this category or the reply messages in that category. However, the physical directory for the reply lter category and the physical les that contain the reply messages are not deleted. SAS Digital Marketing does not store the reply messages in another reply lter. The records for reply messages in this category also remain in the reply table.

Reply Rules Properties


By default, SAS Digital Marketing provides a list of rules for each reply lter category. These rules determine whether a message matches a specied category. To view the properties of an existing reply lter category, right-click the reply lter category in the navigation tree and select Properties. The Properties dialog box for the selected reply lter category opens. A series of tabs enables you to describe the reply lter category and create rules to categorize the reply messages.

General Properties
The General tab enables you to describe the reply lter category and set options that control how the reply messages are processed.

248 ! Chapter 9: Managing Broadcast Tracking and Replies

You can specify the following options: Label species the label for the reply lter. This is the name of the folder in the navigation tree of the E-mail Reply Manager. Description describes the types of messages in this reply lter category. Name lists the name of the reply lter category. Scan e-mail message body for embedded e-mail address scans the reply for any embedded e-mail addresses. Select this option if messages that match this lter are returned with the recipient e-mail address in the body of the message. Often when a hard bounce occurs, all original content and headers are removed and the body of the bounced message contains details about the bad e-mail address. For this reason, the Hard Bounce category sets this option set by default. Save a copy of reply messages saves a copy of the reply messages for this reply lter. The reply messages are saved to the SAS Digital Marketing Server for the number of days that you specify in the Number of days to keep copy box. You can view the contents of a message until the time that it is removed. Selecting this option saves disk space on the server. Automatically register responders as opt-outs adds the e-mail addresses for the reply messages in this reply lter to the opt-out table. The number of responses for a single e-mail address must match the occurrence threshold for optouts. For example, for the Hard Bounce category, you specify 2 as the occurrence threshold. If you receive two hard bounces from the same e-mail address, then that e-mail address is automatically added to the opt-out table, and SAS Digital Marketing no longer sends any broadcast messages to that address. Use this reply lter with SAS Customer Intelligence sends reply history to SAS Customer Intelligence software. You must decide whether to record the reply as a failed contact or as a valid response. To use the reply lter, you must use broadcast denitions that create correlated replies. For more information, see Using Correlated Replies on page 232.

Reply Rules Properties ! 249

Rules Properties
The Rules tab enables you to view, create, edit, or delete reply rules. For more information, see Managing Reply Rules on page 250.

250 ! Chapter 9: Managing Broadcast Tracking and Replies

Forwarding Properties
The Forwarding tab enables you to specify e-mail addresses for forwarding reply messages that match the reply lter category. For more information, see Forwarding Replies on page 252.

Managing Reply Rules

Create a New Reply Rule


To create a new reply rule for a reply lter, complete the following steps: 1. In the E-mail Reply Manager, right-click the reply lter category in the navigation tree and select Properties. 2. Select the Rules tab in the Properties dialog box. 3. Click New. The New Reply Rule dialog box opens. The E-mail Reply Manager automatically assigns a new ID number for that reply rule. You cannot edit this ID.

Edit an Existing Reply Rule ! 251

4. In the Subject Match, Body Match, or Sender Match boxes, you can specify the text to compare to the reply messages. A reply is added to the reply lter category if the text is an exact match. If the text does not need to be an exact match, you can use an asterisk (*) as a wildcard value. For example, to categorize any reply messages with a subject of Recipient does not exist as a hard bounce, type this phrase into the Subject Match box. The content of the body and the sender is not relevant, so enter an asterisk (*) in these boxes. With this rule, any e-mail that has a subject of Recipient does not exist is ltered to the Hard Bounce reply lter, regardless of the e-mails body content or sender. N OTE : If you specify the ReplyFilterRegex server property, then you can specify regular expressions for the reply rules. For more information, see Reply Management Server Properties on page 147. 5. Specify a priority for each reply rule. If a reply ts the reply rules for several categories, then the value of the priority determines how the reply is categorized. For example, an e-mail matches a reply rule for both the Spam Warning and Soft Bounce categories. The rule for the Spam Warning reply lter has a priority of 1, and the rule for the Soft Bounce reply lter has a priority of 2. Because the priority of the rule for the Spam Warning is higher, the e-mail is categorized as a Spam Warning.

Edit an Existing Reply Rule


To edit an existing reply rule for a reply lter, complete the following steps: 1. In the E-mail Reply Manager, right-click the reply lter category in the navigation tree and select Properties.

252 ! Chapter 9: Managing Broadcast Tracking and Replies

2. Select the Rules tab in the Properties dialog box. 3. Select the rule that you want to change and click Modify. The Modify Reply Rule dialog box opens. 4. Edit the options that you want to change. The options in this dialog box are identical to the options that are available when you create a reply rule. For more information, see Create a New Reply Rule on page 250.

Delete a Reply Rule


To delete an existing reply rule for a reply lter, complete the following steps: 1. In the E-mail Reply Manager, right-click the reply lter category in the navigation tree and select Properties. 2. Select the Rules tab in the Properties dialog box. 3. Select the rule that you want to delete and click Delete. 4. When the Delete Rule dialog box opens, select Yes.

Forwarding Replies

About Forwarding Replies


SAS Digital Marketing can forward e-mail when you need to provide automatic processing as well as alternative processing. For example, you sent a recall notice to a set of customers who ordered a product. Any reply messages that SAS Digital Marketing receives are automatically processed by the Reply Manager. However, you also need to forward the hard bounces to an employee in the customer service department so that this employee knows which customers did not receive the e-mail and can follow up with a phone call.

Add a Forwarding E-mail Address


To add an e-mail address for forwarding a reply message, complete the following steps: 1. In the E-mail Reply Manager, right-click the reply lter category in the navigation tree and select Properties.

Edit a Forwarding E-mail Address ! 253

2. Select the Forward tab in the Properties dialog box. 3. Click New. 4. In the New forwarding address dialog box, type the e-mail address for the forwarded reply messages. 5. Click OK to save the information.

Edit a Forwarding E-mail Address


To edit an e-mail address for forwarding a reply message, complete the following steps: 1. In the E-mail Reply Manager, right-click the reply lter category in the navigation tree and select Properties. 2. Select the Forward tab in the Properties dialog box. 3. Select the address from the list and click Modify. 4. In the Modify forwarding address dialog box, edit the address that you selected. 5. Click OK to save the information.

Delete a Forwarding E-mail Address


To delete an e-mail address for forwarding a reply, complete the following steps: 1. In the E-mail Reply Manager, right-click the reply lter category in the navigation tree and select Properties. 2. Select the Forward tab in the Properties dialog box. 3. Select the address from the list and click Delete.

Chapter 10

Optimizing SAS Digital Marketing


Contents
Overview of Optimizing the Software . . . . Conguring a Grid Node . . . . . . . . . . . Using the Server Conguration Wizard Customize the Grid Node Server . . . Using the Grid Nodes . . . . . . . . . . . . . Congure the Server Node . . . . . . . Set Simulate Mode . . . . . . . . . . . Test the Grid Nodes . . . . . . . . . . Optimizing Performance . . . . . . . . . . . How to Optimize Performance . . . . . Adjusting the SMTP Spooler . . . . . Adjusting Performance Settings . . . . Adjusting Send Settings . . . . . . . . Adjusting the E-mail Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 256 256 256 260 260 261 261 262 262 263 264 264 265

Overview of Optimizing the Software


If your broadcast denition generates a very large number of messages, then you might want to use more than one server to send the broadcast transmission. You can congure SAS Digital Marketing to process the broadcast across multiple computers by creating a series of grid nodes. You must install SAS Digital Marketing as a grid node on each computer in the grid network. SAS Digital Marketing can use an unlimited number of grid nodes to distribute your broadcast denitions. For more information, see Installing a SAS Digital Marketing Grid Node on page 30. In order for you to use a computer in the grid network, the grid node server must run when you execute a broadcast. SAS Digital Marketing uses grid nodes to send e-mail, multichannel, SMS, or ASP broadcasts transmissions. However, SAS Digital Marketing does not use grid nodes to preview these broadcasts.

256 ! Chapter 10: Optimizing SAS Digital Marketing

Conguring a Grid Node

Using the Server Conguration Wizard


The Server Conguration wizard enables you to specify the settings for the grid node. You can run this wizard during the installation process or when you want to update the grid node server. To congure the grid node, you adjust the maximum number of threads, add more e-mail servers, and set the tracking and Web publication middle tier options. Repeat this process on each computer in the grid network.

Customize the Grid Node Server


Complete the following steps to congure the grid node: 1. Start the Server Conguration wizard by selecting the SAS Digital Marketing Conguration shortcut from the Start menu under Windows or by running the scong shell script under the UNIX or Linux operating environments. 2. After the Server Conguration wizard starts, click Next.

Customize the Grid Node Server ! 257

3. Specify the value for the maximum number of threads that SAS Digital Marketing sends to improve the performance of broadcast transmissions, and click Next. By default, SAS Digital Marketing uses multiple threads to improve efciency.

Set the Maximum number of threads for e-mail broadcasts to improve performance on the grid node. Set Maximum number of SMTP spooler threads to improve performance on the SMTP e-mail servers. For more information, see Adjusting Performance Settings on page 264.

258 ! Chapter 10: Optimizing SAS Digital Marketing

4. Specify the settings to send the broadcast transmissions and click Next.

Use the SMTP E-mail Servers table to dene the additional e-mail servers. Then verify that the settings for the outgoing SMTP e-mail server is valid. You must list at least one outgoing mail server. SAS Digital Marketing uses the e-mail servers to send the e-mails that are rendered. For more information about changing these settings, see Send Options on page 112.

Customize the Grid Node Server ! 259

5. Specify the location of the middle tier where the tracking and Web publication servlets are deployed and click Next. These Java servlets collect response metrics for e-mail broadcasts, process multichannel broadcasts, and manage Web resources.

The servlet WAR le that contains the tracking and Web publication servlets must be deployed on a Web application server outside your corporate rewall. To specify the location of the middle tier, enter the base URL address for the Web application server. To verify that the Java servlets work correctly, click Test. 6. After you verify the servlets, click Finish to congure the grid node. If you want to change a setting, click Back to return to the appropriate step in the wizard.

260 ! Chapter 10: Optimizing SAS Digital Marketing

Using the Grid Nodes

Congure the Server Node


After you install and congure the grid nodes, congure the computer that runs the SAS Digital Marketing server to use the grid network. Then SAS Digital Marketing can distribute your broadcast transmissions across the grid nodes. N OTE : When you execute a broadcast transmission, SAS Digital Marketing cannot use a grid node that is not running. To congure the server node, complete the following steps: 1. Start the SAS Digital Marketing server by selecting the SAS Digital Marketing Server shortcut from the Start menu under Windows, or by running the startsrv command under the UNIX and Linux operating environments. For additional information, see Running SAS Digital Marketing (Chapter 2, SAS Digital Marketing: Users Guide). 2. Start SAS Digital Marketing Studio by selecting the SAS Digital Marketing Studio shortcut from the Start menu under Windows, or run the studio shell script under the UNIX and Linux operating environments. 3. Select Server Conguration from the Tools menu. The Server Conguration window opens. 4. Select E-mail Options under the Broadcast Denition node. Then congure SAS Digital Marketing to run broadcasts across the grid node servers. The Available Grid Nodes for Distributed Execution table shows the servers in the grid network that SAS Digital Marketing uses to distribute broadcast transmissions. You can add, update, or delete grid nodes.

Set Simulate Mode ! 261

5. To add a grid node, click Add. In the Add grid node dialog box, type the name of a computer in the grid network and click OK. SAS Digital Marketing adds the new grid node server to the Available Grid Nodes for Distributed Execution table. 6. Continue to add grid nodes until every computer that runs a grid node server is included in the grid network.

Set Simulate Mode


To perform optimization testing of your server node and the associated grid node servers without actually sending messages, SAS Digital Marketing provides a simulate mode. To use the simulate mode, complete the following steps: 1. Run the Server Conguration wizard or open the Server Conguration window from the Tools menu on your server node. 2. Select Send Options under the Broadcast Transmission node or locate the step in the wizard that sets default values for the Send options. 3. Select Simulate e-mail transmissions with a time delay and click OK to apply the setting.

Test the Grid Nodes


To test your grid nodes, complete the following steps:

262 ! Chapter 10: Optimizing SAS Digital Marketing

1. Start SAS Digital Marketing on each grid node by selecting the SAS Digital Marketing Grid Node shortcut from the Start menu under Windows, or by running the gridnode command under the UNIX and Linux operating environments. You can also start the SAS Digital Marketing grid node server as a Windows service. 2. Use a computer that is running a SAS Digital Marking server and select the SAS Digital Marketing Studio shortcut from the Start menu under Windows, or run the studio shell script in the UNIX and Linux operating environments. SAS Digital Marketing Studio opens. 3. Ensure that you are simulating broadcast transmissions so that the message is not sent to the recipients on your distribution list. For more information, see Set Simulate Mode on page 261. 4. Execute an e-mail broadcast denition that has a large distribution list. In order for SAS Digital Marketing to distribute the e-mail to the grid nodes, ensure that your distribution list is several times larger than the Number of messages to generate per thread value. This value appears in E-mail Options under the Broadcast Denition node in the Server Conguration window. 5. Immediately examine the Job Queue tab in SAS Digital Marketing Studio on the server node. When the broadcast executes, examine the Threads tab. You see the computers in the grid network that SAS Digital Marketing uses to execute your broadcast. You also see the threads that are running on each computer. You can examine the Threads tab in the SAS Digital Marketing Monitor window for each grid node to see the threads that are running on that computer.

Optimizing Performance

How to Optimize Performance


When the server node and its associated grid nodes are congured, you might want to adjust the following server settings to improve performance: SMTP spooler Performance settings Send settings E-mail settings N OTE : You should send your broadcast transmission in simulate mode before you make adjustments in order to avoid sending messages to your distribution list. For more information, see Set Simulate Mode on page 261.

Adjusting the SMTP Spooler ! 263

Adjusting the SMTP Spooler


SAS Digital Marketing provides a high-performance JavaMail driver that spools messages to disk for asynchronous message delivery to an SMTP mail server. The spooler has the following advantages: Your broadcasts execute faster when your SMTP server is unable to process the generated e-mail messages at the same rate that SAS Digital Marketing produces the messages. When the SAS Digital Marketing or SMTP mail server stops, the spooled e-mail messages remain spooled. When another connection to an SMTP mail server occurs, the spooled e-mail messages are delivered. Before using the SMTP spooler, you should verify that SAS Digital Marketing functions properly with the default JavaMail SMTP provider (com.sun.mail.smtp.SMTPTransport). You want to verify that a connection to an SMTP server is available when you use your connection parameters. This step is important because the spooler uses these same connection parameters to send e-mail messages, but not immediately when the broadcast is executed. Note Most high performance Mail Transfer Agents (MTA), like PowerMTA, automatically implement domain throttling. For high volume implementations that require domain throttling, such as a daily e-mail transmission rate over one million, you might consider using throttling at the MTA level.

Activate the SMTP Spooler


To activate the spooler, complete the following steps: 1. Run the Server Conguration wizard, or open the Server Conguration window from the Tools menu on your server node. 2. Select Send Options under the Broadcast Transmission node or locate the step in the wizard that sets default values for the Send options. 3. Select an e-mail server and click Edit. The SMTP Server Settings dialog box opens. 4. Use the Advanced tab and select com.sas.email.send.SpoolTransportProxy as the SMTP provider. Click OK. 5. After you change the SMTP provider for each e-mail server, click OK to apply the settings. You can also change the thread settings to control the number of spool threads that run asynchronously to deliver the e-mail messages. For more information, see Performance Options on page 115. N OTE : After changes are made to a spooler conguration, you should restart your SAS Digital Marketing server to ensure that the changes take effect.

264 ! Chapter 10: Optimizing SAS Digital Marketing

Adjusting Performance Settings


The Server Conguration window enables you to improve the performance of your broadcast transmissions. Use the Performance Options under the Broadcast Transmission node to change the following: Maximum number of threads for e-mail broadcasts species the maximum number of threads that SAS Digital Marketing runs on each grid node that sends the messages. Maximum number of SMTP spooler threads species the number of asynchronous threads that SAS Digital Marketing uses to deliver spooled SMTP messages to an e-mail server. For more information, see Performance Options on page 115.

Adjusting Send Settings


The Server Conguration window enables you to improve the performance of your broadcast transmissions. Use the Send Options under the Broadcast Transmission node to change the following: Number of send retries species the number of times to try re-sending e-mail. Simulated send delay (in milliseconds) sets the number of milliseconds to pause for each message during simulation mode. This pause approximates the network transaction time that is associated with actually sending a message. For more information, see Send Options on page 112.

Adjusting the E-mail Settings ! 265

Adjusting the E-mail Settings


The Server Conguration window enables you to improve the performance of your broadcast transmissions. Use the E-mail Options under the Broadcast Denition node to change the following: Number of messages to generate per thread species the number of e-mails to divide into blocks and to send to the grid nodes. Prevent duplicate e-mails per broadcast lters out all duplicate e-mail addresses when you send a broadcast transmission. You must select all for the e-mail audit level and Write audit records to a JDBC table on the Logging tab. For more information, see E-mail Options on page 107.

Part V

Appendixes

Appendix A

Using JMS With Broadcasts


Contents
Overview of JMS . . . . . . . . . . . . . . . Conguring a JMS Provider . . . . . . . . . Congure a JMS Server . . . . . . . . Test JMS in SAS Digital Marketing . . Using the JMS Provider . . . . . . . . . . . Writing a Client to Process Response Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 269 269 278 281 281

Overview of JMS
JMS is a Java message standard that enables application components that are based on the Java 2 Platform, Enterprise Edition (J2EE) to create, send, receive, and read messages. You must have a JMS provider to use JMS. To use JMS with SAS Digital Marketing, you congure JMS for use with BEA WebLogic as the provider and test the JMS provider. Then you congure SAS Digital Marketing to use the JMS provider and write a client to process response events.

Conguring a JMS Provider

Congure a JMS Server


To congure JMS for use with BEA WebLogic, complete the following steps: 1. Log on to the WebLogic Server Console and, in the Console tree, open Services ! JMS ! Servers.

270 ! Appendix A: Using JMS With Broadcasts

2. Click Congure a new JMS Server in the JMS Servers pane.

Congure a JMS Server ! 271

3. Type SASDigitalMarketing as the name of your JMS server and click Create.

272 ! Appendix A: Using JMS With Broadcasts

4. The SAS Digital Marketing server appears in the WebLogic Server Console. To verify that the SAS Digital Marketing server is deployed to your server, click the Target and Deploy tab. Select your server from the Target drop-down list and click Apply.

Congure a JMS Server ! 273

5. Expand the Destinations node under Services ! JMS ! Servers ! SASDigitalMarketing and select Congure a New JMS Queue.

274 ! Appendix A: Using JMS With Broadcasts

6. To create the JMS queue, specify ResponseQueue as the queue name and the JNDI name. Click Create.

Congure a JMS Server ! 275

7. To create a JMS topic, specify ResponseTopic as the topic name and the JNDI name. Click Create.

276 ! Appendix A: Using JMS With Broadcasts

8. Expand the Connection Factories node under Services ! JMS 9. Select Congure a New JMS Connection Factory.

Congure a JMS Server ! 277

10. To create the connection factory, specify SASDigitalMarketingFactory as the factory name and JNDI name. Click Create.

278 ! Appendix A: Using JMS With Broadcasts

11. To verify that the SASDigitalMarketingFactory is deployed to your server, click the Target and Deploy tab, select the server, and click Apply.

Test JMS in SAS Digital Marketing


To test the JMS conguration, complete the following steps: 1. Deploy the tracking servlets as described in Conguring the Tracking and Web Publication Tier on page 54. Then append /jmstest to the Web address for the root URL of the BESS deployments. For example, if your BESS deployments are located at http://myhost.com/bess, then use http://myhost.com/bess/jmstest to access the SAS Digital Marketing JMS Test page.

Test JMS in SAS Digital Marketing ! 279

If you use WebLogic and the suggested names for the JMS queue, topic, and factory, then the default settings are correct. Otherwise, change these names to match your conguration before you click Test JMS Settings.

2. Start the SAS Digital Marketing Server by selecting the SAS Digital Marketing Server shortcut from the Start menu under Windows or by running the startsrv command under the UNIX and Linux operating environments. 3. Start SAS Digital Marketing Studio by selecting the SAS Digital Marketing Studio shortcut from the Start menu under Windows or by running the studio shell script under the UNIX and Linux operating environments.

280 ! Appendix A: Using JMS With Broadcasts

4. Select JMS Queue Monitor from the Tools menu to open the E-mail JMS Queue Monitor window.

5. Type the settings that you veried on the SAS Digital Marketing JMS Test page, including the fully qualied hostname of the JMS URL. 6. Click Connect to connect to the JMS Queue that you veried on the SAS Digital Marketing JMS Test page. 7. On the SAS Digital Marketing JMS Test page, click Test JMS Settings. A test message appears in the E-mail JMS Queue Monitor window.

Using the JMS Provider ! 281

Using the JMS Provider


After you verify that your topic and queues are functioning correctly with the SAS Digital Marketing JMS Test page and the JMS Queue Monitor, congure the SAS Digital Marketing components to use JMS. The JMS conguration settings that are required by the conguration dialog boxes should match the settings that you previously veried on the JMS Test page. You must specify the JMS settings in the following locations: SAS Digital Marketing Use the Server Conguration window. For more information, see Overview of Customizing the Server on page 99. To verify that these settings work properly, execute a small broadcast that has the e-mail audit event set to all. During broadcast execution, your JMS application should receive audit events. For more information, see Auditing Broadcast Transmissions (Chapter 4, SAS Digital Marketing: Users Guide). E-mail Reply Manager Use the Reply Manager Conguration window that is available by selecting Congure Reply Manager from the Tools menu. To verify that these settings work properly, send an e-mail that has Out of Ofce as the subject line to the e-mail account that your Reply manager is congured to use. When the Reply manager is run, your JMS application receives a reply event that has a type property set to Out of Ofce. For more information, see Working with the E-mail Reply Manager on page 235. Tracking Servlets Use the Tracking Conguration wizard to prepare and deploy a new WAR le. For more information, see Conguring the Tracking and Web Publication Tier on page 54. To verify that these settings work properly, deploy the JMS-enabled servlets, and use the SAS Digital Marketing Tracking Servlets Test page to receive click and view events in your JMS application. For more information, see Verify the Tracking Servlets on page 68.

Writing a Client to Process Response Events


If you are unfamiliar with JMS programming, use the Java Message Service tutorial that is available at the Web site http://java.sun.com/products/jms/tutorial/. Example JMS Queue and Topic clients are included in the ROOT/doc/jms directory. Here is the default location for the JMS example on a computer that is running on the Windows environment.
C:/Program Files/SAS/SASDigitalMarketing/5.1/doc/jms

The readme.txt le or the readme.html le at this location contains build instructions and other information about the sample JMS clients.

Glossary
API (application programming interface) a set of software functions that facilitate communication between applications and other kinds of programs, services, or devices. ASP (Application Service Provider) a company that provides a software application on a shared server over the Internet. ASPs typically charge a fee for use of this software. bounce an e-mail message that is returned to the sender because of an error in the delivery process. broadcast a communication that is distributed by SAS Digital Marketing software through e-mail or through another electronic medium. broadcast denition a collection of information that describes a broadcast transmission. A broadcast denition includes header information, a recipient list, the type of message to send, the content to send, and a description of what to track. A broadcast denition also includes related execution records such as audit records, history records, and response records. broadcast tracking servlet a servlet that records data when an e-mail recipient either views an e-mail that contains the URL of a crumb servlet or clicks a tracked link in an e-mail. See also crumb servlet and redir servlet. campaign a planned set of one or more communications that are directed at a selected group of customers or potential customers. channel a mode of communication such as an e-mail message or a print mailing. correlated reply an e-mail reply that SAS Digital Marketing can connect to a specic broadcast denition by inserting the moniker for broadcast in the reply address. See also moniker. crumb servlet a type of broadcast tracking servlet that records data when a recipient views an e-mail that contains the URL of a crumb servlet. grid computing a type of computing in which large computing tasks are distributed among multiple computers on a network. grid node a specialized server that is used for broadcast distribution.

284 ! Glossary

HTTP (HyperText Transfer Protocol) a protocol for transferring data to the Internet. HTTP provides a way for servers and Web clients to communicate. It is based on the TCP/IP protocol. IMAP a method of getting e-mail from a server. IMAP is a more sophisticated set of rules than POP. See also POP. J2EE an environment that can be used to develop Web applications. JAR le a Java Archive le. The JAR le format is used for aggregating many les into one le. JAR les have the le extension .jar. JDBC (Java Database Connectivity) a standard interface for accessing SQL databases. JDBC provides uniform access to a wide range of relational databases. It also provides a common base on which higher-level tools and interfaces can be built. JDBC data provider a data provider that complies with JDBC. JDBC provider See JDBC data provider. JDK (Java Development Kit) a software development environment that is available from Sun Microsystems, Inc. The JDK includes a Java Runtime Environment (JRE), a compiler, a debugger, and other tools for developing Java applets and applications. JMS (Java Message Service) an application programming interface (API) that enables client applications to access the facilities of a message service. This interface provides a standard way for Java programs to create, send, receive, and read messages. JVM (Java Virtual Machine) a program that interprets Java programming code so that the code can be executed by the operating system on a computer. The JVM can run on either the client or the server. The JVM is the main software component that makes Java programs portable across platforms. A JVM is included with JDKs and JREs from Sun Microsystems, as well as with most Web browsers. MMS (Multimedia Message Service) an extension of SMS that enables the transmission of longer text messages with graphical images and audio clips to handheld wireless devices. See also Short Message Service. moniker a unique identier for a broadcast denition that is assigned when you create a new broadcast. You can use the moniker to correlate reply, response, and audit events to the broadcast that generated them. MTA (Mail Transport Agent) an application that handles the sending and receiving of e-mail.

Glossary ! 285

POP a method of getting e-mail from a server. POP offers fewer services than IMAP. See also IMAP. redir servlet a type of tracking servlet that records data in a response table when an e-mail recipient clicks a tracked link in an e-mail. See also crumb servlet. reply lter category a set of rules that are created in the E-mail Reply Manager. SAS Digital Marketing uses these rules to categorize replies, forward replies, delete replies, and add e-mail addresses to an opt-out list. RMI (remote method invocation) a Java programming feature that provides for remote communication between programs by enabling an object that is running in one Java Virtual Machine (JVM) to invoke methods on an object that is running in another JVM, possibly on a different host. See also JVM (Java Virtual Machine). RSS (Really Simple Syndication) an XML format to syndicate Web-based content. You use an RSS feed to monitor changes to Web-based content using an RSS reader. servlet a Java program that runs on a Web server. Servlet code does not have to be downloaded to a Web browser. Instead, servlets send HTML or other appropriate content back to a browser or to another type of Web-based client application. SMS (Short Message Service) the transmission of text messages to handheld wireless devices through an SMTP-SMS gateway. The messages are not more than 160 alphanumeric characters. SMTP a set of rules that the Internet service provider uses to send e-mail. thread the smallest task or part of a program that can be executed independently of other parts of the program. tracking servlet See broadcast tracking servlet. WAP (Wireless Application Protocol) an open international standard that species how to transmit and access optimized Internet content on handheld wireless devices. Web Archive le (WAR le) a type of Java le. XSL (Extensible Stylesheet Language) a language that can be used to specify how XML documents will be formatted.

Index
accessibility features, iii addresses, see e-mail addresses architecture, 10 ASP broadcasts Clickatell, 170 denition properties, 171 denition types, 170 life cycle of, 15 NowSMS, 170 response decoder, 177 ASP Denition Manager, 170 settings, 105 attachment warning, 244 audit records customizing, 110 logging settings, 109 audit server properties, 134 audit table conguring, 111 basic security mode, 129 batch jobs, 192 distribution lists, 158 batch SAS sessions, optimizing, 144 BEA WebLogic server conguring JMS with, 269 deploying tracking servlets to, 55 bounces, 244 broadcast denitions, 158 broadcast moniker, 232 broadcast replies, 232 broadcast reports, 192 broadcast responses processing, 281 tracking servlets, 25 broadcast scheduler conguring, 85 broadcast tracking, 230 broadcasts conguring transmissions, 112 customizing, 16 life cycle of, 11 migrating, 26 sending, 112 tracking servlets, 54 Clickatell SMS broadcast type, 170 Clickatell WAP broadcast type, 170 clients installing, 32 processing response events, 281 server properties, 135 cong.xml le, 38 conguration, see also server conguration ASP denitions, 105 audit table, 111 broadcast transmissions, 112 contact history, 121 distribution list, 106 domain throttling, 116 e-mail broadcasts, 107 e-mail reply account, 236 E-mail Reply Manager, 236 e-mail servers, 113 grid nodes, 256 JDBC data providers, 222 JMS, 269, 278 response history, 123 SAS Digital Marketing Web Studio, 83 SAS Information Delivery Portal, 88 server nodes, 260 server settings for performance, 262 servers, 38 Servlet Conguration wizard, 71 spam lter, 181 tracking servlets, 54 validating, 93 WAP integration, 119 WAP integration broadcast, 178 Web services, 120 Windows service, 95 consolidating data, 206 contact history conguring, 122 settings, 121 correlated replies, 232 crumb servlet, 25 testing, 69 Customer Intelligence contact history, 121 middle tier, 120 reply history, 243, 248 response history, 122 customizing audit records, 110 broadcasts, 16 grid node conguration, 256

288 ! Index

data consolidating with other business processes, 206 data source tables, 158 sample, 93 delivery architecture, 10 deploying Java servlets Web application, 24 deploying servlets Web application, 54 deploying tracking servlets Apache Tomcat, 57 BEA WebLogic, 55 IBM WebSphere, 58 proxy server, 79 directory structure, 23 Distribution List Manager, 161 settings, 106 distribution lists, 158, 166 creating, 158 modifying, 161 documentation, 16 domain mailbox, 233 domain throttling conguring, 117 e-mail addresses address changes, 244 embedded, 248 for correlated replies, 232 e-mail broadcasts conguring, 107 creating with distribution list, 158 life cycle of, 11 settings, 107, 265 specifying grid nodes, 108 e-mail lter, 181 e-mail reply account, conguring, 236 E-mail Reply Manager, 235 accessing tasks, 241 adding reply lter categories, 245 conguring, 236 deleting reply lter categories, 246 deleting reply rules, 252 forwarding reply messages, 250 general properties of reply lter categories, 247 managing reply rules, 250 modifying reply rules, 251 opening, 240 reply lter categories, 244 reply lters and reply rules, 243 reply rules and categories, 244 e-mail reply settings, 101

conguring, 101 e-mail servers, conguring, 113 edit server properties, 138 embedded e-mail addresses, 248 encoding server properties, 140 ETL processes, 10 events response events, 281 Extract, Transform, and Load (ETL) processes, 10 le, executing from a, 143 ltering reply lter categories, 243, 244 forwarding reply messages, 250, 252 add e-mail address, 252 delete e-mail address, 253 edit e-mail address, 253 geographical reporting, 183 geolocation database, 184 get servlet, 25 global data models, 166 managing, 166 grid nodes conguring, 256 conguring server nodes, 260 customizing congurations, 256 installing, 30 simulate mode, 261 testing, 261 group reports, 192 hard bounce, 244 IBM WebSphere server, deploying tracking servlets to, 58 installation, 21 clients, 32 directory structure, 23 grid nodes, 30 migrating broadcasts, 26 requirements for, 22 servers, 26 InstallShield wizard client installation, 33 grid node installation, 30 server installation, 27 integration utilities server properties, 141 IOM workspace connections, optimizing, 144 J2EE JavaMail, 10 Java Message Service, see JMS Java servlets, 10, 24 JDBC connections, 221 dening, 124, 222

Index ! 289

JDBC data providers, 222 SAS JDBC Explorer, 225 JDBC data providers conguring, 222 connections settings, 222 creating connections settings, 124 types of, 222 JDBC Explorer, 225 accessing tasks, 226 components, 226 opening, 225 JDBC server properties, 142 JMS, 102 conguring the server, 102 conguring with BEA WebLogic, 269 JMS topic and queue, 273 processing broadcast responses, 269 processing response events, 281 testing JMS conguration, 278 JMS provider, 281 keyboard shortcuts, iii life cycle of broadcasts, 11 ASP broadcasts, 15 e-mail broadcasts, 11 RSS feeds, 11 SMS broadcasts, 14 log settings for audit records, 109 MaxMind software, 184 messages, see also text message broadcasts copies of reply messages, 248 forwarding reply messages, 250 metadata security mode, 131 New Distribution List wizard, 159 new features, 3 notication list, 118 NowSMS broadcast type, 170 opt-out table adding responders to, 248 optimization, 255 adjusting conguration settings, 262 adjusting SMTP spooler, 263 conguring grid nodes, 256 conguring server nodes, 260 grid nodes, 260 optimizing performance, 262 testing grid nodes, 261 optimizing batch SAS sessions, 144 IOM workspace connections, 144

server properties, 144 optout servlet, 25 Out of Ofce notice, 245 performance optimization adjusting conguration settings, 262 adjusting SMTP spooler, 263 ports, restricting, 145 preview server properties, 146 Properties dialog box Security tab, 168 proxy settings, 128 pub servlets, 25 redir servlet, 25 testing, 69 replies, 245 forwarding, 252 processing, 101 server properties, 147 tracking, 232 tracking correlated replies, 232 tracking uncorrelated replies, 232 reply categories, 244 reply lter categories, 243, 244 adding, 245 deleting, 246 general properties, 247 reply messages copies of, 248 forwarding, 250 reply rules, 243, 244 creating, 250 deleting, 252 managing, 249 modifying, 251 properties, 247 reports broadcast groups, 192 broadcasts, 192 res servlet, 25 response decoder, 177 response events processing, 281 response history conguring, 123 settings, 122 response server properties, 151 response table changing, 231 geolocation data, 188 setting, 231 responses, see See broadcast responses responses, automated, 245

290 ! Index

return e-mail address, 232, 233 return receipt, 244 ROOT directory, 26 RSS feeds life cycle of, 11 rss servlet, 25 sample broadcasts previewing, 94 SAS Customer Intelligence software, 7 SAS Digital Marketing, ii, 7 architecture, 8 as Windows service, 95 components, 21 installing, 21 optimizing, 255 SAS Digital Marketing server installing, 26 updating, 83 SAS Digital Marketing Web Studio conguring, 83 deploying to Web application servers, 83 SAS E-mail Marketing, migrating broadcasts, 26 SAS Information Delivery Portal, 88 conguring, 88 linking to SAS Digital Marketing, 89 SAS JDBC Explorer, 225 accessing tasks, 226 components, 226 opening, 225 SAS Job Editor, 195 Compiled SAS Code tab, 199 creating keywords for code, 205 customizing code appearance, 204 customizing options, 203 Log tab, 196 menus, 199 preferences, 203 Properties tab, 198 Target tab, 197 toolbar, 202 SAS Job Manager, 192 SAS jobs, 192 batch jobs, 192 broadcast reports, 192 conguring, 104 consolidating data, 206 creating, 193 default macros, 206 deleting, 194 editing, 194 group reports, 192 renaming, 194 SAS language adapter, 190

conguring, 103 implementing, 86 requirements, 86 SAS macros, 206 SEM_DO_PREVIEW, 207 SEM_DO_TRANSACTION, 208 SEM_EXPORT_PROPERTIES, 209 SEM_GET_ALL_BROADCASTS, 210 SEM_GET_ALL_REPLIES, 211 SEM_GET_AUDIT, 212 SEM_GET_GROUP, 213 SEM_GET_HISTORY, 214 SEM_GET_PROPERTIES, 215 SEM_GET_REPLIES, 216 SEM_GET_RESPONSE, 217 SEM_GROUP_HISTORY, 218 SEM_SET_META, 219 SEM_SET_PROPERTY, 220 SAS programs, see SAS jobs SAS reports, 183 SAS settings, 103 scheduling conguring, 85, 118 server properties, 153 settings, 117 security settings, 128 basic security mode, 129 changing, 167 metadata security mode, 131 user groups, 132 send settings, 112, 264 conguring broadcast transmissions, 112 conguring e-mail servers, 113 server conguration audit logging settings, 109 connection settings, 124, 222 e-mail broadcast settings, 107 e-mail reply settings, 101 JMS settings, 102 modifying settings, 99 SAS settings, 103 scheduling settings, 117 security settings, 128 send settings, 112 server properties, 126 threads settings, 115 throttled domain settings, 117 tracking settings, 125 Server Conguration window, 262 Server Conguration wizard, 39, 256 server extension MaxMind, 186 server nodes, conguring, 260 server properties, 126, 133, 186

Index ! 291

adding, 127 audit, 134 client UI, 135 conguring, 126 deleting, 127 editing, 138 encoding, 140 integration utilities, 141 JDBC, 142 MaxMind, 187 optimize, 144 previewing, 146 reply management, 147 response, 151 restricting ports, 145 scheduling, 153 setting, 126 SMTP e-mail server specication, 147 viewing current settings, 127 servers advanced properties, 133, 187 conguring, 38 conguring e-mail servers, 113 executing from a le, 143 executing from a table, 143 installing, 26 Web application servers, 24, 54 Web Studio server, 83 Servlet Conguration wizard, 71 servlets, see also tracking servlets crumb, 25, 69 deploying to Web application servers, 54 get, 25 Java, 10 optout, 25 pub, 25 redir, 25, 69 res, 25 rss, 25 servlets WAR le, 24, 54, 57, 79 Sever Conguration window components, 99 opening, 99 shortcuts, iii simulate mode, 261 SMS broadcasts life cycle of, 14 SMTP e-mail server, changing, 147 SMTP spooler, 263 soft bounce, 244 software requirements, ii spam warning, 244 SpamAssassin software, 181 implementing a lter, 182

spooler, 263 table, executing from a, 143 tables audit table, 111 data source tables, 158 opt-out table, 248 response table, 188, 231 testing crumb servlet, 69 grid nodes, 261 JMS conguration, 278 redir servlet, 69 simulate mode, 261 tracking servlets, 68 text message broadcasts creating ASP denition types, 170 threads conguring, 115 settings, 115, 264 Throttled Domain Manager settings, 116 Tomcat server, deploying tracking servlets to, 57 tracking correlated replies, 232 server conguration settings, 125 settings for, 125 uncorrelated replies, 232 tracking and Web publication tier specifying location of, 125 tracking architecture, 10 tracking broadcast responses changing the response table, 231 E-mail Reply Manager, 240 tracking parameters, 230 tracking servlets, 25, 54 crumb servlet, 25 deploying servlets WAR le, 54, 79 get servlet, 25 optout servlet, 25 proxy server, 79 redir servlet, 25 testing and verifying, 67, 68 updating, 70 Tracking Servlets Test page, 68 uncorrelated replies, 232 unsubscribe request, 245 updating SAS Digital Marketing server, 83 tracking servlets, 70 user authentication levels, 128 user credentials, 128 changing, 167

292 ! Index

user groups, 132 changing security, 168 validating conguration, 93 verifying tracking servlets, 68 WAP integration conguring, 119 settings, 119 WAP integration broadcast, 178 WAR les, 24, 54, 57 Web application viewing SAS reports, 183 Web application servers Apache Tomcat, 57 BEA WebLogic, 55 deploying Java servlets to, 24 deploying servlets to, 54 deploying Web Studio, 83 IBM WebSphere, 58 Web publication security, 79 servlets, 54 Web publication servlets, 54 pub servlets, 25 res servlet, 25 rss servlet, 25 Web reporting, 83 Web services conguring, 120 specications, 120 Windows service, SAS Digital Marketing as, 95

Your Turn
We want your feedback. If you have comments about this book, please send them to yourturn@sas.com. Include the full title and page numbers (if applicable). If you have comments about the software, please send them to suggest@sas.com.

SAS Publishing gives you the tools to flourish in any environment with SAS!
Whether you are new to the workforce or an experienced professional, you need to distinguish yourself in this rapidly changing and competitive job market. SAS Publishing provides you with a wide range of resources to help you set yourself apart.

SAS Press Series


Need to learn the basics? Struggling with a programming problem? Youll nd the expert answers that you need in example-rich books from the SAS Press Series. Written by experienced SAS professionals from around the world, these books deliver real-world insights on a broad range of topics for all skill levels.

support.sas.com/saspress
SAS Documentation
To successfully implement applications using SAS software, companies in every industry and on every continent all turn to the one source for accurate, timely, and reliable informationSAS documentation. We currently produce the following types of reference documentation: online help that is built into the software, tutorials that are integrated into the product, reference documentation delivered in HTML and PDFfree on the Web, and hard-copy books.

support.sas.com/publishing

SAS Learning Edition 4.1


Get a workplace advantage, perform analytics in less time, and prepare for the SAS Base Programming exam and SAS Advanced Programming exam with SAS Learning Edition 4.1. This inexpensive, intuitive personal learning version of SAS includes Base SAS 9.1.3, SAS/STAT , SAS/GRAPH , SAS/QC , SAS/ETS , and SAS Enterprise Guide 4.1. Whether you are a professor, student, or business professional, this is a great way to learn SAS.

support.sas.com/LE

SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. indicates USA registration. Other brand and product names are trademarks of their respective companies. 2007 SAS Institute Inc. All rights reserved. 428713_1US.0307

S-ar putea să vă placă și