Multiple Data Sources and Accessing External Java APIs

Hi Everyone,
I have a couple of questions for which I was not able to find satisfactory answers in the forum search, so here they are. I would be really grateful if you can help us out with this.
1. Accessing two Data Sources in the same report: We have a requirement to access two data sources in the same report, and use the data from one source to run a query on the other source. Our product (OIM) has its own DB. And it integrates with BPEL (another Oracle application) for some functionality. BPEL has its own DB. A few reports need data from both these repositories. For simplicity, consider that we need to join two tables, but one table is in OIM DB and the other is in BPEL DB. I guess such a join is not possible. So to work around it, we would like to run a query against one DB and then use the results to run a query on the other DB, which will basically simulate the join by running two queries.
Is something like this possible in BIP? If not directly available, can you suggest something which can act as a work around to achieve this?
2. Calling External Java APIs from BIP: We need to call some external APIs (for achieving Data Security) 'before' we run the queries in BIP. Basically the Java API will specifya set of keys which will have to be used in an 'in' clause. I looked at the section "Building a Data Template" in the BIP User's Guide (http://bipublisher.us.oracle.com/doc/prod_docs/BI_Publisher_10_1_3_3_3/bip.1013/b40017/T421739T434255.htm). As far as I can see, it discusses how to invoke a PL/SQL procedure using <datatrigger> but the usage is not clear to me. Is there any other document that discusses this in detail? Also, I am not sure if it is possible to access Java APIs. Has it been done before? If yes, then can anyone provide some sample code (sample report bits) which I can refer to to get this thing working?
Also, the data coming from the Java API may not be in the correct format. We may have to do some additional processing (like converting data in a Java Object to something like comma separated list to be plugged into a query). Is that possible? What will be the best approach here?
Sorry for the detailed post!
Thanks,
Jatan

Yes you should be able to use both - for example using a Flash Variable to pass in the URL of the XML that you want to load.
FlashVars are only supposed to be passed in on startup and they are defined as part of the OBJECT/EMBED tag for the HTML.
Actually it was possible to update FlashVars at runtime in Xcelsius 4.5 with certain JavaScript calls but not in Xcelsius 2008 (because Adobe Flex which Xcelsius 2008 is based on does not allow the same mechanism).
FYI, for those that are interested in Xcelsius 2008 you pass values into/out of Xcelsius at runtime using External Interface and JavaScript instead.
Regards,
Matt

