Professional Documents
Culture Documents
Bill Faison
bfaison@microsoft.com
Agenda
• Terminology
SAP BW – SAP data warehousing solution
Info Object – Building blocks of BW. This is where you
define your key figures and characteristics. It is also
where you store all of your master data
ODS – Operational Data Store. This is where you store
you detailed level records in BW.
RFC – Remote Function Call. This is a call to a function
module in a system different from the caller’s.
Windows Service - Formerly known as NT services,
enable you to create long-running executable
applications that run in their own Windows sessions.
These services can be automatically started when the
computer boots, can be paused and restarted, and do
not show any user interface.
What is the SAP .NET Connector
• Terminology
SQLXML – Enables developers to bridge the gap
between Extensible Markup Language (XML) and
relational data. You can create XML views of your
existing relational data and work with it as if it were an
XML file for example.
SQLXML BULK LOAD – XML Bulk Load is a stand-alone
COM object that allows you to load XML data into
Microsoft SQL Server tables. Bulk load utility provides
higher performance when you need to insert large
amounts of XML data.
What is the SAP .NET Connector
• Technologies used
SAP BW 3.0B
SAP .NET Connector 1.0
Window 2003
SQL 2000 SP3
SQL XML 3.0
Microsoft Visual Studio .NET
Data Push Design Overview
SAP ABAP
Program
Call RFC with
destination
Convert
Income
table to External SQL Server
XML
SM 59
Destination
information table
SQL XML
XML BULK
Schema
INSERT
Windows 2003
SAP BW
Server
Layer
Layer
Data Push Design Overview
• Process Flow
Submit a ABAP program to run per the selection criteria
entered
ABAP program executes a RFC that will either create the
tables on the non-SAP database, or push the SAP data
from the query that was run in the ABAP
RFC calls the Windows service, which will either call a
stored procedure to create tables, or push data into the
tables it had just created using SQLXML BULK INSERT
Pass back any success or failure message to the ABAP
program
Development Overview
• Project Overview
• Metadata Definition
• RFC Set Up
• ABAP
Query over BW data
RFC call
• Windows Service Overview
• SQLXML BULK INSERT
Project Overview
ZBPUR_COMPANY_TYPE
Short text:Structure of Company Table Interface
Structure
Field structure
Number of fields: 2
Sum of field lengths: 44
Field structure
Number of fields: 2
Sum of field lengths: 100
Gateway Options
Gateway Host - < Gateway Host Name>
Gateway Service - < Gateway Service Name>
ENDFUNCTION.
Windows Service Overview
objBL.ConnectionString =
"Provider=SQLOLEDB.1;Data Source=" + ServerName + ";Initial
Catalog=" + DataBaseName + "; Trusted_Connection=yes";
// Write any error to a error file
objBL.ErrorLogFile = appPath + "error.xml";
SQLXML BULK INSERT
BULK INSERT Setting
objBL.SGUseID = true;
// XML Bulk Load assigns the values that are specified in the source
file to the identity column
objBL.KeepIdentity = true;
// XML Bulk Load creates temporary files, one for each table that is
identified in the mapping schema
//objBL.Transaction = true;
//source data is not an XML fragment
objBL.XMLFragment = false;
// appPath is passed in from a .ini file
objBL.TempFilePath = appPath;
// Execute the BL
// xsdfile is the predefined XML schema
// dataStream is the data from BW
objBL.Execute(xsdfile, dataStream);
Lesson Learned
• Performance Results
• Phase 2 Changes
• Lagniappe
• Useful Sites
Performance Results
• 15 tables total
10 master data tables
4 transactional tables
1 audit table
• 1 year worth of data
• Loaded 2K records per second
• Total run time is about 20 minutes
Phase 2 Changes
• http://service.sap.com/CONNECTORS
Requires a OSS log on
• http://www.microsoft-sap.com/
• http://www.sapgenie.com/interfaces/netconnector.htm
Thank you for attending!
Please remember to complete
and return your evaluation form
following this session.