<Insert Picture Here> פורום BI 21.5.2013
מה בתוכנית? בוריס דהב Embedded BI Column Level,ROW LEVEL SECURITY,VPD Application Role,security טובית לייבה הפסקה OBIEE באקסליבריס נפתלי ליברמן - לימור פלדל Actionable BI 2
3 עכשיו נעבור לפירסומות
4
<Insert Picture Here> Embedded Analytics בוריס דהב Oracle
מבוא רוצים iframes מה עשיתי? html יצרתי קובץ בסיסי ובתוכו :iframe <html> <body> <iframe width=1000 height=730 src="http://bdahab-il:9704/analytics/saw.dll?dashboard&portalpath=%2fshared%2fsample Lite%2F_portal%2FMobile&Page=Product Details&NQUSER=weblogic&NQPASSWORD=weblogic123&syndicate=Siebel"></iframe> </html> מסמך התייחסות ראשוני: http://obieeil.blogspot.co.il/2012/07/obiee-11-iframe-unexpected-problem.html 6
מבוא רוצים iframes מה עשיתי? html יצרתי קובץ בסיסי ובתוכו :iframe <html> <body> <iframe width=1000 height=730 src="http://bdahab-il:9704/analytics/saw.dll?dashboard&portalpath=%2fshared%2fsample Lite%2F_portal%2FMobile&Page=Product Details&NQUSER=weblogic&NQPASSWORD=weblogic123&syndicate=Siebel"></iframe> </html> מה קיבלתי? מסמך התייחסות ראשוני: http://obieeil.blogspot.co.il/2012/07/obiee-11-iframe-unexpected-problem.html 7
מבוא איך לאפשר iframes תיקון בinstanceconfig.xml : נמצא ב: MWHOME\instances\instance1\config\OracleBIPresentationServicesComponent\coreapplication_obips1 מוסיפים שורה תחת :Security <Security> <!--This Configuration setting is managed by Oracle Enterprise Manager Fusion Middleware Control--> <ClientSessionExpireMinutes>210</ClientSessionExpireMinutes> <InIFrameRenderingMode>allow</InIFrameRenderingMode> </Security> prohibit allow samedomainonly ערכים אפשריים: אסור, מותר ברירת מחדל רק אם הדף המכיל באותו.allow עדיף על.domain 8
מבוא איך לאפשר iframes תיקון בweb.xml : נמצא ב: MWHOME\oracle_BI1\bifoundation\web\app\WEB-INF או MWHOME\oracle_BI1\bifoundation\web\appv2\WEB-INF <context-param> <param-name>oracle.adf.view.rich.security.frame_busting</param-name> <param-value>never</param-value> </context-param> מוסיפים: מתייחס לנושא של Framebusting ואזהרות לגביו. ערכים אפשריים: never always differentdomain frame מ- domain אחר ללא אזהרות תמיד מזהיר מזהיר רק כשה 9
מבוא איך לאפשר iframes עושיתי reset לשרת. ומה קיבלתי? פתרון ניקוי cache בדפדפן. פתרון עדיף, לקנפג את השרת מראש כך. למה זו בעיה מאד רצינית? 10
איך להשיג URL בזול? Bookmark Link נותן את המסלול לדף הנוכחי: http://bdahab-il:9704/analytics/saw.dll?dashboard &PortalPath=%2Fshared%2FSample%20Lite%2F_portal%2FQuickStart &Page=Product%20Details &PageIdentifier=pp523ed1snrnjteh&BookmarkState=vo87qhu2o9rn7cbl13hc5lctnm Prompted Link נותן את כל הפרמטרים: http://bdahab-il:9704/analytics/saw.dll?dashboard &PortalPath=%2Fshared%2FSample%20Lite%2F_portal%2FQuickStart &Page=Product%20Details &Action=Navigate &col1=%22more%20time%20objects%22.%22day%20of%20year%22 &op1=bet &val1=%221%22+%22365%22 &psa1=%22sample%20sales%20lite%22 11
,URL משמעות הפרמטרים נוסחת העמודה שבפרומפט. COL בדוגמא שלנו: Year "More Time Objects"."Day Of שהפך ל: %22More%20Time%20Objects%22.%22Day%20Of%20Year%22 האופרטור המופעל. ראו דף הבא. OP ערך או ערכי הפרמטר. במקרה שלנו שני ערכים: 1 ו 365 שמוצגים כך: VAL, שזה כמובן: "1"+"365" %221%22+%22365%22 Area.subject לא חובה PSA ניתן גם לוותר על OP אם זה שוויון 12
op ערכי,URL eq Equal to or in = neq Not equal to or not in <>, not in lt Less than < gt Greater than > ge Greater than or equal to >= le Less than or equal to. < = bwith Begins with Begins with ewith Ends with Ends with cany Contains any (of the values in &valx) Contain any call Contains all (of the values in &valx) Contain all like You need to type %25 in place of the usual % wildcard. Like top &valx contains 1+n, where n is the number of top items to display. Top n bottom &valx contains 1+n, where n is the number of bottom items to display. Bottom n bet Between (&valx must have two values). Between null Is null (&valx must be 0 or omitted) Is Null nnul Is not null (&valx must be 0 or omitted) Is Not Null 13
- דוגמא Prompted LINK Action=Navigate &col1=products.color &val1="armory"+"clear" &col2=periods."month" &op2=gt &val2="05/01/1998%2012:00:00%20am" col, op, val מתקדם בצירופים של עם מספור עולה. P1- P0 השיטה על עדיף זה שימוש השניה, המתועדת יותר של ושלשות של P7... המוגבלת ל 6 פרמטרים. P5,P4 14
PortalPath& GO נראה שני סוגי URL עיקריים: PortalPath שכבר ראינו http://bdahab-il:9704/analytics/saw.dll?dashboard &PortalPath=%2Fshared%2FSample%20Lite%2F_portal%2FQuickStart &Page=Product%20Details Go המשמש לגישה לדוחות בודדים http://bdahab-il:9704/analytics/saw.dll?go&path=/shared/sample Lite/Monthly Trending 15
,URL פרמטרים מעניינים נוספים שם המשתמש NQUSER סיסמת המשתמש NQPASSWORD שפת הממשק ( LANG=IW או )LANG=EN LANG פעולה לביצוע Print( )Navigate, Export, ACTION )... פורמט תצוגה,XML( PDF,HTML FORMAT דוגמאות: bdahab-il:9704/analytics/saw.dll?go&path=/shared/sample Lite/Monthly Trending&Action=Extract&Format=PDF http://bdahab-il:9704/analytics/saw.dll?go&path=/shared/sample%20lite/monthly%20trending&action=print http://bdahab-il:9704/analytics/saw.dll?go&path=/shared/sample%20lite/monthly%20trending&action=scroll&p5=- 1&ViewID=o:go~r:report~v:compoundView!1~v:tableView!1 16
,URL פרמטרים נוספים אלו אופציות תופענה בתחתים GO URL Optional Report Links Modify m Download d Printer Friendly - f Refresh - r דוגמא: Go&Options=md לפירוט ראו :Integrators Guide http://docs.oracle.com/cd/e23943_01/bi.1111/e16364/toc.htm 17
18 איך להסתיר את המסגרת? מזה
19 איך להסתיר את המסגרת? לזה
איך להסתיר את המסגרת? פרמטר נוסף &syndicate=siebel אורקל נוטה לפרסם אופציה חלופית של PortalPages שלדעתי פחות טובה: http://obieeil.blogspot.co.il/2013/03/embeding-obiee-portalpages-vs.html מה עושים תוך כדי פיתוח כשרוצים לחזור למסך מלא? Logoof וlogin חזרה.! אבל אין sign out משתמשים בURL : http://bdahab-il:9704/analytics/saw.dll?logoff 20
האם שימוש בNQPASSWORD NQUSER & בURL זה ממש מאובטח? חלופות )http://www.oracle.com/technetwork/middleware/bi/bi-11gr1certmatrix-ps6-1928219.xls( SSO דוגמא בעמוד הבא. בעיה נסתרת. Form URL חשוף עם סיסמאות זמניות. עוגיות Web Services 21
Form באמצעות OBI GO URL <html> <form action="http://bdahab-il:9704/analytics/saw.dll?" method="post"> <input type="hidden" name="cmd" value="answers"> <input type="hidden" name="nquser" value="weblogic"> <input type="hidden" name="nqpassword" value="weblogic123"> <input type="hidden" name="path" value="/shared/sample Lite/Monthly Trending"> <input type="submit" value= Monthly Trending"> </form> </html> 22
Web Services 23
מהו? web service.xml הם שרותים הניתנים להפעלה מרחוק באמצעות שפה דמויית Web services השרות הניתן על ידי כל web Service מתואר על ידי פורמט XML סטנדרטי הנקרא.(WSDL) Web Services Description Language )SOAP( המשתמש שולח בקשות שרות באמצעות Simple Object Access Protocol ספק ה- Service Web מבצע את השרות ומחזיר תשובה בפורמט.XML ספק ה- Service Web עשוי לחזור בדרישות 24
לOBIEE יש מה להציע? web services יש 2 סוגי 11g ב OBIEE )באמצעות )Session ID Session Based Web Services נקראים כך כי מחייבים פתחית Session מול OBIEE Web Services for SOA חדשים ב 11g http://localhost:9704/analytics/saw.dll?wsdl גישה באמצעות :Integrators Guide http://docs.oracle.com/cd/e23943_01/bi.1111/e16364/toc.htm לפירוט ראו 25
Session Based Web Services SAWSessionService Login, Logoff, Impersonate, authentication functions HtmlViewService obtain HTML to render BI dashboards/reports ibotservice initiate ibots MetadataService Retrieve info on Subject Areas, Tables, Columns ReplicationService Replication between Presentation Catalogues ReportEditingService Add filter and other conditions to BI requests SecurityService Identify BI EE accounts and privileges WebCatalogService Browsing and Managing the Presentation Catalogue XMLViewService Retrieve Oracle BI query results in XML format 26
OBI SOAP API XML Rendering Has functions to issue either SQL or XML queries Data is the returned as vanilla XML for custom formatting. FetchNext for large result sets. HTML rendering Pages are constructed in sections Page objects as logical entities on the Analytics server. Client renders links to various components. Headers contain the JavaScript includes for page functionality. Report HTML contains links to content within standard IFRAME tags. Common Body HTML hidden fields etc to support interactive functionality. Report Editing - ReportEditingService Change report parameters Retrieve SQL for report. (Returns the logical SQL) Execute ibots - ibotservice A single function that takes a path and a sessionid and executes the nominated job. Security - SecurityService Security functions to access and manage: - Privileges - Permissions - ACL s - User Groups (Web Catalog) Session Management: SAWSessionService - Logon/Logoff - Session tracking and management - track using either cookies or SessionID s - keepalive method for extended session life - Impersonation (for Customer facing analysis) Catalogue management: WebCatalogService Copy/Move catalogue items: Filters, Prompts, Reports, Dashboards Create Links Read /Set Attributes. Traverse Catalogue Tree Write to Catalogue Metadata Discovery MetadataService List and describe the Subject Areas available to the user Describe any column: 27
28 דוגמא ל HTMLViewService
This is what you can get back using the HTMLViewService. You need a SessionID (from the SAWSessionService, and a ReportParams object (an array containing the report path etc. Then you can request a Page object and it s constituent elements (the Header, the Common Body HTML and add the report to it) When finally assembled and displayed the page is fully interactive see the pivot table drop down and drillable. דוגמא מקוצרת לחיבור משתמש: static private SAWSessionService m_session = new SAWSessionService ();... String sessionid = m_session.logon(struser,strpwd); 29
Web Services for SOA להבדיל מWSDL קודם, משתמש ב Web Service Inspection Language - WSIL http://localhost:9704/biservices/inspection?wsil מאפשרים לבנות web services על בסיס אובייקטים בקטלוג. ישנם כמה צעדי קינפוג נדרשים לשימוש בהם: הגדרת Credential store לשימוש בהם שינוי ActionFrameworkConfig.xml 30
31 דוגמת שימוש
1 דוגמת קינפוג Web Services for SOA מנסה להפעיל: http://bdahab-il:9704/biservices/inspection?wsil 32
2 דוגמת קינפוג Web Services for SOA ב EM של השרת 33
3 דוגמת קינפוג Web Services for SOA יוצרים KEY חדש תחת oracle.bi.enterprise 34
4 דוגמת קינפוג Web Services for SOA 35
5 דוגמת קינפוג Web Services for SOA צרו קובץ חדש <?xml version="1.0" encoding="utf-8"?> <oracle-webservice-clients> <webservice-client> <port-info> <policy-references> <policy-reference uri="oracle/log_policy" category="management"/> <policy-reference uri="oracle/wss_username_token_client_policy" category="security"/> </policy-references> </port-info> </webservice-client> </oracle-webservice-clients> 36
6 דוגמת קינפוג Web Services for SOA עדכנו קובץ ActionFrameworkConfig.xml באותו מקום )user_projects\domains\bifoundation_domain\config\fmwconfig\biinstances\coreapplication( סביר להניח שרק תוסיפו לקיים. עשו RESET לשרת 37
7 דוגמת קינפוג Web Services for SOA 38
דוגמא מהבית Fusion Applications 39
Accessing BI from Fusion Applications Integration Points Casual User BI Embedded in Apps UI Application Dashboards BI Dashboards Embedded Analytics Analysts & IT BI Accessed from Apps UI New BI Content Creation Reporting Pane Reports & Analytics Work Area Integrated Search BI Composer Answers, Dashboards KPIs & Scorecards BI Publisher 40
Accessing BI from Fusion Applications Integration Points Casual User BI Embedded in Apps UI Application Dashboards BI Dashboards Embedded Analytics Analysts & IT BI Accessed from Apps UI New BI Content Creation Reporting Pane Reports & Analytics Work Area Integrated Search BI Composer Answers, Dashboards KPIs & Scorecards BI Publisher 41
Application Dashboards Mash Up of Reports & Portlets Multiple tabs Configurable Clicking on action icon will provide user with contextual action menu Contextual action menu allows additional application actions or navigation to more BI content 42
BI Dashboards Embed Multi-Page Dashboards with Full Interactivity 43 43
Embedded Analytics in Transaction Pages Contextual, Relevant, Actionable 44 44
Personalization Add, Edit, and Remove Reports and Dashboards Browse the unified BI Catalog and embed any report or dashboard with a few clicks Framework also supports many other types of content supporting Fusion Applications 45 45
Additional Developer Capabilities Programmatic Integration of BI Content Logical SQL BI View Object: BI as a data source for ADF Retrieve BI data into the ADF model via a logical BI SQL statement Bind BI data to an ADF visualization (dozens available) BI & Business Process Integration Leverage BI metrics in BPEL flow branching points, kick off a BI agent from BPEL Kick off Java programs or BPEL processes from a BI report, dashboard or programmatically via a BI agent. 46 46
Accessing BI from Fusion Applications Integration Points Casual User BI Embedded in Apps UI Application Dashboards BI Dashboards Embedded Analytics Analysts & IT BI Accessed from Apps UI New BI Content Creation Reporting Pane Reports & Analytics Work Area Integrated Search BI Composer Answers, Dashboards KPIs & Scorecards BI Publisher 47
Accessing BI from Fusion Applications Reporting Pane One-click access to frequently used reports & dashboards Contextually relevant to current Apps work area Customer configurable content 48 48
Reports and Analytics Work Area Accessing BI from Fusion Applications Browse and view entire BI Catalog Access personal & shared reports Launch BI tools for advanced actions Create new reports with BI Composer 49 49
Search Integration Find Relevant BI Content When Searching Applications 50
Accessing BI from Fusion Applications Integration Points Casual User BI Embedded in Apps UI Application Dashboards BI Dashboards Embedded Analytics Analysts & IT BI Accessed from Apps UI New BI Content Creation Reporting Pane Reports & Analytics Work Area Integrated Search BI Composer Answers, Dashboards KPIs & Scorecards BI Publisher 51
New BI Content Creation BI Composer Author BI reports within the Apps UI Wizard-based for ease of use Supports tables, graphs, crosstabs, Sorting, filtering, formatting Access any deployed BI subject area Save reports to the catalog & share with others 52 52
Questions 53