Similar Messages

  • Multiple data sources and cubes for mining

    We have two data sources:
     1 - OLTP database for transactional operations
     2 - Data Warehouse for analysis
    We use change data capture to track changes in the OLTP and upload to DW each night.
    Currently, we have one cube built on top of our DW for analysis and KPI's etc
    However, if we wish to use the OLTP DB for data mining, can this done in the same solution using a new data source or do we need to create a new cube etc?

    Hi Darren,
    According to your description, you are going to use the OLTP DB for data mining, what you want to know is can this done in the same solution using a new data source or do we need to create a new cube?
    In your scenario, if the cube structure for data mining is same as original cube, then you needn't create anything, just edit the connection of the data source to point to the OLTP database. If the cube structure for data mining is not same as original
    cube, then I am afraid you need to create a new cube.
    Regards,
    Charlie Liao
    TechNet Community Support

  • Report Viewer and Multiple Data Sources

    I know that it is possible to create a report in Crystal Reports using multiple data sources.  But is it possible to use just the Free  Report Viewer to view a report with Multiple Data Sources?
    Our company uses Crystal Reports XI.  I do not use the program myself, I am in the IT Department.  I have limited knowledge of Crystal and do not do any of the report writing.
    If this is possible, and if someone could help me out with what would need to be done, or point me in the right direction of a Knowledge Base or Help Topic that explains this, that would be great.
    Thanks.

    I believe it can but both data sources need to be set up. Ask a report designer to help you use the Designer to test this and see what is required.

  • Adhoc Query Requirement with Multiple Data Source

    Hi All,
    I have a Adhoc Query Requirement with Multiple Data Source. Is there any way to achive it. Other than Resultant set and bring into Model.
    Thanks
    SS

    You can compare stuff in the EL, but I don't think this is what you need.
    You can just use Java code in the backing bean class for all the business logic. You can use DAO classes for database access logic. Finally for displaying you can use the JSF tags such as h:outputText.

  • Excel data source and the use of add command

    HI, Looking for suggestions on how to work with multiple inputs that cannot be joined directly.  Here's the background.
    The Report currently reads in two different Ecel files and uses 3 SQL commands to query an Oracle Database.  I need to join the 5 data sources and am having issues with the 2 excel files.  In one file I need to be able to derive a field based on another column in the file In order to create the join condition to the SQL commands.  I'd equate this to a case statement in SQL, but how goes one do that using the 'add command' feature?  What is the syntax?
    Next I would need to join (left outer) the two excel files using two fields from file A (a1, a2) and 3 fields from file B (b1,b2,b3), where a1=b1 and b2 <= a2  <= b3 when rows from A exist in B.  If row A does not exist in B then we still want it in the report and available to left outer join to the 3 oractab data sources.
    runtime is also a concern.
    Any Suggestions?

    hi Elena,
    in this case the use of subreports is not recommended. that's because you're exporting to excel and you need data in columns across the report. subreports will not, unfortunately, give you what you need.
    this would bring you back to joining the datasources. what i would recommend is looking into using 'oracle database link' to link your oracle db to excel files. here's one article as an example but you may be able to find a better one. if you have questions on this please ask them on an oracle forum as the syntax that you need will be database specific.
    a lot of databases have this type of technology which allows you to create a view to other data. sql server has 'linked servers', sap hana has 'smart data access'. essentially you are creating a non-materialized view to the external data. then this view is available on the main oracle server where you established this connection. this should be a lot easier than trying to bring a bunch of command objects together off independent datasources inside of crystal.
    -jamie

  • CFTransaction & Multiple data sources

    We have the need to update to multiple data sources under
    CFTransaction. We have two MSSQL databases so I was able to create
    a view in one to the other and that works (unless someone knows of
    a problem that could cause). But we also have a MSAccess db that
    gets hit too under the same CFTransaction. CF does not allow you to
    have multiple data sources under one CFTransaction. If all the
    tranasction control is on the db side, why does CF care if there
    are different data sources?
    Thanks.

    As I said in my original post, in order for a transaction to
    span multiple databases, you need to do what's called "2-phase
    commit" or "distributed transactions". This is not a trivial thing
    to do, nor is it something that is often needed (especially in
    Coldfusion, which is 99% of the time talking to a single database).
    Why do you need to do 2-phase commit? and why isn't it
    trivial?
    "2PC is an acronym for 2 Phase Commit. This is a protocol by
    which data being committed to a database is committed in two
    phases. In the first phase, the transaction processor checks that
    all parts of the transaction can be committed. In the second phase,
    all parts of the transaction are committed. If any part of the
    transaction indicates in the first phase that it cannot be
    committed, the second phase does not occur. ODBC does not support
    two-phase commits."
    http://docs.openlinksw.com/virtuoso/twopcimplementation.html
    I don't think Access supports 2-phase commit. Access isn't
    really intended for the kinds of things that need 2-phase commit,
    which Microsoft readily admits (hence MS SQL Server).
    > My thought is that it is not allowed because CF only
    remembers one data source per cftransaction therefore can only send
    one commit or rollback instruction. If that's the case, it sounds
    like a simple enhancement.
    No, this isn't allowed because distributed transactions is a
    non-trivial thing. This isn't all handled on the database side, as
    you reference. If you're dealing with one datasource, yes, it does.
    Once you pull in a 2nd datasource, you need something that can talk
    to all databases involved (a transaction coordinator) and 1) check
    to make sure everything can be committed safely then 2) commit
    everything (hence 2-phase commit).
    Basically, you're trying to do something that's non-trivial,
    you don't understand why it's non-trivial, so you're getting
    frustrated. I realize you're not a Java shop. I was simply trying
    to explain to you why it was non-trivial, and a method to work
    around that if you so desire.

  • Multiple Data Sources In One Logical Table

    I am new to OBIEE and I have came accross an issue. I appologize if this information is in the forum somewhere but I have searched and cannot find it.
    My situation is that I would like to have one logical table that contains multiple data sources which have all the same columns. I already have session variables setup to differentiate the user's security through a row-wise variable for a specific column and a session variable for another column which determines the user's association to the data source in which they belong to. This security works well when the data sources are seperated in the Business Model and Mapping portion but the issue that arises is that the user's cannot share reports when the data sources are seperated in the BM&M.
    I have dragged and dropped a table from the Physical model to the BM&M, I then dragged the second data source (with same meta data structure) over to the "Sources" folder in the first data source table in the BM&M. On the Content tab or each data source table I have defined the WHERE clause as such, where VALUEOF(NQ_SESSION."SCHOOL") session variable is my row-wise column filter and the VALUEOF(NQ_SESSION."GROUP") filter is my data source determinative:
    sandbox."".SANDBOX.OBIEE_CROSS_ENROLLMENTS.HOME_SCHOOL = VALUEOF(NQ_SESSION."SCHOOL") AND sandbox."".SANDBOX.OBIEE_CROSS_ENROLLMENTS.DATA_SOURCE = VALUEOF(NQ_SESSION."GROUP")
    Unfortunatley this only returns values in the BI Answers for the first drag and drop Pysical table in the BM&M layer and not the second Physical table drug into the "Sources" folder. I have also tried to create a new logical table and drag both tables into the "Sources" folder to no avail. I have experimented with the Fragmentation content on the "Content" tab of the seperate logical tables, checking the "This source should be combined with other sources at this level", which gives me an error in BI Answers that a column does not exist which really does.
    What could I be missing? Advanced thanks to those who reply.
    Thank you,
    Kyle

    Stijn,
    Thank you for the article link. That was very helpful! It seems that I had a few things off as you do need the "This source should be combined with other sources at this level." checked. In my two table source columns for DATA_SOURCE I defined a literal ('086496' and '085597' for the other) in the Column Mapping tab. I pasted the following in the Fragmentation content, checking the "This source..." box on the Content tab:
    eSIS.SANDBOX4_SCHOOLS.DATA_SOURCE = '086496'
    And pasted the following into the WHERE clause, checking "Select distinct values" on the Content tab:
    sandbox4."".OBIEE.NWOCA_SCHOOLS.SCHOOL_CODE = VALUEOF(NQ_SESSION."SCHOOL") AND sandbox4."".OBIEE.NWOCA_SCHOOLS.DATA_SOURCE = VALUEOF(NQ_SESSION."GROUP")
    This took care of my user's security, utilizing the session variables in the WHERE clause. I am now able to generate reports that only one user can access from one data source and share that same report with another user who can only see data from the other data source.
    Many thanks!!!

  • Step by Step to access custom Java API in Application Service.

    Hi Experts,
           I have a situation to access the custom Java API in CAF. The Java API fetches the data from MDM. I need to get the data from that API and and use it in the CAF Application Service layer? Is there a way to access the JAVA API in the Application Service Layer? If so please do help me out. Step by Step solution would be appreciated.
    thanks in advance.
    Regards
    Ketan

    Hi Ketan,
    You can do it in two ways.
    1. You can create your own custom class in the ejbmodule which you can see in the Navigator view.
    2. You can have a ear having the custom class. This ear will be in a separate DC and CAF will have dependency to it.
    Regards,
    Srinivasan Subbiah

  • Joining multiple tables across multiple data sources in MYSQL throws error

    Hi all,
    I have to join tables across multiples MYSQL databases
    eg :
    Table T1,T2 from DB1
    Table T3 from DB2
    Columns from T3 are aggregated ( dimensional column ).
    Hence when i query using oracle answers ( say i have columns from T1,T2 and T3 ) , OBIEE tries to a query DB1 by having NULL for columns in T3
    It uses cast(NULL as INTEGER ) for columns from T3 . But MYSQL throws an error because "cast(NULL as INTEGER )" is not supported by MYSQL.
    I tried executing the query generated by OBIEE manually , if i try giving cast(NULL as SIGNED INTEGER ) , it works.
    pasting the query for reference
    select distinct D1.c2 as c1,
    D1.c1 as c2,
    cast(NULL as INTEGER ) as c3
    from
    (select distinct T87.title_id as c1,
    T59.asin as c2
    from
    print_book_catalog T59 left outer join
    title_authority T87 On T59.asin = T87.asin
    where ( T59.asin = '0345378911' )
    ) D1
    I am not able to find any config file to set this property ( and use signed integer instead of integer ) . Even DBFeatures.INI does not have relevant information.
    Can someobody please help me solve this problem.

    Stijn,
    Thank you for the article link. That was very helpful! It seems that I had a few things off as you do need the "This source should be combined with other sources at this level." checked. In my two table source columns for DATA_SOURCE I defined a literal ('086496' and '085597' for the other) in the Column Mapping tab. I pasted the following in the Fragmentation content, checking the "This source..." box on the Content tab:
    eSIS.SANDBOX4_SCHOOLS.DATA_SOURCE = '086496'
    And pasted the following into the WHERE clause, checking "Select distinct values" on the Content tab:
    sandbox4."".OBIEE.NWOCA_SCHOOLS.SCHOOL_CODE = VALUEOF(NQ_SESSION."SCHOOL") AND sandbox4."".OBIEE.NWOCA_SCHOOLS.DATA_SOURCE = VALUEOF(NQ_SESSION."GROUP")
    This took care of my user's security, utilizing the session variables in the WHERE clause. I am now able to generate reports that only one user can access from one data source and share that same report with another user who can only see data from the other data source.
    Many thanks!!!

  • Increase performance in a multiple data source report

    Post Author: ArturoFromPeru
    CA Forum: General
    Hi everybody.
    I have a big problem, when i make a report that have multiple data sources the performance decrease considerably, i still don't know the reason. Is it true that using multiple data sources is too slow?.
    I tell you a fact: I made the report connecting via "Field Definition File", and it take at least 2 minutes to show itself but it only have 170 records, and i'm very sure that the sql statements to each data source were executed very faster.
    I even heard about index, but i think they only are useful when i connect directly to the database.
    All my partner told me, that Cristal Report
    Thanks you in advance
    Regards.
    Arturo

    Post Author: ArturoFromPeru
    CA Forum: General
    Thanks you, but I explain better what i was doing.
    I've made a report called "Kardex de Producto" which show the behavior of the products according to its sales, purchases.
    The end result which is showed by the report is correct. I used three data source in the report, so links between each table is correct. The only problem i have is the performance because i still don't know why is too slow. In fact the sql statement is very heavy, but i think it doesn't matter to the report because when it takes the data from the database (connecting via Field Definition File) even if the very heavy sql statement returns twenty record Cristal Report must show itself very quickly. I don't want to believe that Cristal Report is very slow when it works with multiple data sources.
    Do you mind if i give you my report? if not please leave me your email address.
    Email: [email protected] / [email protected]
    Thank you in advance
    Regards
    Arturo

  • Any examples of a data template using multiple data sources?

    I'm looking for an example report using multiple data sources. I've seen one where they do a master/detail but I'm just looking to combine results in sorted order (sorted across all data sources). The master/detail used a bind variable to link the two defined queries, I'm thinking what I want won't have that, so I'm lost on how to make that happen. I have reports using multiple sql queries and there is a way in the data source pulldown to tell it to combine the data sources. It appears to be a more manual process with data templates, if it's even possible.
    Any pointers/links would be appreciated.
    Gaff

    Hi Vetsrini :
    That's just it. Mine is simpler than that. There is no master/detail relationship between the two queries. I have the same exact query that I run in two databases and I want to merge the results (ordered, by, say eventTime) in one report. So I think my results are going to be two separate groups (one for each data source) which I'll have to let BI merge vis XSLT or whatever it uses. That's fine for small result sets but for larger ones, it would be nice if the database did the sorting/merging.
    Gaff

  • Bursting with multiple data sources

    Hello all,
    I am working in a retail environment and we are building reports for the stores. There are several reports and they all receive the same reports. We are using BIP Entreprise with the bursting feature and it works very well.
    The problem is that there are too many reports and we would like to combine all reports of the same store within the same PDF. We use the multiple data source feature and was able to concatenate all reports together.
    Using this new report and template, we can not make the bursting functionality to work properly: the bursted report do not contain all the required report components.
    For example, I have 2 queries A and B each producing reports for 3 stores: 2, 4 and 5. Without bursting, the output is as is:
    Query A - Store 2
    Query A - Store 4
    Query A - Store 5
    Query B - Store 2
    Query B - Store 4
    Query B - Store 5
    With bursting into a file using the store number, I get the following:
    File 1 - Store 2 - Query A
    File 2 - Store 4 - Query A
    File 3 - Store 5 - Query A
    + Store 2 - Query B
    + Store 4 - Query B
    + Store 5 - Query B
    I would like to have the following output:
    File 1 - Store 2 - Query A
    + Store 2 - Query B
    File 2 - Store 4 - Query A
    + Store 4 - Query B
    File 3 - Store 5 - Query A
    + Store 5 - Query B
    The main question is: can this be done using BI Pub Enterprise? We using version 10.1.3.3.2
    If it is, can you provide me with help on how to configure either/or the requests and template to accomplish this task?
    I create an SR and Oracle Support does not have an answser and suggested that somebody in the Forum might help.
    Thanks in advance,
    Minh

    I would like to have the following output:
    File 1 - Store 2 - Query A + Store 2 - Query B
    File 2 - Store 4 - Query A + Store 4 - Query B
    File 3 - Store 5 - Query A + Store 5 - Query B
    the bursting level should be give at
    File 1 - Store 2 - Query A + Store 2 - Query B
    so the tag in the xml has to be split by common to these three rows.
    since the data is coming from the diff query, and the data is not going to be under single tag.
    you cannot burst it using concatenated data source.
    But you can do it, using the datatemplate, and link the query and get the data for each file under a single query,
    select distinct store_name from all-stores
    select * from query1 where store name = :store_name === 1st query
    select * from query2 where store name = :store_name === 2nd query
    define the datastructure the way you wanted,
    the xml will contain something like this
    <stores>
    <store> </store> - for store 2
    <store> </store> - for store 3
    <store> </store> - for store 4
    <store> </store> - for store 5
    <stores>
    now you can burst it at store level.

  • Data Structures and Algorithms in java book

    Hi guys,
    I want to know a good book which is good for Data Structures and Algorithms in java. I am good at Core java but a beginner for Data Structures in Java. I am a little poor in Data Structures concepts.
    Following are the books I have found on the net. Could you help me the choose the best outta them.
    1. Data Structures and Algorithms in Java - Mitchell Waite
    2. Data Structures in Java - Sandra Anderson
    3. Fundamentals of OOP and Data Structures in Java - Richard Weiner & Lewis J. Pinson
    4. Object Oriented Data Structures Using Java - Nell Dale, Daniel T. Joyce, Chip Weems

    lieni wrote:
    I good data structures book doesn't have to be language-specific.Thx DrLazlo, my speachYes.
    The OP wrote:
    I have access to these books and dont know which one to start with.What I meant is that you shouldn't narrow your search to insist that the book you choose have "Java" in the title.

  • OWB 10g -- Can't Create Database Links for Data Source and Target

    We installed OWB 10g server components on a Unix box running Oracle 10g (R2) database. The Designer Repository is in one instance. The Runtime Repository and the Target are in another instance. The OWB client component was installed on Windows XP. We create a data source module and a target module in OWB. The data source is on another Unix box running Oracle 9i (R2) database. We try to create database links for data source module and target module, respective. But when we created and tested the DB links, the DB links were failed.
    For the database link of data source, we got the following error message:
    Testing...
    Failed.
    SQL Exception
    Repository Error:SQL Exception..
    Class Name: CacheMediator.
    Method Name: getDDEntryFromDB.
    Repository Error Message: ORA-12170: TNS:Connect timeout occurred
    For the database link of target , we got the following error message:
    Testing...
    Failed.
    API2215: Cannot create database link. Please contact Oracle Support with the stack trace and the details on how to reproduce it.
    Repository Error:SQL Exception..
    Class Name: oracle.wh.ui.integrator.common.RepositoryUtils.
    Method Name: createDBLink(String, String, String, String).
    Method Name: -1.
    Repository Error Message: java.sql.SQLException: ORA-00933: SQL command not properly ended.
    However, we could connect to the two databases (data source and target) using the OWB’s utility SQL Plus.
    Please help us to solve this problem. Thank you.

    As I said prior the database link creation should work from within the OWB client (also in 10).
    Regarding your issue when deploying, have you registered your target locations in the deployment manager and did you first deployed your target location's connector which points out to your source?
    I myself had some problems with database link creations in the past and I can't remember exactly what they were but it had something to do with
    - the use of abnormal characters in the database link name
    - long domain name used in as names.default_domain in my sqlnet.ora file
    What you can do is check the actual script created when deploying the database link so see if there's something strange and check if executing the created script manually works or not.

  • Best Way to Aggregate Multiple Announcement Apps and Possibly External RSS Feed

    Hello,
    I have two separate announcement apps (one in sub-site A, and one is sub-site B). I am trying to create a webpart that will display content from both apps together.
    I have tried to setup a CSWP and have been able to set the query to pull in the data (Although it shows expired announcements, which I would need to eliminate). Now, I am trying to customize the display of the CSWP, including the property mapping values
    to display the announcement title (currently working with the URL as a link) and body (truncated like the announcement summary view if possible).
    How can I get the body from the announcement to display? The 'body' field isn't listed as an option in the drop down list of mapping values. Do I need to toggle an option on the separate announcement apps, create a column, map a field, or some combination?
    Also, I'd like to know if it is possible to add in an external RSS feed. Or, if there is a completely different way to approach and accomplish this, please let me know.
    Thank you

    Hi,
    To display the “Body” field of Announcements list properly in Content Search Web Part, you can take a look at this blog about how to customize the display template for a good
    start:
    http://social.technet.microsoft.com/Forums/en-US/bf0eb4de-445f-435a-8c88-1826bfb3aae5/best-way-to-aggregate-multiple-announcement-apps-and-possibly-external-rss-feed?forum=sharepointdevelopment
    If there are more complex needs in customization, the two links below would be helpful:
    http://blogs.technet.com/b/sharepoint_quick_reads/archive/2013/09/03/3588171.aspx
    http://blogs.technet.com/b/tothesharepoint/archive/2013/05/28/stage-11-upload-and-apply-display-templates-to-the-content-search-web-part.aspx
    Also, if you have several questions, it is recommended to post them in each single thread to make others in this forum easier to focus on one issue in one thread.
    Best regards
    Patrick Liang
    TechNet Community Support

Maybe you are looking for

  • How to add custoim fields on the additiondata b tab of va01 and va02

    Hi All,    i want to add the field on the Additional data B tab of the VA01 and VA02 at header level.     Already one field is there now i want to add one more field.How to proceed.    I think i have to go with screen exits.Can you help me in proceed

  • Everything starting to run very slow

    I have had my mac book pro for almost a year, and for a little while now its been running very very very slow for anything, or i try to switch windows and i get a huge delay in it crossing over, like a lag spike in processing. is there a type of defr

  • Using the result of a function, inside a subselect

    Hi! I´m wondering if it´s possible to use the result of a function inside a subselect. Let me give you an example of what I´m trying to do here: select * from t_node where node_pk in (get_node_parents_pk(22345)); The function get_node_parents_pk stan

  • Lens correction, and Raw or JPEG

    Please bear with me, sometimes I'm a bit slow. I just loaded a friend's JPEG into ACR, to see if I could fix the distortion. The image has no EXIF. The list of Nikon-fit lenses was much shorter than usual - is this because it is a JPEG, rather than a

  • 3-bit priority field in the 802.1P or 802.1Q frame

    Hi, How does the switch differentiation based on the 3-bit priority field in the 802.1P or 802.1Q frame? Regards M