Welcome to the Technical Stream
Extend Your BI Toolkit with the SAP SDKs John Weikert November 26 th 2013 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 Two real SDK Applications
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 Create administration tools
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 Desktop, web, mobile, tablet
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? Select your SDK(s)
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 Crystal Reports COM, Java,.Net
Which SDK? SDN Community Choosing the Right Business Objects SDK for Your Needs Robert Horne, SAP http://devlibrary.businessobjects.com/busin essobjectsxi3/en/diagrams/ bosdks_overview_121_en.pdf Copyright 2011 Sulis Systems Limited
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 String querystring = "path://infoobjects/**/[si_id BETWEEN 700 AND 800]";
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 Like %, _, [1-2], ^A are 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 String dockind=info.getkind();
Useful Resources Developer Network www.scn.sap.com Developer Center SDK Developer Guides API Reference Object Models
Object Model in More Detail
Web Intelligence REBean XIR3
Web Intelligence REBean BI 4.0 Deprecated Warning: This method is no longer functional from SAP BI 4.0 onwards. REBean Applications must be redeveloped
BI 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 Crystal Reports 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
Example SDK Applications
Case 1 Document Backup/Restore Requirement Backup/restore documents and universes Fast Multiple backup increments Scheduled Easy to use
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 Twice daily!
BICA Interface
Case 2 - Business Intelligence? Finance Data Operational Data BO XIR3/BI4
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 Managero.unv
BOE XIR3/BI 4 Audit Database System Database File Store XI Repository
Case 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!
QBXcell Interface
Summary Wide Range of SDKs to choose from Powerful capabilities Help available online Enjoy!
Questions? Contact: John Weikert Email: JohnW@SulisSystems.co.uk Phone: +44 (0) 1225 832105 Mobile: +44 (0) 7885 210230