You are on page 1of 29

Developing Applications with the SAP .Net PDK and .

Net Connector
Matt Schababerle Senior Architect Lenny Terris Senior Consultant

Learning Points
Understand the capabilities of the .Net PDK and .Net Connector Learn how to leverage SAP and Microsoft tools in an SOA architecture Lessons learned using the .Net Connector and .Net PDK

Agenda
SAP Microsoft Interoperability Overview .Net PDK Architecture & Features .Net Connector Architecture & Features Demonstration Scenario Demonstration Lessons Learned

SAP Microsoft Interoperability Overview

SAP / Microsoft Interoperability History


SAP and Microsoft have been integration partners for over 10 years, starting
with the first release of R/3 on Windows NT in 1994. The partnership has deepened over the years as Microsoft / SAP usage has increased.

Over half of all SAP installations, approximately 58,000 have occurred on the
Windows platform One quarter of all SAP installations occur on MS SQL Server Microsoft has been running SAP R/3 as its ERP system since 1995 and has also implemented BW, APO, GTS, and SCEM SAP Development staff is co-located with SQL development team in Redmond

SAP / Microsoft Interoperability Timeline


Over time, SAP has increasingly recognized the need for customers to integrate
their Microsoft applications into their SAP environment. April 1994 First R/3 release for Windows NT August 1995 SQL Server Support.

January 1997 Integration with MS Exchange


October 1997 DCOM Support Feb 2000 April 2003 May 2004 April 2005 mySAP.com / Windows 2000 Launch SAP Support for Windows Server 2003 SAP Netweaver / Microsoft .Net Interoperability announcement SAP and Microsoft announce Mendocino Initiative

SAP Netweaver / Microsoft Interoperability Overview


Recognizing that its customers have made investments in other technology solutions, SAP has chosen to partner with IBM and Microsoft to develop interoperability solutions. Microsoft and SAP have similar applications and interoperability options at every level of the Netweaver stack. SAP NetWeaver
Composite Application Framework PEOPLE INTEGRATION Multichannel access Portal Collaboration Lifecycle Management

INFORMATION INTEGRATION Bus. Intelligence Knowledge Mgmt Master Data Mgmt PROCESS INTEGRATION Integration Business Broker Process Mgmt APPLICATION PLATFORM J2EE ABAP DB and OS Abstraction

Why Use the .Net Toolkits ?


SAP Customers have heavily invested in Windows-based infrastructure and training for their personnel Many customers have developed custom applications, sometimes mission critical, that can benefit from integration with SAP applications These customers want to leverage their SAP and .Net Investments by integrating the two environments

Combining .Net and SAP application development allows customers to combine the best of both worlds

SAP Netweaver IT Practices & Scenarios

.Net PDK & Connector

.Net PDK Architecture & Features

.Net PDK Architecture


.Net Components are developed in Visual Studio 2003 using the SAP .Net PDK Add-in and deployed to SAP Netweaver Portal

Runtime

Portal Runtime for .Net enables .Net components to communicate with other Portal components and external systems

.Net PDK Features


Fully integrated with Visual Studio 2003
Hot deploy & preview components directly in the portal from Visual Studio Debug components on local machine Supports Team development on single shared portal

Help Files integrated into Visual Studio Help


Project template for portal applications in Visual Studio Portal Component and System Templates SAP .Net UI controls inherit portal look & feel (Expanded in version 2.0) Design portal pages directly in Visual Studio (New in Version 2.0) Portal Style Designer extends portal styles to non-SAP UI components (New in Version 2.0) Object Based Navigation features supported (New in Version 2.0) Multiple options for deploying .Net Applications to the portal (Enhanced in Version 2.0)

.Net PDK Installation & Configuration


Installation
Use Setup Wizard to install portal add-in for Visual Studio Install Portal runtime for .Net Install Java - .Net interoperability components using SDM

