Business Intelligence - Oracle

Archive for the 'OBI EE Plus' Category


Oracle BI EE 10.1.3.3/2 - SA System Subject Area - Autoloading Profiles and Bursting

Posted by Venkatakrishnan J on April 25, 2008

Those users who have worked with Siebel Analytics 7.7 or above, they would be aware of a special subject area called SA System subject area that was necessary to set up Delivers. But with the advent of new releases(10.1.3.3 and above), SA System subject area is not mandatory any more. But still SA System Subject area can be very useful in a lot of scenarios. One of the major uses of this special subject area is that, by setting this up one can automatically populate the Delivery Profiles of all the users. If this is not setup, one would have to manually go into My Account section of each and every user and then set it up. For example, a typical use case is, you would be having the list of users and their corresponding email ids in an excel file. You do not want the users to manually go and enter their email ids. In such a case, just setup the SA System subject area, then all the users would automatically get their email ids, phone, pagers etc automatically assigned to their profiles. Today, we shall see how to go about setting this subject area. Lets start with a simple table script that would help us to store all the Users, their corresponding Groups and also their email ids, pager and phones. Remember, SA System subject expects you to specify all the shown columns below.


CREATE TABLE SA_SYSTEM
(
EMAIL VARCHAR2(100),
EMAIL_PRIORITY VARCHAR2(10) DEFAULT 'HNL',
EMAIL_TYPE VARCHAR2(50) DEFAULT 'html',
CELL_PHONE VARCHAR2(40),
CELL_PHONE_PRIORITY VARCHAR2(20),
PAGER VARCHAR2(20),
PAGER_PRIORITY VARCHAR2(30),
HANDHELD VARCHAR2(20),
HANDHELD_PRIORITY VARCHAR2(30),
TIMEZONE VARCHAR2(100),
GROUP_NAME VARCHAR2(20),
LOGON VARCHAR2(50) NOT NULL,
DISPLAY_NAME VARCHAR2(100),
LOCALE VARCHAR2(20) DEFAULT 'en',
LANGUAGE VARCHAR2(20) DEFAULT 'en'
)

    

Assume that we have 2 users <b>Administrator and Sample</b> in our repository. So, lets enter all their relevant details into the above table.


INSERT INTO SA_SYSTEM(EMAIL, GROUP_NAME, LOGON, DISPLAY_NAME) VALUES (<a href="mailto:'venkatakrishnan.janakiraman@oracle.com','Administrators','Administrator','Administrator'">'venkatakrishnan.janakiraman@oracle.com','Administrators','Administrator','Administrator'</a>);
INSERT INTO SA_SYSTEM(EMAIL, GROUP_NAME, LOGON, DISPLAY_NAME) VALUES (<a href="mailto:'krisvenky83@gmail.com','Administrators','Sample','Sample'">'krisvenky83@gmail.com','Administrators','Sample','Sample'</a>);
COMMIT;

Lets look at what each of the above columns do

EMAIL - Stores the email addresses of the user.
EMAIL_PRIORITY - Can take 3 values. ‘H’ for High, ‘N’ for Normal, ‘L’ for low. ‘HNL’ means High, Low and Normal. You can use these in any combination.
EMAIL_TYPE - Can take ‘html’ or ‘text’. This primarily tells whether the email client supports html or only text.
CELL_PHONE - Cell phone details
CELL_PHONE_PRIORITY - Same as EMAIL_PRIORITY
PAGER - Pager details
PAGER_PRIORITY - Same as EMAIL_PRIORITY
HANDHELD - Handheld details
HANDHELD_PRIORITY - Same as EMAIL_PRIORITY
TIMEZONE - This can be Null. Basically tells the timezone of the user.
GROUP_NAME - The actual GROUPs to which the Logon user belongs.
LOGON - User Login Name
DISPLAY_NAME - User Display Name
LOCALE - Default it to ‘en. It specifies the user Locale.
LANGUAGE - Default it to ‘en’. It specifies the user Language.

Now, import the above created table into the repository and design your BM and Presentation Layers. You should rename the Presentation Layer columns to the one shown below.

