Integrating SAS and Microsoft.NET for Data Analysis
|
|
|
- Laura Bradford
- 9 years ago
- Views:
Transcription
1 Paper AD11 Integrating SAS and Microsoft.NET for Data Analysis Mai Nguyen, Shane Trahan, Patricia Nguyen, Jonathan Cirella RTI International, Research Triangle Park, NC ABSTRACT Both the Microsoft.NET framework and SAS technologies are powerful development platforms in their own domain. The.NET framework is Microsoft's strategic initiative for server and desktop development for the next decade and includes many technologies designed to facilitate rapid development of Internet and intranet applications. On the other hand, SAS is the industry leader providing enterprise software for data analytics, data mining and business intelligence. SAS software is currently used extensively at RTI in survey research for statistical analysis, data integration and reporting. This paper will show how to leverage the strengths of each platform to create integrated solutions in both desktop and web-applications. We will present code samples to demonstrate how to accomplish the following tasks: Create an ADO.NET connection to the SAS server Select and update SAS datasets using ADO.NET objects Execute SAS script within a.net program Finally, we will provide a complete example of a.net application that finds parameter estimates to simple regression models within specific guidelines such as determining the best explanatory variables in a model while maximizing the adjusted R2 of the PROC REG procedure. INTRODUCTION At RTI International and many other organizations in the survey research industry, the SAS system has been widely used for sampling design, statistical analysis, data validation and reports. It is also often used in nightly batch jobs to create online reports for survey monitoring and tracking purposes. The SAS system, however, has not been the preferred tool when it comes to developing applications or web sites that require a user-friendly interface with data stored in different formats: relational database, XML, HTML Today, these applications are often developed using the Microsoft.NET or the Java 2 platform. To bridge this gap, SAS has provided various integration technologies of which one is the Integration Object Model (IOM). However, the IOM is aimed more at software developers and is not yet so widely used or known in the SAS community. In this paper, we will present the technical details to show developers how to integrate the SAS system with the Microsoft.NET platform using the SAS IOM and we will also present a small application that tightly integrates.net and SAS together to perform a simplified backward stepwise regression.. MICROSOFT.NET FRAMEWORK The.NET framework is Microsoft's strategic initiative for server and desktop development for the next decade and includes many technologies designed to facilitate rapid development of Internet and intranet applications. The.NET Framework was created as the infrastructure for the new Microsoft.NET Platform providing a common environment for building, deploying and running client and server applications on a variety of devices from high-end servers to desktop/laptop computers to handheld PDA devices. The major building blocks of the.net framework are: Common Language Runtime (CLR). CLR is the virtual machine that manages the execution of the.net applications. It also provides low-level services such as automatic memory management, thread management, file I/O, security and language integration. Base Class Library (BCL). BCL is a library of classes available to all.net languages for building.net applications. The BCL classes abstract and encapsulate many common functions such as file operations, graphic rendering, database access, XML document manipulation and so forth..net Programming Languages..NET languages are computer programming languages that are used to produce programs that execute within the.net framework. A unique capability of all.net programming languages is their seamless integration with support for cross-language inheritance, cross-language exception handling, cross-language debugging and so forth. The most widely used.net languages are C#, VB.NET and C++. Visual Studio.NET (VS.NET). Visual Studio.NET is the Microsoft s flagship software development product for developing Windows applications, web sites, web applications and web services for the.net platform. VS.NET provides a host of productivity-improving features such as the IntelliSense, the Integrated Source-code debugger, the Drag-and-Drop user interface designer and so on. The basic building blocks of the.net framework are shown graphically below. 1
2 Multiple Languages Visual Basic C++ C# J# etc Base Class Libraries (BCL) Common Language Runtime (CLR) Microsoft Visual Studio.NET Development Environment Figure 1 The Microsoft.NET Framework SAS INTEGRATION OBJECT MODEL SAS software has been used in many aspects of survey research within RTI, including sampling design, data analysis, data report and, to some extent, integration. As RTI and other organizations in the survey research industry have embraced web technologies in their survey operations in recent years, the ability to provide online data collection and to integrate data analyses and reporting becomes more essential. SAS software has always been strong on data manipulation and analysis, but it is not known for creating friendly user interfaces and data exchange, especially via the web. However, with SAS v8, SAS has introduced the SAS/Integration Technologies (IT), and its core foundation, the Integrated Object Model (IOM). The IOM opened a window into SAS from virtually any programming environment. It supported the ability to interface with Microsoft.NET as well as other major programming environments. It has a simple object model that exposed all of the power of SAS to the.net programs. The IOM hierarchy is shown below in Figure 2. Figure 2 - The IOM Hierarchy 1 The usage of the SAS IOM objects will be illustrated and fully explained in our code samples. ENVIRONMENT OVERVIEW Although IOM is primarily designed for thin client applications, our code samples are running on a Microsoft Windows PC with SAS 9 base software. The.NET sample codes are in C# using the.net framework 1.1, though they should also work with the.net Framework 2.0 with no modification. We are using the standard SQL with the ADO.NET classes in the.net framework to work with SAS datasets. We assume the readers are familiar with the VS.NET 2003 or the latest VS.NET Source:SUGI Conference April Eberhardt DeVenezia Through the Looking Glass: Two Windows into SAS 2
3 ACCESSING SAS DATASET USING MICROSOFT ADO.NET ADO.NET is the data access class library in the.net base class library. It is commonly used by programmers to access and modify data stored in relational databases, though it can also be used to access data in nonrelational sources. ADO.NET consists of two primary parts: Data Provider. A data provider is a set of ADO.NET classes that allow users to access a specific database, execute SQL commands and retrieve data. Essentially, it is the bridge between applications and a data source. DataSet. DataSet is an in-memory representation of any number of tables and their relationships and constraints. It allows a program to work with data retrieved from a data source in a disconnected manner. The primary components of the ADO.NET are show below in Figure 3. Figure 3 - ADO.NET Architecture Our sample codes use the following steps to access data in SAS datasets using the ADO.NET objects: Step 1 Add references to the SAS IOM and the SASWorkspaceManager Type Library to the project. Step 2 Obtain a SAS workspace manager object from the IOM. Step 3 Create an OleDb connection object using the IOM provider. Step 4 Create and execute an ADO.NET command to set the location of the SAS datasets. Step 5 Create an ADO.NET data adapter object to retrieve the data from SAS datasets or create and execute an ADO.NET command to modify data in a SAS dataset. Sample code snippets for these steps are shown in the following sections. Step 1 Add references to the SAS IOM and the SASWorkspaceManager. From the VS.NET Explorer Solution window, add references to following Common Object Model(COM) components: SAS Integrated Object Model SASWorkspaceManager Type Library For convenience, the following namespace should also be added to the source files: using SAS ; using SASWorkspaceManager ; Step 2 Obtain SAS workspace manager object from the IOM Obtain a SAS workspace manager object from the IOM using code such as the snippet below. The SAS workspace manager object will be needed to create an OleDb connection object with the IOM data provider. // Create SAS workspace SAS.Workspace sasws ; string xmlinfo ; 3
4 WorkspaceManager saswm = new SASWorkspaceManager.WorkspaceManager() ; sasws = (SAS.Workspace)sasWM.Workspaces.CreateWorkspaceByServer( "LocalWS", Visibility.VisibilityProcess, null, "", "", out xmlinfo) ; Step 3 Create an OleDbConnection object The following code snippet shows how to create an OleDbConnection object using the IOM data provider. // Create a new OleDbConnection and tell it to use the IOM provider. OleDbConnection conn = new OleDbConnection(); conn.connectionstring = "Provider=sas.IOMProvider; SAS Workspace ID=" + sasws.uniqueidentifier ; Step 4 Setting SAS library path Before working with data in the SAS datasets, set the SAS library path (libname) with the IOM provider. This can be done with an OleCommand as shown in the following code snippet. In our sample project, the SAS datasets reside in the directory C:\Temp\IOM. We also aliased it as MyLib. // Set SAS dataset library path (libname) OleDbCommand cmd = new OleDbCommand() ; cmd.connection = conn ; cmd.commandtype = CommandType.Text ; cmd.commandtext MyLib 'c:\temp\iom'" ; conn.open() ; cmd.executenonquery() ; conn.close() ; Step 5 Retrieve SAS dataset into a DataSet With ADO.NET, a SAS dataset can be treated like a relational table. It can be queried or updated with the standard SQL SELECT, INSERT, UPDATE and DELETE statements. Our test SAS datasets are shown below in Figure 4: Figure 4 - Test SAS Datasets The following code snippet retrieves observations (records) whose age is greater than 15 from the Persons dataset. Note that we must prefix the SAS dataset with the libname alias defined in step 4 in the SQL statement. // Retrieve SAS data into a DataSet string sql = "select * from MyLib.Persons where age > 15" ; OleDbDataAdapter da = new OleDbDataAdapter(sql, conn) ; System.Data.DataSet ds = new System.Data.DataSet("SAS") ; 4
5 da.fill(ds) ; AD11 WriteDataSet(ds.Tables[0]) ; The output of the above code snippet is shown below. Michael Brown Jack Doe SQL statement with join can also be used to retrieve data from multiple SAS datasets as shown in the following code snippet. // SQL statement with join sql = "select Persons.First, Persons.Last, Persons.Age, Pets.Pet " + "from MyLib.Persons, MyLib.Pets " + "where Persons.First = Pets.First " + " and Persons.Last = Pets.Last " + "Order By Age " ; da = new OleDbDataAdapter(sql, conn) ; ds = new System.Data.DataSet("SAS") ; da.fill(ds) ; WriteDataSet(ds.Tables[0]) ; The output of the above code snippet is shown below. Mary Smith 14 Cat Mary Smith 14 Fish John Doe 15 Dog We can also update the data in a SAS dataset with the SQL UPDATE statement: // Update data in a SAS dataset with a SQL UPDATE sql = "update MyLib.Persons set Age = 17 " + "where First = 'John' and Last = 'Doe'" ; cmd = new OleDbCommand(sql, conn); cmd.commandtype = CommandType.Text ; conn.open() ; cmd.executenonquery() ; conn.close() ; SQL INSERT and DELETE are performed in a similar manner. RUNNING SAS SCRIPT DYNAMICALLY WITHIN A.NET PROGRAM Up to this point, we have only used the data component of the IOM to manipulate data in SAS datasets. The IOM also provides the LanguageService component to allow client applications to submit SAS code to the IOM server for execution as well as retrieve log and output listing. In addition to submitting SAS code, the LanguageService allows us to execute SAS Stored Processes a special format of a SAS program available on the server. Using SAS Stored Processes, we can have centralized SAS programs that can be invoked by multiple SAS clients. Here we demonstrate the simpler method, submitting SAS code to the IOM server for execution 2. 2 See the SAS support website ( for more information on advance SAS stored processes 5
6 The code snippet below illustrates how to obtain a LanguageService object, and then use it to submit a simple SAS data step and retrieve its log stream. // Submit SAS script string script mylib 'c:\temp\iom' ; " mylib.myds; " set mylib.persons ; " if (age <= 15) ; " " ; sasws.languageservice.submit(script) ; string outlog = sasws.languageservice.flushlog(1000) ; StringBuilder sb = new StringBuilder() ; while (outlog.length > 0) { sb.append(outlog) ; outlog = sasws.languageservice.flushlog(1000) ; Console.WriteLine(sb.ToString()) ; The screen capture of the SAS log is shown below. NOTE: Copyright (c) by SAS Institute Inc., Cary, NC, USA. NOTE: SAS (r) 9.1 (TS1M3) Licensed to RESEARCH TRIANGLE INSTITUTE, Site NOTE: This session is executing on the XP_PRO platform. NOTE: SAS Initialization used (Total process time): real time cpu time 0.00 seconds 0.00 seconds NOTE: Libref MYLIB was successfully assigned as follows: Engine: V9 Physical Name: c:\temp\iom 1 libname mylib 'c:\temp\iom' ; 1! data mylib.myds; set mylib.persons ; if (age <= 15) ; 1! run; NOTE: There were 4 observations read from the data set MYLIB.PERSONS. NOTE: The data set MYLIB.MYDS has 2 observations and 4 variables. NOTE: DATA statement used (Total process time): real time cpu time 0.17 seconds 0.00 seconds 6
7 INTEGRATION OF SAS AND.NET FOR SIMPLE REGRESSRION ANALYSIS Integrating SAS with.net also allows developers to greatly enhance some tedious processes. As an example, we have created a.net program to execute multiple PROC REG procedures and then the program is used to further analyze the output of these procedures. Our example uses what is called a backward selection stepwise regression to find a model of best fit where the most parameters are significant. Backward selection stepwise regression simply takes all the linear and cross product variables together and performs a regression procedure. The process requires systematically taking one variable away at a time and continuing to perform a regression at each iteration. Each iteration or variable removed will result in different regression results that could possibly be the best model fit. With.NET integration we were able to automate this time-consuming process by having.net script our SAS code and analyze results without interaction from the user. To perform the stepwise regression, a comma delimited CSV file having column headers as variable names and numerical values for each observation plus a Boolean option for obtaining natural logarithmic values are added as arguments to the IOM_DEMO.exe program. The syntax to start the regression process and an example of the Data.csv file follows. C:\>IOM_DEMO.exe log=true file="c:\mydata\data.csv" Consumption,Population,NumCars,Tax,Price,Income , , ,18,133.4, ,632249,597734,8,161.2, , , ,18,146.8, , , ,21.7,132.4, , , ,18.4,152.6, , , ,22,142.9,49397 The first column of the file is the dependent variable and other columns are considered potential significant independent variables. The.NET code opens the file and extracts the header information for variable names and then starts scripting SAS code to import data, create variable names and perform log functions on variables if needed. At the same time that all the variables are being scripted.net is also keeping track of all the imported and newly created variables so that it can use them later to perform the regression analysis. Even though the SAS code is being created in.net it is still only resident in memory and has yet to be passed to SAS for processing. Only after all the SAS syntax has been created will the text be submitted to SAS for processing using the IOM. A partial example of the SAS code created by.net is shown below along with the.net code that creates the custom SAS script: data MyData; InFile "c:\mydata\data.csv" Delimiter=',' FirstObs=2; input Consumption Population NumCars Tax Price Income run; lconsumption=log(consumption);lpopulation=log(population);lnumcars=log(numcars ); ltax=log(tax);lprice=log(price);lincome=log(income); lincome_lprice=lincome*lprice; lincome_ltax=lincome*ltax; lincome_lnumcars=lincome*lnumcars; lincome_lpopulation=lincome*lpopulation;.net Code private string createvariables(string x,bool y){ 7
8 string modelvars=null; string createvars=null; char[] splitter={','; AD11 //Our Model Variables Syntax //Create Variables syntax //Define our splitter variable //check to perform Natural Log if(y==true) { string []allvariablesarray=null; //establish variable names array allvariablesarray=x.split(splitter); //Create SAS syntax for(int z=0;z<=allvariablesarray.length-1;z++){ createvars = createvars + "l" + allvariablesarray[z] + "=log(" + allvariablesarray[z] + ");"; //put a comma after each variable unless it is the last one if(z!=allvariablesarray.length-1){ modelvars=modelvars + "l" + allvariablesarray[z] + ","; else{ modelvars=modelvars + "l" + allvariablesarray[z] + ""; else {modelvars=x; string []modelvarsarray=null; modelvarsarray=modelvars.split(splitter); //now that we have the array of modelvars we loop through them for(int z=modelvarsarray.length-1;z>=0;z--){ //Create the syntax for creating the paired variables for(int r=z-1;r>=0;r--) { createvars=createvars + " " + modelvarsarray[z].tostring() + "_" + modelvarsarray[r].tostring() + "=" + modelvarsarray[z].tostring() + "*" + modelvarsarray[r].tostring()+";"; //Assign the variables into modelvars to be used in regression modelvars=modelvars + "," + modelvarsarray[z].tostring() + "_" + modelvarsarray[r].tostring() + ""; //return the createvars syntax and the modelvars syntax return createvars+" "+modelvars; 8
9 AD11 Now that.net has created the SAS script creating all the variables and the program also knows the name of all the variables required, the next logical step is to start scripting the analysis part of the integration. As was stated earlier, the backward stepwise regression technique performs a regression on all possible variables and then systematically removes independent variables one by one until there are no other variables left. A simple loop inside the program is used to work through all the variables to dynamically create the PROC REG procedure as more and more variables are removed. Through each iteration of the loop the PROC REG procedure and the other memory-resident SAS syntax is passed to the IOM for execution in the SAS engine as shown below; private void dosas(string strinputval, string strmodelval){ //Establish the SAS Workspace SAS.Workspace sasws = iom.sasworkspace; //Create our SAS syntax header for importing //concatenate header,input,model and footer syntax string strheader="data MyData;InFile \"" + myglobal.inputfile + "\" Delimiter=',' FirstObs=2;"; string strfooter=@"run;ods XML close;"; //SAS header and footer are within the scope of dosas strmodelval including //syntax creating variables for the regression analysis StringBuilder sasscript = new StringBuilder() ; sasscript.append(strheader); sasscript.append(strinputval); sasscript.append(strmodelval); sasscript.append(strfooter); //submit the sasscript to the SAS engine for processing sasws.languageservice.submit(sasscript.tostring()) ; //Capture information for log information string outlog = sasws.languageservice.flushlog(1000) ; StringBuilder sb = new StringBuilder() ; //Loop through the log information and assign it to the string while (outlog.length > 0){ sb.append(outlog); outlog = sasws.languageservice.flushlog(1000); //Output data to the form area for viewing txtlog.lines = sb.tostring().split('\n'); the resulting output is directed to an XML document on the client machine. This XML document, produced by the SAS Output Delivery System (ODS), contains all the needed statistical information to perform a comparison between regression models. In order to perform our comparison between these models the resulting XML document is parsed and parameter estimates, t values, and R square values are stored into a.net storage framework called a datatable. These datatables are memory-resident and similar to a table in a database that 9
10 can be queried or updated in similar ways. Each regression model that is run has its resulting XML output stored into this datatable. Once all variables have been exhausted in the regression loop, our final step is to obtain the best fit model stored in the datatable. The final step involves returning what is the best fit model stored in the datatable according to parameters hardcoded into the program. In this case we are assuming a 95% confidence interval for as many variables that will maximize the Adjusted R 2 value. This is done by executing a filter on the datatable itself. The filter, similar to a SQL query, reads where Pr> t <.05 and Adj R-Sq!=1 order results by the iteration id. The resulting records from this query are further analyzed and where the iteration id has the most number of significant parameters we flag this as our best fit. Our resulting best fit parameter estimates are displayed in a pop-up as indicated here. CONCLUSION With.NET and SAS working together the statistical power of SAS can now be accessed by all software developers, not just the SAS experts. The integration opens the door for creating reusable SAS objects that can be incorporated into large-scale software development projects where SAS may have never been able to interact. This paper has discussed how the interaction between the two technologies works and gives a detailed example of how integration could be used for many other types of procedures in the SAS system. As many SAS users are aware, SAS Internet provides functionality through a browser, but the IOM described here takes this a step further and allows more powerful programming languages such as Java, C# and Visual Basic to harness the capabilities of the SAS engine. With more users able to utilize SAS and its tools the SAS community will be able to expand its reach to even more developers with a much larger array of talents. This can only complement the SAS suite of products and the community that it supports. CONTACT INFORMATION Your comments and questions are valued and encouraged. Contact any of the authors at: Mai Nguyen Shane Trahan RTI International RTI International 800 Park Drive Offices 800 Park Drive Offices Research Triangle Park, NC Research Triangle Park, NC Phone: (919) Phone: (919) [email protected] [email protected] Web: Web: Patricia Nguyen RTI International 4506 S. Miami Blvd. Suite 100 & 150 Durham, NC Phone: (919) [email protected] Web: Jonathan Cirella RTI International 800 Park Drive Offices Research Triangle Park, NC Phone: (919) [email protected] Web: 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. 10
Using Web Services to exchange information via XML
Paper TS07 Using Web Services to exchange information via XML Edward Foster, Oxford Pharmaceutical Sciences, UK ABSTRACT Web Services have evolved over the past 4 years and are a key component of Service
Dynamic Web Programming BUILDING WEB APPLICATIONS USING ASP.NET, AJAX AND JAVASCRIPT
Dynamic Web Programming BUILDING WEB APPLICATIONS USING ASP.NET, AJAX AND JAVASCRIPT AGENDA 1. Introduction to Web Applications and ASP.net 1.1 History of Web Development 1.2 Basic ASP.net processing (ASP
SAS, Excel, and the Intranet
SAS, Excel, and the Intranet Peter N. Prause, The Hartford, Hartford CT Charles Patridge, The Hartford, Hartford CT Introduction: The Hartford s Corporate Profit Model (CPM) is a SAS based multi-platform
Creating a Windows Service using SAS 9 and VB.NET David Bosak, COMSYS, Kalamazoo, MI
Creating a Windows Service using SAS 9 and VB.NET David Bosak, COMSYS, Kalamazoo, MI ABSTRACT This paper describes how to create a Windows service using SAS 9 and VB.NET. VB.NET is used as a wrapper to
Programming in C# with Microsoft Visual Studio 2010
Introducción a la Programación Web con C# en Visual Studio 2010 Curso: Introduction to Web development Programming in C# with Microsoft Visual Studio 2010 Introduction to Web Development with Microsoft
Base One's Rich Client Architecture
Base One's Rich Client Architecture Base One provides a unique approach for developing Internet-enabled applications, combining both efficiency and ease of programming through its "Rich Client" architecture.
Automated distribution of SAS results Jacques Pagé, Les Services Conseils HARDY, Quebec, Qc
Paper 039-29 Automated distribution of SAS results Jacques Pagé, Les Services Conseils HARDY, Quebec, Qc ABSTRACT This paper highlights the programmable aspects of SAS results distribution using electronic
Interfacing SAS Software, Excel, and the Intranet without SAS/Intrnet TM Software or SAS Software for the Personal Computer
Interfacing SAS Software, Excel, and the Intranet without SAS/Intrnet TM Software or SAS Software for the Personal Computer Peter N. Prause, The Hartford, Hartford CT Charles Patridge, The Hartford, Hartford
Dynamic Decision-Making Web Services Using SAS Stored Processes and SAS Business Rules Manager
Paper SAS1787-2015 Dynamic Decision-Making Web Services Using SAS Stored Processes and SAS Business Rules Manager Chris Upton and Lori Small, SAS Institute Inc. ABSTRACT With the latest release of SAS
Getting Started with STATISTICA Enterprise Programming
Getting Started with STATISTICA Enterprise Programming 2300 East 14th Street Tulsa, OK 74104 Phone: (918) 749 1119 Fax: (918) 749 2217 E mail: mailto:[email protected] Web: www.statsoft.com
IBM WebSphere ILOG Rules for.net
Automate business decisions and accelerate time-to-market IBM WebSphere ILOG Rules for.net Business rule management for Microsoft.NET and SOA environments Highlights Complete BRMS for.net Integration with
Visual Basic. murach's TRAINING & REFERENCE
TRAINING & REFERENCE murach's Visual Basic 2008 Anne Boehm lbm Mike Murach & Associates, Inc. H 1-800-221-5528 (559) 440-9071 Fax: (559) 440-0963 [email protected] www.murach.com Contents Introduction
AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping
AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping 3.1.1 Constants, variables and data types Understand what is mean by terms data and information Be able to describe the difference
ABSTRACT THE ISSUE AT HAND THE RECIPE FOR BUILDING THE SYSTEM THE TEAM REQUIREMENTS. Paper DM09-2012
Paper DM09-2012 A Basic Recipe for Building a Campaign Management System from Scratch: How Base SAS, SQL Server and Access can Blend Together Tera Olson, Aimia Proprietary Loyalty U.S. Inc., Minneapolis,
Access Data Object (cont.)
ADO.NET Access Data Object (cont.) What is a Dataset? DataTable DataSet DataTable DataTable SqlDataAdapter SqlConnection OleDbDataAdapter Web server memory Physical storage SQL Server 2000 OleDbConnection
Using SAS With a SQL Server Database. M. Rita Thissen, Yan Chen Tang, Elizabeth Heath RTI International, RTP, NC
Using SAS With a SQL Server Database M. Rita Thissen, Yan Chen Tang, Elizabeth Heath RTI International, RTP, NC ABSTRACT Many operations now store data in relational databases. You may want to use SAS
Crystal Reports. For Visual Studio.NET. Reporting Off ADO.NET Datasets
Crystal Reports For Visual Studio.NET Reporting Off ADO.NET Datasets 2001 Crystal Decisions, Inc. Crystal Decisions, Crystal Reports, and the Crystal Decisions logo are registered trademarks or trademarks
Developing Database Business Applications using VB.NET
Developing Database Business Applications using VB.NET Curriculum class designed and written by Ernest Bonat, Ph.D., President Visual WWW, Inc. Visual WWW is a Microsoft Visual Studio Industry Partner
Windows PowerShell Cookbook
Windows PowerShell Cookbook Lee Holmes O'REILLY' Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Table of Contents Foreword Preface xvii xxi Part I. Tour A Guided Tour of Windows PowerShell
Programmabilty. Programmability in Microsoft Dynamics AX 2009. Microsoft Dynamics AX 2009. White Paper
Programmabilty Microsoft Dynamics AX 2009 Programmability in Microsoft Dynamics AX 2009 White Paper December 2008 Contents Introduction... 4 Scenarios... 4 The Presentation Layer... 4 Business Intelligence
Introducing the.net Framework 4.0
01_0672331004_ch01.qxp 5/3/10 5:40 PM Page 1 CHAPTER 1 Introducing the.net Framework 4.0 As a Visual Basic 2010 developer, you need to understand the concepts and technology that empower your applications:
Integrating VoltDB with Hadoop
The NewSQL database you ll never outgrow Integrating with Hadoop Hadoop is an open source framework for managing and manipulating massive volumes of data. is an database for handling high velocity data.
DiskPulse DISK CHANGE MONITOR
DiskPulse DISK CHANGE MONITOR User Manual Version 7.9 Oct 2015 www.diskpulse.com [email protected] 1 1 DiskPulse Overview...3 2 DiskPulse Product Versions...5 3 Using Desktop Product Version...6 3.1 Product
You have got SASMAIL!
You have got SASMAIL! Rajbir Chadha, Cognizant Technology Solutions, Wilmington, DE ABSTRACT As SAS software programs become complex, processing times increase. Sitting in front of the computer, waiting
SAS IT Resource Management 3.2
SAS IT Resource Management 3.2 Reporting Guide Second Edition SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc 2011. SAS IT Resource Management 3.2:
Social Relationship Analysis with Data Mining
Social Relationship Analysis with Data Mining John C. Hancock Microsoft Corporation www.johnchancock.net November 2005 Abstract: The data mining algorithms in Microsoft SQL Server 2005 can be used as a
Leveraging the SAS Open Metadata Architecture Ray Helm & Yolanda Howard, University of Kansas, Lawrence, KS
Paper AD08-2011 Leveraging the SAS Open Metadata Architecture Ray Helm & Yolanda Howard, University of Kansas, Lawrence, KS Abstract In the SAS Enterprise BI and Data Integration environments, the SAS
WHITE PAPER. TimeScape.NET. Increasing development productivity with TimeScape, Microsoft.NET and web services TIMESCAPE ENTERPRISE SOLUTIONS
TIMESCAPE ENTERPRISE SOLUTIONS WHITE PAPER Increasing development productivity with TimeScape, Microsoft.NET and web services This white paper describes some of the major industry issues limiting software
Release 2.1 of SAS Add-In for Microsoft Office Bringing Microsoft PowerPoint into the Mix ABSTRACT INTRODUCTION Data Access
Release 2.1 of SAS Add-In for Microsoft Office Bringing Microsoft PowerPoint into the Mix Jennifer Clegg, SAS Institute Inc., Cary, NC Eric Hill, SAS Institute Inc., Cary, NC ABSTRACT Release 2.1 of SAS
Key Benefits of Microsoft Visual Studio 2008
Key Benefits of Microsoft Visual Studio 2008 White Paper December 2007 For the latest information, please see www.microsoft.com/vstudio The information contained in this document represents the current
CATALOG OF CLASSES IT and Technical Courses
CATALOG OF CLASSES IT and Technical Courses Table of Contents CATALOG OF CLASSES... 1 Microsoft... 1 10135BC... 1 Configuring, Managing and Troubleshooting Microsoft Exchange Server 2010 Service Pack 2...
Improving Your Relationship with SAS Enterprise Guide
Paper BI06-2013 Improving Your Relationship with SAS Enterprise Guide Jennifer Bjurstrom, SAS Institute Inc. ABSTRACT SAS Enterprise Guide has proven to be a very beneficial tool for both novice and experienced
Microsoft Visual Basic Scripting Edition and Microsoft Windows Script Host Essentials
Microsoft Visual Basic Scripting Edition and Microsoft Windows Script Host Essentials 2433: Microsoft Visual Basic Scripting Edition and Microsoft Windows Script Host Essentials (3 Days) About this Course
Web Application diploma using.net Technology
Web Application diploma using.net Technology ISI ACADEMY Web Application diploma using.net Technology HTML - CSS - JavaScript - C#.Net - ASP.Net - ADO.Net using C# What You'll Learn understand all the
Data Mining Extensions (DMX) Reference
Data Mining Extensions (DMX) Reference SQL Server 2012 Books Online Summary: Data Mining Extensions (DMX) is a language that you can use to create and work with data mining models in Microsoft SQL Server
Developing and Implementing Windows-Based Applications With Microsoft Visual C#.NET and Microsoft Visual Studio.NET
Unit 40: Developing and Implementing Windows-Based Applications With Microsoft Visual C#.NET and Microsoft Visual Studio.NET Learning Outcomes A candidate following a programme of learning leading to this
Exploiting Key Answers from Your Data Warehouse Using SAS Enterprise Reporter Software
Exploiting Key Answers from Your Data Warehouse Using SAS Enterprise Reporter Software Donna Torrence, SAS Institute Inc., Cary, North Carolina Juli Staub Perry, SAS Institute Inc., Cary, North Carolina
CHAPTER 1 Overview of SAS/ACCESS Interface to Relational Databases
3 CHAPTER 1 Overview of SAS/ACCESS Interface to Relational Databases About This Document 3 Methods for Accessing Relational Database Data 4 Selecting a SAS/ACCESS Method 4 Methods for Accessing DBMS Tables
The full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code.
Content Introduction... 2 Data Access Server Control Panel... 2 Running the Sample Client Applications... 4 Sample Applications Code... 7 Server Side Objects... 8 Sample Usage of Server Side Objects...
Reporting Services. White Paper. Published: August 2007 Updated: July 2008
Reporting Services White Paper Published: August 2007 Updated: July 2008 Summary: Microsoft SQL Server 2008 Reporting Services provides a complete server-based platform that is designed to support a wide
Qlik REST Connector Installation and User Guide
Qlik REST Connector Installation and User Guide Qlik REST Connector Version 1.0 Newton, Massachusetts, November 2015 Authored by QlikTech International AB Copyright QlikTech International AB 2015, All
TIBCO Spotfire Metrics Modeler User s Guide. Software Release 6.0 November 2013
TIBCO Spotfire Metrics Modeler User s Guide Software Release 6.0 November 2013 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR BUNDLED TIBCO SOFTWARE
COMMON All Day Lab 10/16/2007 Hands on VB.net and ASP.Net for iseries Developers
COMMON All Day Lab 10/16/2007 Hands on VB.net and ASP.Net for iseries Developers Presented by: Richard Schoen Email: [email protected] Bruce Collins Email: [email protected] Presentor Information
BusinessObjects Enterprise XI Release 2 Administrator s Guide
BusinessObjects Enterprise XI Release 2 Administrator s Guide BusinessObjects Enterprise XI Release 2 1 Patents Trademarks Copyright Third-party contributors Business Objects owns the following U.S. patents,
Analyzing the Server Log
87 CHAPTER 7 Analyzing the Server Log Audience 87 Introduction 87 Starting the Server Log 88 Using the Server Log Analysis Tools 88 Customizing the Programs 89 Executing the Driver Program 89 About the
Vendor: Brio Software Product: Brio Performance Suite
1 Ability to access the database platforms desired (text, spreadsheet, Oracle, Sybase and other databases, OLAP engines.) yes yes Brio is recognized for it Universal database access. Any source that is
Beginning C# 5.0. Databases. Vidya Vrat Agarwal. Second Edition
Beginning C# 5.0 Databases Second Edition Vidya Vrat Agarwal Contents J About the Author About the Technical Reviewer Acknowledgments Introduction xviii xix xx xxi Part I: Understanding Tools and Fundamentals
SAS Office Analytics: An Application In Practice
PharmaSUG 2016 - Paper AD19 SAS Office Analytics: An Application In Practice Monitoring and Ad-Hoc Reporting Using Stored Process Mansi Singh, Roche Molecular Systems Inc., Pleasanton, CA Smitha Krishnamurthy,
I Didn t Know SAS Enterprise Guide Could Do That!
Paper SAS016-2014 I Didn t Know SAS Enterprise Guide Could Do That! Mark Allemang, SAS Institute Inc., Cary, NC ABSTRACT This presentation is for users who are familiar with SAS Enterprise Guide but might
Parallel Data Preparation with the DS2 Programming Language
ABSTRACT Paper SAS329-2014 Parallel Data Preparation with the DS2 Programming Language Jason Secosky and Robert Ray, SAS Institute Inc., Cary, NC and Greg Otto, Teradata Corporation, Dayton, OH A time-consuming
White Paper. How Streaming Data Analytics Enables Real-Time Decisions
White Paper How Streaming Data Analytics Enables Real-Time Decisions Contents Introduction... 1 What Is Streaming Analytics?... 1 How Does SAS Event Stream Processing Work?... 2 Overview...2 Event Stream
Developing and Implementing Web Applications with Microsoft Visual C#.NET and Microsoft Visual Studio.NET
Unit 39: Developing and Implementing Web Applications with Microsoft Visual C#.NET and Microsoft Visual Studio.NET Learning Outcomes A candidate following a programme of learning leading to this unit will
9.1 SAS/ACCESS. Interface to SAP BW. User s Guide
SAS/ACCESS 9.1 Interface to SAP BW User s Guide The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2004. SAS/ACCESS 9.1 Interface to SAP BW: User s Guide. Cary, NC: SAS
2015 Workshops for Professors
SAS Education Grow with us Offered by the SAS Global Academic Program Supporting teaching, learning and research in higher education 2015 Workshops for Professors 1 Workshops for Professors As the market
Advanced Web Application Development using Microsoft ASP.NET
Course Outline Other Information MS2311 Days 3 Starting Time 9:00 Finish Time 4:30 Lunch & refreshments are included with this course. Advanced Web Application Development using Microsoft ASP.NET Course
Technical Paper. Defining an ODBC Library in SAS 9.2 Management Console Using Microsoft Windows NT Authentication
Technical Paper Defining an ODBC Library in SAS 9.2 Management Console Using Microsoft Windows NT Authentication Release Information Content Version: 1.0 October 2015. Trademarks and Patents SAS Institute
Turning ClearPath MCP Data into Information with Business Information Server. White Paper
Turning ClearPath MCP Data into Information with Business Information Server White Paper 1 Many Unisys ClearPath MCP Series customers have Enterprise Database Server (DMSII) databases to support a variety
SharePoint Designer 2013 vs Workbox. Prepared by JMS
SharePoint Designer 2013 vs Workbox Prepared by JMS Contents Overview... 3 SharePoint Designer 2013... 4 Introduction... 4 Behind the Scenes... 5 Datapolis Workbox 2013... 7 Introduction... 7 Behind the
SQL Server An Overview
SQL Server An Overview SQL Server Microsoft SQL Server is designed to work effectively in a number of environments: As a two-tier or multi-tier client/server database system As a desktop database system
(ENTD361 is highly recommended before taking this course)
Department of Information Technology ENTD461: Enterprise Development Using VB.NET: Advanced Credit Hours: 3 Length of Course: 8 Weeks Enterprise Development Using VB.NET: Introduction (ENTD361 is highly
CUSTOMER Presentation of SAP Predictive Analytics
SAP Predictive Analytics 2.0 2015-02-09 CUSTOMER Presentation of SAP Predictive Analytics Content 1 SAP Predictive Analytics Overview....3 2 Deployment Configurations....4 3 SAP Predictive Analytics Desktop
SAS 9.4 PC Files Server
SAS 9.4 PC Files Server Installation and Configuration Guide SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2014. SAS 9.4 PC Files Server: Installation
Retrieving Data Using the SQL SELECT Statement. Copyright 2006, Oracle. All rights reserved.
Retrieving Data Using the SQL SELECT Statement Objectives After completing this lesson, you should be able to do the following: List the capabilities of SQL SELECT statements Execute a basic SELECT statement
What's New in SAS Data Management
Paper SAS034-2014 What's New in SAS Data Management Nancy Rausch, SAS Institute Inc., Cary, NC; Mike Frost, SAS Institute Inc., Cary, NC, Mike Ames, SAS Institute Inc., Cary ABSTRACT The latest releases
Product Overview. Dream Report. OCEAN DATA SYSTEMS The Art of Industrial Intelligence. User Friendly & Programming Free Reporting.
Dream Report OCEAN DATA SYSTEMS The Art of Industrial Intelligence User Friendly & Programming Free Reporting. Dream Report for Trihedral s VTScada Dream Report Product Overview Applications Compliance
Visual Basic.NET Certificate Program
Visual Basic.NET Certificate Program OVERVIEW Microsoft's Visual Basic.NET has matured along with the entire Visual Studio.NET development environment. Now, UC Irvine Extension is pleased to offer laboratory-based
ASP.NET Using C# (VS2012)
ASP.NET Using C# (VS2012) This five-day course provides a comprehensive and practical hands-on introduction to developing applications using ASP.NET 4.5 and C#. It includes an introduction to ASP.NET MVC,
Moving Your COBOL Assets to Microsoft.NET: Fujitsu NetCOBOL for.net
Moving Your COBOL Assets to Microsoft.NET: Fujitsu NetCOBOL for.net Fujitsu Software! Hurwitz Report Moving Your COBOL Assets to Microsoft.NET: Fujitsu NetCOBOL for.net Fujitsu Software iii Executive Summary
Advanced Web Application Development using Microsoft ASP.NET
Key Data Course #: 2311A Number of Days: 3 Format: Instructor-Led Certification Exams: Exam 70-305: Developing and Implementing Web Applications with Microsoft Visual Basic.NET and Microsoft Visual Studio.NET
1 File Processing Systems
COMP 378 Database Systems Notes for Chapter 1 of Database System Concepts Introduction A database management system (DBMS) is a collection of data and an integrated set of programs that access that data.
It s not the Yellow Brick Road but the SAS PC FILES SERVER will take you Down the LIBNAME PATH= to Using the 64-Bit Excel Workbooks.
Pharmasug 2014 - paper CC-47 It s not the Yellow Brick Road but the SAS PC FILES SERVER will take you Down the LIBNAME PATH= to Using the 64-Bit Excel Workbooks. ABSTRACT William E Benjamin Jr, Owl Computer
MicroStrategy Course Catalog
MicroStrategy Course Catalog 1 microstrategy.com/education 3 MicroStrategy course matrix 4 MicroStrategy 9 8 MicroStrategy 10 table of contents MicroStrategy course matrix MICROSTRATEGY 9 MICROSTRATEGY
http://msdn.microsoft.com/en-us/library/4w3ex9c2.aspx
ASP.NET Overview.NET Framework 4 ASP.NET is a unified Web development model that includes the services necessary for you to build enterprise-class Web applications with a minimum of coding. ASP.NET is
PharmaSUG2011 - Paper AD11
PharmaSUG2011 - Paper AD11 Let the system do the work! Automate your SAS code execution on UNIX and Windows platforms Niraj J. Pandya, Element Technologies Inc., NJ Vinodh Paida, Impressive Systems Inc.,
Introducing Micro Focus Net Express to Develop and Extend COBOL Applications within.net White Paper
Introducing Micro Focus Net Express to Develop and Extend COBOL Applications within.net White Paper Abstract This paper will introduce the capabilities of Micro Focus Net Express that allows COBOL to operate
Scheduling in SAS 9.4 Second Edition
Scheduling in SAS 9.4 Second Edition SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2015. Scheduling in SAS 9.4, Second Edition. Cary, NC: SAS Institute
Using Pharmacovigilance Reporting System to Generate Ad-hoc Reports
Using Pharmacovigilance Reporting System to Generate Ad-hoc Reports Jeff Cai, Amylin Pharmaceuticals, Inc., San Diego, CA Jay Zhou, Amylin Pharmaceuticals, Inc., San Diego, CA ABSTRACT To supplement Oracle
SAS 9.4 Intelligence Platform
SAS 9.4 Intelligence Platform Application Server Administration Guide SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2013. SAS 9.4 Intelligence Platform:
SAS 9.4 Logging. Configuration and Programming Reference Second Edition. SAS Documentation
SAS 9.4 Logging Configuration and Programming Reference Second Edition SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2014. SAS 9.4 Logging: Configuration
Portals and Hosted Files
12 Portals and Hosted Files This chapter introduces Progress Rollbase Portals, portal pages, portal visitors setup and management, portal access control and login/authentication and recommended guidelines
SAS Add in to MS Office A Tutorial Angela Hall, Zencos Consulting, Cary, NC
Paper CS-053 SAS Add in to MS Office A Tutorial Angela Hall, Zencos Consulting, Cary, NC ABSTRACT Business folks use Excel and have no desire to learn SAS Enterprise Guide? MS PowerPoint presentations
Scheduling in SAS 9.3
Scheduling in SAS 9.3 SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc 2011. Scheduling in SAS 9.3. Cary, NC: SAS Institute Inc. Scheduling in SAS 9.3
Authoring for System Center 2012 Operations Manager
Authoring for System Center 2012 Operations Manager Microsoft Corporation Published: November 1, 2013 Authors Byron Ricks Applies To System Center 2012 Operations Manager System Center 2012 Service Pack
ibolt V3.2 Release Notes
ibolt V3.2 Release Notes Welcome to ibolt V3.2, which has been designed to deliver an easy-touse, flexible, and cost-effective business integration solution. This document highlights the new and enhanced
Complementing Your Web Services Strategy with Verastream Host Integrator
Verastream Complementing Your Web Services Strategy with Verastream Host Integrator Complementing Your Web Services Strategy with Verastream Host Integrator Complementing Your Web Services Strategy with
2311A: Advanced Web Application Development using Microsoft ASP.NET Course 2311A Three days Instructor-led
2311A: Advanced Web Application Development using Microsoft ASP.NET Course 2311A Three days Instructor-led Introduction This three-day, instructor-led course provides students with the knowledge and skills
Catálogo de cursos plataforma elearning Microsoft Imagine Academy: Microsoft SQL Server y Visual Studio
Catálogo de cursos plataforma elearning Microsoft Imagine Academy: Microsoft SQL Server y Visual Studio Academic Visual Studio Library Curso Nombre del curso Idioma 2263 Clinic 2263: Exam Preparation for
EnterpriseLink Benefits
EnterpriseLink Benefits GGY AXIS 5001 Yonge Street Suite 1300 Toronto, ON M2N 6P6 Phone: 416-250-6777 Toll free: 1-877-GGY-AXIS Fax: 416-250-6776 Email: [email protected] Web: www.ggy.com Table of Contents
Programming with the Microsoft.NET Framework Using Microsoft Visual Studio 2005 (VB)
Programming with the Microsoft.NET Framework Using Microsoft Visual Studio 2005 (VB) Course Number: 4995 Length: 5 Day(s) Certification Exam There are no exams associated with this course. Course Overview
RS MDM. Integration Guide. Riversand
RS MDM 2009 Integration Guide This document provides the details about RS MDMCenter integration module and provides details about the overall architecture and principles of integration with the system.
Vendor: Crystal Decisions Product: Crystal Reports and Crystal Enterprise
1 Ability to access the database platforms desired (text, spreadsheet, Oracle, Sybase and other databases, OLAP engines.) Y Y 2 Ability to access relational data base Y Y 3 Ability to access dimensional
Crystal Reports Form Letters Replace database exports and Word mail merges with Crystal's powerful form letter capabilities.
Crystal Reports Form Letters Replace database exports and Word mail merges with Crystal's powerful form letter capabilities. Prerequisites: Fundamental understanding of conditional formatting formulas
Web Services API Developer Guide
Web Services API Developer Guide Contents 2 Contents Web Services API Developer Guide... 3 Quick Start...4 Examples of the Web Service API Implementation... 13 Exporting Warehouse Data... 14 Exporting
Switching from PC SAS to SAS Enterprise Guide Zhengxin (Cindy) Yang, inventiv Health Clinical, Princeton, NJ
PharmaSUG 2014 PO10 Switching from PC SAS to SAS Enterprise Guide Zhengxin (Cindy) Yang, inventiv Health Clinical, Princeton, NJ ABSTRACT As more and more organizations adapt to the SAS Enterprise Guide,
Crystal Converter User Guide
Crystal Converter User Guide Crystal Converter v2.5 Overview The Crystal Converter will take a report that was developed in Crystal Reports 11 or lower and convert the supported features of the report
SAP Data Services 4.X. An Enterprise Information management Solution
SAP Data Services 4.X An Enterprise Information management Solution Table of Contents I. SAP Data Services 4.X... 3 Highlights Training Objectives Audience Pre Requisites Keys to Success Certification
Integrating Mainframe Systems in Microsoft Environments
Integrating Mainframe Systems in Microsoft Environments WHITE PAPER Integrating Mainframe Systems in Microsoft Environments CONTENTS About BizTalk Server and Host Integration Server... 2 The Legacy-Integration