Configuration
Assign Logon Account to Portal Runtime for .Net Service Define Server in Microsoft Management Console (MMC) Configure .Net Portal Services in Enterprise Portal
See OSS Central Installation Note 800842 for installation details OSS Notes 846408 (v1.0 Patch 3) and 898153 (v2.0) have installation validation tools attached to the notes as zip files

.Net PDK Visual Studio Interface

.Net Connector Architecture & Features

.Net Connector High Level Architecture

.Net Connector Features


The .Net Connector and Proxy Wizard allow you to:
Write .NET Windows and Web form applications that access SAP remote enabled functions (RFC) Create client applications for the SAP server using either RFCs or HTTP/SOAP/XML (outside -in) Develop RFC server applications that run in a .NET environment and can be implemented from within the SAP System (inside-out)

Development Can take place entirely within Visual Studio


Use the Proxy Wizard integrated in Microsoft Visual Studio .NET to generate proxy objects that are easy to use Use any common programming language that has full access to the Microsoft .NET Framework Use IntelliSense help in Microsoft Visual Studio .NET through strongly typed data models and method signatures Bind SAP tables and structures to Windows and Web form controls (DataBinding) Use security authentication methods such as Single Sign -on, Kerberos, and Microsoft Passport The .Net Connector is also packages as the Microsoft Biztalk SAP Adapter. This provides a smooth development path for customers implementing Biztalk with previous .Net Connector experience

Installation & Configuration SAP Connector


Prerequisites:
Microsoft Visual Studio .NET 2003 Java Runtime Environment (JRE) 1.3 or later Required for proxy generation Not needed once proxies have been generated If you are using a Java VM other than the Sun Java VM version 1.3 (including newer Sun Java VM versions) you must have a registry entry pointing to your Java VM like the following: [HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft] [HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment] CurrentVersion=1.3 [HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.3] JavaHome=C:\\Program Files\\IBM\\Java13\\jre

Installation Packages:
SAP Connector for Microsoft .NET 1.03 Installation for Visual Studio 2003 Full version installation for development computers with Visual Studio .Net 2003 SAP Connector for Microsoft .NET 1.03 Runtime Installation Runtime installation for deployment computers

Installation & Configuration BizTalk Adapter for mySAP v2.0


Prerequisites:
Microsoft Visual Studio .NET 2005 Microsoft BizTalk Server 2006 Including all BTS 2006 prerequisites SAP .NET Connector version 1.0.3 Newer versions of the SAP .NET Connector have been released but at the time of this presentation, the Adapter is dependent on this specific version of the SAP .NET Connector

Installation Packages:
Microsoft BizTalk Adapter v2.0 for mySAP Business Suite Microsoft BizTalk Adapter v2.0 for mySAP Business Suite Service Pack CTP

Configuration Create a Send Port in BizTalk that uses the SAP Adapter Provide SAP Connection information: such as Client, System ID, etc. Use XMLTransmit and XMLReceive Pipelines

Demonstration Scenario

Scenario Background:
A Hitachi Consulting customer was interested in developing a proof of concept to demonstrate the benefits of a custom user interface for casual SAP users. The scope of the project included: Developing a user interface for purchase requisition approval and goods receipts Deploying the solution to the customers SharePoint portal environment Developing an alerting mechanism to notify users of purchase requisitions awaiting their approval

The solution was developed using Visual Studio 2003, SharePoint Portal Server, Biztalk Server 2006 with the SAP .Net Connector, and SAP R/3 Enterprise 4.7 User Interface developed in Visual Studio and deployed to SharePoint environment SAP Integration developed using Biztalk Orchestrations and SAP .Net connector to communicate with SAP BAPIs Alerting mechanism developed using Windows Workflow Foundation

Scenario Background Continued:


After delivering the proof of concept to the customer, Hitachi Consulting redeployed the user interface from SharePoint to Enterprise Portal for demonstration purposes using the SAP .Net PDK. This allows a side by side comparison of the two user interfaces supporting the same process. It also demonstrates the flexibility and reusability of components developed in a Services Oriented Architecture framework. Todays demonstration will have 3 parts: Demonstrate SharePoint Portal Interface Demonstrate Enterprise Portal Interface Demonstrate process for developing and deploying components to the Enterprise Portal environment.