Cell Phone
Cell Phone Priority
Display Name
Email
Email Priority
Email Type
Group Name
Handheld
Handheld Priority
Language
Locale
Logon
Pager
Pager Priority
Time Zone

If you use any other names, SA System subject area would not work.

    

Once this is done restart the presentation services. Now login as Administrator and go to Settings -> My Account. You would notice that the delivery profile would automatically be populated and also the email id would also have been associated to the profile. Same would be the case for the Sample user.

    

    

Sometimes this can be very useful. But always remember, if any user goes and modifies their delivery profile, that would take precedence over the SA System Subject area.. One other advantage of using this SA system subject area is that you can use this to do email bursting of reports. For example, in most cases, not every user would have the delivery profile created. In such a case, just load up the SA System subject area and then assign the email ids to the users. Just create a simple report on the SA System subject area to have a display on the LOGON names.

    

Use this in the conditional request and pass the LOGON field to the list of recipients.

    

This would automatically do the bursting to all the users. This would be very handy while doing mass email deliveries.

 

Posted in All Posts, OBI EE Plus | 3 Comments »

Oracle BI EE 10.1.3.3/2 - Overriding Autogeneration of Dimension Level Names of Hyperion Essbase 9.3.1

Posted by Venkatakrishnan J on April 23, 2008

I got a simple question from an user yesterday who basically wanted to know how to have custom names for different levels while importing an Essbase cube. If you are not sure what i mean, look at the screenshot below.

    

As you see, this is nothing but the sample Demo cube which has been imported into BI EE. If you notice, for the Market Dimension, all the levels have names like Gen1, Market, Gen2, Market etc. The question from the client was how do we make BI EE to extract the names from the cubes themselves rather than manually updating them in BI EE. Hyperion Essbase users would know how to do this very easily since all we would have to do is to update the Generation Names for all the levels in the dimension. But for users who are not aware of what Generation and Levels mean in Essbase, the following screenshot would be useful.

    

As you see, Generations are nothing but the reverse of a Level. So, in order to import user defined level names into BI EE, we would have to open the outline of the specific cube using Essbase Administration Services. Then right click on the Market Dimension and click on Generations.

    

    

Now, specify a name for each level (number for the levels would be in descending order). So, use the names All Markets, Region and City for the 3 Generations.

    

Save the outline. Now, if you import the cube into BI EE, you would see that the names too get automatically imported.

    

Posted in All Posts, Hyperion Essbase, OBI EE Plus | 1 Comment »

Oracle BI EE 10.1.3.3/2 - Merging of Web Catalogs - 2-way merge with no parent

Posted by Venkatakrishnan J on April 18, 2008

Its recommended to use this approach only if you are completely aware of the Web Catalogs that you are merging. Merging of web catalogs is not the same as merging of repositories since there will be a lot of overlapping objects in any 2 web catalogs. So, its better to understand the implications of trying this. Also, always take backups of the web catalogs before doing a merge. But this can be very handy in quite a lot of scenarios.

The most common method of combining 2 different web catalogs is to copy over the dashboards, reports, prompts, filters etc over from one catalog to another. This is the recommended way of copying over catalog objects from one Web Catalog to another. If you are moving from a development to a test instance then all you would have to do is to copy over the web catalog folders from one machine to the other. Mark has an excellent article here on the above two approaches. But what we shall see today is something that we can use to automate the merging of 2 web catalogs. If you had looked at my blog entry here, i would have shown you an approach to merge 2 repositories. That concept can also be applied for Web Catalogs. This is not a widely used approach because of the possible implications and a lot of overlapping objects. But if you have a lot of reports/dashboards in 2 different instances of BI EE and if you are looking for an automated way of merging them, then read ahead. The concept of merging 2 web catalogs can be summarized by the picture shown below.

    

So, basically we have 2 web catalogs say Paint and BISE1 and we would like to merge the contents of both the web catalogs. Then in that case following would be the list of steps

1. Take Backups of all the web catalogs.
2. Create a blank folder (which will act as a dummy web catalog).

    

3. Open the Paint Web Catalog in the offline mode using the Catalog Manager.

    

