Welcome to the Technical
Stream
Extend Your BI Toolkit with the SAP SDKs
John Weikert
No part of this document may be reproduced in any form without the written permission of Sulis Systems Ltd. All trademarks and registered trademarks are the property of their respective owners
Agenda
• Sulis Systems
• Build a virtual SDK Application • Useful Resources
• BI 4.1 SDKs
Sulis Systems
• Consultancy, Training and Development • BusinessObjects Specialists since 1997
• Created first SDK courses for Business Objects SA • SDK Experience
– BusinessObjects Documenter – Universe Documenter
– BI Warehouse - Auditing solution – Webi Documenter
Why Use Software Development Kits?
• Software customisation
• Fill functional gaps
BI Product Range
• 1997
– BusinessObjects, Designer, Supervisor – PC Based, client server
• Now
– Desktop Intelligence, Web Intelligence, Universe Designer, Information Design Tool, CMC, InfoView, BI Launch Pad, Crystal Reports, Xcelsius etc, etc
1. Define Your Application Parameters
• Decide on the functional requirement
• Which product to utilise? - Webi, Deski, BOE?
• Company Platform standards – Windows/Linux etc • Programming Standards - .Net, Java
• Firewall issues?
• Deployment issues – No. users, remote or local • User interface – browser or desktop?
2. Which SDK?
• BO Enterprise SDK – Java/.Net
• Report Engine - Java/.Net – Webi Documents • Web Services – Java/.Net – SOAP over HTTP • Desktop Intelligence - COM
• Universe Designer - COM • Data Access – Java
Which SDK?
Copyright © 2011 Sulis Systems Limited http://devlibrary.businessobjects.com/Busin essObjectsXI3/en/diagrams/ bosdks_overview_121_en.pdf SDN CommunityChoosing the Right Business Objects SDK for Your Needs Robert Horne, SAP
3. Accessing Repository Data
• Development is likely to involve retrieving data from CMS • CMS Data stored in System Database
• Not relational – need to use Query Language or URI Path • Data exposed as three main virtual “Tables”
– InfoObjects – Folders and documents etc
– SystemObjects – Users, Groups, roles, Servers etc
– AppObjects – Universe Folders, Universes, Connections etc • Using Query Language –
– String queryString = “Select * from CI_InfoObjects where SI_ID Between 700 and 800”
• Using URI Path –
Some Key Properties
• SI_ID – Systems unique identifier • SI_CUID – Cluster unique identifier
• SI_KIND – Type of object, FullClient, Webi etc • SI_NAME – Object name
• SI_INSTANCE – true, false • SI_PARENT_FOLDER – SI_ID
BO SQL Limitations
• Some of the SQL limitations include: • Cannot Join Tables
• No Sub-queries • No Distinct
• No Aliases
• No Group By or Having • Aggregates – Only Count • Order of columns
• 1,000 Records by default- use Top • Order By is OK
4. Java Code - Login & Retrieve Objects
• Create Session Manager
– ISessionMgr sm = CrystalEnterprise.getSessionMgr();
• Create User Session
– IEnterpriseSession enterpriseSession = sm.logon(username, password, cms, authentication);
• Get Infostore service
– IInfoStore infoStore = (IInfoStore) enterpriseSession.getService("InfoStore");
• Create objects collection based on query
– IInfoObjects infos = infoStore.query(queryString);
• Get the first object in the collection
– IInfoObject info = (IInfoObject) infos.get(0);
• Get the objects Kind
Useful Resources
• Developer Network – www.SCN.SAP.com – Developer Center • SDK Developer Guides API Reference Object ModelsWeb Intelligence REBean BI 4.0
• Deprecated • Warning: This method is no longer functional from SAP BI 4.0 onwards. • REBean Applications must be redevelopedBI 4.1 SDKs - RESTful Web Services
• Web Intelligence RESTful Web Services SDK
– BI 4.0 Limited functionality viewing and refreshing – Fuller SDK from BI 4.0 SP6 onwards
• Used from multiple development platforms
– Data called from Web Service – Returned as XML or JSON
• BI Platform RESTful Web Service
BI 4.1 Java, .Net etc
• BI Platform SDK – Java, .Net • Web Services – Java, .Net
• Crystal Reports – RAS – Java, .Net • Crystal Reports Viewers
• Crystal Reports for Visual Studio • Webi Report Engine - Java
Semantic Layer BI 4.1
• Universe Design Tool (unv) – Com still supported • Semantic Layer SDK (unx) 4.0 SP4+ – Java
Case 1 – Document Backup/Restore
• Requirement
– Backup/restore documents and universes – Fast
– Multiple backup increments – Scheduled
BI Content Assistant
• Backup to industry standard Database • Public and personal documents
• Uses BOE Scheduling
• Unlimited backup points
• View folders/documents/universes at any point • Universe to interrogate backups
• Move documents between clusters • Medical Appliance Company
– 3 clusters America, Australia, Europe
– 3000+ reporting customers generating over 2000 reports daily. – Backup to single BICA database
Case 2 - Business Intelligence?
Finance Data Operational Data
Classic BusinessObjects V5/6
• Deployment data held in BO Repository
– Details of universes, documents, users, schedules etc – Relational Database
– Access Via SQL and universe
BO Repository
System Database File Store XI “Repository”
BOE XIR3/BI 4
Audit DatabaseCase 2 – Data Extraction from CMS
• Requirement
– Extract data from CMS Repository (security database) – Store in XML or Database format
– Expand property bags automatically – Schedule extracts
QBXcell
• Extracts data to industry standard Database • Any BO SQL query can be used
– Data on users, connections, documents, servers etc
• Automatically creates table definitions on the fly • Uses BOE Scheduling – build history
• Also extracts security, rights and limits info. • BI for your BI!
Summary
• Wide Range of SDKs to choose from • Powerful capabilities
• Help available online • Enjoy!
Questions?
Contact: John Weikert
Email: [email protected]
Phone: +44 (0) 1225 832105 Mobile: +44 (0) 7885 210230