Solution Architecture 1
Users Purchase Requisition Approver Purchase Delivery Receiver

Presentation layer, business logic, and data persistence are separated. Process integration is accomplished using MS Biztalk Orchestrations and Windows Workflow foundation. Communication with SAP via RFCs or Web Services facilitated by SAP .Net Connector

Operational Mgmt

Presentation Layer Windows SharePoint Portal Server


Purch . Req . List Webpart Purch . Req . Detail Webpart Purch . Order List Webpart Purch . Order Detail Webpart

Security

Exception Management

Authentication

Configuration

Authorization

Service Layer
Notification

ASP .NET Application (Web Services ) BizTalk Server 2006

BizTalk Enterprise SSO

BizTalk Adapter for SOAP

GetPurchReqs

ApprovePurchReq

GetPODetail

GetPurchReqDet

GetPOs Orchestration

POGoodsReceipt

BizTalk Adapter for mySAP

Services Oriented Architecture Solution


Data Layer

SAP Interface (SAP .NET Connector , SAP Application Server )

Common Data Model SAP R /3 (Oracle or SQL )

Solution Architecture 2
Users Purchase Requisition Approver Purchase Delivery Receiver

SAP Enterprise Portal is substituted for SharePoint Portal executes .net applications via Portal Runtime for .Net Separation of presentation layer from business logic, combined with .Net interoperability tools, allows substitution of components without major redevelopment effort.

Operational Mgmt

Presentation Layer SAP Purch Req iView Enterprise . Portal Server .

List .

Purch Req Detail iView . .

Purch Order List iView .

Purch Order Detail iView

Security

Exception Management

Portal Runtime for Microsoft .Net

Authentication

Configuration

Authorization

Service Layer
Notification

ASP .NET Application (Web Services ) BizTalk Server 2006

BizTalk Enterprise SSO

BizTalk Adapter for SOAP

GetPurchReqs

ApprovePurchReq

GetPODetail

GetPurchReqDet

GetPOs Orchestration

POGoodsReceipt

BizTalk Adapter for mySAP

Services Oriented Architecture Solution


Data Layer

SAP Interface (SAP .NET Connector , SAP Application Server )

Common Data Model SAP R /3 (Oracle or SQL )

Demonstration

Key Learnings
The .Net PDK is very simple to install and well integrated with Visual Studio. Very small learning curve for experienced .Net Developers Deployment of .net components to the portal is smooth and reliable .Net developers using the PDK will benefit from training on the Enterprise Portal PCD and content administration. Installation is the trickiest part of using the SAP Adapter, once configured using the SAP Adapter is relatively easy
The SAP Adapter enables the generation of schemas based on RFCs These schemas can then be used by BizTalk to generate messages to be sent to and received from SAP This is not conducive to calls that require a commit work to be submitted after successful submission such as BAPI_GOODSMVT_CREATE It is possible to manipulate the transaction through message headers within a BizTalk Orchestration

By default, each call to SAP is contained within its own transaction


The SAP Adapter is a little finicky and can sometimes produce errors that are not very helpful

Q&A

Matt Schababerle
Senior Architect

Hitachi Consulting
www.hitachiconsulting.com Direct: 713.458.5029 Mobile: 281.772.3604 mschababerle@hitachiconsulting.com Inspiring your next success!

Additional Resources
SAP Developer Network https://www.sdn.sap.com/irj/sdn/developerareas/dotnet SAP Marketplace https://service.sap.com/netweaver (requires login)
PDK Menu Path: SAP Netweaver ->Netweaver in detail -> People Integration -> Portal -> Portal In Detail .Net Connector menu Path: SAP Netweaver ->Netweaver in detail -> Application Platform -> Connectivity -> Connectors

Microsoft-SAP http://www.microsoft-sap.com/technology.aspx

Session Code: 1608

You might also like