4. Go to Tools - Upgrade Catalog. In the Original Presentation Catalog enter the folder path of the blank web catalog and in the modified presentation catalog enter the folder path of the bise1 web catalog.

    

When you do this, this will give you an error saying that shared folder does not exist in the blank folder. Just ignore it since the tool expects the web catalog to be in a proper format.

    

Then it will show you all the differences between the 2 catalogs from a version standpoint. You can choose which version you would like to have. Remember you might not get a lot of options as shown below if both the catalogs are on the same version. You need to ensure that you have the same security model for both the web catalogs. If not then you would have to reassign the privileges of the modified web catalog wherever needed.

    

Once this is done, you would notice that the bise1 catalog objects would now have been merged into paint web catalog.

    

As always ensure that your security setup is proper. The above said option is primarily used for upgrades. But since it uses the concept of the 3-way merge, this can also be used for merging 2 web catalogs. The only drawback is that you would have to thoroughly check for the completeness of the merge. Most of the times you would be better of copying the web catalog objects from one catalog to another. But this should give you another approach of merging if at all you are looking for an automated option.

Posted in All Posts, OBI EE Plus | 1 Comment »

Oracle BI EE 10.1.3.3/2 - Querying Repository - Changing Icons of Objects in Repository and Getting a list of Repostitory objects

Posted by Venkatakrishnan J on April 16, 2008

I got this question via email yesterday. The question goes like this “How do we get the list of all the objects that are there in the repository and how do we change the icons of the objects in the repository?”. Though the answer to this question is pretty straight forward, i thought i would blog about it since the answer involves a very important utility that can come in handy to a lot of repository administrators. The utility is called as “Query Repository”. It is a very handy utilty and one can query the repository and its corresponding objects using this utility.

    

You can also get the list of all the variables inside the repository and of course, you can export that into a CSV file. You also have other options like you can save a query for future use, you can mark the objects which you use regularly etc. If you want to list down all the variables inside the repository, then just query for all the variables.

    

Coming to the 2nd part of the question i.e how to change the icons of some of the repository objects, just query your desired objects using the query repository option and then click on “Set Icon”. This will list down the alternative icons that are available and you can choose and assign the ones you like.

    

    

    

 

Posted in All Posts, OBI EE Plus | 1 Comment »

Oracle BI EE 10.1.3.3.2 - Handling Attribute Dimensions of Hyperion Essbase 9.3.1 in BI EE

Posted by Venkatakrishnan J on April 15, 2008

One of the dimension types in Hyperion Essbase is an Attribute Dimension. If you are used to Oracle OLAP AWM, Attribute Dimension is nothing but a dimension which maintains all the attributes of different levels in a dimension. Essbase treats all the attributes seperately and one has to model a seperate dimension for handling attributes. Lets start with a simple example of an Attribute Dimension and see how BI EE treats this Dimension. We shall start with the OLAP Model first. In the model, we shall try creating attribute dimension for all the levels in the Product Dimension. Our Product dimension would have a hierarchy as shown below

Product Total ID - Product Category ID - Product Sub-Category ID

Now, we shall treat the following columns Product_Total, Product_Category_Desc and Product_SubCategory_Desc respectively as attributes to the ID columns which make up the above hierarchy. So, in order markup a column as an attribute click on the Dimension in the OLAP Model and go to Edit - Properties - Columns.

    

    

Now, save this OLAP Model and in the Metaoutline drag and drop the attribute columns from left frame to the right. This will automatically create attribute dimensions. We would have to double click on each of the columns to assign the level that an attribute is assigned to. For example, in our case, we need to assign PRODUCT_TOTAL to PRODUCT_TOTAL_ID level etc.

    

    

Now build this cube and import the cube to BI EE. If you drag and drop the cube to BM layer, you would notice that by default the attributes are not assigned to the specific levels since BI EE currently does not support auto assignment of attributes to their corresponding levels. In order to achieve that we would have to manually assign the attributes to the specific levels in the BM layer.

    

    

