tag:blogger.com,1999:blog-75693851679184040482024-03-13T10:22:29.212-05:00Oracle BI Blog - EPM, Business Intelligence, and OBIEETips, Tricks, Tutorials, and more... A detailed look at Oracle's Business Intelligence product called Oracle Business Intelligence Enterprise Edition (OBIEE).Brian Ferinhttp://www.blogger.com/profile/04248805013232726191noreply@blogger.comBlogger219125tag:blogger.com,1999:blog-7569385167918404048.post-8145060164162273002011-02-07T07:41:00.005-06:002011-02-07T07:48:05.742-06:00Working with the Master-Detail Report Feature of OBI 11g (pt 3)The final installment of this series will look at configuring detail views to listen to multiple event channels.<br /><br />My first step will be to create a new Master View analysis. I am going to create a simple tabular view as my second master view including the Qtr column I have used previously for my data event driver. I have set the Channel name to MDS3 in the same way I configure my first master view.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKtMwx0qQTcE01YTKkuVW_UU_8xQEFrucg01_6Wg8EHw9GWD9aDv2OPTGEHmysUm7IU4eijfw2kksP6imTUEdCRZ62-tdj0GXvGq3m3EFpYu0_Le9uVViGszTxXXpuX6YKpB06HhlUhKw/s1600/pic1.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 142px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKtMwx0qQTcE01YTKkuVW_UU_8xQEFrucg01_6Wg8EHw9GWD9aDv2OPTGEHmysUm7IU4eijfw2kksP6imTUEdCRZ62-tdj0GXvGq3m3EFpYu0_Le9uVViGszTxXXpuX6YKpB06HhlUhKw/s320/pic1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5570943253786701522" /></a><br /><br />I have saved that analysis and now want to edit 1 of my detail views to listen on this channel as well as the MDS2 channel it is currently listening on.<br /><br />Just a side note: If you have been following this series, you will notice the view names have changed as well as the view layout on the dashboard page from my previous posts. I have renamed my views and reorganized them on the dashboard to make things a little clearer. Other than the changes I have outlined here, the other views remain unchanged.<br /><br />So, the detail view I decided to modify is the second one I created which has the pie chart. Opening the pie chart view in the editor window and opening the properties for it, I have added my new channel to the event channel. Notice the channels are separated by a comma. With that change made, I then save this analysis.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6Wh5Xouze4geJAsvVYT88gpGJe0FLVKifnTxhgjzs3qEzFAlGZrf9Z_ikqtznCwqMgq6uG4m1CvwphQRIf4AHYi5QNl-bvSwIfkiKQgUfkn8x8pvBkcO2X2vmjd0ayJteG6wnRnI_NF0/s1600/pic2.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 209px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6Wh5Xouze4geJAsvVYT88gpGJe0FLVKifnTxhgjzs3qEzFAlGZrf9Z_ikqtznCwqMgq6uG4m1CvwphQRIf4AHYi5QNl-bvSwIfkiKQgUfkn8x8pvBkcO2X2vmjd0ayJteG6wnRnI_NF0/s320/pic2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5570943428129896626" /></a><br /><br />Adding the new Master view to my dashboard page, I am ready to test this new functionality.<br /><br />Clicking on the 2008 Q2 cell from my first master view, both detail views respond with the Qtr column slider moving appropriately.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixdlXK3zWNooLuKcGpLc3uNZCLkMO_Mw_fHXK8jKMU9cXvvoIpTA_hH8B6F5HwFd0hK7kwLFbOoXSufrFS0LMmWAML_YaalaXA_weDhM1Usl1DUkn0LM2TSaSH2lo6QL8z6mvDhhJmo7U/s1600/pic3.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 168px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixdlXK3zWNooLuKcGpLc3uNZCLkMO_Mw_fHXK8jKMU9cXvvoIpTA_hH8B6F5HwFd0hK7kwLFbOoXSufrFS0LMmWAML_YaalaXA_weDhM1Usl1DUkn0LM2TSaSH2lo6QL8z6mvDhhJmo7U/s320/pic3.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5570943568646675794" /></a><br /><br />I now click on the 2008 Q3 cell on my second master view, on the detail pie chart view does respond as expected with the Qtr slider moving to the appropriate value while the other detail view remains unchanged.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMKeaLXdBc7llNtMPaDptjtQ_Lz3CmWtcRJAHtIEkv-byYU_QhwELLgTGzf6g7Uq7vGjzpJOQh00BwYxpmOPnRcnJ6Rn8gArEwWLXIGTI7h88hNHTB4Zur42Clmsmek_UtjvXm9BnG3aE/s1600/pic4.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 170px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMKeaLXdBc7llNtMPaDptjtQ_Lz3CmWtcRJAHtIEkv-byYU_QhwELLgTGzf6g7Uq7vGjzpJOQh00BwYxpmOPnRcnJ6Rn8gArEwWLXIGTI7h88hNHTB4Zur42Clmsmek_UtjvXm9BnG3aE/s320/pic4.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5570943732113140514" /></a><br /><br />Thus we can see that a detail view can listen to multiple events from different master views.<br /><br />There is actually more to learn and do with Master-Detail links but that is a different discussion as it involves extending OBI with some custom code. I will leave that for a later time.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-24130960897190226282011-01-31T14:23:00.004-06:002011-01-31T14:37:17.867-06:00Working with the Master-Detail Report Feature of OBI 11g (pt 2)In previous part of this series, I stepped through how to configure a Master-Detail report link when using the same analysis criteria to create the master and detail views. However, what if we want to create a totally independent detail view based on different criteria. Can we link the Master view from 1 analysis to the Detail view of another analysis?<br /><br />Let’s see.<br /><br />We will the Master view we created previously; so, we need to first create a new, independent Detail view and set our Event channel, the Event channel we used previously was MDS2.<br /><br />Our event channel on our master view is driven by the “Per Name Qtr” so we need this column on our new detail view so that it can accept and act on the value being passed.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQ6EwCuuT9DqYwlFzACkYi-G5YbCIa9kkjbLJkfYxxutz1nJ9QUkDkuPEFAl0pFOqr3gNnbcSGEW82XiiuBQ1H_FQwJTqrCZ0e8s2hibw6ftnz466RopoUfKnaGlPLw7Twq8v5XEwKr0E/s1600/pic1.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 127px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQ6EwCuuT9DqYwlFzACkYi-G5YbCIa9kkjbLJkfYxxutz1nJ9QUkDkuPEFAl0pFOqr3gNnbcSGEW82XiiuBQ1H_FQwJTqrCZ0e8s2hibw6ftnz466RopoUfKnaGlPLw7Twq8v5XEwKr0E/s320/pic1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5568449770004286914" /></a><br /><br />We will use a pie chart view for our detail view. With the view created, we can now set the Event channel through the view’s property window. We are using the slider again for the Quarter to make it easy to see the change.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmcixJ8HMM5VqrAIKAGHx2OVCbdZCioSNskJSTm-pc_9-i552Za1C-LMMc_ijRMadVhRBJOwgmbWyueIJZdKOEFyrRdC1uhTpxBrXf8r5KUmpd4dKolZtMMi0mFCyXrRALbpZx_DkDbcg/s1600/pic2.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 143px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmcixJ8HMM5VqrAIKAGHx2OVCbdZCioSNskJSTm-pc_9-i552Za1C-LMMc_ijRMadVhRBJOwgmbWyueIJZdKOEFyrRdC1uhTpxBrXf8r5KUmpd4dKolZtMMi0mFCyXrRALbpZx_DkDbcg/s320/pic2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5568449953813310690" /></a><br /><br />With our new detail view created and configured to listen on the same channel as our master view we will add the view to our dashboard and check out if it works as we hope.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTrqAS6VdF-SUoW_aP78Y_bmcMTAXMrTXHfTU5rtwLFTjZCuRf-Rj2yBPL2Ki5Qd63aP72DsDtvR4BsTly4WBsmB1zws5l2aWsTpxqpABf0zvAakoqoInNGYJzWRBv5ADHugi8xUl-m4U/s1600/pic3.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 178px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTrqAS6VdF-SUoW_aP78Y_bmcMTAXMrTXHfTU5rtwLFTjZCuRf-Rj2yBPL2Ki5Qd63aP72DsDtvR4BsTly4WBsmB1zws5l2aWsTpxqpABf0zvAakoqoInNGYJzWRBv5ADHugi8xUl-m4U/s320/pic3.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5568450137317842690" /></a><br /><br />So, we have now shown that the detail view of a Master-Detail link does not need to come from the same report criteria as the master view.<br /><br />I did come across an issue when using Master-Detail links and setting up a detail view to listen on the event channel, but configuring the layout of the detail view to not allow it to respond correctly. For example, I added a tabular view to my Master-Detail dashboard but placed the Qtr column in the “section” area of the layout. The report displayed all 4 quarters when I issued the event and my other detail views responded as expected. However when I tried issuing a subsequent event, none of the detail reports would respond. For the tabular view to respond correctly to an event, the column accepting the event must be placed in the “page” area of the view layout. <br /><br />Here is a table containing specifics about views being used as detail views.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii05VfvvofzChi1CN8JSt5tmaYVTcdsiyH56osGSTTjLgjIDRUig4MzcOfridNmtbVN8SJKmVDABXVsSBaSTUVr4Xpru3zf_h63vLicnceVkor7AGbosxVg_u4c8WRLX3T5GHkF3HQ2Ek/s1600/pic4.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 78px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii05VfvvofzChi1CN8JSt5tmaYVTcdsiyH56osGSTTjLgjIDRUig4MzcOfridNmtbVN8SJKmVDABXVsSBaSTUVr4Xpru3zf_h63vLicnceVkor7AGbosxVg_u4c8WRLX3T5GHkF3HQ2Ek/s320/pic4.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5568451651537005346" /></a>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-57696314097566252012011-01-31T10:28:00.018-06:002011-01-31T12:06:05.548-06:00Answers Dashboard Reports: Directory Structure Best PracticesWhen developing reports and organizing them on dashboards, it is important to keep the reports named and grouped in a way that is consistent and intuitive, making life easier for yourself and others who may work with them in the future.<br /><br />1. Use a Consistent Naming Convention<br /><br /><ul><li><p>Use names that are descriptive but concise</p></li><li><p>Include a theme, dashboard topic or subject area in report names, such as AR, Bonus Goals, or Executive Summary to communicate the general content</p></li><li><div align="justify">Using a theme, dashboard topic or subject area consistently at the beginning of report names can make it easier to organize reports, since those with similar names will be listed together within the directory and will appear in alphabetical order</div></li><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVw9o522mS3wFXy90p_dW8uSV56akPzPg7dK7jQ3WIp2jECHsVwNxdl2ct0d8ivNX3TdqMVsFbBazbv4SrQSxZA8DbxokH9OPj8WpZDai3hL_H8h1EF3adifM-uaglAJIwaqi51EgpVbQ/s1600/Naming.JPG"><img style="MARGIN: 0px 0px 10px 10px; WIDTH: 320px; FLOAT: right; HEIGHT: 96px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5568392146952167170" border="0" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVw9o522mS3wFXy90p_dW8uSV56akPzPg7dK7jQ3WIp2jECHsVwNxdl2ct0d8ivNX3TdqMVsFbBazbv4SrQSxZA8DbxokH9OPj8WpZDai3hL_H8h1EF3adifM-uaglAJIwaqi51EgpVbQ/s320/Naming.JPG" /></a><br /><li>Include a general description of what is in the report, such as Accounts Past Due or Commissions by Region, to make it clear what is contained in the report</li><br /><li>Full report names may look something like this: "AR Accounts Past Due" or "Sales Commissions by Region"</li><br /><li>Additional detail may be added to the title if there are different variations, such as "AR Accounts Past Due (Top Ten)" or "Sales Commissions by Region Year to Date"</li><br /><li>Use abbreviations for generally accepted business terms or terms used within your organization, such as "AR" for "Accounts Receivable" or "YTD" for "Year to Date"</li></ul><p>2. Create folders for each dashboard page and/or tab to make the reports easier to find for updating and editing</p><ul><li>If using identical reports on more than one dashboard, both can refer to the same report, or a duplicate can be created</li><br /><li><div align="justify">If the report will be customized or changed for use on another dashboard, make another copy so the original version does not get changed inadvertently. If there is more than one version, especially in the same directory, make the names descriptive so it is easy to tell which version is which, e.g. "Accounts Past Due by Month" or "Accounts Past Due YTD"</div></li></ul><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaP44idDfzDo7mM88TlW1u56AzkXxH4ubLKKTSinsu9Nuw49U3iuIgJ1ONiZ5BimQhFsXPhrTs4jKCUUKp5IQSJeuLV2hCuSkFdDoPvo3c2wkNz_E88GgzdDh_oXOkZpaFU4a8IdLAlUE/s1600/2ReportVersions.JPG"><img style="MARGIN: 0px 10px 10px 0px; WIDTH: 320px; FLOAT: left; HEIGHT: 233px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5568410178846088674" border="0" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaP44idDfzDo7mM88TlW1u56AzkXxH4ubLKKTSinsu9Nuw49U3iuIgJ1ONiZ5BimQhFsXPhrTs4jKCUUKp5IQSJeuLV2hCuSkFdDoPvo3c2wkNz_E88GgzdDh_oXOkZpaFU4a8IdLAlUE/s320/2ReportVersions.JPG" /></a><br /><br /><br /><p></p><br /><br /><br /><p></p><br /><br /><br /><p></p><br /><br /><br /><br /><p></p><p></p><p>3. Housekeeping</p><ul><li>Keep only the most current version and delete previous copies that are no longer used. This makes organization easier, makes it easier to find what is needed, and helps prevent the inadvertent use of an incorrect or outdated version of a report</li></ul>Kelly Christiansenhttp://www.blogger.com/profile/04525531130957647427noreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-41709873431632316262011-01-27T10:05:00.012-06:002011-01-27T10:28:00.553-06:00Working with the Master-Detail Report Feature of OBI 11g (pt. 1)One of the new features included in OBI 11g is the Master-Detail linking feature. The Master-Detail linking allows you to establish a relationship between 2 or more views; one view is called the Master and will drive changes in 1 or more views called detail views. <br /><br />You can think of a Master-Detail relationship in a similar manner that you would when navigating from 1 report to another works, but you do not lose sight of the master view.<br /><br />So, how do we implement a Master-Detail link?<br /><br />We start out by defining an analysis that will be used to create the master view. Here we have created a simple analysis and filtered for Year = 2008.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQeC8RpGltLJDnncJcqkNDbUZ9WWkjZifKSpNOtjDMiz2-BnrHJyK9sLXQiKRKq7N-IJyYgr1PRxSJ1tVQ-mPjNXWJPOynUPJF-hux0vAq9_pA5g58Tb5Il-DUTpce6mCV_pb-21onFGc/s1600/pic1.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 135px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQeC8RpGltLJDnncJcqkNDbUZ9WWkjZifKSpNOtjDMiz2-BnrHJyK9sLXQiKRKq7N-IJyYgr1PRxSJ1tVQ-mPjNXWJPOynUPJF-hux0vAq9_pA5g58Tb5Il-DUTpce6mCV_pb-21onFGc/s320/pic1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5566901871879382946" /></a><br /><br />Now we want to configure this analysis so that we can create our master view. We will select the “Per Name Qtr” column as the data driver; so, we open the Column Properties window of this column and move to the Interaction tab.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg32kt5lu6km4zpfxQlY6Tche-i7aYX3EGttWk_72QD36FWddy9bkapSGBaFZLD4fJW-imDX5GuW6oMO1E3xuTF105neBtuNF-9cOGMmMRtBqJiWsuh3yiyBEyGJsyooYY0LnNkC-Jzc5I/s1600/pic2.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 262px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg32kt5lu6km4zpfxQlY6Tche-i7aYX3EGttWk_72QD36FWddy9bkapSGBaFZLD4fJW-imDX5GuW6oMO1E3xuTF105neBtuNF-9cOGMmMRtBqJiWsuh3yiyBEyGJsyooYY0LnNkC-Jzc5I/s320/pic2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5566902002839742434" /></a><br /><br />Here we select the “Send Master-Detail Events” under the Value Primary Interaction. Once you select this option a secondary edit box labeled “Specify channel” will be made available. You can enter any unique identifier in this box. For our example, we have entered “MDS2”.<br /><br />Unlike some interaction options like Action Links” which is available on both Column Heading and Value, the Master-Detail option is only available on the Value. This has to do with how a Master-Detail link functions. The value of the cell you click on is passed to the detail view(s); thus, a column heading cannot be used.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitlzUKRvqtuidO3wE_a6EoelGtbxrRzTVhbP2n7939szpABBsj6XvbJku98vKC1q1fzSYvdqHAxXahR28tUHc7eQ66cgaaLTGxgXu7BEcf1Ry0N1pr0jKfbABS4TX5WuDRk6OwBNQhnmo/s1600/pic3.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 183px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitlzUKRvqtuidO3wE_a6EoelGtbxrRzTVhbP2n7939szpABBsj6XvbJku98vKC1q1fzSYvdqHAxXahR28tUHc7eQ66cgaaLTGxgXu7BEcf1Ry0N1pr0jKfbABS4TX5WuDRk6OwBNQhnmo/s320/pic3.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5566902178081531138" /></a><br /><br />We now navigate to Results and create the view we want as our Master view. Here we are using a simple tabular view. Notice that our “Per Name Qtr” values do not show the typical hyperlink that you would expect from the time dimension column.<br /> <br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5YvFTuWWZnHysQloc6jtFzQKdoSlbrnx7umKG0vwx0Yi5jRdBoseYHRjI-K_XbYw1_uqCBw5Yfecm4XX3IB_9Qw3a9A1RhRKLEhmvD_MmKUdyNm0VNrUH-LBq1B-d-tZywXLIvwffu58/s1600/pic4.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 168px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5YvFTuWWZnHysQloc6jtFzQKdoSlbrnx7umKG0vwx0Yi5jRdBoseYHRjI-K_XbYw1_uqCBw5Yfecm4XX3IB_9Qw3a9A1RhRKLEhmvD_MmKUdyNm0VNrUH-LBq1B-d-tZywXLIvwffu58/s320/pic4.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5566902445384053666" /></a><br /><br />Now we need to create a detailed view that will listen to events from our master view. To do this, we will add an additional graphical view from the same analysis. Our graphical view will look at Revenue by Brand with our Quarter values placed into a view slider.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjW8pbLlLBpzu_Pp3KD-WY3Xer6loqyunzBubKRYLaQue7bvUYvgXiirou7YXG8w3T5PATl-GzWg6PSmPCAWoemFF6vmhQnHjZDjXQ1pWl1lWyvpNvqVMJLd6ZmMvBVM_XFlRzD6AOavvg/s1600/pic5.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 162px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjW8pbLlLBpzu_Pp3KD-WY3Xer6loqyunzBubKRYLaQue7bvUYvgXiirou7YXG8w3T5PATl-GzWg6PSmPCAWoemFF6vmhQnHjZDjXQ1pWl1lWyvpNvqVMJLd6ZmMvBVM_XFlRzD6AOavvg/s320/pic5.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5566902638311179314" /></a><br /> <br />With our graphical view in edit mode, we need to open the properties window.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGguj2n7PPJWj7byjbRsW_aXUj-Gn6iLMvCLozO-0HupT3KlVwgdowyuRDydz_uEbFfD6Q1yqMHRsqUaNqRQYpiuMeY2RAoxu6yNqSsMq6j98ihpRzDYPuZKzsWTjm0z4y7QTau3Ipi-M/s1600/pic6.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 202px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGguj2n7PPJWj7byjbRsW_aXUj-Gn6iLMvCLozO-0HupT3KlVwgdowyuRDydz_uEbFfD6Q1yqMHRsqUaNqRQYpiuMeY2RAoxu6yNqSsMq6j98ihpRzDYPuZKzsWTjm0z4y7QTau3Ipi-M/s320/pic6.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5566902792294774898" /></a><br /><br />One of the properties available to us is the “Listen to Master-Detail Events” checkbox. By checking this box, we can define this view to be a detailed view for the event channel we want. In our case, we will enter the value “MDS2” as our event channel which is the same value we defined on the “Per Name Qtr” column properties which is our data driver on the master view.<br /><br />We want to validate our Master-Detail report is working as expected. We will do this by placing the compound layout on to a dashboard page. I have edited the compound layout so that my views, master and detail, are side-by-side. When you click on a cell under the “Per Name Qtr”; such as, “2008 Q2” on the tabular master view, the secondary detail view (graph) accepts the Qtr value and the slider automatically moves to the selected value.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgC3zUcfgiANAn4f5YROfUFM4dyvp6CeiL6QM6yCrrcRoFD7zSyuZCoLOCwXNy9PDfH_N2iQm1_iK6U9V8w8Oln54m4-u8hGWazZ_SUKDpF58VvEzGmT72ulXL32-VpjxGmeatBBsnku-k/s1600/pic7.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 107px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgC3zUcfgiANAn4f5YROfUFM4dyvp6CeiL6QM6yCrrcRoFD7zSyuZCoLOCwXNy9PDfH_N2iQm1_iK6U9V8w8Oln54m4-u8hGWazZ_SUKDpF58VvEzGmT72ulXL32-VpjxGmeatBBsnku-k/s320/pic7.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5566902959965801762" /></a><br /> <br />We will continue to explore the Master-Detail link by looking at more advanced features of this link in my next entry.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-994087943382567352010-12-27T22:35:00.002-06:002010-12-28T17:01:04.117-06:00Three dashboard ideas for finance executives, a good read for those thinking of their organization’s strategy for the coming year…<p class="MsoNormal">On this holiday week I decided to dedicate this post to giving some thought to the challenges leaders of finance organizations face and to looking at them in terms of coming up with a short list of indicators that can be leveraged as they reflect on the ways to shape their team’s strategy in a way that maximizes their contribution and impact on the company this soon to come new year.</p> <p class="MsoNormal">To keep things simple and avoid taking too much of your holiday time this post focuses on three dashboard ideas that align values and traits of high performance teams and that are built in response to governance and strategic challenges common to many financial organizations. </p> <p class="MsoNormal">These dashboards can be easily implemented with Oracle Business Intelligence or other similar reporting tool.<span style="mso-spacerun:yes"> </span>My recommendation is to have the first iteration of your dashboard be as simple and concise as possible and build upon it as your needs and processes evolve.</p> <p class="MsoNormal"><o:p> </o:p></p> <h3>Discipline (IRR)</h3> <p class="MsoNormal"><o:p> </o:p></p> <p class="MsoNormal">One of the organizational values that are hardest to measure is the discipline that your overall organization exhibits when making strategic decisions. Measuring the return on capital allocations is a process common in large conglomerates that isn’t always transparent or free of political maneuvering. </p> <p class="MsoNormal">Deploying a simple dashboard that tracks the progress of large strategic projects in terms of both schedule and actual versus budgeted costs allows the office of the CFO to educate executives and managers in other areas on financial methodologies such as calculating the Internal Rate of Return (IRR) of a project or estimating the Total Cost of Ownership of a piece of equipment. </p> <p class="MsoNormal">Having a dashboard with Key Performance Indicators that measure the rate of return, and actual versus projected performance in terms of cost and schedule will help your organization bring more transparency to the process of deciding which projects will be funded and will help your counterparts in other areas of the business in improving their financial decision making skills.</p> <p class="MsoNormal"><o:p> </o:p></p> <h3>Efficiency (Time To Close)</h3> <p class="MsoNormal"><o:p> </o:p></p> <p class="MsoNormal">One other function that usually resides with the finance organization is the process of closing the books and preparing financial and management reports. This process which is, for the most part, simple and repetitive is implemented and managed very differently from company to company. These differences are often a result of industry specific accounting and differences in management style.</p> <p class="MsoNormal">The best way to save your staff late nights and weekends while delivering analysis and reports to your management faster might be as unorthodox and simple as breaking your closing process in the different tasks that compose it and tracking the time each of them takes to complete each month. You can start simply by writing the list on a white board and later on make the transition to a dashboard page that can be shared with all of your team.</p> <p class="MsoNormal">By understanding which components of your closing process take the most effort from your team you gain great visibility and thinker with the processes to shorten your cycle time. There have been corporations that implement daily reconciliation of their accounts therefore gaining the ability to detect unusual account activity much faster than if they had to wait for the bank statements to arrive in the mail.</p> <p class="MsoNormal">You can use the data in your closing cycle dashboard as a development opportunity for your staff by encouraging them to detect processes that exhibit a lot of variance from month to month and coming up with ways to proactively eliminate the causes of this variance.</p> <p class="MsoNormal"><o:p> </o:p></p> <h3>Value Creation</h3> <p class="MsoNormal"><o:p> </o:p></p> <p class="MsoNormal">With the economy signaling it is finally turning around towards recovery and finance and accounting staff job satisfaction at the lowest level in years it is time to identify top performers and give them opportunities to feel challenged and excel.</p> <p class="MsoNormal">It is in the best interest of finance leaders to create opportunities for their staff to get out of the routine of their day to day work and go work in teams within other functional areas of the organization by providing them with internal consulting on financial management and compliance best practices. This aligns very closely with the first dashboard idea, your staff can provide training and consulting to teams working on strategic projects being tracked on the IRR/Projects dashboard.</p> <p class="MsoNormal">The value created by these select members of your team can be tracked by the number of projects they are consulting for and the number of training and consulting hours they provide to other areas of your organization. This in turn can be used as a tool in the justification of any proactive compensation activity you might decide to undertake as you try to retain high performing employees in your team.</p> <p class="MsoNormal"><o:p> </o:p></p> <h3>Conclusion</h3> <p class="MsoNormal"><o:p> </o:p></p> <p class="MsoNormal">When planning your finance organization’s strategy for the year that is about to begin you can use the dashboard ideas in this article as tools that will allow you to communicate to your staff and to other functional areas and fellow executives what improvement is being made in the internal processes of your area and; most important, how is it that your team can be engaged as a partner in value creation. </p> <p class="MsoNormal">Please send your feedback and comments to <a href="mailto:Ignacio.delaTorre@biconsultinggroup.com">Ignacio.delaTorre@biconsultinggroup.com</a>, I’ll be very interested to hear your opinion and any additional ideas that might be useful to others reading this article.</p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-56824175083835783162010-12-07T22:33:00.001-06:002010-12-09T11:41:04.258-06:00Integrating Relational Databases with Essbase Studio<p><strong><em>Integrating Relational Databases with Essbase Studio</em></strong></p><br /><p>Because relational databases can store several terabytes of data, they offer nearly unlimited scalability. Multidimensional databases, generally smaller than relational databases, offer sophisticated analytic capabilities. By integrating a relational database with an Essbase database, you leverage the scalability of the relational database with the conceptual power of the multidimensional database.<br /><br/></p><br /><p>By default, when Essbase Studio creates an Essbase outline, it loads all member levels specified in the metaoutline into a multidimensional database. You can, however, set Essbase Studio to build to a specified member level (Hybrid Analysis) or build only to the dimension level (Advanced Relational Access). Building down to a specified level produces a smaller multidimensional database and a smaller Essbase outline.<br /><br/></p><br /><p>A source relational database can be integrated with an Essbase database by using XOLAP (extended online analytic processing). This is a variation on the role of OLAP in business intelligence. Specifically, XOLAP is an Essbase multidimensional database that stores only the outline metadata and retrieves data from a relational database at query time. XOLAP thus integrates with an Essbase database, leveraging the scalability of the relational database with the more sophisticated analytic capabilities of a multidimensional database.</p><br /><p><strong><em>Essbase Studio - Model Development Workflow</em></strong></p><br /><p><img src="http://lh5.ggpht.com/_MHF-wzR_IuQ/TQEUqcHCzZI/AAAAAAAAANI/-Iq2jgWRoDs/zrclip_010p4c32a3e4.png?imgmax=640" style="BORDER-BOTTOM: #000000 1px groove; BORDER-LEFT: #000000 1px groove; WIDTH: 347px; HEIGHT: 499px; BORDER-TOP: #000000 1px groove; BORDER-RIGHT: #000000 1px groove" height="604" width="517"/></p><br /><p style="TEXT-ALIGN: center"> </p><br /><p><strong><em>Some XOLAP Specifics</em></strong></p><br /><ul><br /><li>XOLAP (extended online analytic processing) is a variation on the role of OLAP in business intelligence. Specifically, XOLAP is an Essbase multidimensional database that stores only the outline metadata and retrieves data from a relational database at query time. XOLAP thus integrates a source relational database with an Essbase database, leveraging the scalability of the relational database with the more sophisticated analytic capabilities of a multidimensional database.</li><br /><li>OLAP and XOLAP store the metadata outline and the underlying data in different locations:</li><br /><li style="LIST-STYLE-TYPE: none"><br /><ul><br /><li>In OLAP, the metadata is located in the Essbase database, and the underlying data is also located in the Essbase database.</li><br /><li>In XOLAP, the metadata is located in the Essbase database while the underlying data remains in your source relational database.</li><br /></ul><br /></li><br /></ul><br /><ul><br /><li>The differences in the locations of the metadata and data are key to understanding how XOLAP can be of benefit because these differences affect the functionality of OLAP and XOLAP.</li><br /><li>OLAP lends itself to traditional relational data storage and data analysis. XOLAP lends itself to operations supported in mixed or "hybrid" environments such as Hybrid Analysis and Advanced Relational Access (familiar to users of Essbase and Essbase Studio). Many of the basic concepts of Hybrid Analysis and Advanced Relational Access have been folded into the functionality of XOLAP cubes in Oracle Essbase Studio.</li><br /></ul><br /><p><em><strong>XOLAP Workflow</strong></em></p><br /><p><img src="http://lh4.ggpht.com/_MHF-wzR_IuQ/TQEUq1PnyCI/AAAAAAAAANM/KxhoJ1usoGA/zrclip_011n351db8b4.png?imgmax=512" style="WIDTH: 359px; HEIGHT: 389px" height="410" width="383"/></p><br /><p>The workflow of data retrieval in an XOLAP environment is much like that of a non-XOLAP environment:<br /><br/></p><br /><ol><br /><li>The model is designated as XOLAP-enabled in Essbase Studio.</li><br /><li>The cube is deployed in Essbase Studio; however, no data is loaded at that time.</li><br /><li>The Essbase database is queried, using Smart View, Oracle Essbase Visual Explorer, or another reporting tool which can access an Essbase database.</li><br /><li>Essbase dynamically generates the required SQL to retrieve the data from the source relational database.</li><br /></ol><br /><p><strong><em>Integrating XOLAP with Traditional OLAP Sources</em></strong></p><br /><p><strong><em><img src="http://lh5.ggpht.com/_MHF-wzR_IuQ/TQEUrGXzEUI/AAAAAAAAANQ/TlxNNAaQsAI/zrclip_012n47ca7e0b.png?imgmax=800" style="WIDTH: 372px; HEIGHT: 266px" height="534" width="891"/></em></strong></p><br /><p>XOLAP has the following restrictions:</p><br /><ol><br /><li>No editing of an XOLAP cube is allowed. If you wish to modify an outline, you must, instead, create a new outline in Oracle Essbase Studio. XOLAP operations will not automatically incorporate any changes in the structures and the contents of the dimension tables after an outline is created.</li><br /><li>When derived text measures are used in cube schemas to build an Essbase model, XOLAP is not available for the model.</li><br /><li><strong>XOLAP can be used only with Aggregate Storage</strong>. The database is automatically duplicate-member enabled.</li><br /><li>XOLAP supports dimensions that do not have a corresponding schema-mapping in the catalog; however, in such dimensions, only one member can be a stored member.</li><br /></ol><br /><p><strong><em>Usages Not Supported in XOLAP</em></strong></p><br /><p>XOLAP does not support use of the following:</p><br /><ul><br /><li>Flat files</li><br /><li>Ragged hierarchies</li><br /><li>Alternate hierarchies</li><br /><li>Recursive hierarchies</li><br /><li>Calendar hierarchies</li><br /><li>Filters</li><br /><li>Typed measures</li><br /><li>User defined members at the leaf level</li><br /><li>Multiple relational data sources</li><br /></ul><br /><p><strong><em>Hybrid Analysis</em></strong></p><br /><p>Hybrid Analysis eliminates the need to load and store lower-level members and their data within the Essbase database. This feature gives Essbase the ability to operate with almost no practical limitation on outline size and provides for rapid transfer of data between Essbase databases and relational databases.<br /><br/><br />Hybrid Analysis integrates a relational database with an Essbase multidimensional database so that applications and reporting tools can retrieve data directly from both databases.</p><br /><p><strong><em>Data Flow for Hybrid Analysis</em></strong></p><br /><p><img src="http://lh5.ggpht.com/_MHF-wzR_IuQ/TQEUrbK2A9I/AAAAAAAAANU/TN9gLszYTjg/zrclip_013p6539b9f9.png?imgmax=800" style="WIDTH: 417px; HEIGHT: 277px" height="584" width="816"/></p><br /><ul><br /><li>The initial step in setting up XOLAP or Hybrid Analysis is to define the relational database as a XOLAP or Hybrid Analysis relational source.</li><br /></ul><br /><ol><br /><li>You define the XOLAP or Hybrid Analysis relational source in Essbase Studio. Through Essbase Studio, you first specify the relational data source for the OLAP model. The OLAP model is a schema that you create from tables and columns in the relational database. To build the model, Essbase Studio accesses the star schema of the relational database. Using the model, you define hierarchies and tag levels whose members are to be enabled for Hybrid Analysis. You then build the metaoutline, a template containing the structure and rules for creating the Essbase outline, down to the desired Hybrid Analysis level. The information enabling Hybrid Analysis is stored in the OLAP Metadata Catalog, which describes the nature, source, location, and type of data in the Hybrid Analysis relational source.</li><br /><li>Next, you perform a member load, which adds dimensions and members to the Essbase outline. At this point XOLAP databases are complete and can queried by a multitude of reporting tolls.</li><br /><li>For Hybrid Analysis databases, when the member load is complete, you must run a data load to populate the Essbase database with data.</li><br /></ol><br /><ul><br /><li>Applications and reporting tools, such as spreadsheets and Report Writer interfaces, can retrieve data directly from both databases using the dimension and member structure defined in the outline, Essbase determines the location of a member and then retrieves data from either the Essbase database or the Hybrid Analysis relational source if a Hybrid Analysis database and from the relational data source when a XOLAP model is specified.<br /><br/><br /><ul><br /><li>If the data resides in the Hybrid Analysis relational source, Essbase retrieves it through SQL commands.</li><br /><li>XOLAP also leverages transactional SQL to access data from the fact table at the time the query is initiated by the end user.<br /><br/></li><br /></ul><br /></li><br /><li>To modify the outline in Hybrid Analysis, you can use Outline Editor in Administration Services to enable or disable dimensions for Hybrid Analysis on an as-needed basis. Changes to metadata in XOLAP require a complete drop and rebuild of the Application and database through Essbase Studio</li><br /></ul><br /><p><strong><em>Comparison of Aggregate and Block Storage</em></strong></p><br /><p>Since XOLAP only supports the Aggregate Storage Kernel, it is pertinent to highlight the differences in ASO and BSO.</p><br /><p>Essbase provides an aggregate storage kernel as a persistence mechanism for multidimensional databases. Aggregate storage databases enable dramatic improvements in both database aggregation time and dimensional scalability. The aggregate storage (ASO) kernel is an alternative to the block storage (BSO) kernel. Aggregate storage databases typically address read-only, "rack and stack" applications that have large dimensionality, such as the following applications:<br /><br/></p><br /><ul><br /><li>Customer analysis. Data is analyzed from any dimension, and there are potentially millions of customers.</li><br /><li>Procurement analysis. Many products are tracked across many vendors.</li><br /><li>Logistics analysis. Near real-time updates of product shipments are provided.</li><br /></ul><br /><p>Aggregate storage applications, which differ from block storage applications in concept and design, have limitations that do not apply to block storage applications.</p><br /><p><strong><em>Inherent Differences between ASO and BSO</em></strong></p><br /><table width="350" style="FONT-FAMILY: Tahoma" border="5"><br /><thead><br /><tr><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Inherent Differences</th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Aggregate Storage</th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Block Storage</th><br /></tr><br /></thead><br /><tbody><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Storage Kernel</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Architecture that supports rapid aggregation, optimized to support high dimensionality and sparse data</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Multiple blocks defined by dense and sparse dimensions and their members, optimized for financial applications</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Physical Data Storage</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Through the Application Properties window, Tablespaces tab in Administration Services</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Through the Database Properties window, Storage tab in Administration Services</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Databases supported per application</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">One</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Several (one recommended)</td><br /></tr><br /></tbody><br /></table><br /><p><strong><em>Outline Differences with ASO and BSO</em></strong></p><br /><table width="350" style="FONT-FAMILY: Tahoma" border="5"><br /><thead><br /><tr><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Outline Functionality</th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Aggregate Storage</th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Block Storage</th><br /></tr><br /></thead><br /><tbody><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Multiple hierarchies enabled, dynamic hierarchy, or stored hierarchy designation</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Relevant</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Irrelevant</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Accounts dimensions and members on dynamic hierarchies</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Support with the following exceptions:<br /><br/><br />• No two-pass calculation</p><br /><p>• No association of attribute dimensions with the dimension tagged Accounts</p><br /><p>• Additional restrictions for shared members.</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Full support</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Members on stored hierarchies</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Support with the following exceptions:</p><br /><p>• Support for the ~ (no consolidation) operator (underneath label-only members only) and the + (addition) operator</p><br /><p>• Cannot have formulas</p><br /><p>• Restrictions on label only members</p><br /><p>• No Dynamic Time Series members</p><br /><p>• Stored hierarchy dimensions cannot have shared members. Stored hierarchies within a multiple hierarchies dimension can have shared members.</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Full support</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Member storage types</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt">Support with the following exceptions:<br /><br/></p><br /><p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt">• Dynamic Calc and Store not relevant<br /><br/></p><br /><p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt">• On stored hierarchies, two limitations if a member is label only:<br /><br/></p><br /><p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt">o All dimension members at the same level as the member must be label only<br /><br/></p><br /><p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt">o The parents of the member must be label only.</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Support for all member storage types in all types of dimensions except attribute dimensions</td><br /></tr><br /></tbody><br /></table><br /><p><strong><em>Calculation Differences between ASO and BSO</em></strong></p><br /><table width="350" style="FONT-FAMILY: Tahoma" border="5"><br /><thead><br /><tr style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Calculation Functionality</p><br /></th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Aggregate Storage</p><br /></th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Block Storage</th><br /></tr><br /></thead><br /><tbody><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Database calculation</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Aggregation of the database, which can be predefined by defining aggregate views</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Calculation script or outline consolidation</p><br /></td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Formulas</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Allowed with the following restrictions:</p><br /><p>Must be valid numeric value expressions written in MDX</p><br /><p>No support for Essbase calculation functions</p><br /><p>On dynamic hierarchy members, formulas are allowed without further restrictions</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Support for Essbase calculation functions</p><br /></td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Calculation scripts</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Not supported</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Supported</p><br /></td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Attribute calculations dimension</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Support for Sum</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Support for Sum, Count, Min, Max, and Average</p><br /></td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Calculation order</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Member formula calculation order can be defined by the user using the solve order member property</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Defined by the user in the outline consolidation order or in a calculation script</p><br /></td><br /></tr><br /></tbody><br /></table><br /><p><strong><em>Partitioning Differences between ASO and BSO</em></strong></p><br /><table width="350" style="FONT-FAMILY: Tahoma" border="5"><br /><thead><br /><tr><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Partitioning Functionality</p><br /></th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Aggregate Storage</p><br /></th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Block Storage</p><br /></th><br /></tr><br /></thead><br /><tbody><br /><tr style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Partitioning</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Supported with the following restrictions:</p><br /><p>No Outline Synchronization</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Fully supported</td><br /></tr><br /></tbody><br /></table><br /><p><strong><em>Data Load Differences between ASO and BSO</em></strong></p><br /><table width="350" style="FONT-FAMILY: Tahoma" border="5"><br /><thead><br /><tr><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Data Load Functionality</th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Aggregate Storage</th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Block Storage</th><br /></tr><br /></thead><br /><tbody><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Cells loaded through data loads</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Only level 0 cells whose values do not depend on formulas in the outline are loaded</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Cells at all levels can be loaded (except Dynamic Calc members)</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Update of database values</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">At the end of a data load, if an aggregation exists, the values in the aggregation are recalculated</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">No automatic update of values. To update data values, you must execute all necessary calculation scripts.</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Data load buffers</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">The loading of multiple data sources into aggregate storage databases is managed through temporary data load buffers.</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Not supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Atomic replacement of the contents of a database</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">When loading data into an aggregate storage database, you can replace the contents of the database or the contents of all incremental data slices in the database.</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Not supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Data slices</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Aggregate storage databases can contain multiple slices of data. Data slices can be merged.</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Not supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Dimension build for shared members</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Full support for parent-child build method. Duplicate generation (DUPGEN) build method limited to building alternate hierarchies up to generation 2 (DUPGEN2).</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Support for all build methods</td><br /></tr><br /><tr style="FONT-FAMILY: Tahoma"><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Loading data mapped to dates</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">In a date-time dimension, you can load data into level-0 members using supported date-format strings instead of member names.</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Date-time dimension type is not supported.</td><br /></tr><br /></tbody><br /></table><br /><p><strong><em>Query Differences between ASO and BSO</em></strong></p><br /><table width="350" style="FONT-FAMILY: Tahoma" border="5"><br /><thead><br /><tr style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Query Functionality</th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Aggregate Storage</th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Block Storage</th><br /></tr><br /></thead><br /><tbody><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Report Writer</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported, except for commands related to sparsity and density of data</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Fully supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Spreadsheet Add-in</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported, with limited ability to change data (write-back)</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Fully supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">API</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Export</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Support with the following restrictions:</p><br /><p>• Export of level 0 data only (no upper-level export)</p><br /><p>• No columnar export</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr style="FONT-SIZE: 12px"><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">MDX queries</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Queries on attribute members that are associated with non-level 0 members</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Returns values for descendants of the non-level 0 member.</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Returns missing for descendants of the non-level 0 member</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Queries on attribute members and shared members</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">A shared member automatically shares the attribute associations of its nonshared member</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">A shared member does not share the attribute associations of its nonshared member</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Query logging</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Not Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Query performance</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Considerations when querying data from a dimension that has multiple hierarchies.</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Hierarchies not relevant</td><br /></tr><br /></tbody><br /></table><br /><p><strong><em>Feature Differences between ASO and BSO</em></strong></p><br /><table width="350" style="FONT-FAMILY: Tahoma" border="5"><br /><thead><br /><tr><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Featues</th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Aggregate Storage</th><br /><th style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Block Storage</th><br /></tr><br /></thead><br /><tbody><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Aliases</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Currency Conversion</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Not Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Data Mining</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Not Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Hybrid Analysis</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Support with the following restriction: queries that contain a relational member and an Essbase member with a formula in the same query are not supported.</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Incremental Data Load</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">LROs</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Not Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Time Balance Reporting</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px"><br /><p>Support with the following restrictions:</p><br /><p>• Skip Zeros is not supported</p><br /><p>• Time dimension must contain at least one stored hierarchy</p><br /><p>• Shared members must be at level zero</p><br /></td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Triggers</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">After-update triggers supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">On-update triggers and after-update triggers supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Unicode</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Variance Reporting</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Not Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Date-time dimension type and linked attribute dimensions</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Supported</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Not Supported</td><br /></tr><br /><tr><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">User ability to change data (write-back)</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Transparent partition technique used to enable limited write-back</td><br /><td style="FONT-FAMILY: Tahoma; FONT-SIZE: 12px">Fully Supported</td><br /></tr><br /></tbody><br /></table><br /><p><strong><em>Links to Blogs written by BICG on XOLAP</em></strong></p><br /><p>Part 1 of the XOLAP blog<br /><br/><br /><a href="http://oraclebiblog.blogspot.com/2010/02/xolap-virtual-cubes-against-data.html" target="_blank" title="Part 1 of the XOLAP Blog">http://oraclebiblog.blogspot.com/2010/02/xolap-virtual-cubes-against-data.html</a></p><br /><p>Part 2 of the XOLAP blog<br /><br/><br /><a href="http://oraclebiblog.blogspot.com/2010/02/xolap-virtual-cubes-against-data_15.html" target="_blank" title="Part 2 of the XOLAP Blog">http://oraclebiblog.blogspot.com/2010/02/xolap-virtual-cubes-against-data_15.html</a></p>Rodney Adkinshttp://www.blogger.com/profile/09777406224024840807noreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-50760182755291493022010-12-03T13:54:00.007-06:002010-12-03T14:07:44.379-06:00OBI 11G Fusion Middleware Control (EM)<strong>Fusion Middleware Control:</strong><br />The Fusion Middleware Control console is used to monitor and start/stop various OBI components. It is located on the application server at http://localhost:7001/em. Much of the configuration of OBI that used to be done in the NQSConfig.ini files can now be done using this front end console, which in turns updates the NQSConfig.ini file. Things in the NQSConfig.ini file that are set by EM are noted in the file with '# This Configuration setting is managed by Oracle Business Intelligence Enterprise Manager'. The only thing I noticed that needs to be setup manually in the NQSConfig.ini file are:<br /><br />1. Usage Tracking <br />2. Dynamic Libraries <br />3. Query Optimization Flags <br />4. MDX Member Name Cache Section (SAP BW) <br />5. More specific General Settings where EM doesn't contain the level of detail required<br /> <br />The Fusion Middleware Control EM console has five tabs to manage the application. From the domain tree, expand Business Intelligence and click coreapplication as shown below. <br /> <br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7oyIToFEys-2E-ztPOmY_4pK7SrYatMPM_ibf2e9aaQqNtm4ruQOtpqzb-V-Z-EQ3tcxlxobKAVl_aAXuUtNt9YcAI_QONfkTFtFcqyb0yRjiHJmTl1Wadp0gbgmG5jA5VfGbTuhl7pmE/s1600/1+Overview.jpg"><img style="cursor:pointer; cursor:hand;width: 400px; height: 309px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7oyIToFEys-2E-ztPOmY_4pK7SrYatMPM_ibf2e9aaQqNtm4ruQOtpqzb-V-Z-EQ3tcxlxobKAVl_aAXuUtNt9YcAI_QONfkTFtFcqyb0yRjiHJmTl1Wadp0gbgmG5jA5VfGbTuhl7pmE/s400/1+Overview.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5546547972202468066" /></a><br /><br /><br /><strong>Overview:</strong><br />This view shows system status, and allows you to start/stop the system. The other tabs allow you to further configure the application.<br /><br /><br /><strong>Capacity Management:</strong><br />This view has four tabs:<br /><br />-Metrics: This gives metrics on request response time, load and query errors. You once might have looked at Usage Tracking for this information.<br /><br />-Availability: Shows current availability of all components, allowing you to start/stop them. Also includes 'Point of Failure' analysis which shows areas in the infrastructure likely to fail when a hardware/software failure occurs.<br /><br />-Scalability: This tab lets you enable Verticle Clustering, increasing the amount of instances of OBI on a server.<br /><br />-Performance: Used for cache management, including settings that would have been set in NQSConfig.ini in 10g. It manages user query response time and max rows returned, settings that were set in InstanceConfig.xml.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3M3_ekOWdxGxhQCz1OKRA6pkHucPb_TD_z9CefB6zep4qaxJApfdy9rQCcdn9CiMDgaA9j1YidfKLJFM4KI5UVnadQzuMRiFabPyY0zFYi1kmXwGe70tcC9aTOcORZBymzxMj59BWq0Uh/s1600/2+Capacity+Mgmt.jpg"><img style="cursor:pointer; cursor:hand;width: 400px; height: 309px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3M3_ekOWdxGxhQCz1OKRA6pkHucPb_TD_z9CefB6zep4qaxJApfdy9rQCcdn9CiMDgaA9j1YidfKLJFM4KI5UVnadQzuMRiFabPyY0zFYi1kmXwGe70tcC9aTOcORZBymzxMj59BWq0Uh/s400/2+Capacity+Mgmt.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5546548589892812306" /></a><br /><br /><strong><br />Diagnostics:</strong><br />This view has 2 tabs. One for server log messages, and the other for log file settings. These used to be kept in the RPD and the NQSServer.log.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhV-IBYh1dbV5Edv7drMSQ0_wd2uf96-Cc18yP8k9sfdR_lSBooeknKRh2rYUzP60h0PZR_gaj7pohmQvZ9fUzDRR3Th7ZB6c5xTu9g7DzRHxuOdIIZCzKfWS_fKAhdfknYkrFpdWLEQ2aE/s1600/3+Diagnostics.jpg"><img style="cursor:pointer; cursor:hand;width: 400px; height: 309px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhV-IBYh1dbV5Edv7drMSQ0_wd2uf96-Cc18yP8k9sfdR_lSBooeknKRh2rYUzP60h0PZR_gaj7pohmQvZ9fUzDRR3Th7ZB6c5xTu9g7DzRHxuOdIIZCzKfWS_fKAhdfknYkrFpdWLEQ2aE/s400/3+Diagnostics.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5546548830732284466" /></a><br /><br /><br /><strong>Security:</strong><br />This view allows you to enable SSO. Also links to Weblogic Admin Console Security realm to manage Weblogic security.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1jnLMD2eNm01Pd4v4PhZkldk21seG0t5xDKrk_ukKS3JIUK8VeZ0_cyTJncg9MmTO67urU42rACAhyyk5PtSCpP8XY8FOgpZxv9k-jC908GulKnhe17A2kBu0NRooVTatO7WyRjEUog0T/s1600/4+Security.jpg"><img style="cursor:pointer; cursor:hand;width: 400px; height: 309px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1jnLMD2eNm01Pd4v4PhZkldk21seG0t5xDKrk_ukKS3JIUK8VeZ0_cyTJncg9MmTO67urU42rACAhyyk5PtSCpP8XY8FOgpZxv9k-jC908GulKnhe17A2kBu0NRooVTatO7WyRjEUog0T/s400/4+Security.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5546549031005117778" /></a><br /><br /><br /><strong>Deployment:</strong><br />This section is for managing the deployment of various aspects of OBI 11G.<br /><br /> -Presentation: Contains a few settings for Dashboard and Analysis defaults. These used to be managed on a less global scale through Manage Privileges.<br /><br /> -Repository: This is where the RPD and Presentation Services are managed, and shared between servers for horizontal clustering. <br /><br /> -Scheduler: Schema connection information for the scheduler tables<br /><br /> -Marketing: For Siebel Marketing connection<br /><br /> -Mail: Scheduler mail server connection information<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghv7sMNzCnIFn0Qx-0RofoOXxH4UAmH2BZ6qX-eWr_VnR3bjuoQW49iZRo3eQAjyL3onMy3Tk9HY1NckpMYv8o0Iq0SEn4aAdccaLWCNZZ9dGr2KahZ3wOjciwQ-QgrVswOHJdgIrh05ki/s1600/5+Deployment.jpg"><img style="cursor:pointer; cursor:hand;width: 400px; height: 309px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghv7sMNzCnIFn0Qx-0RofoOXxH4UAmH2BZ6qX-eWr_VnR3bjuoQW49iZRo3eQAjyL3onMy3Tk9HY1NckpMYv8o0Iq0SEn4aAdccaLWCNZZ9dGr2KahZ3wOjciwQ-QgrVswOHJdgIrh05ki/s400/5+Deployment.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5546549485106891986" /></a>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-16690158633680938382010-11-27T08:46:00.008-06:002010-11-27T15:27:08.122-06:00OBIEE 11g, Opening Ports on Oracle Linux - How-To Video<span style="font-size:85%;">Working with OBIEE 11g on Oracle Enterprise Linux (OEL), with or without the Unbreakable Kernel, one will need to open up several trusted ports as the firewall is turned on by default. Clearly, the best practice is too keep the firewall in-tact and enabled but for extra ports that are needed to access the OBI server environment. Configuring such access is straightforward. The video below takes an informal look at accomplishing opening ports using the OEL graphical user interface. This approach is great for a development or test environment but it is not recommended for a production environment.</span><br /><br /><div align="center"><br /><iframe src="http://player.vimeo.com/video/17061134" align="middle" frameborder="0" height="225" width="400"></iframe><br /></div><br /><br /><span style="font-size:85%;"><br />The OBI 11g ports that are essential to open are:<br /></span><ul><li><span style="font-size:85%;">9704 - Presentation Services</span></li><li><span style="font-size:85%;">9703 - BI Server (Administration tool DSN access)</span></li><li><span style="font-size:85%;">7001 - WebLogic Server (Administration Console)</span></li></ul><br /><span style="font-size:85%;">This video is part of a series of video blog posts on installing and configuring OBIEE 11g.</span>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-73661537418701391982010-11-26T17:38:00.006-06:002010-11-27T16:48:27.475-06:00OBIEE 11g, Setup Client DSN for Administration Tool - How-To Video<span style="font-size:85%;">After installing the OBI 11g client tools each OBI developer or administrator will need to access the Oracle BI RPD using the OBI Administration Tool. The Administration Tool is the GUI that connects to the Oracle BI Server RPD in Online mode (or on the network in offline mode) allowing development and administration functionality of the RPD. The informal video below highlights the process in which to create an ODBC data source connection to the Oracle BI server and test that the connectivity is working.</span><br /><br /><div align="center"><br /><iframe src="http://player.vimeo.com/video/17245227" align="middle" width="400" height="225" frameborder="0"></iframe><br /></div><br /><br /><span style="font-size:85%;">This video how-to makes the assumption that the client workstation already has the OBI 11g binaries installed on the machine from any of the install options via the OBI11g installer.<br /><br />This video is part of a series of videos on OBI 11g installation and configuration.</span>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-50795837899402386452010-11-23T10:16:00.004-06:002010-11-23T11:28:30.679-06:00OBIEE 11g Certification AvailableOracle tends to work hard to ensure that best practices are adhered to when working with their products. They even go as far to offer certifications which acknowledge one's ability to demonstrate product knowledge and acuity for implementing, developing, etc. with Oracle products. The release of OBIEE 11g is no exception, and Oracle has recently released the <a href="http://www.oracle.com/partners/en/knowledge-zone/database/oracle-epm-and-bi/obi-exam-168632.html">OBI 11g Certification Exam</a> for those so inclined and ready to be stamped as an OBI 11g guru.<br /><br />This certification holds some similar exam topics to that of its predecessor certification exam for the 10.1.3.x OBI version. But clearly with OBI 11g there are many new areas on which to be tested. Reading over the OBI 11g Exam certification topics one can get a good feel for what Oracle thinks are "must have" areas within the new application to focus on. Even if not taking the exam, learning these topics should provide an administrator, developer, or super-user with keen insight to working with and implementing OBI 11g.<br /><br />The OB 11g Oracle certification is currently only available for Oracle partners. However, whether you gearing up for the OBI 11g exam or just needing to get educated on OBI 11g, BI Consulting Group has already released several OBI 11g training courses via their <a href="http://biconsultinggroup.com/training.asp">BICG University</a> education center on the following topics:<br /><br /># <a href="http://biconsultinggroup.com/training.asp?CategoryID=291&SubCategoryID=485">OBIEE 11-301: Dashboard/Report Application Development</a><br /># <a href="http://biconsultinggroup.com/training.asp?CategoryID=291&SubCategoryID=486">OBIEE 11-401: Repository/Metadata App Dev</a><br /># <a href="http://biconsultinggroup.com/training.asp?CategoryID=291&SubCategoryID=487">OBIEE 11-402: Server Architecture</a><br /><br />In conclusion, I have always been a fan of official certifications as they show that one took the initiative to learn the information, was grilled on that information via examination, and knew the material well enough to achieve certification status. To me, this is only one or two steps below taking the time to write a book on the topic in question - guru status. <br /><br />Do you think Oracle certifications are worthwhile? <br />How has an Oracle certification the helped you in the past?<br />Should Oracle offer a public OBI 11g certification?Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-34470990522068157432010-11-22T18:16:00.008-06:002010-11-22T20:11:22.076-06:00Easy Download LinkWhen setting up a navigation from a report on a dashboard to a target report (not on a dashboard), one of the pieces missing and most asked for is a download link. To provide it, follow these simple steps.<br /><br /><div style="text-align: center;">1. Open the report that should contain the download link<br />2. Add a static text view to the compound view<br /></div><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEho30ploYaTSwzfy28eDg6qqew9cRhTNjeKujnp_39CW9nti7sIoGCDG_NaGaFTIWIwaZCqrnXESs1enNyL3EvZ7OzX9SDaapM1oIbj3isy5-5ICJuQxj0uCUmtvRoOuzIl8lzinqR7NBA/s1600/01_AddStaticTextView.jpg"><img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 149px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEho30ploYaTSwzfy28eDg6qqew9cRhTNjeKujnp_39CW9nti7sIoGCDG_NaGaFTIWIwaZCqrnXESs1enNyL3EvZ7OzX9SDaapM1oIbj3isy5-5ICJuQxj0uCUmtvRoOuzIl8lzinqR7NBA/s320/01_AddStaticTextView.jpg" alt="" id="BLOGGER_PHOTO_ID_5542550750190161410" border="0" /></a><br />3. Check the "Contains HTML Markup" checkbox<br />4. Type:<br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2VzIprJtuuxb38iMjvOHd_zuZP3bWgY_-3eATe5ofmWpnw5nbWSVroi73sqwBeU41t1OE-bJlfgExjZBlWvuf9cbDyUpGNPGkTc7y_lfedHuwdLvptChnKJtNYImN23fC51nUpEYS_TY/s1600/05_HREFText.jpg"><img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 11px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2VzIprJtuuxb38iMjvOHd_zuZP3bWgY_-3eATe5ofmWpnw5nbWSVroi73sqwBeU41t1OE-bJlfgExjZBlWvuf9cbDyUpGNPGkTc7y_lfedHuwdLvptChnKJtNYImN23fC51nUpEYS_TY/s320/05_HREFText.jpg" alt="" id="BLOGGER_PHOTO_ID_5542557498370895186" border="0" /></a><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLs2uF2-yZPM7PrZo6bZDlgdFinQSyRsXmhNnHj9-OOKPl7pCL5gp6WILjiZpp_uFg3yNlVN-Ou3wcCJ4n43FqwKIx5sJIBIH2Lq9WivANWIxJbSZir4GQOMABEC7nXlxZNlJ_PPntITU/s1600/02_EnterHTML.jpg"><img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 151px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLs2uF2-yZPM7PrZo6bZDlgdFinQSyRsXmhNnHj9-OOKPl7pCL5gp6WILjiZpp_uFg3yNlVN-Ou3wcCJ4n43FqwKIx5sJIBIH2Lq9WivANWIxJbSZir4GQOMABEC7nXlxZNlJ_PPntITU/s320/02_EnterHTML.jpg" alt="" id="BLOGGER_PHOTO_ID_5542550755475934066" border="0" /></a><br />5. Click the "Display Results" link to verify it is working then click ok<br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwUEJhbFVLqhVsEyZiKuCsaB4AEdv8FMB14hSFq-HfgfC85f9snEHBmBQK6CstPsoYVRapUO3BDXiN9tiDtSlAG5kr2iy4AqKh3X3mtynSTuKWgNx6TCdS9AWaHfsnebrhLPQLO2z70IU/s1600/03_Check.jpg"><img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 151px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwUEJhbFVLqhVsEyZiKuCsaB4AEdv8FMB14hSFq-HfgfC85f9snEHBmBQK6CstPsoYVRapUO3BDXiN9tiDtSlAG5kr2iy4AqKh3X3mtynSTuKWgNx6TCdS9AWaHfsnebrhLPQLO2z70IU/s320/03_Check.jpg" alt="" id="BLOGGER_PHOTO_ID_5542550790535006834" border="0" /></a>6. Test it<br /><br />Syntax:<br />http://virtualxp:9704/analytics/saw.dll? - the path to the BI Server (typically /analytics/saw.dll is all that is needed)<br />Download - the action to perform (other actions include Go and Navigate, not covered in this post, maybe next time)<br />&Format=excel - the format of the download<br />&Extension=.xls - the extension of the file (the report name will be the file name)<br />path=/users/administrator/Target%20Report - the path to the report<br /><br />The path to the report can be found in the address bar.<br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhJDX88k25d9NnOOgV2BPgJxStGTZ8nGZVz1JawBK09q3Vo3d9pmPEtq3BuLODT_CpxxtQ1c_4r7oZ-UnQrWmgAz-rb_xN_19rPQhhaMlqu9KXlnRzVx8lafL2-oi2JUsKqI_EPhiANQ0/s1600/04_AddressBar.jpg"><img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 42px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhJDX88k25d9NnOOgV2BPgJxStGTZ8nGZVz1JawBK09q3Vo3d9pmPEtq3BuLODT_CpxxtQ1c_4r7oZ-UnQrWmgAz-rb_xN_19rPQhhaMlqu9KXlnRzVx8lafL2-oi2JUsKqI_EPhiANQ0/s320/04_AddressBar.jpg" alt="" id="BLOGGER_PHOTO_ID_5542553246724410594" border="0" /></a>If you are manually typing it in or providing it through a column value, don't forget to replace spaces, quotes, and other special characters with their HTML equivalents.<br /><br />Other valid formats and extensions:<br />CSV - &Format=txt&Extension=.csv<br />PPT - &Format=powerpoint<br />Excel 2000 - &Format=excel2000&Extension=.xls<br />HTML - &Format=mhtUnknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-42625540700161612722010-11-19T19:55:00.009-06:002010-11-20T20:07:26.472-06:00An OBI 11g Client Tools Only Install Work-Around<span style="font-family: arial;font-size:85%;" >OBI 11g has been out for several months now and it is getting great reviews - As it should! It is a clean and powerful upgrade from its 10g predecessor. With that being said, many things have changed, not only from a graphical end-user perspective but from a foundation and architecture one as well. This post is specifically discussing the later. Even more specifically, this post touches on what is probably the loudest complaint of System Integrators thus far which is that OBI 11g does not have a client tools install like OBI 10g did. What does this mean OBI 11g integrators and developers? It means that basically anytime one needs to leverage the Administration Tool, Catalog Manager, etc. on a client workstation (away from the OBI Server, i.e.: client/server interaction) the workstation must be loaded with all binaries and configurations as if it was to be the OBI 11g server itself. Oracle's documentation goes on to say that after a full install (Simple or Enterprise) on a client workstation (Windows only, of course) that one must shutdown and disable all server related Windows Services. Clearly this is cumbersome to say the least just to get client tools loaded.<br /><br />To workaround this one can conduct the OBI 11g installation on a certified client OS using the Software Only Install option. This option requires that a Fusion Middleware Home already be established. So, WebLogic 10.3.3 must be installed on the client machine prior to conducting the OBI 11g Software Only installation. You may download from here or from the Oracle e-delivery site.<br /><br />If you attempt to conduct the software only install without prior installation of the WebLogic Server you will be confronted with the following error messages (INST-07407, INST-07247):<br /><br /><table style="width:auto;"><tr><td><a href="http://picasaweb.google.com/lh/photo/5Tk6sXqJlmvNokMF9n3f5Q?feat=embedwebsite"><img src="http://lh5.ggpht.com/_IN4kMpD7vio/TOco16kSSbI/AAAAAAAABIc/k9vcnDeYjQw/s400/0_OBI_Software_Only_install.jpg" height="322" width="400" /></a></td></tr></table><br /><br /><table style="width:auto;"><tr><td><a href="http://picasaweb.google.com/lh/photo/HBONlfa4G-wLxPIxbt23ew?feat=embedwebsite"><img src="http://lh6.ggpht.com/_IN4kMpD7vio/TOco2ekhveI/AAAAAAAABIg/fsnjd0Gpwsw/s400/1_OBI_Software_Only_install.jpg" height="323" width="400" /></a></td></tr></table><br /><br />Once the WebLogic Server has been installed on the client OS, install OBI 11g using the Software Only option. The installation should complete without incident as only the binaries are installed on the client machine. Once the install completes, navigate to the administration tool executable now under the path <fmw_home>\Oracle_BI1\bifoundation\server\bin\admintool.exe.<br /><br />Please note that the administration tool and all OBIEE 11g client tools are certified to run on a 32-bit OS only. Be warned that the client tools will install onto a 64-bit machine but Oracle currently will not support that version OS if something goes wrong. Please see this link for the current OBI 11g certification matrix, here (OBI 11g Release 1) or here for the full Full Fusion Middleware Certification Matrices. Take note that this is an OBI 11g Client Tools Only Install Work-Around and it is not-officially supported by Oracle But, it is much more efficient than the extra steps per the Oracle documentation.<br /><br />References<br />https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=1186342.1</span>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-41980033330156643012010-11-19T19:21:00.012-06:002010-11-19T20:13:55.443-06:00Using DAC & Informatica to send proactive email alerts for OLTP or .CSV config file data issues that cause ORA-01452: cannot CREATE UNIQUE INDEX<span style=";font-family:";font-size:10pt;" >It is possible that a DAC ETL load for an OBI Apps DW implementation can fail due to source system data or improperly maintained configuration files.<span style=""> </span>As much as we hope that the business users and or the OLTP system itself remain error-free, this is not always the case especially when you take into account human errors (manual updates to key .csv config files) or OLTP data integrity issues (unstable source system, multiple external feeds to source system, improperly coded or outdated OLTP processes).<span style=""> </span>Normally, if a DAC ETL load is scheduled to be nightly, the earliest notice will be sent by the DAC upon success/failure and no corrective action can be taken until the logs are traced and the business is notified to correct the OLTP or .csv file error(s) and the load most often needs to be restarted and the business will have lost that time.</span> <p class="MsoNormal" style=""><span style=";font-family:";font-size:10pt;" > </span></p> <p class="MsoNormal" style=""><span style=";font-family:";font-size:10pt;" >To mitigate this risk, The DAC and Informatica can also be used to create a proactive email alert notification to allow the business or OLTP support team to correct any issues that may break the nightly ETL load.<span style=""> </span>One common example of an avoidable OBI Apps ETL error is the notorious </span><span style=";font-family:";font-size:8.5pt;color:black;" >ORA-01452: cannot CREATE UNIQUE INDEX error.<span style=""> </span></span><span style=";font-family:";font-size:10pt;" >The DAC will issue a CREATE UNIQUE INDEX command to eliminate redundancies and ensure accuracies of the source system.<span style=""> </span></span></p> <p class="MsoNormal" style=""><span style=";font-family:";font-size:10pt;" > </span></p> <p class="MsoNormal" style=""><b style=""><span style=";font-family:";font-size:10pt;" >Step 1</span></b><span style=";font-family:";font-size:10pt;" >: Find the INTEGRATION_D ID that caused the UNIQUE INDEX ERROR via the following method replacing the W_XXX_D with the appropriate Target table from the error log</span></p> <p class="MsoNormal" style=""><span style=";font-family:";font-size:10pt;" > </span></p> <p class="MsoNormal" style=""><span style=";font-family:";font-size:10pt;color:red;" >SELECT INTEGRATION_ID, DATASOURCE_NUM_ID, EFFECTIVE_FROM_DT, COUNT(*) FROM W_XXXX_D<br />GROUP BY INTEGRATION_ID, DATASOURCE_NUM_ID, EFFECTIVE_FROM_DT HAVING COUNT(*) > 1;</span></p> <p class="MsoNormal" style=""><span style=";font-family:";font-size:10pt;color:black;" > </span></p> <p class="MsoNormal" style=""><b style=""><span style=";font-family:";font-size:10pt;color:black;" >Step 2:</span></b><span style=";font-family:";font-size:10pt;color:black;" ><span style=""> </span>Find the appropriate Source Qualifier extract SQL that is used for the mapping/mapplet that populates the target table (make sure to check for any SQ overrides at the session level).<span style=""> </span>For example, the example below uses the SQ for the PeopleSoft mapplet C_mplt_BC_EmployeeDimension_Biography1.<span style=""> </span>Use the same SQL concept as STEP1 to identify the exact records that are causing the downstream UNIQUE INDEX error by concatenating the fields that together may be used to create the INTEGRATION_ID downstream.</span></p><p class="MsoNormal" style=""><br /></p><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRtwpxnwb5MXyUV4WHktREjkH9y7u5t5Ohf0gH40ckOHpTi2WoaJaLTduAprtZVwKQwrm-UjOVYaT_hSGpK_kIXsdTBsSkorbbIYWC30GpZeq99O6kGTRWPxAeKAdUoExlDaAVECBN58E/s1600/blog1_1.bmp"><img style="cursor: pointer; width: 345px; height: 400px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRtwpxnwb5MXyUV4WHktREjkH9y7u5t5Ohf0gH40ckOHpTi2WoaJaLTduAprtZVwKQwrm-UjOVYaT_hSGpK_kIXsdTBsSkorbbIYWC30GpZeq99O6kGTRWPxAeKAdUoExlDaAVECBN58E/s400/blog1_1.bmp" alt="" id="BLOGGER_PHOTO_ID_5541440075496228226" border="0" /></a><p class="MsoNormal" style=""><!--[if gte mso 9]><xml> <w:worddocument> <w:view>Normal</w:View> <w:zoom>0</w:Zoom> <w:trackmoves/> <w:trackformatting/> <w:punctuationkerning/> <w:validateagainstschemas/> <w:saveifxmlinvalid>false</w:SaveIfXMLInvalid> <w:ignoremixedcontent>false</w:IgnoreMixedContent> <w:alwaysshowplaceholdertext>false</w:AlwaysShowPlaceholderText> <w:donotpromoteqf/> <w:lidthemeother>EN-US</w:LidThemeOther> <w:lidthemeasian>X-NONE</w:LidThemeAsian> <w:lidthemecomplexscript>X-NONE</w:LidThemeComplexScript> <w:compatibility> <w:breakwrappedtables/> <w:snaptogridincell/> <w:wraptextwithpunct/> <w:useasianbreakrules/> <w:dontgrowautofit/> <w:splitpgbreakandparamark/> <w:dontvertaligncellwithsp/> <w:dontbreakconstrainedforcedtables/> <w:dontvertalignintxbx/> <w:word11kerningpairs/> <w:cachedcolbalance/> </w:Compatibility> <w:browserlevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathpr> <m:mathfont val="Cambria Math"> <m:brkbin val="before"> <m:brkbinsub val="--"> <m:smallfrac val="off"> <m:dispdef/> <m:lmargin val="0"> <m:rmargin val="0"> <m:defjc val="centerGroup"> <m:wrapindent val="1440"> <m:intlim val="subSup"> <m:narylim val="undOvr"> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"> <w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"> <w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"> <w:lsdexception locked="false" priority="39" name="toc 1"> <w:lsdexception locked="false" priority="39" name="toc 2"> <w:lsdexception locked="false" priority="39" name="toc 3"> <w:lsdexception locked="false" priority="39" name="toc 4"> <w:lsdexception locked="false" priority="39" name="toc 5"> <w:lsdexception locked="false" priority="39" name="toc 6"> <w:lsdexception locked="false" priority="39" name="toc 7"> <w:lsdexception locked="false" priority="39" name="toc 8"> <w:lsdexception locked="false" priority="39" name="toc 9"> <w:lsdexception locked="false" priority="35" qformat="true" name="caption"> <w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"> <w:lsdexception locked="false" priority="1" name="Default Paragraph Font"> <w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"> <w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"> <w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"> <w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"> <w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"> <w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"> <w:lsdexception locked="false" unhidewhenused="false" name="Revision"> <w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"> <w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"> <w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"> <w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"> <w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"> <w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"> <w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"> <w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"> <w:lsdexception locked="false" priority="37" name="Bibliography"> <w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"> </w:LatentStyles> </xml><![endif]--><!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} </style> <![endif]--> </p><p class="MsoNormal" style=""><br /></p><p class="MsoNormal" style=""><span style=";font-family:";font-size:10pt;color:black;" ><br /></span></p><p class="MsoNormal"><span style=";font-family:";font-size:10pt;" >Using the above method should allow you to pinpoint the .CSV or the OLTP data anomaly that is causing the downstream Index Constraint. </span></p> <p class="MsoNormal"><span style=";font-family:";font-size:10pt;" > </span></p> <p class="MsoNormal"><span style=";font-family:";font-size:10pt;" > </span></p> <p class="MsoNormal"><b style=""><span style=";font-family:";font-size:10pt;" >Step 3: </span></b><span style=";font-family:";font-size:10pt;" >Create a simple Informatica Mapping/Session that uses the above formulated query to query the datasource (.CSV or a set of OLTP tables) depending on the source of the data issue.<span style=""> </span>As a target, its best to create a .csv file in the same SrcFiles directory that is already defined on the INFA/DAC server.<span style=""> </span>The mappings should populate the .csv file.<span style=""> </span></span></p><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_qeezk7Yt_Duw-3TsQQZDSN6zUNO_l2RCSida-k6OrsjVS-3F1m39VFc_BkVaDRMdRi0XFpkDHpJyV3Mjw6ppmVEiBxDsONofvot_pVn-CGAI9i5Apn9DGwRq1JvBtAmIoPKF2ouXd1g/s1600/blog1_2.bmp"><img style="cursor: pointer; width: 345px; height: 400px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_qeezk7Yt_Duw-3TsQQZDSN6zUNO_l2RCSida-k6OrsjVS-3F1m39VFc_BkVaDRMdRi0XFpkDHpJyV3Mjw6ppmVEiBxDsONofvot_pVn-CGAI9i5Apn9DGwRq1JvBtAmIoPKF2ouXd1g/s400/blog1_2.bmp" alt="" id="BLOGGER_PHOTO_ID_5541440185854092386" border="0" /></a><!--[if gte mso 9]><xml> <w:worddocument> <w:view>Normal</w:View> <w:zoom>0</w:Zoom> <w:trackmoves/> <w:trackformatting/> <w:punctuationkerning/> <w:validateagainstschemas/> <w:saveifxmlinvalid>false</w:SaveIfXMLInvalid> <w:ignoremixedcontent>false</w:IgnoreMixedContent> <w:alwaysshowplaceholdertext>false</w:AlwaysShowPlaceholderText> <w:donotpromoteqf/> <w:lidthemeother>EN-US</w:LidThemeOther> <w:lidthemeasian>X-NONE</w:LidThemeAsian> <w:lidthemecomplexscript>X-NONE</w:LidThemeComplexScript> <w:compatibility> <w:breakwrappedtables/> <w:snaptogridincell/> <w:wraptextwithpunct/> <w:useasianbreakrules/> <w:dontgrowautofit/> <w:splitpgbreakandparamark/> <w:dontvertaligncellwithsp/> <w:dontbreakconstrainedforcedtables/> <w:dontvertalignintxbx/> <w:word11kerningpairs/> <w:cachedcolbalance/> </w:Compatibility> <w:browserlevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathpr> <m:mathfont val="Cambria Math"> <m:brkbin val="before"> <m:brkbinsub val="--"> <m:smallfrac val="off"> <m:dispdef/> <m:lmargin val="0"> <m:rmargin val="0"> <m:defjc val="centerGroup"> <m:wrapindent val="1440"> <m:intlim val="subSup"> <m:narylim val="undOvr"> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"> <w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"> <w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"> <w:lsdexception locked="false" priority="39" name="toc 1"> <w:lsdexception locked="false" priority="39" name="toc 2"> <w:lsdexception locked="false" priority="39" name="toc 3"> <w:lsdexception locked="false" priority="39" name="toc 4"> <w:lsdexception locked="false" priority="39" name="toc 5"> <w:lsdexception locked="false" priority="39" name="toc 6"> <w:lsdexception locked="false" priority="39" name="toc 7"> <w:lsdexception locked="false" priority="39" name="toc 8"> <w:lsdexception locked="false" priority="39" name="toc 9"> <w:lsdexception locked="false" priority="35" qformat="true" name="caption"> <w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"> <w:lsdexception locked="false" priority="1" name="Default Paragraph Font"> <w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"> <w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"> <w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"> <w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"> <w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"> <w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"> <w:lsdexception locked="false" unhidewhenused="false" name="Revision"> <w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"> <w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"> <w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"> <w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"> <w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"> <w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"> <w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"> <w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"> <w:lsdexception locked="false" priority="37" name="Bibliography"> <w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"> </w:LatentStyles> </xml><![endif]--><!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} </style> <![endif]--><b style=""><span style=";font-family:";font-size:10pt;" ><br />Step 4:<span style=""> </span></span></b><span style=";font-family:";font-size:10pt;" >Create a Session based on mapping in Step 3 that populates the .csv target with the problematic rows and conditionally sends an email to the appropriate business users or OLTP system admins with an attachment of the problem records.</span><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgijQDwkmwov6YVtkjGoII1DGnAjkXIJBsfX6a59gOMIXs7Y_uygKCddzJVFiO5RFOHtNMp_0SuwNDW4Uid9vriFMHRSvBl1T9zGHCUDr_ZY_nAGDd1KLr6HD6v_wlf8XDoFjxUatw3dkw/s1600/blog1_3.bmp"><img style="cursor: pointer; width: 345px; height: 400px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgijQDwkmwov6YVtkjGoII1DGnAjkXIJBsfX6a59gOMIXs7Y_uygKCddzJVFiO5RFOHtNMp_0SuwNDW4Uid9vriFMHRSvBl1T9zGHCUDr_ZY_nAGDd1KLr6HD6v_wlf8XDoFjxUatw3dkw/s400/blog1_3.bmp" alt="" id="BLOGGER_PHOTO_ID_5541440286120742866" border="0" /></a><!--[if gte mso 9]><xml> <w:worddocument> <w:view>Normal</w:View> <w:zoom>0</w:Zoom> <w:trackmoves/> <w:trackformatting/> <w:punctuationkerning/> <w:validateagainstschemas/> <w:saveifxmlinvalid>false</w:SaveIfXMLInvalid> <w:ignoremixedcontent>false</w:IgnoreMixedContent> <w:alwaysshowplaceholdertext>false</w:AlwaysShowPlaceholderText> <w:donotpromoteqf/> <w:lidthemeother>EN-US</w:LidThemeOther> <w:lidthemeasian>X-NONE</w:LidThemeAsian> <w:lidthemecomplexscript>X-NONE</w:LidThemeComplexScript> <w:compatibility> <w:breakwrappedtables/> <w:snaptogridincell/> <w:wraptextwithpunct/> <w:useasianbreakrules/> <w:dontgrowautofit/> <w:splitpgbreakandparamark/> <w:dontvertaligncellwithsp/> <w:dontbreakconstrainedforcedtables/> <w:dontvertalignintxbx/> <w:word11kerningpairs/> <w:cachedcolbalance/> </w:Compatibility> <w:browserlevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathpr> <m:mathfont val="Cambria Math"> <m:brkbin val="before"> <m:brkbinsub val="--"> <m:smallfrac val="off"> <m:dispdef/> <m:lmargin val="0"> <m:rmargin val="0"> <m:defjc val="centerGroup"> <m:wrapindent val="1440"> <m:intlim val="subSup"> <m:narylim val="undOvr"> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"> <w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"> <w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"> <w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"> <w:lsdexception locked="false" priority="39" name="toc 1"> <w:lsdexception locked="false" priority="39" name="toc 2"> <w:lsdexception locked="false" priority="39" name="toc 3"> <w:lsdexception locked="false" priority="39" name="toc 4"> <w:lsdexception locked="false" priority="39" name="toc 5"> <w:lsdexception locked="false" priority="39" name="toc 6"> <w:lsdexception locked="false" priority="39" name="toc 7"> <w:lsdexception locked="false" priority="39" name="toc 8"> <w:lsdexception locked="false" priority="39" name="toc 9"> <w:lsdexception locked="false" priority="35" qformat="true" name="caption"> <w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"> <w:lsdexception locked="false" priority="1" name="Default Paragraph Font"> <w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"> <w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"> <w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"> <w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"> <w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"> <w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"> <w:lsdexception locked="false" unhidewhenused="false" name="Revision"> <w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"> <w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"> <w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"> <w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"> <w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"> <w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"> <w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"> <w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"> <w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"> <w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"> <w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"> <w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"> <w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"> <w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"> <w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"> <w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"> <w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"> <w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"> <w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"> <w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"> <w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"> <w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"> <w:lsdexception locked="false" priority="37" name="Bibliography"> <w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"> </w:LatentStyles> </xml><![endif]--><!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} </style> <![endif]--><b style=""><span style=";font-family:";font-size:10pt;" ><br />Step 5</span></b><span style=";font-family:";font-size:10pt;" >: Create the associated DAC components (tables, tasks, execution plan) etc and schedule this as a separate execution plan that is run at the same frequency of the actual Load.<span style=""> </span>Preferably the alert should go to the correct business users who maintain the config file or the OLTP system contacts who can correct the source system issue detected. </span> <p class="MsoNormal"><span style=";font-family:";font-size:10pt;" > </span></p> <p class="MsoNormal"><span style=";font-family:";font-size:10pt;" >The above approach can be useful for OBI Apps implementations that have issues related to source system data and/or config file errors.<span style=""> </span>It will proactively notify the business to take corrective action on data anomalies that can cause Execution plan failures due to ORA UNIQUE INDEX error.<span style=""> </span></span></p><br /><br /><br /><p class="MsoNormal" style=""><br /></p><p class="MsoNormal" style=""><span style=";font-family:";font-size:10pt;color:black;" ><br /></span></p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-5011094876106487682010-11-10T11:32:00.019-06:002010-11-10T12:00:10.802-06:00Cool New Feature in OBIEE 11g: Master-Detail LinkingA few weeks ago, I was fortunate enough to attend an OBIEE 11g workshop given by Oracle. There were so many cool, new features to be found in this new release of OBI, but one of them that seemed really slick was called Master-Detail Linking.<br /><br />In a nutshell, you can create an analysis (report) with multiple different views and have the views dynamically change as you click on values from another view. Here’s an example of how to accomplish this:<br /><br />1. Create a new Analysis and add some columns of interest:<br /><br /><img id="BLOGGER_PHOTO_ID_5537975673086956386" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 141px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNPtJzs_w0CeGQt_Tvh04b3PZfH0evdZ2RbsAozH0-2tFiEd1RANgvkV4vFnfliZ905FGz1Gcgi3JY8suz3YdQyHiN3fL-lCuMqrMzJZVpJjvquV_scrkxR1RejP2IHWmg4wErhU0kuLo/s400/1.jpg" border="0" /><br />2. View the results and add a pivot table view. Edit the pivot table by moving Region to Columns, and add a Grand Total to the Rows:<br /><img id="BLOGGER_PHOTO_ID_5537976570246022242" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 98px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-rco-7MAzlYk6Mzz03fHMeYPdGVeVUfPatpOTu4rRQig85NR4-X0Z80auk-TBIglgazafcpAloADzn3sB8pfzporecXQ0V95Jfkg3d2IBro8_wmeC9dCBvXsP48AX3zf3hCCv7fpJPnQ/s400/2.jpg" border="0" /><br />3. Now, my compound layout looks like this:<br /><img id="BLOGGER_PHOTO_ID_5537976660038582402" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 346px; CURSOR: hand; HEIGHT: 400px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh398uaAkFFqtfP7PcmkoxYiaR832OTgHMePDNHOpWdKUyLcZgh8uJdKNkzw6hau68UnELtnkpphvFoRZibVNXNFhpoT9YQ353-bH5z-7mnb59NbgUD6IIoKKPGQfPcppCn81GHmBgdqqM/s400/3.jpg" border="0" /><br />4. Go to the criteria tab, and select the properties of one of your dimensions. I’ll choose Year:<br /><img id="BLOGGER_PHOTO_ID_5537976708424167474" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 238px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhjrPzivY1MF_gtfexABZgF8hJ5HMOH9tqpLjZMjp_DehPJjiV2r6IKItPk0Q4ofYP5CEf9HigG2HvLrBQO7_IUn-9c8Qsd5Hfip4RTgdg0kMZ8gjfGkdlDUnMxI8y1NUY-bBgdh8BRvQ/s400/4.jpg" border="0" /><br />5. Go to the Interaction tab, and under Primary Interaction, select ‘Send Master-Detail Events’. Under Specify Channel, you must give it a name. It doesn’t matter what… just remember it for later. I like to use MD_ (for Master Detail) and then the column I’m using.<br /><img id="BLOGGER_PHOTO_ID_5537976921063837522" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 145px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJkVBZ1FDhKi4Eow1G9R1OGCtf54wrvTLwsJQzXs3joIOuNyLpJ44YSIBgMRDkfw5OwsCROHfDbJHSddfJ3oepHbJfdGKeHN1otXCFPOrXRO4c5FxKrXt9-E9J4FM-McxiBgDmycsxvNo/s400/5.jpg" border="0" /><br />6. Go to the results tab, and add a vertical bar graph. Edit the graph by moving Year to Sections and check the ‘Display as Slider’ checkbox. To make my graph more interesting and easier to read, I’m going to move Line of Business down to ‘Vary by Color’.<br /><img id="BLOGGER_PHOTO_ID_5537976974678852274" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 248px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjm4R04XJbM_1hNlZgNbKHrhcdFSM3PFPDwa1_CuuQR7kbcmpZxKmLKgcqR75kWGDyzwa9TVW36r4heEEctRgelTrlYEJF1ZSQLDFUwGEOMhaeZRBpWLS3DzYZ1eNCG8NkuNLQr-tHpJs4/s400/6.jpg" border="0" /><br />7. Click on the graph properties icon: <img id="BLOGGER_PHOTO_ID_5537977018041897826" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 47px; CURSOR: hand; HEIGHT: 34px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJlcOjnFi0TyBxR5PueNEvJ8P9Uoa67f8HsOqrtiY_imu0Vo4Hwvln0-9mD1rcsvhSpDvbjcytcPi55ZadSyJQjT_Co3kyfGyuyuQdd12i5BDIw6t3ZMeNQBIhuBHHmhJXwtyFD968VAM/s400/7.jpg" border="0" /><br /><br />8. On the General tab, check the box labeled ‘Listen to Master-Detail Events’. Be sure type in the Event Channel that you created earlier.<br /><img id="BLOGGER_PHOTO_ID_5537977076942288786" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 362px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimIKdXKOFRkqc9IAXYbX8sjAn_vLxmYqTgNdFi_U2tcQOGK5LlASKgjhvaF0GeTorgHsuSP5OF6_l4saPLNiYF83Opb7q5yVqJgFmhm6s5bfjn4rRyaIOPeVUfYwMs1ddAVTCUOw_OHTg/s400/8.jpg" border="0" /><br />9. Back at the Compound Layout, click the preview icon: <a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLHBt4pB0m8_pnhjjPm2UTbT_iBskfztIMJoJhqAPihh59pBY9aAp8MPn3vFDMC-qQfX_HvWzf189qFcVhnpQnmPNrL6r2g0VCDUcp9wqxgo_22qIJjhFIt0oLmRHZcGcjLuFtYTHXndA/s1600/9.jpg"></a><br /><img id="BLOGGER_PHOTO_ID_5537978295650350370" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 37px; CURSOR: hand; HEIGHT: 29px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqF4iHJyc4JAQP7C5lm_WDsJD0O0lqnDkgPHq7gImFukHQI3uZqIhTn7L-njxqTxJ3WZlyD6d_H6rRIDN27v2JhZtGoprNjUdI4IldbMg90kEXGFS2Mf8QsMWgvsnxlkurYb4zhzO2xps/s400/9.jpg" border="0" /> <p align="left"></p><br />10. Click on the various years displayed in your pivot table. Your graph will dynamically refresh according to the year your clicked on the pivot table and a neat, animated fashion! Very cool!<br /><br /><img id="BLOGGER_PHOTO_ID_5537977168780634162" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 169px; TEXT-ALIGN: center" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpuTUwy2jBLs50HPCMuMf129JUMwMl1r2Uew3-oGQ0Fd3EIpZ-tE4BPWLdylbOkXWKqMMQAOBz1SpL-MVay9taaNmq2lI1sj_F18in_a9j-9TjoVBXIx0KiUh1XpbRbTgWdnTJSDE_hjA/s400/10.jpg" border="0" /><br /><p align="center"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4oEXCQ2CdyyT955iBkIcrgNgpvNU_TzqBqvjGnTuNvtu5KwGgoikceVW4prH7asCtr0PWX2ofBaQ_XtTJ8FIgIA3107kmhvMubEAyYev6eyplAnX6g4SaODATIwUt4rtMpZNr7KNn-6s/s1600/11.jpg"><img id="BLOGGER_PHOTO_ID_5537977216454928178" style="WIDTH: 400px; CURSOR: hand; HEIGHT: 169px" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4oEXCQ2CdyyT955iBkIcrgNgpvNU_TzqBqvjGnTuNvtu5KwGgoikceVW4prH7asCtr0PWX2ofBaQ_XtTJ8FIgIA3107kmhvMubEAyYev6eyplAnX6g4SaODATIwUt4rtMpZNr7KNn-6s/s400/11.jpg" border="0" /></a></p><br /><p align="left">11. Things to keep in mind: A map view can be the Master, but never the Detail. All other views can be either the Master or the Detail. </p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-61655792778754360252010-11-09T18:54:00.012-06:002010-11-09T19:29:00.981-06:00Dashboard Design TipsWhen designing a set of dashboards, I like to include an “at-a-glance” or summary page as the first dashboard a user sees when they log on each day. This page should include a condensed version of the user’s key performance indicators as well as any generated alerts. Users should then have the option of drilling down or to additional detailed reporting. In order to encourage usage of the dashboards, e<span style="">mbed your dashboards as a link within the corporate portal so users have one click access to the information</span><p class="MsoNormal"> </p> <p class="MsoNormal">Consider the page placement of your key performing metrics based on web page eye movement. The diagram below shows how the human eye views a web page, based on level of priority. <span style="">Place the most important elements for viewing in the upper left hand corner and the least important in the lower right corner to mimic the way the eye scans a page.</span></p> <p class="MsoNormal"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtd6YUeR_1pR6L73WmDAOSutvIB3SdCUTsLgxrrDuwrHtQogb5NFmbWZvoGYY7ozDNeAuLeNuJGwKVKrEsS_NSysKcU_nh_p34Ihyphenhyphenpxo-jk2jjLRvAO7KuhYbjytNW18sZ1t3UmAIAVRw/s1600/1.JPG"><img style="cursor: pointer; width: 320px; height: 174px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtd6YUeR_1pR6L73WmDAOSutvIB3SdCUTsLgxrrDuwrHtQogb5NFmbWZvoGYY7ozDNeAuLeNuJGwKVKrEsS_NSysKcU_nh_p34Ihyphenhyphenpxo-jk2jjLRvAO7KuhYbjytNW18sZ1t3UmAIAVRw/s320/1.JPG" alt="" id="BLOGGER_PHOTO_ID_5537722944832741458" border="0" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJXJwSNGGV-wb08NuJ1OzglYK3Aj0kcIkbsqsKGtcb_haTpnCZLktaGdaAA56aAtjpLo8RDiHWceJ-z1gnZO3RhmoI2cL0uwROb1zPpGh02i9ojEb-49fVDWkW3H05-Gx6MUHfAYBMVIw/s1600/1.bmp"><img src="file:///C:/DOCUME%7E1/kpearson/LOCALS%7E1/Temp/moz-screenshot.png" alt="" /></a></p> <p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"><span style="color:black;">Some additional design guidelines are:</span></p> <p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"><span style="color:black;"> </span></p> <ul style="text-align: left;"><li><span style="color:black;">Ideally, the dashboard should fit on one page. Try to avoid any scrolling from left to right.<br /></span></li></ul><ul style="text-align: left;"><li><span style="">The best screen size for the dashboard window is 1024 x 768.</span></li></ul><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTOSlSI-irI-kd7Ho_6j2Uibdt2D5uSf4ghRAgL2SywcSO0mMsYa_0T4rWr12SwdVNTvrvP7GO_iYPVz9QXAtDIZQVRdZEE43oC7DCcJNtrVjOKb36hrbzBcDCRy3xaAeqdwnXSfj0tfo/s1600/2.JPG"><img style="cursor: pointer; width: 263px; height: 213px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTOSlSI-irI-kd7Ho_6j2Uibdt2D5uSf4ghRAgL2SywcSO0mMsYa_0T4rWr12SwdVNTvrvP7GO_iYPVz9QXAtDIZQVRdZEE43oC7DCcJNtrVjOKb36hrbzBcDCRy3xaAeqdwnXSfj0tfo/s320/2.JPG" alt="" id="BLOGGER_PHOTO_ID_5537723240757865586" border="0" /></a> <p class="MsoNormal" style="margin: 0in 0in 0.0001pt 0.5in; line-height: normal;"><span style=""> </span></p> <p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"><span style="color:black;"> </span></p> <ul><li><span style="color:black;">The ability to drill is critical to the success of your dashboards. Users need to know that the underlying data is going to be available to them. Some projects I’ve worked on have been very successful when allowing the users to drill not only to the detailed data but also back to the source transactional systems.</span></li></ul> <ul><li><span style=";font-family:Wingdings;color:black;" ><span style=""><span style="font: 7pt "Times New Roman";"> </span></span></span><span style="color:black;">Introduce competition by using Top 10 reports, conditional formatting, etc.</span></li></ul> <ul><li><span style="">Avoid decorative dashboard elements cluttering the screen like dials, gauges, excessive colors and images. Your dashboard can still be visually interesting while following standards.</span></li></ul> <ul><li><span style="">Speaking of standards, it’s important that dashboard standards and best practices be defined early in the design process. This ensures consistency among various groups within your organization. I recently worked on a project where OBIEE had been in place for over a year, being used by a few departments. Additional teams were being brought on board and new development had already started. There were no design guidelines in place and the new dashboards were completely different among each of the teams. One of our exercises was to look at what was in production today and identify standards to be used in future development. This also caused a little rework on the production dashboards to meet the requirements of all teams, resulting in a consistent approach for the organization as a whole.</span></li></ul> <p class="MsoNormal"> </p> <p class="MsoNormal">As a little bonus, I’ve included a few tips from Dashboard expert Stephen Few:</p> <p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"><b style=""><u><span style="color:black;">Characteristics of A Well-Designed Dashboard</span></u></b></p> <p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"><b style=""><u><span style="color:black;"><span style="text-decoration: none;"> </span></span></u></b></p> <ul><li><span style="color:black;">Exceptionally Well Organized</span></li></ul> <ul><li><span style="color:black;">Condensed, Primarily in the form or Summaries and Exceptions</span></li></ul> <ul><li><span style="color:black;">Specific to and Customized for the Dashboard’s Audience and Objectives</span></li></ul> <ul><li><span style="color:black;">Displayed Using Concise and Other Small Media that Communicates the Data and Its Messages in the Clearest and Most Direct Way Possible</span></li></ul> <p class="MsoNormal" style="margin: 0in 0in 0.0001pt 0.5in; line-height: normal;"><span style="color:black;"> </span></p> <p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"><b style=""><u><span style="color:black;">Common Mistakes in Dashboard Design</span></u></b></p> <p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"><span style="color:black;"> </span></p> <ul><li><span style="color:black;">Exceeding the Boundaries of a Single Screen</span></li></ul> <ul><li><span style="color:black;">Supplying Inadequate Context for the Data</span></li></ul> <ul><li><span style="color:black;">Displaying Excessive Detail or Precision</span></li></ul> <ul><li><span style="color:black;">Arranging the Data Poorly</span></li></ul> <ul><li><span style="color:black;">Highlighting Important Data Ineffectively or Not at All</span></li></ul> <ul><li><span style="color:black;">Cluttering the Display with Useless Decoration</span></li></ul> <ul><li><span style="color:black;">Misusing or Overusing Color</span></li></ul> <ul><li>D<span style="color:black;">esigning an Unattractive Visual Display</span></li></ul> <p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"><span style=";font-family:";font-size:12pt;" > </span></p>Kevin Pearsonhttp://www.blogger.com/profile/15664028838004481729noreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-47417196443734128802010-11-05T16:40:00.013-05:002010-11-05T17:51:40.338-05:00Starting and Stopping BIEE from command line<div style="text-align: justify;">BIEE11g uses now Weblogic as application server. This means we need to know some basic commands such as how to start and stop Weblogic server (WLS). In addition to this from the previous <a style="font-weight: bold;" href="http://oraclebiblog.blogspot.com/2010/10/obiee-11g-architecture.html">post</a> we know that BIEE11g does not only require WLS but also other additional processes. All this plus the need to interact with these components by means of a script in a development / test environment led us to the conclusion that we need to know how we can start or stop BIEE (or even its processes) from a command line. So let us get in this:<br /></div><div style="text-align: justify;"><span style="font-weight: bold;"><br /><span style="font-size:130%;">Starting BIEE</span></span><span style="font-size:130%;">:<br /></span><ol><li>First, read and understand the BIEE11g architecture. This is discussed in a previous post (it can be found <a style="font-weight: bold;" href="http://oraclebiblog.blogspot.com/2010/10/obiee-11g-architecture.html">here</a>).</li><li>So now, you know we need to start / stop basically the Java and System components respectively:<br /><div style="margin-left: 40px;">a. The Java Components:<br /><div style="margin-left: 40px;">i. Admin Server<br />ii. Managed Server<br /></div>b. System Components (OPMN Processes)<br /><div style="margin-left: 40px;">i. BI Server<br />ii. BI Presentation Services<br />iii. BI Java Host<br />iv. BI Cluster Controller<br />v. BI Scheduler</div></div></li></ol><div style="text-align: justify;">Fortunately we do not need to create scripts for each of the components from scratch since during BIEE11g installation some of them were already created for us. We will make use of some of them: ( <span style="font-weight: bold;">Note:</span> In our examples our Fusion Middleware home is C:\fusionMW )<br /></div><br /></div> <span style="font-weight: bold;">1. Start NodeManager:</span><br />This process starts automatically in Windows as a service (everytime the OS is restarted). Additional reference for this component can be found <a href="http://download.oracle.com/docs/cd/E14571_01/web.1111/e13740/overview.htm">here</a><br /><br /><span style="font-weight: bold;">2. Start Admin Server:</span><br /><span style="font-weight: bold;">Command</span>: startWeblogic.cmd<br /><span style="font-weight: bold;">Path</span>: C:\fusionMW\user_projects\domains\bifoundation_domain\bin<br /><br /><div style="text-align: justify;">You will be prompted for the admin user and password. You either enter these values everytime you start/stop the services or alternatively you can set these values in boot.properties file.<br /></div><br />The WLS will have started when you see these messages:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-fn8Vv_N-AQbUdhxf-axLBeDtuhIaH30sBiXnr4oRpVcz9mFb5iFG3XjBMefyvuw7zA8NdWLF41gcTgb9VBFqMn2PqRLWYXO6E0olZ9lmXtbiyktVmaiNY3d3sRgkSpl6qJ4aSSF6Bgk/s1600/WLSRunning.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 36px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-fn8Vv_N-AQbUdhxf-axLBeDtuhIaH30sBiXnr4oRpVcz9mFb5iFG3XjBMefyvuw7zA8NdWLF41gcTgb9VBFqMn2PqRLWYXO6E0olZ9lmXtbiyktVmaiNY3d3sRgkSpl6qJ4aSSF6Bgk/s400/WLSRunning.jpg" alt="" id="BLOGGER_PHOTO_ID_5536197892938942338" border="0" /></a><span style="font-size:85%;"><span style="font-style: italic; font-weight: bold;">OPTIONAL:</span> <span style="font-style: italic;"><br />File Name: </span></span><span style="font-weight: bold; font-style: italic;font-size:85%;" >boot.properties</span><span style="font-size:85%;"> <span style="font-style: italic;"><br /><br />Content:</span> <span style="font-style: italic;"><br />username=</span></span><enter><enter><span style="font-size:85%;"><span style="font-style: italic;">enter your user name here</span><br /><span style="font-style: italic;">password=enter your password here</span></span><enter><enter><span style="font-size:85%;"> <span style="font-style: italic;"><br /><br />For WLS place this file in:</span><br /><span style="font-style: italic;">C:\fusionMW\user_projects\domains\bifoundation_domain\servers\AdminServer\security</span> <span style="font-style: italic;"><br /><br />For Managed Server place this file in:</span><br /><span style="font-style: italic;">C:\fusionMW\user_projects\domains\bifoundation_domain\servers\bi_server1\security</span> <span style="font-style: italic;"><br /><br />The next time you restart WLS the password in the boot.properties will be encrypted.</span></span><br /><br /><span style="font-weight: bold;">3. Start Managed Server:</span><br />Instance: bi_server1<br />URL: http://hostname:7001<br /><span style="font-weight: bold;">Command</span>: startManagedWeblogic.cmd bi_server1 http://hostname:7001<br /><span style="font-weight: bold;">Path</span>: C:\fusionMW\user_projects\domains\bifoundation_domain\bin<br /><br />The Managed Server will be up when you see the following lines:<br /><br /></enter></enter><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEk9imq9Dw1FuJf_zTIf0nqjhnzTCUi9U5TUVanD_xUJa1nk-x0Vj0Z5dGHhg8OKEK7Wb5T14x2bbFn32OokrGIDaaOFr8n0kKFxtAOKQ9CTWP3nrEwjpehIA3_0D0gD3LS1FARBqOVT8/s1600/ManagedRunning.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 116px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEk9imq9Dw1FuJf_zTIf0nqjhnzTCUi9U5TUVanD_xUJa1nk-x0Vj0Z5dGHhg8OKEK7Wb5T14x2bbFn32OokrGIDaaOFr8n0kKFxtAOKQ9CTWP3nrEwjpehIA3_0D0gD3LS1FARBqOVT8/s400/ManagedRunning.JPG" alt="" id="BLOGGER_PHOTO_ID_5536197515127338770" border="0" /></a><span style="font-weight: bold;">4. Start All OPMN processes</span><br /></enter></enter><div style="text-align: justify;"><enter><enter>Finally, you need to start all OPMN processes: BI Server, BI Presentation Services, BI Java Host, BI Cluster Controller, BI Scheduler.</enter></enter><br /><enter><enter></enter></enter></div><enter><enter><br />Start OPMN services:<br /><span style="font-weight: bold;">Command</span>: opmnctl.cmd startall<br /><span style="font-weight: bold;">Path</span>: C:\fusionMW\instances\instance1\bin<br /><br />Monitor Progress:<br />To monitor the progress of this task simply put the following command in a similar window (from the same directory):<br /></enter></enter><span style="font-weight: bold;">Command</span>: opmnctl.cmd status -l<br /><span style="font-weight: bold;">Path</span>: C:\fusionMW\instances\instance1\bin<br /><br />Once all processes are "Alive" then you will get this screen:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgz909PqQzaPmvCHWtV0F6W04Y6gICrXHKC7KHVH899wHlX-eEg6ipuHacpDmL5Kha76ZaeBfC9puX_eYIQvj9Pc0h-N4H6lidDfiGHNSh2Dtf-C5neqDIhap7yQUKbwun7POoow9pWTtQ/s1600/opmnctl.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 62px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgz909PqQzaPmvCHWtV0F6W04Y6gICrXHKC7KHVH899wHlX-eEg6ipuHacpDmL5Kha76ZaeBfC9puX_eYIQvj9Pc0h-N4H6lidDfiGHNSh2Dtf-C5neqDIhap7yQUKbwun7POoow9pWTtQ/s400/opmnctl.jpg" alt="" id="BLOGGER_PHOTO_ID_5536199603466064338" border="0" /></a><br /><span style="font-weight: bold;"><br /><span style="font-size:130%;">Stopping BIEE</span></span><span style="font-size:130%;">:</span><br /><div style="text-align: justify;">This process is almost the same but in reverse order. To stop all BIEE services you will have to perform the following commands in the respective order in the same directories where each of them started<br /></div><br />1. Stop OPMN processes:<br /> > opmnctl stopall<br /><br />2. Stop Managed Server (bi_server1)<br />> stopManagedWeblogic.cmd bi_server1 t3://hostname:7001 username password<br /><br />3. Stop WLS (Admin Server)<br />> stopWebLogic.sh username password t3://host.domain:7001<br /><br /><div style="text-align: justify;">This is all you need to know about it to get started. If you already installed BIEE11g then you should be familiar with the Start/Stop BIEE services script that the installer produces. Well, that script uses a series of ANT commands to produce the same effect we have here described. In a future post I will explain about ANT and take such script as example.<br /><br />Until next time<br /></div><enter><enter><br /><br /></enter></enter>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-10938583614706943292010-10-15T14:46:00.027-05:002010-11-05T13:22:29.644-05:00OBIEE 11g Architecture<div style="text-align: justify;">In this article we will briefly explain the new OBIEE 11g architecture and its components. At first glance it seems complex to understand all the new pieces in OBIEE 11g, but let us take a look at the following picture:<br /></div><br /><div style="text-align: justify;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0MYQDGwH94_xImoW3FOVA5S13NxB0h2RUBtdXUXs34_ZZjPAL285AyL8EpBQoXLwDukhF6gjOn-SfUC7jn06LI1GaJ2geEjjO2-rXtHP08UvXz3vumfJ35u38-fp4sZSRiANzBguJU0Y/s1600/BIEE11gArchitecture.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 255px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0MYQDGwH94_xImoW3FOVA5S13NxB0h2RUBtdXUXs34_ZZjPAL285AyL8EpBQoXLwDukhF6gjOn-SfUC7jn06LI1GaJ2geEjjO2-rXtHP08UvXz3vumfJ35u38-fp4sZSRiANzBguJU0Y/s400/BIEE11gArchitecture.jpg" alt="" id="BLOGGER_PHOTO_ID_5528373281729145362" border="0" /></a>We can identify two main component types the OBIEE 11g: The <span style="font-weight: bold;">A) Java Components</span> and the <span style="font-weight: bold;">B) System Components</span>.<br /></div><br /><div style="text-align: justify;"><span style="font-weight: bold;">A) Java Components</span>: These are basically J2EE applications running in Weblogic Server. There are two subcomponents here: <span style="color: rgb(51, 51, 255);">1. Admin Server</span> and <span style="color: rgb(51, 51, 255);">2. Managed Server</span>. Each of them running in a <span style="font-weight: bold;">dedicated</span> Java virtual machine (JVM).<br /></div><ol><li style="text-align: justify;"><span style="font-weight: bold; color: rgb(51, 51, 255);">Admin Server</span>: This is nothing more than a set of J2EE applications that will help us Administering the system:</li></ol><ul style="text-align: justify;"><li><span style="font-weight: bold;">Admin Console (WLS)</span> — An adminstrative user interface that provides advanced management for Weblogic, JEE components, and security</li><li><span style="font-weight: bold;">Fusion Middleware Control</span> — An administrative user interface that is used to manage the BI domain.</li><li><span style="font-weight: bold;">JMX MBeans</span> — Java components that provide programmatic access for managing a BI domain.</li></ul><ol style="text-align: justify;"><li value="2"><span style="font-weight: bold; color: rgb(51, 51, 255);">Managed Server:</span> These are J2EE applications which will help the functioning of the BIEE System (highlighted in RED): </li></ol><ul><li style="text-align: justify;"><span style="font-weight: bold;" class="bold">BI Plugin</span> — It <span>routes</span> HTTP and SOAP requests to BI Presentation Services.</li><li style="text-align: justify;"><p><span style="font-weight: bold;">BI Security</span> — It enables the integration of BIEE Server and Fusion Middleware <span style="font-weight: bold;">security platform</span> through webservices calls.</p></li><li style="text-align: justify;"> <p><span style="font-weight: bold;" class="bold">BI Action Services</span><span style="font-weight: bold;"> </span>— It provides the dedicated Web services that are required by the Action Framework (a nice introduction can be found <a style="font-weight: bold;" href="http://www.rittmanmead.com/2010/07/19/obiee-11gr1-action-framework-and-conditions/">here</a>, another example of use is <a href="http://www.rittmanmead.com/2010/09/13/oracle-bi-ee-11g-action-framework-integration-with-external-applications/">here</a> and <a href="http://www.rittmanmead.com/2010/09/17/oracle-bi-ee-11g-action-framework-bi-web-services-for-soa/">here</a>) and that enable an administrator to manually configure which Web service directories can be browsed by users when they create actions.</p> </li><li><div style="text-align: justify;"> </div><p style="text-align: justify;"><span style="font-weight: bold;" class="bold">Webservices</span><span style="font-weight: bold;"> SOA</span> — This component provides Web services for objects in the BIEE Presentation Catalog, to invoke analysis, agents, and conditions. </p></li><li> <p><span style="font-weight: bold;" class="bold">BI Office</span> — This component provides the integration between Oracle Business Intelligence and Microsoft Office products.</p> </li></ul> and finally<br /><ul><li style="text-align: justify;">Two particular applications: BI Publisher (Reporting System) and RTD (technology platform which enable the analysis of data and provides insight by using data mining algorithms and techniques in real time).</li></ul><span style="font-weight: bold;">B) System Components:</span> These are <span style="font-weight: bold;">non</span>-J2EE components, such as processes and services written in C++ and java.<br /><ul><li> <p><span class="bold">BI Server</span> — It provides capabilities to query and access data as well as services for accessing and managing the RPD file (BIEE Metadata).</p> </li><li> <p><span class="bold">BI Presentation Services</span> — It provides the framework and interface for the presentation of business intelligence data to Web clients. It maintains an Oracle BI Presentation Catalog service on the file system for the customization of this presentation framework.</p> </li><li> <p><span class="bold">BI Scheduler</span> — Provides extensible scheduling for analyses to be delivered to users at specified times. (BI Publisher has its own scheduler.)</p> </li><li> <p><span class="bold">BI JavaHost</span> — It enables BI Presentation Services to support various components: Java tasks for BI Scheduler, BI Publisher, and Graph generation.</p> </li><li> <p><span class="bold">BI Cluster Controller</span> — It distributes requests to the BI Server, ensuring requests are evenly load-balanced across all BI Server process instances in the BI domain.</p></li></ul>In addition, the BI Domain requires a set of configuration files, the repository (RPD) file, the Presentation Catalog files, etc. Likewise, BIEE System uses a set of metadata tables stored in a relational database like Oracle.<br /><br /><span style="font-weight: bold;">How to Start BIEE System: </span>There are multiple ways to start the BIEE System, but it must follow certain order. Based on the description given above we need to :<br /><br />1. <span style="font-weight: bold;">Start NodeManager</span> : By default in Windows it runs when the OS starts (Reference about NodeManager can be found <a href="http://download.oracle.com/docs/cd/E14571_01/web.1111/e13740/overview.htm">here</a>)<br />2. <span style="font-weight: bold;">Start Admin Server</span> : Initiate Weblogic Server.<br />3. <span style="font-weight: bold;">Start Managed Server</span> : Initiate the main applications. Based on the picture above, these are highlighted in Red : BI Plugin, BI Security, BI Action Service, BI Webservices SOA. If you are planning to use BI Publisher or RTD then it must also be started.<br />4. <span style="font-weight: bold;">Start BIEE Services</span> : These are the main BIEE processes which are controlled by OPMN: BI Server, BI Presentation Server, BI JavaHost. If you are planning to use BI Scheduler then also start it. Or if your instance is a clustered environment then also start the BI Cluster Controller.<br /><br />In our next post, we will describe how to actually perform this operation and we will describe how to troubleshoot issues by looking at the log files.<br /><br /><span style="font-weight: bold;">References:</span><br />1. Introduction to BIEE Administration (<a href="http://download.oracle.com/docs/cd/E14571_01/bi.1111/e10541/getting_started.htm#BABGBECC">here</a>).<br />2. Rittman Mead posts on Action Services (<a href="http://www.rittmanmead.com/2010/07/19/obiee-11gr1-action-framework-and-conditions/">here</a>).Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-1783448594569201622010-10-13T17:36:00.001-05:002010-10-13T17:46:36.594-05:00Report Return HTMLGeneral:<br />When you navigate down to a third level report from a top level Report in OBIEE, when you hit the default return value on the dashboard it returns you to the first level report, and not the report that you navigated from. Also when you use the Go URL Command to integrate a Report into a web portal it will not have a return value to return you to a high level report, when you navigate from a top level report. <br /><br />To solve the above issues you can incorporate HTML in a Static View on the request.<br /><br />Purpose:<br />The purpose of this document is to show how to use the Static View on the OBIEE Request to add a return link for the report. <br /><br />Steps: <br />1. Create the OBIEE Request<br />2. Add a Static View to the Request<br />3. Add the onclick HTML to the Static View<br />4. Add the Static View to the Request Compound View<br />5. Left justify the Static View<br />6. Save the request<br /><br />HTML for a Return Link:<br /><br /><a onclick="history.back();" onmouseover="this.style.cursor='pointer'" align="Left"><font color="teal"><u>Return</u></font></a><br /><br />Summary:<br />This document shows how to create a return link for the report that has been navigated to from a higher level report in OBIEE. This same techniques in also used to create a return link for a Report that has been added to a web portal, and has a navigation to a lower level report.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-835326339995404012010-10-13T17:33:00.003-05:002010-10-13T17:35:36.783-05:00Testing Project Business RequirementsDiscussion:<br />We usually think of testing during the Project Development Cycle. The first instance of testing is to do some unit testing during development to insure that the system does not break when a user logons on to the system and accesses screens to enter data. A second instance of testing is usually during User Acceptance Testing (UAT) to let the user logon to the system and test the functionally of the system. If testing is developed in the environment focused on testing the actual testing begin when the Project is first undertaken. One of the first documents in the testing cycle is to develop a Test Strategy Document. This document is normally developed by the Testing Team with the help of the other Project Team Members especially the business users. Once the document is completed it should be reviewed by all the team members, and agreed to by the Project Team. The next document is the detail test plan. This is normally developed during the Requirements and Design Phases of the Project Life Cycle, and details the detailed testing needs and requirements. The next documents that are completed during the Project Life Cycle are the Test Cases. The Test Cases detail are the scenarios that the users will encounter when using the system, and provides the user the capability to respond to whether the system processes meet the expected conditions.<br /><br />Requirement Testing:<br />One of the most often missed steps during the Project Testing Cycle is to test the System Requirements. Once the Requirements Document is completed, the next step in the process it to test the documented requirement to insure that the meet the Business Users needs. This is usually a very difficult process because many Business Users may understand part of their business process, but do not have a detailed understanding of all phases of their business processes, and the data that supports their business processes. One of the main functions of the Information Technology Department is to work with the Business Users to help them understand the business processes and the data that supports their business processes. Usually Requirements Gathering Workshops are one of the best ways to develop the Project Requirements and help educate the Business Users about their business processes the that data that supports their business processes. <br /><br />The Requirements Testing Phase is an excellent to give all members the opportunity gain an understanding of the Business Requirements, and to ask detailed questions about all phases of the Project Business Requirements. This is very critical because during the Project Design Stage the design should address all the Project Business Requirements. I have seen projects where the Project Design is not compatible with the Project Requirements Documents. This can only lead to project failure.<br /><br />Some of the main questions that need to be asked during the Business Intelligence Requirements Testing Phase are:<br /><br />1.) Do the metrics enable the business user to measure the efficiency and effectiveness of his business processes?<br />2.) Do the Dimensions provide the attributes that enable business user to provide the ways to view the metrics to measure their business processes?<br />3.) Is the proper security established to access to the Reports and Dashboards by the appropriate business users?<br />4.) Is the proper data security established to permit the business users access their data and not see other users secure data?<br />5.) Can we look at Charts and Graphs to view tends in data?<br />6.) Can we easily navigate through the BI Application without having to minimize the keystrokes and scrolling?<br />7.) Does the data provide the information to measure progress with the Business Users Goals and Objectives?<br />8.) Do the information, reports, and dashboards provide the needed information to help the business users better manage their business processes?<br />9.) Do the information, Reports and dashboards show out of bound conditions so that the business user can respond in a timely manner to correct the situation?<br />10.) Can the business users use the data to further analyze out of bound conditions or look at the data from a different perspective?<br /><br />Summary:<br />Testing the Business Requirements is an important step of the Project Life Cycle. If the Business Requirements are thoroughly tested by all team members, it will lead to a more successful and rewarding development effort for the Project Team. By Testing the requirements early in the Project Life Cycle and getting agreement that they are correct, all the remaining Project Phases will be easier and lead to a better developed system that will meet the Business Users needs and Requirements.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-38054896597090184342010-10-05T11:30:00.003-05:002010-10-05T11:51:47.780-05:00OBIEE Go URL Command to access Reports and Dashboards from External Portals or ApplicationsGeneral:<br />When using OBIEE at a Customer’s sites, as part of the requirement it may be necessary to integrate OBIEE Reports and Dashboards within other applications or portals. In one instance at a client site, the requirement was to integrate the OBIEE Repots, Dashboards, and Alerts into a Web Portal. The Portal was the main way for Line Manager to view their OBIEE Reports and Dashboards. Also another requirement was to distribute alerts from OBIEE Delivers to the Line Mangers email and let the Line Managers navigate to more detailed reports from the report delivered to their email. The alerts were based on a condition occurring in situation where the Line Manager needs to be notified. OBIEE Delivers enable an alert to be sent to specific uses based on a conditional report; however when the alert was received by the Line Manager he was unable to drill down to the more detailed reports. The way that the requirements were met was to use OBIEE Presentation Services Go URL Command.<br /><br />Reference: <br />Chapter 11 of Oracle Business Intelligence Presentation Services Administration Guide, Version 10.1.3.2<br /><br />Purpose:<br />The purpose of this document is to discuss the OBIEE Go URL Command and show how it can be used to incorporate Oracle Business Intelligence Results into External Portals using the Go URL Command. Also it will discuss how to permit navigation down to detailed reports from a report delivered to a Mangers’ email. <br /><br />Snytax:<br />The starting syntax of the GO URL Command is:<br /><br />http://server/analytics/saw.dll?GO<br /><br />There are many other parameters and option that can be used in the GLO URL to access Reports and Dashboards. The following topics will show some of the parameters and filters that can be used with the GO URL Command. The parameters and filters are discussed in more detail in the referenced document.<br /><br />Syntax for use in Portals:<br />Below is an example of the Go URL used in a web portal to access an OBIEE Report. The sections of the Go URL command are discussed below the example command.<br /><br /> https://server/analytics/saw.dll?GO&Path=/Shared/Expense/Expense%20Cost/Direct%20Reports%20Requestor%20Summary&ViewName=compoundView!1&Options=drf<br /><br />https://server/analytics/saw.dll?GO – The standard GO URL syntax<br /><br />&Path=/Shared/Expense/Expense%20Cost/Direct%20Reports%20Requestor%20Summary – The path to the OBIEE Presentation Server Report. Note that %20 is used in the statement where spaces are in the Presentation Server Path to the Report.<br /><br />&ViewName=compoundView!1 – The view that is requested in the Go URL to be displayed in the portal. The View Name is found in the XML for the Report in the Advance Tab in OBIEE Answers. If there are different compound views needed for different reasons, multiple compound views can be made for the request. Only the one that is needed for the portal would be referenced in the Go URL Statement. Instead of using a compound view, any view in the request can be referenced in the Go URL command.<br /><br />&Options=drf – A link option in the Go URL command that permits the following for the report in the portal: d – download to Excel, r – refresh results, f – printer friendly<br /><br />Other optional parameters can be used in the Go URL command. Refer to the referenced document for a discussion of the optional parameters that can be used for the Go URL command. <br /><br />Syntax for use in an email Alert Report:<br />Below is an example of a Go URL command that was used in an Alert to permit enable navigation to a lower level report. A discussion of each section of the Go URL Command will be discussed below the example.<br /><br />'href=http://server/analytics/saw.dll?Go&Path=/Shared/Project%20Central/Expense%20Report%20Listing%20Person&Action=Navigate&P0=1&P1=eq&P2=Requestor."Requestor%20Name"&P3='|| Replace(Requestor."Requestor Name",' ','%20') || ' > '||Requestor."Requestor Name"||'<br /><br />This Go URL command is placed in the column formula section of the column on the report that you want to navigate from. You also have to edit the column and make it a HTML format. The above href command must be enclosed in the HTML anchor syntax.<br /><br /><br />href=http://server/analytics/saw.dll?Go - The href statement for the Go URL command<br /><br />&Path=/Shared/Project%20Central/Expense%20Report%20Listing%20Person – The path to the report in the OBIEE Presentation Server. Note the use of the %20 for the spaces in the OBIEE Presentation Server catalog path to the report.<br /><br /><br /><br />&Action=Navigate – the action filter to tell that tell the Go URL Command that you want to navigate<br /><br />&P0=1 – the number of columns that you want to filter<br /><br />&P1=eq – the operation operator. The other potential operation operators are shown in the referenced document<br /><br />&P2=Requestor."Requestor%20Name" – the requestor column in the report that you want to navigate to. This must be a filter with an “ is prompted” value.<br /><br />|| - concatenation symbol<br /><br />&P3='|| Replace(Requestor."Requestor Name",' ','%20') || ' – the name of the column on the report that you need to filter from. The Replace statement is needed because the Requestor Name has spaces in it in the database.<br /><br />' > '||Requestor."Requestor Name"||' – the name of the column that should be displayed in the column on the Report that you want to navigate from.<br /><br />Once you build the Go URL command you can test it in the Web Browser to check the syntax and insure that the Report will drill down to the detail report from the displayed report. <br /><br />Other Options and Filters:<br />The referenced document discusses the optional parameters and filters that can be used the Go URL command. The Go URL command can access Dashboards as well as OBIEE Reports. Refer to the attached document for more information on the Go URL Command.<br /><br />Summary:<br />The Go URL command is a good way to incorporate OBIEE Reports and Dashboards in into External Portals or other Applications. It can also be used to navigate down to detailed reports from Alerts sent to Managers by email. Going forward I anticipate that many other companies will want to incorporate OBIEE Reports and Dashboards into their existing Application instead of having to navigate and login to the OBIEE Application. Using the Go URL command is not difficult but you need to become familiar with the syntax, parameters, and filters to effectively use the command to meet your client or your requirements.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-75975715608934955312010-09-24T01:18:00.001-05:002010-09-24T01:18:09.619-05:00OBI Apps Informatica Performance Tuning – Optimizing SIL Read Throughputs – Teradata Response Buffer Size Optimization<h3>Teradata Response Buffer Size</h3> <p>For the reader connection to source data from a Teradata database, ODBC connection is used out of the box. There is another option using piped FastExport utility connection with which there has been mixed success and will be discussed in a later blog post. OBDC can be tuned to achieve better performance in read throughput by changing the response buffer size. MaxRespSize is used to change the value in ODBC.ini. The default is 8192. The max value that can be specified is 1048576. From experience at a client site, simply specifying the max value did not help in improving the throughput. Increase the value systematically to determine the sweet spot for a network. The graph bellow illustrates throughputs achieved at different MaxRespSize values</p> <p><a href="http://lh4.ggpht.com/_apG_ERuekcQ/TJxCnw7MyUI/AAAAAAAAAO8/_xR1t5jfmT8/s1600-h/image%5B12%5D.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_apG_ERuekcQ/TJxCoKPExiI/AAAAAAAAAPA/Wwn-TNj_My8/image_thumb%5B8%5D.png?imgmax=800" width="434" height="235" /></a> </p> <p>Driver=/usr/odbc/drivers/tdata.so</p> <p>Description=Teradata Linux 64-bit</p> <p>DBCName=DWTESTcop1.XXXX.COM</p> <p>SessionMode=Teradata</p> <p>StCheckLevel=0</p> <p>LastUser=</p> <p>Username=</p> <p>Password=</p> <p>Database=</p> <p>DefaultDatabase=</p> <p>OutPutAsResultSet=Yes</p> <p>MaxRespSize=8192</p> Kumar Kambamhttp://www.blogger.com/profile/04530427629766061707noreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-17505776031511153362010-09-03T21:10:00.001-05:002010-09-03T21:10:37.450-05:00OBI Apps Informatica Performance Tuning - Optimizing SDE Read Throughputs - Oracle DB Network Optimization<h3>Oracle DB Network Optimization</h3> <p>After exhausting query performance with viable indices, consider modifying Session Data Unit (SDU) and Transport Data Unit (TDU) parameters to increase session throughput. The default value of SDU and TDU is 2048 and the maximum is 32767. These can be set as global parameters in sqlnet.ora or for a particular descriptor in tnsnames.ora. They need to be set on both server and client. Consider setting these parameters in tnsnames.ora so that it affects only a particular connection descriptor that is used for Oracle DB server to Informatica server communication. The SDU and TDU parameters can be set higher depending on the network and memory. Get help from your Infrastructure team in determining the MSS (Maximum Segment Size) of the network. Ideally they should be in the multiple of MSS. In addition, the SDU should not be greater than TDU. Ideally, they should be the same. For slower networks, consider a lower value. </p> <p><b>Client Side Configuration (Informatica Server):</b></p> <p><b>tnsnames.ora:</b></p> <p>CRMOLTP = </p> <p>  (DESCRIPTION = </p> <p><b>(SDU=32768) </b></p> <p><b>  (TDU=32768)</b></p> <p>    (ADDRESS_LIST = </p> <p>      (ADDRESS = (PROTOCOL = TCP)(HOST = crmoltp.xyzcompany.com)(PORT = 1521)) </p> <p><b>Server Side Configuration:</b></p> <p><b>listener.ora:</b></p> <p>SID_LIST_LISTENER =</p> <p>(SID_LIST =</p> <p>(SID_DESC =</p> <p><b>(SDU=32768) </b></p> <p><b>  (TDU=32768)</b></p> <p>(GLOBAL_DBNAME = CRMOLTP)</p> <p>(ORACLE_HOME = /u01crmoltp/oracle/product/10.2.0)</p> <p>(SID_NAME = CRMOLTP)</p> <p>)</p> <p>)</p> <p><b>tnsnames.ora:</b></p> <p>CRMOLTP =</p> <p><b>(SDU=32768) </b></p> <p><b>(TDU=32768)</b></p> <p>(DESCRIPTION =</p> <p>(ADDRESS =</p> <p>(PROTOCOL= TCP)</p> <p>(Host= CRMOLTP)</p> <p>(Port= 1521))</p> <p>(CONNECT_DATA =</p> <p>(SID = CRMOLTP)</p> <p>)</p> <p>)</p> Kumar Kambamhttp://www.blogger.com/profile/04530427629766061707noreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-71899914722388305912010-07-23T16:23:00.018-05:002010-07-23T17:29:12.677-05:00Impressions of the Oracle BI 11g Launch in New YorkHats off to Oracle for doing a great job on the much anticipated launch of OBIEE 11g. Dennis Busby (BICG) and I were fortunate enough to attend the launch event in New York on July 20 with approximately 300 other people.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrjBlt7QK1VJbOysfyx4fLr55VKoyljlWTAsmr0jKpnLBJLsxMXOzVI8ekQog_2OdSEf3aemLPpRuewEDtREEpNRe_Cf7j-hTwa0IiTWMIsSvsOuVVdx1tyxHEc28nG1FGahbs6IFPldUd/s1600/photo+(9).JPG"><img style="float:center; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrjBlt7QK1VJbOysfyx4fLr55VKoyljlWTAsmr0jKpnLBJLsxMXOzVI8ekQog_2OdSEf3aemLPpRuewEDtREEpNRe_Cf7j-hTwa0IiTWMIsSvsOuVVdx1tyxHEc28nG1FGahbs6IFPldUd/s320/photo+(9).JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5497222512887680370" /></a><br /><br />The session started with Tony Fernicola kicking off the launch from one of the buildings that make up the Lincoln Center campus. The theater featured an amazing view of Central Park and the Manhattan skyline. Tony set the stage discussing the history of BI at Oracle as well as Oracle’s vision for business intelligence in the future.<br /><br />The OBIEE 11G release is instrumental to Oracle’s BI vision as it does a great job of integrating OBIEE with additional Oracle technologies including Hyperion Essbase, Oracle Enterprise Manager, Oracle WebCenter and WebLogic (to name a few).<br /><br />Paul Rodwick and David Granholm then served as co-presenters for the North American release of OBIEE 11g. They grouped the content into 4 different categories that included ROLAP, MOLAP, BI Publishing, and Collaboration. During the presentation, Rodwick and Granholm provided views of the interface design and of the enterprise approach to the architecture. Both presenters did a very nice job showing off Oracle's new business intelligence suite in a way that I felt highlighted the cababilities around OBIEE 11g.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGil4HfWYs2_NF2DZ_Xy6wvPMcHkYicDycdL9oew2mzxmVbGB-yzRprkkKa0fmgBTPDf5qEsG0jB7ywebJ99rJwB9OOA7hCDv3P8ieGa9cvmkhcZwf5lmJns9d3_d5M-3Ox3FAmWEF0e8c/s1600/11gGeospatialVisualization.jpg"><img style="float:center; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 400px; height: 248px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGil4HfWYs2_NF2DZ_Xy6wvPMcHkYicDycdL9oew2mzxmVbGB-yzRprkkKa0fmgBTPDf5qEsG0jB7ywebJ99rJwB9OOA7hCDv3P8ieGa9cvmkhcZwf5lmJns9d3_d5M-3Ox3FAmWEF0e8c/s320/11gGeospatialVisualization.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5497223218854823122" /></a><br /><br />BI Consulting Group has been an integral part of the beta process. BICG's OBIEE 11g Task Force members, consisting of 15 BICG consultants and managers, are working daily on dissecting the OBIEE 11g beta release to ensure we continue to be the most knowledgeable Oracle Business Intelligence experts in the world. Our OBIEE 11g Task Force has been doing a great job on providing beta feedback to Oracle as well as paving the way for BICG to guide and help our customers who plan on embarking on their own OBIEE 11g initiatives.<br /><br />To ensure we are continually providing proper guidance to our customers and partners around Oracle BI 11g, BICG will be announcing new topics for our BICG Webinar Series that will feature BICG's OBIEE 11g Task Force and focus on the key questions our customers are asking about 11g. Our OBIEE 11g Task Force is also in the process of scheduling Free OBIEE 11g Hands-On Workshops across North America to allow customers and prospects an important hands on experience!<br /><br />I truly believe the new capabilities of Oracle Business Intelligence 11g will allow organizations to better meet their strategic enterprise business intelligence-related goals . I am most excited to start thinking creatively around best practice usage of collaboration, action framework and the Hyperion Essbase integration as these new features will be game-changers throughout the entire BI space.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCbw8-qnrsSZy1_ol7ntk6pBJkuMS98nC-IFIWX9wrl_hbucfuR7SaNEJgfWOZGV4KKwCPMYepNrzD3G22LpMfLJoz-6M8zr80L8Tl1QpHL0erKp0QM2ufOzTHEXna2RrYdIfv2B3rGV32/s1600/logo_bicg_webinar_series_120.jpg"><img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 120px; height: 89px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCbw8-qnrsSZy1_ol7ntk6pBJkuMS98nC-IFIWX9wrl_hbucfuR7SaNEJgfWOZGV4KKwCPMYepNrzD3G22LpMfLJoz-6M8zr80L8Tl1QpHL0erKp0QM2ufOzTHEXna2RrYdIfv2B3rGV32/s400/logo_bicg_webinar_series_120.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5497225282493990274" /></a><b><span class="Apple-style-span" style="font-size:large;"><u>Upcoming BICG Webinar Series Events</u></span></b><div><br /></div><div><div><b><a href="https://www1.gotomeeting.com/register/217952440">Essbase Unleashed!</a></b></div><div><span class="Apple-style-span" style="font-size:small;">Leveraging XOLAP and Hybrid Analysis for Increase Performance and Real-time Analytics</span></div><div><span class="Apple-style-span" style="font-size:small;">July 27, 2010, 1pm-2pm ET</span></div><div><span class="Apple-style-span" style="font-size:small;"><a href="https://www1.gotomeeting.com/register/217952440">Register Now</a></span></div></div><div><br /></div><div><div><b><a href="https://www1.gotomeeting.com/register/260427744">OBIEE 11g - What's in it for me?</a></b></div><div><span class="Apple-style-span" style="font-size:small;">The first chapter of many BICG Webinar Series chapters to focus on Oracle BI 11g. BICG's OBIEE 11g Task Force will simplify the 100's of enhancements and new functionality in the new release.</span></div><div><span class="Apple-style-span" style="font-size:small;">August 31st, 2010, 1pm-2pm ET</span></div><div><span class="Apple-style-span" style="font-size:small;"><a href="https://www1.gotomeeting.com/register/260427744">Register Now</a></span></div></div><div><br /><br /></div>Amy Mayerhttp://www.blogger.com/profile/06506158306839460876noreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-6275198206891460172010-07-19T08:53:00.004-05:002010-07-19T08:58:51.686-05:00BICG at Florida OAUG Summer MeetingDLT Solutions, Oracle, and BI Consulting Group (BICG), will be holding a half-day workshop for the Florida OAUG on Tuesday, July 20th. In addition to the members of the FLOAUG this event is opened to all State & Local Government agencies as well.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDWwI_52F0iVCUHkuZ2zPuVj03D3resQ1HageAgWzmKSg2-z6oHRViQmUdXmqNZUdpUwMG6-cfz9ptsxQndz7jxhsQ8M5At2oRetn7O2wqu1PAsrU_Hqn3UuRjUo1-odPeCu2TBdOljHF0/s1600/Oracle_Corporate.gif"><img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 183px; height: 25px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDWwI_52F0iVCUHkuZ2zPuVj03D3resQ1HageAgWzmKSg2-z6oHRViQmUdXmqNZUdpUwMG6-cfz9ptsxQndz7jxhsQ8M5At2oRetn7O2wqu1PAsrU_Hqn3UuRjUo1-odPeCu2TBdOljHF0/s320/Oracle_Corporate.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5495616249368467474" /></a>At this event we will focus on the Oracle HR/Payroll modules and Oracle’s BI Analytics platform with an emphasis on HR reports, graphs, dashboards, and KPIs. The discussion will be led by both Oracle and BI Consulting Group with such noted speakers as Ian Sterling (Oracle), Matt Kvancz (BICG), and Todd Wall (Oracle) sharing their extensive knowledge and experience with attendees.<br /><br />Ian sterling will discuss HCM Roadmap and Vision, Key Features, R12.1.3 Functional Enhancements, and Productive User Interfaces. Todd Wall will discuss the R12 HCM Upgrade Timeline, key R12 milestones, and workarounds. Brad Reinders and BI Consulting Group will conclude the day focusing on the Oracle BI Analytics platform with an emphasis on HR/Payroll metrics, KPI’s, and reporting.<br /><br />Agenda:<br /><br />0930 – 1000 Registration<br />1000 – 1010 Introductions<br />1010 – 1100 Oracle HCM Roadmap, Key & New features/functionality<br />1100 – 1110 Break<br />1110 – 1200 R12 HCM Upgrade Timeline, Key Milestones, Assessments, & work arounds<br />1200 – 0100 Lunch<br />0100 – 0250 BI Consulting Group Oracle BI Analytics Overview and HR/Payroll reporting<br />0250 – 0300 Concluding Remarks<br /><br />We hope to see you there!<br /><br /><br />Date:<br />Tuesday, July 20th<br />Time:<br />9:30 a.m. – 3:00 p.m. ET<br />Location:<br />DoubleTree Castle Hotel<br />8629 International Drive<br />Orlando, FL 32819<br /><br />Registration Link: <a href="http://www.dlt.com/events/Florida_Oracle_Application_Users_Group/2488">http://www.dlt.com/events/Florida_Oracle_Application_Users_Group/2488</a>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-7569385167918404048.post-5618109877740610822010-07-07T13:06:00.006-05:002010-07-07T13:52:47.988-05:00Using Selenium for OBIEE Regression TestingIn my last post I introduced Selenium, an open-source testing platform with an easy-to-use Firefox plugin that can be used as a cost-effective tool for regression testing web-based applications like OBIEE. I promised to demonstrate workaround to OBIEE-specific challenges when using Selenium, namely:<br /><ul><li> Selenium's problematic handling of daughter or "target" windows, and</li><li>Dynamic element ID generation in OBIEE<br /></li></ul>[Note: All examples given here will be executed against the Paint demo installation using Firefox 3.5.10, which according to Oracle Support is the most recent version of Firefox that is supported in the most recent version of OBIEE (10.1.3.4.1)]<br /><br />Here's a common scenario impacted by these challenges: When configuring a Dashboard to link to another Dashboard, OBIEE would open the new Dashboard in a "daughter" or "target" window.<br /><br />Selenium would have trouble scripting this behavior because a) the only way Selenium can effectively identify target windows is by element ID (this is a known issue that doesn't appear to have a resolution from the Selenium project forthcoming anytime soon - though, in the grand tradition of Open Source software, you are welcome to figure out your own fix!) and b) OBIEE generates element ID's dynamically, which means they will change with each instance of the Presentation Server. So any Selenium-generated script would not work against a different Presentation Server, or against the same Presentation Server after a restart.<br /><br />To illustrate the problem more clearly, I will create links to Dashboard pages in "My Dashboard." In this example I created links to "Brand Analysis", "Regional Analysis" and "Year over Year Analysis".<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_txlmHJsD_PA/TDTLODlmhRI/AAAAAAAAAIg/NCgaoXd1Ii8/s1600/ss_MyDashboard.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 266px;" src="http://1.bp.blogspot.com/_txlmHJsD_PA/TDTLODlmhRI/AAAAAAAAAIg/NCgaoXd1Ii8/s320/ss_MyDashboard.png" alt="" id="BLOGGER_PHOTO_ID_5491237288013104402" border="0" /></a><br />As you know, clicking into any of these links opens a new window (whose name = "_blank") to display the selected dashboard.<br /><br />The workaround solution to this problem: 1) identify the URL that is opened in the "_blank" window, then 2) execute a standard Selenium "Open" command on that URL.<br /><br />The key is the first step: identifying the URL of the "_blank" window. Doing so involves two tricks: a) Identifying the desired <A> element using XPath (which is an open standard that Selenium relies on to identify & interact with page elements); then b) identifying its HREF attribute.<br /><br />If you're not familiar with XPath, it may be helpful to take a look at the following sites first, each of which offer a concise one-page explanation of XPath basics:<br /><ul><li> XPath Syntax<br />http://www.w3schools.com/xpath/xpath_syntax.asp<br /><br /></li><li>How XPath Works<br />http://java.sun.com/j2ee/1.4/docs/tutorial/doc/JAXPXSLT3.html<br /></li></ul>Let's take a look at the html for the customized "My Dashbaord" to understand some essential XPath concepts.<br /><br /><span style="font-family:courier new;"><a </span> <br /><span style="font-family:courier new;"> href = "saw.dll?PortalPages[...]Done=Close" </span><br /><span style="font-family:courier new;"> target = "_blank" </span><br /><span style="font-family:courier new;"> name = "SectionElements"></span> <br /><span style="font-family:courier new;"> <span </span> <br /><span style="font-family:courier new;"> class="NavLinkCaption"></span><br /><span style="font-family:courier new;"> Brand Analysis</span> <br /><span style="font-family:courier new;"> </span></span><br /><span style="font-family:courier new;"> </a></span><br /><br />The "attributes" of the <a> tag (or "Element") are "href", "target" and "name". Their respective values are 'saw.dll?PortalPages[...]Done=Close', '_blank', and 'SectionElements'.<br /><br />The "attribute" of the <span> element is "class" and its value is 'NavLinkCaption".<br /><br />The "child" of the <a> element is the <span> element. Or put another way, the <a> element is the "parent" of the <span> element.<br /><br />The <span> element content "contains" the text 'Brand Analysis'.<br /><br />Using XPath there are several ways to identify an element, but not all can be used with web pages created in OBIEE:<br /><ul><li>Element ID - Usually the best approach, and is the default behavior in Selenium, however this approach is not possible because OBIEE generates element ID's dynamically</li><li>Ordered location in the document - Not advisable because any change in document content (e.g., adding a new <a> tag before the desired <a> tag) may break the XPath query</li><li>Attribute (href, target, name, etc) - Not possible because OBIEE attributes are not unique; there are several href's whose target = "_blank" or name = "SectionElements"</li><li>Displayed content - The best bet for OBIEE, since displayed content will be unique by definition (how else could the user differentiate between the links?)<br /></li></ul>To identify the desired <a> element via the contents of the <span> element, we can use the XPath "contains()" predicate:<br /><br />//a/span[contains(.,'Brand Analysis')]<br /><br />Pseudo-SQL translation: Select span.* from document where span.parent = <a> and span.content like '%Brand Analysis%'<br /><br />Then the ".." expression (meaning "Parent of") can be used to identify the desired <a> tag, which is the parent of the <span> tag we identified above.<br /><br />//a/span[contains(.,'Brand Analysis')]/..<br /><br />Pseudo-SQL translation: Select span.parent from document where span.parent = <a> and span.content like '%Brand Analysis%'<br /><br />Now we're going to use this XPath path expression to create two Selenium test case steps -- one which uses the Selenium saveAttribute command to assign the value of the <a> tag's href to a variable named 'windowURL', and another which opens that URL within the current window:<br /><br />[Background: Selenium steps consist of three components: Command, Target and Value - For full documentation of Selenium's functionality see its official site: http://seleniumhq.org/docs]<br /><br />Step 1:<br /> Command: storeAttribute<br /> Target: //a/span[contains(.,'Brand Analysis')]/..@href<br /> Value: windowURL<br /><br />Step 2:<br /> Command: open<br /> Target: ${windowURL}<br /> Value: [blank]<br /><br />Here's how the commands would look like in Selenium:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_txlmHJsD_PA/TDTLaoLmIiI/AAAAAAAAAIo/A253zTvXWr4/s1600/ss_SeleniumSteps.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 174px;" src="http://3.bp.blogspot.com/_txlmHJsD_PA/TDTLaoLmIiI/AAAAAAAAAIo/A253zTvXWr4/s320/ss_SeleniumSteps.png" alt="" id="BLOGGER_PHOTO_ID_5491237503994569250" border="0" /></a><br />There are many more aspects to Selenium integration with OBIEE to learn that I hope to touch on in subsequent posts - but this little tutorial should give you a good start.<br /><br />Have fun...Joseph Naujokashttp://www.blogger.com/profile/11689973463137285702noreply@blogger.com0