Copyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.1Copyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.2OracleBIPublisherBestPracticesRupeshVarmaPrincipalProductManagerCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.3Thefollowingisintendedtooutlineourgeneralproductdirection.Itisintendedforinformationpurposesonly,andmaynotbeincorporatedintoanycontract.Itisnotacommitmenttodeliveranymaterial,code,orfunctionality,andshouldnotberelieduponinmakingpurchasingdecision.Thedevelopment,release,andtimingofanyfeaturesorfunctionalitydescribedfororacle'sproductsremainsatthesolediscretionoforacle.Copyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.4ProgramAgendaOracleBIPublisherEnterpriseOverviewReportDesignBestPractices–DataModelingGuidelines–TemplateDesignGuidelines–ReportingGuidelinesQ&ACopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.5OracleBIPublisherEnterpriseOneEnvironment–Author–Generate–DeliverBenefits–Eliminatecomplexity–Simplifyreportdevelopment&maintenance–ReducecostsEliminateMultiple-pointSolutionsReportsChecksLabelsDestinationsInvoicesXML/EFT/EDICopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.6LayoutTemplateTypesOutputFormatsDestinationsEmailPrinterFaxe-CommerceRepositoryDataSourcesLayoutDesignToolsWebServicesOracle,OracleBIEE,OracleBIAppsSQLServerE-BusinessSuite,PeopleSoft,Siebel,JDE,PrimaveraOLAPOracleBIPublisherEnterpriseFromDatatoDocumenttoDelivery•LayoutEditor•MSWord•MSExcel•Adobe•Flex•XSLXSLXMLEDIEFTPDFHTMLExcelPPTCSVFlashRTFInteractiveCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.7ArchitectureBIPublisherCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.8OracleBusinessIntelligencePublisherSeparatedatalogic,layout&translationbenefits–greaterflexibilityandreuse–fewerreportsandbetterreportmaintenance–optimizedataextractionanddocumentgenerationprocessReportArchitectureReportoutputDataLogicLayoutTranslationBIPublisherCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.9OracleBIPublisherScheduler11gBIPublisherWebserverBIPublisherWebserverBIPublisherReportsRepositoryClientClientSchedulerdatabaseJMSResourcesEmailPrinterFaxRepositoryFilesystemFAXQ.PrinterQ.EmailQ.FTPQ.WebDavQ.FileQ.JobQReportQBIPSystemTopicWebserver/JMSProvider(WebLogic,ActiveMQ)Copyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.10ProgramAgendaOracleBIPublisherEnterpriseOverviewReportDesignBestPractices–DataModelingGuidelines–TemplateDesignGuidelinesQ&ACopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.11DataGeneration•DataSourceTypes–File(XML)–SQLQuery–MDXQuery–LDAPQuery–ExcelSpreadsheet–HTTP(XMLFeed)–WebService–OracleBIAnalysisDataSourcesCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.12DataGenerationJDBCVsJNDI(SQLType)BothtypesofconnectionusethesameJDBCdriverWithJNDIyoucantakeadvantageofconnectionpooling–BetterperformanceConnectionalreadyestablishedtothesourceBestpracticeforreportswithmanyparameterswithSQLtypeLOVsattachedtothem–BetterRDBMSresourcemanagementConnectionTypes21WebLogicServerBIPublisherCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.13DataGenerationEnableforlargereports–Slowerperformance,butpreventsout-of-memoryerrors–UsewithscheduledreportsScalableModeCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.14DataModelDesignOptimizedataextractionSimplifylayoutdesignforreportdevelopersReducedocumentgenerationtimeObjectivesCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.15DataModelDesignLeverageback-endsystemresources(whenpossible)–Joindata–Filter&groupdata–Performexpensivecalculations&datatransformations–SortdataConsidergoingagainstBIServerinsteadofextractingdatadirectlyfromthesourcesystemsUseBIServerLogicalSQLinsteadofAnswers/AnalysisDataExtractionSelectt.OFFICE_DSCasOfficesum(f.REVENUE)as“SalesSumFromBISAMPLE.SAMP_REVENUE_F“fBISAMPLE.SAMP_OFFICES_D“tWheret.OFFICE_KEY=f.OFFICE_KEYgroupbyt.OFFICE_DSC20Vs20,000recordsCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.16DataModelDesignParameters&LOVs–CacheLOVSforbetterperformance–ForlargeLOVs,passNULLtotheparameterwhenusersselectAll&modifyWHEREclauseinDataSetquerytousetheNVLfunction.Forexample:“Whereorder_id=nvl(:p_ordid,order_id)”DataExtractionCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.17DataModelDesignEventtriggersBeforeDataTriggers–GeneratedynamicSQL–PopulateTEMPtables–SetusercontextAfterDataTriggers–Insertrowstoatargettable–Sendnotifications–CleanordeleteTEMPtablesDataExtractionSelectEMPLOYEE_ID,DEPARTMENT_ID,FIRST_NAME,LAST_NAME,EMAIL,PHONE_NUMBER,HIRE_DATE,JOB_ID,SALARYfromemployeeswhere&p_where_clauseCopyright©2012,Oracleand/oritsaffiliates.Allrightsreserved.18DataModelDesignStructuredata–tomatchhowdataisdisplayedinthereportUseshortXMLtagnames–theyreducethesizeofXMLdatafileUsedisplaynames–tosimplifytemplatedesignCreateglobal&group-levelaggregatefunctions–forbestperformance,createthemindatamodelinsteadofreportlayoutPre-sortdataNote:Groupingdataindatamodelautomaticallysortsdatabythegroupingeleme