Lets remove the attribute hierarchies and put all the attributes into a single Logical table as the Product Logical Table. Also, redesign the product hierarchy to include the attribute levels in the hierarchy as shown below (remember, you need to check whether attribute dimension has data properly loaded. Generally when you assign attributes to a specific level the cube is loaded only to that level. There would not be any association between 2 different attributes which you would have to do it manually in BI EE).

    

 

Posted in All Posts, Hyperion Essbase, OBI EE Plus | 1 Comment »

Oracle BI EE 10.1.3.3.2 - Hyperion Essbase 9.3.1 Value Based Hierachies (Recursive Dimensions) and handling them in BI EE

Posted by Venkatakrishnan J on April 14, 2008

As you would probably know, Hyperion Essbase is one of those Multi-Dimensional data sources which can handle a different types of hierarchies. One of the common hierarchies that one might encounter is the value based hierarchy (in Essbase’s terms it is called as a recursive dimension). A value-based hierarchy is a hierarchy where the member levels are determined on the fly based on the parent-child relationship between 2 columns. For example, if you take the EMP table of the SCOTT schema, you would notice 2 columns EMPNO and MGR where MGR basically would have a reference to EMPNO. In this case, both the manager and employee details are stored in the same table. Manager A for example, himself being an employee, will be reporting to his Manager say B. So, this self-reference can be used to obtain a hierarchy which is generally known as a value based hierarchy. Lets try creating a simple value based hierarchy in Essbase and see how BI EE handles this hierarchy. We shall be creating 2 simple tables to test out the connectivity. One table would have the parent-child relationship and the other would be a simple fact table.

 create table ParentChild(Parent Varchar2(2), Child Varchar2(2));
insert into parentchild values ('B', 'D');
insert into parentchild values ('B', 'E');
insert into parentchild values ('A', 'B');
insert into parentchild values ('A', 'C');
commit;
create table parentchild_Fact( Child Varchar2(2), SimpleMetric Number);
insert into parentchild_fact values('D', 100);
insert into parentchild_fact values('E', 100);
insert into parentchild_fact values('C', 200);
commit;

So, basically the above parentchild table would be giving an hierarchy as shown below

    

Now, open up integration services and pull in the fact table to create a simple Account Dimension. Also, pull the parentchild table as a dimension in the OLAP Model. Click on the dimension and go to Edit - Properties - Table and click on Physical Joins.

    

Add a join between the Parent and Child columns and make it recursive.

    

Once this is done, save the OLAP model and then start creating a MetaOutline. In the metaoutline, just include the Accounts Dimension. Also, include the ParentChild Dimension. While creating a hierarchy for this dimension just include the PARENT column.

    

Now, build this cube and import this cube into BI EE. After the import into BI EE, you would notice that BI EE automatically would have columns assigned to each level (equivalent to the depth of the hierarchy). Now change the hierarchy type to “Unbalanced” and then start creating a report after creating the BM and Presentation Layers.

    

    

But lets check what would happen if we go and delete 2 rows (no third level) or 2 childs D and E from the dimension and rebuild the cube.

delete parentchild where child = 'D';
delete parentchild where child = ‘E’;

    

We would not get any data for the 4 th row. So, whenever having value based hierarchies in Essbase and if you are reporting on that using BI EE always ensure that the depth of the hierarchies do not change. If they do, then you would have to import the cube metadata once again into the repository. But still the above feature is very good considering the fact that BI EE does not support value based hierarchies for relational sources.

Posted in All Posts, Hyperion Essbase, OBI EE Plus | No Comments »

Hyperion Essbase 9.3.1 and BI Publisher Connectivity - Using BI EE as a data Bridge

Posted by Venkatakrishnan J on April 10, 2008

As i was testing the BI EE and Hyperion Essbase connectivity yesterday, i thought i would test out the connectivity of BI Publisher and Hyperion Essbase through BI EE metadata and Answers. I started out under the impression that the performance would either be slow or there would be some hiccups on the way. But to my surprise, the connectivity was so seamless that it gave me the impression that BIP itself is using XMLA to connect to Essbase( i am not sure whether there are plans for supporting XMLA directly from BIP). I used the same cube that i had built yesterday here which contained a ragged hierarchy on the products dimension. As you would probably know, there are 2 ways of connectivity from BI Publisher to BI EE. One is by firing a query on the BI Server and the other is by using an existing Answers report. Lets try both of them today to find out how the connectivity actually works. Lets start first with the BI Server connectivity. So, create a simple BI Publisher report and in the data source use “Oracle BI EE”. And in the query use “Sql Query”.

    

Click on the Query builder and choose your Subject Area ( in our case the SA containing the Hyperion objects). Choose the 3rd level and the measure

    

If you notice, you would get a query like this

 select  PRODUCTS.Gen3,PRODUCTS as Gen3,PRODUCTS,
  Shblog.AMOUNT_SOLD as AMOUNT_SOLD
 from  SH_BSO1.Shblog Shblog,
  SH_BSO1.PRODUCTS PRODUCTS

Unfortunately, BI Publisher is not aware of Hyperion Essbase modelling in BI Server and hence does not encapsulate all the columns within double quotes. The above query would only give an error. So, change the above query to the one below

 select  "PRODUCTS"."Gen3,PRODUCTS" as "Gen3,PRODUCTS",
  Shblog.AMOUNT_SOLD as AMOUNT_SOLD
 from  SH_BSO1.Shblog Shblog,
  SH_BSO1.PRODUCTS PRODUCTS
 where "PRODUCTS"."Gen4,PRODUCTS" is not null

Now, try viewing the data. So far so good.

    

Now all we need to do is to add templates to this report and it works like a breeze.

    

    

Lets try the other means of connectivity which is by using an Answers request as the data source.

    

Add a template to this data source and there you go. A simple BIP report using Essbase as the data source.

    

Very nice!!!

Posted in All Posts, Bi Publisher, Hyperion Essbase, OBI EE Plus | 1 Comment »

Oracle BI EE 10.1.3.3.2 - Handling Ragged Hierarchies in Hyperion Essbase

Posted by Venkatakrishnan J on April 9, 2008

I am currently at a client location wherein we are testing out the BI EE and Hyperion Essbase connectivity. One of the questions that i got from the client was how does BI EE handle the ragged hierarchies of Hyperion Essbase. This was a pretty interesting question considering the fact that BI EE in itself cannot handle ragged hierarchies by default. Hence, i thought of testing this out with a simple Essbase cube. Lets start with a simple cube containing the following dimensions

1. Product Dimension (This would contain a simple ragged hierarchy).
2. Channel Dimension
3. Account Dimension

Hierarchies in the above dimensions is given below

    

So, the first step is to create a OLAP Model using Hyperion Integration Services. The model would look something like the one shown below

    

Ensure that you have created the account dimension. Save the OLAP Model. Now, create a metaoutline as shown below.

······

Once this is done, load the cube.

······

······

Once this is done, import this cube using BI EE.

······

······

Once imported, you will notice that BI EE would have imported the ragged product hierarchy as though it is a normal hierarchy.

······

Now, drag and drop this data source into the BM and Presentation layers. Then create a simple report out of this cube.

    

If you see above, i have included the first 2 levels of the hierarchy in the report. If you click on any of the Categories like Photo, you would get the corresponding sub-categories.

    

But if you click on any Product name which has no third level then it will give you no data which should not be the case.

    

Also, if you create a simple report containing all the levels, then you would see that all values which have all the 4 levels i.e all product names would be filtered which should not be the case again.

    

Well, one of the main reasons why the above happens is that BI EE thinks that all hierarchies are balanced by default. Hence when you pull in all the columns it removes the unbalanced columns out of the report. In order to circumvent this, go to the Administrator and change the Hierarchy type to “Unbalanced” in the physical layer.

    

Now, if you go back and check the report, you would be able to even drill on the product names. But the lower levels would all be null as expected.

    

    

Very nice indeed.


AddThis social bookmarking image button

Posted in All Posts, Hyperion Essbase, OBI EE Plus | 2 Comments »

Oracle BI EE 10.1.3.3/2 - Automating import of Users/Groups into Repository using UDML

Posted by Venkatakrishnan J on April 8, 2008

In my last blog entry here, we saw how to go about using UDML to automate the process of repository migration from Development to Test/Prod instances. Along, the same lines lets look at another interesting feature of UDML that would allow us to automate the process of importing Users/Groups automatically into the Repository. For example, consider a case wherein you have a list of users stored inside a database table. But you would like these users to be imported into the repository since you are planning to use repository authentication instead of external table authentication. Also, you do not want to create each of these users manually one by one. In such a case, UDML can come in very handy. The other scenario where this can be useful is when you are using LDAP/OID authentication. In such a scenario, you would need all the LDAP groups to be manually defined inside the repository. UDML again can come in very handy to automatically import all the groups into the repository. Lets try out the first example (importing users from a database table).

Lets start with a simple table containing only the list of users whom we need inside the repository.

······

This is nothing but a simple table containing around 10 users. Now, the idea is to import these users automatically into the repository. In order to do this, lets start with the below script (Thanks to Gerard Braat for this nice little simple tip in one of our internal email lists).

SELECT ‘DECLARE USER “‘||username||’” AS “‘||username||’” UPGRADE ID 1121 FULL NAME {} PASSWORD ”welcome1” NEVER EXPIRES
 PRIVILEGES ( READ);’ from rep_users

Just fire this from sql developer or from sqlplus with spool on to extract the resultant output into a physical file. You should get the output as shown below

······

If you want you can have different random passwords for each of the users. But this should give you an idea. Similarly, you can write a simple function which can retrive the groups from within OID. Now save the above file and fire the below command.

D:\oracle\OracleBI\server\Bin>nqudmlexec -U Administrator -P Administrator -I “D:\oracle\OracleBI\server\Sample\nqUDMLExec\User Import\userImport.udml” -B “D:\oracle\OracleBI\server\Sample\nqUDMLExec\User Import\BeforeUserImport.rpd” -O “D:\oracle\OracleBI\server\SamplenqUDMLExec\User Import\AfterUserImport.rpd”

······

Now you should get a repository with all the users automatically imported into the repository.

······

Another simple feature but can be very useful in a lot of situations.

Posted in All Posts, OBI EE Plus | 7 Comments »

Oracle BI EE 10.1.3.3/2 - UDML to automate repository Updates - Migration of Repositories from Development to Test/Production Environment

Posted by Venkatakrishnan J on April 4, 2008

One of the very important features of BI EE is its ability to expose the entire repository in the form of UDML. There are 2 utilities that are available for any user to expose the repository as UDML. They are nqudmlgen.exe and nqudmlexec.exe. Though the use of UDML is not supported by Oracle support, this can come in very handly in many situations. Before proceeding further i would recommend everyone to go through Mark’s blog entry here first which has details on what these utilities can do. One of the major advantages of these utilities is to streamline the process of migrating from Development to Test or Production environments. For example, when we migrate from Development to Test or Production there would be changes in Variable default values, Users, Connection Pool entries etc. Typically the methodology to update these values is to open up the Admin tool(from a windows box) and make the changes manually. But this can become very cumbersome and error prone as and when the number of changes involved become more and more. In order to automate this process of repository migration, the above utiltity nqudmlexec.exe can be very handy. Lets look at an example of how to automate the process of repository migration.

Consider the following scenario,

······

As you see above, there are 2 instances of BI EE. I have oversimplified the differences in the repositories of the Dev and Test machines. But this should give you an idea of the changes that you might encounter while moving from a dev environment to a test environment. So the changes that we have to make on the Development Machine’s repository (to move it to a test instance) are as follows

1.···Change the default value of repository variable BI_EE_HOME.
2.···Remove users B and C.
3.···Update the tnsnames entry of the connection Pool from ORCL to SALES.

In order to achieve this lets start with the first one (to change the repositor variable BI_EE_HOME value. In order to do this, first generate the UDML of the development repository using nqUDMLgen.exe.

nqudmlgen -U Administrator -P Administrator -R D:\oracle\OracleBI\server\Sample\nqUDMLExec\Dev_Machine.rpd -O D:\oracle\OracleBI\server\Sample\nqUDMLExec\Dev_Machine.UDML

······

Open this UDML file and search for CREATE RP VARIABLE “BI_EE_HOME”. This will give you the line containing the command for updating/creating a repository variable. So your command would look like this

DECLARE RP VARIABLE “BI_EE_HOME” AS “BI_EE_HOME” UPGRADE ID 817 EXPRESSION {’D:\\oracle\\OracleBI’} PRIVILEGES ( READ);

······

Change the above command to reflect the values in the test machine. i.e.

DECLARE RP VARIABLE “BI_EE_HOME” AS “BI_EE_HOME” UPGRADE ID 817 EXPRESSION {’/u01/oracle/OracleBI’} PRIVILEGES ( READ);

Copy this command into a text editor. Now, open the development repository and click on Tools - Query Repository. Query all the users and find the ids of the users of B and C (which we do not need in the test repository).

······

Now, add the below 2 commands to the above DECLARE command in the text editor

DELETE 1501:1019;
DELETE 1501:1020;

Once this is done, open the UDML file generated in the first step and search for DECLARE CONNECTION POOL “ORCL”. This will give you the command for updating/creating the desired connection pool.

DECLARE CONNECTION POOL “ORCL”.”Connection Pool” AS “Connection Pool” UPGRADE ID 831
DATA SOURCE {ORCL}
TIME OUT 300
MAX CONNECTIONS 10
TYPE ‘OCI10G’
USER ’sh’
PASSWORD ‘D7EDED84BC624A917F5B462A4DCA05CDCE256EEEEEDC97D54A286E822D97C35C7AD5C43AD4F2A09EAC4D07C3A079829F’
SHARED LOGIN
CONNECTIONS TO SAME URI 10
OUTPUT TYPE XML
HEADER PATH {D:\\oracle\\OracleBI\\server\\config\\NQSQueryHeader.xml}
TRAILER PATH {D:\\oracle\\OracleBI\\server\\config\\NQSQueryTrailer.xml}
BULK INSERT BUFFER SIZE 32768 TRANSACTION BOUNDARY 10
TEMP TABLE PREFIX {TT} OWNER {}
PRIVILEGES ( READ);

Change the above command according the values in the test machine and append it to the other commands that we used above. So, our command file would look like this

DECLARE RP VARIABLE “BI_EE_HOME” AS “BI_EE_HOME” UPGRADE ID 817 EXPRESSION {’/u01/oracle/OracleBI’} PRIVILEGES ( READ);

DELETE 1501:1019;
DELETE 1501:1020;

DECLARE CONNECTION POOL “ORCL”.”Connection Pool” AS “Connection Pool” UPGRADE ID 831
DATA SOURCE {SALES}
TIME OUT 300
MAX CONNECTIONS 10
TYPE ‘OCI10G’
USER ’sh’
PASSWORD ‘D7EDED84BC624A917F5B462A4DCA05CDCE256EEEEEDC97D54A286E822D97C35C7AD5C43AD4F2A09EAC4D07C3A079829F’
SHARED LOGIN
CONNECTIONS TO SAME URI 10
OUTPUT TYPE XML
HEADER PATH {D:\\oracle\\OracleBI\\server\\config\\NQSQueryHeader.xml}
TRAILER PATH {D:\\oracle\\OracleBI\\server\\config\\NQSQueryTrailer.xml}
BULK INSERT BUFFER SIZE 32768 TRANSACTION BOUNDARY 10
TEMP TABLE PREFIX {TT} OWNER {}
PRIVILEGES ( READ);

Save this file. Now, invoke the nqudmlexec to update the Development repository with the UDML command file.

nqudmlexec -U Administrator -P Administrator -I D:\oracle\OracleBI\server\Sample\nqUDMLExec\Migration_UDML.UDML -B D:\oracle\OracleBI\server\Sample\nqUDMLExec\Dev_Machine.rpd -O D:\oracle\OracleBI\server\Sample\nqUDMLExec\Test_Machine.rpd

······

Now, after the execution of the above command, you would see a new repository called as Test_Repository which would contain the changes.

······

······

······

Posted in All Posts, OBI EE Plus | 4 Comments »