ODTUG Aggregator ODTUG Blogs http://localhost:8080 Sat, 19 Aug 2017 16:26:04 +0000 http://aggrssgator.com/ OAC - Cube Designer 12.2.1.1.105 SV11.1.2.5.710 http://adashek-epm.blogspot.com/2017/08/oac-cube-designer-12211105-sv11125710.html YEAH! OAC - Essbase and the Cube Designer Ribbon and Extension<br /><br /><br />A new way to create and build Essbase cubes, is not just from Excel workbooks, but also with Smart View! :) This has been technically available and supported with recent versions going back in Smart View to version 11.1.2.5.620 mentioned in a <a href="http://adashek-epm.blogspot.com/2017/06/lowest-supported-oac-smart-view-version.html" target="_blank">prior post</a><br /><br />So let me get this out of the way. The naming/numbering conventions are making me a little insane<br /><br /><ul><li>Software Release OAC 17.3.1 plus patch number</li><li>Smart View 11.1.2.5.710 plus extension(s)</li><li>Cube Designer 12.1.1.105 extension</li></ul><br /><br />why? Oh Why? JUST WHY?<br /><br /><br />Well, onto the geeky portion of the post that starts now. Hope you enjoy the little bit of fun I added while working on this post.<br /><br />Let's get started.<br /><br /><br /><a href="http://1.bp.blogspot.com/-WGvX8vTtJSQ/WZh1yt9QL-I/AAAAAAAACDE/bEijCcKPm3YmvxYKryOIIQr3bFXDxZ_TwCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.00.44%2BAM.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="29" src="https://1.bp.blogspot.com/-WGvX8vTtJSQ/WZh1yt9QL-I/AAAAAAAACDE/bEijCcKPm3YmvxYKryOIIQr3bFXDxZ_TwCK4BGAYYCw/s200/Screen%2BShot%2B2017-08-19%2Bat%2B11.00.44%2BAM.png" width="200" /></a><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-VN1PDgzCNx0/WZh15q1EqpI/AAAAAAAACDM/wFvniA2S9XQ5qzrrosOMOk_1dc_st7xAgCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.02.15%2BAM.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="51" src="https://1.bp.blogspot.com/-VN1PDgzCNx0/WZh15q1EqpI/AAAAAAAACDM/wFvniA2S9XQ5qzrrosOMOk_1dc_st7xAgCK4BGAYYCw/s200/Screen%2BShot%2B2017-08-19%2Bat%2B11.02.15%2BAM.png" width="200" /></a></div><br />Virtual machine .. Windows 10 64bit<br /><br /><br /><br />Machine started in a matter of seconds<br /><br /><i>Note: I already had done the download and installation of the latest version of Smart View 11.1.2.5.710 that recently came out in August-2017. Plus the Smart View Cube Designer Extension was previously installed and enabled</i><br /><br />Time to launch Excel 2016 32bit. Done.<br /><br />Let's verify the Version of Smart View<br /><br /><a href="http://3.bp.blogspot.com/-WCVMbSzxo1o/WZh5FfS7gnI/AAAAAAAACDY/TIM4lCGWr80YO-0UcRXh7Tdbu8Cdb4TdwCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.03.38%2BAM.png" imageanchor="1"><img border="0" height="609" src="https://3.bp.blogspot.com/-WCVMbSzxo1o/WZh5FfS7gnI/AAAAAAAACDY/TIM4lCGWr80YO-0UcRXh7Tdbu8Cdb4TdwCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B11.03.38%2BAM.png" width="640" /></a><br /><br />Beautiful. Let's take a look at the extensions.<br />Go to Smart View .. Options ..<br /><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-EjsgwxnsQKk/WZh5WDF2I6I/AAAAAAAACDg/AVyT4ZtJtAYlKcGnJwqXtdsUA2_b7rmvACK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.05.59%2BAM.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://1.bp.blogspot.com/-EjsgwxnsQKk/WZh5WDF2I6I/AAAAAAAACDg/AVyT4ZtJtAYlKcGnJwqXtdsUA2_b7rmvACK4BGAYYCw/s400/Screen%2BShot%2B2017-08-19%2Bat%2B11.05.59%2BAM.png" /></a></div><br /><br /><br /><br /><br /><br /><br /><br /><br />Go to the Extensions tab on the bottom left<br /><br /><a href="http://1.bp.blogspot.com/-vyO-a2-mT6E/WZh5c-VDMhI/AAAAAAAACDo/NwVuxB2BcEENaYsbvpiBs7xsWm9xHvBDgCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.07.21%2BAM.png" imageanchor="1"><img border="0" height="528" src="https://1.bp.blogspot.com/-vyO-a2-mT6E/WZh5c-VDMhI/AAAAAAAACDo/NwVuxB2BcEENaYsbvpiBs7xsWm9xHvBDgCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B11.07.21%2BAM.png" width="640" /></a><br /><br />You may have more or less extensions, we are looking for and to make sure we have the 'Cube Designer' extension, which we do. Perfect.<br /><br /><br />The Cube Designer Ribbon<br /><br /><a href="http://3.bp.blogspot.com/-ZLE_8YOqoxk/WZh6C86ltdI/AAAAAAAACD0/gXzapyyoVocI9l0eihp_q48b6D3BTuw6wCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.09.46%2BAM.png" imageanchor="1"><img border="0" height="104" src="https://3.bp.blogspot.com/-ZLE_8YOqoxk/WZh6C86ltdI/AAAAAAAACD0/gXzapyyoVocI9l0eihp_q48b6D3BTuw6wCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B11.09.46%2BAM.png" width="640" /></a><br /><br /><br />This post is going to focus on the Cube Designer and more posts to follow.<br /><br />AND NOW .. for the main attraction. Cube Designer.<br /><br /><a href="http://1.bp.blogspot.com/-Mx4I-Sv1Fns/WZh6sipkiVI/AAAAAAAACEA/xYN_2MI1gIQqvXZqJJ3dh66FheRMhT-fACK4BGAYYCw/s1600/CubeDesigner.png" imageanchor="1"><img border="0" src="https://1.bp.blogspot.com/-Mx4I-Sv1Fns/WZh6sipkiVI/AAAAAAAACEA/xYN_2MI1gIQqvXZqJJ3dh66FheRMhT-fACK4BGAYYCw/s400/CubeDesigner.png" /></a><br /><br /><br />Make sure that you have an active Excel Workbook. Click the Cube Designer button to begin building an Essbase cube with the Wizard. Did someone say wizard?<br /><br />Essbase Cloud Cube Designer. Slightly different name. Must be a version thing mentioned earlier ;)<br /><br /><a href="http://4.bp.blogspot.com/-DwfP6lYI8KA/WZh7FnSnkCI/AAAAAAAACEI/SMRzmMxBqDsi9SAnAIT5vlQ5iVaMQkORwCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.28.11%2BAM.png" imageanchor="1"><img border="0" height="640" src="https://4.bp.blogspot.com/-DwfP6lYI8KA/WZh7FnSnkCI/AAAAAAAACEI/SMRzmMxBqDsi9SAnAIT5vlQ5iVaMQkORwCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B11.28.11%2BAM.png" width="354" /></a><br /><br />And there you have it.<br /><br />But we are not done just yet.<br /><br />Why don't we continue to see what happens when we step through the extension window 'wizard' to build a cube.<br /><br />Tabs across the top of the extension. Cube, Settings, Dimensions, Data, Calc<br /><br /><a href="http://4.bp.blogspot.com/-nGYO0BeoLnQ/WZh8S8723FI/AAAAAAAACEU/OLjXR-_Q3L46B7pJOJzJYDV3zXnYmiwYgCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B1.58.11%2BPM.png" imageanchor="1"><img border="0" height="640" src="https://4.bp.blogspot.com/-nGYO0BeoLnQ/WZh8S8723FI/AAAAAAAACEU/OLjXR-_Q3L46B7pJOJzJYDV3zXnYmiwYgCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B1.58.11%2BPM.png" width="336" /></a><br /><br />Add (enter) an 'Application Name'<br />Add (enter) a 'Cube Name'<br />Dimensions: where it says in <i><b>italic-grey</b></i> font '<i><b>Add Dimension</b></i>' start typing your desired dimension name, hit enter/return and keep repeating until you have all your desired dimensions.<br /><br />Pretty easy and straight forward so far.<br /><br />Now at this point or really any point from now on you can click on the button 'To Sheet'<br /><br /><a href="http://3.bp.blogspot.com/-KOigGFr2rhw/WZh98hbitfI/AAAAAAAACEg/9YKtxHostrwaOT4fc024GpTxJh72yz2pACK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.34.23%2BAM.png" imageanchor="1"><img border="0" src="https://3.bp.blogspot.com/-KOigGFr2rhw/WZh98hbitfI/AAAAAAAACEg/9YKtxHostrwaOT4fc024GpTxJh72yz2pACK4BGAYYCw/s400/Screen%2BShot%2B2017-08-19%2Bat%2B11.34.23%2BAM.png" /></a><br /><br />this little button starts the magic to begin or adds the magic once you have begun to build your cube in the workbook .. click it and see<br /><br /><a href="http://1.bp.blogspot.com/-jeTfU1el75c/WZh-QcltAzI/AAAAAAAACEo/Ug9vi6C6mZUeeIEX5U_LGx1hC6RnoNshwCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.35.05%2BAM.png" imageanchor="1"><img border="0" height="475" src="https://1.bp.blogspot.com/-jeTfU1el75c/WZh-QcltAzI/AAAAAAAACEo/Ug9vi6C6mZUeeIEX5U_LGx1hC6RnoNshwCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B11.35.05%2BAM.png" width="640" /></a><br /><br />Pretty slick so far.<br />And there are my wizards, I mean Dimensions to the worksheet named 'Essbase.Cube'<br /><br />Next is 'Settings' or 'Cube.Settings'<br /><br /><a href="http://1.bp.blogspot.com/-0fIQI_rYJOg/WZiEQrBgtWI/AAAAAAAACFA/DvchlpOHzu4R96DzFA7t2WxaeApxqGWBgCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.36.07%2BAM.png" imageanchor="1"><img border="0" height="234" src="https://1.bp.blogspot.com/-0fIQI_rYJOg/WZiEQrBgtWI/AAAAAAAACFA/DvchlpOHzu4R96DzFA7t2WxaeApxqGWBgCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B11.36.07%2BAM.png" width="640" /></a><br /><br />As is, the Cube designer wizard builds a BSO cube as the default.<br />But that can be easily changed by manually typing ASO into the cell changing the Application Type manually or by simply unchecking the checkbox 'BSO (Block Storage Outline) and clicking our friend the button 'To Sheet'<br /><br /><a href="http://2.bp.blogspot.com/-dKxhq9IcRTE/WZiFlS0aDmI/AAAAAAAACFM/vKcKdcs7GiUTEIZveUJYy2bKoliZPQ9uQCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B2.37.45%2BPM.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="68" src="https://2.bp.blogspot.com/-dKxhq9IcRTE/WZiFlS0aDmI/AAAAAAAACFM/vKcKdcs7GiUTEIZveUJYy2bKoliZPQ9uQCK4BGAYYCw/s320/Screen%2BShot%2B2017-08-19%2Bat%2B2.37.45%2BPM.png" width="320" /></a><br /><a href="http://2.bp.blogspot.com/-A2aO199gAyE/WZiF2NYbYQI/AAAAAAAACFU/nkUs_G628wEnF6p1Z9AdnmlPFTss-HC5gCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.34.23%2BAM.png" imageanchor="1"><img border="0" height="102" src="https://2.bp.blogspot.com/-A2aO199gAyE/WZiF2NYbYQI/AAAAAAAACFU/nkUs_G628wEnF6p1Z9AdnmlPFTss-HC5gCK4BGAYYCw/s200/Screen%2BShot%2B2017-08-19%2Bat%2B11.34.23%2BAM.png" width="200" /></a><br /><br /><br />Moving onto Dimensions. The Dimension names were added on the 'Cube' tab but the tab 'Dimensions' is now where the property types, build method and mode, generation information (used for Drill-Through), along with the fields that are desired for use in the build process<br /><br /><a href="http://1.bp.blogspot.com/-jMEAHYixRb4/WZiEM7XrvYI/AAAAAAAACE4/ItpiI5jfzFceBYWxycJbWHbgRubp2IdzgCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B11.38.19%2BAM.png" imageanchor="1"><img border="0" height="640" src="https://1.bp.blogspot.com/-jMEAHYixRb4/WZiEM7XrvYI/AAAAAAAACE4/ItpiI5jfzFceBYWxycJbWHbgRubp2IdzgCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B11.38.19%2BAM.png" width="344" /></a><br /><br /><br />And don't forget about any UDAs that you might want to add, provide how many, or the Alias Table you want to use, check the checkbox<br /><br /><a href="http://4.bp.blogspot.com/-_NkyECTMcHg/WZiHqe3IOlI/AAAAAAAACFk/gLKuwymUXBkxjqsvfpNxfeOHXwhiV6QogCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B2.45.34%2BPM.png" imageanchor="1"><img border="0" height="640" src="https://4.bp.blogspot.com/-_NkyECTMcHg/WZiHqe3IOlI/AAAAAAAACFk/gLKuwymUXBkxjqsvfpNxfeOHXwhiV6QogCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B2.45.34%2BPM.png" width="337" /></a><br /><br /><br /><br />Next, time to add the magic potion .. I mean Data<br /><br />Provide the name for your data. This is probably best to think of your data in datasets.<br />Actual. Budget. Forecast, etc. or in my example, Magic Potions<br /><br /><a href="http://3.bp.blogspot.com/-e2hSfHQZNY0/WZiJuX6PqJI/AAAAAAAACGg/mOI32_-XYd8y0tEfpB0N_E1PjPDrjXH2ACK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B2.53.10%2BPM.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="212" src="https://3.bp.blogspot.com/-e2hSfHQZNY0/WZiJuX6PqJI/AAAAAAAACGg/mOI32_-XYd8y0tEfpB0N_E1PjPDrjXH2ACK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B2.53.10%2BPM.png" width="640" /></a><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />Onto the last tab in the wizard, Spells .. I mean Calc<br />Add any calcs as needed!<br /><br /><a href="http://3.bp.blogspot.com/-iWERqXz3f4E/WZiJkFtgGzI/AAAAAAAACGY/aNGfw0g8iUs14fVCTeiLGcXrZc70uDb8wCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B2.53.42%2BPM.png" imageanchor="1"><img border="0" height="212" src="https://3.bp.blogspot.com/-iWERqXz3f4E/WZiJkFtgGzI/AAAAAAAACGY/aNGfw0g8iUs14fVCTeiLGcXrZc70uDb8wCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B2.53.42%2BPM.png" width="640" /></a><br /><br /><br />Now that you have stepped through the wizard. I want to look at 1 item quickly before this post is done. Dimensions. And specifically adding members and viewing them in a Hierarchy GUI TreeView fashion. Like EAS or for those still using AppMan (Application Manager and I know you are out there.. I have seen you for myself and nothing wrong if it still works..)<br /><br />The Cube Designer on the ribbon has a button 'View Hierarchy'<br /><br /><a href="http://4.bp.blogspot.com/-a-W5qe1Heks/WZiR6GZNR0I/AAAAAAAACG8/enQ3HvhmE-QUQUWcF2xqK4vcUfD5t95egCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B3.30.19%2BPM.png" imageanchor="1"><img border="0" src="https://4.bp.blogspot.com/-a-W5qe1Heks/WZiR6GZNR0I/AAAAAAAACG8/enQ3HvhmE-QUQUWcF2xqK4vcUfD5t95egCK4BGAYYCw/s400/Screen%2BShot%2B2017-08-19%2Bat%2B3.30.19%2BPM.png" /></a><br /><br />For those that are familiar with cubes, multidimensional, non-relational (field-record-row) data. Maybe this is not entirely needed but a part of my cube builds it is nice to see from time to time what the resulting outline is going to look like..<br /><br />So in the Dimension that I wanted to create, Harry_Potter I started to define what that hierarchy was going to be .. and added a few members manually.. take a look what happened when I clicked the 'View Hierarchy' button on the ribbon, I can see what the hierarchy looks like and even make edits from this GUI window, very nice!<br /><br /><a href="http://1.bp.blogspot.com/-0EJMg0CiFUQ/WZiUjdLRgwI/AAAAAAAACHI/V0Itnvww8jAuWqiGlcsZkbtyfMf1aoM5QCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-19%2Bat%2B3.41.04%2BPM.png" imageanchor="1"><img border="0" height="640" src="https://1.bp.blogspot.com/-0EJMg0CiFUQ/WZiUjdLRgwI/AAAAAAAACHI/V0Itnvww8jAuWqiGlcsZkbtyfMf1aoM5QCK4BGAYYCw/s640/Screen%2BShot%2B2017-08-19%2Bat%2B3.41.04%2BPM.png" width="536" /></a><br /><br /><br />I would like to add that it is nice to see the TreeView of the Hierarchy and the features that are there in this version. In future versions of the Cube designer, it would be nice most if not all of the dimension/member property information. Including the child/descendant count, Generation # &amp; Level #, Member Formula(s), &nbsp;the UDA(s), just to name a few.<br /><br /><br />So that is the OAC - Essbase Cube Designer Wizard in a nutshell .. <a href="https://youtu.be/jKMK3XGO27k" target="_blank">look, this is me in a nutshell</a>&nbsp;(Austin Powers)&nbsp;😀<br /><br /><br />More blogging soon on the creation of the cube in OAC.<br />And then onto DV (Data Visualization) and maybe a little bit BICS!!!<br /><br /><br /><i>p.s. Yes, I was in a car accident. Head on collision. Only me in my car. Only her in her car. As told to me on the accident site and also states in the police report. She was tired and fell asleep at the wheel. YIKES!! A LITTLE COMMON SENSE PEOPLE.. as a result &gt;this guy&lt; got a Broken Right Foot. Had Surgery 1-week later. Dr. says x-rays looked good 2-weeks after surgery. Surgery cast off, stitches out. Walking boot, YEAH.. but a big boo since i am still non-weight-bearing :( at least until my next doctor visit on September 1st.. wow, that still feels like a long ways away ..&nbsp;</i><br /><i><br /></i><i>but I guess that just means more time on the nights and weekends to research on fun EPM and BI things going on, catch up on other fun things at work and oh what the hay.. download the free trial of the HBO NOW app on my iPad and start, yes start, watching Game of Thrones #GOT.. Season 1 done. Season 2 done. And just started on Season 3! Don't spoil it for me .. I do want to catch up to this season :)</i><br /><br /> G Adashek tag:blogger.com,1999:blog-1699540956788037380.post-8016389118511487962 Sat Aug 19 2017 16:08:00 GMT-0400 (EDT) Smart View Release 11.1.2.5.710 http://adashek-epm.blogspot.com/2017/08/smart-view-release-11125710.html <span style="font-family: &quot;verdana&quot; , sans-serif;">Ah, yes, another version of Smart View for Office released .. 11.1.2.5.710</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;">I tweeted about it the other day.. the zip file <a href="http://www.oracle.com/technetwork/middleware/epm/downloads/smart-view-1112x-2412371.html" target="_blank">here</a>&nbsp;that downloads from OTN is nice enough to tell you which version you are downloading</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;"><a href="http://4.bp.blogspot.com/-iDnD4Myn3N8/WZeTzakdLEI/AAAAAAAACCg/H2F8-b8NM0ot1dhT8WwAj0oU2TAqZ4ShACK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-15%2Bat%2B10.09.49%2BAM.png" imageanchor="1"><img border="0" height="81" src="https://4.bp.blogspot.com/-iDnD4Myn3N8/WZeTzakdLEI/AAAAAAAACCg/H2F8-b8NM0ot1dhT8WwAj0oU2TAqZ4ShACK4BGAYYCw/s320/Screen%2BShot%2B2017-08-15%2Bat%2B10.09.49%2BAM.png" width="320" /></a></span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;">but unfortunately after the unzip the installer still leaves you unsure as it is still the SmartView.exe</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;"><a href="http://1.bp.blogspot.com/-mktsamGfDTg/WZeUFUkmuTI/AAAAAAAACCo/CfRk15aFNN8zb8JwFREtfiytoy8hpMnmQCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-15%2Bat%2B10.17.38%2BAM.png" imageanchor="1"><img border="0" height="165" src="https://1.bp.blogspot.com/-mktsamGfDTg/WZeUFUkmuTI/AAAAAAAACCo/CfRk15aFNN8zb8JwFREtfiytoy8hpMnmQCK4BGAYYCw/s320/Screen%2BShot%2B2017-08-15%2Bat%2B10.17.38%2BAM.png" width="320" /></a></span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;">Well, onto other news.</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;">The documentation for this version can be found here -&gt; https://docs.oracle.com/applications/smartview/710/index.html</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;">And let's see what new features there are</span><br /><br /><ul><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Change the Solve Order of Members in a Calculation</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Calculation Trace</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Audit Trail</span></li></ul><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;">Well then, all new features for OAC! Guess I know what this guy with a broken foot recovering from surgery and still not able to walk is going to be spending time doing this weekend ;)</span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;">.. a song starts playing in my head .. Are you down with OAC .. yeah you know me... might have dated myself. ENJOY!</span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;">https://youtu.be/qdeH7QhGiRg</span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-2-ueC_V_2dc/WZeXUpgREDI/AAAAAAAACC0/DoAqmhhWty8eMlZBQS6zYj1Q1doNoxtMwCK4BGAYYCw/s1600/NBN.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><span style="font-family: &quot;verdana&quot; , sans-serif;"><img border="0" height="200" src="https://1.bp.blogspot.com/-2-ueC_V_2dc/WZeXUpgREDI/AAAAAAAACC0/DoAqmhhWty8eMlZBQS6zYj1Q1doNoxtMwCK4BGAYYCw/s200/NBN.png" width="195" /></span></a></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><br /><br />More posts to come about this version, OAC and the Cube Designer!!<br />And maybe even a little DV and more</div><div><br /></div><div><br /></div> G Adashek tag:blogger.com,1999:blog-1699540956788037380.post-6213023514129248309 Fri Aug 18 2017 22:00:00 GMT-0400 (EDT) Smart View Release 11.1.2.5.710 @gadashek @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://adashek-epm.blogspot.com/2017/08/smart-view-release-11125710.html <span style="font-family: &quot;verdana&quot; , sans-serif;">Ah, yes, another version of Smart View for Office released .. 11.1.2.5.710</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;">I tweeted about it the other day.. the zip file <a href="http://www.oracle.com/technetwork/middleware/epm/downloads/smart-view-1112x-2412371.html" target="_blank">here</a>&nbsp;that downloads from OTN is nice enough to tell you which version you are downloading</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;"><a href="http://4.bp.blogspot.com/-iDnD4Myn3N8/WZeTzakdLEI/AAAAAAAACCg/H2F8-b8NM0ot1dhT8WwAj0oU2TAqZ4ShACK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-15%2Bat%2B10.09.49%2BAM.png" imageanchor="1"><img border="0" height="81" src="https://4.bp.blogspot.com/-iDnD4Myn3N8/WZeTzakdLEI/AAAAAAAACCg/H2F8-b8NM0ot1dhT8WwAj0oU2TAqZ4ShACK4BGAYYCw/s320/Screen%2BShot%2B2017-08-15%2Bat%2B10.09.49%2BAM.png" width="320" /></a></span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;">but unfortunately after the unzip the installer still leaves you unsure as it is still the SmartView.exe</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;"><a href="http://1.bp.blogspot.com/-mktsamGfDTg/WZeUFUkmuTI/AAAAAAAACCo/CfRk15aFNN8zb8JwFREtfiytoy8hpMnmQCK4BGAYYCw/s1600/Screen%2BShot%2B2017-08-15%2Bat%2B10.17.38%2BAM.png" imageanchor="1"><img border="0" height="165" src="https://1.bp.blogspot.com/-mktsamGfDTg/WZeUFUkmuTI/AAAAAAAACCo/CfRk15aFNN8zb8JwFREtfiytoy8hpMnmQCK4BGAYYCw/s320/Screen%2BShot%2B2017-08-15%2Bat%2B10.17.38%2BAM.png" width="320" /></a></span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;">Well, onto other news.</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;">The documentation for this version can be found here -&gt; https://docs.oracle.com/applications/smartview/710/index.html</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;">And let's see what new features there are</span><br /><br /><ul><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Change the Solve Order of Members in a Calculation</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Calculation Trace</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Audit Trail</span></li></ul><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;">Well then, all new features for OAC! Guess I know what this guy with a broken foot recovering from surgery and still not able to walk is going tobe spending time doing this weekend ;)</span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;">.. a song starts playing in my head .. Are you down with OAC .. yeah you know me... might have dated myself. ENJOY!</span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;">https://youtu.be/qdeH7QhGiRg</span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-2-ueC_V_2dc/WZeXUpgREDI/AAAAAAAACC0/DoAqmhhWty8eMlZBQS6zYj1Q1doNoxtMwCK4BGAYYCw/s1600/NBN.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><span style="font-family: &quot;verdana&quot; , sans-serif;"><img border="0" height="200" src="https://1.bp.blogspot.com/-2-ueC_V_2dc/WZeXUpgREDI/AAAAAAAACC0/DoAqmhhWty8eMlZBQS6zYj1Q1doNoxtMwCK4BGAYYCw/s200/NBN.png" width="195" /></span></a></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span></div><div><br /><br />More posts to come about this version, OAC and the Cube Designer!!<br />And maybe even a little DV and more</div><div><br /></div><div><br /></div> G Adashek tag:blogger.com,1999:blog-1699540956788037380.post-6213023514129248309 Fri Aug 18 2017 22:00:00 GMT-0400 (EDT) Fast and Furious - OAC Updates http://glennschwartzbergs-essbase-blog.blogspot.com/2017/08/fast-and-furious-oac-updates.html It took a little while for the first Essbase OAC patch to appear. It did&nbsp; on July 29th and I blogged about all the new features. Well a mere two weeks later and we have the next big release (what I'll call 106). When I saw the pace it reminded me of the following quote (watch the video link for the full effect)<br /><div style="padding-left: 30px;">Round the world and home again<br />That’s the sailor’s way<br />Faster faster, faster faster</div><div style="padding-left: 30px;">There’s no earthly way of knowing<br />Which direction we are going<br />There’s no knowing where we’re rowing<br />Or which way the river’s flowing</div><div style="padding-left: 30px;">Is it raining, is it snowing<br />Is a hurricane a-blowing</div><div style="padding-left: 30px;">Not a speck of light is showing<br />So the danger must be growing<br />Are the fires of Hell a-glowing<br />Is the grisly reaper mowing</div><div style="padding-left: 30px;">Yes, the danger must be growing<br />For the rowers keep on rowing<br />And they’re certainly not showing<br />Any signs that they are slowing</div><a href="https://www.youtube.com/watch?v=2Zail7Gdqro&amp;feature=player_embedded">‘Wondrous Boat Ride’, from Willy Wonka and the Chocolate Factory (1971)</a><br /><br />Yes the OAC dev team is delivering features and functionality at a tremendous rate. If you are looking for what is included with bug fixes and features, it is a bit difficult as the readmes still don't seem to work and after you install the parch, you can't even get to the (broken) link.&nbsp; So I won't talk about bug fixes here although I understand there were a bunch. I'll talk about the new features.&nbsp; I have to thank my friends at OAC dev for providing me with this info. Most of the screen shots are theirs. <br /><br /><h2>Calc Trace</h2>The first thing I want to talk about is a new feature called Calc Trace. It is amazing that once Product Management has to do their own testing we get features we have wanted for a long time. That is the case here. It was difficult for them to figure out what a calculation script was doing. So out of it came this. You set a application config setting CalcTrace On and from Smart View you can see the numbers that make up any calculation. In your script, you provide the intersection you want to trace<br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-rQLjqmiBx8A/WZWei9oz9VI/AAAAAAAAA_Q/pxnsndalB0Y4o6YQon3CN007rYiFkmoUwCLcBGAs/s1600/calcTrace.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="340" data-original-width="982" height="220" src="https://1.bp.blogspot.com/-rQLjqmiBx8A/WZWei9oz9VI/AAAAAAAAA_Q/pxnsndalB0Y4o6YQon3CN007rYiFkmoUwCLcBGAs/s640/calcTrace.jpg" width="640" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div>then when you run it you get a pop-up in Smart View with what contributed to the calculation<br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-H7HAhIRgSbE/WZWfFV6Vw1I/AAAAAAAAA_U/hYuQjZlS70gMx1vbMq222YSxuOUSj8rcgCLcBGAs/s1600/calcTrace2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="259" data-original-width="367" height="449" src="https://2.bp.blogspot.com/-H7HAhIRgSbE/WZWfFV6Vw1I/AAAAAAAAA_U/hYuQjZlS70gMx1vbMq222YSxuOUSj8rcgCLcBGAs/s640/calcTrace2.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">There are a lot more details, but this should be enough to get you excited. </div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><h2 class="separator" style="clear: both; text-align: left;">Audit Trails</h2><div class="separator" style="clear: both; text-align: left;">Next,Audit trails have been added to track data changes. To enable it there is a config setting "Audittrail Data" The audit trail is captured in a .csv file on the server. This will track Smart View data changes, LRO , URL File and cell notes. Access to the results is based on user security , You can see the results either in Smart View for a selected intersection or by exporting the file and openin (in excel preferably). </div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-Hjhe9TIkj28/WZbvj4zQUvI/AAAAAAAAA_w/6_L-MKbNqRM7O2p0xvNyRP2gMNLrJcDjQCLcBGAs/s1600/audit%2Btrail.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="574" data-original-width="1009" height="363" src="https://2.bp.blogspot.com/-Hjhe9TIkj28/WZbvj4zQUvI/AAAAAAAAA_w/6_L-MKbNqRM7O2p0xvNyRP2gMNLrJcDjQCLcBGAs/s640/audit%2Btrail.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><h2 class="separator" style="clear: both; text-align: left;">Partitions and XREf/XWrite</h2><div class="separator" style="clear: both; text-align: left;">Want more? How about&nbsp;a UI editor for replicated partitions. In the last release we got transparent partitions, now to complete it we get the replicated as well. Remember for partitions, if you go across&nbsp;OAC instances you have to be licensed for Enterprise edition, but within an instance is ok.</div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-k1JSaExWYgY/WZbwqtt7gtI/AAAAAAAAA_8/5qmPiJGipa0XHO_L614FP6MUx9QjvZejgCLcBGAs/s1600/partitions1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="424" data-original-width="610" height="444" src="https://1.bp.blogspot.com/-k1JSaExWYgY/WZbwqtt7gtI/AAAAAAAAA_8/5qmPiJGipa0XHO_L614FP6MUx9QjvZejgCLcBGAs/s640/partitions1.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Talking about partitions, there are enhancements to partitions in general </div><div class="separator" style="clear: both; text-align: left;"> </div><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Validation/Save errors have been made clearer</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">There is ample scope for partition definition becoming stale. For ex: </span></span></div></li><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">cube </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">deleted/renamed, </span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Essbase </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">host/port changes, </span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">user </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">credential changes etc</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">.</span></span></div></li></ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Consequences of such stale partitions could manifest in multiple ways.</span></span></div></li><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Incorrect query/calculation results for slices with partition overlapping .</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Presence of orphan partition between a pair of cubes prevents creation of fresh partition of same type</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">.</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">There was no cleanup/recovery mechanism from such stale metadata in partition definitions without manually deleting the ddb files.</span></span></div></li></ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Solution</span></span></div></li><ul><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Invalidation &amp; Periodic auto cleanup on servers. </span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Invalidate orphan partitions at first discovery.</span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Cleanup all orphan partitions on the cube at startup</span></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">.</span></div></li></ul></ul><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-r8iRiK5r1Mo/WZbx3T4TMqI/AAAAAAAABAI/3qnxjtyZD5cZj0yu2VFsyBmTajORgGjIwCLcBGAs/s1600/partitions2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="518" data-original-width="790" height="418" src="https://1.bp.blogspot.com/-r8iRiK5r1Mo/WZbx3T4TMqI/AAAAAAAABAI/3qnxjtyZD5cZj0yu2VFsyBmTajORgGjIwCLcBGAs/s640/partitions2.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Similar to Partitions, there have been a lot of changes to Xref and location aliases mostly to allow cross instanceand &nbsp;on-preXREf . XRef now hastwo flavors:</div><div class="separator" style="clear: both; text-align: left;"> </div><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">@XREF(</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">LocationAlias</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> [, </span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">mbrList</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">])</span></div><div class="separator" style="clear: both; text-align: left;"> </div><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Recommended to be used to access remote cube from a different essbase instance.&nbsp;For ex: Local cube on cloud &amp; remote cube on-prem</span></span></div><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: Times New Roman;"></span></span>&nbsp;</div><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: Times New Roman;">and </span></span></div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">@XREF(</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">App,Db</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> [, </span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">mbrList</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">])</span></div><div class="separator" style="clear: both; text-align: left;"> <span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Meant to be used</span><u style="text-underline: single;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">&nbsp;only</span></u><span style="color: #58595b; font-family: Calibri; font-weight: bold; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">&nbsp;</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">in single essbase instance models.</span></span></div><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"> </span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Facilitates easy usability through simple DBX import of multiple dependent </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">cubes</span></span></div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">For location Aliases to define a connection to another server, you define the connection then use that connection in the location alias</div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-JcWOYVmOPjI/WZcKrl_ecNI/AAAAAAAABAc/zwT8VdEJ4BIwHWjLQyAPxJw6sc-kKjI_ACLcBGAs/s1600/Location_alias.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="802" data-original-width="1064" height="481" src="https://1.bp.blogspot.com/-JcWOYVmOPjI/WZcKrl_ecNI/AAAAAAAABAc/zwT8VdEJ4BIwHWjLQyAPxJw6sc-kKjI_ACLcBGAs/s640/Location_alias.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Scenario Management has been improved. In prior versions if you added sandboxing to an existing cube you lost all data. I guess you still do, but now if you export the data prior to creating the sandbox, you can re-import it and it will automatically be saved to the base member. No need to build a load rule. </div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><h2 class="separator" style="clear: both; text-align: left;">Hybrid cube automated solve order. </h2><h2 class="separator" style="clear: both; text-align: left;"><span style="font-size: small;">This is enabled by setting the config setting <span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">“HYBRIDOPTIMIZEDSOLVEORDER TRUE”</span></span></h2><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Doing so, sets up&nbsp; bunch of automatic solve order settings</span></span></div><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><ul><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">If the formula contains even one ratio operator (/, %), then set the solve order to 51</span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">If the formula contains even one “*”, then set the solve order to 5&nbsp;&nbsp;</span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Rest operator or combinations between operators of different types will get their default solve orders (10-50)</span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">If consolidation type of formula member is ‘^’ (never aggregate) then set the solve order to </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">51</span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">If dynamic member doesn’t have formula (aggregation) , then no changes to solver order are currently performed</span></span></div></li></ul><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Note this is based on the operators within the formula not the unary operator on the member</span></span></div><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span></span>&nbsp;</div><h2 class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">ESSCLI</span></h2><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span></span>&nbsp;</div><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">The next item is something I&nbsp;requested for a long time. It is encryption for EssCLI. In the early versions, the ID and password were clear text in the file. Now an encrypted file is created that stores the password. The first time you log in you are prompted for the password and it is saved in a file, the next time, you just specify the user and the password is used from the file</span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-Qs-f4Dy3n08/WZcN4ku3oKI/AAAAAAAABAo/Ip9SXP-sHgsk7v9cSEIIuhG811942zBswCLcBGAs/s1600/password.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="640" data-original-width="1263" height="323" src="https://4.bp.blogspot.com/-Qs-f4Dy3n08/WZcN4ku3oKI/AAAAAAAABAo/Ip9SXP-sHgsk7v9cSEIIuhG811942zBswCLcBGAs/s640/password.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span></span>&nbsp;</div></span><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">EssCLI has also added support for remote data sources. This means you can load on-prem data relational data sources from within the companies firewall without opening ports. To use it you create a connection.properties file the EssCLI uses. It uses JDBC drivers for the connection. </div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-s1sLIUdomZg/WZcPC9W5ZCI/AAAAAAAABA0/qudW_SzQh5UvGzsRy_478y19ro2HHf4XwCLcBGAs/s1600/connection.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="227" data-original-width="642" height="226" src="https://1.bp.blogspot.com/-s1sLIUdomZg/WZcPC9W5ZCI/AAAAAAAABA0/qudW_SzQh5UvGzsRy_478y19ro2HHf4XwCLcBGAs/s640/connection.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: left;">you can then use it in the CLI</div><div class="separator" style="clear: both; text-align: left;"> </div><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Dimension build</span></div><div class="separator" style="clear: both; text-align: left;"> </div><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0.5in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">esscs</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">dimbuild</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> -application Sample -</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">db</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Basic -rule </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Dim_Product.rul</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">-stream -properties </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">connection.properties</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> -</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">restructureoption</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">ALL_DATA</span></div><div class="separator" style="clear: both; text-align: left;"> </div><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Data load</span></div><div class="separator" style="clear: both; text-align: left;"> </div><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0.5in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">esscs</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">dataload</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> -application Sample -</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">db</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Basic -rule </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Basic.rul</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">–stream -properties </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">connection.properties</span></div><div class="separator" style="clear: both; text-align: left;"> </div><h2 class="separator" style="clear: both; text-align: left;"> Drill Through Reporting</h2><div class="separator" style="clear: both; text-align: left;">I have to say I'm not thrilled about this feature as I think this first generation is very limited, but at least it is a start. In Enterprise edition, you can drill back to a source. The reason I'm not thrilled is the dril through definition is tied to the generation names you would assign in the outline. I think it limits the functionality and I've expressed this to development. It is a multiple step process to set this up and would take too much space in this post to go through it. I'll create a separate post to walk you through the steps. </div></span><div class="separator" style="clear: both; text-align: left;"> </div><h2 class="separator" style="clear: both; text-align: left;">Cube Designer</h2><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span></div><div class="separator" style="clear: both; text-align: left;">&nbsp;This Smart View extension gets better with each release and the new features include:</div><ul><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Improved Server Error Messages handling</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Allows Export of Application from within Cube Designer</span></span></div></li><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Include Data</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Includes </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Calc</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> Scripts</span></span></div></li></ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Data Export supports size </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">up to</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> 400 MB</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Text Lists Support in the Cube Designer Wizard</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Text Lists supports </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">up to</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> 64k entries</span></span><a href="https://3.bp.blogspot.com/-jiPHIhvAH9I/WZcRkKHr45I/AAAAAAAABBA/NhRO1N8k2cgOIWuI490mNGPoe6UuhcsxACLcBGAs/s1600/cube%2Bdesigner.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="809" data-original-width="1077" height="300" src="https://3.bp.blogspot.com/-jiPHIhvAH9I/WZcRkKHr45I/AAAAAAAABBA/NhRO1N8k2cgOIWuI490mNGPoe6UuhcsxACLcBGAs/s400/cube%2Bdesigner.jpg" width="400" /></a></div></li></ul><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;"></div>There are also enhancements for formulas in unstructured data loads<br /> <br /><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Allow for Hints for Measures</span></span></div></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Can refer to specific column names as formulae</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Provide Excel based Column References as formulae</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Mix of both</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Support for new implementation of XREF/XWRITE</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Allows for migration of applications from one instance to another without the need for location aliases</span></span></li></ul><h2><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">LCM Improvements</span></h2>I've saved one of the big changes for last. You can now use an LCM export from PBCS&nbsp;and FCCS&nbsp;to build an Essbase cube<br /> <br /><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Support for LCM Extracts from EPM using </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">EPMAutomate</span></span></div></li><ul><li><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">The OAC Essbase LCM Import using CLI extracts the Essbase Cube contents from the Export done using </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">EPMAutomate</span></span></li><ul><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">PBCS</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">FCCS…</span></span></li></ul></ul></ul><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Other general LCM Enhancements include:</span></span><br /><ul><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Support for Partitions (Use Trusted Connections, within the same instance) – Earlier required manual intervention of changing partitions</span></span></li><li><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Calc</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> Associations – Users are manually added (Cloud to Cloud)</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Support Audit Trail – preserved and imported (Cloud to Cloud)</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Roles are migrated (Cloud to Cloud)</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">LRO (Not Supported) – Can be done manually using MAXL</span></span></li></ul>There are some other minor things like a MaxL script library and template support. <br /><br />It is amazing how far OAC/Essbase has come in such a short time. I look forward to the next round of enhancements. <br /><br /> <br /><br /><br /><br /><br /><br /> GlennS tag:blogger.com,1999:blog-2615703102299902978.post-6813933077211908784 Fri Aug 18 2017 12:19:00 GMT-0400 (EDT) Fast and Furious - OAC Updates @gschwartzberg1 @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://glennschwartzbergs-essbase-blog.blogspot.com/2017/08/fast-and-furious-oac-updates.html It took a little while for the first Essbase OAC patch to appear. It did&nbsp; on July 29th and I blogged about all the new features. Well a mere two weeks later and we have the next big release (what I'll call 106). When I saw the pace it reminded me of the following quote (watch the video link for the full effect)<br /><div style="padding-left: 30px;">Round the world and home again<br />That’s the sailor’s way<br />Faster faster, faster faster</div><div style="padding-left: 30px;">There’s no earthly way of knowing<br />Which direction we are going<br />There’s no knowing where we’re rowing<br />Or which way the river’s flowing</div><div style="padding-left: 30px;">Is it raining, is it snowing<br />Is a hurricane a-blowing</div><div style="padding-left: 30px;">Not a speck of light is showing<br />So the danger must be growing<br />Are the fires of Hell a-glowing<br />Is the grisly reaper mowing</div><div style="padding-left: 30px;">Yes, the danger must be growing<br />For the rowers keep on rowing<br />And they’re certainly not showing<br />Any signs that they are slowing</div><a href="https://www.youtube.com/watch?v=2Zail7Gdqro&amp;feature=player_embedded">‘Wondrous Boat Ride’, from Willy Wonka and the Chocolate Factory (1971)</a><br /><br />Yes the OAC dev team is delivering features and functionality at a tremendous rate. If you are looking for what is included with bug fixes and features, it is a bit difficult as the readmes still don't seem to work and after you install the parch, you can't even get to the (broken) link.&nbsp; So I won't talk about bug fixes here although I understand there were a bunch. I'll talk about the new features.&nbsp; I have to thank my friends at OAC dev for providing me with this info. Most of the screen shots are theirs. <br /><br /><h2>Calc Trace</h2>The first thing I want to talk about is a new feature called Calc Trace. It is amazing that once Product Management has to do their own testing we get features we have wanted for a long time. That is the case here. It was difficult for them to figure out what a calculation script was doing. So out of it came this. You set a application config setting CalcTrace On and from Smart View you can see the numbers that make up any calculation. In your script, you provide the intersection you want to trace<br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-rQLjqmiBx8A/WZWei9oz9VI/AAAAAAAAA_Q/pxnsndalB0Y4o6YQon3CN007rYiFkmoUwCLcBGAs/s1600/calcTrace.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="340" data-original-width="982" height="220" src="https://1.bp.blogspot.com/-rQLjqmiBx8A/WZWei9oz9VI/AAAAAAAAA_Q/pxnsndalB0Y4o6YQon3CN007rYiFkmoUwCLcBGAs/s640/calcTrace.jpg" width="640" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div>then when you run it you get a pop-up in Smart View with what contributed to the calculation<br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-H7HAhIRgSbE/WZWfFV6Vw1I/AAAAAAAAA_U/hYuQjZlS70gMx1vbMq222YSxuOUSj8rcgCLcBGAs/s1600/calcTrace2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="259" data-original-width="367" height="449" src="https://2.bp.blogspot.com/-H7HAhIRgSbE/WZWfFV6Vw1I/AAAAAAAAA_U/hYuQjZlS70gMx1vbMq222YSxuOUSj8rcgCLcBGAs/s640/calcTrace2.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">There are a lot more details, but this should be enough to get you excited. </div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><h2 class="separator" style="clear: both; text-align: left;">Audit Trails</h2><div class="separator" style="clear: both; text-align: left;">Next,Audit trails have been added to track data changes. To enable it there is a config setting "Audittrail Data" The audit trail is captured in a .csv file on the server. This will track Smart View data changes, LRO , URL File and cell notes. Access to the results is based on user security , You can see the results either in Smart View for a selected intersection or by exporting the file and openin (in excel preferably). </div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-Hjhe9TIkj28/WZbvj4zQUvI/AAAAAAAAA_w/6_L-MKbNqRM7O2p0xvNyRP2gMNLrJcDjQCLcBGAs/s1600/audit%2Btrail.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="574" data-original-width="1009" height="363" src="https://2.bp.blogspot.com/-Hjhe9TIkj28/WZbvj4zQUvI/AAAAAAAAA_w/6_L-MKbNqRM7O2p0xvNyRP2gMNLrJcDjQCLcBGAs/s640/audit%2Btrail.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><h2 class="separator" style="clear: both; text-align: left;">Partitions and XREf/XWrite</h2><div class="separator" style="clear: both; text-align: left;">Want more? How about&nbsp;a UI editor for replicated partitions. In the last release we got transparent partitions, now to complete it we get the replicated as well. Remember for partitions, if you go across&nbsp;OAC instances you have to be licensed for Enterprise edition, but within an instance is ok.</div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-k1JSaExWYgY/WZbwqtt7gtI/AAAAAAAAA_8/5qmPiJGipa0XHO_L614FP6MUx9QjvZejgCLcBGAs/s1600/partitions1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="424" data-original-width="610" height="444" src="https://1.bp.blogspot.com/-k1JSaExWYgY/WZbwqtt7gtI/AAAAAAAAA_8/5qmPiJGipa0XHO_L614FP6MUx9QjvZejgCLcBGAs/s640/partitions1.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Talking about partitions, there are enhancements to partitions in general </div><div class="separator" style="clear: both; text-align: left;"> </div><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Validation/Save errors have been made clearer</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">There is ample scope for partition definition becoming stale. For ex: </span></span></div></li><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">cube </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">deleted/renamed, </span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Essbase </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">host/port changes, </span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">user </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">credential changes etc</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">.</span></span></div></li></ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Consequences of such stale partitions could manifest in multiple ways.</span></span></div></li><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Incorrect query/calculation results for slices with partition overlapping .</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Presence of orphan partition between a pair of cubes prevents creation of fresh partition of same type</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">.</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">There was no cleanup/recovery mechanism from such stale metadata in partition definitions without manually deleting the ddb files.</span></span></div></li></ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Solution</span></span></div></li><ul><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Invalidation &amp; Periodic auto cleanup on servers. </span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Invalidate orphan partitions at first discovery.</span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Cleanup all orphan partitions on the cube at startup</span></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">.</span></div></li></ul></ul><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-r8iRiK5r1Mo/WZbx3T4TMqI/AAAAAAAABAI/3qnxjtyZD5cZj0yu2VFsyBmTajORgGjIwCLcBGAs/s1600/partitions2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="518" data-original-width="790" height="418" src="https://1.bp.blogspot.com/-r8iRiK5r1Mo/WZbx3T4TMqI/AAAAAAAABAI/3qnxjtyZD5cZj0yu2VFsyBmTajORgGjIwCLcBGAs/s640/partitions2.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Similar to Partitions, there have been a lot of changes to Xref and location aliases mostly to allow cross instanceand &nbsp;on-preXREf . XRef now hastwo flavors:</div><div class="separator" style="clear: both; text-align: left;"> </div><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">@XREF(</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">LocationAlias</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> [, </span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">mbrList</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">])</span></div><div class="separator" style="clear: both; text-align: left;"> </div><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Recommended to be used to access remote cube from a different essbase instance.&nbsp;For ex: Local cube on cloud &amp; remote cube on-prem</span></span></div><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: Times New Roman;"></span></span>&nbsp;</div><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: Times New Roman;">and </span></span></div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">@XREF(</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">App,Db</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> [, </span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">mbrList</span><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">])</span></div><div class="separator" style="clear: both; text-align: left;"> <span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Meant to be used</span><u style="text-underline: single;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">&nbsp;only</span></u><span style="color: #58595b; font-family: Calibri; font-weight: bold; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">&nbsp;</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">in single essbase instance models.</span></span></div><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"> </span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Facilitates easy usability through simple DBX import of multiple dependent </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">cubes</span></span></div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">For location Aliases to define a connection to another server, you define the connection then use that connection in the location alias</div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-JcWOYVmOPjI/WZcKrl_ecNI/AAAAAAAABAc/zwT8VdEJ4BIwHWjLQyAPxJw6sc-kKjI_ACLcBGAs/s1600/Location_alias.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="802" data-original-width="1064" height="481" src="https://1.bp.blogspot.com/-JcWOYVmOPjI/WZcKrl_ecNI/AAAAAAAABAc/zwT8VdEJ4BIwHWjLQyAPxJw6sc-kKjI_ACLcBGAs/s640/Location_alias.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Scenario Management has been improved. In prior versions if you added sandboxing to an existing cube you lost all data. I guess you still do, but now if you export the data prior to creating the sandbox, you can re-import it and it will automatically be saved to the base member. No need to build a load rule. </div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><h2 class="separator" style="clear: both; text-align: left;">Hybrid cube automated solve order. </h2><h2 class="separator" style="clear: both; text-align: left;"><span style="font-size: small;">This is enabled by setting the config setting <span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">“HYBRIDOPTIMIZEDSOLVEORDER TRUE”</span></span></h2><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Doing so, sets up&nbsp; bunch of automatic solve order settings</span></span></div><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><ul><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">If the formula contains even one ratio operator (/, %), then set the solve order to 51</span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">If the formula contains even one “*”, then set the solve order to 5&nbsp;&nbsp;</span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Rest operator or combinations between operators of different types will get their default solve orders (10-50)</span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">If consolidation type of formula member is ‘^’ (never aggregate) then set the solve order to </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">51</span></span></div></li><li><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">If dynamic member doesn’t have formula (aggregation) , then no changes to solver order are currently performed</span></span></div></li></ul><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Note this is based on the operators within the formula not the unary operator on the member</span></span></div><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span></span>&nbsp;</div><h2 class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">ESSCLI</span></h2><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span></span>&nbsp;</div><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">The next item is something I&nbsp;requested for a long time. It is encryption for EssCLI. In the early versions, the ID and password were clear text in the file. Now an encrypted file is created that stores the password. The first time you log in you are prompted for the password and it is saved in a file, the next time, you just specify the user and the password is used from the file</span></span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-Qs-f4Dy3n08/WZcN4ku3oKI/AAAAAAAABAo/Ip9SXP-sHgsk7v9cSEIIuhG811942zBswCLcBGAs/s1600/password.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="640" data-original-width="1263" height="323" src="https://4.bp.blogspot.com/-Qs-f4Dy3n08/WZcN4ku3oKI/AAAAAAAABAo/Ip9SXP-sHgsk7v9cSEIIuhG811942zBswCLcBGAs/s640/password.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: left;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span></span>&nbsp;</div></span><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">EssCLI has also added support for remote data sources. This means you can load on-prem data relational data sources from within the companies firewall without opening ports. To use it you create a connection.properties file the EssCLI uses. It uses JDBC drivers for the connection. </div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-s1sLIUdomZg/WZcPC9W5ZCI/AAAAAAAABA0/qudW_SzQh5UvGzsRy_478y19ro2HHf4XwCLcBGAs/s1600/connection.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="227" data-original-width="642" height="226" src="https://1.bp.blogspot.com/-s1sLIUdomZg/WZcPC9W5ZCI/AAAAAAAABA0/qudW_SzQh5UvGzsRy_478y19ro2HHf4XwCLcBGAs/s640/connection.jpg" width="640" /></a></div><div class="separator" style="clear: both; text-align: left;">you can then use it in the CLI</div><div class="separator" style="clear: both; text-align: left;"> </div><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Dimension build</span></div><div class="separator" style="clear: both; text-align: left;"> </div><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0.5in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">esscs</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">dimbuild</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> -application Sample -</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">db</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Basic -rule </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Dim_Product.rul</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">-stream -properties </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">connection.properties</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> -</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">restructureoption</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">ALL_DATA</span></div><div class="separator" style="clear: both; text-align: left;"> </div><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Data load</span></div><div class="separator" style="clear: both; text-align: left;"> </div><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0.5in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">esscs</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">dataload</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> -application Sample -</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">db</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Basic -rule </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Basic.rul</span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">–stream -properties </span><span style="color: #58595b; font-family: Calibri; font-size: 15pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">connection.properties</span></div><div class="separator" style="clear: both; text-align: left;"> </div><h2 class="separator" style="clear: both; text-align: left;"> Drill Through Reporting</h2><div class="separator" style="clear: both; text-align: left;">I have to say I'm not thrilled about this feature as I think this first generation is very limited, but at least it is a start. In Enterprise edition, you can drill back to a source. The reason I'm not thrilled is the dril through definition is tied to the generation names you would assign in the outline. I think it limits the functionality and I've expressed this to development. It is a multiple step process to set this up and would take too much space in this post to go through it. I'll create a separate post to walk you through the steps. </div></span><div class="separator" style="clear: both; text-align: left;"> </div><h2 class="separator" style="clear: both; text-align: left;">Cube Designer</h2><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; font-size: 18pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span></div><div class="separator" style="clear: both; text-align: left;">&nbsp;This Smart View extension gets better with each release and the new features include:</div><ul><li><div class="separator" style="clear: both; text-align: left;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Improved Server Error Messages handling</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Allows Export of Application from within Cube Designer</span></span></div></li><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Include Data</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"></span><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Includes </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Calc</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> Scripts</span></span></div></li></ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Data Export supports size </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">up to</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> 400 MB</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Text Lists Support in the Cube Designer Wizard</span></span></div></li><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Text Lists supports </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">up to</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> 64k entries</span></span><a href="https://3.bp.blogspot.com/-jiPHIhvAH9I/WZcRkKHr45I/AAAAAAAABBA/NhRO1N8k2cgOIWuI490mNGPoe6UuhcsxACLcBGAs/s1600/cube%2Bdesigner.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="809" data-original-width="1077" height="300" src="https://3.bp.blogspot.com/-jiPHIhvAH9I/WZcRkKHr45I/AAAAAAAABBA/NhRO1N8k2cgOIWuI490mNGPoe6UuhcsxACLcBGAs/s400/cube%2Bdesigner.jpg" width="400" /></a></div></li></ul><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;"></div>There are also enhancements for formulas in unstructured data loads<br /> <br /><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Allow for Hints for Measures</span></span></div></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Can refer to specific column names as formulae</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Provide Excel based Column References as formulae</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Mix of both</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Support for new implementation of XREF/XWRITE</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Allows for migration of applications from one instance to another without the need for location aliases</span></span></li></ul><h2><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">LCM Improvements</span></h2>I've saved one of the big changes for last. You can now use an LCM export from PBCS&nbsp;and FCCS&nbsp;to build an Essbase cube<br /> <br /><ul><li><div style="-ms-word-break: normal; direction: ltr; language: en-US; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; unicode-bidi: embed;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Support for LCM Extracts from EPM using </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">EPMAutomate</span></span></div></li><ul><li><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">The OAC Essbase LCM Import using CLI extracts the Essbase Cube contents from the Export done using </span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">EPMAutomate</span></span></li><ul><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">PBCS</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">FCCS…</span></span></li></ul></ul></ul><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Other general LCM Enhancements include:</span></span><br /><ul><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Support for Partitions (Use Trusted Connections, within the same instance) – Earlier required manual intervention of changing partitions</span></span></li><li><span style="font-family: inherit;"><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Calc</span><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"> Associations – Users are manually added (Cloud to Cloud)</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Support Audit Trail – preserved and imported (Cloud to Cloud)</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Roles are migrated (Cloud to Cloud)</span></span></li><li><span style="color: #58595b; font-family: Calibri; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">LRO (Not Supported) – Can be done manually using MAXL</span></span></li></ul>There are some other minor things like a MaxL script library and template support. <br /><br />It is amazing how far OAC/Essbase has come in such a short time. I look forward to the next round of enhancements. <br /><br /> <br /><br /><br /><br /><br /><br /> GlennS tag:blogger.com,1999:blog-2615703102299902978.post-6813933077211908784 Fri Aug 18 2017 12:19:00 GMT-0400 (EDT) Project Managers and Athletic Coaches – Birds of the Same Feather http://blog.checkpointllc.com/project-managers-and-athletic-coaches-birds-of-the-same-feather <p>At the earliest levels of athletics, coaches are asked to teach players the basic tenets of teamwork, sportsmanship, and developing fundamentals. At the highest levels, however, coaches are tasked with leading a team to success, oftentimes being some sort of national or professional championship. As the participants gain experience and their skill-sets become more refined, the roles of the coach change. In the beginning, we are teaching new fundamentals and skills, trying to stoke a passion for a sport in a young, impressionable mind. At the highest levels, the coach must rely on their experience and expertise to put their team and players in a position to be successful. </p> <p>A coach at the college or professional level must constantly be surveying what is happening, and anticipating what will happen next based on their experience. In the professional world, the best project managers are the ones who lead each day in the same way that the collegiate and professional athletic coaches do. We have a team with diverse backgrounds, skill sets, experiences, and motivations, all working towards the same goal. Removing obstacles, anticipating changes, understanding who is on your team and what they are capable of, and applying a firm, yet flexible management approach to set the entire project up for success. At CheckPoint Consulting we have developed a methodology to allow our PM’s to do just that, based on our decades of experience and success. Our methodology is rooted in the Project Management Institute’s (PMI) processes and knowledge areas, and adapted to fit the ever-changing needs of our industry to provide a best-in-class experience to our clients.</p> <p>CheckPoint’s team of consultants, technicians, and project managers come to each project bringing unmatched expertise and experience, allowing them to anticipate issues ahead of time, manage risk, manage costs, and deliver on-time. With some of the most knowledgeable and well-respected people in the industry, we will work side-by-side with you throughout the project life-cycle, and train you to use the product confidently the moment you go live.</p> <p> <a href="mailto:info@checkpointllc.com">Contact us</a> to learn more about how we can help coach your next project.</p> <img src="http://track.hubspot.com/__ptq.gif?a=297092&amp;k=14&amp;r=http%3A%2F%2Fblog.checkpointllc.com%2Fproject-managers-and-athletic-coaches-birds-of-the-same-feather&amp;bu=http%253A%252F%252Fblog.checkpointllc.com&amp;bvt=rss" alt="" width="1" height="1" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important; "> CheckPoint http://blog.checkpointllc.com/project-managers-and-athletic-coaches-birds-of-the-same-feather Thu Aug 17 2017 09:56:06 GMT-0400 (EDT) Project Managers and Athletic Coaches – Birds of the Same Feather @CheckPointllc @orclEPMblogs @orclEPMblogs @orclEPMblogs http://blog.checkpointllc.com/project-managers-and-athletic-coaches-birds-of-the-same-feather <p>At the earliest levels of athletics, coaches are asked to teach players the basic tenets of teamwork, sportsmanship, and developing fundamentals. At the highest levels, however, coaches are tasked with leading a team to success, oftentimes being some sort of national or professional championship. As the participants gain experience and their skill-sets become more refined, the roles of the coach change. In the beginning, we are teaching new fundamentals and skills, trying to stoke a passion for a sport in a young, impressionable mind. At the highest levels, the coach must rely on their experience and expertise to put their team and players in a position to be successful. </p> <p>A coach at the college or professional level must constantly be surveying what is happening, and anticipating what will happen next based on their experience. In the professional world, the best project managers are the ones who lead each day in the same way that the collegiate and professional athletic coaches do. We have a team with diverse backgrounds, skill sets, experiences, and motivations, all working towards the same goal. Removing obstacles, anticipating changes, understanding who is on your team and what they are capable of, and applying a firm, yet flexible management approach to set the entire project up for success. At CheckPoint Consulting we have developed a methodology to allow our PM’s to do just that, based on our decades of experience and success. Our methodology is rooted in the Project Management Institute’s (PMI) processes and knowledge areas, and adapted to fit the ever-changing needs of our industry to provide a best-in-class experience to our clients.</p> <p>CheckPoint’s team of consultants, technicians, and project managers come to each project bringing unmatched expertise and experience, allowing them to anticipate issues ahead of time, manage risk, manage costs, and deliver on-time. With some of the most knowledgeable and well-respected people in the industry, we will work side-by-side with you throughout the project life-cycle, and train you to use the product confidently the moment you go live.</p> <p> <a href="mailto:info@checkpointllc.com">Contact us</a> to learn more about how we can help coach your next project.</p> <img src="http://track.hubspot.com/__ptq.gif?a=297092&amp;k=14&amp;r=http%3A%2F%2Fblog.checkpointllc.com%2Fproject-managers-and-athletic-coaches-birds-of-the-same-feather&amp;bu=http%253A%252F%252Fblog.checkpointllc.com&amp;bvt=rss" alt="" width="1" height="1" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important; "> CheckPoint http://blog.checkpointllc.com/project-managers-and-athletic-coaches-birds-of-the-same-feather Thu Aug 17 2017 09:56:06 GMT-0400 (EDT) Fun with Oracle Analytics Cloud (OAC): Creating Essbase Cubes http://blog.performancearchitects.com/wp/2017/08/16/fun-with-oracle-analytics-cloud-oac-creating-essbase-cubes/ <p>Author: Andrew Tauro, Performance Architects</p> <p>Just like there are multiple ways to skin a cat, there’s more than one way to create an Essbase cube in <a href="https://cloud.oracle.com/en_US/oac">Oracle Analytics Cloud (OAC)</a>. While the best way to migrate on-premise <a href="https://docs.oracle.com/cloud/latest/analytics-cloud/ESSUG/overview.htm#ESSUG-getting_started_1">Essbase cubes</a> to OAC is to use the standalone “EssbaseLCMUtility” tool, to create cubes from scratch there are three ways that I have used so far: use the Web UI; build an Application Workbook by hand (or from a template); or use the Cube builder. The latter two are the focus of this blog.</p> <p>The Application Workbook is essentially a Microsoft Excel workbook that contains a predefined set of tabs, with the contents arranged in a predetermined manner. What that means is the workbook has a bunch of tabs like this:</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1.png"><img class="alignnone size-medium wp-image-2115" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1-300x21.png" alt="" width="300" height="21" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1-300x21.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1-768x54.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1-1024x73.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1-624x44.png 624w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Each of these tabs serves a particular purpose, but from what I can tell only the first two are a “must” when creating the application:</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2.png"><img class="alignnone size-medium wp-image-2114" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2-300x136.png" alt="" width="300" height="136" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2-300x136.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2-768x349.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2-1024x466.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2-624x284.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2.png 1163w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>The “Essbase.Cube” worksheet defines the application and database names, which are required information when creating a cube. In addition, this sheet is used to define the cube dimensions:</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3.png"><img class="alignnone size-medium wp-image-2113" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3-300x161.png" alt="" width="300" height="161" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3-300x161.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3-768x413.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3-624x335.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3.png 994w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>“Cube.Settings” and “Cube.Generations” define properties of the Essbase database. The former defines some crucial cube information, such as whether it is going to be a <a href="https://en.wikipedia.org/wiki/Essbase">block storage option (BSO) or aggregate storage option (ASO)</a> cube, and if it will allow for duplicate member names.</p> <p>The remaining tabs populate the dimensions (“Dim” tabs), data (“Data” tabs) and/or define calculation scripts (“Calc” tabs) for the cube. If you are familiar with building Essbase dimensions or data files and/or writing calc scripts, these will look very familiar.</p> <p>For those of you who are not familiar with these items, there is the option of using the Cube Designer.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4.png"><img class="alignnone size-medium wp-image-2112" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4-300x76.png" alt="" width="300" height="76" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4-300x76.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4-768x195.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4-1024x260.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4-624x158.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4.png 1203w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>This is an add-in for Microsoft Excel that you can download via Smart View from your OAC instance.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at5.png"><img class="alignnone size-medium wp-image-2111" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at5-160x300.png" alt="" width="160" height="300" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at5-160x300.png 160w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at5.png 437w" sizes="(max-width: 160px) 100vw, 160px" /></a> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at6.png"><img class="alignnone size-medium wp-image-2110" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at6-155x300.png" alt="" width="155" height="300" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at6-155x300.png 155w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at6.png 435w" sizes="(max-width: 155px) 100vw, 155px" /></a></p> <p>The “Cube Designer” menu item provides tabbed screens for creating the application workbook. Walking through the tabs allows to setup the application workbook, and the “To Sheet” and “From Sheet” options facilitate reading from, and pushing to, the active workbook:</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7.png"><img class="alignnone size-medium wp-image-2109" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7-300x143.png" alt="" width="300" height="143" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7-300x143.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7-768x367.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7-1024x490.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7-624x298.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7.png 1301w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Once complete, the cube can be created via the web user interface as an import.</p> <p>This has greatly reduced the complexity of creating Essbase cubes, and is just one of the ways that OAC is redefining the way we perform analytics using Essbase.</p> <p>As we explore the capabilities of OAC, we will continue to share our thoughts with you, so stay tuned. While you take this journey with us, if you have any questions on this, feel free to send us a note at <a href="mailto:communications@performancearchitects.com">communications@performancearchitects.com</a> and we will be in touch.</p> Melanie Mathews http://blog.performancearchitects.com/wp/?p=2108 Wed Aug 16 2017 05:20:55 GMT-0400 (EDT) Fun with Oracle Analytics Cloud (OAC): Creating Essbase Cubes @PerfArchitects @orclEPMblogs @orclEPMblogs @orclEPMblogs http://blog.performancearchitects.com/wp/2017/08/16/fun-with-oracle-analytics-cloud-oac-creating-essbase-cubes/ <p>Author: Andrew Tauro, Performance Architects</p> <p>Just like there are multiple ways to skin a cat, there’s more than one way to create an Essbase cube in <a href="https://cloud.oracle.com/en_US/oac">Oracle Analytics Cloud (OAC)</a>. While the best way to migrate on-premise <a href="https://docs.oracle.com/cloud/latest/analytics-cloud/ESSUG/overview.htm#ESSUG-getting_started_1">Essbase cubes</a> to OAC is to use the standalone “EssbaseLCMUtility” tool, to create cubes from scratch there are three ways that I have used so far: use the Web UI; build an Application Workbook by hand (or from a template); or use the Cube builder. The latter two are the focus of this blog.</p> <p>The Application Workbook is essentially a Microsoft Excel workbook that contains a predefined set of tabs, with the contents arranged in a predetermined manner. What that means is the workbook has a bunch of tabs like this:</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1.png"><img class="alignnone size-medium wp-image-2115" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1-300x21.png" alt="" width="300" height="21" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1-300x21.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1-768x54.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1-1024x73.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at1-624x44.png 624w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Each of these tabs serves a particular purpose, but from what I can tell only the first two are a “must” when creating the application:</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2.png"><img class="alignnone size-medium wp-image-2114" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2-300x136.png" alt="" width="300" height="136" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2-300x136.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2-768x349.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2-1024x466.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2-624x284.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at2.png 1163w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>The “Essbase.Cube” worksheet defines the application and database names, which are required information when creating a cube. In addition, this sheet is used to define the cube dimensions:</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3.png"><img class="alignnone size-medium wp-image-2113" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3-300x161.png" alt="" width="300" height="161" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3-300x161.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3-768x413.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3-624x335.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at3.png 994w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>“Cube.Settings” and “Cube.Generations” define properties of the Essbase database. The former defines some crucial cube information, such as whether it is going to be a <a href="https://en.wikipedia.org/wiki/Essbase">block storage option (BSO) or aggregate storage option (ASO)</a> cube, and if it will allow for duplicate member names.</p> <p>The remaining tabs populate the dimensions (“Dim” tabs), data (“Data” tabs) and/or define calculation scripts (“Calc” tabs) for the cube. If you are familiar with building Essbase dimensions or data files and/or writing calc scripts, these will look very familiar.</p> <p>For those of you who are not familiar with these items, there is the option of using the Cube Designer.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4.png"><img class="alignnone size-medium wp-image-2112" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4-300x76.png" alt="" width="300" height="76" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4-300x76.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4-768x195.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4-1024x260.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4-624x158.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at4.png 1203w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>This is an add-in for Microsoft Excel that you can download via Smart View from your OAC instance.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at5.png"><img class="alignnone size-medium wp-image-2111" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at5-160x300.png" alt="" width="160" height="300" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at5-160x300.png 160w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at5.png 437w" sizes="(max-width: 160px) 100vw, 160px" /></a> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at6.png"><img class="alignnone size-medium wp-image-2110" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at6-155x300.png" alt="" width="155" height="300" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at6-155x300.png 155w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at6.png 435w" sizes="(max-width: 155px) 100vw, 155px" /></a></p> <p>The “Cube Designer” menu item provides tabbed screens for creating the application workbook. Walking through the tabs allows to setup the application workbook, and the “To Sheet” and “From Sheet” options facilitate reading from, and pushing to, the active workbook:</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7.png"><img class="alignnone size-medium wp-image-2109" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7-300x143.png" alt="" width="300" height="143" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7-300x143.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7-768x367.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7-1024x490.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7-624x298.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/08/at7.png 1301w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Once complete, the cube can be created via the web user interface as an import.</p> <p>This has greatly reduced the complexity of creating Essbase cubes, and is just one of the ways that OAC is redefining the way we perform analytics using Essbase.</p> <p>As we explore the capabilities of OAC, we will continue to share our thoughts with you, so stay tuned. While you take this journey with us, if you have any questions on this, feel free to send us a note at <a href="mailto:communications@performancearchitects.com">communications@performancearchitects.com</a> and we will be in touch.</p> Melanie Mathews http://blog.performancearchitects.com/wp/?p=2108 Wed Aug 16 2017 05:20:55 GMT-0400 (EDT) OAC Series: Patching OAC @opal_epm https://womaninepm.com/2017/08/15/oac-series-patching-oac/ Last night we decided to patch our OAC instance to the awaited 106 release for Essbase Cloud. There were actually 2 patches made available, one for Essbase Cloud and one for BI Cloud. I installed them consecutively (although you can run all patches at once since they hit different VM&#8217;s &#8211; we haven&#8217;t tried this &#8230; <a href="https://womaninepm.com/2017/08/15/oac-series-patching-oac/" class="more-link">Continue reading <span class="screen-reader-text">OAC Series: Patching&#160;OAC</span></a><img alt="" border="0" src="https://pixel.wp.com/b.gif?host=womaninepm.com&#038;blog=86936629&#038;post=10918&#038;subd=womaninepm&#038;ref=&#038;feed=1" width="1" height="1" /> OpaL http://womaninepm.com/?p=10918 Tue Aug 15 2017 16:30:50 GMT-0400 (EDT) OAC Series: Patching OAC https://womaninepm.com/2017/08/15/oac-series-patching-oac/ Last night we decided to patch our OAC instance to the awaited 106 release for Essbase Cloud. There were actually 2 patches made available, one for Essbase Cloud and one for BI Cloud. I installed them consecutively (although you can run all patches at once since they hit different VM&#8217;s &#8211; we haven&#8217;t tried this &#8230; <a href="https://womaninepm.com/2017/08/15/oac-series-patching-oac/" class="more-link">Continue reading <span class="screen-reader-text">OAC Series: Patching&#160;OAC</span></a><img alt="" border="0" src="https://pixel.wp.com/b.gif?host=womaninepm.com&#038;blog=86936629&#038;post=10918&#038;subd=womaninepm&#038;ref=&#038;feed=1" width="1" height="1" /> OpaL http://womaninepm.com/?p=10918 Tue Aug 15 2017 16:30:50 GMT-0400 (EDT) Kim Kardashian can get my Essbase server updates https://cubistramblings.wordpress.com/2017/08/15/kim-kardashian-can-get-my-essbase-server-updates/ <p>I had the great pleasure of presenting at Kscope17 on the power of Essbase CDFs.  At the end of my CDF presentation this year, I gave a live demonstration of a little CDF that is designed to spark the imagination.</p> <p>In 2009, Matt Milella presented on CDFs at Kaleidoscope and talked about the top 5 CDFs that his team had created.  At the end, he showed a very cool demonstration of how his Essbase server could send out a tweet using a CDF. This was an amazing display and really inspired me to figure out how to create CDFs.</p> <p>So, as an homage to <a href="http://essbaselabs.blogspot.com/2009/05/ashton-kutcher-can-now-get-my-essbase.html" target="_blank" rel="noopener">Matt&#8217;s blog post about how Ashton Kutcher can get his Essbase server updates</a>, I have created an updated version of the Twitter CDF. As Matt states, he used JTwitter back in 2009.  Unfortunately for me, Twitter has long since changed their authentication to use <a href="http://oauth.net/" target="_blank" rel="noopener">OAuth</a> for security which means that JTwitter doesn&#8217;t work anymore.</p> <p>I did some searching and found <a href="http://twitter4j.org/en/index.html">Twitter4J</a>, an unofficial Java library for the Twitter API. This library handles the OAuth authentication as well as allows submitting of new status updates, sending direct messages, searching tweets, etc. Between Matt&#8217;s original Twitter code, the Twitter4J sample code, and some trial and error, I was able to get the library setup and created a Java class that could send my tweets.</p> <ol> <li>The first step was to download the Twitter4J library.  I added the twitter4j-core-4.0.3.jar file into my lib folder in JDeveloper and added it to my classpath.</li> <li>Next, I had to setup a new Twitter account (<a href="https://twitter.com/EssbaseServer2" target="_blank" rel="noopener">EssbaseServer2</a>).</li> <li>Then, I went to <a href="http://twitter.com/oauth_clients/new" target="_blank" rel="noopener">http://twitter.com/oauth_clients/new</a> and setup my application to get the OAuth keys needed for my code to authenticate.<br /> <img data-attachment-id="1027" data-permalink="https://cubistramblings.wordpress.com/2017/08/15/kim-kardashian-can-get-my-essbase-server-updates/twitterapp/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=620" data-orig-size="1017,586" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="TwitterApp" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=620?w=620" class="alignnone size-full wp-image-1027" src="https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=620" alt="TwitterApp" srcset="https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=768 768w, https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg 1017w" sizes="(max-width: 620px) 100vw, 620px" /></li> <li>Once I gathered the keys, I put them into a .properties file called &#8220;EssbasTweet.properties&#8221;.  This file will be placed onto my Essbase server into the %EOH%/products/Essbase/EssbaseServer/java/udf directory.  Placing the file into the &#8230;/java/udf directory puts it into Essbase&#8217;s Java classpath and Essbase will be able to access the file when its needed.<br /> <img data-attachment-id="1026" data-permalink="https://cubistramblings.wordpress.com/2017/08/15/kim-kardashian-can-get-my-essbase-server-updates/propertiesfile/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=620" data-orig-size="615,104" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="propertiesFile" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=620?w=615" class="alignnone size-full wp-image-1026" src="https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=620" alt="propertiesFile" srcset="https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg 615w, https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=300 300w" sizes="(max-width: 615px) 100vw, 615px" /></li> <li>Next, I wrote my code (based heavily on Twitter4J&#8217;s sample code), compiled it, deployed the code to a JAR and placed the JAR on the Essbase server.<br /> <img data-attachment-id="1030" data-permalink="https://cubistramblings.wordpress.com/2017/08/15/kim-kardashian-can-get-my-essbase-server-updates/sourcecode/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=620" data-orig-size="743,1139" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="SourceCode" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=620?w=196" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=620?w=620" class="alignnone size-full wp-image-1030" src="https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=620" alt="SourceCode" srcset="https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=98 98w, https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=196 196w, https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg 743w" sizes="(max-width: 620px) 100vw, 620px" /></li> <li>I registered the CDF manually in EAS.<br /> <img data-attachment-id="1032" data-permalink="https://cubistramblings.wordpress.com/2017/08/15/kim-kardashian-can-get-my-essbase-server-updates/registercdf-2/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=358&#038;h=589" data-orig-size="457,752" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="RegisterCDF" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=358&#038;h=589?w=182" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=358&#038;h=589?w=457" class="alignnone wp-image-1032" src="https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=358&#038;h=589" alt="RegisterCDF" width="358" height="589" srcset="https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=358&amp;h=589 358w, https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=91&amp;h=150 91w, https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=182&amp;h=300 182w, https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg 457w" sizes="(max-width: 358px) 100vw, 358px" /></li> <li>I was able to pretty much reuse Matt&#8217;s original calc script as he had it back in 2009 with the exception of using an @CalcMgr function instead of one of the older data functions.</li> </ol> <p>Does it work? Well, go and check out the @EssbaseServer2 account for yourself.</p> <p>While publicly tweeting your data might not be the best idea, hopefully this serves as a spark to ignite your imagination of the power of CDFs. Anything you can do in Java can be implemented in an Essbase calculation. Some attendees of my presentation were pretty excited about the possibilities of communicating with their users by submitting messages using Slack or updating a status on a SharePoint site. The possibilities are limited only by your imagination.</p> <p>Thanks again to Matt for presenting on CDFs eight years ago. It definitely inspired me to learn more and hopefully this will inspire others to do the same.</p> <p>There has been some uncertainty about the fate of CDFs with OAC and the Essbase cloud service, but never fear, CDFs are supported but they are limited to local CDFs. More on that in the future.</p><br /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cubistramblings.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cubistramblings.wordpress.com/279/" /></a> <img alt="" border="0" src="https://pixel.wp.com/b.gif?host=cubistramblings.wordpress.com&#038;blog=34122718&#038;post=279&#038;subd=cubistramblings&#038;ref=&#038;feed=1" width="1" height="1" /> Robert Gideon http://cubistramblings.wordpress.com/?p=279 Tue Aug 15 2017 10:11:05 GMT-0400 (EDT) Kim Kardashian can get my Essbase server updates @rjgideon @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs https://cubistramblings.wordpress.com/2017/08/15/kim-kardashian-can-get-my-essbase-server-updates/ <p>I had the great pleasure of presenting at Kscope17 on the power of Essbase CDFs.  At the end of my CDF presentation this year, I gave a live demonstration of a little CDF that is designed to spark the imagination.</p> <p>In 2009, Matt Milella presented on CDFs at Kaleidoscope and talked about the top 5 CDFs that his team had created.  At the end, he showed a very cool demonstration of how his Essbase server could send out a tweet using a CDF. This was an amazing display and really inspired me to figure out how to create CDFs.</p> <p>So, as an homage to <a href="http://essbaselabs.blogspot.com/2009/05/ashton-kutcher-can-now-get-my-essbase.html" target="_blank" rel="noopener">Matt&#8217;s blog post about how Ashton Kutcher can get his Essbase server updates</a>, I have created an updated version of the Twitter CDF. As Matt states, he used JTwitter back in 2009.  Unfortunately for me, Twitter has long since changed their authentication to use <a href="http://oauth.net/" target="_blank" rel="noopener">OAuth</a> for security which means that JTwitter doesn&#8217;t work anymore.</p> <p>I did some searching and found <a href="http://twitter4j.org/en/index.html">Twitter4J</a>, an unofficial Java library for the Twitter API. This library handles the OAuth authentication as well as allows submitting of new status updates, sending direct messages, searching tweets, etc. Between Matt&#8217;s original Twitter code, the Twitter4J sample code, and some trial and error, I was able to get the library setup and created a Java class that could send my tweets.</p> <ol> <li>The first step was to download the Twitter4J library.  I added the twitter4j-core-4.0.3.jar file into my lib folder in JDeveloper and added it to my classpath.</li> <li>Next, I had to setup a new Twitter account (<a href="https://twitter.com/EssbaseServer2" target="_blank" rel="noopener">EssbaseServer2</a>).</li> <li>Then, I went to <a href="http://twitter.com/oauth_clients/new" target="_blank" rel="noopener">http://twitter.com/oauth_clients/new</a> and setup my application to get the OAuth keys needed for my code to authenticate.<br /> <img data-attachment-id="1027" data-permalink="https://cubistramblings.wordpress.com/2017/08/15/kim-kardashian-can-get-my-essbase-server-updates/twitterapp/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=620" data-orig-size="1017,586" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="TwitterApp" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=620?w=620" class="alignnone size-full wp-image-1027" src="https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=620" alt="TwitterApp" srcset="https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg?w=768 768w, https://cubistramblings.files.wordpress.com/2017/08/twitterapp.jpg 1017w" sizes="(max-width: 620px) 100vw, 620px" /></li> <li>Once I gathered the keys, I put them into a .properties file called &#8220;EssbasTweet.properties&#8221;.  This file will be placed onto my Essbase server into the %EOH%/products/Essbase/EssbaseServer/java/udf directory.  Placing the file into the &#8230;/java/udf directory puts it into Essbase&#8217;s Java classpath and Essbase will be able to access the file when its needed.<br /> <img data-attachment-id="1026" data-permalink="https://cubistramblings.wordpress.com/2017/08/15/kim-kardashian-can-get-my-essbase-server-updates/propertiesfile/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=620" data-orig-size="615,104" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="propertiesFile" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=620?w=615" class="alignnone size-full wp-image-1026" src="https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=620" alt="propertiesFile" srcset="https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg 615w, https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/propertiesfile.jpg?w=300 300w" sizes="(max-width: 615px) 100vw, 615px" /></li> <li>Next, I wrote my code (based heavily on Twitter4J&#8217;s sample code), compiled it, deployed the code to a JAR and placed the JAR on the Essbase server.<br /> <img data-attachment-id="1030" data-permalink="https://cubistramblings.wordpress.com/2017/08/15/kim-kardashian-can-get-my-essbase-server-updates/sourcecode/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=620" data-orig-size="743,1139" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="SourceCode" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=620?w=196" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=620?w=620" class="alignnone size-full wp-image-1030" src="https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=620" alt="SourceCode" srcset="https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=98 98w, https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg?w=196 196w, https://cubistramblings.files.wordpress.com/2017/08/sourcecode.jpg 743w" sizes="(max-width: 620px) 100vw, 620px" /></li> <li>I registered the CDF manually in EAS.<br /> <img data-attachment-id="1032" data-permalink="https://cubistramblings.wordpress.com/2017/08/15/kim-kardashian-can-get-my-essbase-server-updates/registercdf-2/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=358&#038;h=589" data-orig-size="457,752" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="RegisterCDF" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=358&#038;h=589?w=182" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=358&#038;h=589?w=457" class="alignnone wp-image-1032" src="https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=358&#038;h=589" alt="RegisterCDF" width="358" height="589" srcset="https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=358&amp;h=589 358w, https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=91&amp;h=150 91w, https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg?w=182&amp;h=300 182w, https://cubistramblings.files.wordpress.com/2017/08/registercdf.jpg 457w" sizes="(max-width: 358px) 100vw, 358px" /></li> <li>I was able to pretty much reuse Matt&#8217;s original calc script as he had it back in 2009 with the exception of using an @CalcMgr function instead of one of the older data functions.</li> </ol> <p>Does it work? Well, go and check out the @EssbaseServer2 account for yourself.</p> <p>While publicly tweeting your data might not be the best idea, hopefully this serves as a spark to ignite your imagination of the power of CDFs. Anything you can do in Java can be implemented in an Essbase calculation. Some attendees of my presentation were pretty excited about the possibilities of communicating with their users by submitting messages using Slack or updating a status on a SharePoint site. The possibilities are limited only by your imagination.</p> <p>Thanks again to Matt for presenting on CDFs eight years ago. It definitely inspired me to learn more and hopefully this will inspire others to do the same.</p> <p>There has been some uncertainty about the fate of CDFs with OAC and the Essbase cloud service, but never fear, CDFs are supported but they are limited to local CDFs. More on that in the future.</p><br /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cubistramblings.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cubistramblings.wordpress.com/279/" /></a> <img alt="" border="0" src="https://pixel.wp.com/b.gif?host=cubistramblings.wordpress.com&#038;blog=34122718&#038;post=279&#038;subd=cubistramblings&#038;ref=&#038;feed=1" width="1" height="1" /> Robert Gideon http://cubistramblings.wordpress.com/?p=279 Tue Aug 15 2017 10:11:05 GMT-0400 (EDT) FDMEE - Custom Scheduler - Part 2 http://john-goodwin.blogspot.com/2017/08/fdmee-custom-scheduler-part-2.html <div dir="ltr" style="text-align: left;" trbidi="on">In the last part I went through an example solution to build a custom scheduler which could be accessed through the FDMEE UI, it was created using a combination of jython and the ODI Java API, the post covered in detail the process to create a new batch schedule but could easily be adapted to schedule data and metadata load rules or custom scripts.<br /><br />In this post I want to continue where I left off and move on to updating, deleting and viewing active schedules, also look at the possibilities of running these tasks outside of the FDMEE UI.<br /><br />Let us start off with updating an existing schedule, a custom script was registered which has parameters defined to select the schedule, set the start and end dates and repetition in minutes or hours. These parameters will be displayed when the custom script is executed and then passed into the jython script which will then update the schedule.<br /><div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-0ZQDnNZsP7I/WZG4RZXfnpI/AAAAAAAAJF0/Wy91Kj4lXXgeeqXcmoXf-01xY7obARNuwCLcBGAs/s1600/ascript.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="464" data-original-width="679" src="https://1.bp.blogspot.com/-0ZQDnNZsP7I/WZG4RZXfnpI/AAAAAAAAJF0/Wy91Kj4lXXgeeqXcmoXf-01xY7obARNuwCLcBGAs/s1600/ascript.PNG" /></a></div><br />The parameter “SCHEDULE_ID” has been defined to call a query called “Batch Info”, this SQL query is against the ODI repository which hold the scheduling information, the query has been defined to return an understandable description and the ODI internal ID for the schedule, this ID is important as it will be used with the ODI Java API to access the selected schedule.</div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-7_O6foW0Rmw/WZG0KZUb7UI/AAAAAAAAJDU/gvVR9D1HfA8i5dM-7MFTSXBKd8XKB180wCLcBGAs/s1600/image002.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="512" data-original-width="693" src="https://3.bp.blogspot.com/-7_O6foW0Rmw/WZG0KZUb7UI/AAAAAAAAJDU/gvVR9D1HfA8i5dM-7MFTSXBKd8XKB180wCLcBGAs/s1600/image002.png" /></a></div><br />You will see the query in action when I execute the custom script which now appears in the UI under the “Custom Batch Scheduler” group it has been assigned to.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-uZdV88f4cEc/WZG0Kcs-3TI/AAAAAAAAJDQ/mAJ4qjADVF4J5w-iqyP0ZvBX5HIzDeziwCLcBGAs/s1600/image003.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="226" data-original-width="456" src="https://4.bp.blogspot.com/-uZdV88f4cEc/WZG0Kcs-3TI/AAAAAAAAJDQ/mAJ4qjADVF4J5w-iqyP0ZvBX5HIzDeziwCLcBGAs/s1600/image003.png" /></a></div><br />Executing the “Update Batch Schedule” script displays a window with the parameters that were defined in the script registration.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-xd0KBbgpg9E/WZG0K8MCbxI/AAAAAAAAJDc/XbGgmD6QfWw3fFvg8lPrj46dqmnvGOM6QCLcBGAs/s1600/image004.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="209" data-original-width="465" src="https://1.bp.blogspot.com/-xd0KBbgpg9E/WZG0K8MCbxI/AAAAAAAAJDc/XbGgmD6QfWw3fFvg8lPrj46dqmnvGOM6QCLcBGAs/s1600/image004.png" /></a></div><br />Now if select the schedule to update the SQL query comes into action and the script name, start to end date, repetition and schedule ID are displayed ready for selection.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-3pt7OUsEb3g/WZG0Lfu5_aI/AAAAAAAAJDg/ZoakY980xE8EZ3nzkWLZadM2dTsxQDE5gCLcBGAs/s1600/image005.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="137" data-original-width="383" src="https://1.bp.blogspot.com/-3pt7OUsEb3g/WZG0Lfu5_aI/AAAAAAAAJDg/ZoakY980xE8EZ3nzkWLZadM2dTsxQDE5gCLcBGAs/s1600/image005.png" /></a></div><br />It would be nice if there was the functionality to base a SQL query on the results of a SQL query but unfortunately that is not yet available in FDMEE so the remaining input fields need to input manually, as the schedule is being updated this is not much of an issue because you would need to enter new values anyway.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-EVgYtApS9fo/WZG0L9VQ4lI/AAAAAAAAJDk/wVvKm3lLRYc_SwvzdhI8SzrErMtRuQuxwCLcBGAs/s1600/image006.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="212" data-original-width="466" src="https://1.bp.blogspot.com/-EVgYtApS9fo/WZG0L9VQ4lI/AAAAAAAAJDk/wVvKm3lLRYc_SwvzdhI8SzrErMtRuQuxwCLcBGAs/s1600/image006.png" /></a></div><br />Now the new schedule information has been entered the script can be run and a custom message is displayed if the update was successful.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-7S4FADaXkpQ/WZG0MdUHsPI/AAAAAAAAJDo/PL9Det2YYtQjT2yD6ugiaTY6NyQyyGM2ACLcBGAs/s1600/image007.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="96" data-original-width="174" src="https://3.bp.blogspot.com/-7S4FADaXkpQ/WZG0MdUHsPI/AAAAAAAAJDo/PL9Det2YYtQjT2yD6ugiaTY6NyQyyGM2ACLcBGAs/s1600/image007.png" /></a></div><br />The process logs also display the status of executing the custom script.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-5ZzrfP2G96k/WZG0M5DKb3I/AAAAAAAAJDs/HKUH6IvomDwMs5BBLt35o5pj8btKdJI-QCLcBGAs/s1600/image008.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="119" data-original-width="528" src="https://4.bp.blogspot.com/-5ZzrfP2G96k/WZG0M5DKb3I/AAAAAAAAJDs/HKUH6IvomDwMs5BBLt35o5pj8btKdJI-QCLcBGAs/s1600/image008.png" /></a></div><br />The FDMEE log associated with the process contains the updated schedule information.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-hdQB-oXuEeM/WZG0NVaI6kI/AAAAAAAAJDw/LE2gIupSYqkrhxgAZolSUlIGMXcE0qTUgCLcBGAs/s1600/image009.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="83" data-original-width="530" src="https://1.bp.blogspot.com/-hdQB-oXuEeM/WZG0NVaI6kI/AAAAAAAAJDw/LE2gIupSYqkrhxgAZolSUlIGMXcE0qTUgCLcBGAs/s1600/image009.png" /></a></div><br />To prove the schedule has been updated I can switch over to the ODI console where it should have a new start date of 20th of August at 8am.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-Mx9AU7_ZqX8/WZG0Ny4O1xI/AAAAAAAAJD0/J0Qa4diPcrQ-1qh5McBvUBR-CXqlYR-YgCLcBGAs/s1600/image010.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="454" data-original-width="665" src="https://2.bp.blogspot.com/-Mx9AU7_ZqX8/WZG0Ny4O1xI/AAAAAAAAJD0/J0Qa4diPcrQ-1qh5McBvUBR-CXqlYR-YgCLcBGAs/s1600/image010.png" /></a></div><br />As I explained in the last part the end date has to be calculated and set as a maximum cycle duration, the execution cycle includes the interval between repetitions which correctly matches the value entered when running the custom script.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-4epx6yRHBT8/WZG0OWBXQaI/AAAAAAAAJD4/e2zzJL6enswZl-MkZAydw7hYo6SawEQfACLcBGAs/s1600/image011.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="201" data-original-width="459" src="https://3.bp.blogspot.com/-4epx6yRHBT8/WZG0OWBXQaI/AAAAAAAAJD4/e2zzJL6enswZl-MkZAydw7hYo6SawEQfACLcBGAs/s1600/image011.png" /></a></div><br />To prove the scheduling information had been update correctly I could have also just run the update schedule custom script again and selected the option to return the active schedules, this would have returned the updated values from the ODI repository.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-ljMjmmcKj2s/WZG0Ow7nkRI/AAAAAAAAJD8/mEFwBd5jiPsqHICIm0TnnWxWO3pW3gPggCLcBGAs/s1600/image012.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="95" data-original-width="341" src="https://3.bp.blogspot.com/-ljMjmmcKj2s/WZG0Ow7nkRI/AAAAAAAAJD8/mEFwBd5jiPsqHICIm0TnnWxWO3pW3gPggCLcBGAs/s1600/image012.png" /></a></div><br />What you do need to watch out for with populating parameter value fields is there is currently a 50-character limit, the SQL will return no problem, for example<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-r7IB4ghnXn4/WZG0PsTkoEI/AAAAAAAAJEA/wCReNIni3G4IsGx4-73joUEvp9oLsXpZQCLcBGAs/s1600/image013.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="99" data-original-width="402" src="https://3.bp.blogspot.com/-r7IB4ghnXn4/WZG0PsTkoEI/AAAAAAAAJEA/wCReNIni3G4IsGx4-73joUEvp9oLsXpZQCLcBGAs/s1600/image013.png" /></a></div><br />As the above text is are over 50 characters then after selecting you would be hit with an unfriendly ADF error.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-jYa2q92t3Uw/WZG0P-GzT6I/AAAAAAAAJEE/mtkUryLlcj07OQwWBhXmBYgfbkvpWphoACLcBGAs/s1600/image014.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="177" data-original-width="745" height="152" src="https://1.bp.blogspot.com/-jYa2q92t3Uw/WZG0P-GzT6I/AAAAAAAAJEE/mtkUryLlcj07OQwWBhXmBYgfbkvpWphoACLcBGAs/s640/image014.png" width="640" /></a></div><br />The magic to update the schedule is all handled in the jython script, the script follows the same concept as what I went through in the last part so there is no need for me to show all the script again.<br /><br />The parameters values are stored, the schedule duration is calculated by finding the difference in minutes between the start and end date.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-luKYqz59CHQ/WZG0Qo8fvaI/AAAAAAAAJEI/J0MOaOhvkrsZnqJc218EbfaUv5B9ix4EwCLcBGAs/s1600/image015.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="666" data-original-width="807" height="528" src="https://4.bp.blogspot.com/-luKYqz59CHQ/WZG0Qo8fvaI/AAAAAAAAJEI/J0MOaOhvkrsZnqJc218EbfaUv5B9ix4EwCLcBGAs/s640/image015.png" width="640" /></a></div><br />A connection is made to the ODI repository and then the schedule is returned by searching based on the ID that was passed into the script.<br /><br />The values of the schedule are then updated to the ones defined when running the script, these values are then committed and the agent schedule updated.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-qNIFJrmJd_E/WZG0Q_AcohI/AAAAAAAAJEM/UFuaLq2CQNoeJ5GMpbvfQh_vM17xl7r8wCLcBGAs/s1600/image016.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="495" data-original-width="699" height="453" src="https://1.bp.blogspot.com/-qNIFJrmJd_E/WZG0Q_AcohI/AAAAAAAAJEM/UFuaLq2CQNoeJ5GMpbvfQh_vM17xl7r8wCLcBGAs/s640/image016.png" width="640" /></a></div><br />So that is creating and updating schedules covered off, on to deleting a schedule.<br /><br />Once again a custom script is registered, this time there is only the requirement for one parameter and that is to select the schedule to delete, the query is exactly the same as the one used in the update script.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-59bye-y05xY/WZG-lTxj2PI/AAAAAAAAJGE/h7Oeb5aelP4OE_cRMwgLn_luuG2osYHFQCLcBGAs/s1600/ascript.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="332" data-original-width="678" src="https://3.bp.blogspot.com/-59bye-y05xY/WZG-lTxj2PI/AAAAAAAAJGE/h7Oeb5aelP4OE_cRMwgLn_luuG2osYHFQCLcBGAs/s1600/ascript.PNG" /></a></div><br />After the script has been registered, it is available in script execution under the group which it was registered to.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-9inQJsY2Qgc/WZG0RFlT3HI/AAAAAAAAJEU/3RV6LOKLztAGa6kp3Zf_-GE_6E_NBiHGgCLcBGAs/s1600/image018.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="226" data-original-width="455" src="https://4.bp.blogspot.com/-9inQJsY2Qgc/WZG0RFlT3HI/AAAAAAAAJEU/3RV6LOKLztAGa6kp3Zf_-GE_6E_NBiHGgCLcBGAs/s1600/image018.png" /></a></div><br />When the script is executed there is one parameter available to select the schedule to delete.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-4Xh5IhN12Ns/WZG0RDDRkZI/AAAAAAAAJEY/ISDMcfEe1d0btExia2rGz8Q3lxgLv5TkACLcBGAs/s1600/image019.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="90" data-original-width="468" src="https://4.bp.blogspot.com/-4Xh5IhN12Ns/WZG0RDDRkZI/AAAAAAAAJEY/ISDMcfEe1d0btExia2rGz8Q3lxgLv5TkACLcBGAs/s1600/image019.png" /></a></div><br />Selecting the magnifying glass will run the SQL query to run all the active batch schedules.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-9xBkkrE2hNI/WZG0RQp75HI/AAAAAAAAJEc/rNuSGRRBKw89ZoBx0R6qhCNRiTziWDiaACLcBGAs/s1600/image020.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="135" data-original-width="344" src="https://3.bp.blogspot.com/-9xBkkrE2hNI/WZG0RQp75HI/AAAAAAAAJEc/rNuSGRRBKw89ZoBx0R6qhCNRiTziWDiaACLcBGAs/s1600/image020.png" /></a></div><br />I selected the first schedule in the list to be deleted.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-VYfDvpk0VIo/WZG0RhAF6zI/AAAAAAAAJEg/EvyJE_J4dXoaQ0fd3pGtnf6mhRzrgsR5ACLcBGAs/s1600/image021.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="85" data-original-width="466" src="https://4.bp.blogspot.com/-VYfDvpk0VIo/WZG0RhAF6zI/AAAAAAAAJEg/EvyJE_J4dXoaQ0fd3pGtnf6mhRzrgsR5ACLcBGAs/s1600/image021.png" /></a></div><br />A custom message is displayed if the delete was successful.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-JjAUH-m4VRQ/WZG0SCDF0XI/AAAAAAAAJEk/SWIJNItnoVMCTE2n1WAFoKN-CkuChiR7gCLcBGAs/s1600/image022.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="99" data-original-width="166" src="https://2.bp.blogspot.com/-JjAUH-m4VRQ/WZG0SCDF0XI/AAAAAAAAJEk/SWIJNItnoVMCTE2n1WAFoKN-CkuChiR7gCLcBGAs/s1600/image022.png" /></a></div><br />If I run the script again and view the schedules it confirms the schedule has definitely been deleted.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-hobuvmAUn9A/WZG0SeZHtXI/AAAAAAAAJEo/94aTha0-fNEDXdU6FKKmlIBi0A-XiRgcwCLcBGAs/s1600/image023.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="119" data-original-width="297" src="https://3.bp.blogspot.com/-hobuvmAUn9A/WZG0SeZHtXI/AAAAAAAAJEo/94aTha0-fNEDXdU6FKKmlIBi0A-XiRgcwCLcBGAs/s1600/image023.png" /></a></div><br />The jython script is much simpler this time as all that is required is to retrieve the ID of the schedule from the custom script parameter values, connect to the ODI repository, find the schedule by the ID, delete the schedule, commit and then update the ODI agent scheduler.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/--vQB3pDUuGQ/WZG0SwvN9xI/AAAAAAAAJEs/MYNppVl6flo992iLfla_vJQUT1M8y-2fQCLcBGAs/s1600/image024.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="272" data-original-width="693" src="https://3.bp.blogspot.com/--vQB3pDUuGQ/WZG0SwvN9xI/AAAAAAAAJEs/MYNppVl6flo992iLfla_vJQUT1M8y-2fQCLcBGAs/s1600/image024.png" /></a></div><br />Just to recap that means with the custom scheduler solution we have the ability to create, update and delete schedules.<br /><br />So how about viewing the active schedules, well you can certainly run the custom scripts like I have already shown to display the schedules but personally I don’t feel like is the nicest solution, what I did to overcome this was to create a report in FDMEE.<br /><br />Before creating a report a SQL query was created and registered, the query was similar to one used in the update/delete scripts.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-_SZuMpNJK5I/WZG0Tju3tjI/AAAAAAAAJEw/1kYSTHpPgjQD3WVwQU0roVZVUz49L8wRQCLcBGAs/s1600/image025.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="579" data-original-width="606" src="https://4.bp.blogspot.com/-_SZuMpNJK5I/WZG0Tju3tjI/AAAAAAAAJEw/1kYSTHpPgjQD3WVwQU0roVZVUz49L8wRQCLcBGAs/s1600/image025.png" /></a></div><br />The query produces the following output that be used in the FDMEE report.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-Xo7F7OdAiqo/WZG0UOGUCNI/AAAAAAAAJE0/hlOL2eKn-U0tAiqjsGM6T1vAk5jFl3OjwCLcBGAs/s1600/image026.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="130" data-original-width="438" src="https://2.bp.blogspot.com/-Xo7F7OdAiqo/WZG0UOGUCNI/AAAAAAAAJE0/hlOL2eKn-U0tAiqjsGM6T1vAk5jFl3OjwCLcBGAs/s1600/image026.png" /></a></div><br />Once the query validated the generate XML button was selected, this produces an XML file which can be loaded into word using BI Publisher desktop to generate a template file.<br /><br />Now that everything is in place a new report definition was created, the query, template and group were assigned to the definition, there were no need for any parameters for this report.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-qlmPYdKT8qE/WZHBR_w_fVI/AAAAAAAAJGQ/HoGwtSGaITY0rFgAihbdhJMWzRArO_KYACLcBGAs/s1600/arep.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="386" data-original-width="662" src="https://2.bp.blogspot.com/-qlmPYdKT8qE/WZHBR_w_fVI/AAAAAAAAJGQ/HoGwtSGaITY0rFgAihbdhJMWzRArO_KYACLcBGAs/s1600/arep.PNG" /></a></div><br />The report is available against the report group it has been assigned to.<br /><div class="separator" style="clear: both; text-align: center;"></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-QwpIUhIdtZ8/WZG0VHnC4hI/AAAAAAAAJE8/M7bijW8IChoVJYeIPjLH2DEAHjVpH5oWQCLcBGAs/s1600/image028.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="192" data-original-width="466" src="https://1.bp.blogspot.com/-QwpIUhIdtZ8/WZG0VHnC4hI/AAAAAAAAJE8/M7bijW8IChoVJYeIPjLH2DEAHjVpH5oWQCLcBGAs/s1600/image028.png" /></a></div><br />When executing the report you have the option to generate in either PDF, HTML or Excel (XLSX)<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-tPXo5_oBirA/WZG0VSJ5-8I/AAAAAAAAJFA/2fDwidZtopIutC1iVsZtkIJ7_nE8OggwQCLcBGAs/s1600/image029.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="180" data-original-width="408" src="https://4.bp.blogspot.com/-tPXo5_oBirA/WZG0VSJ5-8I/AAAAAAAAJFA/2fDwidZtopIutC1iVsZtkIJ7_nE8OggwQCLcBGAs/s1600/image029.png" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"></div>I selected XLSX and depending on browser settings it will either open directly in excel or you will have the option to download and then open in excel.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-rFdUQ757utU/WZG10KR_C3I/AAAAAAAAJFo/a75HiQebtAYzuJDavEhiFbJ44lHqQ0QNQCLcBGAs/s1600/aspread.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="147" data-original-width="711" src="https://4.bp.blogspot.com/-rFdUQ757utU/WZG10KR_C3I/AAAAAAAAJFo/a75HiQebtAYzuJDavEhiFbJ44lHqQ0QNQCLcBGAs/s1600/aspread.PNG" /></a></div><br />So this can report can be generated at any time to provide up-to-date batch schedule information.<br /><br />Finally on to running the activities such as creating a new schedule outside of the FDMEE UI, if you are not aware from 11.1.2.4.210 it is possible to use a REST resource to run tasks such as data load rules, batches, custom scripts and reports, I have covered the functionality in previous <b><a href="http://john-goodwin.blogspot.co.uk/2016/12/fdmee-and-rest-is-up-to-you-part-1.html">blogs</a></b> if you would like to understand it in more detail.<br /><br />To run a custom script you can make a post to the following URL format:<br /><br /><b class="yellow">http(s)://&lt;webserver&gt;:&lt;port&gt;/aif/rest/V1/jobs/</b><br /><br />The body of the post will need to include in JSON format the job type which will be REPORT, the report format type which will be SCRIPT, the job name which will be the name of the custom script to run and the parameter display names and values.<br /><br />An example to run the script to create a new batch schedule using a REST client would be:<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-MQ7ATA_gN9k/WZG0VyP4tUI/AAAAAAAAJFI/rIYE_092c6IIEObx7oYLDdJAZlHDJlhNgCLcBGAs/s1600/image031.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="319" data-original-width="569" src="https://1.bp.blogspot.com/-MQ7ATA_gN9k/WZG0VyP4tUI/AAAAAAAAJFI/rIYE_092c6IIEObx7oYLDdJAZlHDJlhNgCLcBGAs/s1600/image031.png" /></a></div><br />After the post has been made a response will be returned with FDMEE process information such as ID and status.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-qB7-Hmm8NVc/WZG0WiMKckI/AAAAAAAAJFM/_ZIyB96nLVoY96KCZvOafE76vnUrcS07wCLcBGAs/s1600/image032.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="360" data-original-width="597" src="https://2.bp.blogspot.com/-qB7-Hmm8NVc/WZG0WiMKckI/AAAAAAAAJFM/_ZIyB96nLVoY96KCZvOafE76vnUrcS07wCLcBGAs/s1600/image032.png" /></a></div><br />If the status is in a running state a GET request can be made to keep checking the status.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-3yWBIrMq9_M/WZG0XEj8XII/AAAAAAAAJFQ/7oLrLxJosXc47smEvDRHrakUCx5sCQT_ACLcBGAs/s1600/image033.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="378" data-original-width="582" src="https://3.bp.blogspot.com/-3yWBIrMq9_M/WZG0XEj8XII/AAAAAAAAJFQ/7oLrLxJosXc47smEvDRHrakUCx5sCQT_ACLcBGAs/s1600/image033.png" /></a></div><br />You could then convert this into a script which could be called by an automated process and parameters passed in or say run from a user’s client machine instead of having to log into workspace.<br /><br />I created the following example script using PowerShell which uses the REST resource to run the custom script to create a new schedule, I know it requires error trapping but it just to give an idea.<br /><div><br /></div><a href="https://1.bp.blogspot.com/-xdB8it7yk_M/WZG0Xmm8hcI/AAAAAAAAJFU/1X2rCUK8kToHno-bCzF9arJqijE4AkTGwCLcBGAs/s1600/image034.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="551" data-original-width="666" src="https://1.bp.blogspot.com/-xdB8it7yk_M/WZG0Xmm8hcI/AAAAAAAAJFU/1X2rCUK8kToHno-bCzF9arJqijE4AkTGwCLcBGAs/s1600/image034.png" /></a><br /><br /><div class="separator" style="clear: both; text-align: left;">When the script is run, it takes user input to define the parameters of the schedule which it then converts into JSON, makes a post to the REST resource and then keeps checking the status until the process has successfully completed.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-f4A2g-TvAso/WZG0YFVvsmI/AAAAAAAAJFY/TIYvK4jrGI4aUdmGogAKVuHv_QKdUDvJgCLcBGAs/s1600/image035.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="115" data-original-width="540" src="https://3.bp.blogspot.com/-f4A2g-TvAso/WZG0YFVvsmI/AAAAAAAAJFY/TIYvK4jrGI4aUdmGogAKVuHv_QKdUDvJgCLcBGAs/s1600/image035.png" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div>Running the report again to view the scheduled batches confirm that the new schedule has been created.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-hk-5YbIIJyU/WZG0YjqtxiI/AAAAAAAAJFc/a7PjY8PEMQ46LPVGYr2GCvjNNQmNj54QwCLcBGAs/s1600/image036.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="190" data-original-width="679" src="https://4.bp.blogspot.com/-hk-5YbIIJyU/WZG0YjqtxiI/AAAAAAAAJFc/a7PjY8PEMQ46LPVGYr2GCvjNNQmNj54QwCLcBGAs/s1600/image036.png" /></a></div><br />Job done, a full solution to create, update, delete and view schedules.</div> John Goodwin tag:blogger.com,1999:blog-6575283218005807475.post-7122856209706239837 Tue Aug 15 2017 04:01:00 GMT-0400 (EDT) FDMEE - Custom Scheduler - Part 2 @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://john-goodwin.blogspot.com/2017/08/fdmee-custom-scheduler-part-2.html <div dir="ltr" style="text-align: left;" trbidi="on">In the last part I went through an example solution to build a custom scheduler which could be accessed through the FDMEE UI, it was created using a combination of jython and the ODI Java API, the post covered in detail the process to create a new batch schedule but could easily be adapted to schedule data and metadata load rules or custom scripts.<br /><br />In this post I want to continue where I left off and move on to updating, deleting and viewing active schedules, also look at the possibilities of running these tasks outside of the FDMEE UI.<br /><br />Let us start off with updating an existing schedule, a custom script was registered which has parameters defined to select the schedule, set the start and end dates and repetition in minutes or hours. These parameters will be displayed when the custom script is executed and then passed into the jython script which will then update the schedule.<br /><div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-0ZQDnNZsP7I/WZG4RZXfnpI/AAAAAAAAJF0/Wy91Kj4lXXgeeqXcmoXf-01xY7obARNuwCLcBGAs/s1600/ascript.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="464" data-original-width="679" src="https://1.bp.blogspot.com/-0ZQDnNZsP7I/WZG4RZXfnpI/AAAAAAAAJF0/Wy91Kj4lXXgeeqXcmoXf-01xY7obARNuwCLcBGAs/s1600/ascript.PNG" /></a></div><br />The parameter “SCHEDULE_ID” has been defined to call a query called “Batch Info”, this SQL query is against the ODI repository which hold the scheduling information, the query has been defined to return an understandable description and the ODI internal ID for the schedule, this ID is important as it will be used with the ODI Java API to access the selected schedule.</div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-7_O6foW0Rmw/WZG0KZUb7UI/AAAAAAAAJDU/gvVR9D1HfA8i5dM-7MFTSXBKd8XKB180wCLcBGAs/s1600/image002.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="512" data-original-width="693" src="https://3.bp.blogspot.com/-7_O6foW0Rmw/WZG0KZUb7UI/AAAAAAAAJDU/gvVR9D1HfA8i5dM-7MFTSXBKd8XKB180wCLcBGAs/s1600/image002.png" /></a></div><br />You will see the query in action when I execute the custom script which now appears in the UI under the “Custom Batch Scheduler” group it has been assigned to.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-uZdV88f4cEc/WZG0Kcs-3TI/AAAAAAAAJDQ/mAJ4qjADVF4J5w-iqyP0ZvBX5HIzDeziwCLcBGAs/s1600/image003.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="226" data-original-width="456" src="https://4.bp.blogspot.com/-uZdV88f4cEc/WZG0Kcs-3TI/AAAAAAAAJDQ/mAJ4qjADVF4J5w-iqyP0ZvBX5HIzDeziwCLcBGAs/s1600/image003.png" /></a></div><br />Executing the “Update Batch Schedule” script displays a window with the parameters that were defined in the script registration.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-xd0KBbgpg9E/WZG0K8MCbxI/AAAAAAAAJDc/XbGgmD6QfWw3fFvg8lPrj46dqmnvGOM6QCLcBGAs/s1600/image004.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="209" data-original-width="465" src="https://1.bp.blogspot.com/-xd0KBbgpg9E/WZG0K8MCbxI/AAAAAAAAJDc/XbGgmD6QfWw3fFvg8lPrj46dqmnvGOM6QCLcBGAs/s1600/image004.png" /></a></div><br />Now if select the schedule to update the SQL query comes into action and the script name, start to end date, repetition and schedule ID are displayed ready for selection.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-3pt7OUsEb3g/WZG0Lfu5_aI/AAAAAAAAJDg/ZoakY980xE8EZ3nzkWLZadM2dTsxQDE5gCLcBGAs/s1600/image005.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="137" data-original-width="383" src="https://1.bp.blogspot.com/-3pt7OUsEb3g/WZG0Lfu5_aI/AAAAAAAAJDg/ZoakY980xE8EZ3nzkWLZadM2dTsxQDE5gCLcBGAs/s1600/image005.png" /></a></div><br />It would be nice if there was the functionality to base a SQL query on the results of a SQL query but unfortunately that is not yet available in FDMEE so the remaining input fields need to input manually, as the schedule is being updated this is not much of an issue because you would need to enter new values anyway.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-EVgYtApS9fo/WZG0L9VQ4lI/AAAAAAAAJDk/wVvKm3lLRYc_SwvzdhI8SzrErMtRuQuxwCLcBGAs/s1600/image006.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="212" data-original-width="466" src="https://1.bp.blogspot.com/-EVgYtApS9fo/WZG0L9VQ4lI/AAAAAAAAJDk/wVvKm3lLRYc_SwvzdhI8SzrErMtRuQuxwCLcBGAs/s1600/image006.png" /></a></div><br />Now the new schedule information has been entered the script can be run and a custom message is displayed if the update was successful.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-7S4FADaXkpQ/WZG0MdUHsPI/AAAAAAAAJDo/PL9Det2YYtQjT2yD6ugiaTY6NyQyyGM2ACLcBGAs/s1600/image007.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="96" data-original-width="174" src="https://3.bp.blogspot.com/-7S4FADaXkpQ/WZG0MdUHsPI/AAAAAAAAJDo/PL9Det2YYtQjT2yD6ugiaTY6NyQyyGM2ACLcBGAs/s1600/image007.png" /></a></div><br />The process logs also display the status of executing the custom script.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-5ZzrfP2G96k/WZG0M5DKb3I/AAAAAAAAJDs/HKUH6IvomDwMs5BBLt35o5pj8btKdJI-QCLcBGAs/s1600/image008.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="119" data-original-width="528" src="https://4.bp.blogspot.com/-5ZzrfP2G96k/WZG0M5DKb3I/AAAAAAAAJDs/HKUH6IvomDwMs5BBLt35o5pj8btKdJI-QCLcBGAs/s1600/image008.png" /></a></div><br />The FDMEE log associated with the process contains the updated schedule information.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-hdQB-oXuEeM/WZG0NVaI6kI/AAAAAAAAJDw/LE2gIupSYqkrhxgAZolSUlIGMXcE0qTUgCLcBGAs/s1600/image009.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="83" data-original-width="530" src="https://1.bp.blogspot.com/-hdQB-oXuEeM/WZG0NVaI6kI/AAAAAAAAJDw/LE2gIupSYqkrhxgAZolSUlIGMXcE0qTUgCLcBGAs/s1600/image009.png" /></a></div><br />To prove the schedule has been updated I can switch over to the ODI console where it should have a new start date of 20th of August at 8am.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-Mx9AU7_ZqX8/WZG0Ny4O1xI/AAAAAAAAJD0/J0Qa4diPcrQ-1qh5McBvUBR-CXqlYR-YgCLcBGAs/s1600/image010.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="454" data-original-width="665" src="https://2.bp.blogspot.com/-Mx9AU7_ZqX8/WZG0Ny4O1xI/AAAAAAAAJD0/J0Qa4diPcrQ-1qh5McBvUBR-CXqlYR-YgCLcBGAs/s1600/image010.png" /></a></div><br />As I explained in the last part the end date has to be calculated and set as a maximum cycle duration, the execution cycle includes the interval between repetitions which correctly matches the value entered when running the custom script.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-4epx6yRHBT8/WZG0OWBXQaI/AAAAAAAAJD4/e2zzJL6enswZl-MkZAydw7hYo6SawEQfACLcBGAs/s1600/image011.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="201" data-original-width="459" src="https://3.bp.blogspot.com/-4epx6yRHBT8/WZG0OWBXQaI/AAAAAAAAJD4/e2zzJL6enswZl-MkZAydw7hYo6SawEQfACLcBGAs/s1600/image011.png" /></a></div><br />To prove the scheduling information had been update correctly I could have also just run the update schedule custom script again and selected the option to return the active schedules, this would have returned the updated values from the ODI repository.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-ljMjmmcKj2s/WZG0Ow7nkRI/AAAAAAAAJD8/mEFwBd5jiPsqHICIm0TnnWxWO3pW3gPggCLcBGAs/s1600/image012.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="95" data-original-width="341" src="https://3.bp.blogspot.com/-ljMjmmcKj2s/WZG0Ow7nkRI/AAAAAAAAJD8/mEFwBd5jiPsqHICIm0TnnWxWO3pW3gPggCLcBGAs/s1600/image012.png" /></a></div><br />What you do need to watch out for with populating parameter value fields is there is currently a 50-character limit, the SQL will return no problem, for example<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-r7IB4ghnXn4/WZG0PsTkoEI/AAAAAAAAJEA/wCReNIni3G4IsGx4-73joUEvp9oLsXpZQCLcBGAs/s1600/image013.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="99" data-original-width="402" src="https://3.bp.blogspot.com/-r7IB4ghnXn4/WZG0PsTkoEI/AAAAAAAAJEA/wCReNIni3G4IsGx4-73joUEvp9oLsXpZQCLcBGAs/s1600/image013.png" /></a></div><br />As the above text is are over 50 characters then after selecting you would be hit with an unfriendly ADF error.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-jYa2q92t3Uw/WZG0P-GzT6I/AAAAAAAAJEE/mtkUryLlcj07OQwWBhXmBYgfbkvpWphoACLcBGAs/s1600/image014.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="177" data-original-width="745" height="152" src="https://1.bp.blogspot.com/-jYa2q92t3Uw/WZG0P-GzT6I/AAAAAAAAJEE/mtkUryLlcj07OQwWBhXmBYgfbkvpWphoACLcBGAs/s640/image014.png" width="640" /></a></div><br />The magic to update the schedule is all handled in the jython script, the script follows the same concept as what I went through in the last part so there is no need for me to show all the script again.<br /><br />The parameters values are stored, the schedule duration is calculated by finding the difference in minutes between the start and end date.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-luKYqz59CHQ/WZG0Qo8fvaI/AAAAAAAAJEI/J0MOaOhvkrsZnqJc218EbfaUv5B9ix4EwCLcBGAs/s1600/image015.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="666" data-original-width="807" height="528" src="https://4.bp.blogspot.com/-luKYqz59CHQ/WZG0Qo8fvaI/AAAAAAAAJEI/J0MOaOhvkrsZnqJc218EbfaUv5B9ix4EwCLcBGAs/s640/image015.png" width="640" /></a></div><br />A connection is made to the ODI repository and then the schedule is returned by searching based on the ID that was passed into the script.<br /><br />The values of the schedule are then updated to the ones defined when running the script, these values are then committed and the agent schedule updated.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-qNIFJrmJd_E/WZG0Q_AcohI/AAAAAAAAJEM/UFuaLq2CQNoeJ5GMpbvfQh_vM17xl7r8wCLcBGAs/s1600/image016.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="495" data-original-width="699" height="453" src="https://1.bp.blogspot.com/-qNIFJrmJd_E/WZG0Q_AcohI/AAAAAAAAJEM/UFuaLq2CQNoeJ5GMpbvfQh_vM17xl7r8wCLcBGAs/s640/image016.png" width="640" /></a></div><br />So that is creating and updating schedules covered off, on to deleting a schedule.<br /><br />Once again a custom script is registered, this time there is only the requirement for one parameter and that is to select the schedule to delete, the query is exactly the same as the one used in the update script.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-59bye-y05xY/WZG-lTxj2PI/AAAAAAAAJGE/h7Oeb5aelP4OE_cRMwgLn_luuG2osYHFQCLcBGAs/s1600/ascript.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="332" data-original-width="678" src="https://3.bp.blogspot.com/-59bye-y05xY/WZG-lTxj2PI/AAAAAAAAJGE/h7Oeb5aelP4OE_cRMwgLn_luuG2osYHFQCLcBGAs/s1600/ascript.PNG" /></a></div><br />After the script has been registered, it is available in script execution under the group which it was registered to.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-9inQJsY2Qgc/WZG0RFlT3HI/AAAAAAAAJEU/3RV6LOKLztAGa6kp3Zf_-GE_6E_NBiHGgCLcBGAs/s1600/image018.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="226" data-original-width="455" src="https://4.bp.blogspot.com/-9inQJsY2Qgc/WZG0RFlT3HI/AAAAAAAAJEU/3RV6LOKLztAGa6kp3Zf_-GE_6E_NBiHGgCLcBGAs/s1600/image018.png" /></a></div><br />When the script is executed there is one parameter available to select the schedule to delete.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-4Xh5IhN12Ns/WZG0RDDRkZI/AAAAAAAAJEY/ISDMcfEe1d0btExia2rGz8Q3lxgLv5TkACLcBGAs/s1600/image019.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="90" data-original-width="468" src="https://4.bp.blogspot.com/-4Xh5IhN12Ns/WZG0RDDRkZI/AAAAAAAAJEY/ISDMcfEe1d0btExia2rGz8Q3lxgLv5TkACLcBGAs/s1600/image019.png" /></a></div><br />Selecting the magnifying glass will run the SQL query to run all the active batch schedules.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-9xBkkrE2hNI/WZG0RQp75HI/AAAAAAAAJEc/rNuSGRRBKw89ZoBx0R6qhCNRiTziWDiaACLcBGAs/s1600/image020.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="135" data-original-width="344" src="https://3.bp.blogspot.com/-9xBkkrE2hNI/WZG0RQp75HI/AAAAAAAAJEc/rNuSGRRBKw89ZoBx0R6qhCNRiTziWDiaACLcBGAs/s1600/image020.png" /></a></div><br />I selected the first schedule in the list to be deleted.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-VYfDvpk0VIo/WZG0RhAF6zI/AAAAAAAAJEg/EvyJE_J4dXoaQ0fd3pGtnf6mhRzrgsR5ACLcBGAs/s1600/image021.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="85" data-original-width="466" src="https://4.bp.blogspot.com/-VYfDvpk0VIo/WZG0RhAF6zI/AAAAAAAAJEg/EvyJE_J4dXoaQ0fd3pGtnf6mhRzrgsR5ACLcBGAs/s1600/image021.png" /></a></div><br />A custom message is displayed if the delete was successful.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-JjAUH-m4VRQ/WZG0SCDF0XI/AAAAAAAAJEk/SWIJNItnoVMCTE2n1WAFoKN-CkuChiR7gCLcBGAs/s1600/image022.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="99" data-original-width="166" src="https://2.bp.blogspot.com/-JjAUH-m4VRQ/WZG0SCDF0XI/AAAAAAAAJEk/SWIJNItnoVMCTE2n1WAFoKN-CkuChiR7gCLcBGAs/s1600/image022.png" /></a></div><br />If I run the script again and view the schedules it confirms the schedule has definitely been deleted.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-hobuvmAUn9A/WZG0SeZHtXI/AAAAAAAAJEo/94aTha0-fNEDXdU6FKKmlIBi0A-XiRgcwCLcBGAs/s1600/image023.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="119" data-original-width="297" src="https://3.bp.blogspot.com/-hobuvmAUn9A/WZG0SeZHtXI/AAAAAAAAJEo/94aTha0-fNEDXdU6FKKmlIBi0A-XiRgcwCLcBGAs/s1600/image023.png" /></a></div><br />The jython script is much simpler this time as all that is required is to retrieve the ID of the schedule from the custom script parameter values, connect to the ODI repository, find the schedule by the ID, delete the schedule, commit and then update the ODI agent scheduler.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/--vQB3pDUuGQ/WZG0SwvN9xI/AAAAAAAAJEs/MYNppVl6flo992iLfla_vJQUT1M8y-2fQCLcBGAs/s1600/image024.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="272" data-original-width="693" src="https://3.bp.blogspot.com/--vQB3pDUuGQ/WZG0SwvN9xI/AAAAAAAAJEs/MYNppVl6flo992iLfla_vJQUT1M8y-2fQCLcBGAs/s1600/image024.png" /></a></div><br />Just to recap that means with the custom scheduler solution we have the ability to create, update and delete schedules.<br /><br />So how about viewing the active schedules, well you can certainly run the custom scripts like I have already shown to display the schedules but personally I don’t feel like is the nicest solution, what I did to overcome this was to create a report in FDMEE.<br /><br />Before creating a report a SQL query was created and registered, the query was similar to one used in the update/delete scripts.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-_SZuMpNJK5I/WZG0Tju3tjI/AAAAAAAAJEw/1kYSTHpPgjQD3WVwQU0roVZVUz49L8wRQCLcBGAs/s1600/image025.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="579" data-original-width="606" src="https://4.bp.blogspot.com/-_SZuMpNJK5I/WZG0Tju3tjI/AAAAAAAAJEw/1kYSTHpPgjQD3WVwQU0roVZVUz49L8wRQCLcBGAs/s1600/image025.png" /></a></div><br />The query produces the following output that be used in the FDMEE report.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-Xo7F7OdAiqo/WZG0UOGUCNI/AAAAAAAAJE0/hlOL2eKn-U0tAiqjsGM6T1vAk5jFl3OjwCLcBGAs/s1600/image026.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="130" data-original-width="438" src="https://2.bp.blogspot.com/-Xo7F7OdAiqo/WZG0UOGUCNI/AAAAAAAAJE0/hlOL2eKn-U0tAiqjsGM6T1vAk5jFl3OjwCLcBGAs/s1600/image026.png" /></a></div><br />Once the query validated the generate XML button was selected, this produces an XML file which can be loaded into word using BI Publisher desktop to generate a template file.<br /><br />Now that everything is in place a new report definition was created, the query, template and group were assigned to the definition, there were no need for any parameters for this report.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-qlmPYdKT8qE/WZHBR_w_fVI/AAAAAAAAJGQ/HoGwtSGaITY0rFgAihbdhJMWzRArO_KYACLcBGAs/s1600/arep.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="386" data-original-width="662" src="https://2.bp.blogspot.com/-qlmPYdKT8qE/WZHBR_w_fVI/AAAAAAAAJGQ/HoGwtSGaITY0rFgAihbdhJMWzRArO_KYACLcBGAs/s1600/arep.PNG" /></a></div><br />The report is available against the report group it has been assigned to.<br /><div class="separator" style="clear: both; text-align: center;"></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-QwpIUhIdtZ8/WZG0VHnC4hI/AAAAAAAAJE8/M7bijW8IChoVJYeIPjLH2DEAHjVpH5oWQCLcBGAs/s1600/image028.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="192" data-original-width="466" src="https://1.bp.blogspot.com/-QwpIUhIdtZ8/WZG0VHnC4hI/AAAAAAAAJE8/M7bijW8IChoVJYeIPjLH2DEAHjVpH5oWQCLcBGAs/s1600/image028.png" /></a></div><br />When executing the report you have the option to generate in either PDF, HTML or Excel (XLSX)<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-tPXo5_oBirA/WZG0VSJ5-8I/AAAAAAAAJFA/2fDwidZtopIutC1iVsZtkIJ7_nE8OggwQCLcBGAs/s1600/image029.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="180" data-original-width="408" src="https://4.bp.blogspot.com/-tPXo5_oBirA/WZG0VSJ5-8I/AAAAAAAAJFA/2fDwidZtopIutC1iVsZtkIJ7_nE8OggwQCLcBGAs/s1600/image029.png" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"></div>I selected XLSX and depending on browser settings it will either open directly in excel or you will have the option to download and then open in excel.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-rFdUQ757utU/WZG10KR_C3I/AAAAAAAAJFo/a75HiQebtAYzuJDavEhiFbJ44lHqQ0QNQCLcBGAs/s1600/aspread.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="147" data-original-width="711" src="https://4.bp.blogspot.com/-rFdUQ757utU/WZG10KR_C3I/AAAAAAAAJFo/a75HiQebtAYzuJDavEhiFbJ44lHqQ0QNQCLcBGAs/s1600/aspread.PNG" /></a></div><br />So this can report can be generated at any time to provide up-to-date batch schedule information.<br /><br />Finally on to running the activities such as creating a new schedule outside of the FDMEE UI, if you are not aware from 11.1.2.4.210 it is possible to use a REST resource to run tasks such as data load rules, batches, custom scripts and reports, I have covered the functionality in previous <b><a href="http://john-goodwin.blogspot.co.uk/2016/12/fdmee-and-rest-is-up-to-you-part-1.html">blogs</a></b> if you would like to understand it in more detail.<br /><br />To run a custom script you can make a post to the following URL format:<br /><br /><b class="yellow">http(s)://&lt;webserver&gt;:&lt;port&gt;/aif/rest/V1/jobs/</b><br /><br />The body of the post will need to include in JSON format the job type which will be REPORT, the report format type which will be SCRIPT, the job name which will be the name of the custom script to run and the parameter display names and values.<br /><br />An example to run the script to create a new batch schedule using a REST client would be:<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-MQ7ATA_gN9k/WZG0VyP4tUI/AAAAAAAAJFI/rIYE_092c6IIEObx7oYLDdJAZlHDJlhNgCLcBGAs/s1600/image031.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="319" data-original-width="569" src="https://1.bp.blogspot.com/-MQ7ATA_gN9k/WZG0VyP4tUI/AAAAAAAAJFI/rIYE_092c6IIEObx7oYLDdJAZlHDJlhNgCLcBGAs/s1600/image031.png" /></a></div><br />After the post has been made a response will be returned with FDMEE process information such as ID and status.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-qB7-Hmm8NVc/WZG0WiMKckI/AAAAAAAAJFM/_ZIyB96nLVoY96KCZvOafE76vnUrcS07wCLcBGAs/s1600/image032.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="360" data-original-width="597" src="https://2.bp.blogspot.com/-qB7-Hmm8NVc/WZG0WiMKckI/AAAAAAAAJFM/_ZIyB96nLVoY96KCZvOafE76vnUrcS07wCLcBGAs/s1600/image032.png" /></a></div><br />If the status is in a running state a GET request can be made to keep checking the status.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-3yWBIrMq9_M/WZG0XEj8XII/AAAAAAAAJFQ/7oLrLxJosXc47smEvDRHrakUCx5sCQT_ACLcBGAs/s1600/image033.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="378" data-original-width="582" src="https://3.bp.blogspot.com/-3yWBIrMq9_M/WZG0XEj8XII/AAAAAAAAJFQ/7oLrLxJosXc47smEvDRHrakUCx5sCQT_ACLcBGAs/s1600/image033.png" /></a></div><br />You could then convert this into a script which could be called by an automated process and parameters passed in or say run from a user’s client machine instead of having to log into workspace.<br /><br />I created the following example script using PowerShell which uses the REST resource to run the custom script to create a new schedule, I know it requires error trapping but it just to give an idea.<br /><div><br /></div><a href="https://1.bp.blogspot.com/-xdB8it7yk_M/WZG0Xmm8hcI/AAAAAAAAJFU/1X2rCUK8kToHno-bCzF9arJqijE4AkTGwCLcBGAs/s1600/image034.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="551" data-original-width="666" src="https://1.bp.blogspot.com/-xdB8it7yk_M/WZG0Xmm8hcI/AAAAAAAAJFU/1X2rCUK8kToHno-bCzF9arJqijE4AkTGwCLcBGAs/s1600/image034.png" /></a><br /><br /><div class="separator" style="clear: both; text-align: left;">When the script is run, it takes user input to define the parameters of the schedule which it then converts into JSON, makes a post to the REST resource and then keeps checking the status until the process has successfully completed.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-f4A2g-TvAso/WZG0YFVvsmI/AAAAAAAAJFY/TIYvK4jrGI4aUdmGogAKVuHv_QKdUDvJgCLcBGAs/s1600/image035.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="115" data-original-width="540" src="https://3.bp.blogspot.com/-f4A2g-TvAso/WZG0YFVvsmI/AAAAAAAAJFY/TIYvK4jrGI4aUdmGogAKVuHv_QKdUDvJgCLcBGAs/s1600/image035.png" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div>Running the report again to view the scheduled batches confirm that the new schedule has been created.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-hk-5YbIIJyU/WZG0YjqtxiI/AAAAAAAAJFc/a7PjY8PEMQ46LPVGYr2GCvjNNQmNj54QwCLcBGAs/s1600/image036.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="190" data-original-width="679" src="https://4.bp.blogspot.com/-hk-5YbIIJyU/WZG0YjqtxiI/AAAAAAAAJFc/a7PjY8PEMQ46LPVGYr2GCvjNNQmNj54QwCLcBGAs/s1600/image036.png" /></a></div><br />Job done, a full solution to create, update, delete and view schedules.</div> John Goodwin tag:blogger.com,1999:blog-6575283218005807475.post-7122856209706239837 Tue Aug 15 2017 04:01:00 GMT-0400 (EDT) FrankenHyperion (Ubuntu, SQL Server for Linux and Nginx) http://epmjunkie.com/frankenhyperion/ <div class="kg-card-markdown"><p>If you read my <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server">last post</a> you know I ran into some problems at the end. Not related to SQL Server but related to how OHS (Oracle HTTP Server aka. Oracles version of Apache) plays with Ubuntu. For whatever reason I was not able to get OHS to install correctly (probably dependencies due to Ubuntu not being a &quot;supported&quot; platform.) After a while, I kinda gave up and had decided at some point ill just redo the install on <a href="https://linux.oracle.com/pls/apex/f">Oracle Unbreakable Linux</a>. There were a few problems with that though. First, I really like Ubuntu and I really don't like Oracle Linux. Next, I know OHS isn't necessary. Last, there is a way better web server that's super easy to install.</p> <h1 id="finishinguptheconfiguration">Finishing up the configuration</h1> <p>Well, I broke down and got Xming working (this was a sad moment). After starting the configuration tool I selected the options <em>Configure Web Server</em> and <em>Configure Logical Address for Web Applications</em>. I am pretty sure the former step has to be done to get workspace deployed correctly and the latter is because I want to make everything run via port 80 (HTTP default).<br> <img src="http://epmjunkie.com/content/images/2017/08/2017-08-11-15_54_27-Editor---EPM-Junkie.png" alt="2017-08-11-15_54_27-Editor---EPM-Junkie"></p> <p>Next, I changed the <em>Web Server Type</em> from <em>Oracle HTTP Server</em> to <em>Setup Registry for manual server configuration</em>.<br> <img src="http://epmjunkie.com/content/images/2017/08/2017-08-11-16_00_36-EPM-System-Configurator-11.1.2.4.png" alt="2017-08-11-16_00_36-EPM-System-Configurator-11.1.2.4"></p> <p>Last, I set the logical port for the applications to 80.<br> <img src="http://epmjunkie.com/content/images/2017/08/2017-08-11-16_03_11-EPM-System-Configurator-11.1.2.4.png" alt="2017-08-11-16_03_11-EPM-System-Configurator-11.1.2.4"></p> <h1 id="goodbyeohshellonginx">Goodbye OHS, hello Nginx</h1> <p>With configuration finally completed it was time to get Nginx.</p> <pre><code>apt-get install nginx </code></pre> <p>After a few seconds, Nginx was installed, up, and running. All that was left was to configure Nginx for Oracle EPM. To do this I edited the default configuration file for Nginx located at <em>/etc/nginx/sites-available/default</em> and added the following lines inside the server directive.</p> <pre><code>location /epmstatic { alias /home/epm/Oracle/Middleware/EPMSystem11R1/common/epmstatic; } location /workspace { proxy_pass http://localhost:28080/workspace; } location /interop { proxy_pass http://localhost:28080/interop; } location /raframework { proxy_pass http://localhost:45000/raframework; } location /aps { proxy_pass http://localhost:13080/aps; } location /eas { proxy_pass http://localhost:10080/eas; } location /easconsole { proxy_pass http://localhost:10080/easconsole; } location /HyperionPlanning { proxy_pass http://localhost:8300/HyperionPlanning; } location /calcmgr { proxy_pass http://localhost:8500/calcmgr; } location /hr { proxy_pass http://localhost:8200/hr; } </code></pre> <p>These lines tell Nginx to act as a reverse proxy for the Java web applications installed on the server. If I were using FDMEE or any of the other services there would have to be additional configuration. With these lines added the last step was to reload the Nginx configuration.</p> <pre><code>service nginx reload </code></pre> <h1 id="itsalive">It's alive!</h1> <p>To my surprise (only kinda of) everything seems to be working and seems to be pretty responsive. Also, the whole VM is currently running at right about 10GB of memory usage, which seems pretty lightweight. Obviously, this install is &quot;unsupported&quot; on many levels, but it has been interesting to play with.</p> </div> Keith Kikta 598e1601179ba11329893a2f Mon Aug 14 2017 10:00:00 GMT-0400 (EDT) FrankenHyperion (Ubuntu, SQL Server for Linux and Nginx) @newbish @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://epmjunkie.com/frankenhyperion/ <div class="kg-card-markdown"><p>If you read my <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server">last post</a> you know I ran into some problems at the end. Not related to SQL Server but related to how OHS (Oracle HTTP Server aka. Oracles version of Apache) plays with Ubuntu. For whatever reason I was not able to get OHS to install correctly (probably dependencies due to Ubuntu not being a &quot;supported&quot; platform.) After a while, I kinda gave up and had decided at some point ill just redo the install on <a href="https://linux.oracle.com/pls/apex/f">Oracle Unbreakable Linux</a>. There were a few problems with that though. First, I really like Ubuntu and I really don't like Oracle Linux. Next, I know OHS isn't necessary. Last, there is a way better web server that's super easy to install.</p> <h1 id="finishinguptheconfiguration">Finishing up the configuration</h1> <p>Well, I broke down and got Xming working (this was a sad moment). After starting the configuration tool I selected the options <em>Configure Web Server</em> and <em>Configure Logical Address for Web Applications</em>. I am pretty sure the former step has to be done to get workspace deployed correctly and the latter is because I want to make everything run via port 80 (HTTP default).<br> <img src="http://epmjunkie.com/content/images/2017/08/2017-08-11-15_54_27-Editor---EPM-Junkie.png" alt="2017-08-11-15_54_27-Editor---EPM-Junkie"></p> <p>Next, I changed the <em>Web Server Type</em> from <em>Oracle HTTP Server</em> to <em>Setup Registry for manual server configuration</em>.<br> <img src="http://epmjunkie.com/content/images/2017/08/2017-08-11-16_00_36-EPM-System-Configurator-11.1.2.4.png" alt="2017-08-11-16_00_36-EPM-System-Configurator-11.1.2.4"></p> <p>Last, I set the logical port for the applications to 80.<br> <img src="http://epmjunkie.com/content/images/2017/08/2017-08-11-16_03_11-EPM-System-Configurator-11.1.2.4.png" alt="2017-08-11-16_03_11-EPM-System-Configurator-11.1.2.4"></p> <h1 id="goodbyeohshellonginx">Goodbye OHS, hello Nginx</h1> <p>With configuration finally completed it was time to get Nginx.</p> <pre><code>apt-get install nginx </code></pre> <p>After a few seconds, Nginx was installed, up, and running. All that was left was to configure Nginx for Oracle EPM. To do this I edited the default configuration file for Nginx located at <em>/etc/nginx/sites-available/default</em> and added the following lines inside the server directive.</p> <pre><code>location /epmstatic { alias /home/epm/Oracle/Middleware/EPMSystem11R1/common/epmstatic; } location /workspace { proxy_pass http://localhost:28080/workspace; } location /interop { proxy_pass http://localhost:28080/interop; } location /raframework { proxy_pass http://localhost:45000/raframework; } location /aps { proxy_pass http://localhost:13080/aps; } location /eas { proxy_pass http://localhost:10080/eas; } location /easconsole { proxy_pass http://localhost:10080/easconsole; } location /HyperionPlanning { proxy_pass http://localhost:8300/HyperionPlanning; } location /calcmgr { proxy_pass http://localhost:8500/calcmgr; } location /hr { proxy_pass http://localhost:8200/hr; } </code></pre> <p>These lines tell Nginx to act as a reverse proxy for the Java web applications installed on the server. If I were using FDMEE or any of the other services there would have to be additional configuration. With these lines added the last step was to reload the Nginx configuration.</p> <pre><code>service nginx reload </code></pre> <h1 id="itsalive">It's alive!</h1> <p>To my surprise (only kinda of) everything seems to be working and seems to be pretty responsive. Also, the whole VM is currently running at right about 10GB of memory usage, which seems pretty lightweight. Obviously, this install is &quot;unsupported&quot; on many levels, but it has been interesting to play with.</p> </div> Keith Kikta 598e1601179ba11329893a2f Mon Aug 14 2017 10:00:00 GMT-0400 (EDT) Say It Ain't SO(A) http://blog.checkpointllc.com/say-it-aint-soa <p>Recently I had a client decide to implement a major architecture change to their production environment. Of course, this change was going to be made to their production environment, during financial close, and on a weekend. As managers of EPM Systems surely know, there is no ‘good time’ to push major system changes. In this case, the change was moving all the EPM components to a new database (DB) server. </p> <p>Technical Layout: </p> <p>The client in this instance had 13 EPM servers in their production environment. The DB host for most of their instances (HFM excepted) was migrating from one host to a new host. None of the schema names or passwords were changed, only the instance/host name in the TNS string. With HFM out of the picture, this meant consideration had to be given to reconfiguring the following EPM Products:</p> <ul> <li>Essbase</li> <li>Essbase Administration Services (EAS)</li> <li>Essbase Provider Services</li> <li>Financial Data Close Manager Enterprise Edition (FDMEE)</li> <li>Oracle Data Integrator (ODI)</li> <li>Hyperion Foundation (Shared Services and Workspace)</li> <li>Oracle Business Intelligence Enterprise Edition (OBIEE)</li> <li>Reporting &amp; Analysis</li> <li>Financial Reporting</li> <li>Financial Close Management (FCM)</li> <li>Account Reconciliation Management (ARM)</li> <li>Oracle Service Oriented Architecture (SOA)</li> </ul> <p>Plan &amp; Actions: </p> <p>There are a couple of ways to approach a change like this, you can simply re-configure all the products using the built-in EPM System Configuration tool, but that has a couple of drawbacks. The one that was most critical here was that a redeploy of the Java application would reset all the environmental tuning. Instead, the following approach was used:</p> <ul> <li>Run the EPM configuration tool to update the Foundation (Shared Services pointer). This needs to be done on every server, so each server knows where the EPM System Registry is stored.</li> <li>Run the configuration tool a second time, for each individual product, to make sure they know where their new DB host is at.</li> <li>Login into WebLogic Administration console and change the DB Connection Pool information for each product (so the Java components know where their DB connection is)</li> <li>On the backed of the system, in the file structure, delete the /tmp and /cache folders for each product using a JVM. This will force a redeploy, but not impact the Windows service tunings set in the registry. It’s also recommend to clear the Java /logs folder at this point to ensure a clear view of what is happening on restart.</li> <li>ODI requires manual changes to files like opmn.xml and the ODI Agents in the ODI Console.</li> </ul> <p> Fun with SOA: </p> <p>Oracle SOA was the big outlier here. After some team debate, it was thought that we could simply run the WebLogic Domain Administration utility and ‘extend’ the existing EPM Domain which included SOA, and reset the credentials and redeploy. On the day of the change, it was discovered that these features are all ‘greyed-out’ and thus unavailable. Instead, it was decided to change all of the pointers to the new DB server for SOA in the individual registry files found in the /jdbc folder beneath the WebLogic domain. A restart of SOA proved that this worked and there were no unexpected errors. I will note that this only worked because the instance/host name for the DB was all that changed. Had the client decided on a password change (which is encrypted) we would have had more difficulty here. </p> <p>Observations: </p> <p>At the end of the day, we had a successful migration using the high-level plan outlined above. However, it is worth noting that several products (Foundation and RA Framework) did not play nice when first being restarted. This move required a high-degree of technical involvement, the ability to understand how all the IT stack layers interact and some deep log diving to finally resolve all the issues. While a success, it is not something I would recommend a client undertake lightly, or without both a solid backup plan and professional services assistance.</p> <p>For more information or help re-hosting your own EPM database, you can contact me at <a href="mailto:jhenkel@checkpointllc.com?subject=EPM%20Database%20rehosting,%20I'd%20like%20more%20information">jhenkel@checkpointllc.com</a>.</p> <img src="http://track.hubspot.com/__ptq.gif?a=297092&amp;k=14&amp;r=http%3A%2F%2Fblog.checkpointllc.com%2Fsay-it-aint-soa&amp;bu=http%253A%252F%252Fblog.checkpointllc.com&amp;bvt=rss" alt="" width="1" height="1" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important; "> Jeff Henkel http://blog.checkpointllc.com/say-it-aint-soa Thu Aug 10 2017 09:15:00 GMT-0400 (EDT) Say It Ain't SO(A) @CheckPointllc @orclEPMblogs @orclEPMblogs @orclEPMblogs http://blog.checkpointllc.com/say-it-aint-soa <p>Recently I had a client decide to implement a major architecture change to their production environment. Of course, this change was going to be made to their production environment, during financial close, and on a weekend. As managers of EPM Systems surely know, there is no ‘good time’ to push major system changes. In this case, the change was moving all the EPM components to a new database (DB) server. </p> <p>Technical Layout: </p> <p>The client in this instance had 13 EPM servers in their production environment. The DB host for most of their instances (HFM excepted) was migrating from one host to a new host. None of the schema names or passwords were changed, only the instance/host name in the TNS string. With HFM out of the picture, this meant consideration had to be given to reconfiguring the following EPM Products:</p> <ul> <li>Essbase</li> <li>Essbase Administration Services (EAS)</li> <li>Essbase Provider Services</li> <li>Financial Data Close Manager Enterprise Edition (FDMEE)</li> <li>Oracle Data Integrator (ODI)</li> <li>Hyperion Foundation (Shared Services and Workspace)</li> <li>Oracle Business Intelligence Enterprise Edition (OBIEE)</li> <li>Reporting &amp; Analysis</li> <li>Financial Reporting</li> <li>Financial Close Management (FCM)</li> <li>Account Reconciliation Management (ARM)</li> <li>Oracle Service Oriented Architecture (SOA)</li> </ul> <p>Plan &amp; Actions: </p> <p>There are a couple of ways to approach a change like this, you can simply re-configure all the products using the built-in EPM System Configuration tool, but that has a couple of drawbacks. The one that was most critical here was that a redeploy of the Java application would reset all the environmental tuning. Instead, the following approach was used:</p> <ul> <li>Run the EPM configuration tool to update the Foundation (Shared Services pointer). This needs to be done on every server, so each server knows where the EPM System Registry is stored.</li> <li>Run the configuration tool a second time, for each individual product, to make sure they know where their new DB host is at.</li> <li>Login into WebLogic Administration console and change the DB Connection Pool information for each product (so the Java components know where their DB connection is)</li> <li>On the backed of the system, in the file structure, delete the /tmp and /cache folders for each product using a JVM. This will force a redeploy, but not impact the Windows service tunings set in the registry. It’s also recommend to clear the Java /logs folder at this point to ensure a clear view of what is happening on restart.</li> <li>ODI requires manual changes to files like opmn.xml and the ODI Agents in the ODI Console.</li> </ul> <p> Fun with SOA: </p> <p>Oracle SOA was the big outlier here. After some team debate, it was thought that we could simply run the WebLogic Domain Administration utility and ‘extend’ the existing EPM Domain which included SOA, and reset the credentials and redeploy. On the day of the change, it was discovered that these features are all ‘greyed-out’ and thus unavailable. Instead, it was decided to change all of the pointers to the new DB server for SOA in the individual registry files found in the /jdbc folder beneath the WebLogic domain. A restart of SOA proved that this worked and there were no unexpected errors. I will note that this only worked because the instance/host name for the DB was all that changed. Had the client decided on a password change (which is encrypted) we would have had more difficulty here. </p> <p>Observations: </p> <p>At the end of the day, we had a successful migration using the high-level plan outlined above. However, it is worth noting that several products (Foundation and RA Framework) did not play nice when first being restarted. This move required a high-degree of technical involvement, the ability to understand how all the IT stack layers interact and some deep log diving to finally resolve all the issues. While a success, it is not something I would recommend a client undertake lightly, or without both a solid backup plan and professional services assistance.</p> <p>For more information or help re-hosting your own EPM database, you can contact me at <a href="mailto:jhenkel@checkpointllc.com?subject=EPM%20Database%20rehosting,%20I'd%20like%20more%20information">jhenkel@checkpointllc.com</a>.</p> <img src="http://track.hubspot.com/__ptq.gif?a=297092&amp;k=14&amp;r=http%3A%2F%2Fblog.checkpointllc.com%2Fsay-it-aint-soa&amp;bu=http%253A%252F%252Fblog.checkpointllc.com&amp;bvt=rss" alt="" width="1" height="1" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important; "> Jeff Henkel http://blog.checkpointllc.com/say-it-aint-soa Thu Aug 10 2017 09:15:00 GMT-0400 (EDT) OAC - The first patch http://glennschwartzbergs-essbase-blog.blogspot.com/2017/08/oac-first-patch.html <br /><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">The honeymoon is over. Well not for my Boss, Edward Roske, he got married in Paris last week. So for him it is just starting. Congratulations Edward. For us using OAC, it is over because the first patch has arrived. It is not a virgin version any more.<span style="mso-spacerun: yes;">&nbsp; </span>That is a good thing for us.<span style="mso-spacerun: yes;">&nbsp; </span>While a lot of things in the patch were talked about at KScope as “coming soon” and was put in to the “Look Smarter than you are with Oracle Analytics Cloud” book, I feel it is good to go over what was released in the patch on 7/29/2017. The version is 17. Interestingly enough, one thing that did not work was getting the readme for the update. <o:p></o:p></span></div><br /><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">There are a number of enhancements in this release. First, we can now see the logs generated without having to FTP onto the server and search for them. If you are at the Server level (having not selected an application or database) Select Administration and you will see the logs structure.</span></div><span style="font-family: &quot;calibri&quot;;"></span><br /><div class="separator" style="clear: both; margin: 0in 0in 8pt; text-align: center;"><span style="font-family: &quot;calibri&quot;;"><a href="https://4.bp.blogspot.com/-XzWFg7LrsRs/WYtXfj2qH9I/AAAAAAAAA9U/p0s8soHpwcYlo23IqRIk4tRHRWvvO584gCLcBGAs/s1600/OAC_logs.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1044" data-original-width="1216" height="274" src="https://4.bp.blogspot.com/-XzWFg7LrsRs/WYtXfj2qH9I/AAAAAAAAA9U/p0s8soHpwcYlo23IqRIk4tRHRWvvO584gCLcBGAs/s320/OAC_logs.jpg" width="320" /></a></span></div><span style="font-family: &quot;calibri&quot;;"></span><br /><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">A couple of things to note. </span></div><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">1. You can only download the logs, they re not interactive on the screen</span></div><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">2. It is best to use something like Notepad ++ to view the output. Since this comes from a Linux box, notepad does not put&nbsp;display it well.</span></div><div class="MsoNormal" style="margin: 0in 0in 8pt;">&nbsp;</div><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">Second, A Rules&nbsp;file editor has been added so you&nbsp;can maintain and create rules files.&nbsp;When you select a database, you can go into the scripts card and&nbsp;click on the second&nbsp;</span></div><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">"Tab"</span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-5XJ7NTVpTBU/WYtaNudpo_I/AAAAAAAAA9g/pBA-g9o6IPEkdK22kbCx1fgfeFu7mFmOQCLcBGAs/s1600/oac_rules_scripts.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="534" data-original-width="1600" height="106" src="https://1.bp.blogspot.com/-5XJ7NTVpTBU/WYtaNudpo_I/AAAAAAAAA9g/pBA-g9o6IPEkdK22kbCx1fgfeFu7mFmOQCLcBGAs/s320/oac_rules_scripts.jpg" width="320" /></a></div><div class="MsoNormal" style="margin: 0in 0in 8pt;">&nbsp;</div><div class="MsoNormal" style="margin: 0in 0in 8pt;">Once there, we can create a new rule or edit an existing one. </div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-dEC0zAZHlQA/WYtuOgIAwiI/AAAAAAAAA9w/vepQk5G51ikndPEC_56Kgj6pwaAK3C6OQCLcBGAs/s1600/oac_rule.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="937" data-original-width="1600" height="187" src="https://1.bp.blogspot.com/-dEC0zAZHlQA/WYtuOgIAwiI/AAAAAAAAA9w/vepQk5G51ikndPEC_56Kgj6pwaAK3C6OQCLcBGAs/s320/oac_rule.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Currently, you can't see the data like you can in EAS, but this is much better than the JSON editor shipped in the initial release (Although, I wish they kept that as an option as in some cases it would be nice)</div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Next, a UI has been added for creating transparent partitions.&nbsp; I believe they are working on replicated partitions, but don't quote me on&nbsp;that. </div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-_1R--u-G35M/WYtvuoQphgI/AAAAAAAAA98/tvl2jS-zFrg6RtgwNP9fULZjKXot_yPxACLcBGAs/s1600/oac_partition.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="760" data-original-width="1377" height="176" src="https://3.bp.blogspot.com/-_1R--u-G35M/WYtvuoQphgI/AAAAAAAAA98/tvl2jS-zFrg6RtgwNP9fULZjKXot_yPxACLcBGAs/s320/oac_partition.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: left;">In addition, you can now export Data and calc scripts from the UI</div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-oPcmpIWfCyQ/WYt1_5HrfwI/AAAAAAAAA-Q/wAqEPxRmPe8VhW0XfJNyr9AsSL6pyyzfgCLcBGAs/s1600/oac_export.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="809" data-original-width="1600" height="161" src="https://1.bp.blogspot.com/-oPcmpIWfCyQ/WYt1_5HrfwI/AAAAAAAAA-Q/wAqEPxRmPe8VhW0XfJNyr9AsSL6pyyzfgCLcBGAs/s320/oac_export.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">And here is what it looks like in the exported DBX file in excel. Notice if the file is over 1 meg, it saves it to a file instead.</div><div style="text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-YLu8mJAzYSw/WYt1_aaRC9I/AAAAAAAAA-M/d9pjLuIxoT4dWoIgz0YAu2Ylt-MLabtbwCLcBGAs/s1600/oac_export_output.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="555" data-original-width="1600" height="110" src="https://3.bp.blogspot.com/-YLu8mJAzYSw/WYt1_aaRC9I/AAAAAAAAA-M/d9pjLuIxoT4dWoIgz0YAu2Ylt-MLabtbwCLcBGAs/s320/oac_export_output.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">another change to the UI is you can now set Location Aliases for using XRef (which also means you can use XRef)</div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Non-UI changes include:</div><ul><li><div class="separator" style="clear: both; text-align: left;">The ability to use MaxL files in EssCLI (there will be a whole blog post on this)</div></li><li><div class="separator" style="clear: both; text-align: left;">Application timeout settings. If an application is idle for 15 minutes it will stop. In the future this is supposed to be configurable. (for 3 minutes to 2 weeks)</div></li><li><div class="separator" style="clear: both; text-align: left;">A new Sub-select for MDX in BSO (yes I said BSO) cubes.&nbsp; The information I got is that it can be sued as a filter mechanism to reduce processing that requires partial aggregation. I've not had a change to&nbsp;delve into this further or see the benefits or ramifications. Once I do I'll talk about it. </div></li><li><div class="separator" style="clear: both; text-align: left;">Finally&nbsp;CalcLockBlock has been deprecated in this release.&nbsp;</div></li></ul><div class="separator" style="clear: both; text-align: left;">BUT wait, it you buy into this now, you also get at no additional charge, updates to the Cube Designer extension in Smart View. Alas, I don't have screen shots as I haven't had time to download the latest version but the improvements include:</div><div class="separator" style="clear: both; text-align: left;"><br /></div><ul><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Admin capabilities -&gt; Delete App/Cube</span></span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Search Capability in Hierarchy viewer</span></span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Support for Generation </span><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Names</span></span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Support for </span><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">asynchronous </span><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">jobs</span></span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="color: #58595b; font-family: &quot;calibri&quot;;">File Options - Setting the file delimiter, Skip Rows and Ignore Columns</span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="color: #58595b; font-family: &quot;calibri&quot;;">Flip the sign for members on load (selecting the dimension and UDA)</span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="color: #58595b; font-family: &quot;calibri&quot;;">Support for Text Lists</span>&nbsp;</div></li></ul><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;">While I'm sure there are bug fixes as well, (I know the corrected a problem with CDFs) until I get the actual readme, I'm not sure what fixed.. <br />I expect the next release will occur soon, and when it does I'll blog about some other cool features that are supposed to be in it. <br /><br /><br /><ul></ul><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"></div></div> GlennS tag:blogger.com,1999:blog-2615703102299902978.post-1083070973115196631 Wed Aug 09 2017 17:20:00 GMT-0400 (EDT) OAC - The first patch @gschwartzberg1 @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://glennschwartzbergs-essbase-blog.blogspot.com/2017/08/oac-first-patch.html <br /><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">The honeymoon is over. Well not for my Boss, Edward Roske, he got married in Paris last week. So for him it is just starting. Congratulations Edward. For us using OAC, it is over because the first patch has arrived. It is not a virgin version any more.<span style="mso-spacerun: yes;">&nbsp; </span>That is a good thing for us.<span style="mso-spacerun: yes;">&nbsp; </span>While a lot of things in the patch were talked about at KScope as “coming soon” and was put in to the “Look Smarter than you are with Oracle Analytics Cloud” book, I feel it is good to go over what was released in the patch on 7/29/2017. The version is 17. Interestingly enough, one thing that did not work was getting the readme for the update. <o:p></o:p></span></div><br /><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">There are a number of enhancements in this release. First, we can now see the logs generated without having to FTP onto the server and search for them. If you are at the Server level (having not selected an application or database) Select Administration and you will see the logs structure.</span></div><span style="font-family: &quot;calibri&quot;;"></span><br /><div class="separator" style="clear: both; margin: 0in 0in 8pt; text-align: center;"><span style="font-family: &quot;calibri&quot;;"><a href="https://4.bp.blogspot.com/-XzWFg7LrsRs/WYtXfj2qH9I/AAAAAAAAA9U/p0s8soHpwcYlo23IqRIk4tRHRWvvO584gCLcBGAs/s1600/OAC_logs.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1044" data-original-width="1216" height="274" src="https://4.bp.blogspot.com/-XzWFg7LrsRs/WYtXfj2qH9I/AAAAAAAAA9U/p0s8soHpwcYlo23IqRIk4tRHRWvvO584gCLcBGAs/s320/OAC_logs.jpg" width="320" /></a></span></div><span style="font-family: &quot;calibri&quot;;"></span><br /><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">A couple of things to note. </span></div><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">1. You can only download the logs, they re not interactive on the screen</span></div><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">2. It is best to use something like Notepad ++ to view the output. Since this comes from a Linux box, notepad does not put&nbsp;display it well.</span></div><div class="MsoNormal" style="margin: 0in 0in 8pt;">&nbsp;</div><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">Second, A Rules&nbsp;file editor has been added so you&nbsp;can maintain and create rules files.&nbsp;When you select a database, you can go into the scripts card and&nbsp;click on the second&nbsp;</span></div><div class="MsoNormal" style="margin: 0in 0in 8pt;"><span style="font-family: &quot;calibri&quot;;">"Tab"</span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-5XJ7NTVpTBU/WYtaNudpo_I/AAAAAAAAA9g/pBA-g9o6IPEkdK22kbCx1fgfeFu7mFmOQCLcBGAs/s1600/oac_rules_scripts.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="534" data-original-width="1600" height="106" src="https://1.bp.blogspot.com/-5XJ7NTVpTBU/WYtaNudpo_I/AAAAAAAAA9g/pBA-g9o6IPEkdK22kbCx1fgfeFu7mFmOQCLcBGAs/s320/oac_rules_scripts.jpg" width="320" /></a></div><div class="MsoNormal" style="margin: 0in 0in 8pt;">&nbsp;</div><div class="MsoNormal" style="margin: 0in 0in 8pt;">Once there, we can create a new rule or edit an existing one. </div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-dEC0zAZHlQA/WYtuOgIAwiI/AAAAAAAAA9w/vepQk5G51ikndPEC_56Kgj6pwaAK3C6OQCLcBGAs/s1600/oac_rule.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="937" data-original-width="1600" height="187" src="https://1.bp.blogspot.com/-dEC0zAZHlQA/WYtuOgIAwiI/AAAAAAAAA9w/vepQk5G51ikndPEC_56Kgj6pwaAK3C6OQCLcBGAs/s320/oac_rule.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Currently, you can't see the data like you can in EAS, but this is much better than the JSON editor shipped in the initial release (Although, I wish they kept that as an option as in some cases it would be nice)</div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Next, a UI has been added for creating transparent partitions.&nbsp; I believe they are working on replicated partitions, but don't quote me on&nbsp;that. </div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-_1R--u-G35M/WYtvuoQphgI/AAAAAAAAA98/tvl2jS-zFrg6RtgwNP9fULZjKXot_yPxACLcBGAs/s1600/oac_partition.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="760" data-original-width="1377" height="176" src="https://3.bp.blogspot.com/-_1R--u-G35M/WYtvuoQphgI/AAAAAAAAA98/tvl2jS-zFrg6RtgwNP9fULZjKXot_yPxACLcBGAs/s320/oac_partition.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: left;">In addition, you can now export Data and calc scripts from the UI</div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-oPcmpIWfCyQ/WYt1_5HrfwI/AAAAAAAAA-Q/wAqEPxRmPe8VhW0XfJNyr9AsSL6pyyzfgCLcBGAs/s1600/oac_export.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="809" data-original-width="1600" height="161" src="https://1.bp.blogspot.com/-oPcmpIWfCyQ/WYt1_5HrfwI/AAAAAAAAA-Q/wAqEPxRmPe8VhW0XfJNyr9AsSL6pyyzfgCLcBGAs/s320/oac_export.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">And here is what it looks like in the exported DBX file in excel. Notice if the file is over 1 meg, it saves it to a file instead.</div><div style="text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-YLu8mJAzYSw/WYt1_aaRC9I/AAAAAAAAA-M/d9pjLuIxoT4dWoIgz0YAu2Ylt-MLabtbwCLcBGAs/s1600/oac_export_output.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="555" data-original-width="1600" height="110" src="https://3.bp.blogspot.com/-YLu8mJAzYSw/WYt1_aaRC9I/AAAAAAAAA-M/d9pjLuIxoT4dWoIgz0YAu2Ylt-MLabtbwCLcBGAs/s320/oac_export_output.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">another change to the UI is you can now set Location Aliases for using XRef (which also means you can use XRef)</div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">Non-UI changes include:</div><ul><li><div class="separator" style="clear: both; text-align: left;">The ability to use MaxL files in EssCLI (there will be a whole blog post on this)</div></li><li><div class="separator" style="clear: both; text-align: left;">Application timeout settings. If an application is idle for 15 minutes it will stop. In the future this is supposed to be configurable. (for 3 minutes to 2 weeks)</div></li><li><div class="separator" style="clear: both; text-align: left;">A new Sub-select for MDX in BSO (yes I said BSO) cubes.&nbsp; The information I got is that it can be sued as a filter mechanism to reduce processing that requires partial aggregation. I've not had a change to&nbsp;delve into this further or see the benefits or ramifications. Once I do I'll talk about it. </div></li><li><div class="separator" style="clear: both; text-align: left;">Finally&nbsp;CalcLockBlock has been deprecated in this release.&nbsp;</div></li></ul><div class="separator" style="clear: both; text-align: left;">BUT wait, it you buy into this now, you also get at no additional charge, updates to the Cube Designer extension in Smart View. Alas, I don't have screen shots as I haven't had time to download the latest version but the improvements include:</div><div class="separator" style="clear: both; text-align: left;"><br /></div><ul><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Admin capabilities -&gt; Delete App/Cube</span></span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;"><span style="font-family: inherit;">Search Capability in Hierarchy viewer</span></span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Support for Generation </span><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Names</span></span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="font-family: inherit;"><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">Support for </span><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">asynchronous </span><span style="color: #58595b; font-family: &quot;calibri&quot;; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: +mn-cs; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-fareast-font-family: +mn-ea; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #58595B; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid;">jobs</span></span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="color: #58595b; font-family: &quot;calibri&quot;;">File Options - Setting the file delimiter, Skip Rows and Ignore Columns</span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="color: #58595b; font-family: &quot;calibri&quot;;">Flip the sign for members on load (selecting the dimension and UDA)</span></div></li><li><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"><span style="color: #58595b; font-family: &quot;calibri&quot;;">Support for Text Lists</span>&nbsp;</div></li></ul><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;">While I'm sure there are bug fixes as well, (I know the corrected a problem with CDFs) until I get the actual readme, I'm not sure what fixed.. <br />I expect the next release will occur soon, and when it does I'll blog about some other cool features that are supposed to be in it. <br /><br /><br /><ul></ul><div class="O1" style="-ms-word-break: normal; direction: ltr; language: en-US; line-height: 90%; margin-bottom: 0pt; margin-left: 0.55in; margin-top: 8pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: left; text-indent: -0.25in; unicode-bidi: embed;"></div></div> GlennS tag:blogger.com,1999:blog-2615703102299902978.post-1083070973115196631 Wed Aug 09 2017 17:20:00 GMT-0400 (EDT) Data Validations Leading Practices @TopDownInc https://blog.topdownconsulting.com/2017/08/data-validations-leading-practices/ <p>Over my 15 plus years of consulting, one of the great constants in working with Oracle Hyperion EPM is that you cannot hide from data validations.  It must be done.  One of the eternal questions is:  “Does the data tie out?”  And of course, we know that the answer must always be an affirmative.  In this blog post, we’ll discuss the leading practices that I recommend you follow to be successful with data validations.</p> <p>First, there must be a plan.  Data validations are typically considered a project within a project.  With any successful project, you should have a plan to show what task(s) are to be accomplished, who needs to be involved, and when it should be started &amp; completed.  The plan should be developed and agreed to before you begin to load your historical data into the implemented application.  Here are items that make for a successful framework of your data validation plan:</p> <ul> <li>Define the scope of the data validation – what are the fiscal years and periods to validate? When should the data validation process be completed within the overall project timeline?</li> <li>Identify the source(s) of the original data – what do we validate data against? Typically, we validate against the source system(s)/application(s) from where we are extracting the historical data.  Obviously, ensure that the original data is static.  We typically recommend that the original data is locked down to read-only status if it has not already been done.  Sometimes it might be a good idea to take an application copy of the original data, for example, if the source application is a Hyperion Enterprise application that is being migrated to a new <a href="https://www.topdownconsulting.com/resources/by-topic/hyperion-financial-management/">Oracle Financial Management</a> application.</li> <li>Determine the quality of the source data and set your acceptable materiality threshold – how clean is the source data? What is management’s tolerance for potential data reconciliation differences?  It is good practice to outline the problem resolution path when a material data difference is identified – who should the data difference be reviewed with and who approves the resolution plan to fix it?</li> <li>Assign tasks to the key personnel involved and ensure that data validation tasks are high-priority status – who is responsible to validate the data and who signs-off? Communicate the data validation work to be completed and the timeline target.  Ensure that access to the source system(s)/application(s) and the target application will be active and working for all personnel involved.</li> <li>Make the data validation process be repeatable because it is often the case that you must validate data again after an unexpected change is made. More about this topic below.</li> </ul> <p>Next, let’s dive into data granularity.  This is the tedious part of the data validation process.  To be successful, you cannot avoid it.  Here is what I’ve found to be successful, at minimum:  (1) validate at the top consolidated level for your financial statements such as the Balance Sheet and Income Statement; (2) validate at the trial balance level for key base level entities in both the local currency and the translated reporting currency.  For some clients in my experience, we have validated at all base level entities in step #2 for the most stringent data validation requirement.  Additionally, validate data for other dimensions besides the entity and chart of accounts.  For example, there could be a cost center dimension and/or a geography/location dimension.  They should be validated too using a combination of steps #1 and #2.  Now related to data granularity is the question of fiscal years and periods that hopefully you’ve defined in advance.  Historical data reporting requirements specific to your organization will help answer how frequently you should validate.  Typically, I recommend validating all periods of historical data as the timeline permits.  If you have 7 full fiscal years (standard 12 months each) of historical data, that means there are 84 periods to validate and if the project timeline is very tight, validating data for 84 months might not be practical, so in that case, you could scale back to validating data on the quarters only.</p> <p>Now, let’s circle back on the bullet point about having a repeatable data validation process.  This is very important because it happens very often that, during an implementation project, there will be a change made that requires you to reload historical data again.  This could be driven by a change in the project scope.  To have a repeatable data validation process, it often helps to embrace the great tools of Oracle Hyperion EPM.  The key ones are (1) FDM/FDMEE, (2) SmartView, (3) Financial Reporting, and (4) the HFM journals module.  Briefly, we’ll explain how they help:</p> <ul> <li><a href="https://blog.topdownconsulting.com/2016/02/fdm-fdmee-mapping-general-principles/">FDM/FDMEE</a> is the data integration tool to transform and load data into Oracle Hyperion EPM. It facilitates the conversion of historical data and keeps an archive of it.  You can maintain mapping tables to drive how to transform data from the source to the target.  You can do bulk data loading to load multiple data files and/or multiple periods of data.  It helps you be consistent in loading data files.  Use FDM/FDMEE as often as possible to load your historical data even if there is a minimum amount of conversion that takes place.  It’s ability to archive your source data files also means you can get back to them quickly and you can use FDM/FDMEE for drilling into the source data.  Additionally, FDM/FDMEE has an optional feature to load data files as journals into HFM if that is your target application.  This feature might be useful when you need to adjust historical data with journal entries.</li> <li><a href="http://connect.topdownconsulting.com/pbcs-implementation-with-smart-view?">SmartView</a> is the Microsoft Office add-in tool to analyze data. On almost all Oracle Hyperion EPM projects, we develop data validation spreadsheets using SmartView.  You can use either the SmartView Ad-hoc or Functions feature.  SmartView Ad-hoc tends to be the more robust and have less file size storage impact.  Once you develop a data validation spreadsheet in Excel, it can become a template and you can copy and paste and then modify quickly in Excel.  With implementations where we work with an older version of Hyperion software and the current Oracle EPM, Excel allows you to pull data using SmartView in one spreadsheet tab from the target application and you can have another spreadsheet tab that connects to a legacy Hyperion software (for example Hyperion Enterprise Retrieve).  In Excel, you can easily have a spreadsheet to compute the differences between data pulling from the source and the target.</li> <li>Financial Reporting (FR) is the tool to create and run canned reports. For some data validation scenarios, it might make sense to create canned reports that data validators can use to analyze data when there are differences.  You can use the expansion feature in (FR) to let you drill down on dimensions to their lowest level.</li> <li>For clients where HFM is the target application, the journals module could be used in the data validation process. I would recommend using it to capture and store adjustments to historical data.  Sometimes during the data validation process, it is tempting to directly adjust a source data file or the source application or create a separate data file to load.  It can be a quick fix but it can lead to lots of confusion down the road about the quality of the source data.  Instead, keep adjustments to historical data unique as HFM journals so they can be seen separately and you can undo them if necessary.  It is easier to un-post a journal in HFM than to manually track down an adjustment made outside of HFM.  It goes without saying that journals are better for auditing purposes.</li> </ul> <p>In conclusion, if you apply the leading practice ideas from this blog, you should be able to give the most rewarding three-word answer when someone asks if your data ties out – “Yes, it does.”</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>The post <a rel="nofollow" href="https://blog.topdownconsulting.com/2017/08/data-validations-leading-practices/">Data Validations Leading Practices</a> appeared first on <a rel="nofollow" href="https://blog.topdownconsulting.com">TopDown Consulting Blog</a>.</p> Hoa Pham https://blog.topdownconsulting.com/?p=1840 Wed Aug 09 2017 15:18:48 GMT-0400 (EDT) Data Validations Leading Practices https://blog.topdownconsulting.com/2017/08/data-validations-leading-practices/ <p>Over my 15 plus years of consulting, one of the great constants in working with Oracle Hyperion EPM is that you cannot hide from data validations.  It must be done.  One of the eternal questions is:  “Does the data tie out?”  And of course, we know that the answer must always be an affirmative.  In this blog post, we’ll discuss the leading practices that I recommend you follow to be successful with data validations.</p> <p>First, there must be a plan.  Data validations are typically considered a project within a project.  With any successful project, you should have a plan to show what task(s) are to be accomplished, who needs to be involved, and when it should be started &amp; completed.  The plan should be developed and agreed to before you begin to load your historical data into the implemented application.  Here are items that make for a successful framework of your data validation plan:</p> <ul> <li>Define the scope of the data validation – what are the fiscal years and periods to validate? When should the data validation process be completed within the overall project timeline?</li> <li>Identify the source(s) of the original data – what do we validate data against? Typically, we validate against the source system(s)/application(s) from where we are extracting the historical data.  Obviously, ensure that the original data is static.  We typically recommend that the original data is locked down to read-only status if it has not already been done.  Sometimes it might be a good idea to take an application copy of the original data, for example, if the source application is a Hyperion Enterprise application that is being migrated to a new <a href="https://www.topdownconsulting.com/resources/by-topic/hyperion-financial-management/">Oracle Financial Management</a> application.</li> <li>Determine the quality of the source data and set your acceptable materiality threshold – how clean is the source data? What is management’s tolerance for potential data reconciliation differences?  It is good practice to outline the problem resolution path when a material data difference is identified – who should the data difference be reviewed with and who approves the resolution plan to fix it?</li> <li>Assign tasks to the key personnel involved and ensure that data validation tasks are high-priority status – who is responsible to validate the data and who signs-off? Communicate the data validation work to be completed and the timeline target.  Ensure that access to the source system(s)/application(s) and the target application will be active and working for all personnel involved.</li> <li>Make the data validation process be repeatable because it is often the case that you must validate data again after an unexpected change is made. More about this topic below.</li> </ul> <p>Next, let’s dive into data granularity.  This is the tedious part of the data validation process.  To be successful, you cannot avoid it.  Here is what I’ve found to be successful, at minimum:  (1) validate at the top consolidated level for your financial statements such as the Balance Sheet and Income Statement; (2) validate at the trial balance level for key base level entities in both the local currency and the translated reporting currency.  For some clients in my experience, we have validated at all base level entities in step #2 for the most stringent data validation requirement.  Additionally, validate data for other dimensions besides the entity and chart of accounts.  For example, there could be a cost center dimension and/or a geography/location dimension.  They should be validated too using a combination of steps #1 and #2.  Now related to data granularity is the question of fiscal years and periods that hopefully you’ve defined in advance.  Historical data reporting requirements specific to your organization will help answer how frequently you should validate.  Typically, I recommend validating all periods of historical data as the timeline permits.  If you have 7 full fiscal years (standard 12 months each) of historical data, that means there are 84 periods to validate and if the project timeline is very tight, validating data for 84 months might not be practical, so in that case, you could scale back to validating data on the quarters only.</p> <p>Now, let’s circle back on the bullet point about having a repeatable data validation process.  This is very important because it happens very often that, during an implementation project, there will be a change made that requires you to reload historical data again.  This could be driven by a change in the project scope.  To have a repeatable data validation process, it often helps to embrace the great tools of Oracle Hyperion EPM.  The key ones are (1) FDM/FDMEE, (2) SmartView, (3) Financial Reporting, and (4) the HFM journals module.  Briefly, we’ll explain how they help:</p> <ul> <li><a href="https://blog.topdownconsulting.com/2016/02/fdm-fdmee-mapping-general-principles/">FDM/FDMEE</a> is the data integration tool to transform and load data into Oracle Hyperion EPM. It facilitates the conversion of historical data and keeps an archive of it.  You can maintain mapping tables to drive how to transform data from the source to the target.  You can do bulk data loading to load multiple data files and/or multiple periods of data.  It helps you be consistent in loading data files.  Use FDM/FDMEE as often as possible to load your historical data even if there is a minimum amount of conversion that takes place.  It’s ability to archive your source data files also means you can get back to them quickly and you can use FDM/FDMEE for drilling into the source data.  Additionally, FDM/FDMEE has an optional feature to load data files as journals into HFM if that is your target application.  This feature might be useful when you need to adjust historical data with journal entries.</li> <li><a href="http://connect.topdownconsulting.com/pbcs-implementation-with-smart-view?">SmartView</a> is the Microsoft Office add-in tool to analyze data. On almost all Oracle Hyperion EPM projects, we develop data validation spreadsheets using SmartView.  You can use either the SmartView Ad-hoc or Functions feature.  SmartView Ad-hoc tends to be the more robust and have less file size storage impact.  Once you develop a data validation spreadsheet in Excel, it can become a template and you can copy and paste and then modify quickly in Excel.  With implementations where we work with an older version of Hyperion software and the current Oracle EPM, Excel allows you to pull data using SmartView in one spreadsheet tab from the target application and you can have another spreadsheet tab that connects to a legacy Hyperion software (for example Hyperion Enterprise Retrieve).  In Excel, you can easily have a spreadsheet to compute the differences between data pulling from the source and the target.</li> <li>Financial Reporting (FR) is the tool to create and run canned reports. For some data validation scenarios, it might make sense to create canned reports that data validators can use to analyze data when there are differences.  You can use the expansion feature in (FR) to let you drill down on dimensions to their lowest level.</li> <li>For clients where HFM is the target application, the journals module could be used in the data validation process. I would recommend using it to capture and store adjustments to historical data.  Sometimes during the data validation process, it is tempting to directly adjust a source data file or the source application or create a separate data file to load.  It can be a quick fix but it can lead to lots of confusion down the road about the quality of the source data.  Instead, keep adjustments to historical data unique as HFM journals so they can be seen separately and you can undo them if necessary.  It is easier to un-post a journal in HFM than to manually track down an adjustment made outside of HFM.  It goes without saying that journals are better for auditing purposes.</li> </ul> <p>In conclusion, if you apply the leading practice ideas from this blog, you should be able to give the most rewarding three-word answer when someone asks if your data ties out – “Yes, it does.”</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>The post <a rel="nofollow" href="https://blog.topdownconsulting.com/2017/08/data-validations-leading-practices/">Data Validations Leading Practices</a> appeared first on <a rel="nofollow" href="https://blog.topdownconsulting.com">TopDown Consulting Blog</a>.</p> Hoa Pham https://blog.topdownconsulting.com/?p=1840 Wed Aug 09 2017 15:18:48 GMT-0400 (EDT) Automating Essbase Copy Outline Operation using Java API https://devepm.com/2017/08/09/automating-essbase-copy-outline-operation-using-java-api/ Hi guys how are you? Did you guys ever tried to automate the process of coping a cube outline from one application to another? Well, there’s an easy way to do that. Basically you copy the .otl from the server file system over the other cube. The problem is that if the cube is not [&#8230;]<img alt="" border="0" src="https://pixel.wp.com/b.gif?host=devepm.com&#038;blog=33318620&#038;post=1565&#038;subd=devepm&#038;ref=&#038;feed=1" width="1" height="1" /> RZGiampaoli http://devepm.com/?p=1565 Wed Aug 09 2017 14:35:54 GMT-0400 (EDT) Automating Essbase Copy Outline Operation using Java API @devepm @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs https://devepm.com/2017/08/09/automating-essbase-copy-outline-operation-using-java-api/ Hi guys how are you? Did you guys ever tried to automate the process of coping a cube outline from one application to another? Well, there’s an easy way to do that. Basically you copy the .otl from the server file system over the other cube. The problem is that if the cube is not [&#8230;]<img alt="" border="0" src="https://pixel.wp.com/b.gif?host=devepm.com&#038;blog=33318620&#038;post=1565&#038;subd=devepm&#038;ref=&#038;feed=1" width="1" height="1" /> RZGiampaoli http://devepm.com/?p=1565 Wed Aug 09 2017 14:35:54 GMT-0400 (EDT) User Selectable Cube Connections in Dodeca http://www.jasonwjones.com/2017/08/user-selectable-cube-connections-in-dodeca/ A request came in the other day asking if it was possible to make a Dodeca view&#8217;s connection dynamic/selectable by the user. For example, say you are rotating through cubes every month that are essentially the same outline but just have different data. You might have the January cube, the February cube, and so on. This [&#8230;] jason http://www.jasonwjones.com/?p=1884 Wed Aug 09 2017 11:40:42 GMT-0400 (EDT) User Selectable Cube Connections in Dodeca @jwj @orclEPMblogs @orclEPMblogs @orclEPMblogs http://www.jasonwjones.com/2017/08/user-selectable-cube-connections-in-dodeca/ A request came in the other day asking if it was possible to make a Dodeca view&#8217;s connection dynamic/selectable by the user. For example, say you are rotating through cubes every month that are essentially the same outline but just have different data. You might have the January cube, the February cube, and so on. This [&#8230;] jason http://www.jasonwjones.com/?p=1884 Wed Aug 09 2017 11:40:42 GMT-0400 (EDT) OAC Series: Introduction to Access Rules https://womaninepm.com/2017/08/09/oac-series-introduction-to-access-rules/ Access rules are a feature new to administrators in the world of PaaS. But what are they and why do you need to know about them? Are these new &#8220;rules files&#8221; for Essbase Cloud? (Nope.) Regardless of which area of OAC you&#8217;re managing, you&#8217;ll need to become familiar with access rules. If you are having &#8230; <a href="https://womaninepm.com/2017/08/09/oac-series-introduction-to-access-rules/" class="more-link">Continue reading <span class="screen-reader-text">OAC Series: Introduction to Access&#160;Rules</span></a><img alt="" border="0" src="https://pixel.wp.com/b.gif?host=womaninepm.com&#038;blog=86936629&#038;post=10689&#038;subd=womaninepm&#038;ref=&#038;feed=1" width="1" height="1" /> OpaL http://womaninepm.com/?p=10689 Wed Aug 09 2017 11:00:25 GMT-0400 (EDT) OAC Series: Introduction to Access Rules @opal_epm @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs https://womaninepm.com/2017/08/09/oac-series-introduction-to-access-rules/ Access rules are a feature new to administrators in the world of PaaS. But what are they and why do you need to know about them? Are these new &#8220;rules files&#8221; for Essbase Cloud? (Nope.) Regardless of which area of OAC you&#8217;re managing, you&#8217;ll need to become familiar with access rules. If you are having &#8230; <a href="https://womaninepm.com/2017/08/09/oac-series-introduction-to-access-rules/" class="more-link">Continue reading <span class="screen-reader-text">OAC Series: Introduction to Access&#160;Rules</span></a><img alt="" border="0" src="https://pixel.wp.com/b.gif?host=womaninepm.com&#038;blog=86936629&#038;post=10689&#038;subd=womaninepm&#038;ref=&#038;feed=1" width="1" height="1" /> OpaL http://womaninepm.com/?p=10689 Wed Aug 09 2017 11:00:25 GMT-0400 (EDT) Projection Process Case Study for Oracle Planning and Budgeting Cloud Service (PBCS) http://blog.performancearchitects.com/wp/2017/08/09/projection-process-case-study-for-oracle-planning-and-budgeting-cloud-service-pbcs/ <p>Author: Mike McLean, Performance Architects</p> <p>One of the requirements during a recent Performance Architects <a href="http://www.oracle.com/us/solutions/cloud/planning-budgeting/overview/index.html">Oracle Planning and Budgeting Cloud Service (PBCS)</a> implementation project was to create a solution for their projection process.   During discussions with the Budget Office, we learned that requirements included:</p> <ul> <li>Projections occur three times a year: <ul> <li>After Q1 actuals are complete</li> <li>After Q2 actuals are complete</li> <li>After Q3 actuals are complete</li> </ul> </li> <li>Historical actuals and budget data must be used to seed the projection scenario</li> <li>Revenues need to be seeded using one methodology, while expenses are seeded using another methodology</li> <li>After the projection scenario is seeded, additional adjustments may need to be made by department, fund, program, etc.</li> </ul> <p>The calculation to seed the “Projection” scenario contains several components:</p> <ol> <li>Q1 revenue and expense actuals were copied to “Q1 Projection&#8221;:<br /> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-1.png"><img class="alignnone size-medium wp-image-2102" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-1-300x191.png" alt="" width="300" height="191" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-1-300x191.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-1.png 404w" sizes="(max-width: 300px) 100vw, 300px" /></a></li> </ol> <ol start="2"> <li>Using prior year actuals, “% of YearTotal” was calculated for all revenue accounts for each month. See the example below for October (500 / 9,750 = 5.1%):<br /> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2.png"><img class="alignnone size-medium wp-image-2101" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2-300x32.png" alt="" width="300" height="32" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2-300x32.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2-768x82.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2-1024x110.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2-624x67.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2.png 1130w" sizes="(max-width: 300px) 100vw, 300px" /></a></li> </ol> <ol start="3"> <li>The monthly “% of YearTotal” is then multiplied by the “Budget YearTotal” value to calculate each month’s revenue. See the example below for October (5.1% x 8,100 = 415):<br /> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3.png"><img class="alignnone size-medium wp-image-2100" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3-300x76.png" alt="" width="300" height="76" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3-300x76.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3-768x195.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3-1024x261.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3-624x159.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3.png 1132w" sizes="(max-width: 300px) 100vw, 300px" /></a></li> </ol> <ol start="4"> <li>Expense accounts are calculated by taking the average of “Q1 Actuals” and loading that value into all of the out months:<br /> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4.png"><img class="alignnone size-medium wp-image-2099" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4-300x28.png" alt="" width="300" height="28" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4-300x28.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4-768x71.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4-1024x94.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4-624x57.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4.png 1140w" sizes="(max-width: 300px) 100vw, 300px" /></a></li> <li>After the business rule is launched, the results are displayed:<br /> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5.png"><img class="alignnone size-medium wp-image-2098" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5-300x41.png" alt="" width="300" height="41" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5-300x41.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5-768x105.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5-1024x140.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5-624x85.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5.png 1133w" sizes="(max-width: 300px) 100vw, 300px" /></a></li> </ol> <p>After the “Q1 Projection” is calculated, the Budget Office wanted the option to make additional adjustments.  This was accomplished by leveraging the hierarchy in the “Version” dimension.  We created a sibling of “Projection Calculated” and named the member “Projection Adjustments.”  The parent of those two members is “Projection Total”.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6.png"><img class="alignnone size-medium wp-image-2097" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6-300x130.png" alt="" width="300" height="130" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6-300x130.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6-768x333.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6-1024x444.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6-624x270.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6.png 1034w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Need help with your PBCS implementation project? Contact us at <a href="mailto:sales@performancearchitects.com">sales@performancearchitects.com</a> and we can help you out!</p> Melanie Mathews http://blog.performancearchitects.com/wp/?p=2096 Wed Aug 09 2017 06:02:18 GMT-0400 (EDT) Projection Process Case Study for Oracle Planning and Budgeting Cloud Service (PBCS) @PerfArchitects @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://blog.performancearchitects.com/wp/2017/08/09/projection-process-case-study-for-oracle-planning-and-budgeting-cloud-service-pbcs/ <p>Author: Mike McLean, Performance Architects</p> <p>One of the requirements during a recent Performance Architects <a href="http://www.oracle.com/us/solutions/cloud/planning-budgeting/overview/index.html">Oracle Planning and Budgeting Cloud Service (PBCS)</a> implementation project was to create a solution for their projection process.   During discussions with the Budget Office, we learned that requirements included:</p> <ul> <li>Projections occur three times a year: <ul> <li>After Q1 actuals are complete</li> <li>After Q2 actuals are complete</li> <li>After Q3 actuals are complete</li> </ul> </li> <li>Historical actuals and budget data must be used to seed the projection scenario</li> <li>Revenues need to be seeded using one methodology, while expenses are seeded using another methodology</li> <li>After the projection scenario is seeded, additional adjustments may need to be made by department, fund, program, etc.</li> </ul> <p>The calculation to seed the “Projection” scenario contains several components:</p> <ol> <li>Q1 revenue and expense actuals were copied to “Q1 Projection&#8221;:<br /> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-1.png"><img class="alignnone size-medium wp-image-2102" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-1-300x191.png" alt="" width="300" height="191" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-1-300x191.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-1.png 404w" sizes="(max-width: 300px) 100vw, 300px" /></a></li> </ol> <ol start="2"> <li>Using prior year actuals, “% of YearTotal” was calculated for all revenue accounts for each month. See the example below for October (500 / 9,750 = 5.1%):<br /> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2.png"><img class="alignnone size-medium wp-image-2101" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2-300x32.png" alt="" width="300" height="32" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2-300x32.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2-768x82.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2-1024x110.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2-624x67.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-2.png 1130w" sizes="(max-width: 300px) 100vw, 300px" /></a></li> </ol> <ol start="3"> <li>The monthly “% of YearTotal” is then multiplied by the “Budget YearTotal” value to calculate each month’s revenue. See the example below for October (5.1% x 8,100 = 415):<br /> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3.png"><img class="alignnone size-medium wp-image-2100" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3-300x76.png" alt="" width="300" height="76" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3-300x76.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3-768x195.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3-1024x261.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3-624x159.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-3.png 1132w" sizes="(max-width: 300px) 100vw, 300px" /></a></li> </ol> <ol start="4"> <li>Expense accounts are calculated by taking the average of “Q1 Actuals” and loading that value into all of the out months:<br /> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4.png"><img class="alignnone size-medium wp-image-2099" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4-300x28.png" alt="" width="300" height="28" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4-300x28.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4-768x71.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4-1024x94.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4-624x57.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-4.png 1140w" sizes="(max-width: 300px) 100vw, 300px" /></a></li> <li>After the business rule is launched, the results are displayed:<br /> <a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5.png"><img class="alignnone size-medium wp-image-2098" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5-300x41.png" alt="" width="300" height="41" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5-300x41.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5-768x105.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5-1024x140.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5-624x85.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-5.png 1133w" sizes="(max-width: 300px) 100vw, 300px" /></a></li> </ol> <p>After the “Q1 Projection” is calculated, the Budget Office wanted the option to make additional adjustments.  This was accomplished by leveraging the hierarchy in the “Version” dimension.  We created a sibling of “Projection Calculated” and named the member “Projection Adjustments.”  The parent of those two members is “Projection Total”.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6.png"><img class="alignnone size-medium wp-image-2097" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6-300x130.png" alt="" width="300" height="130" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6-300x130.png 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6-768x333.png 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6-1024x444.png 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6-624x270.png 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/Projection-Process-6.png 1034w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Need help with your PBCS implementation project? Contact us at <a href="mailto:sales@performancearchitects.com">sales@performancearchitects.com</a> and we can help you out!</p> Melanie Mathews http://blog.performancearchitects.com/wp/?p=2096 Wed Aug 09 2017 06:02:18 GMT-0400 (EDT) Loading and Extracting HFM 11.1.2.4 Data with ODI Knowledge Modules (ODTUG Article) @devepm https://devepm.com/2017/08/08/loading-and-extracting-hfm-11-1-2-4-data-with-odi-knowledge-modules-odtug-article/ Hi all! ODTUG just released our article about “Loading and Extracting HFM 11.1.2.4 Data with ODI Knowledge Modules“. This second article shows all the details behind the construction of ODI IKM for data load and also a procedure to extract data from HFM 11.1.2.4 and it also explain all its options and functionalities. Please feel [&#8230;]<img alt="" border="0" src="https://pixel.wp.com/b.gif?host=devepm.com&#038;blog=33318620&#038;post=1561&#038;subd=devepm&#038;ref=&#038;feed=1" width="1" height="1" /> radk00 http://devepm.com/?p=1561 Tue Aug 08 2017 15:29:09 GMT-0400 (EDT) Loading and Extracting HFM 11.1.2.4 Data with ODI Knowledge Modules (ODTUG Article) https://devepm.com/2017/08/08/loading-and-extracting-hfm-11-1-2-4-data-with-odi-knowledge-modules-odtug-article/ Hi all! ODTUG just released our article about “Loading and Extracting HFM 11.1.2.4 Data with ODI Knowledge Modules“. This second article shows all the details behind the construction of ODI IKM for data load and also a procedure to extract data from HFM 11.1.2.4 and it also explain all its options and functionalities. Please feel [&#8230;]<img alt="" border="0" src="https://pixel.wp.com/b.gif?host=devepm.com&#038;blog=33318620&#038;post=1561&#038;subd=devepm&#038;ref=&#038;feed=1" width="1" height="1" /> radk00 http://devepm.com/?p=1561 Tue Aug 08 2017 15:29:09 GMT-0400 (EDT) Automating Enterprise Planning with EPBCS: A Case Study Featuring Sims Metal Management https://ranzal.wordpress.com/2017/08/08/automating-enterprise-planning-with-epbcs-a-case-study-featuring-sims-metal-management/ <p><img data-attachment-id="1892" data-permalink="https://ranzal.wordpress.com/2017/08/08/automating-enterprise-planning-with-epbcs-a-case-study-featuring-sims-metal-management/robust-highlight/" data-orig-file="https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=584" data-orig-size="900,200" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Enterprise Planning and Budgeting Cloud Service" data-image-description="" data-medium-file="https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=584?w=300" data-large-file="https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=584?w=584" class="alignnone size-full wp-image-1892" src="https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=584" alt="Enterprise Planning and Budgeting Cloud Service" srcset="https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=584 584w, https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=150 150w, https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=300 300w, https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=768 768w, https://ranzal.files.wordpress.com/2017/08/robust-highlight.png 900w" sizes="(max-width: 584px) 100vw, 584px" />In using Enterprise Planning &amp; Budgeting Cloud Service<strong> (</strong><a href="https://cloud.oracle.com/en_US/enterprise-planning-cloud" target="_blank" rel="noopener">EPBCS</a><strong>)</strong> to support annual budgeting and forecasting processes, organizations are choosing solutions that allow them to leverage the financials, projects, capital and workforce business processes necessary to provide a driver-based solution that links expected intake to revenues and costs. In turn, they are able to more efficiently produce integrated income statements, balance sheets and cash flow statements.</p> <p><strong>Featuring Jim Clark of Sims Metal Management, Our Special Guest</strong></p> <p><strong> </strong>Our August 16, 2017 webinar, featuring <a href="https://www.linkedin.com/in/james-clark-1279167/" target="_blank" rel="noopener">Jim Clark, Group Manager of FP&amp;A</a> at <a href="http://www.simsmm.com/" target="_blank" rel="noopener">Sims Metal Management,</a> takes a detailed look at how one organization automated enterprise planning to streamline processes and produce better results.</p> <p>Within a real-world scenario, this means that whether using EPBCS out of the box or as a “hybrid” of OOTB with customized extensions, companies like Sims are able to adjust sales forecasts—throughout the year and through sales cycles—to better match the actual costs and needs in areas such as raw materials and labor.</p> <p><strong>A Better Approach To Performance Management </strong></p> <p>Using this integrated approach to Performance Management, companies are, in effect, bringing actual performance numbers, on a monthly basis, into their models.</p> <p>As a result, changes and adjustments can be fine-tuned and incorporated into the mix.  Forecasts can be based more on actual numbers and less on assumptions, thus leading to a balance sheet that matches projections. From a planning perspective, companies can be more nimble and, ultimately, create their models with greater accuracy.</p> <p><strong>Whether you are participating live or via a recording, this webinar will illustrate how organizations like Sims are leveraging EPBCS in ways that allow them to:  </strong></p> <ul> <li><strong>Gain insight</strong> to increase efficiency and improve outcomes</li> <li><strong>Better understand </strong>how organizations like yours can make standardization and centralization a top priority</li> <li><strong>See</strong> how an integrated solution works not just in theory, but actually in practice</li> <li><strong>Follow</strong> the processes to results that include improved accuracy and increased efficiency across the enterprise</li> </ul> <p><strong>For More Information</strong></p> <p>No matter where your team or your organization is along your EPBCS journey, this webinar is certain to provide you with valuable insight and context that can help you to implement changes that lead to greater efficiency and a more streamlined forecasting process overall.</p> <p><strong>Register for our “</strong><strong>Automating Enterprise Planning with EPBCS: A Case Study Featuring Sims Metal Management </strong><strong>” webinar:</p> <p>Missed the webinar? <a href="https://attendee.gotowebinar.com/recording/1835075395897852929" target="_blank" rel="noopener">View Recording Here</a>.</strong></p> <p>&nbsp;</p><br /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ranzal.wordpress.com/1890/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ranzal.wordpress.com/1890/" /></a> <img alt="" border="0" src="https://pixel.wp.com/b.gif?host=ranzal.wordpress.com&#038;blog=3955384&#038;post=1890&#038;subd=ranzal&#038;ref=&#038;feed=1" width="1" height="1" /> amendel715 http://ranzal.wordpress.com/?p=1890 Tue Aug 08 2017 09:00:27 GMT-0400 (EDT) Automating Enterprise Planning with EPBCS: A Case Study Featuring Sims Metal Management @ranzal @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs https://ranzal.wordpress.com/2017/08/08/automating-enterprise-planning-with-epbcs-a-case-study-featuring-sims-metal-management/ <p><img data-attachment-id="1892" data-permalink="https://ranzal.wordpress.com/2017/08/08/automating-enterprise-planning-with-epbcs-a-case-study-featuring-sims-metal-management/robust-highlight/" data-orig-file="https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=584" data-orig-size="900,200" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Enterprise Planning and Budgeting Cloud Service" data-image-description="" data-medium-file="https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=584?w=300" data-large-file="https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=584?w=584" class="alignnone size-full wp-image-1892" src="https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=584" alt="Enterprise Planning and Budgeting Cloud Service" srcset="https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=584 584w, https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=150 150w, https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=300 300w, https://ranzal.files.wordpress.com/2017/08/robust-highlight.png?w=768 768w, https://ranzal.files.wordpress.com/2017/08/robust-highlight.png 900w" sizes="(max-width: 584px) 100vw, 584px" />In using Enterprise Planning &amp; Budgeting Cloud Service<strong> (</strong><a href="https://cloud.oracle.com/en_US/enterprise-planning-cloud" target="_blank" rel="noopener">EPBCS</a><strong>)</strong> to support annual budgeting and forecasting processes, organizations are choosing solutions that allow them to leverage the financials, projects, capital and workforce business processes necessary to provide a driver-based solution that links expected intake to revenues and costs. In turn, they are able to more efficiently produce integrated income statements, balance sheets and cash flow statements.</p> <p><strong>Featuring Jim Clark of Sims Metal Management, Our Special Guest</strong></p> <p><strong> </strong>Our August 16, 2017 webinar, featuring <a href="https://www.linkedin.com/in/james-clark-1279167/" target="_blank" rel="noopener">Jim Clark, Group Manager of FP&amp;A</a> at <a href="http://www.simsmm.com/" target="_blank" rel="noopener">Sims Metal Management,</a> takes a detailed look at how one organization automated enterprise planning to streamline processes and produce better results.</p> <p>Within a real-world scenario, this means that whether using EPBCS out of the box or as a “hybrid” of OOTB with customized extensions, companies like Sims are able to adjust sales forecasts—throughout the year and through sales cycles—to better match the actual costs and needs in areas such as raw materials and labor.</p> <p><strong>A Better Approach To Performance Management </strong></p> <p>Using this integrated approach to Performance Management, companies are, in effect, bringing actual performance numbers, on a monthly basis, into their models.</p> <p>As a result, changes and adjustments can be fine-tuned and incorporated into the mix.  Forecasts can be based more on actual numbers and less on assumptions, thus leading to a balance sheet that matches projections. From a planning perspective, companies can be more nimble and, ultimately, create their models with greater accuracy.</p> <p><strong>Whether you are participating live or via a recording, this webinar will illustrate how organizations like Sims are leveraging EPBCS in ways that allow them to:  </strong></p> <ul> <li><strong>Gain insight</strong> to increase efficiency and improve outcomes</li> <li><strong>Better understand </strong>how organizations like yours can make standardization and centralization a top priority</li> <li><strong>See</strong> how an integrated solution works not just in theory, but actually in practice</li> <li><strong>Follow</strong> the processes to results that include improved accuracy and increased efficiency across the enterprise</li> </ul> <p><strong>For More Information</strong></p> <p>No matter where your team or your organization is along your EPBCS journey, this webinar is certain to provide you with valuable insight and context that can help you to implement changes that lead to greater efficiency and a more streamlined forecasting process overall.</p> <p><strong>Register for our “</strong><strong>Automating Enterprise Planning with EPBCS: A Case Study Featuring Sims Metal Management </strong><strong>” webinar:</p> <p>Missed the webinar? <a href="https://attendee.gotowebinar.com/recording/1835075395897852929" target="_blank" rel="noopener">View Recording Here</a>.</strong></p> <p>&nbsp;</p><br /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ranzal.wordpress.com/1890/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ranzal.wordpress.com/1890/" /></a> <img alt="" border="0" src="https://pixel.wp.com/b.gif?host=ranzal.wordpress.com&#038;blog=3955384&#038;post=1890&#038;subd=ranzal&#038;ref=&#038;feed=1" width="1" height="1" /> amendel715 http://ranzal.wordpress.com/?p=1890 Tue Aug 08 2017 09:00:27 GMT-0400 (EDT) What does EPM Automate Utility offer - Part 4 http://onlyhyperion.blogspot.com/2017/08/What-does-EPM-Automate-Utility-offer-Part-4.html <div dir="ltr" style="text-align: left;" trbidi="on">In this series lets see how to read a file and strip a particular value from a column of a CSV file and use that value in the EPM automate script.<br /><br />Requirement:<br /><br />Every month the pay details are extracted from the source system and the data file is loaded into the PBCS, to get this automated the file name should be named as MMM-YY (Pay month and year format).<br /><br />Let us explore how this is achieved using the EPM &nbsp;automate.<br /><br /><b>Declaration Part of the Script:</b><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-z6PZ6WClEb8/WYmYBIJUjCI/AAAAAAAAaiM/ThCsUIIZdjYoMgoXsN39ggx9ChHE7VaBwCLcBGAs/s1600/Dec1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="366" data-original-width="919" height="254" src="https://2.bp.blogspot.com/-z6PZ6WClEb8/WYmYBIJUjCI/AAAAAAAAaiM/ThCsUIIZdjYoMgoXsN39ggx9ChHE7VaBwCLcBGAs/s640/Dec1.jpg" width="640" /></a></div><b>Preparing the File for reading the contents&nbsp;</b><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-OKr1zHcI2z0/WYmWjTsGktI/AAAAAAAAah8/2yysJ_COfJ0WFr8BkT-r19ilCGbbnTHDwCLcBGAs/s1600/2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="349" data-original-width="837" height="266" src="https://1.bp.blogspot.com/-OKr1zHcI2z0/WYmWjTsGktI/AAAAAAAAah8/2yysJ_COfJ0WFr8BkT-r19ilCGbbnTHDwCLcBGAs/s640/2.jpg" width="640" /></a></div><b><br /></b><b><br /></b><b>Extracting the Pay month &amp; year</b><br /><b><br /></b><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-wpSnZRLFqT0/WYmW8JBDrjI/AAAAAAAAaiA/tl4r5CnPi4MqXnNq_IcoFcLJ8RY484AiACLcBGAs/s1600/3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="517" data-original-width="1227" height="268" src="https://1.bp.blogspot.com/-wpSnZRLFqT0/WYmW8JBDrjI/AAAAAAAAaiA/tl4r5CnPi4MqXnNq_IcoFcLJ8RY484AiACLcBGAs/s640/3.jpg" width="640" /></a></div><b><br /></b><b>Renaming&nbsp;the file and uploading to PBCS</b><br /><b><br /></b><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-R4pfQE4NAV4/WYmXTAWSxUI/AAAAAAAAaiE/Sj1gyETwFcgnc4_ImcOj9tdjf1szFJDAACLcBGAs/s1600/4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="418" data-original-width="1146" height="232" src="https://3.bp.blogspot.com/-R4pfQE4NAV4/WYmXTAWSxUI/AAAAAAAAaiE/Sj1gyETwFcgnc4_ImcOj9tdjf1szFJDAACLcBGAs/s640/4.jpg" width="640" /></a></div><b><br /></b>Hope this helps.<br /><br /><br /></div> Dayalan Punniyamoorthy tag:blogger.com,1999:blog-8461568663053917221.post-6231901423022098108 Tue Aug 08 2017 06:55:00 GMT-0400 (EDT) What does EPM Automate Utility offer - Part 4 @pdayalan @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://onlyhyperion.blogspot.com/2017/08/What-does-EPM-Automate-Utility-offer-Part-4.html <div dir="ltr" style="text-align: left;" trbidi="on">In this series lets see how to read a file and strip a particular value from a column of a CSV file and use that value in the EPM automate script.<br /><br />Requirement:<br /><br />Every month the pay details are extracted from the source system and the data file is loaded into the PBCS, to get this automated the file name should be named as MMM-YY (Pay month and year format).<br /><br />Let us explore how this is achieved using the EPM &nbsp;automate.<br /><br /><b>Declaration Part of the Script:</b><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-z6PZ6WClEb8/WYmYBIJUjCI/AAAAAAAAaiM/ThCsUIIZdjYoMgoXsN39ggx9ChHE7VaBwCLcBGAs/s1600/Dec1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="366" data-original-width="919" height="254" src="https://2.bp.blogspot.com/-z6PZ6WClEb8/WYmYBIJUjCI/AAAAAAAAaiM/ThCsUIIZdjYoMgoXsN39ggx9ChHE7VaBwCLcBGAs/s640/Dec1.jpg" width="640" /></a></div><b>Preparing the File for reading the contents&nbsp;</b><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-OKr1zHcI2z0/WYmWjTsGktI/AAAAAAAAah8/2yysJ_COfJ0WFr8BkT-r19ilCGbbnTHDwCLcBGAs/s1600/2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="349" data-original-width="837" height="266" src="https://1.bp.blogspot.com/-OKr1zHcI2z0/WYmWjTsGktI/AAAAAAAAah8/2yysJ_COfJ0WFr8BkT-r19ilCGbbnTHDwCLcBGAs/s640/2.jpg" width="640" /></a></div><b><br /></b><b><br /></b><b>Extracting the Pay month &amp; year</b><br /><b><br /></b><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-wpSnZRLFqT0/WYmW8JBDrjI/AAAAAAAAaiA/tl4r5CnPi4MqXnNq_IcoFcLJ8RY484AiACLcBGAs/s1600/3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="517" data-original-width="1227" height="268" src="https://1.bp.blogspot.com/-wpSnZRLFqT0/WYmW8JBDrjI/AAAAAAAAaiA/tl4r5CnPi4MqXnNq_IcoFcLJ8RY484AiACLcBGAs/s640/3.jpg" width="640" /></a></div><b><br /></b><b>Renaming&nbsp;the file and uploading to PBCS</b><br /><b><br /></b><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-R4pfQE4NAV4/WYmXTAWSxUI/AAAAAAAAaiE/Sj1gyETwFcgnc4_ImcOj9tdjf1szFJDAACLcBGAs/s1600/4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="418" data-original-width="1146" height="232" src="https://3.bp.blogspot.com/-R4pfQE4NAV4/WYmXTAWSxUI/AAAAAAAAaiE/Sj1gyETwFcgnc4_ImcOj9tdjf1szFJDAACLcBGAs/s640/4.jpg" width="640" /></a></div><b><br /></b>Hope this helps.<br /><br /><br /></div> Dayalan Punniyamoorthy tag:blogger.com,1999:blog-8461568663053917221.post-6231901423022098108 Tue Aug 08 2017 06:55:00 GMT-0400 (EDT) Improving MySQL JNDI Connection Reliability http://www.jasonwjones.com/2017/08/improving-mysql-jndi-connection-reliability/ I blogged quite some time ago about using JNDI to configure database connections in Dodeca. As I mentioned then, JNDI can bring some useful improvements to your configuration, management, security, and administration of your environment versus how you might be configuring normal JDBC connections. To be clear, this isn&#8217;t because JNDI connections are inherently better [&#8230;] jason http://www.jasonwjones.com/?p=1864 Mon Aug 07 2017 10:07:31 GMT-0400 (EDT) Improving MySQL JNDI Connection Reliability @jwj @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://www.jasonwjones.com/2017/08/improving-mysql-jndi-connection-reliability/ I blogged quite some time ago about using JNDI to configure database connections in Dodeca. As I mentioned then, JNDI can bring some useful improvements to your configuration, management, security, and administration of your environment versus how you might be configuring normal JDBC connections. To be clear, this isn&#8217;t because JNDI connections are inherently better [&#8230;] jason http://www.jasonwjones.com/?p=1864 Mon Aug 07 2017 10:07:31 GMT-0400 (EDT) OAC Backup issue https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/ <p>I have found myself between projects for a couple of weeks which has given me a great opportunity to get hands-on with interRel&#8217;s OAC instance. It has been great to crawl around it, kick the tires, and get my hands dirty under the hood, so to speak.</p> <p>One of the things we had issues with was running a backup at the service level. In OAC, there are two types of backups &#8211; service level and application level. The service backup is a full backup of all the runtime artifacts required to restore the service, such as the WebLogic domain, service instance details, and any metadata associated with your service. Basically, it&#8217;s like a snapshot of the VM that gets saved to your cloud storage instance (one of the prerequisites of OAC).</p> <p>As I was playing with OAC and trying to figure out how to administer the product, I noticed that a monthly patch was available. Before applying the patch, I decided to take a service backup just to be safe in case anything happened during the patch.</p> <p>From the OAC dashboard, I selected Administration. Then on the backup tab, I selected Backup Now.</p> <p><img data-attachment-id="987" data-permalink="https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/oac-backup-now/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=620" data-orig-size="1023,599" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="OAC Backup Now" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=620?w=620" class="alignnone size-full wp-image-987" src="https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=620" alt="OAC Backup Now" srcset="https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=768 768w, https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg 1023w" sizes="(max-width: 620px) 100vw, 620px" /></p> <p>After 30 minutes or so, I came back to find out that my backup had failed. I attempted to run the patch anyway, but it does a backup first as well and so it failed again.</p> <p>Eventually, I ended up submitting an SR with Oracle for help. Within about an hour or so, Oracle Support determined that it was likely that when we created our OAC database cloud instance that the USERS tablespace was not created.</p> <p>My friend and co-worker, Wayne Van Sluys (<a href="http://beyond-just-data.blogspot.com/" rel="nofollow">http://beyond-just-data.blogspot.com/</a>), ran into this issue at one of our OAC clients as well. Wayne sent over the information that I needed to get connected to our DBaaS instance via Oracle SQL Developer.</p> <p>When you create an OAC service, one of the prerequisites is setting up the DBaaS service. The connection information you will need is accessible from the Database Cloud Service console. The Public IP address and connection string on the Service Overview page gives you what you need to know along with your &#8220;sys&#8221; schema name and password.</p> <p><img data-attachment-id="1003" data-permalink="https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/dbaas-connection-info/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=620" data-orig-size="1082,568" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="DBaaS connection info" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=620?w=620" class="alignnone size-full wp-image-1003" src="https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=620" alt="DBaaS connection info" srcset="https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=768 768w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=1024 1024w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg 1082w" sizes="(max-width: 620px) 100vw, 620px" /></p> <p>In addition to this information, you also need to edit the Access Rules for the DBCS service to allow connections from outside on port 1521. I enabled this Access Rule for the service while I made the change.</p> <p><img data-attachment-id="1005" data-permalink="https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/dbaas-access-rules/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=620" data-orig-size="1028,623" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="DBaaS access rules" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=620?w=620" class="alignnone size-full wp-image-1005" src="https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=620" alt="DBaaS access rules" srcset="https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=768 768w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=1024 1024w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg 1028w" sizes="(max-width: 620px) 100vw, 620px" /></p> <p>In SQL Developer, I was then able to set up the connection to our DBCS instance.</p> <p><img data-attachment-id="1010" data-permalink="https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/sql-developer-connection/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=620" data-orig-size="736,383" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="SQL Developer connection" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=620?w=620" class="alignnone size-full wp-image-1010" src="https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=620" alt="SQL Developer connection" srcset="https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg 736w" sizes="(max-width: 620px) 100vw, 620px" /></p> <p>With the connection made, I could then submit the SQL code to add the USERS tablespace using the &#8220;CREATE TABLESPACE&#8221; command. I will leave it to the reader to consult a DBA on the command and what options you should supply with the command.</p> <p>After creating the USERS tablespace, the backups are now running successfully and I was able to apply the latest patch to our OAC environment.</p> <p><img data-attachment-id="1019" data-permalink="https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/success/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=620" data-orig-size="1021,672" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Success" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=620?w=620" class="alignnone size-full wp-image-1019" src="https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=620" alt="Success" srcset="https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=768 768w, https://cubistramblings.files.wordpress.com/2017/08/success.jpg 1021w" sizes="(max-width: 620px) 100vw, 620px" /></p> <p>Success!</p><br /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cubistramblings.wordpress.com/968/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cubistramblings.wordpress.com/968/" /></a> <img alt="" border="0" src="https://pixel.wp.com/b.gif?host=cubistramblings.wordpress.com&#038;blog=34122718&#038;post=968&#038;subd=cubistramblings&#038;ref=&#038;feed=1" width="1" height="1" /> Robert Gideon http://cubistramblings.wordpress.com/?p=968 Mon Aug 07 2017 10:00:05 GMT-0400 (EDT) OAC Backup issue @rjgideon @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/ <p>I have found myself between projects for a couple of weeks which has given me a great opportunity to get hands-on with interRel&#8217;s OAC instance. It has been great to crawl around it, kick the tires, and get my hands dirty under the hood, so to speak.</p> <p>One of the things we had issues with was running a backup at the service level. In OAC, there are two types of backups &#8211; service level and application level. The service backup is a full backup of all the runtime artifacts required to restore the service, such as the WebLogic domain, service instance details, and any metadata associated with your service. Basically, it&#8217;s like a snapshot of the VM that gets saved to your cloud storage instance (one of the prerequisites of OAC).</p> <p>As I was playing with OAC and trying to figure out how to administer the product, I noticed that a monthly patch was available. Before applying the patch, I decided to take a service backup just to be safe in case anything happened during the patch.</p> <p>From the OAC dashboard, I selected Administration. Then on the backup tab, I selected Backup Now.</p> <p><img data-attachment-id="987" data-permalink="https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/oac-backup-now/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=620" data-orig-size="1023,599" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="OAC Backup Now" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=620?w=620" class="alignnone size-full wp-image-987" src="https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=620" alt="OAC Backup Now" srcset="https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg?w=768 768w, https://cubistramblings.files.wordpress.com/2017/08/oac-backup-now.jpg 1023w" sizes="(max-width: 620px) 100vw, 620px" /></p> <p>After 30 minutes or so, I came back to find out that my backup had failed. I attempted to run the patch anyway, but it does a backup first as well and so it failed again.</p> <p>Eventually, I ended up submitting an SR with Oracle for help. Within about an hour or so, Oracle Support determined that it was likely that when we created our OAC database cloud instance that the USERS tablespace was not created.</p> <p>My friend and co-worker, Wayne Van Sluys (<a href="http://beyond-just-data.blogspot.com/" rel="nofollow">http://beyond-just-data.blogspot.com/</a>), ran into this issue at one of our OAC clients as well. Wayne sent over the information that I needed to get connected to our DBaaS instance via Oracle SQL Developer.</p> <p>When you create an OAC service, one of the prerequisites is setting up the DBaaS service. The connection information you will need is accessible from the Database Cloud Service console. The Public IP address and connection string on the Service Overview page gives you what you need to know along with your &#8220;sys&#8221; schema name and password.</p> <p><img data-attachment-id="1003" data-permalink="https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/dbaas-connection-info/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=620" data-orig-size="1082,568" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="DBaaS connection info" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=620?w=620" class="alignnone size-full wp-image-1003" src="https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=620" alt="DBaaS connection info" srcset="https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=768 768w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg?w=1024 1024w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-connection-info.jpg 1082w" sizes="(max-width: 620px) 100vw, 620px" /></p> <p>In addition to this information, you also need to edit the Access Rules for the DBCS service to allow connections from outside on port 1521. I enabled this Access Rule for the service while I made the change.</p> <p><img data-attachment-id="1005" data-permalink="https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/dbaas-access-rules/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=620" data-orig-size="1028,623" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="DBaaS access rules" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=620?w=620" class="alignnone size-full wp-image-1005" src="https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=620" alt="DBaaS access rules" srcset="https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=768 768w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg?w=1024 1024w, https://cubistramblings.files.wordpress.com/2017/08/dbaas-access-rules.jpg 1028w" sizes="(max-width: 620px) 100vw, 620px" /></p> <p>In SQL Developer, I was then able to set up the connection to our DBCS instance.</p> <p><img data-attachment-id="1010" data-permalink="https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/sql-developer-connection/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=620" data-orig-size="736,383" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="SQL Developer connection" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=620?w=620" class="alignnone size-full wp-image-1010" src="https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=620" alt="SQL Developer connection" srcset="https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/sql-developer-connection.jpg 736w" sizes="(max-width: 620px) 100vw, 620px" /></p> <p>With the connection made, I could then submit the SQL code to add the USERS tablespace using the &#8220;CREATE TABLESPACE&#8221; command. I will leave it to the reader to consult a DBA on the command and what options you should supply with the command.</p> <p>After creating the USERS tablespace, the backups are now running successfully and I was able to apply the latest patch to our OAC environment.</p> <p><img data-attachment-id="1019" data-permalink="https://cubistramblings.wordpress.com/2017/08/07/oac-backup-issue/success/" data-orig-file="https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=620" data-orig-size="1021,672" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Success" data-image-description="" data-medium-file="https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=620?w=300" data-large-file="https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=620?w=620" class="alignnone size-full wp-image-1019" src="https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=620" alt="Success" srcset="https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=620 620w, https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=150 150w, https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=300 300w, https://cubistramblings.files.wordpress.com/2017/08/success.jpg?w=768 768w, https://cubistramblings.files.wordpress.com/2017/08/success.jpg 1021w" sizes="(max-width: 620px) 100vw, 620px" /></p> <p>Success!</p><br /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cubistramblings.wordpress.com/968/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cubistramblings.wordpress.com/968/" /></a> <img alt="" border="0" src="https://pixel.wp.com/b.gif?host=cubistramblings.wordpress.com&#038;blog=34122718&#038;post=968&#038;subd=cubistramblings&#038;ref=&#038;feed=1" width="1" height="1" /> Robert Gideon http://cubistramblings.wordpress.com/?p=968 Mon Aug 07 2017 10:00:05 GMT-0400 (EDT) Kscope17 Gary Interviews Gary About "The SV++ Utility Ribbon" http://adashek-epm.blogspot.com/2017/08/kscope17-gary-interviews-gary-about-sv.html <span style="font-family: verdana, sans-serif;">I still enjoy being able to look back at how much Kscope each year has to offer!</span><br /><span style="font-family: verdana, sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;"></span><br /><span style="font-family: verdana, sans-serif;">This year I was asked to be interviewed at the Social Media Lounge by none other then Oracle ACE Gary Crisci, ODTUG Board Treasurer. And at the time of the interview I was not, but while at Kscope17 in San Antonio I was honored to be accepted into the Oracle ACE program! I too also volunteer with ODTUG as the EPM Community Leader. Gary C. and I talk about the Smart View ribbon utility SV++.</span><br /><ul><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Why the ribbon/toolbar came to be</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Where did it start from</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">What are a few features, functions, etc.</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">How can you build your own?</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Or just download a fully developed solution <a href="http://adashek-epm.blogspot.com/p/blog-page_24.html" target="_blank">here</a></span></li></ul><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span> <a href="https://youtu.be/B8v8KMBN8Dk" target="_blank"><span style="font-family: &quot;verdana&quot; , sans-serif;">YouTube video</span></a><br /><span style="font-family: &quot;verdana&quot; , sans-serif;">https://youtu.be/B8v8KMBN8Dk</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;">....</span><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-ZW9-Hhg5PZ4/WYTLJ0drLtI/AAAAAAAAB10/jf36VnfB-KoCVdKfuPNhp9kRb78Kz8FKQCLcBGAs/s1600/Screen%2BShot%2B2017-08-04%2Bat%2B3.24.28%2BPM.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><span style="font-family: &quot;verdana&quot; , sans-serif;"><img border="0" data-original-height="838" data-original-width="1600" height="335" src="https://4.bp.blogspot.com/-ZW9-Hhg5PZ4/WYTLJ0drLtI/AAAAAAAAB10/jf36VnfB-KoCVdKfuPNhp9kRb78Kz8FKQCLcBGAs/s640/Screen%2BShot%2B2017-08-04%2Bat%2B3.24.28%2BPM.png" width="640" /></span></a><a href="https://4.bp.blogspot.com/-ZW9-Hhg5PZ4/WYTLJ0drLtI/AAAAAAAAB10/jf36VnfB-KoCVdKfuPNhp9kRb78Kz8FKQCLcBGAs/s1600/Screen%2BShot%2B2017-08-04%2Bat%2B3.24.28%2BPM.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><span style="font-family: &quot;verdana&quot; , sans-serif;">....</span></a></div> G Adashek tag:blogger.com,1999:blog-1699540956788037380.post-6752676620320663510 Fri Aug 04 2017 15:40:00 GMT-0400 (EDT) Kscope17 Gary Interviews Gary About "The SV++ Utility Ribbon" @gadashek @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://adashek-epm.blogspot.com/2017/08/kscope17-gary-interviews-gary-about-sv.html <span style="font-family: verdana, sans-serif;">I still enjoy being able to look back at how much Kscope each year has to offer!</span><br /><span style="font-family: verdana, sans-serif;"><br /></span><span style="font-family: &quot;verdana&quot; , sans-serif;"></span><br /><span style="font-family: verdana, sans-serif;">This year I was asked to be interviewed at the Social Media Lounge by none other then Oracle ACE Gary Crisci, ODTUG Board Treasurer. And at the time of the interview I was not, but while at Kscope17 in San Antonio I was honored to be accepted into the Oracle ACE program! I too also volunteer with ODTUG as the EPM Community Leader. Gary C. and I talk about the Smart View ribbon utility SV++.</span><br /><ul><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Why the ribbon/toolbar came to be</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Where did it start from</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">What are a few features, functions, etc.</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">How can you build your own?</span></li><li><span style="font-family: &quot;verdana&quot; , sans-serif;">Or just download a fully developed solution <a href="http://adashek-epm.blogspot.com/p/blog-page_24.html" target="_blank">here</a></span></li></ul><br /><span style="font-family: &quot;verdana&quot; , sans-serif;"><br /></span> <a href="https://youtu.be/B8v8KMBN8Dk" target="_blank"><span style="font-family: &quot;verdana&quot; , sans-serif;">YouTube video</span></a><br /><span style="font-family: &quot;verdana&quot; , sans-serif;">https://youtu.be/B8v8KMBN8Dk</span><br /><span style="font-family: &quot;verdana&quot; , sans-serif;">....</span><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-ZW9-Hhg5PZ4/WYTLJ0drLtI/AAAAAAAAB10/jf36VnfB-KoCVdKfuPNhp9kRb78Kz8FKQCLcBGAs/s1600/Screen%2BShot%2B2017-08-04%2Bat%2B3.24.28%2BPM.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><span style="font-family: &quot;verdana&quot; , sans-serif;"><img border="0" data-original-height="838" data-original-width="1600" height="335" src="https://4.bp.blogspot.com/-ZW9-Hhg5PZ4/WYTLJ0drLtI/AAAAAAAAB10/jf36VnfB-KoCVdKfuPNhp9kRb78Kz8FKQCLcBGAs/s640/Screen%2BShot%2B2017-08-04%2Bat%2B3.24.28%2BPM.png" width="640" /></span></a><a href="https://4.bp.blogspot.com/-ZW9-Hhg5PZ4/WYTLJ0drLtI/AAAAAAAAB10/jf36VnfB-KoCVdKfuPNhp9kRb78Kz8FKQCLcBGAs/s1600/Screen%2BShot%2B2017-08-04%2Bat%2B3.24.28%2BPM.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><span style="font-family: &quot;verdana&quot; , sans-serif;">....</span></a></div> G Adashek tag:blogger.com,1999:blog-1699540956788037380.post-6752676620320663510 Fri Aug 04 2017 15:40:00 GMT-0400 (EDT) DRG – The Key to Effective Master Data Management in DRM @TopDownInc https://blog.topdownconsulting.com/2017/08/1837/ <p>Data Governance continues to be a big topic. To understand <a href="https://www.topdownconsulting.com/epm-solutions/governance-integration/" target="_blank" rel="noopener noreferrer">Data Relationship Governance</a>, you need to understand what the need is. When new accounts, cost centers, entities, or other master data needs to be added or modified, typically it will need to be added to multiple systems. Regardless of the company size, at some point, the growing organization decides to implement workflow in order to capture the changes that you need to make to the master data. This could be as simple as an email chain that is initiated by filling out a form and sent to various departments for their fortification and approval.  Once approved, the individual administrators can make these changes to the multiple applications, or these changes could be made in <a href="https://www.topdownconsulting.com/resources/by-topic/data-relationship-management/" target="_blank" rel="noopener noreferrer">DRM</a> and then sent downstream to the subscribing applications. This is where <a href="https://www.topdownconsulting.com/2014/04/data-relationship-governance-drg-workflow/">Data Relationship Governance (DRG)</a> comes in.</p> <p>Previously, companies have integrated their workflow tools into DRM using the Application Programming Interface (API). By writing code to integrate with DRM, the customers could capture additions and changes in one system and track and log these changes.  Emails could be sent from the workflow tool to indicate to users that they have a new request, or to remind users that the deadline was coming up.</p> <p>Data Relationship Governance is native to Data Relationship Management with versions later than 11.1.2.3. It is a tool that allows you to do workflow in order to manage master data in DRM. It uses a web interface that allows users to submit a request to make additions, deletions, or changes to the current structures in DRM.PRE-DRG it would take months to create workflow processes for DRM.  With DRG, you can have a workflow for DRM within a couple of hours.  The configuration of DRG is relatively simple, and DRG should be able to accomplish the majority of your workflow needs.</p> <ul> <li>Workflow models in DRG are used to control user tasks, stages of workflow, and types of data involved to govern a set of changes to data.</li> <li>Workflow requests in DRG are used to initiate changes or corrections to be completed, approved, enriched, and committed by other users using workflows.</li> <li>Worklists are a central location for interacting with the requests. From the worklist, governance users may submit change requests or review and participate in requests assigned to their user group.</li> <li>Alerts and email notifications have been added to DRM in order to notify the governance users and data managers about requests that they are associated with.</li> <li>Workflow paths in DRG identify the stages of workflow to be completed for a request, the active stage for the request, the completion status of previous stages, and the approval count for the active stage. The workflow path enables participating users to understand how long a request may take, how many approvals may be involved, and where a request is positioned in the overall approval process.</li> <li>Workflow tags allow governance users to assign a due date for completion of a request and to mark the request as urgent.</li> </ul> <p>Find out more about DRG in my webcast, <a href="https://www.topdownconsulting.com/2017/08/drg-creating-workflows-drm/">DRG – Creating Workflows in DRM</a>.</p> <p>We’ll look at workflow models, requests, paths, tags, and worklists, tasks, models, filters and users. You will learn how to create models and tasks, build workflow objects, auto number your new accounts and create validations on the workflow, assign security to the users and to the hierarchies, separate duties and do conditional workflows, filter nodes, and more…</p> <p>Next, we’ll take what you’ve learned and apply it to real-world scenarios. Then I’ll leave you with tips, tricks, and best practices for working collaboratively with DRG to make sure all users have the necessary change management and data quality remediation workflows to do effectively do their jobs.</p> <p>NOTE: Attendees should have a good understanding of DRM. You should understand what workflow is and how it is used.</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>The post <a rel="nofollow" href="https://blog.topdownconsulting.com/2017/08/1837/">DRG – The Key to Effective Master Data Management in DRM</a> appeared first on <a rel="nofollow" href="https://blog.topdownconsulting.com">TopDown Consulting Blog</a>.</p> Steve Davis https://blog.topdownconsulting.com/?p=1837 Thu Aug 03 2017 21:16:50 GMT-0400 (EDT) DRG – The Key to Effective Master Data Management in DRM https://blog.topdownconsulting.com/2017/08/1837/ <p>Data Governance continues to be a big topic. To understand <a href="https://www.topdownconsulting.com/epm-solutions/governance-integration/" target="_blank" rel="noopener noreferrer">Data Relationship Governance</a>, you need to understand what the need is. When new accounts, cost centers, entities, or other master data needs to be added or modified, typically it will need to be added to multiple systems. Regardless of the company size, at some point, the growing organization decides to implement workflow in order to capture the changes that you need to make to the master data. This could be as simple as an email chain that is initiated by filling out a form and sent to various departments for their fortification and approval.  Once approved, the individual administrators can make these changes to the multiple applications, or these changes could be made in <a href="https://www.topdownconsulting.com/resources/by-topic/data-relationship-management/" target="_blank" rel="noopener noreferrer">DRM</a> and then sent downstream to the subscribing applications. This is where <a href="https://www.topdownconsulting.com/2014/04/data-relationship-governance-drg-workflow/">Data Relationship Governance (DRG)</a> comes in.</p> <p>Previously, companies have integrated their workflow tools into DRM using the Application Programming Interface (API). By writing code to integrate with DRM, the customers could capture additions and changes in one system and track and log these changes.  Emails could be sent from the workflow tool to indicate to users that they have a new request, or to remind users that the deadline was coming up.</p> <p>Data Relationship Governance is native to Data Relationship Management with versions later than 11.1.2.3. It is a tool that allows you to do workflow in order to manage master data in DRM. It uses a web interface that allows users to submit a request to make additions, deletions, or changes to the current structures in DRM.PRE-DRG it would take months to create workflow processes for DRM.  With DRG, you can have a workflow for DRM within a couple of hours.  The configuration of DRG is relatively simple, and DRG should be able to accomplish the majority of your workflow needs.</p> <ul> <li>Workflow models in DRG are used to control user tasks, stages of workflow, and types of data involved to govern a set of changes to data.</li> <li>Workflow requests in DRG are used to initiate changes or corrections to be completed, approved, enriched, and committed by other users using workflows.</li> <li>Worklists are a central location for interacting with the requests. From the worklist, governance users may submit change requests or review and participate in requests assigned to their user group.</li> <li>Alerts and email notifications have been added to DRM in order to notify the governance users and data managers about requests that they are associated with.</li> <li>Workflow paths in DRG identify the stages of workflow to be completed for a request, the active stage for the request, the completion status of previous stages, and the approval count for the active stage. The workflow path enables participating users to understand how long a request may take, how many approvals may be involved, and where a request is positioned in the overall approval process.</li> <li>Workflow tags allow governance users to assign a due date for completion of a request and to mark the request as urgent.</li> </ul> <p>Find out more about DRG in my webcast, <a href="https://www.topdownconsulting.com/2017/08/drg-creating-workflows-drm/">DRG – Creating Workflows in DRM</a>.</p> <p>We’ll look at workflow models, requests, paths, tags, and worklists, tasks, models, filters and users. You will learn how to create models and tasks, build workflow objects, auto number your new accounts and create validations on the workflow, assign security to the users and to the hierarchies, separate duties and do conditional workflows, filter nodes, and more…</p> <p>Next, we’ll take what you’ve learned and apply it to real-world scenarios. Then I’ll leave you with tips, tricks, and best practices for working collaboratively with DRG to make sure all users have the necessary change management and data quality remediation workflows to do effectively do their jobs.</p> <p>NOTE: Attendees should have a good understanding of DRM. You should understand what workflow is and how it is used.</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>The post <a rel="nofollow" href="https://blog.topdownconsulting.com/2017/08/1837/">DRG – The Key to Effective Master Data Management in DRM</a> appeared first on <a rel="nofollow" href="https://blog.topdownconsulting.com">TopDown Consulting Blog</a>.</p> Steve Davis https://blog.topdownconsulting.com/?p=1837 Thu Aug 03 2017 21:16:50 GMT-0400 (EDT) Dodeca Zebra Striping with WBS Example http://www.jasonwjones.com/2017/08/dodeca-zebra-striping-with-wbs-example/ I wanted to punch up a Dodeca view the other day by putting a little zebra striping on some relational data. Although having built-in support for this is on my wishlist, for now a simple workbook script (WBS) gets the job done. This is also alternatively called &#8220;greenbar&#8221;&#8230; depending on what decade you were born [&#8230;] jason http://www.jasonwjones.com/?p=1862 Thu Aug 03 2017 19:10:57 GMT-0400 (EDT) Dodeca Zebra Striping with WBS Example @jwj @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://www.jasonwjones.com/2017/08/dodeca-zebra-striping-with-wbs-example/ I wanted to punch up a Dodeca view the other day by putting a little zebra striping on some relational data. Although having built-in support for this is on my wishlist, for now a simple workbook script (WBS) gets the job done. This is also alternatively called &#8220;greenbar&#8221;&#8230; depending on what decade you were born [&#8230;] jason http://www.jasonwjones.com/?p=1862 Thu Aug 03 2017 19:10:57 GMT-0400 (EDT) Weekly Offenders – Week Ending 8/3/2017? https://www.epmmarshall.com/weekly-offenders-week-ending-832017/ <h3>Introduction to Weekly Offenders</h3> <p>This week was so light, I thought I would wait a few days to see if we might get a few more contributions.  We finally had a few more posts, so here goes!</p> <p><a href="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?ssl=1" data-pp="lightbox[1631]" class="autolink lightbox " ><img src="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?resize=800%2C207&#038;ssl=1" alt="Weekly Offenders - Kscope17" data-recalc-dims="1" /></a></p> <h3><a href="http://camerons-blog-for-essbase-hackers.blogspot.com/">Cameron&#8217;s Blog for Essbase Hackers</a></h3> <p>Cameron has a <a href="http://camerons-blog-for-essbase-hackers.blogspot.com/2017/08/drill-to-detail-ep37-how-essbase-won.html"><strong>post about his guest post</strong></a> on Mark Rittman&#8217;s site.  Check out the actual post <a href="https://www.drilltodetail.com/podcast/2017/8/1/drill-to-detail-ep37-how-essbase-won-the-olap-wars-with-special-guest-cameron-lackpour"><strong>here</strong></a>.</p> <h3><a href="https://epmjunkie.com/">EPM Junkie</a></h3> <p>Keith has a very interesting post on installing the <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/"><strong>EPM stack on Linux with SQL Server</strong></a>&#8230;for Linux.  What?!</p> <h3><a href="http://essbasedownunder.com/">Essbase Down Under</a></h3> <p>Peter continues where he left off with the <a href="http://essbasedownunder.com/2017/07/resting-around-with-pbcs-2-still-restless/"><strong>REST API for PBCS</strong></a>.</p> <h3><a href="http://glennschwartzbergs-essbase-blog.blogspot.com/">Glenn Schwartzberg&#8217;s Essbase Blog</a></h3> <p>Glenn takes on the question of <a href="http://glennschwartzbergs-essbase-blog.blogspot.com/2017/07/the-hidden-dimension.html"><strong>commentary in Essbase</strong></a>.  He uses Linked Reporting Objects in OAC.  I find it extremely interesting that OAC supports LRO&#8217;s as I thought they were being depricated.</p> <h3><a href="http://www.jasonwjones.com/">Jason&#8217;s Hyperion Blog</a></h3> <p>Jason gives us a post about <a href="http://www.jasonwjones.com/2017/07/interesting-time-period-conversion-with-drillbridgepbcs/"><strong>time period conversion using Drillbridge</strong></a>.  I need to get back to doing some Drillbridge blog posts&#8230;</p> <h3><a href="http://john-goodwin.blogspot.com/">More to Life&#8230;</a></h3> <p>John Goodwin shows us how to create a <a href="http://john-goodwin.blogspot.com/2017/08/fdmee-custom-scheduler.html"><strong>custom scheduler for FDMEE</strong></a>.  This should help with some of the shortcomings of the stock solution.</p> <h3><a href="https://blogs.oracle.com/proactivesupportepm/">Oracle Business Analytics &#8211; Proactive Support Blog</a></h3> <p>The Proactive Support Blog has posted a variety of patches, mostly for cloud services:</p> <ul> <li><a href="https://blogs.oracle.com/proactivesupportepm/arcs_0817"><strong>ARCS &#8211; August 2017</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/eprcs_0817"><strong>EPRCS &#8211; August 2017</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/fccs_0817"><strong>FCCS &#8211; August 2017</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/pbcs_0817"><strong>PBCS &#8211; August 2017</strong></a></li> <li><strong><a href="https://blogs.oracle.com/proactivesupportepm/pcmcs_0817">PCMCS &#8211; August 2017</a></strong></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/trcs_0817"><strong>TRCS &#8211; August 2017</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/psu_essbase_11124019"><strong>Essbase 11.1.2.4.019</strong></a></li> </ul> <h3><a href="http://theunlockedcube.com/">The Unlocked Cube</a></h3> <p>Vijay has a post showing us how to <a href="http://theunlockedcube.com/oracle/odi/the-odi-agent-restarts-and-groovy/"><strong>restart the ODI Standalone Agent</strong></a> with a Groovy script.  Cool stuff.  Pete also contributes to the same site and has a post on <a href="http://theunlockedcube.com/oracle/drm/fun-with-oracle-drm-and-javascript/"><strong>JavaScript and DRM</strong></a>.</p> <h3>Be On the Lookout!</h3> <p>That&#8217;s it for this week!  Be on the lookout for more great EPM Blog content next week!</p> <p>The post <a rel="nofollow" href="https://www.epmmarshall.com/weekly-offenders-week-ending-832017/">Weekly Offenders &#8211; Week Ending 8/3/2017?</a> appeared first on <a rel="nofollow" href="https://www.epmmarshall.com">EPM Marshall</a>.</p> Brian Marshall https://www.epmmarshall.com/?p=1631 Thu Aug 03 2017 18:26:24 GMT-0400 (EDT) Weekly Offenders – Week Ending 8/3/2017? @hyperionepmcom @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs https://www.epmmarshall.com/weekly-offenders-week-ending-832017/ <h3>Introduction to Weekly Offenders</h3> <p>This week was so light, I thought I would wait a few days to see if we might get a few more contributions.  We finally had a few more posts, so here goes!</p> <p><a href="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?ssl=1" data-pp="lightbox[1631]" class="autolink lightbox " ><img src="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?resize=800%2C207&#038;ssl=1" alt="Weekly Offenders - Kscope17" data-recalc-dims="1" /></a></p> <h3><a href="http://camerons-blog-for-essbase-hackers.blogspot.com/">Cameron&#8217;s Blog for Essbase Hackers</a></h3> <p>Cameron has a <a href="http://camerons-blog-for-essbase-hackers.blogspot.com/2017/08/drill-to-detail-ep37-how-essbase-won.html"><strong>post about his guest post</strong></a> on Mark Rittman&#8217;s site.  Check out the actual post <a href="https://www.drilltodetail.com/podcast/2017/8/1/drill-to-detail-ep37-how-essbase-won-the-olap-wars-with-special-guest-cameron-lackpour"><strong>here</strong></a>.</p> <h3><a href="https://epmjunkie.com/">EPM Junkie</a></h3> <p>Keith has a very interesting post on installing the <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/"><strong>EPM stack on Linux with SQL Server</strong></a>&#8230;for Linux.  What?!</p> <h3><a href="http://essbasedownunder.com/">Essbase Down Under</a></h3> <p>Peter continues where he left off with the <a href="http://essbasedownunder.com/2017/07/resting-around-with-pbcs-2-still-restless/"><strong>REST API for PBCS</strong></a>.</p> <h3><a href="http://glennschwartzbergs-essbase-blog.blogspot.com/">Glenn Schwartzberg&#8217;s Essbase Blog</a></h3> <p>Glenn takes on the question of <a href="http://glennschwartzbergs-essbase-blog.blogspot.com/2017/07/the-hidden-dimension.html"><strong>commentary in Essbase</strong></a>.  He uses Linked Reporting Objects in OAC.  I find it extremely interesting that OAC supports LRO&#8217;s as I thought they were being depricated.</p> <h3><a href="http://www.jasonwjones.com/">Jason&#8217;s Hyperion Blog</a></h3> <p>Jason gives us a post about <a href="http://www.jasonwjones.com/2017/07/interesting-time-period-conversion-with-drillbridgepbcs/"><strong>time period conversion using Drillbridge</strong></a>.  I need to get back to doing some Drillbridge blog posts&#8230;</p> <h3><a href="http://john-goodwin.blogspot.com/">More to Life&#8230;</a></h3> <p>John Goodwin shows us how to create a <a href="http://john-goodwin.blogspot.com/2017/08/fdmee-custom-scheduler.html"><strong>custom scheduler for FDMEE</strong></a>.  This should help with some of the shortcomings of the stock solution.</p> <h3><a href="https://blogs.oracle.com/proactivesupportepm/">Oracle Business Analytics &#8211; Proactive Support Blog</a></h3> <p>The Proactive Support Blog has posted a variety of patches, mostly for cloud services:</p> <ul> <li><a href="https://blogs.oracle.com/proactivesupportepm/arcs_0817"><strong>ARCS &#8211; August 2017</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/eprcs_0817"><strong>EPRCS &#8211; August 2017</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/fccs_0817"><strong>FCCS &#8211; August 2017</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/pbcs_0817"><strong>PBCS &#8211; August 2017</strong></a></li> <li><strong><a href="https://blogs.oracle.com/proactivesupportepm/pcmcs_0817">PCMCS &#8211; August 2017</a></strong></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/trcs_0817"><strong>TRCS &#8211; August 2017</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/psu_essbase_11124019"><strong>Essbase 11.1.2.4.019</strong></a></li> </ul> <h3><a href="http://theunlockedcube.com/">The Unlocked Cube</a></h3> <p>Vijay has a post showing us how to <a href="http://theunlockedcube.com/oracle/odi/the-odi-agent-restarts-and-groovy/"><strong>restart the ODI Standalone Agent</strong></a> with a Groovy script.  Cool stuff.  Pete also contributes to the same site and has a post on <a href="http://theunlockedcube.com/oracle/drm/fun-with-oracle-drm-and-javascript/"><strong>JavaScript and DRM</strong></a>.</p> <h3>Be On the Lookout!</h3> <p>That&#8217;s it for this week!  Be on the lookout for more great EPM Blog content next week!</p> <p>The post <a rel="nofollow" href="https://www.epmmarshall.com/weekly-offenders-week-ending-832017/">Weekly Offenders &#8211; Week Ending 8/3/2017?</a> appeared first on <a rel="nofollow" href="https://www.epmmarshall.com">EPM Marshall</a>.</p> Brian Marshall https://www.epmmarshall.com/?p=1631 Thu Aug 03 2017 18:26:24 GMT-0400 (EDT) ODTUG Kscope17 Social Media Lounge Interviews @odtug http://www.kscope18.odtug.com/p/bl/et/blogaid=740&source=1 ODTUG Kscope17 Social Media Lounge interview videos are now live on the ODTUG YouTube! Read the short recaps and watch the interviews with ODTUG Kscope17 Conference Committee Members, ODTUG Board Members, Oracle Professionals, Oracle ACEs, ACEd, ACE Associates, and ACE Alumni. ODTUG http://www.kscope18.odtug.com/p/bl/et/blogaid=740&source=1 Thu Aug 03 2017 14:07:33 GMT-0400 (EDT) ODTUG Kscope17 Social Media Lounge Interviews http://www.odtug.com/p/bl/et/blogaid=740&source=1 ODTUG Kscope17 Social Media Lounge interview videos are now live on the ODTUG YouTube! Read the short recaps and watch the interviews with ODTUG Kscope17 Conference Committee Members, ODTUG Board Members, Oracle Professionals, Oracle ACEs, ACEd, ACE Associates, and ACE Alumni. ODTUG http://www.odtug.com/p/bl/et/blogaid=740&source=1 Thu Aug 03 2017 14:07:33 GMT-0400 (EDT) ODTUG Kscope17 Social Media Lounge Interviews @odtug @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://www.odtug.com/p/bl/et/blogaid=740&source=1 ODTUG Kscope17 Social Media Lounge interview videos are now live on the ODTUG YouTube! Read the short recaps and watch the interviews with ODTUG Kscope17 Conference Committee Members, ODTUG Board Members, Oracle Professionals, Oracle ACEs, ACEd, ACE Associates, and ACE Alumni. ODTUG http://www.odtug.com/p/bl/et/blogaid=740&source=1 Thu Aug 03 2017 14:07:33 GMT-0400 (EDT) ODTUG Kscope17 Social Media Lounge Interviews http://www.kscope18.odtug.com/p/bl/et/blogaid=740&source=1 ODTUG Kscope17 Social Media Lounge interview videos are now live on the ODTUG YouTube! Read the short recaps and watch the interviews with ODTUG Kscope17 Conference Committee Members, ODTUG Board Members, Oracle Professionals, Oracle ACEs, ACEd, ACE Associates, and ACE Alumni. ODTUG http://www.kscope18.odtug.com/p/bl/et/blogaid=740&source=1 Thu Aug 03 2017 14:07:33 GMT-0400 (EDT) Drill to Detail Ep.37 'How Essbase Won the OLAP Wars' With Special Guest Cameron Lackpour http://feedproxy.google.com/~r/CameronsBlogForEssbaseHackers/~3/2VHlsXRafMk/drill-to-detail-ep37-how-essbase-won.html <h1 dir="ltr" id="docs-internal-guid-8d1caec4-a887-9f26-8d72-ed5553d29be4" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 24pt;"><a href="https://www.drilltodetail.com/" style="text-decoration: none;"><span style="background-color: transparent; color: blue; font-family: Cambria; font-size: 14pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: underline; vertical-align: baseline;">Drill to Detail</span></a><span style="background-color: transparent; color: #365f91; font-family: Cambria; font-size: 14pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline;">, just what is it?</span></h1><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">It’s </span><a href="https://www.linkedin.com/in/markrittman/" style="text-decoration: none;"><span style="background-color: transparent; color: blue; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline;">Mark Rittman’s</span></a><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;"> take on (I am just going to crib directly from </span><a href="https://www.drilltodetail.com/podcast" style="text-decoration: none;"><span style="background-color: transparent; color: blue; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline;">the site</span></a><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">) on the business and strategy of analytics, big data, and distributed processing in the cloud in the form of podcast interviews with the geeks (I may have added this descriptor) who make it all happen. &nbsp;I particularly like the way his interviews and interviewees contextualize technologies within markets, companies, and across history. &nbsp;There’s nothing else like it.</span></div><br /><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">If this sounds overly ambitious, know that the execution exceeds the vision. &nbsp;Why? &nbsp;Because Mark interviews the Great and the Good of our (and many other) professional spaces to get their take on technology, products, markets, trends, and futures. &nbsp;Some of the luminaries most of us should recognize are Stewart Bryson, Dan McClary, Graham Spicer, Robin Moffatt, Vasu Murthy, Chris Webb, Gwen Shapira, Adrian Ward, and Donald Farmer who speak on tools and subjects as diverse as Gartner groupings, Big Data, Kudu, Hadoop, various forms of BI, Cloud (of course), DI, OLAP, and now… Essbase.</span></div><h1 dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 24pt;"><span style="background-color: transparent; color: #365f91; font-family: Cambria; font-size: 14pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline;">Yeah, Essbase. &nbsp;And yeah, </span><span style="background-color: transparent; color: #365f91; font-family: Cambria; font-size: 14pt; font-style: italic; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline;">yr. obt. svt.</span><span style="background-color: transparent; color: #365f91; font-family: Cambria; font-size: 14pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline;"> &nbsp;But don’t let that last bit put you off. </span></h1><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">I could write all kinds of (un)funny jokes about how Mark made some sort of mind numbing mistake bringing me on (and would likely get many to agree) and could write all kinds of quite truthful remarks about how many others could have done better. &nbsp;Instead I’ll just shut up for once and be grateful. &nbsp;</span></div><br /><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">You can subscribe to the series on iTunes or listen in via your browser:</span></div><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><a href="https://www.drilltodetail.com/podcast/2017/8/1/drill-to-detail-ep37-how-essbase-won-the-olap-wars-with-special-guest-cameron-lackpour" style="text-decoration: none;"><span style="background-color: transparent; color: blue; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline;">https://www.drilltodetail.com/podcast/2017/8/1/drill-to-detail-ep37-how-essbase-won-the-olap-wars-with-special-guest-cameron-lackpour</span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;"><br class="kix-line-break" /></span></a></div><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">In any case, I am beyond flattered to have been included in Mark’s program and I hope I do the subject justice. &nbsp;Listen in, I think you’ll enjoy it. &nbsp;Listen to the rest of the Drill to Detail series as well – it’s eye opening.</span></div><br /><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">Be seeing you. </span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;"><br class="kix-line-break" /></span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;"><br class="kix-line-break" /></span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">P.S.&nbsp; And yeah, 76 minutes of &nbsp;</span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: italic; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">yr. obt. svt.</span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">, longer than any other of his podcasts.&nbsp; I'm either an Essbase bore and he couldn't stand listening to me again to edit it down or what I have to say interested Mark and maybe you too.&nbsp; You decide.</span></div> Cameron Lackpour tag:blogger.com,1999:blog-7650953985627040991.post-4444753135828026748 Thu Aug 03 2017 10:39:00 GMT-0400 (EDT) Drill to Detail Ep.37 'How Essbase Won the OLAP Wars' With Special Guest Cameron Lackpour @CameronLackpour @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://feedproxy.google.com/~r/CameronsBlogForEssbaseHackers/~3/2VHlsXRafMk/drill-to-detail-ep37-how-essbase-won.html <h1 dir="ltr" id="docs-internal-guid-8d1caec4-a887-9f26-8d72-ed5553d29be4" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 24pt;"><a href="https://www.drilltodetail.com/" style="text-decoration: none;"><span style="background-color: transparent; color: blue; font-family: Cambria; font-size: 14pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: underline; vertical-align: baseline;">Drill to Detail</span></a><span style="background-color: transparent; color: #365f91; font-family: Cambria; font-size: 14pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline;">, just what is it?</span></h1><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">It’s </span><a href="https://www.linkedin.com/in/markrittman/" style="text-decoration: none;"><span style="background-color: transparent; color: blue; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline;">Mark Rittman’s</span></a><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;"> take on (I am just going to crib directly from </span><a href="https://www.drilltodetail.com/podcast" style="text-decoration: none;"><span style="background-color: transparent; color: blue; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline;">the site</span></a><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">) on the business and strategy of analytics, big data, and distributed processing in the cloud in the form of podcast interviews with the geeks (I may have added this descriptor) who make it all happen. &nbsp;I particularly like the way his interviews and interviewees contextualize technologies within markets, companies, and across history. &nbsp;There’s nothing else like it.</span></div><br /><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">If this sounds overly ambitious, know that the execution exceeds the vision. &nbsp;Why? &nbsp;Because Mark interviews the Great and the Good of our (and many other) professional spaces to get their take on technology, products, markets, trends, and futures. &nbsp;Some of the luminaries most of us should recognize are Stewart Bryson, Dan McClary, Graham Spicer, Robin Moffatt, Vasu Murthy, Chris Webb, Gwen Shapira, Adrian Ward, and Donald Farmer who speak on tools and subjects as diverse as Gartner groupings, Big Data, Kudu, Hadoop, various forms of BI, Cloud (of course), DI, OLAP, and now… Essbase.</span></div><h1 dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 24pt;"><span style="background-color: transparent; color: #365f91; font-family: Cambria; font-size: 14pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline;">Yeah, Essbase. &nbsp;And yeah, </span><span style="background-color: transparent; color: #365f91; font-family: Cambria; font-size: 14pt; font-style: italic; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline;">yr. obt. svt.</span><span style="background-color: transparent; color: #365f91; font-family: Cambria; font-size: 14pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline;"> &nbsp;But don’t let that last bit put you off. </span></h1><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">I could write all kinds of (un)funny jokes about how Mark made some sort of mind numbing mistake bringing me on (and would likely get many to agree) and could write all kinds of quite truthful remarks about how many others could have done better. &nbsp;Instead I’ll just shut up for once and be grateful. &nbsp;</span></div><br /><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">You can subscribe to the series on iTunes or listen in via your browser:</span></div><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><a href="https://www.drilltodetail.com/podcast/2017/8/1/drill-to-detail-ep37-how-essbase-won-the-olap-wars-with-special-guest-cameron-lackpour" style="text-decoration: none;"><span style="background-color: transparent; color: blue; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline;">https://www.drilltodetail.com/podcast/2017/8/1/drill-to-detail-ep37-how-essbase-won-the-olap-wars-with-special-guest-cameron-lackpour</span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;"><br class="kix-line-break" /></span></a></div><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">In any case, I am beyond flattered to have been included in Mark’s program and I hope I do the subject justice. &nbsp;Listen in, I think you’ll enjoy it. &nbsp;Listen to the rest of the Drill to Detail series as well – it’s eye opening.</span></div><br /><div dir="ltr" style="line-height: 1.3800000000000001; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">Be seeing you. </span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;"><br class="kix-line-break" /></span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;"><br class="kix-line-break" /></span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">P.S.&nbsp; And yeah, 76 minutes of &nbsp;</span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: italic; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">yr. obt. svt.</span><span style="background-color: transparent; color: black; font-family: Calibri; font-size: 11pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline;">, longer than any other of his podcasts.&nbsp; I'm either an Essbase bore and he couldn't stand listening to me again to edit it down or what I have to say interested Mark and maybe you too.&nbsp; You decide.</span></div> Cameron Lackpour tag:blogger.com,1999:blog-7650953985627040991.post-4444753135828026748 Thu Aug 03 2017 10:39:00 GMT-0400 (EDT) Secure Dashboard Access in Oracle BI Cloud Service (BICS): Sales and Marketing Dashboard Example http://blog.performancearchitects.com/wp/2017/08/02/secure-dashboard-access-in-oracle-bi-cloud-service-bics-sales-and-marketing-dashboard-example/ <p><strong> </strong>Author: Linda Stewart, Performance Architects</p> <p><a href="https://cloud.oracle.com/business_intelligence">Oracle Business Intelligence Cloud Service (BICS)</a> is part of Oracle’s Platform as Service (PaaS) offerings.  The <a href="http://www.oracle.com">Oracle</a> cloud offerings permit enterprise IT teams to rapidly build and deploy applications without the need to set up expensive infrastructure.  There’s still a need, however, for strong security capabilities in the cloud, and this blog post discusses how BICS security works and how to set up secure dashboard access in the solution via a sales and marketing dashboard sample business case.</p> <p><strong>How Oracle Cloud Security Works</strong></p> <p>When your business signs up for an <a href="https://cloud.oracle.com/home">Oracle Cloud</a> account, Oracle Cloud creates an identity domain specific to your company. As users log in to an Oracle Cloud service, Oracle cloud identity management controls the user authentication and the features of the service users can access using <a href="http://www.oracle.com/us/products/middleware/identity-management/oracle-enterprise-sso/overview/index.html">Oracle Enterprise Single Sign-On (SSO)</a>.  SSO may be federated between on-premise and cloud SSO.  Oracle Cloud uses LDAP schemas for storing the identities.</p> <p><strong>User and Role Management Overview</strong></p> <p>BICS Security is comprised of two items:  1. Oracle Cloud Identity Domain Users and Roles and 2. Oracle BICS Application Users and Roles.</p> <p>First, we add the user to Oracle Cloud Identity Management using the Identity Management Administrator credentials.  Click “Users,” then on the following form, click “Add&#8221;:</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1.jpg"><img class="alignnone size-medium wp-image-2090" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1-300x205.jpg" alt="" width="300" height="205" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1-300x205.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1-768x525.jpg 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1-624x427.jpg 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1.jpg 955w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Typically, we use the email address as the user name.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2.jpg"><img class="alignnone size-medium wp-image-2089" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2-300x181.jpg" alt="" width="300" height="181" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2-300x181.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2-768x463.jpg 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2-624x376.jpg 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2.jpg 1019w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>A few things have changed in this form.  We can now set a role in the Cloud Service for each user.  If the new user just views reports, we will click on the “Service” drop down, select “BICS (Business Intelligence),” and then click the button with the two “greater than” signs. This pushes the roles to the “Selected Roles” box.  If the user is <em>not</em> a reports or dashboard author, then uncheck: “bics BI Cloud Service Advanced Content Authors” as shown above.</p> <p>Click “Add<strong>”</strong> to save the user.</p> <p>Next, open BICS as an administrator to complete user creation.  Open “Console” and select “Users” and “Roles.”</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3.jpg"><img class="alignnone size-medium wp-image-2088" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3-300x189.jpg" alt="" width="300" height="189" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3-300x189.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3-768x484.jpg 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3-624x393.jpg 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3.jpg 922w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>In BICS, there are five predefined application roles.  We do not have to add our new user to any of the predefined application roles.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda4.jpg"><img class="alignnone wp-image-2087 size-medium" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda4-300x188.jpg" alt="" width="300" height="188" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda4-300x188.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda4.jpg 568w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p><strong>Sales and Marketing Dashboard Example</strong></p> <p>Let’s say we want to secure our data by sales region.  We have a global sales manager who should be able to see all sales regions.  In our fact table, we have the name of the sales region on each data row.  We want to secure the dashboard to only the members of the sales department, and then to filter the data where the salesperson may only see their own regional data and the sales manager should be able to see all regions.  Let’s also say there are marketing departmental dashboards in BICS and marketing should not be able to see the sales dashboard and sales should not be able to see the marketing dashboard.</p> <p>To do this, we can establish two application roles to manage the dashboard level.  Add “Sales Dashboard.” Click “Save.”  Repeat for the marketing dashboard.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5.jpg"><img class="alignnone size-medium wp-image-2086" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5-300x200.jpg" alt="" width="300" height="200" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5-300x200.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5-768x511.jpg 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5-1024x681.jpg 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5-624x415.jpg 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5.jpg 1039w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Add members (users) to “Sales” by selecting the button at the right end of the “Sales Application Role” and then by selecting “Manage Members:”</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda6.jpg"><img class="alignnone size-full wp-image-2085" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda6.jpg" alt="" width="191" height="107" /></a></p> <p>Search for “John Doe” and add this user to the “Sales Dashboard Role” by clicking the user name in the left box and then by clicking the single arrow to place the user in the “Selected Users” panel.  Click “OK” to save.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda7.jpg"><img class="alignnone size-medium wp-image-2084" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda7-300x273.jpg" alt="" width="300" height="273" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda7-300x273.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda7.jpg 568w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Create the marketing dashboard role and add users to that role using the same process.</p> <p>Next, we will create roles to secure the data in the “Sales” fact. Open “Application Role” and add the following roles:</p> <ul> <li>Global Sales Manager Data</li> <li>Eastern Sales Data</li> <li>Western Sales Data</li> <li>Marketing Data</li> </ul> <p>Use the same process as creating the “Sales Application Role,” and add a member to each role.</p> <p>We can divide the sales regions as many ways as we want as long as the sales region data in our fact has data to support our scenario to slice up the data.  To simplify the example, we will establish two sales regions and then a sales manager role (who sees all sales regions).</p> <p>Once the application roles are complete, we can navigate to the “BICS Modeler” to secure the data, and then to the “BICS Catalog” to secure the dashboards.</p> <p>In the Modeler, we will need administrator rights so we can filter the data by role:</p> <ul> <li>Open “Data Model” in the left panel</li> <li>Select “Fact-Sales”</li> <li>Select “Lock to Edit” button</li> <li>Select “Data Filters” tab</li> <li>Click “Add”</li> <li>Select “Role” as “Eastern Sales Data”</li> <li>Click the “FX” button</li> <li>Select to filter the fact data on Region=’eastern’</li> </ul> <p>Repeat for the Western region.  This secures our data.</p> <p>Lastly, as demonstrated in the image below, we will secure the dashboards by opening the Catalog:</p> <ul> <li>Under the “Company Shared Folder,” we established “Sales” and “Marketing” folders</li> <li>Add both the sales and marketing dashboard roles to each folder</li> <li>Apply permissions recursively</li> <li>Select the “Sales” folder</li> <li>In the “Tasks” pane, select “Permissions”</li> <li>Click the ‘+’ button to add new application roles<br /> Select the sales and marketing dashboard roles</li> <li>Set as custom permissions</li> </ul> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda8.jpg"><img class="alignnone size-medium wp-image-2083" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda8-300x257.jpg" alt="" width="300" height="257" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda8-300x257.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda8.jpg 561w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Use the pencil icon on the “Marketing” role and uncheck all of the boxes to change the permissions to “No Access.”</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9.jpg"><img class="alignnone size-medium wp-image-2082" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9-300x202.jpg" alt="" width="300" height="202" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9-300x202.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9-768x516.jpg 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9-624x419.jpg 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9.jpg 967w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Repeat the process for the “Marketing” dashboard, but set the “Marketing” role to “Full Control” and the “Sales” role to “No Access.”</p> Melanie Mathews http://blog.performancearchitects.com/wp/?p=2081 Wed Aug 02 2017 05:34:50 GMT-0400 (EDT) Secure Dashboard Access in Oracle BI Cloud Service (BICS): Sales and Marketing Dashboard Example @PerfArchitects @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://blog.performancearchitects.com/wp/2017/08/02/secure-dashboard-access-in-oracle-bi-cloud-service-bics-sales-and-marketing-dashboard-example/ <p><strong> </strong>Author: Linda Stewart, Performance Architects</p> <p><a href="https://cloud.oracle.com/business_intelligence">Oracle Business Intelligence Cloud Service (BICS)</a> is part of Oracle’s Platform as Service (PaaS) offerings.  The <a href="http://www.oracle.com">Oracle</a> cloud offerings permit enterprise IT teams to rapidly build and deploy applications without the need to set up expensive infrastructure.  There’s still a need, however, for strong security capabilities in the cloud, and this blog post discusses how BICS security works and how to set up secure dashboard access in the solution via a sales and marketing dashboard sample business case.</p> <p><strong>How Oracle Cloud Security Works</strong></p> <p>When your business signs up for an <a href="https://cloud.oracle.com/home">Oracle Cloud</a> account, Oracle Cloud creates an identity domain specific to your company. As users log in to an Oracle Cloud service, Oracle cloud identity management controls the user authentication and the features of the service users can access using <a href="http://www.oracle.com/us/products/middleware/identity-management/oracle-enterprise-sso/overview/index.html">Oracle Enterprise Single Sign-On (SSO)</a>.  SSO may be federated between on-premise and cloud SSO.  Oracle Cloud uses LDAP schemas for storing the identities.</p> <p><strong>User and Role Management Overview</strong></p> <p>BICS Security is comprised of two items:  1. Oracle Cloud Identity Domain Users and Roles and 2. Oracle BICS Application Users and Roles.</p> <p>First, we add the user to Oracle Cloud Identity Management using the Identity Management Administrator credentials.  Click “Users,” then on the following form, click “Add&#8221;:</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1.jpg"><img class="alignnone size-medium wp-image-2090" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1-300x205.jpg" alt="" width="300" height="205" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1-300x205.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1-768x525.jpg 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1-624x427.jpg 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda1.jpg 955w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Typically, we use the email address as the user name.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2.jpg"><img class="alignnone size-medium wp-image-2089" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2-300x181.jpg" alt="" width="300" height="181" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2-300x181.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2-768x463.jpg 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2-624x376.jpg 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda2.jpg 1019w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>A few things have changed in this form.  We can now set a role in the Cloud Service for each user.  If the new user just views reports, we will click on the “Service” drop down, select “BICS (Business Intelligence),” and then click the button with the two “greater than” signs. This pushes the roles to the “Selected Roles” box.  If the user is <em>not</em> a reports or dashboard author, then uncheck: “bics BI Cloud Service Advanced Content Authors” as shown above.</p> <p>Click “Add<strong>”</strong> to save the user.</p> <p>Next, open BICS as an administrator to complete user creation.  Open “Console” and select “Users” and “Roles.”</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3.jpg"><img class="alignnone size-medium wp-image-2088" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3-300x189.jpg" alt="" width="300" height="189" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3-300x189.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3-768x484.jpg 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3-624x393.jpg 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda3.jpg 922w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>In BICS, there are five predefined application roles.  We do not have to add our new user to any of the predefined application roles.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda4.jpg"><img class="alignnone wp-image-2087 size-medium" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda4-300x188.jpg" alt="" width="300" height="188" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda4-300x188.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda4.jpg 568w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p><strong>Sales and Marketing Dashboard Example</strong></p> <p>Let’s say we want to secure our data by sales region.  We have a global sales manager who should be able to see all sales regions.  In our fact table, we have the name of the sales region on each data row.  We want to secure the dashboard to only the members of the sales department, and then to filter the data where the salesperson may only see their own regional data and the sales manager should be able to see all regions.  Let’s also say there are marketing departmental dashboards in BICS and marketing should not be able to see the sales dashboard and sales should not be able to see the marketing dashboard.</p> <p>To do this, we can establish two application roles to manage the dashboard level.  Add “Sales Dashboard.” Click “Save.”  Repeat for the marketing dashboard.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5.jpg"><img class="alignnone size-medium wp-image-2086" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5-300x200.jpg" alt="" width="300" height="200" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5-300x200.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5-768x511.jpg 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5-1024x681.jpg 1024w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5-624x415.jpg 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda5.jpg 1039w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Add members (users) to “Sales” by selecting the button at the right end of the “Sales Application Role” and then by selecting “Manage Members:”</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda6.jpg"><img class="alignnone size-full wp-image-2085" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda6.jpg" alt="" width="191" height="107" /></a></p> <p>Search for “John Doe” and add this user to the “Sales Dashboard Role” by clicking the user name in the left box and then by clicking the single arrow to place the user in the “Selected Users” panel.  Click “OK” to save.</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda7.jpg"><img class="alignnone size-medium wp-image-2084" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda7-300x273.jpg" alt="" width="300" height="273" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda7-300x273.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda7.jpg 568w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Create the marketing dashboard role and add users to that role using the same process.</p> <p>Next, we will create roles to secure the data in the “Sales” fact. Open “Application Role” and add the following roles:</p> <ul> <li>Global Sales Manager Data</li> <li>Eastern Sales Data</li> <li>Western Sales Data</li> <li>Marketing Data</li> </ul> <p>Use the same process as creating the “Sales Application Role,” and add a member to each role.</p> <p>We can divide the sales regions as many ways as we want as long as the sales region data in our fact has data to support our scenario to slice up the data.  To simplify the example, we will establish two sales regions and then a sales manager role (who sees all sales regions).</p> <p>Once the application roles are complete, we can navigate to the “BICS Modeler” to secure the data, and then to the “BICS Catalog” to secure the dashboards.</p> <p>In the Modeler, we will need administrator rights so we can filter the data by role:</p> <ul> <li>Open “Data Model” in the left panel</li> <li>Select “Fact-Sales”</li> <li>Select “Lock to Edit” button</li> <li>Select “Data Filters” tab</li> <li>Click “Add”</li> <li>Select “Role” as “Eastern Sales Data”</li> <li>Click the “FX” button</li> <li>Select to filter the fact data on Region=’eastern’</li> </ul> <p>Repeat for the Western region.  This secures our data.</p> <p>Lastly, as demonstrated in the image below, we will secure the dashboards by opening the Catalog:</p> <ul> <li>Under the “Company Shared Folder,” we established “Sales” and “Marketing” folders</li> <li>Add both the sales and marketing dashboard roles to each folder</li> <li>Apply permissions recursively</li> <li>Select the “Sales” folder</li> <li>In the “Tasks” pane, select “Permissions”</li> <li>Click the ‘+’ button to add new application roles<br /> Select the sales and marketing dashboard roles</li> <li>Set as custom permissions</li> </ul> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda8.jpg"><img class="alignnone size-medium wp-image-2083" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda8-300x257.jpg" alt="" width="300" height="257" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda8-300x257.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda8.jpg 561w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Use the pencil icon on the “Marketing” role and uncheck all of the boxes to change the permissions to “No Access.”</p> <p><a href="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9.jpg"><img class="alignnone size-medium wp-image-2082" src="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9-300x202.jpg" alt="" width="300" height="202" srcset="http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9-300x202.jpg 300w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9-768x516.jpg 768w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9-624x419.jpg 624w, http://blog.performancearchitects.com/wp/wp-content/uploads/2017/07/linda9.jpg 967w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>Repeat the process for the “Marketing” dashboard, but set the “Marketing” role to “Full Control” and the “Sales” role to “No Access.”</p> Melanie Mathews http://blog.performancearchitects.com/wp/?p=2081 Wed Aug 02 2017 05:34:50 GMT-0400 (EDT) FDMEE – Custom Scheduler http://john-goodwin.blogspot.com/2017/08/fdmee-custom-scheduler.html <div dir="ltr" style="text-align: left;" trbidi="on">If you have ever had to work with the scheduler in the FDMEE UI then you will understand that it is far from perfect.<br /><br />The main issues I find are that the UI doesn’t t have all the scheduling options that are available through the ODI studio, if you were not aware the scheduling defined in FDMEE is handled by ODI.<br /><br />It is not possible to view the active schedules through the FDMEE UI and there is no option to delete individual schedules as it is an all or nothing situation.<br /><br />I am sure these irritations will improve over time and yes there are workarounds like using the Studio but that is not a viable solution for everyone.<br /><br />So on to the reason for this post, I was challenged to come up with a scheduling solution in on-premise FDMEE that met the following criteria:<br /><ul style="text-align: left;"><li><b class="yellow">Ability to schedule batches.</b></li><li><b class="yellow">Define a start and end date and repeat every x minutes/hours.</b></li><li><b class="yellow">Update existing scheduled batches.</b></li><li><b class="yellow">Delete individual batches.</b></li><li><b class="yellow">Run from the UI or from a batch script which can be run anywhere.</b></li><li><b class="yellow">No access to ODI Studio (ODI Console does not have scheduling functionality)</b></li></ul>Let us go through the criteria to see if it is currently possible in FDMEE, well there is no problem to schedule batches through the UI.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-hfETcTHFx7M/WX7nzFSSgZI/AAAAAAAAJBQ/VoNrOI_6SgERPQ8qmdCLMzn7YvlPD2QwwCLcBGAs/s1600/image001.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="136" data-original-width="549" src="https://2.bp.blogspot.com/-hfETcTHFx7M/WX7nzFSSgZI/AAAAAAAAJBQ/VoNrOI_6SgERPQ8qmdCLMzn7YvlPD2QwwCLcBGAs/s1600/image001.png" /></a></div><br />It is possible to schedule metadata and data load rules, batches and custom scripts.<br /><br />On to the next requirement and this is where the UI just doesn’t cut it, if you select schedule you are presented with the following options:<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-P1v0skBrfF0/WX7nzGkNs2I/AAAAAAAAJBU/Bv_B2uXiQEUgc6JAANnW68NMJotElWcAACLcBGAs/s1600/image002.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="239" data-original-width="656" src="https://3.bp.blogspot.com/-P1v0skBrfF0/WX7nzGkNs2I/AAAAAAAAJBU/Bv_B2uXiQEUgc6JAANnW68NMJotElWcAACLcBGAs/s1600/image002.png" /></a></div><br />You can certainly set a start date and time but not an end date, also there are no repetition options.<br /><br />If you compare the options to the ones available through the ODI Studio you will see FDMEE is lacking.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-pO8HTajXMgc/WX7nzDKfSiI/AAAAAAAAJBM/20CeEtpUGTY1Vu58QftjDr4USAxDa9i_wCLcBGAs/s1600/image003.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="587" data-original-width="672" src="https://4.bp.blogspot.com/-pO8HTajXMgc/WX7nzDKfSiI/AAAAAAAAJBM/20CeEtpUGTY1Vu58QftjDr4USAxDa9i_wCLcBGAs/s1600/image003.png" /></a></div><br />ODI has several repetition options which are not available in FDMEE.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-0jn32VwqZ3I/WX7nzhsLm-I/AAAAAAAAJBY/L1pBVoNk2o4zkMvXRC5HzLF-x7rtkgTswCLcBGAs/s1600/image004.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="297" data-original-width="513" src="https://1.bp.blogspot.com/-0jn32VwqZ3I/WX7nzhsLm-I/AAAAAAAAJBY/L1pBVoNk2o4zkMvXRC5HzLF-x7rtkgTswCLcBGAs/s1600/image004.png" /></a></div><br />This means the FDMEE UI does not meet the scheduler requirements and the use of the ODI Studio is not an option so how about a custom solution.<br /><br />Well, ODI has a Java API which provides the ability to replicate pretty much anything you can do in the Studio, FDMEE has jython scripting so combine the two and things are looking up.<br /><br />The good news is FDMEE has direct access to the ODI Java API so there is no need to mess around with jar files, just write some code and off you go.<br /><br />I think it is probably best to run through the end solution and then break it down so show how it was done.<br /><br />Three jython scripts were created and registered as part of the custom scheduler, these create, update and delete batch schedules.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-CfkIQp8ctCI/WX7nzr97y_I/AAAAAAAAJBc/OmKjwTJrc2ALp66sQSjLxHN5CkxIna6SQCLcBGAs/s1600/image005.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="224" data-original-width="369" src="https://3.bp.blogspot.com/-CfkIQp8ctCI/WX7nzr97y_I/AAAAAAAAJBc/OmKjwTJrc2ALp66sQSjLxHN5CkxIna6SQCLcBGAs/s1600/image005.png" /></a></div><br />If I execute the “Create Batch Schedule” script a popup window is displayed where the schedule can be defined.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-tjZVHISGZjA/WX7n0ITmNfI/AAAAAAAAJBk/xib2l7o9590amUJXG0cekfmWeZkD9J8EwCLcBGAs/s1600/image006.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="221" data-original-width="469" src="https://1.bp.blogspot.com/-tjZVHISGZjA/WX7n0ITmNfI/AAAAAAAAJBk/xib2l7o9590amUJXG0cekfmWeZkD9J8EwCLcBGAs/s1600/image006.png" /></a></div><br />The “Batch to schedule” parameter has a list box that returns the available batches.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-L75OtOfSbEE/WX7nzyegZEI/AAAAAAAAJBg/kVYvoj8XShgPdlbvphQMmCgTH9GaDX-cgCLcBGAs/s1600/image007.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="98" data-original-width="206" src="https://3.bp.blogspot.com/-L75OtOfSbEE/WX7nzyegZEI/AAAAAAAAJBg/kVYvoj8XShgPdlbvphQMmCgTH9GaDX-cgCLcBGAs/s1600/image007.png" /></a></div><br />The parameters that appear in the execute script window are defined in Custom Script Registration.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/--qTvVKV47SY/WX7n0HGOPsI/AAAAAAAAJBo/zqKuR_waud0rpMnQJ9xF658H8YiV4OVTQCLcBGAs/s1600/image008.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="464" data-original-width="1007" height="294" src="https://3.bp.blogspot.com/--qTvVKV47SY/WX7n0HGOPsI/AAAAAAAAJBo/zqKuR_waud0rpMnQJ9xF658H8YiV4OVTQCLcBGAs/s640/image008.png" width="640" /></a></div><br />So when the custom script is run, the popup windows is displayed with the parameters that have been defined above.<br /><br />You will see that “Batch to schedule” has been set to query type which means it will run a SQL query, the SQL query is created in Query Definition<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-pCp8SsnQ1EU/WX7n0VDas1I/AAAAAAAAJBs/Tdpmd4mSTF8i_m-Xhy_8r9mbmhiseIweACLcBGAs/s1600/image009.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="348" data-original-width="952" height="232" src="https://1.bp.blogspot.com/-pCp8SsnQ1EU/WX7n0VDas1I/AAAAAAAAJBs/Tdpmd4mSTF8i_m-Xhy_8r9mbmhiseIweACLcBGAs/s640/image009.png" width="640" /></a></div><br />The SQL query returns batches from the FDMEE database repository table AIF_BATCHES, this query is run when the lookup icon is selected in the execute script window.<br /><br />After running the script and populating the parameter values it would look something like:<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-_GWFQnmEzA8/WX7n0iq4kZI/AAAAAAAAJBw/w8FdjI6Yp9IUakA-luT_0elfOg4usjBtgCLcBGAs/s1600/image010.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="209" data-original-width="465" src="https://4.bp.blogspot.com/-_GWFQnmEzA8/WX7n0iq4kZI/AAAAAAAAJBw/w8FdjI6Yp9IUakA-luT_0elfOg4usjBtgCLcBGAs/s1600/image010.png" /></a></div><br />In the above example, the batch “OpenBatchDemo” will be scheduled to run every 30 minutes starting on the 1st August at 9am until the 5th August at 11pm.<br /><br />The values are passed into the jython script and If the script runs successfully a custom message is displayed.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-bqv7ZHiNQBs/WX7n0iJo5yI/AAAAAAAAJB0/AGfBl0lzXRQyt_lhvoJTQJGzrj8M2HDKACLcBGAs/s1600/image011.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="94" data-original-width="169" src="https://2.bp.blogspot.com/-bqv7ZHiNQBs/WX7n0iJo5yI/AAAAAAAAJB0/AGfBl0lzXRQyt_lhvoJTQJGzrj8M2HDKACLcBGAs/s1600/image011.png" /></a></div><br />The process logs should also display the status of executing the custom script.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-G56WdXsearY/WX7n02s9EOI/AAAAAAAAJB4/bU-MrFR-zjksuat3s-h4i4txNhB1SxEDACLcBGAs/s1600/image012.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="91" data-original-width="271" src="https://2.bp.blogspot.com/-G56WdXsearY/WX7n02s9EOI/AAAAAAAAJB4/bU-MrFR-zjksuat3s-h4i4txNhB1SxEDACLcBGAs/s1600/image012.png" /></a></div><br />The FDMEE log associated with the process contains the schedule definition, this is handled by the jython script.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-ejNLFUS1IE8/WX7n1Ge5aeI/AAAAAAAAJB8/mboC0RQhrbsdO7o2aWyuoi6EWaU_MY7WQCLcBGAs/s1600/image013.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="80" data-original-width="531" src="https://2.bp.blogspot.com/-ejNLFUS1IE8/WX7n1Ge5aeI/AAAAAAAAJB8/mboC0RQhrbsdO7o2aWyuoi6EWaU_MY7WQCLcBGAs/s1600/image013.png" /></a></div><br />I will use the Studio to demonstrate what has happened on the ODI side, the scenario “<b>COMM_EXECUTE_BATCH</b>” which is the one FDMEE uses to run batches has had a new schedule created.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-xgvvYQ8ZRZc/WX7n1BCmHfI/AAAAAAAAJCA/6YuWYAJjFccfURG_ejVg4jhWhod8CgZ_gCLcBGAs/s1600/image014.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="108" data-original-width="226" src="https://4.bp.blogspot.com/-xgvvYQ8ZRZc/WX7n1BCmHfI/AAAAAAAAJCA/6YuWYAJjFccfURG_ejVg4jhWhod8CgZ_gCLcBGAs/s1600/image014.png" /></a></div><br />The schedule matches to the parameter values defined in the FDMEE UI though it does need an explanation of why it is created in this way.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-WzTJOIN1l3w/WX7n1WAVKTI/AAAAAAAAJCE/7MGy70VUs1gs6cBpgcHONKgh1WwnWjfLACLcBGAs/s1600/image015.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="584" data-original-width="675" src="https://1.bp.blogspot.com/-WzTJOIN1l3w/WX7n1WAVKTI/AAAAAAAAJCE/7MGy70VUs1gs6cBpgcHONKgh1WwnWjfLACLcBGAs/s1600/image015.png" /></a></div><br />Looking at the schedule you would think that it should have been created using “Active for the period” and a starting and ending date set, unfortunately I found out the hard way and that is not the way ODI operates when repetitions are involved.<br /><br />When using repetitions the status in the definition tab should be set as “Active” and then the start date/time set as part of Execution like above.<br /><br />The remaining settings are defined in the “Execution Cycle” tab.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-sjvaSsiCAKk/WX7n1R4VJZI/AAAAAAAAJCI/nvtJ30h2Hb0CASad9e1qGraMU_z0x3tbgCLcBGAs/s1600/image016.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="198" data-original-width="474" src="https://1.bp.blogspot.com/-sjvaSsiCAKk/WX7n1R4VJZI/AAAAAAAAJCI/nvtJ30h2Hb0CASad9e1qGraMU_z0x3tbgCLcBGAs/s1600/image016.png" /></a></div><br />Instead of setting an end date/time a calculation needs to be performed to work out the difference between the start and end dates, this value is used in “Maximum Cycle Duration”.<br /><br />The time between each repetition is set as “Interval between Repetitions”, it is worth mentioning that ODI only considers the interval after a session completes to stop overlapping of sessions.<br /><br />Say a scheduled batch starts at 9:00am and has a repetition interval of 30 minutes, if the batch takes 10 minutes to complete the next scheduled run will not take place until 9:40am and not what you might expect of 9:30.<br /><br />If there is a strict time of when the repetitions need to start, then this option is not for you and alternatives need to be looked at.<br /><br />In the variables tab of the schedule the required values including the batch name will have been set.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-XuGz1PmKJ6o/WX7n1mV70eI/AAAAAAAAJCM/oBk_hctLjp0DY1zdE_dUwTXZqqzs_OXegCLcBGAs/s1600/image017.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="139" data-original-width="669" src="https://1.bp.blogspot.com/-XuGz1PmKJ6o/WX7n1mV70eI/AAAAAAAAJCM/oBk_hctLjp0DY1zdE_dUwTXZqqzs_OXegCLcBGAs/s1600/image017.png" /></a></div><br />The creation of the schedule is all handled by the custom jython script and the ODI Java API.<br /><br />I am not going to go through the jython script line by line as it would probably bore you to death and it is much better to write your own scripts in your style instead of copying them as you learn much more that way.<br /><br />I do recommend looking through the ODI Java API <b><a href="https://docs.oracle.com/cd/E28280_01/apirefs.1111/e17060/toc.htm">documentation</a></b> as that holds the key to working with the scheduler.<br /><br />Just to recap when the custom script is run in FDMEE a window is displayed where parameter values are entered, these parameters match to those defined in the custom script registration.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-18wNq5qPzCQ/WX7n193UcfI/AAAAAAAAJCQ/AMuCaxv3J4gy-ActKj__7TeveR13mF1hgCLcBGAs/s1600/image018.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="224" data-original-width="931" height="153" src="https://3.bp.blogspot.com/-18wNq5qPzCQ/WX7n193UcfI/AAAAAAAAJCQ/AMuCaxv3J4gy-ActKj__7TeveR13mF1hgCLcBGAs/s640/image018.png" width="640" /></a></div><br />The first part of the jython script retrieves and stores the values passed in from the FDMEE when the custom script is executed, this is done using the API method<br /><br /><b class="yellow">getCustomScriptParameterValue(&lt;parameter_name&gt;)</b><br /><br />The start date values are converted into a Java calendar which is a requirement for the ODI API.<br /><br />The time in minutes between the start and end date is calculated which will be used to define how long the schedule will be active for.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-_Nky76lDQes/WX7n2KWztHI/AAAAAAAAJCU/h7Vrh6bIi5I1nrAcSNW0gsnIAwXo76ukQCLcBGAs/s1600/image019.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="734" data-original-width="799" height="587" src="https://3.bp.blogspot.com/-_Nky76lDQes/WX7n2KWztHI/AAAAAAAAJCU/h7Vrh6bIi5I1nrAcSNW0gsnIAwXo76ukQCLcBGAs/s640/image019.png" width="640" /></a></div><br />The next section of the script deals with the connection to the ODI database repository, this information is retrieved using the FDMEE API method<br /><br /><b class="yellow">getProfileOptionValue(&lt;option_name&gt;,&lt;application_id&gt;,&lt;username&gt;)</b><br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-skhFhh5HGEw/WX7n2ocdugI/AAAAAAAAJCY/YRogznIxH8UEnuiRY4zyjGrueXSA6F1QQCLcBGAs/s1600/image020.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="199" data-original-width="1131" height="112" src="https://2.bp.blogspot.com/-skhFhh5HGEw/WX7n2ocdugI/AAAAAAAAJCY/YRogznIxH8UEnuiRY4zyjGrueXSA6F1QQCLcBGAs/s640/image020.png" width="640" /></a></div><br />If you didn’t know the ODI profile option values are located within system settings.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-jLDtmSa3I_g/WX7n2sP5RaI/AAAAAAAAJCc/xkFy3_3uT44ygXZ4KVzwZ1zjaQXJwS5_wCLcBGAs/s1600/image021.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="349" data-original-width="535" src="https://1.bp.blogspot.com/-jLDtmSa3I_g/WX7n2sP5RaI/AAAAAAAAJCc/xkFy3_3uT44ygXZ4KVzwZ1zjaQXJwS5_wCLcBGAs/s1600/image021.png" /></a></div><br />The values are stored in an FDMEE database table called <b>AIF_PROFILE_OPTION_VALUES</b> and by using the <b>getProfileOptionValue</b> method these values can be accessed.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-9zrnsqMQCG4/WX7n2nIrcNI/AAAAAAAAJCg/2Yrcg742IccccecIp7NHAzRtMoinFlCRwCLcBGAs/s1600/image022.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="250" data-original-width="681" src="https://4.bp.blogspot.com/-9zrnsqMQCG4/WX7n2nIrcNI/AAAAAAAAJCg/2Yrcg742IccccecIp7NHAzRtMoinFlCRwCLcBGAs/s1600/image022.png" /></a></div><br />Next the name of the ODI scenario which will be scheduled is defined, there are three variables that are added to the scheduled scenario.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-flwcLS16afE/WX7n20T9pLI/AAAAAAAAJCk/oEVNJ3wR7LEaPvQdDD6v8gQbJ28NU4ALgCLcBGAs/s1600/image023.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="134" data-original-width="409" src="https://3.bp.blogspot.com/-flwcLS16afE/WX7n20T9pLI/AAAAAAAAJCk/oEVNJ3wR7LEaPvQdDD6v8gQbJ28NU4ALgCLcBGAs/s1600/image023.png" /></a></div><br />As explained earlier FDMEE uses the “<b>COMM_EXECUTE_BATCH</b>” scenario to run batches, the version is “<b>001</b>”<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-KY3E6d3GiEo/WX7n2xJ6pQI/AAAAAAAAJCo/G7vTe_MRAQAob7Hqpxu_Le8UoDzx2iLqQCLcBGAs/s1600/image024.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="116" data-original-width="456" src="https://1.bp.blogspot.com/-KY3E6d3GiEo/WX7n2xJ6pQI/AAAAAAAAJCo/G7vTe_MRAQAob7Hqpxu_Le8UoDzx2iLqQCLcBGAs/s1600/image024.png" /></a></div><br />The variables that are required for the scheduling of the batch scenario are the user that will run the batch, the name of the batch and the URL for the FDMEE web application, for example<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-Zgxt78FS-r4/WX7n3e6fYZI/AAAAAAAAJCs/JfMfWaGhWBMxQK6LDfslCoLnzEI8NGEGgCLcBGAs/s1600/image025.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="76" data-original-width="398" src="https://3.bp.blogspot.com/-Zgxt78FS-r4/WX7n3e6fYZI/AAAAAAAAJCs/JfMfWaGhWBMxQK6LDfslCoLnzEI8NGEGgCLcBGAs/s1600/image025.png" /></a></div><br />The remaining part of the script deals with the creation of the schedule and to summarise:<br /><ul style="text-align: left;"><li>The “COMM_EXECUTE_BATCH” scenario is located and stored.</li><li>A new schedule is created against the scenario.</li><li>The status of the schedule is set as active.</li><li>The start date, repetition interval and the duration of the schedule are set.</li><li>The scenario variables values are defined.</li><li>The information is then committed and the ODI agent schedule updated.</li></ul><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-vz_ordWoqVw/WX7n3bcoAgI/AAAAAAAAJCw/4kxWDYjaNwYvEXYss083udiVauzM1eutACLcBGAs/s1600/image026.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="596" data-original-width="828" height="460" src="https://1.bp.blogspot.com/-vz_ordWoqVw/WX7n3bcoAgI/AAAAAAAAJCw/4kxWDYjaNwYvEXYss083udiVauzM1eutACLcBGAs/s640/image026.png" width="640" /></a></div><br />So now we have a custom schedule that has been simply created from the FDMEE UI, what about updating, deleting and viewing active schedules or carrying out these activities from outside of the UI? Well I think I have covered enough for now so look out for a follow-up post.</div> John Goodwin tag:blogger.com,1999:blog-6575283218005807475.post-2109844441189266007 Tue Aug 01 2017 03:14:00 GMT-0400 (EDT) FDMEE – Custom Scheduler @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://john-goodwin.blogspot.com/2017/08/fdmee-custom-scheduler.html <div dir="ltr" style="text-align: left;" trbidi="on">If you have ever had to work with the scheduler in the FDMEE UI then you will understand that it is far from perfect.<br /><br />The main issues I find are that the UI doesn’t t have all the scheduling options that are available through the ODI studio, if you were not aware the scheduling defined in FDMEE is handled by ODI.<br /><br />It is not possible to view the active schedules through the FDMEE UI and there is no option to delete individual schedules as it is an all or nothing situation.<br /><br />I am sure these irritations will improve over time and yes there are workarounds like using the Studio but that is not a viable solution for everyone.<br /><br />So on to the reason for this post, I was challenged to come up with a scheduling solution in on-premise FDMEE that met the following criteria:<br /><ul style="text-align: left;"><li><b class="yellow">Ability to schedule batches.</b></li><li><b class="yellow">Define a start and end date and repeat every x minutes/hours.</b></li><li><b class="yellow">Update existing scheduled batches.</b></li><li><b class="yellow">Delete individual batches.</b></li><li><b class="yellow">Run from the UI or from a batch script which can be run anywhere.</b></li><li><b class="yellow">No access to ODI Studio (ODI Console does not have scheduling functionality)</b></li></ul>Let us go through the criteria to see if it is currently possible in FDMEE, well there is no problem to schedule batches through the UI.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-hfETcTHFx7M/WX7nzFSSgZI/AAAAAAAAJBQ/VoNrOI_6SgERPQ8qmdCLMzn7YvlPD2QwwCLcBGAs/s1600/image001.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="136" data-original-width="549" src="https://2.bp.blogspot.com/-hfETcTHFx7M/WX7nzFSSgZI/AAAAAAAAJBQ/VoNrOI_6SgERPQ8qmdCLMzn7YvlPD2QwwCLcBGAs/s1600/image001.png" /></a></div><br />It is possible to schedule metadata and data load rules, batches and custom scripts.<br /><br />On to the next requirement and this is where the UI just doesn’t cut it, if you select schedule you are presented with the following options:<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-P1v0skBrfF0/WX7nzGkNs2I/AAAAAAAAJBU/Bv_B2uXiQEUgc6JAANnW68NMJotElWcAACLcBGAs/s1600/image002.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="239" data-original-width="656" src="https://3.bp.blogspot.com/-P1v0skBrfF0/WX7nzGkNs2I/AAAAAAAAJBU/Bv_B2uXiQEUgc6JAANnW68NMJotElWcAACLcBGAs/s1600/image002.png" /></a></div><br />You can certainly set a start date and time but not an end date, also there are no repetition options.<br /><br />If you compare the options to the ones available through the ODI Studio you will see FDMEE is lacking.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-pO8HTajXMgc/WX7nzDKfSiI/AAAAAAAAJBM/20CeEtpUGTY1Vu58QftjDr4USAxDa9i_wCLcBGAs/s1600/image003.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="587" data-original-width="672" src="https://4.bp.blogspot.com/-pO8HTajXMgc/WX7nzDKfSiI/AAAAAAAAJBM/20CeEtpUGTY1Vu58QftjDr4USAxDa9i_wCLcBGAs/s1600/image003.png" /></a></div><br />ODI has several repetition options which are not available in FDMEE.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-0jn32VwqZ3I/WX7nzhsLm-I/AAAAAAAAJBY/L1pBVoNk2o4zkMvXRC5HzLF-x7rtkgTswCLcBGAs/s1600/image004.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="297" data-original-width="513" src="https://1.bp.blogspot.com/-0jn32VwqZ3I/WX7nzhsLm-I/AAAAAAAAJBY/L1pBVoNk2o4zkMvXRC5HzLF-x7rtkgTswCLcBGAs/s1600/image004.png" /></a></div><br />This means the FDMEE UI does not meet the scheduler requirements and the use of the ODI Studio is not an option so how about a custom solution.<br /><br />Well, ODI has a Java API which provides the ability to replicate pretty much anything you can do in the Studio, FDMEE has jython scripting so combine the two and things are looking up.<br /><br />The good news is FDMEE has direct access to the ODI Java API so there is no need to mess around with jar files, just write some code and off you go.<br /><br />I think it is probably best to run through the end solution and then break it down so show how it was done.<br /><br />Three jython scripts were created and registered as part of the custom scheduler, these create, update and delete batch schedules.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-CfkIQp8ctCI/WX7nzr97y_I/AAAAAAAAJBc/OmKjwTJrc2ALp66sQSjLxHN5CkxIna6SQCLcBGAs/s1600/image005.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="224" data-original-width="369" src="https://3.bp.blogspot.com/-CfkIQp8ctCI/WX7nzr97y_I/AAAAAAAAJBc/OmKjwTJrc2ALp66sQSjLxHN5CkxIna6SQCLcBGAs/s1600/image005.png" /></a></div><br />If I execute the “Create Batch Schedule” script a popup window is displayed where the schedule can be defined.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-tjZVHISGZjA/WX7n0ITmNfI/AAAAAAAAJBk/xib2l7o9590amUJXG0cekfmWeZkD9J8EwCLcBGAs/s1600/image006.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="221" data-original-width="469" src="https://1.bp.blogspot.com/-tjZVHISGZjA/WX7n0ITmNfI/AAAAAAAAJBk/xib2l7o9590amUJXG0cekfmWeZkD9J8EwCLcBGAs/s1600/image006.png" /></a></div><br />The “Batch to schedule” parameter has a list box that returns the available batches.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-L75OtOfSbEE/WX7nzyegZEI/AAAAAAAAJBg/kVYvoj8XShgPdlbvphQMmCgTH9GaDX-cgCLcBGAs/s1600/image007.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="98" data-original-width="206" src="https://3.bp.blogspot.com/-L75OtOfSbEE/WX7nzyegZEI/AAAAAAAAJBg/kVYvoj8XShgPdlbvphQMmCgTH9GaDX-cgCLcBGAs/s1600/image007.png" /></a></div><br />The parameters that appear in the execute script window are defined in Custom Script Registration.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/--qTvVKV47SY/WX7n0HGOPsI/AAAAAAAAJBo/zqKuR_waud0rpMnQJ9xF658H8YiV4OVTQCLcBGAs/s1600/image008.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="464" data-original-width="1007" height="294" src="https://3.bp.blogspot.com/--qTvVKV47SY/WX7n0HGOPsI/AAAAAAAAJBo/zqKuR_waud0rpMnQJ9xF658H8YiV4OVTQCLcBGAs/s640/image008.png" width="640" /></a></div><br />So when the custom script is run, the popup windows is displayed with the parameters that have been defined above.<br /><br />You will see that “Batch to schedule” has been set to query type which means it will run a SQL query, the SQL query is created in Query Definition<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-pCp8SsnQ1EU/WX7n0VDas1I/AAAAAAAAJBs/Tdpmd4mSTF8i_m-Xhy_8r9mbmhiseIweACLcBGAs/s1600/image009.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="348" data-original-width="952" height="232" src="https://1.bp.blogspot.com/-pCp8SsnQ1EU/WX7n0VDas1I/AAAAAAAAJBs/Tdpmd4mSTF8i_m-Xhy_8r9mbmhiseIweACLcBGAs/s640/image009.png" width="640" /></a></div><br />The SQL query returns batches from the FDMEE database repository table AIF_BATCHES, this query is run when the lookup icon is selected in the execute script window.<br /><br />After running the script and populating the parameter values it would look something like:<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-_GWFQnmEzA8/WX7n0iq4kZI/AAAAAAAAJBw/w8FdjI6Yp9IUakA-luT_0elfOg4usjBtgCLcBGAs/s1600/image010.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="209" data-original-width="465" src="https://4.bp.blogspot.com/-_GWFQnmEzA8/WX7n0iq4kZI/AAAAAAAAJBw/w8FdjI6Yp9IUakA-luT_0elfOg4usjBtgCLcBGAs/s1600/image010.png" /></a></div><br />In the above example, the batch “OpenBatchDemo” will be scheduled to run every 30 minutes starting on the 1st August at 9am until the 5th August at 11pm.<br /><br />The values are passed into the jython script and If the script runs successfully a custom message is displayed.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-bqv7ZHiNQBs/WX7n0iJo5yI/AAAAAAAAJB0/AGfBl0lzXRQyt_lhvoJTQJGzrj8M2HDKACLcBGAs/s1600/image011.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="94" data-original-width="169" src="https://2.bp.blogspot.com/-bqv7ZHiNQBs/WX7n0iJo5yI/AAAAAAAAJB0/AGfBl0lzXRQyt_lhvoJTQJGzrj8M2HDKACLcBGAs/s1600/image011.png" /></a></div><br />The process logs should also display the status of executing the custom script.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-G56WdXsearY/WX7n02s9EOI/AAAAAAAAJB4/bU-MrFR-zjksuat3s-h4i4txNhB1SxEDACLcBGAs/s1600/image012.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="91" data-original-width="271" src="https://2.bp.blogspot.com/-G56WdXsearY/WX7n02s9EOI/AAAAAAAAJB4/bU-MrFR-zjksuat3s-h4i4txNhB1SxEDACLcBGAs/s1600/image012.png" /></a></div><br />The FDMEE log associated with the process contains the schedule definition, this is handled by the jython script.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-ejNLFUS1IE8/WX7n1Ge5aeI/AAAAAAAAJB8/mboC0RQhrbsdO7o2aWyuoi6EWaU_MY7WQCLcBGAs/s1600/image013.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="80" data-original-width="531" src="https://2.bp.blogspot.com/-ejNLFUS1IE8/WX7n1Ge5aeI/AAAAAAAAJB8/mboC0RQhrbsdO7o2aWyuoi6EWaU_MY7WQCLcBGAs/s1600/image013.png" /></a></div><br />I will use the Studio to demonstrate what has happened on the ODI side, the scenario “<b>COMM_EXECUTE_BATCH</b>” which is the one FDMEE uses to run batches has had a new schedule created.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-xgvvYQ8ZRZc/WX7n1BCmHfI/AAAAAAAAJCA/6YuWYAJjFccfURG_ejVg4jhWhod8CgZ_gCLcBGAs/s1600/image014.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="108" data-original-width="226" src="https://4.bp.blogspot.com/-xgvvYQ8ZRZc/WX7n1BCmHfI/AAAAAAAAJCA/6YuWYAJjFccfURG_ejVg4jhWhod8CgZ_gCLcBGAs/s1600/image014.png" /></a></div><br />The schedule matches to the parameter values defined in the FDMEE UI though it does need an explanation of why it is created in this way.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-WzTJOIN1l3w/WX7n1WAVKTI/AAAAAAAAJCE/7MGy70VUs1gs6cBpgcHONKgh1WwnWjfLACLcBGAs/s1600/image015.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="584" data-original-width="675" src="https://1.bp.blogspot.com/-WzTJOIN1l3w/WX7n1WAVKTI/AAAAAAAAJCE/7MGy70VUs1gs6cBpgcHONKgh1WwnWjfLACLcBGAs/s1600/image015.png" /></a></div><br />Looking at the schedule you would think that it should have been created using “Active for the period” and a starting and ending date set, unfortunately I found out the hard way and that is not the way ODI operates when repetitions are involved.<br /><br />When using repetitions the status in the definition tab should be set as “Active” and then the start date/time set as part of Execution like above.<br /><br />The remaining settings are defined in the “Execution Cycle” tab.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-sjvaSsiCAKk/WX7n1R4VJZI/AAAAAAAAJCI/nvtJ30h2Hb0CASad9e1qGraMU_z0x3tbgCLcBGAs/s1600/image016.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="198" data-original-width="474" src="https://1.bp.blogspot.com/-sjvaSsiCAKk/WX7n1R4VJZI/AAAAAAAAJCI/nvtJ30h2Hb0CASad9e1qGraMU_z0x3tbgCLcBGAs/s1600/image016.png" /></a></div><br />Instead of setting an end date/time a calculation needs to be performed to work out the difference between the start and end dates, this value is used in “Maximum Cycle Duration”.<br /><br />The time between each repetition is set as “Interval between Repetitions”, it is worth mentioning that ODI only considers the interval after a session completes to stop overlapping of sessions.<br /><br />Say a scheduled batch starts at 9:00am and has a repetition interval of 30 minutes, if the batch takes 10 minutes to complete the next scheduled run will not take place until 9:40am and not what you might expect of 9:30.<br /><br />If there is a strict time of when the repetitions need to start, then this option is not for you and alternatives need to be looked at.<br /><br />In the variables tab of the schedule the required values including the batch name will have been set.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-XuGz1PmKJ6o/WX7n1mV70eI/AAAAAAAAJCM/oBk_hctLjp0DY1zdE_dUwTXZqqzs_OXegCLcBGAs/s1600/image017.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="139" data-original-width="669" src="https://1.bp.blogspot.com/-XuGz1PmKJ6o/WX7n1mV70eI/AAAAAAAAJCM/oBk_hctLjp0DY1zdE_dUwTXZqqzs_OXegCLcBGAs/s1600/image017.png" /></a></div><br />The creation of the schedule is all handled by the custom jython script and the ODI Java API.<br /><br />I am not going to go through the jython script line by line as it would probably bore you to death and it is much better to write your own scripts in your style instead of copying them as you learn much more that way.<br /><br />I do recommend looking through the ODI Java API <b><a href="https://docs.oracle.com/cd/E28280_01/apirefs.1111/e17060/toc.htm">documentation</a></b> as that holds the key to working with the scheduler.<br /><br />Just to recap when the custom script is run in FDMEE a window is displayed where parameter values are entered, these parameters match to those defined in the custom script registration.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-18wNq5qPzCQ/WX7n193UcfI/AAAAAAAAJCQ/AMuCaxv3J4gy-ActKj__7TeveR13mF1hgCLcBGAs/s1600/image018.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="224" data-original-width="931" height="153" src="https://3.bp.blogspot.com/-18wNq5qPzCQ/WX7n193UcfI/AAAAAAAAJCQ/AMuCaxv3J4gy-ActKj__7TeveR13mF1hgCLcBGAs/s640/image018.png" width="640" /></a></div><br />The first part of the jython script retrieves and stores the values passed in from the FDMEE when the custom script is executed, this is done using the API method<br /><br /><b class="yellow">getCustomScriptParameterValue(&lt;parameter_name&gt;)</b><br /><br />The start date values are converted into a Java calendar which is a requirement for the ODI API.<br /><br />The time in minutes between the start and end date is calculated which will be used to define how long the schedule will be active for.<br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-_Nky76lDQes/WX7n2KWztHI/AAAAAAAAJCU/h7Vrh6bIi5I1nrAcSNW0gsnIAwXo76ukQCLcBGAs/s1600/image019.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="734" data-original-width="799" height="587" src="https://3.bp.blogspot.com/-_Nky76lDQes/WX7n2KWztHI/AAAAAAAAJCU/h7Vrh6bIi5I1nrAcSNW0gsnIAwXo76ukQCLcBGAs/s640/image019.png" width="640" /></a></div><br />The next section of the script deals with the connection to the ODI database repository, this information is retrieved using the FDMEE API method<br /><br /><b class="yellow">getProfileOptionValue(&lt;option_name&gt;,&lt;application_id&gt;,&lt;username&gt;)</b><br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-skhFhh5HGEw/WX7n2ocdugI/AAAAAAAAJCY/YRogznIxH8UEnuiRY4zyjGrueXSA6F1QQCLcBGAs/s1600/image020.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="199" data-original-width="1131" height="112" src="https://2.bp.blogspot.com/-skhFhh5HGEw/WX7n2ocdugI/AAAAAAAAJCY/YRogznIxH8UEnuiRY4zyjGrueXSA6F1QQCLcBGAs/s640/image020.png" width="640" /></a></div><br />If you didn’t know the ODI profile option values are located within system settings.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-jLDtmSa3I_g/WX7n2sP5RaI/AAAAAAAAJCc/xkFy3_3uT44ygXZ4KVzwZ1zjaQXJwS5_wCLcBGAs/s1600/image021.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="349" data-original-width="535" src="https://1.bp.blogspot.com/-jLDtmSa3I_g/WX7n2sP5RaI/AAAAAAAAJCc/xkFy3_3uT44ygXZ4KVzwZ1zjaQXJwS5_wCLcBGAs/s1600/image021.png" /></a></div><br />The values are stored in an FDMEE database table called <b>AIF_PROFILE_OPTION_VALUES</b> and by using the <b>getProfileOptionValue</b> method these values can be accessed.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-9zrnsqMQCG4/WX7n2nIrcNI/AAAAAAAAJCg/2Yrcg742IccccecIp7NHAzRtMoinFlCRwCLcBGAs/s1600/image022.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="250" data-original-width="681" src="https://4.bp.blogspot.com/-9zrnsqMQCG4/WX7n2nIrcNI/AAAAAAAAJCg/2Yrcg742IccccecIp7NHAzRtMoinFlCRwCLcBGAs/s1600/image022.png" /></a></div><br />Next the name of the ODI scenario which will be scheduled is defined, there are three variables that are added to the scheduled scenario.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-flwcLS16afE/WX7n20T9pLI/AAAAAAAAJCk/oEVNJ3wR7LEaPvQdDD6v8gQbJ28NU4ALgCLcBGAs/s1600/image023.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="134" data-original-width="409" src="https://3.bp.blogspot.com/-flwcLS16afE/WX7n20T9pLI/AAAAAAAAJCk/oEVNJ3wR7LEaPvQdDD6v8gQbJ28NU4ALgCLcBGAs/s1600/image023.png" /></a></div><br />As explained earlier FDMEE uses the “<b>COMM_EXECUTE_BATCH</b>” scenario to run batches, the version is “<b>001</b>”<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-KY3E6d3GiEo/WX7n2xJ6pQI/AAAAAAAAJCo/G7vTe_MRAQAob7Hqpxu_Le8UoDzx2iLqQCLcBGAs/s1600/image024.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="116" data-original-width="456" src="https://1.bp.blogspot.com/-KY3E6d3GiEo/WX7n2xJ6pQI/AAAAAAAAJCo/G7vTe_MRAQAob7Hqpxu_Le8UoDzx2iLqQCLcBGAs/s1600/image024.png" /></a></div><br />The variables that are required for the scheduling of the batch scenario are the user that will run the batch, the name of the batch and the URL for the FDMEE web application, for example<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-Zgxt78FS-r4/WX7n3e6fYZI/AAAAAAAAJCs/JfMfWaGhWBMxQK6LDfslCoLnzEI8NGEGgCLcBGAs/s1600/image025.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="76" data-original-width="398" src="https://3.bp.blogspot.com/-Zgxt78FS-r4/WX7n3e6fYZI/AAAAAAAAJCs/JfMfWaGhWBMxQK6LDfslCoLnzEI8NGEGgCLcBGAs/s1600/image025.png" /></a></div><br />The remaining part of the script deals with the creation of the schedule and to summarise:<br /><ul style="text-align: left;"><li>The “COMM_EXECUTE_BATCH” scenario is located and stored.</li><li>A new schedule is created against the scenario.</li><li>The status of the schedule is set as active.</li><li>The start date, repetition interval and the duration of the schedule are set.</li><li>The scenario variables values are defined.</li><li>The information is then committed and the ODI agent schedule updated.</li></ul><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-vz_ordWoqVw/WX7n3bcoAgI/AAAAAAAAJCw/4kxWDYjaNwYvEXYss083udiVauzM1eutACLcBGAs/s1600/image026.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="596" data-original-width="828" height="460" src="https://1.bp.blogspot.com/-vz_ordWoqVw/WX7n3bcoAgI/AAAAAAAAJCw/4kxWDYjaNwYvEXYss083udiVauzM1eutACLcBGAs/s640/image026.png" width="640" /></a></div><br />So now we have a custom schedule that has been simply created from the FDMEE UI, what about updating, deleting and viewing active schedules or carrying out these activities from outside of the UI? Well I think I have covered enough for now so look out for a follow-up post.</div> John Goodwin tag:blogger.com,1999:blog-6575283218005807475.post-2109844441189266007 Tue Aug 01 2017 03:14:00 GMT-0400 (EDT) Interesting Time Period Conversion with Drillbridge/PBCS http://www.jasonwjones.com/2017/07/interesting-time-period-conversion-with-drillbridgepbcs/ I recently helped a customer with their Drillbridge installation/configuration for PBCS that had an interesting time period conversion issue I wanted to write about. Drillbridge helps convert a given POV into a SQL query, webpage link, MDX query, or whatever you want (such as with a custom plugin). Out of the box, Drillbridge contains a number [&#8230;] jason http://www.jasonwjones.com/?p=1858 Fri Jul 28 2017 16:42:13 GMT-0400 (EDT) Interesting Time Period Conversion with Drillbridge/PBCS @jwj @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://www.jasonwjones.com/2017/07/interesting-time-period-conversion-with-drillbridgepbcs/ I recently helped a customer with their Drillbridge installation/configuration for PBCS that had an interesting time period conversion issue I wanted to write about. Drillbridge helps convert a given POV into a SQL query, webpage link, MDX query, or whatever you want (such as with a custom plugin). Out of the box, Drillbridge contains a number [&#8230;] jason http://www.jasonwjones.com/?p=1858 Fri Jul 28 2017 16:42:13 GMT-0400 (EDT) The Hidden Dimension http://glennschwartzbergs-essbase-blog.blogspot.com/2017/07/the-hidden-dimension.html Let me digress, Oh wait, I have to tell you something before I digress from it. The other day on OTN (or was it Network 54?) there was a question posted on how a user could add commentary to Essbase in OAC.&nbsp; I had mentioned Linked Reporting Objects(LROs) and verified that it worked in OAC. <br /><br />When the user tried, they got an error. I was able to recreate it:<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-MMZG2psul0k/WXt0g-7UswI/AAAAAAAAA74/jK8FQ78CyEQdEdpaILj6wo5SVZn0T-xGQCLcBGAs/s1600/oac1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="589" data-original-width="1113" height="169" src="https://3.bp.blogspot.com/-MMZG2psul0k/WXt0g-7UswI/AAAAAAAAA74/jK8FQ78CyEQdEdpaILj6wo5SVZn0T-xGQCLcBGAs/s320/oac1.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: left;">In my original test, I was using a non-sandbox cube. When getting the error, I had switched to a Sandbox enabled cube. it was not making sense to me, then I remembered to look at the dimensions. Here is what I saw:</div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-hUBGrUN0e3Y/WXt1LXIZl1I/AAAAAAAAA78/doH8B-BvIdYDII3C2ay2klA115uNDRruQCLcBGAs/s1600/oac2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="588" data-original-width="323" height="320" src="https://2.bp.blogspot.com/-hUBGrUN0e3Y/WXt1LXIZl1I/AAAAAAAAA78/doH8B-BvIdYDII3C2ay2klA115uNDRruQCLcBGAs/s320/oac2.jpg" width="175" /></a></div>You will notice in addition to the Sandbox dimension another dimension was added "CellProperties".&nbsp; This is not an attribute dimension but a real "Hidden" dimension in that it acts like an attribute and does not appear as part of a standard retrieval. <br />This&nbsp;dimension is&nbsp;only added when Sandboxing is enabled. Looking at the member I saw there were three children:<br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-u4cpiXaIIIk/WXt1wK1_6DI/AAAAAAAAA8A/4iqBTsnPygkcSJhneU8M_cMx6hX6SyPKQCLcBGAs/s1600/oac3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="360" data-original-width="560" height="205" src="https://1.bp.blogspot.com/-u4cpiXaIIIk/WXt1wK1_6DI/AAAAAAAAA8A/4iqBTsnPygkcSJhneU8M_cMx6hX6SyPKQCLcBGAs/s320/oac3.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: left;">When I added the member EssValue to my sheet LROs could be added. So what is this dimension and what is used for? I put all three members on my retrieval sheet and did a refresh. </div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-WiUXYS_9SAY/WXt3BbBpBrI/AAAAAAAAA8M/Q-37Fm4MZLUVP_-gReCYhpM8qVbk_XvfQCEwYBhgL/s1600/oac4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="181" data-original-width="630" height="91" src="https://2.bp.blogspot.com/-WiUXYS_9SAY/WXt3BbBpBrI/AAAAAAAAA8M/Q-37Fm4MZLUVP_-gReCYhpM8qVbk_XvfQCEwYBhgL/s320/oac4.jpg" width="320" /></a></div><div style="clear: both; text-align: left;">EssValue returned the data value that is part of a normal retrieval. This means to be that "CellProperties" must default to this value. EssStatus gave me a the number 1. Hmm what does that mean? If I cleared out the member both the EssStatus and EssID went to #Missing. Entering a number and I got :</div><div class="separator" style="clear: both; text-align: left;"></div><div class="separator" style="clear: both; text-align: left;"></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-WklGigiGaCA/WXt3BprgtkI/AAAAAAAAA8Q/7pvsSYMn81IlgAOBkMvtaLdN9AnvFWj0ACLcBGAs/s1600/oac5.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="211" data-original-width="637" height="105" src="https://4.bp.blogspot.com/-WklGigiGaCA/WXt3BprgtkI/AAAAAAAAA8Q/7pvsSYMn81IlgAOBkMvtaLdN9AnvFWj0ACLcBGAs/s320/oac5.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">It changed to a 2. I remember in the beta talking about this. If I remember correctly, 1 means it was loaded from a dataload. 2 means user input (Submit). I believe a 3 means it is the result of a calculation. </div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">The EssID, is really meant for relationships in sandboxing and approvals and really has no value to an enduser. </div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">So you get two tips in this post. </div><div class="separator" style="clear: both; text-align: left;">1. How to get LROs to work in a Sandbox enabled cube </div><div class="separator" style="clear: both; text-align: left;">2. What that mysterious hidden dimension is and what it is used for. </div><div class="separator" style="clear: both; text-align: left;">OK, now I can digress</div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div> GlennS tag:blogger.com,1999:blog-2615703102299902978.post-1227860936900958751 Fri Jul 28 2017 13:49:00 GMT-0400 (EDT) The Hidden Dimension @gschwartzberg1 @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://glennschwartzbergs-essbase-blog.blogspot.com/2017/07/the-hidden-dimension.html Let me digress, Oh wait, I have to tell you something before I digress from it. The other day on OTN (or was it Network 54?) there was a question posted on how a user could add commentary to Essbase in OAC.&nbsp; I had mentioned Linked Reporting Objects(LROs) and verified that it worked in OAC. <br /><br />When the user tried, they got an error. I was able to recreate it:<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://3.bp.blogspot.com/-MMZG2psul0k/WXt0g-7UswI/AAAAAAAAA74/jK8FQ78CyEQdEdpaILj6wo5SVZn0T-xGQCLcBGAs/s1600/oac1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="589" data-original-width="1113" height="169" src="https://3.bp.blogspot.com/-MMZG2psul0k/WXt0g-7UswI/AAAAAAAAA74/jK8FQ78CyEQdEdpaILj6wo5SVZn0T-xGQCLcBGAs/s320/oac1.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: left;">In my original test, I was using a non-sandbox cube. When getting the error, I had switched to a Sandbox enabled cube. it was not making sense to me, then I remembered to look at the dimensions. Here is what I saw:</div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-hUBGrUN0e3Y/WXt1LXIZl1I/AAAAAAAAA78/doH8B-BvIdYDII3C2ay2klA115uNDRruQCLcBGAs/s1600/oac2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="588" data-original-width="323" height="320" src="https://2.bp.blogspot.com/-hUBGrUN0e3Y/WXt1LXIZl1I/AAAAAAAAA78/doH8B-BvIdYDII3C2ay2klA115uNDRruQCLcBGAs/s320/oac2.jpg" width="175" /></a></div>You will notice in addition to the Sandbox dimension another dimension was added "CellProperties".&nbsp; This is not an attribute dimension but a real "Hidden" dimension in that it acts like an attribute and does not appear as part of a standard retrieval. <br />This&nbsp;dimension is&nbsp;only added when Sandboxing is enabled. Looking at the member I saw there were three children:<br /><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-u4cpiXaIIIk/WXt1wK1_6DI/AAAAAAAAA8A/4iqBTsnPygkcSJhneU8M_cMx6hX6SyPKQCLcBGAs/s1600/oac3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="360" data-original-width="560" height="205" src="https://1.bp.blogspot.com/-u4cpiXaIIIk/WXt1wK1_6DI/AAAAAAAAA8A/4iqBTsnPygkcSJhneU8M_cMx6hX6SyPKQCLcBGAs/s320/oac3.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: left;">When I added the member EssValue to my sheet LROs could be added. So what is this dimension and what is used for? I put all three members on my retrieval sheet and did a refresh. </div><div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-WiUXYS_9SAY/WXt3BbBpBrI/AAAAAAAAA8M/Q-37Fm4MZLUVP_-gReCYhpM8qVbk_XvfQCEwYBhgL/s1600/oac4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="181" data-original-width="630" height="91" src="https://2.bp.blogspot.com/-WiUXYS_9SAY/WXt3BbBpBrI/AAAAAAAAA8M/Q-37Fm4MZLUVP_-gReCYhpM8qVbk_XvfQCEwYBhgL/s320/oac4.jpg" width="320" /></a></div><div style="clear: both; text-align: left;">EssValue returned the data value that is part of a normal retrieval. This means to be that "CellProperties" must default to this value. EssStatus gave me a the number 1. Hmm what does that mean? If I cleared out the member both the EssStatus and EssID went to #Missing. Entering a number and I got :</div><div class="separator" style="clear: both; text-align: left;"></div><div class="separator" style="clear: both; text-align: left;"></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://4.bp.blogspot.com/-WklGigiGaCA/WXt3BprgtkI/AAAAAAAAA8Q/7pvsSYMn81IlgAOBkMvtaLdN9AnvFWj0ACLcBGAs/s1600/oac5.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="211" data-original-width="637" height="105" src="https://4.bp.blogspot.com/-WklGigiGaCA/WXt3BprgtkI/AAAAAAAAA8Q/7pvsSYMn81IlgAOBkMvtaLdN9AnvFWj0ACLcBGAs/s320/oac5.jpg" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">It changed to a 2. I remember in the beta talking about this. If I remember correctly, 1 means it was loaded from a dataload. 2 means user input (Submit). I believe a 3 means it is the result of a calculation. </div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">The EssID, is really meant for relationships in sandboxing and approvals and really has no value to an enduser. </div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div><div class="separator" style="clear: both; text-align: left;">So you get two tips in this post. </div><div class="separator" style="clear: both; text-align: left;">1. How to get LROs to work in a Sandbox enabled cube </div><div class="separator" style="clear: both; text-align: left;">2. What that mysterious hidden dimension is and what it is used for. </div><div class="separator" style="clear: both; text-align: left;">OK, now I can digress</div><div class="separator" style="clear: both; text-align: left;">&nbsp;</div> GlennS tag:blogger.com,1999:blog-2615703102299902978.post-1227860936900958751 Fri Jul 28 2017 13:49:00 GMT-0400 (EDT) EPM 11.1.2.4 and SQL Server on Ubuntu http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/ <div class="kg-card-markdown"><img src="http://epmjunkie.com/content/images/2017/07/SQLServer.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"><p>Today we try something different. I have a stock Ubuntu installation in Hyper-V. Microsoft has released SQL Server for Linux, I think SQL Server for Linux is a Release Candidate (RC), which we over at <a href="https://tevpro.com">Tevpro</a> have been using with some .NET Core applications. Lastly, I need a VM of 11.1.2.4 for testing some code I am working on. So... I am going to try and run EPM 11.1.2.4 on the Linux version of MS SQL Server.</p> <p>What am I going to install:</p> <ul> <li>Foundation Services</li> <li>Calculation Manager</li> <li>Planning</li> <li>Essbase</li> </ul> <p>Why am I not installing FDMEE, HFM, etc? I don't need them at the moment but that could change so this may turn into a multi-part post.</p> <p>Why do I have the desire to try this now? Well I recently rolled off the project I have been on for close to two years and had some free time while looking for a new project (<a href="https://tevpro.com/contact/">hire me</a>).</p> <h1 id="installingsqlserver">Installing SQL Server</h1> <p>If you didn't know Microsoft has become really cool in the last couple years and is embracing Open Source and Linux. Having been a .NET/ASP.NET/Classic ASP/Cold Fusion developer prior to coming into the EPM community I have long loved SQL Server. A big reason for that is SQL Server Management Studio (SSMS), which in my opinion the standard by which all other SQL Tools are judged. Anyway, Microsoft has some really good <a href="https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-ubuntu">documentation</a> on getting SQL Server installed on Linux, so the process is a snap. About the only requirement for installation is that the system has at least 3.25 GB of Memory, which since this going to be an EPM server is pretty much guaranteed.</p> <ol> <li> <p>Import the Microsofts public GPG keys:</p> <pre><code>crl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - </code></pre> </li> <li> <p>Register add Microsoft SQL Server repository to APT:</p> <pre><code>curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list </code></pre> </li> <li> <p>Update APT:</p> <pre><code> sudo apt-get update </code></pre> </li> <li> <p>Install SQL Server using APT</p> <pre><code> sudo apt-get install -y mssql-server </code></pre> </li> <li> <p>Run the configuration utility and setup the sa (System Administrator) password.</p> <pre><code>sudo /opt/mssql/bin/mssql-conf setup </code></pre> </li> <li> <p>Verify that SQL Server is running</p> <pre><code>systemctl status mssql-server </code></pre> <p>or</p> <pre><code>sudo service mssql-server status </code></pre> </li> <li> <p>Open the SQL Server port (1433) on your firewall<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn1" id="fnref1">[1]</a></sup></p> </li> </ol> <p>To anyone who has installed Oracle on Linux, you will be amazed at how fast and easy this is by comparison.</p> <h1 id="setupdatabases">Setup Databases</h1> <p>I already have SSMS but if you do not I would suggest you download SSMS<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn2" id="fnref2">[2]</a></sup>. Open up SSMS and connect to the SQL Server.</p> <ol> <li> <p>Select <em>New Database</em> under databases to open up the new database dialog.<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-14_31_51-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Define the name of the database as well as any specific settings you might want.<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-14_32_25-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Repeat steps one and two until all necessary databases are created.<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn3" id="fnref3">[3]</a></sup></p> </li> </ol> <ol start="6"> <li>Create a user(s) that will be used to connect to your databases. <ol> <li>Find <em>Security</em> then locate <em>Logins</em>, right click and <em>New Login</em><br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-23_32_47-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> <li>Specify the <em>Login name</em> and <em>Password</em><br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-23_33_36-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> <li>Select <em>User Mapping</em></li> <li>Select the desired database you want to assign this user access to.<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-23_49_23-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> <li>Assign the user to the desired roles for the database.<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-23_49_45-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> <li>Repeat steps four and five for each database this user should have access to.</li> </ol> </li> </ol> <h1 id="downloadingepm11124">Downloading EPM 11.1.2.4</h1> <p>Oh, E-Delivery you are a pain. A necessary pain that I do not enjoy. E-Delivery has the option to download a <a href="http://wget.sh">wget.sh</a> file that can be used download the installation files.</p> <ol> <li> <p>Login to <a href="https://edelivery.oracle.com">E-Delivery</a></p> </li> <li> <p>Locate the desired software package and set Linux x86 64<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-14_09_03-SearchSoftware.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Uncheck the software you don't need (never understood why DRM, Client tools, and other non-Linux items were selected by default.)<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-13_30_25-SearchSoftware.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Select <em>WGET Options</em><br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-13_31_11-SearchSoftware.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Download the <em><a href="http://wget.sh">wget.sh</a></em> script<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-13_31_30-SearchSoftware.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Copy the file to the Linux server.</p> </li> <li> <p>Edit the first line of the <em><a href="http://wget.sh">wget.sh</a></em> script since its targeting the <em>sh</em> shell which does not support the <code>-s</code> option on the <code>read</code> command.</p> <pre><code>#!/bin/sh </code></pre> <p>Change this line to use bash shell.</p> <pre><code>#!/bin/bash </code></pre> </li> <li> <p>Run the <a href="http://wget.sh">wget.sh</a> command and follow the prompts.</p> <pre><code>./wget.sh </code></pre> <p><img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-14_24_05-kkikta@epm-11-1-2-4_--.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Go get coffee. Even though I have a 200Mbs connection its going to take a while.</p> </li> </ol> <h1 id="prepareforinstallation">Prepare for installation</h1> <ol> <li> <p>Unzip the files into a single directory</p> <pre><code>unzip 'V*.zip' -d InstallFiles </code></pre> </li> <li> <p>Create the user who will do the installation and run the applications once installed.</p> <pre><code>sudo adduser epm </code></pre> </li> <li> <p>Modify <em>/etc/security/limits.conf</em> to increase the hard and soft file descriptor limits.</p> <pre><code>epm hard nofile 131072 epm soft nofile 4096 </code></pre> </li> <li> <p>Install <em>make</em>, <em>gcc</em>, <em>rpm</em>, <em>libxtst6</em>, <em>libxi6</em> and <em>libaio</em> <em>(see footnote 15)</em></p> <pre><code>sudo apt-get install build-essential rpm libxtst6 libaio1 libpth-dev libpthread-stubs0-dev </code></pre> </li> <li> <p>Link <em>rpm</em> to the location the EPM installer is expecting it at and x86-64-linux-gnu to /usr/lib64.</p> <pre><code> ln -s /usr/bin/rpm /bin/rpm ln -s /usr/lib/x86_64-linux-gnu /usr/lib64 </code></pre> </li> <li> <p>Set the X11 display setting (even though I am using console, something in OHS requires it)</p> <pre><code> export DISPLAY=:0.0 </code></pre> </li> <li> <p>Move the install files to a directory owned by that user</p> <pre><code>sudo mv InstallFiles /home/epm/ </code></pre> </li> <li> <p>Change the owner of the files</p> <pre><code>sudo chown -R epm:epm /home/epm/InstallFiles </code></pre> </li> <li> <p>Become the new user</p> <pre><code>sudo su - epm </code></pre> </li> <li> <p>Change directory to the install folder.</p> <pre><code>cd ~/InstallFiles </code></pre> </li> </ol> <h1 id="installoracleepm">Install Oracle EPM</h1> <p>So for this particular installation, I forgot to add the GUI and don't really want to install Xming. So console it is.</p> <ol> <li> <p>Run the install tool.</p> <pre><code>./installTool.sh -console </code></pre> </li> <li> <p>Since I want English I select <strong>0</strong></p> </li> <li> <p>Verify prerequisite checks are successful<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn4" id="fnref4">[4]</a></sup></p> </li> </ol> <ol start="5"> <li> <p>Define the EPM installation path (/home/epm/Oracle/Middleware)</p> </li> <li> <p>Select a <em>New Installation</em> (Option 0)</p> </li> <li> <p>Select components to install (this is where it gets tricky in the console.)</p> <ol> <li>At Oracle EPM System - 2: Expand</li> <li>Foundation Services - 2: Expand</li> <li>Foundation Components - 0: Select <ul> <li>Foundation Services Java Web Application</li> <li>Static Content Files</li> <li>Oracle HTTP Server</li> <li>WebLogic Application Server</li> </ul> </li> <li>Oracle Database Client 32-bit - 0: Next<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn5" id="fnref5">[5]</a></sup></li> </ol> <ol start="5"> <li>Oracle Database Client 64-bit - 0: Next</li> <li>Performance Management Architect - 1: Deselect<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn6" id="fnref6">[6]</a></sup></li> </ol> <ol start="7"> <li> <p>Calculation Manager - 0: Select</p> </li> <li> <p>Essbase - 2: Expand</p> <ol> <li>Essbase Administration Services Java Web Application - 0: Select</li> <li>Provider Services Java Web Application - 0: Select</li> <li>Provider Services Java Web Application Samples - 1: Deselect</li> <li>Essbase Studio Server - 1: Deselect</li> <li>Essbase Studio Server Samples - 1: Deselect</li> <li>Essbase Server - 0: Select</li> <li>Essbase Server Samples - 0: Select<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn7" id="fnref7">[7]</a></sup></li> </ol> </li> <li> <p>Reporting and Analysis - 0: Select<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn8" id="fnref8">[8]</a></sup></p> </li> </ol> <ol start="10"> <li>Planning - 0: Select</li> <li>Financial Close Managment - 1: Deselect</li> <li>Tax Managment - 1: Deselect</li> <li>Disclosure Management - 1: Deselect</li> <li>Financial Management - 2: Expand <ol> <li>Financial Management SDK - 0: Select</li> <li>Financial Management Java Web Applications - 1: Deselect<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn9" id="fnref9">[9]</a></sup></li> </ol> <ol start="3"> <li>Financial Management Server - 1: Deselect</li> </ol> </li> <li>Strategic Finance - 1: Deselect</li> <li>FDM Enterprise Edition - 0: Select<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn10" id="fnref10">[10]</a></sup></li> </ol> <ol start="17"> <li>Profitability and Cost Management - 1: Deselect</li> </ol> </li> <li> <p>Confirm my selections</p> <pre><code>Checking for available disk space in the /home/epm/Oracle/Middleware/EPMSystem11R1 directory. The selected components require 12703 MB free disk space. You have 91985 MB free disk space. EPM Oracle Home: /home/epm/Oracle/Middleware/EPMSystem11R1 Common Components Essbase Product Common Components Product Common Components Oracle Common Files Tools OPMN Foundation Services Calculation Manager Java Web Application WebLogic Application Server Oracle HTTP Server Static Content Files Workspace Java Web Application Foundation Services Java Web Applications Essbase Essbase Client Samples Essbase Client Essbase Server Samples Essbase Server Provider Services Java Web Application Essbase Administration Services Java Web Application Reporting and Analysis Financial Reporting Java Web Application Framework Services and Common Libraries Framework Java Web Application Planning Planning Java Web Application Financial Management Financial Management SDK FDM Enterprise Edition FDM Enterprise Edition Java Web Application ODI </code></pre> </li> </ol> <h1 id="configureoracleepm">Configure Oracle EPM</h1> <p>Next, we move on to the configuration.</p> <ol> <li> <p>Change to configuration directory</p> <pre><code>cd ~/Oracle/Middleware/EPMSystem11R1/common/config/11.1.2.0 </code></pre> </li> <li> <p>Run configuration utility</p> <pre><code>./configtool.sh -console </code></pre> </li> <li> <p>Set the EPM Oracle Instance path</p> <pre><code>/home/epm/Oracle/Middleware/user_projects </code></pre> </li> <li> <p>Set the Oracle EPM Instance Name</p> <pre><code>epmsystem1 </code></pre> </li> <li> <p>Setup Shared Services and Registry Database Connection - 1: Perform the first-time configuration of a Shared Services database</p> <ol> <li>Set the Database Type - 0: Oracle's MS SQL Server Driver (Type 4)</li> <li>Server: localhost</li> <li>Port: 1433</li> <li>Database Name: EPM<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn11" id="fnref11">[11]</a></sup></li> </ol> <ol start="5"> <li>User Name: epm</li> <li>Password: ********</li> <li>Launch Advanced Options - 1: No</li> </ol> </li> <li> <p>Select initial items selection - 2: Uncheck All</p> <ol> <li>Hyperion Foundation - 0: Select</li> <li>FDM Enterprise Edition - 1: Deselect</li> <li>Essbase - 0: Select</li> <li>Financial Management - 0: Select</li> <li>Planning - 0: Select</li> <li>Reporting and Analysis - 0: Select</li> </ol> </li> <li> <p>Use SSL - 1: No</p> </li> <li> <p>Mail Server Host: None</p> </li> <li> <p>Outgoing Port: 25</p> </li> <li> <p>Incoming Port: 143</p> </li> <li> <p>Administrator's Email Address: None</p> </li> <li> <p>Use SSL for mail - 1: No</p> </li> <li> <p>Enable SSL offloading - 1: No</p> </li> <li> <p>Use authentication to send email - 1: No</p> </li> <li> <p>LCM Export Import Location:</p> <pre><code>/home/epm/Oracle/Middleware/user_projects/epmsystem1/import_export </code></pre> </li> <li> <p>Configure Database - 0: Oracle's MS SQL Server Driver (Type 4)<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn12" id="fnref12">[12]</a></sup></p> </li> </ol> <ol start="17"> <li> <p>Enter the number of components you want to configure, divided by a comma: <em>0, 1, 2, 3</em>. This will configure the following in my environment:</p> <ul> <li>Essbase Administration Services</li> <li>Planning</li> <li>Reporting and Analysis</li> <li>Calculation Manager<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-22-00_10_30-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> </ul> </li> <li> <p>Server: localhost</p> </li> <li> <p>Port: 1433</p> </li> <li> <p>DB Name: EPM</p> </li> <li> <p>Username: epm</p> </li> <li> <p>Password: ********</p> </li> <li> <p>Advanced database options for selected rows - 1: No<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-22-00_13_10-epm@epm-11-1-2-4_--_Oracle_Middleware_EPMSystem11R1_common_config_11.1.2.0.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Repository Directory</p> <pre><code>/home/epm/Oracle/Middleware/user_projects/epmsystem1/ReportingAnalysis/data/RM1 </code></pre> </li> <li> <p>Port Range - 0: Default range (6800-6805)</p> </li> <li> <p>Deploy to Application Server (WebLogic) - 1: Deploy to new domain</p> </li> <li> <p>Domain Name: EPMSystem</p> </li> <li> <p>Administration Server Port: 7001</p> </li> <li> <p>Administrator User: epm_admin</p> </li> <li> <p>Administrator Password: ********</p> </li> <li> <p>Deploy the Java web applications to a single managed server - 1: No<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn13" id="fnref13">[13]</a></sup></p> </li> </ol> <ol start="32"> <li> <p>Deploy this Java web application - 0: Yes</p> <ol> <li>EAS</li> <li>Workspace</li> <li>Planning</li> <li>APS</li> <li>Shared Services</li> <li>RA Framework</li> <li>Financial Reporting</li> <li>CALC</li> </ol> </li> <li> <p>Essbase Cluster Name: EssbaseCluster-1</p> </li> <li> <p>Agent Port: 1423</p> <ol> <li>Active: Yes</li> </ol> </li> <li> <p>SSL Agent Port: 6423</p> <ol> <li>Active: No</li> </ol> </li> <li> <p>Start Port: 32768</p> </li> <li> <p>End Port: 33768</p> </li> <li> <p>Full path to application location (ARBORPATH)<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn14" id="fnref14">[14]</a></sup></p> <pre><code>/home/epm/Oracle/Middleware/user_projects/epmsystem1/EssbaseServer/essbaseserver1 </code></pre> </li> </ol> <ol start="39"> <li>Set Essbase language: 0 - English</li> <li>Binding Host Name: epm-11-1-2-4</li> <li>Configure Reporting and Analysis Framework Agent: <ol> <li>Agent Port: 6860</li> <li>Agent RMI Port: 6861</li> </ol> </li> <li>Financial Reporting - Configure RMI Ports Range - 0: Default (8205-8228)</li> <li>Setup Oracle BIEE - 1: No</li> <li>Setup Oracle BI Publisher - 1: No</li> <li>Planning - Configure RMI Server <ol> <li>Port: 11333</li> </ol> </li> <li>Web Server Type - 0: Oracle HTTP Server</li> <li>Web Server Port: 19000</li> <li>Set logical address for applications - 0: Yes</li> <li>Launch Advanced Options - 1: No</li> <li>Update the logical address for the Java web applications - 0: Set all</li> <li>Host: epm-11-1-2-4</li> <li>Port: 19000</li> <li>SSL Port: 19443</li> <li>Admin Name: admin</li> <li>Password: ********</li> <li>Verify the tasks and &quot;Let 'er rip tater chip&quot;<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-22-00_42_48-epm@epm-11-1-2-4_--_Oracle_Middleware_EPMSystem11R1_common_config_11.1.2.0.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> </ol> <h1 id="results">Results</h1> <p>Well, I would like to say it was a complete success but as with many installs, something always seems to come up. Luckily it's just OHS (Apache), but it's always something.<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-22-00_47_25-epm@epm-11-1-2-4_--_Oracle_Middleware_EPMSystem11R1_common_config_11.1.2.0.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"><br> So now I got to go track down why OHS has decided to not play nice<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn15" id="fnref15">[15]</a></sup>. On a positive note, this was by far the fastest configure/deploy I have ever seen and this is a single virtual CPU VM on my laptop, not sure if its the GUI overhead but this was like 60 - 90 seconds for configuring and deploy.</p> <h1 id="finalthoughts">Final Thoughts</h1> <p>After pouring through logs and adding libraries I eventually I gave in and installed some X11 libraries, configured Xming. Once I ran the install tool again I found that the GUI was reporting that Oracle HTTP Server had not installed correctly. I made several attempts to resolve issues but as when I eventually resolved the dependencies it started to report bizarre permissions problems. I suspect the easiest solution is to clear the install and restart since it is now complaining that it can't overwrite files created by the installer.</p> <hr class="footnotes-sep"> <section class="footnotes"> <ol class="footnotes-list"> <li id="fn1" class="footnote-item"><p>I plan on using SSMS but this step is optional. This is only necessary if you are running a software firewall (not enabled by default) and want to allow external connections. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref1" class="footnote-backref">↩︎</a></p> </li> <li id="fn2" class="footnote-item"><p>If you prefer to use the command line tools you don't need SSMS. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref2" class="footnote-backref">↩︎</a></p> </li> <li id="fn3" class="footnote-item"><p>Databases in SQL Server are similar to schemas in Oracle. It's uncommon to have multiple databases on the same server in Oracle, however, in SQL Server it's quite normal. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref3" class="footnote-backref">↩︎</a></p> </li> <li id="fn4" class="footnote-item"><p>Many of these steps require you to select a number indicating how to proceed in the installer similar to the GUI. 1: Previous, 2: Next, 3: Cancel, 4: Redisplay or 5: to Load (whatever that means). The default is generally 2. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref4" class="footnote-backref">↩︎</a></p> </li> <li id="fn5" class="footnote-item"><p>The installer complains that these clients are not installed and they are required but I think it should work. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref5" class="footnote-backref">↩︎</a></p> </li> <li id="fn6" class="footnote-item"><p>To my knowledge EPMA still doesn't work on Linux but since doing more DRM I haven't used it so not sure. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref6" class="footnote-backref">↩︎</a></p> </li> <li id="fn7" class="footnote-item"><p>Default is Deselect but since I am going to be doing some tests why not have the sample apps <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref7" class="footnote-backref">↩︎</a></p> </li> <li id="fn8" class="footnote-item"><p>With the install files I downloaded Interactive Reporting and SQR Production Reporting is not included so it is safe for me to make this choice. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref8" class="footnote-backref">↩︎</a></p> </li> <li id="fn9" class="footnote-item"><p>I have no need for HFM in this environment. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref9" class="footnote-backref">↩︎</a></p> </li> <li id="fn10" class="footnote-item"><p>No immediate plans but I might need it later so ill install and not configure it. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref10" class="footnote-backref">↩︎</a></p> </li> <li id="fn11" class="footnote-item"><p>These settings will depend on what values you entered in the SQL Server database configuration steps above. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref11" class="footnote-backref">↩︎</a></p> </li> <li id="fn12" class="footnote-item"><p>This time it's for configuring the applications we selected to configure. I am going to keep it simple and only use a single database for the selected applications. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref12" class="footnote-backref">↩︎</a></p> </li> <li id="fn13" class="footnote-item"><p>Since this is a test box I probably should save on memory usage but I just haven't had much luck with this setting. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref13" class="footnote-backref">↩︎</a></p> </li> <li id="fn14" class="footnote-item"><p>Love the nostalgia but I would have thought by now they would have modified this to be ESSBASEPATH or something. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref14" class="footnote-backref">↩︎</a></p> </li> <li id="fn15" class="footnote-item"><p>Checked the configure log and found that OHS couldn't find <em>make</em> and quite a few other libraries related to Xorg (X11) (XWindows). I am not sure why the console bases config needs X. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref15" class="footnote-backref">↩︎</a></p> </li> </ol> </section> </div> Keith Kikta 597236f9933ac748ca20eabf Thu Jul 27 2017 14:54:12 GMT-0400 (EDT) EPM 11.1.2.4 and SQL Server on Ubuntu @newbish @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/ <div class="kg-card-markdown"><img src="http://epmjunkie.com/content/images/2017/07/SQLServer.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"><p>Today we try something different. I have a stock Ubuntu installation in Hyper-V. Microsoft has released SQL Server for Linux, I think SQL Server for Linux is a Release Candidate (RC), which we over at <a href="https://tevpro.com">Tevpro</a> have been using with some .NET Core applications. Lastly, I need a VM of 11.1.2.4 for testing some code I am working on. So... I am going to try and run EPM 11.1.2.4 on the Linux version of MS SQL Server.</p> <p>What am I going to install:</p> <ul> <li>Foundation Services</li> <li>Calculation Manager</li> <li>Planning</li> <li>Essbase</li> </ul> <p>Why am I not installing FDMEE, HFM, etc? I don't need them at the moment but that could change so this may turn into a multi-part post.</p> <p>Why do I have the desire to try this now? Well I recently rolled off the project I have been on for close to two years and had some free time while looking for a new project (<a href="https://tevpro.com/contact/">hire me</a>).</p> <h1 id="installingsqlserver">Installing SQL Server</h1> <p>If you didn't know Microsoft has become really cool in the last couple years and is embracing Open Source and Linux. Having been a .NET/ASP.NET/Classic ASP/Cold Fusion developer prior to coming into the EPM community I have long loved SQL Server. A big reason for that is SQL Server Management Studio (SSMS), which in my opinion the standard by which all other SQL Tools are judged. Anyway, Microsoft has some really good <a href="https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-ubuntu">documentation</a> on getting SQL Server installed on Linux, so the process is a snap. About the only requirement for installation is that the system has at least 3.25 GB of Memory, which since this going to be an EPM server is pretty much guaranteed.</p> <ol> <li> <p>Import the Microsofts public GPG keys:</p> <pre><code>crl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - </code></pre> </li> <li> <p>Register add Microsoft SQL Server repository to APT:</p> <pre><code>curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list </code></pre> </li> <li> <p>Update APT:</p> <pre><code> sudo apt-get update </code></pre> </li> <li> <p>Install SQL Server using APT</p> <pre><code> sudo apt-get install -y mssql-server </code></pre> </li> <li> <p>Run the configuration utility and setup the sa (System Administrator) password.</p> <pre><code>sudo /opt/mssql/bin/mssql-conf setup </code></pre> </li> <li> <p>Verify that SQL Server is running</p> <pre><code>systemctl status mssql-server </code></pre> <p>or</p> <pre><code>sudo service mssql-server status </code></pre> </li> <li> <p>Open the SQL Server port (1433) on your firewall<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn1" id="fnref1">[1]</a></sup></p> </li> </ol> <p>To anyone who has installed Oracle on Linux, you will be amazed at how fast and easy this is by comparison.</p> <h1 id="setupdatabases">Setup Databases</h1> <p>I already have SSMS but if you do not I would suggest you download SSMS<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn2" id="fnref2">[2]</a></sup>. Open up SSMS and connect to the SQL Server.</p> <ol> <li> <p>Select <em>New Database</em> under databases to open up the new database dialog.<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-14_31_51-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Define the name of the database as well as any specific settings you might want.<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-14_32_25-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Repeat steps one and two until all necessary databases are created.<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn3" id="fnref3">[3]</a></sup></p> </li> </ol> <ol start="6"> <li>Create a user(s) that will be used to connect to your databases. <ol> <li>Find <em>Security</em> then locate <em>Logins</em>, right click and <em>New Login</em><br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-23_32_47-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> <li>Specify the <em>Login name</em> and <em>Password</em><br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-23_33_36-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> <li>Select <em>User Mapping</em></li> <li>Select the desired database you want to assign this user access to.<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-23_49_23-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> <li>Assign the user to the desired roles for the database.<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-23_49_45-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> <li>Repeat steps four and five for each database this user should have access to.</li> </ol> </li> </ol> <h1 id="downloadingepm11124">Downloading EPM 11.1.2.4</h1> <p>Oh, E-Delivery you are a pain. A necessary pain that I do not enjoy. E-Delivery has the option to download a <a href="http://wget.sh">wget.sh</a> file that can be used download the installation files.</p> <ol> <li> <p>Login to <a href="https://edelivery.oracle.com">E-Delivery</a></p> </li> <li> <p>Locate the desired software package and set Linux x86 64<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-14_09_03-SearchSoftware.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Uncheck the software you don't need (never understood why DRM, Client tools, and other non-Linux items were selected by default.)<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-13_30_25-SearchSoftware.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Select <em>WGET Options</em><br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-13_31_11-SearchSoftware.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Download the <em><a href="http://wget.sh">wget.sh</a></em> script<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-13_31_30-SearchSoftware.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Copy the file to the Linux server.</p> </li> <li> <p>Edit the first line of the <em><a href="http://wget.sh">wget.sh</a></em> script since its targeting the <em>sh</em> shell which does not support the <code>-s</code> option on the <code>read</code> command.</p> <pre><code>#!/bin/sh </code></pre> <p>Change this line to use bash shell.</p> <pre><code>#!/bin/bash </code></pre> </li> <li> <p>Run the <a href="http://wget.sh">wget.sh</a> command and follow the prompts.</p> <pre><code>./wget.sh </code></pre> <p><img src="http://epmjunkie.com/content/images/2017/07/2017-07-21-14_24_05-kkikta@epm-11-1-2-4_--.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Go get coffee. Even though I have a 200Mbs connection its going to take a while.</p> </li> </ol> <h1 id="prepareforinstallation">Prepare for installation</h1> <ol> <li> <p>Unzip the files into a single directory</p> <pre><code>unzip 'V*.zip' -d InstallFiles </code></pre> </li> <li> <p>Create the user who will do the installation and run the applications once installed.</p> <pre><code>sudo adduser epm </code></pre> </li> <li> <p>Modify <em>/etc/security/limits.conf</em> to increase the hard and soft file descriptor limits.</p> <pre><code>epm hard nofile 131072 epm soft nofile 4096 </code></pre> </li> <li> <p>Install <em>make</em>, <em>gcc</em>, <em>rpm</em>, <em>libxtst6</em>, <em>libxi6</em> and <em>libaio</em> <em>(see footnote 15)</em></p> <pre><code>sudo apt-get install build-essential rpm libxtst6 libaio1 libpth-dev libpthread-stubs0-dev </code></pre> </li> <li> <p>Link <em>rpm</em> to the location the EPM installer is expecting it at and x86-64-linux-gnu to /usr/lib64.</p> <pre><code> ln -s /usr/bin/rpm /bin/rpm ln -s /usr/lib/x86_64-linux-gnu /usr/lib64 </code></pre> </li> <li> <p>Set the X11 display setting (even though I am using console, something in OHS requires it)</p> <pre><code> export DISPLAY=:0.0 </code></pre> </li> <li> <p>Move the install files to a directory owned by that user</p> <pre><code>sudo mv InstallFiles /home/epm/ </code></pre> </li> <li> <p>Change the owner of the files</p> <pre><code>sudo chown -R epm:epm /home/epm/InstallFiles </code></pre> </li> <li> <p>Become the new user</p> <pre><code>sudo su - epm </code></pre> </li> <li> <p>Change directory to the install folder.</p> <pre><code>cd ~/InstallFiles </code></pre> </li> </ol> <h1 id="installoracleepm">Install Oracle EPM</h1> <p>So for this particular installation, I forgot to add the GUI and don't really want to install Xming. So console it is.</p> <ol> <li> <p>Run the install tool.</p> <pre><code>./installTool.sh -console </code></pre> </li> <li> <p>Since I want English I select <strong>0</strong></p> </li> <li> <p>Verify prerequisite checks are successful<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn4" id="fnref4">[4]</a></sup></p> </li> </ol> <ol start="5"> <li> <p>Define the EPM installation path (/home/epm/Oracle/Middleware)</p> </li> <li> <p>Select a <em>New Installation</em> (Option 0)</p> </li> <li> <p>Select components to install (this is where it gets tricky in the console.)</p> <ol> <li>At Oracle EPM System - 2: Expand</li> <li>Foundation Services - 2: Expand</li> <li>Foundation Components - 0: Select <ul> <li>Foundation Services Java Web Application</li> <li>Static Content Files</li> <li>Oracle HTTP Server</li> <li>WebLogic Application Server</li> </ul> </li> <li>Oracle Database Client 32-bit - 0: Next<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn5" id="fnref5">[5]</a></sup></li> </ol> <ol start="5"> <li>Oracle Database Client 64-bit - 0: Next</li> <li>Performance Management Architect - 1: Deselect<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn6" id="fnref6">[6]</a></sup></li> </ol> <ol start="7"> <li> <p>Calculation Manager - 0: Select</p> </li> <li> <p>Essbase - 2: Expand</p> <ol> <li>Essbase Administration Services Java Web Application - 0: Select</li> <li>Provider Services Java Web Application - 0: Select</li> <li>Provider Services Java Web Application Samples - 1: Deselect</li> <li>Essbase Studio Server - 1: Deselect</li> <li>Essbase Studio Server Samples - 1: Deselect</li> <li>Essbase Server - 0: Select</li> <li>Essbase Server Samples - 0: Select<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn7" id="fnref7">[7]</a></sup></li> </ol> </li> <li> <p>Reporting and Analysis - 0: Select<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn8" id="fnref8">[8]</a></sup></p> </li> </ol> <ol start="10"> <li>Planning - 0: Select</li> <li>Financial Close Managment - 1: Deselect</li> <li>Tax Managment - 1: Deselect</li> <li>Disclosure Management - 1: Deselect</li> <li>Financial Management - 2: Expand <ol> <li>Financial Management SDK - 0: Select</li> <li>Financial Management Java Web Applications - 1: Deselect<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn9" id="fnref9">[9]</a></sup></li> </ol> <ol start="3"> <li>Financial Management Server - 1: Deselect</li> </ol> </li> <li>Strategic Finance - 1: Deselect</li> <li>FDM Enterprise Edition - 0: Select<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn10" id="fnref10">[10]</a></sup></li> </ol> <ol start="17"> <li>Profitability and Cost Management - 1: Deselect</li> </ol> </li> <li> <p>Confirm my selections</p> <pre><code>Checking for available disk space in the /home/epm/Oracle/Middleware/EPMSystem11R1 directory. The selected components require 12703 MB free disk space. You have 91985 MB free disk space. EPM Oracle Home: /home/epm/Oracle/Middleware/EPMSystem11R1 Common Components Essbase Product Common Components Product Common Components Oracle Common Files Tools OPMN Foundation Services Calculation Manager Java Web Application WebLogic Application Server Oracle HTTP Server Static Content Files Workspace Java Web Application Foundation Services Java Web Applications Essbase Essbase Client Samples Essbase Client Essbase Server Samples Essbase Server Provider Services Java Web Application Essbase Administration Services Java Web Application Reporting and Analysis Financial Reporting Java Web Application Framework Services and Common Libraries Framework Java Web Application Planning Planning Java Web Application Financial Management Financial Management SDK FDM Enterprise Edition FDM Enterprise Edition Java Web Application ODI </code></pre> </li> </ol> <h1 id="configureoracleepm">Configure Oracle EPM</h1> <p>Next, we move on to the configuration.</p> <ol> <li> <p>Change to configuration directory</p> <pre><code>cd ~/Oracle/Middleware/EPMSystem11R1/common/config/11.1.2.0 </code></pre> </li> <li> <p>Run configuration utility</p> <pre><code>./configtool.sh -console </code></pre> </li> <li> <p>Set the EPM Oracle Instance path</p> <pre><code>/home/epm/Oracle/Middleware/user_projects </code></pre> </li> <li> <p>Set the Oracle EPM Instance Name</p> <pre><code>epmsystem1 </code></pre> </li> <li> <p>Setup Shared Services and Registry Database Connection - 1: Perform the first-time configuration of a Shared Services database</p> <ol> <li>Set the Database Type - 0: Oracle's MS SQL Server Driver (Type 4)</li> <li>Server: localhost</li> <li>Port: 1433</li> <li>Database Name: EPM<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn11" id="fnref11">[11]</a></sup></li> </ol> <ol start="5"> <li>User Name: epm</li> <li>Password: ********</li> <li>Launch Advanced Options - 1: No</li> </ol> </li> <li> <p>Select initial items selection - 2: Uncheck All</p> <ol> <li>Hyperion Foundation - 0: Select</li> <li>FDM Enterprise Edition - 1: Deselect</li> <li>Essbase - 0: Select</li> <li>Financial Management - 0: Select</li> <li>Planning - 0: Select</li> <li>Reporting and Analysis - 0: Select</li> </ol> </li> <li> <p>Use SSL - 1: No</p> </li> <li> <p>Mail Server Host: None</p> </li> <li> <p>Outgoing Port: 25</p> </li> <li> <p>Incoming Port: 143</p> </li> <li> <p>Administrator's Email Address: None</p> </li> <li> <p>Use SSL for mail - 1: No</p> </li> <li> <p>Enable SSL offloading - 1: No</p> </li> <li> <p>Use authentication to send email - 1: No</p> </li> <li> <p>LCM Export Import Location:</p> <pre><code>/home/epm/Oracle/Middleware/user_projects/epmsystem1/import_export </code></pre> </li> <li> <p>Configure Database - 0: Oracle's MS SQL Server Driver (Type 4)<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn12" id="fnref12">[12]</a></sup></p> </li> </ol> <ol start="17"> <li> <p>Enter the number of components you want to configure, divided by a comma: <em>0, 1, 2, 3</em>. This will configure the following in my environment:</p> <ul> <li>Essbase Administration Services</li> <li>Planning</li> <li>Reporting and Analysis</li> <li>Calculation Manager<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-22-00_10_30-Microsoft-SQL-Server-Management-Studio.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> </ul> </li> <li> <p>Server: localhost</p> </li> <li> <p>Port: 1433</p> </li> <li> <p>DB Name: EPM</p> </li> <li> <p>Username: epm</p> </li> <li> <p>Password: ********</p> </li> <li> <p>Advanced database options for selected rows - 1: No<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-22-00_13_10-epm@epm-11-1-2-4_--_Oracle_Middleware_EPMSystem11R1_common_config_11.1.2.0.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></p> </li> <li> <p>Repository Directory</p> <pre><code>/home/epm/Oracle/Middleware/user_projects/epmsystem1/ReportingAnalysis/data/RM1 </code></pre> </li> <li> <p>Port Range - 0: Default range (6800-6805)</p> </li> <li> <p>Deploy to Application Server (WebLogic) - 1: Deploy to new domain</p> </li> <li> <p>Domain Name: EPMSystem</p> </li> <li> <p>Administration Server Port: 7001</p> </li> <li> <p>Administrator User: epm_admin</p> </li> <li> <p>Administrator Password: ********</p> </li> <li> <p>Deploy the Java web applications to a single managed server - 1: No<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn13" id="fnref13">[13]</a></sup></p> </li> </ol> <ol start="32"> <li> <p>Deploy this Java web application - 0: Yes</p> <ol> <li>EAS</li> <li>Workspace</li> <li>Planning</li> <li>APS</li> <li>Shared Services</li> <li>RA Framework</li> <li>Financial Reporting</li> <li>CALC</li> </ol> </li> <li> <p>Essbase Cluster Name: EssbaseCluster-1</p> </li> <li> <p>Agent Port: 1423</p> <ol> <li>Active: Yes</li> </ol> </li> <li> <p>SSL Agent Port: 6423</p> <ol> <li>Active: No</li> </ol> </li> <li> <p>Start Port: 32768</p> </li> <li> <p>End Port: 33768</p> </li> <li> <p>Full path to application location (ARBORPATH)<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn14" id="fnref14">[14]</a></sup></p> <pre><code>/home/epm/Oracle/Middleware/user_projects/epmsystem1/EssbaseServer/essbaseserver1 </code></pre> </li> </ol> <ol start="39"> <li>Set Essbase language: 0 - English</li> <li>Binding Host Name: epm-11-1-2-4</li> <li>Configure Reporting and Analysis Framework Agent: <ol> <li>Agent Port: 6860</li> <li>Agent RMI Port: 6861</li> </ol> </li> <li>Financial Reporting - Configure RMI Ports Range - 0: Default (8205-8228)</li> <li>Setup Oracle BIEE - 1: No</li> <li>Setup Oracle BI Publisher - 1: No</li> <li>Planning - Configure RMI Server <ol> <li>Port: 11333</li> </ol> </li> <li>Web Server Type - 0: Oracle HTTP Server</li> <li>Web Server Port: 19000</li> <li>Set logical address for applications - 0: Yes</li> <li>Launch Advanced Options - 1: No</li> <li>Update the logical address for the Java web applications - 0: Set all</li> <li>Host: epm-11-1-2-4</li> <li>Port: 19000</li> <li>SSL Port: 19443</li> <li>Admin Name: admin</li> <li>Password: ********</li> <li>Verify the tasks and &quot;Let 'er rip tater chip&quot;<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-22-00_42_48-epm@epm-11-1-2-4_--_Oracle_Middleware_EPMSystem11R1_common_config_11.1.2.0.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"></li> </ol> <h1 id="results">Results</h1> <p>Well, I would like to say it was a complete success but as with many installs, something always seems to come up. Luckily it's just OHS (Apache), but it's always something.<br> <img src="http://epmjunkie.com/content/images/2017/07/2017-07-22-00_47_25-epm@epm-11-1-2-4_--_Oracle_Middleware_EPMSystem11R1_common_config_11.1.2.0.png" alt="EPM 11.1.2.4 and SQL Server on Ubuntu"><br> So now I got to go track down why OHS has decided to not play nice<sup class="footnote-ref"><a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fn15" id="fnref15">[15]</a></sup>. On a positive note, this was by far the fastest configure/deploy I have ever seen and this is a single virtual CPU VM on my laptop, not sure if its the GUI overhead but this was like 60 - 90 seconds for configuring and deploy.</p> <h1 id="finalthoughts">Final Thoughts</h1> <p>After pouring through logs and adding libraries I eventually I gave in and installed some X11 libraries, configured Xming. Once I ran the install tool again I found that the GUI was reporting that Oracle HTTP Server had not installed correctly. I made several attempts to resolve issues but as when I eventually resolved the dependencies it started to report bizarre permissions problems. I suspect the easiest solution is to clear the install and restart since it is now complaining that it can't overwrite files created by the installer.</p> <hr class="footnotes-sep"> <section class="footnotes"> <ol class="footnotes-list"> <li id="fn1" class="footnote-item"><p>I plan on using SSMS but this step is optional. This is only necessary if you are running a software firewall (not enabled by default) and want to allow external connections. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref1" class="footnote-backref">↩︎</a></p> </li> <li id="fn2" class="footnote-item"><p>If you prefer to use the command line tools you don't need SSMS. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref2" class="footnote-backref">↩︎</a></p> </li> <li id="fn3" class="footnote-item"><p>Databases in SQL Server are similar to schemas in Oracle. It's uncommon to have multiple databases on the same server in Oracle, however, in SQL Server it's quite normal. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref3" class="footnote-backref">↩︎</a></p> </li> <li id="fn4" class="footnote-item"><p>Many of these steps require you to select a number indicating how to proceed in the installer similar to the GUI. 1: Previous, 2: Next, 3: Cancel, 4: Redisplay or 5: to Load (whatever that means). The default is generally 2. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref4" class="footnote-backref">↩︎</a></p> </li> <li id="fn5" class="footnote-item"><p>The installer complains that these clients are not installed and they are required but I think it should work. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref5" class="footnote-backref">↩︎</a></p> </li> <li id="fn6" class="footnote-item"><p>To my knowledge EPMA still doesn't work on Linux but since doing more DRM I haven't used it so not sure. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref6" class="footnote-backref">↩︎</a></p> </li> <li id="fn7" class="footnote-item"><p>Default is Deselect but since I am going to be doing some tests why not have the sample apps <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref7" class="footnote-backref">↩︎</a></p> </li> <li id="fn8" class="footnote-item"><p>With the install files I downloaded Interactive Reporting and SQR Production Reporting is not included so it is safe for me to make this choice. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref8" class="footnote-backref">↩︎</a></p> </li> <li id="fn9" class="footnote-item"><p>I have no need for HFM in this environment. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref9" class="footnote-backref">↩︎</a></p> </li> <li id="fn10" class="footnote-item"><p>No immediate plans but I might need it later so ill install and not configure it. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref10" class="footnote-backref">↩︎</a></p> </li> <li id="fn11" class="footnote-item"><p>These settings will depend on what values you entered in the SQL Server database configuration steps above. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref11" class="footnote-backref">↩︎</a></p> </li> <li id="fn12" class="footnote-item"><p>This time it's for configuring the applications we selected to configure. I am going to keep it simple and only use a single database for the selected applications. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref12" class="footnote-backref">↩︎</a></p> </li> <li id="fn13" class="footnote-item"><p>Since this is a test box I probably should save on memory usage but I just haven't had much luck with this setting. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref13" class="footnote-backref">↩︎</a></p> </li> <li id="fn14" class="footnote-item"><p>Love the nostalgia but I would have thought by now they would have modified this to be ESSBASEPATH or something. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref14" class="footnote-backref">↩︎</a></p> </li> <li id="fn15" class="footnote-item"><p>Checked the configure log and found that OHS couldn't find <em>make</em> and quite a few other libraries related to Xorg (X11) (XWindows). I am not sure why the console bases config needs X. <a href="http://epmjunkie.com/epm-11-1-2-4-on-linux-with-sql-server/#fnref15" class="footnote-backref">↩︎</a></p> </li> </ol> </section> </div> Keith Kikta 597236f9933ac748ca20eabf Thu Jul 27 2017 14:54:12 GMT-0400 (EDT) Important Design Considerations When Moving from Oracle Essbase On-Premise to Oracle Analytics Cloud (OAC) http://blog.performancearchitects.com/wp/2017/07/26/important-design-considerations-when-moving-from-oracle-essbase-on-premise-to-oracle-analytics-cloud-oac/ <p><strong> </strong>Author: Andy Tauro, Performance Architects</p> <p>We have witnessed a steady stream of commentary on the promise of what <a href="https://cloud.oracle.com/en_US/oachttps:/cloud.oracle.com/en_US/oac">Oracle Analytics Cloud (OAC)</a>, otherwise known as <a href="http://www.oracle.com/technetwork/middleware/essbase/overview/index.html">Essbase</a>, <a href="https://cloud.oracle.com/business_intelligence">BI Cloud Service</a>, and <a href="https://www.oracle.com/solutions/business-analytics/data-visualization.html">Data Visualization</a> (DV) in the cloud, would do when it is released, as well as where to buy a subscription. Now that OAC is generally available as a <a href="https://en.wikipedia.org/wiki/Platform_as_a_service">Platform as a Service (PaaS)</a> offering, we decided to take it through its paces and see what it can really do for those of you who own Essbase on-premise:</p> <ul> <li><strong>Hybrid BSO is enabled. </strong>Hybrid BSO brings the most-loved functionality of ASO to BSO cubes, and in OAC is turned on by default. This means reduced calculation overhead and greatly reduced disk space usage (= reduced subscription cost!) for most solutions out there, and those that can be built.</li> </ul> <ul> <li><strong>Implied Sharing went away</strong>. This feature has been painful for Essbase development veterans. While initially implemented with good intentions, it has caused more trouble than it has helped. It has often been a trap to avoid with careful design practices. In OAC, all stored members in Essbase will hold data, so this issue is resolved!</li> </ul> <ul> <li><strong>Dedicated Lifecycle Management (Essbase LCM Utility) works.</strong> The tool to extract Essbase cubes from on-premise installations works with 11.1.2.4.X (and later) versions of Essbase…and it works beautifully, with no changes needed to existing cubes except one (included in the next point here).</li> </ul> <ul> <li><strong>All cubes are Unicode only.</strong> While Essbase has had Unicode capabilities forever, due to several reasons folks have preferred to stay non-Unicode. Well, no more. The Unicode version of Essbase has matured enough that it is the only option now. So, when migrating cubes to OAC using the Essbase LCM Utility, first convert them to Unicode. Otherwise, they will need to be rebuilt using other means, such as Application Workbooks.</li> </ul> <p>While there are a few more technical differences between the on-premise and cloud versions of Essbase, they are mainly details, and do not necessarily impact the overall solution as much as the points above. Stay tuned for more details on how Essbase works in OAC, or send us a note at <a href="mailto:sales@performancearchitects.com">sales@performancearchitects.com</a> if you want more details on how OAC could work for you.</p> Melanie Mathews http://blog.performancearchitects.com/wp/?p=2079 Wed Jul 26 2017 05:28:17 GMT-0400 (EDT) Important Design Considerations When Moving from Oracle Essbase On-Premise to Oracle Analytics Cloud (OAC) @PerfArchitects @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://blog.performancearchitects.com/wp/2017/07/26/important-design-considerations-when-moving-from-oracle-essbase-on-premise-to-oracle-analytics-cloud-oac/ <p><strong> </strong>Author: Andy Tauro, Performance Architects</p> <p>We have witnessed a steady stream of commentary on the promise of what <a href="https://cloud.oracle.com/en_US/oachttps:/cloud.oracle.com/en_US/oac">Oracle Analytics Cloud (OAC)</a>, otherwise known as <a href="http://www.oracle.com/technetwork/middleware/essbase/overview/index.html">Essbase</a>, <a href="https://cloud.oracle.com/business_intelligence">BI Cloud Service</a>, and <a href="https://www.oracle.com/solutions/business-analytics/data-visualization.html">Data Visualization</a> (DV) in the cloud, would do when it is released, as well as where to buy a subscription. Now that OAC is generally available as a <a href="https://en.wikipedia.org/wiki/Platform_as_a_service">Platform as a Service (PaaS)</a> offering, we decided to take it through its paces and see what it can really do for those of you who own Essbase on-premise:</p> <ul> <li><strong>Hybrid BSO is enabled. </strong>Hybrid BSO brings the most-loved functionality of ASO to BSO cubes, and in OAC is turned on by default. This means reduced calculation overhead and greatly reduced disk space usage (= reduced subscription cost!) for most solutions out there, and those that can be built.</li> </ul> <ul> <li><strong>Implied Sharing went away</strong>. This feature has been painful for Essbase development veterans. While initially implemented with good intentions, it has caused more trouble than it has helped. It has often been a trap to avoid with careful design practices. In OAC, all stored members in Essbase will hold data, so this issue is resolved!</li> </ul> <ul> <li><strong>Dedicated Lifecycle Management (Essbase LCM Utility) works.</strong> The tool to extract Essbase cubes from on-premise installations works with 11.1.2.4.X (and later) versions of Essbase…and it works beautifully, with no changes needed to existing cubes except one (included in the next point here).</li> </ul> <ul> <li><strong>All cubes are Unicode only.</strong> While Essbase has had Unicode capabilities forever, due to several reasons folks have preferred to stay non-Unicode. Well, no more. The Unicode version of Essbase has matured enough that it is the only option now. So, when migrating cubes to OAC using the Essbase LCM Utility, first convert them to Unicode. Otherwise, they will need to be rebuilt using other means, such as Application Workbooks.</li> </ul> <p>While there are a few more technical differences between the on-premise and cloud versions of Essbase, they are mainly details, and do not necessarily impact the overall solution as much as the points above. Stay tuned for more details on how Essbase works in OAC, or send us a note at <a href="mailto:sales@performancearchitects.com">sales@performancearchitects.com</a> if you want more details on how OAC could work for you.</p> Melanie Mathews http://blog.performancearchitects.com/wp/?p=2079 Wed Jul 26 2017 05:28:17 GMT-0400 (EDT) Fun with Oracle DRM and JavaScript http://theunlockedcube.com/oracle/drm/fun-with-oracle-drm-and-javascript/ <p>The post <a rel="nofollow" href="http://theunlockedcube.com/oracle/drm/fun-with-oracle-drm-and-javascript/">Fun with Oracle DRM and JavaScript</a> appeared first on <a rel="nofollow" href="http://theunlockedcube.com">The Unlocked Cube</a> and created by <a rel="nofollow" href="http://theunlockedcube.com/author/pete/">Pete Strayer</a>.</p> <p>Episode 1: PropDefObject Good day all! I thought I would start a new blog series detailing the different (Oracle DRM) Data Relationship Objects and how to work with them using the newer JavaScript option available for derived property types. In this first episode, we will look at the PropDefObject object since I recently worked with……</p> <p> <a class="continue-reading-link" href="http://theunlockedcube.com/oracle/drm/fun-with-oracle-drm-and-javascript/"><span>Continue reading</span><i class="icon-right-dir"></i></a></p> <p>The post <a rel="nofollow" href="http://theunlockedcube.com/oracle/drm/fun-with-oracle-drm-and-javascript/">Fun with Oracle DRM and JavaScript</a> appeared first on <a rel="nofollow" href="http://theunlockedcube.com">The Unlocked Cube</a> and created by <a rel="nofollow" href="http://theunlockedcube.com/author/pete/">Pete Strayer</a>.</p> Pete Strayer http://theunlockedcube.com/?p=1452 Tue Jul 25 2017 11:16:09 GMT-0400 (EDT) Fun with Oracle DRM and JavaScript @theunlockedcube @orclEPMblogs @orclEPMblogs http://theunlockedcube.com/oracle/drm/fun-with-oracle-drm-and-javascript/ <p>The post <a rel="nofollow" href="http://theunlockedcube.com/oracle/drm/fun-with-oracle-drm-and-javascript/">Fun with Oracle DRM and JavaScript</a> appeared first on <a rel="nofollow" href="http://theunlockedcube.com">The Unlocked Cube</a> and created by <a rel="nofollow" href="http://theunlockedcube.com/author/pete/">Pete Strayer</a>.</p> <p>Episode 1: PropDefObject Good day all! I thought I would start a new blog series detailing the different (Oracle DRM) Data Relationship Objects and how to work with them using the newer JavaScript option available for derived property types. In this first episode, we will look at the PropDefObject object since I recently worked with……</p> <p> <a class="continue-reading-link" href="http://theunlockedcube.com/oracle/drm/fun-with-oracle-drm-and-javascript/"><span>Continue reading</span><i class="icon-right-dir"></i></a></p> <p>The post <a rel="nofollow" href="http://theunlockedcube.com/oracle/drm/fun-with-oracle-drm-and-javascript/">Fun with Oracle DRM and JavaScript</a> appeared first on <a rel="nofollow" href="http://theunlockedcube.com">The Unlocked Cube</a> and created by <a rel="nofollow" href="http://theunlockedcube.com/author/pete/">Pete Strayer</a>.</p> Pete Strayer http://theunlockedcube.com/?p=1452 Tue Jul 25 2017 11:16:09 GMT-0400 (EDT) The ODI Agent, Restarts and Groovy @theunlockedcube http://theunlockedcube.com/oracle/odi/the-odi-agent-restarts-and-groovy/ <p>The post <a rel="nofollow" href="http://theunlockedcube.com/oracle/odi/the-odi-agent-restarts-and-groovy/">The ODI Agent, Restarts and Groovy</a> appeared first on <a rel="nofollow" href="http://theunlockedcube.com">The Unlocked Cube</a> and created by <a rel="nofollow" href="http://theunlockedcube.com/author/vijay/">Vijay Kurian</a>.</p> <p>I tend to work with ODI quite a bit. Recently, I came across a scenario where the standalone agent on one of our boxes was turning itself off once in a while. While the issue was fixed, it did provide the impetus for this post. Today, we’ll take a look at the ODI (11g) standalone……</p> <p> <a class="continue-reading-link" href="http://theunlockedcube.com/oracle/odi/the-odi-agent-restarts-and-groovy/"><span>Continue reading</span><i class="icon-right-dir"></i></a></p> <p>The post <a rel="nofollow" href="http://theunlockedcube.com/oracle/odi/the-odi-agent-restarts-and-groovy/">The ODI Agent, Restarts and Groovy</a> appeared first on <a rel="nofollow" href="http://theunlockedcube.com">The Unlocked Cube</a> and created by <a rel="nofollow" href="http://theunlockedcube.com/author/vijay/">Vijay Kurian</a>.</p> Vijay Kurian http://theunlockedcube.com/?p=1448 Mon Jul 24 2017 23:45:24 GMT-0400 (EDT) The ODI Agent, Restarts and Groovy http://theunlockedcube.com/oracle/odi/the-odi-agent-restarts-and-groovy/ <p>The post <a rel="nofollow" href="http://theunlockedcube.com/oracle/odi/the-odi-agent-restarts-and-groovy/">The ODI Agent, Restarts and Groovy</a> appeared first on <a rel="nofollow" href="http://theunlockedcube.com">The Unlocked Cube</a> and created by <a rel="nofollow" href="http://theunlockedcube.com/author/vijay/">Vijay Kurian</a>.</p> <p>I tend to work with ODI quite a bit. Recently, I came across a scenario where the standalone agent on one of our boxes was turning itself off once in a while. While the issue was fixed, it did provide the impetus for this post. Today, we’ll take a look at the ODI (11g) standalone……</p> <p> <a class="continue-reading-link" href="http://theunlockedcube.com/oracle/odi/the-odi-agent-restarts-and-groovy/"><span>Continue reading</span><i class="icon-right-dir"></i></a></p> <p>The post <a rel="nofollow" href="http://theunlockedcube.com/oracle/odi/the-odi-agent-restarts-and-groovy/">The ODI Agent, Restarts and Groovy</a> appeared first on <a rel="nofollow" href="http://theunlockedcube.com">The Unlocked Cube</a> and created by <a rel="nofollow" href="http://theunlockedcube.com/author/vijay/">Vijay Kurian</a>.</p> Vijay Kurian http://theunlockedcube.com/?p=1448 Mon Jul 24 2017 23:45:24 GMT-0400 (EDT) Weekly Offenders – Week Ending 7/22/2017 https://www.epmmarshall.com/weekly-offenders-week-ending-7222017/ <h3>Introduction to Weekly Offenders</h3> <p>A bit of a light week&#8230;</p> <p><a href="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?ssl=1" data-pp="lightbox[1628]" class="autolink lightbox " ><img src="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?resize=800%2C207&#038;ssl=1" alt="Weekly Offenders - Kscope17" data-recalc-dims="1" /></a></p> <h3><a href="http://essbasedownunder.com/">Essbase Down Under</a></h3> <p>Peter gives us a heavy does of the <a href="http://essbasedownunder.com/2017/07/resting-around-with-pbcs/"><strong>REST API in PBCS</strong> </a>after Kscope17.</p> <h3><a href="http://exploitsinhyperion.blogspot.com/">Exploits in Hyperion</a></h3> <p>Sibin has several posts this week.  He starts off with a post about digging into the <a href="http://exploitsinhyperion.blogspot.com/2017/07/hyperion-planning-application-getting.html"><strong>XML of an LCM export</strong></a>.  He also tells us that <a href="http://exploitsinhyperion.blogspot.com/2017/07/hyperion-error-epmins-01094-user.html"><strong>UAC is very bad</strong></a> for a Hyperion install.  Keeping with his previous installation post, he also tells us about the dependency of <a href="http://exploitsinhyperion.blogspot.com/2017/07/epmins-01050-cannot-install-selected.html"><strong>IIS for EPMA</strong></a>.</p> <h3><a href="https://devepm.com/">DEVEPM</a></h3> <p>Rodrigo shows us how to install the <a href="https://devepm.com/2017/07/17/odi-12c-standalone-agent-install-for-an-odi-11g-guy/"><strong>ODI 12c Standalone Agent</strong></a>.</p> <h3><a href="https://blogs.oracle.com/proactivesupportepm/">Oracle Business Analytics &#8211; Proactive Support Blog</a></h3> <p>The Proactive Support Blog has a set of OBIEE patches this week:</p> <ul> <li><a href="https://blogs.oracle.com/proactivesupportepm/obiee_12212170718"><strong>12.2.1.2.170718</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/obiee_12211170718"><strong>12.2.1.1.170718</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/obiee_11119170718"><strong>11.1.1.9.170718</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/obiee_11117170718"><strong>11.1.1.7.170718</strong></a></li> </ul> <h3><a href="https://womaninepm.com/">Woman in EPM</a></h3> <p>Opal has a quick post on how to access the <a href="https://womaninepm.com/2017/07/18/oac-quick-tip-manually-accessing-essbase-cloud-log-files/"><strong>OAC log files</strong></a>.</p> <h3>Be On the Lookout!</h3> <p>That&#8217;s it for this week!  Be on the lookout for more great EPM Blog content next week!</p> <p>The post <a rel="nofollow" href="https://www.epmmarshall.com/weekly-offenders-week-ending-7222017/">Weekly Offenders &#8211; Week Ending 7/22/2017</a> appeared first on <a rel="nofollow" href="https://www.epmmarshall.com">EPM Marshall</a>.</p> Brian Marshall https://www.epmmarshall.com/?p=1628 Mon Jul 24 2017 08:00:54 GMT-0400 (EDT) Weekly Offenders – Week Ending 7/22/2017 @hyperionepmcom @orclEPMblogs @orclEPMblogs https://www.epmmarshall.com/weekly-offenders-week-ending-7222017/ <h3>Introduction to Weekly Offenders</h3> <p>A bit of a light week&#8230;</p> <p><a href="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?ssl=1" data-pp="lightbox[1628]" class="autolink lightbox " ><img src="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?resize=800%2C207&#038;ssl=1" alt="Weekly Offenders - Kscope17" data-recalc-dims="1" /></a></p> <h3><a href="http://essbasedownunder.com/">Essbase Down Under</a></h3> <p>Peter gives us a heavy does of the <a href="http://essbasedownunder.com/2017/07/resting-around-with-pbcs/"><strong>REST API in PBCS</strong> </a>after Kscope17.</p> <h3><a href="http://exploitsinhyperion.blogspot.com/">Exploits in Hyperion</a></h3> <p>Sibin has several posts this week.  He starts off with a post about digging into the <a href="http://exploitsinhyperion.blogspot.com/2017/07/hyperion-planning-application-getting.html"><strong>XML of an LCM export</strong></a>.  He also tells us that <a href="http://exploitsinhyperion.blogspot.com/2017/07/hyperion-error-epmins-01094-user.html"><strong>UAC is very bad</strong></a> for a Hyperion install.  Keeping with his previous installation post, he also tells us about the dependency of <a href="http://exploitsinhyperion.blogspot.com/2017/07/epmins-01050-cannot-install-selected.html"><strong>IIS for EPMA</strong></a>.</p> <h3><a href="https://devepm.com/">DEVEPM</a></h3> <p>Rodrigo shows us how to install the <a href="https://devepm.com/2017/07/17/odi-12c-standalone-agent-install-for-an-odi-11g-guy/"><strong>ODI 12c Standalone Agent</strong></a>.</p> <h3><a href="https://blogs.oracle.com/proactivesupportepm/">Oracle Business Analytics &#8211; Proactive Support Blog</a></h3> <p>The Proactive Support Blog has a set of OBIEE patches this week:</p> <ul> <li><a href="https://blogs.oracle.com/proactivesupportepm/obiee_12212170718"><strong>12.2.1.2.170718</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/obiee_12211170718"><strong>12.2.1.1.170718</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/obiee_11119170718"><strong>11.1.1.9.170718</strong></a></li> <li><a href="https://blogs.oracle.com/proactivesupportepm/obiee_11117170718"><strong>11.1.1.7.170718</strong></a></li> </ul> <h3><a href="https://womaninepm.com/">Woman in EPM</a></h3> <p>Opal has a quick post on how to access the <a href="https://womaninepm.com/2017/07/18/oac-quick-tip-manually-accessing-essbase-cloud-log-files/"><strong>OAC log files</strong></a>.</p> <h3>Be On the Lookout!</h3> <p>That&#8217;s it for this week!  Be on the lookout for more great EPM Blog content next week!</p> <p>The post <a rel="nofollow" href="https://www.epmmarshall.com/weekly-offenders-week-ending-7222017/">Weekly Offenders &#8211; Week Ending 7/22/2017</a> appeared first on <a rel="nofollow" href="https://www.epmmarshall.com">EPM Marshall</a>.</p> Brian Marshall https://www.epmmarshall.com/?p=1628 Mon Jul 24 2017 08:00:54 GMT-0400 (EDT) Welcome to Ghost @newbish http://epmjunkie.com/welcome/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/welcome.jpg" alt="Welcome to Ghost"><p>Hey! Welcome to Ghost, it's great to have you :)</p> <p>We know that first impressions are important, so we've populated your new site with some initial <strong>Getting Started</strong> posts that will help you get familiar with everything in no time. This is the first one!</p> <h3 id="thereareafewthingsthatyoushouldknowupfront">There are a few things that you should know up-front:</h3> <ol> <li> <p>Ghost is designed for ambitious, professional publishers who want to actively build a business around their content. That's who it works best for. If you're using Ghost for some other purpose, that's fine too - but it might not be the best choice for you.</p> </li> <li> <p>The entire platform can be modified and customized to suit your needs, which is very powerful, but doing so <strong>does</strong> require some knowledge of code. Ghost is not necessarily a good platform for beginners or people who just want a simple personal blog.</p> </li> <li> <p>For the best experience we recommend downloading the <a href="https://ghost.org/downloads/">Ghost Desktop App</a> for your computer, which is the best way to access your Ghost site on a desktop device.</p> </li> </ol> <p>Ghost is made by an independent non-profit organisation called the Ghost Foundation. We are 100% self funded by revenue from our <a href="https://ghost.org/pricing">Ghost(Pro)</a> service, and every penny we make is re-invested into funding further development of free, open source technology for modern journalism.</p> <p>The main thing you'll want to read about next is probably: <a href="http://epmjunkie.com/the-editor/">the Ghost editor</a>.</p> <p>Once you're done reading, you can simply delete the default <strong>Ghost</strong> user from your team to remove all of these introductory posts!</p> </div> Ghost 597010871d5eff320d689cc2 Wed Jul 19 2017 22:08:12 GMT-0400 (EDT) Welcome to Ghost http://epmjunkie.com/welcome/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/welcome.jpg" alt="Welcome to Ghost"><p>Hey! Welcome to Ghost, it's great to have you :)</p> <p>We know that first impressions are important, so we've populated your new site with some initial <strong>Getting Started</strong> posts that will help you get familiar with everything in no time. This is the first one!</p> <h3 id="thereareafewthingsthatyoushouldknowupfront">There are a few things that you should know up-front:</h3> <ol> <li> <p>Ghost is designed for ambitious, professional publishers who want to actively build a business around their content. That's who it works best for. If you're using Ghost for some other purpose, that's fine too - but it might not be the best choice for you.</p> </li> <li> <p>The entire platform can be modified and customized to suit your needs, which is very powerful, but doing so <strong>does</strong> require some knowledge of code. Ghost is not necessarily a good platform for beginners or people who just want a simple personal blog.</p> </li> <li> <p>For the best experience we recommend downloading the <a href="https://ghost.org/downloads/">Ghost Desktop App</a> for your computer, which is the best way to access your Ghost site on a desktop device.</p> </li> </ol> <p>Ghost is made by an independent non-profit organisation called the Ghost Foundation. We are 100% self funded by revenue from our <a href="https://ghost.org/pricing">Ghost(Pro)</a> service, and every penny we make is re-invested into funding further development of free, open source technology for modern journalism.</p> <p>The main thing you'll want to read about next is probably: <a href="http://epmjunkie.com/the-editor/">the Ghost editor</a>.</p> <p>Once you're done reading, you can simply delete the default <strong>Ghost</strong> user from your team to remove all of these introductory posts!</p> </div> Ghost 597010871d5eff320d689cc2 Wed Jul 19 2017 22:08:12 GMT-0400 (EDT) Using the Ghost editor @newbish http://epmjunkie.com/the-editor/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/writing.jpg" alt="Using the Ghost editor"><p>Ghost uses a language called <strong>Markdown</strong> to format text.</p> <p>When you go to edit a post and see special characters and colours intertwined between the words, those are Markdown shortcuts which tell Ghost what to do with the words in your document. The biggest benefit of Markdown is that you can quickly apply formatting as you type, without needing to pause.</p> <p>At the bottom of the editor, you'll find a toolbar with basic formatting options to help you get started as easily as possible. You'll also notice that there's a <strong>?</strong> icon, which contains more advanced shortcuts.</p> <p>For now, though, let's run you through some of the basics. You'll want to make sure you're editing this post in order to see all the Markdown we've used.</p> <h2 id="formattingtext">Formatting text</h2> <p>The most common shortcuts are of course, <strong>bold</strong> text, <em>italic</em> text, and <a href="https://example.com">hyperlinks</a>. These generally make up the bulk of any document. You can type the characters out, but you can also use keyboard shortcuts.</p> <ul> <li><code>CMD/Ctrl + B</code> for Bold</li> <li><code>CMD/Ctrl + I</code> for Italic</li> <li><code>CMD/Ctrl + K</code> for a Link</li> <li><code>CMD/Ctrl + H</code> for a Heading (Press multiple times for h2/h3/h4/etc)</li> </ul> <p>With just a couple of extra characters here and there, you're well on your way to creating a beautifully formatted story.</p> <h2 id="insertingimages">Inserting images</h2> <p>Images in Markdown look just the same as links, except they're prefixed with an exclamation mark, like this:</p> <p><code>![Image description](/path/to/image.jpg)</code></p> <p><img src="https://casper.ghost.org/v1.0.0/images/computer.jpg" alt="Using the Ghost editor"></p> <p>Most Markdown editors don't make you type this out, though. In Ghost you can click on the image icon in the toolbar at the bottom of the editor, or you can just click and drag an image from your desktop directly into the editor. Both will upload the image for you and generate the appropriate Markdown.</p> <p><em><strong>Important Note:</strong> Ghost does not currently have automatic image resizing, so it's always a good idea to make sure your images aren't gigantic files <strong>before</strong> uploading them to Ghost.</em></p> <h2 id="makinglists">Making lists</h2> <p>Lists in HTML are a formatting nightmare, but in Markdown they become an absolute breeze with just a couple of characters and a bit of smart automation. For numbered lists, just write out the numbers. For bullet lists, just use <code>*</code> or <code>-</code> or <code>+</code>. Like this:</p> <ol> <li>Crack the eggs over a bowl</li> <li>Whisk them together</li> <li>Make an omellete</li> </ol> <p>or</p> <ul> <li>Remember to buy milk</li> <li>Feed the cat</li> <li>Come up with idea for next story</li> </ul> <h2 id="addingquotes">Adding quotes</h2> <p>When you want to pull out a particularly good except in the middle of a piece, you can use <code>&gt;</code> at the beginning of a paragraph to turn it into a Blockquote. You might've seen this formatting before in email clients.</p> <blockquote> <p>A well placed quote guides a reader through a story, helping them to understand the most important points being made</p> </blockquote> <p>All themes handles blockquotes slightly differently. Sometimes they'll look better kept shorter, while other times you can quote fairly hefty amounts of text and get away with it. Generally, the safest option is to use blockquotes sparingly.</p> <h2 id="dividingthingsup">Dividing things up</h2> <p>If you're writing a piece in parts and you just feel like you need to divide a couple of sections distinctly from each other, a horizontal rule might be just what you need. Dropping <code>---</code> on a new line will create a sleak divider, anywhere you want it.</p> <hr> <p>This should get you going with the vast majority of what you need to do in the editor, but if you're still curious about more advanced tips then check out the <a href="http://epmjunkie.com/advanced-markdown/">Advanced Markdown Guide</a> - or if you'd rather learn about how Ghost taxononomies work, we've got a overview of <a href="http://epmjunkie.com/using-tags/">how to use Ghost tags</a>.</p> </div> Ghost 597010871d5eff320d689cc1 Wed Jul 19 2017 22:08:11 GMT-0400 (EDT) Using the Ghost editor http://epmjunkie.com/the-editor/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/writing.jpg" alt="Using the Ghost editor"><p>Ghost uses a language called <strong>Markdown</strong> to format text.</p> <p>When you go to edit a post and see special characters and colours intertwined between the words, those are Markdown shortcuts which tell Ghost what to do with the words in your document. The biggest benefit of Markdown is that you can quickly apply formatting as you type, without needing to pause.</p> <p>At the bottom of the editor, you'll find a toolbar with basic formatting options to help you get started as easily as possible. You'll also notice that there's a <strong>?</strong> icon, which contains more advanced shortcuts.</p> <p>For now, though, let's run you through some of the basics. You'll want to make sure you're editing this post in order to see all the Markdown we've used.</p> <h2 id="formattingtext">Formatting text</h2> <p>The most common shortcuts are of course, <strong>bold</strong> text, <em>italic</em> text, and <a href="https://example.com">hyperlinks</a>. These generally make up the bulk of any document. You can type the characters out, but you can also use keyboard shortcuts.</p> <ul> <li><code>CMD/Ctrl + B</code> for Bold</li> <li><code>CMD/Ctrl + I</code> for Italic</li> <li><code>CMD/Ctrl + K</code> for a Link</li> <li><code>CMD/Ctrl + H</code> for a Heading (Press multiple times for h2/h3/h4/etc)</li> </ul> <p>With just a couple of extra characters here and there, you're well on your way to creating a beautifully formatted story.</p> <h2 id="insertingimages">Inserting images</h2> <p>Images in Markdown look just the same as links, except they're prefixed with an exclamation mark, like this:</p> <p><code>![Image description](/path/to/image.jpg)</code></p> <p><img src="https://casper.ghost.org/v1.0.0/images/computer.jpg" alt="Using the Ghost editor"></p> <p>Most Markdown editors don't make you type this out, though. In Ghost you can click on the image icon in the toolbar at the bottom of the editor, or you can just click and drag an image from your desktop directly into the editor. Both will upload the image for you and generate the appropriate Markdown.</p> <p><em><strong>Important Note:</strong> Ghost does not currently have automatic image resizing, so it's always a good idea to make sure your images aren't gigantic files <strong>before</strong> uploading them to Ghost.</em></p> <h2 id="makinglists">Making lists</h2> <p>Lists in HTML are a formatting nightmare, but in Markdown they become an absolute breeze with just a couple of characters and a bit of smart automation. For numbered lists, just write out the numbers. For bullet lists, just use <code>*</code> or <code>-</code> or <code>+</code>. Like this:</p> <ol> <li>Crack the eggs over a bowl</li> <li>Whisk them together</li> <li>Make an omellete</li> </ol> <p>or</p> <ul> <li>Remember to buy milk</li> <li>Feed the cat</li> <li>Come up with idea for next story</li> </ul> <h2 id="addingquotes">Adding quotes</h2> <p>When you want to pull out a particularly good except in the middle of a piece, you can use <code>&gt;</code> at the beginning of a paragraph to turn it into a Blockquote. You might've seen this formatting before in email clients.</p> <blockquote> <p>A well placed quote guides a reader through a story, helping them to understand the most important points being made</p> </blockquote> <p>All themes handles blockquotes slightly differently. Sometimes they'll look better kept shorter, while other times you can quote fairly hefty amounts of text and get away with it. Generally, the safest option is to use blockquotes sparingly.</p> <h2 id="dividingthingsup">Dividing things up</h2> <p>If you're writing a piece in parts and you just feel like you need to divide a couple of sections distinctly from each other, a horizontal rule might be just what you need. Dropping <code>---</code> on a new line will create a sleak divider, anywhere you want it.</p> <hr> <p>This should get you going with the vast majority of what you need to do in the editor, but if you're still curious about more advanced tips then check out the <a href="http://epmjunkie.com/advanced-markdown/">Advanced Markdown Guide</a> - or if you'd rather learn about how Ghost taxononomies work, we've got a overview of <a href="http://epmjunkie.com/using-tags/">how to use Ghost tags</a>.</p> </div> Ghost 597010871d5eff320d689cc1 Wed Jul 19 2017 22:08:11 GMT-0400 (EDT) Organising your content with tags @newbish http://epmjunkie.com/using-tags/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/tags.jpg" alt="Organising your content with tags"><p>Ghost has a single, powerful organisational taxonomy, called tags.</p> <p>It doesn't matter whether you want to call them categories, tags, boxes, or anything else. You can think of Ghost tags a lot like Gmail labels. By tagging posts with one or more keyword, you can organise articles into buckets of related content.</p> <h2 id="basictagging">Basic tagging</h2> <p>When you write a post, you can assign tags to help differentiate between categories of content. For example, you might tag some posts with <code>News</code> and other posts with <code>Cycling</code>, which would create two distinct categories of content listed on <code>/tag/news/</code> and <code>/tag/cycling/</code>, respectively.</p> <p>If you tag a post with both <code>News</code> <em>and</em> <code>Cycling</code> - then it appears in both sections.</p> <p>Tag archives are like dedicated home-pages for each category of content that you have. They have their own pages, their own RSS feeds, and can support their own cover images and meta data.</p> <h2 id="theprimarytag">The primary tag</h2> <p>Inside the Ghost editor, you can drag and drop tags into a specific order. The first tag in the list is always given the most importance, and some themes will only display the primary tag (the first tag in the list) by default. So you can add the most important tag which you want to show up in your theme, but also add a bunch of related tags which are less important.</p> <p><mark><strong>News</strong>, Cycling, Bart Stevens, Extreme Sports</mark></p> <p>In this example, <strong>News</strong> is the primary tag which will be displayed by the theme, but the post will also still receive all the other tags, and show up in their respective archives.</p> <h2 id="privatetags">Private tags</h2> <p>Sometimes you may want to assign a post a specific tag, but you don't necessarily want that tag appearing in the theme or creating an archive page. In Ghost, hashtags are private and can be used for special styling.</p> <p>For example, if you sometimes publish posts with video content - you might want your theme to adapt and get rid of the sidebar for these posts, to give more space for an embedded video to fill the screen. In this case, you could use private tags to tell your theme what to do.</p> <p><mark><strong>News</strong>, Cycling, #video</mark></p> <p>Here, the theme would assign the post publicly displayed tags of <code>News</code>, and <code>Cycling</code> - but it would also keep a private record of the post being tagged with <code>#video</code>.</p> <p>In your theme, you could then look for private tags conditionally and give them special formatting:</p> <pre><code>{{#post}} {{#has tag="#video"}} ...markup for a nice big video post layout... {{else}} ...regular markup for a post... {{/has}} {{/post}} </code></pre> <p>You can find documentation for theme development techniques like this and many more over on Ghost's extensive <a href="https://themes.ghost.org/">theme documentation</a>.</p> </div> Ghost 597010871d5eff320d689cc0 Wed Jul 19 2017 22:08:10 GMT-0400 (EDT) Organising your content with tags http://epmjunkie.com/using-tags/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/tags.jpg" alt="Organising your content with tags"><p>Ghost has a single, powerful organisational taxonomy, called tags.</p> <p>It doesn't matter whether you want to call them categories, tags, boxes, or anything else. You can think of Ghost tags a lot like Gmail labels. By tagging posts with one or more keyword, you can organise articles into buckets of related content.</p> <h2 id="basictagging">Basic tagging</h2> <p>When you write a post, you can assign tags to help differentiate between categories of content. For example, you might tag some posts with <code>News</code> and other posts with <code>Cycling</code>, which would create two distinct categories of content listed on <code>/tag/news/</code> and <code>/tag/cycling/</code>, respectively.</p> <p>If you tag a post with both <code>News</code> <em>and</em> <code>Cycling</code> - then it appears in both sections.</p> <p>Tag archives are like dedicated home-pages for each category of content that you have. They have their own pages, their own RSS feeds, and can support their own cover images and meta data.</p> <h2 id="theprimarytag">The primary tag</h2> <p>Inside the Ghost editor, you can drag and drop tags into a specific order. The first tag in the list is always given the most importance, and some themes will only display the primary tag (the first tag in the list) by default. So you can add the most important tag which you want to show up in your theme, but also add a bunch of related tags which are less important.</p> <p><mark><strong>News</strong>, Cycling, Bart Stevens, Extreme Sports</mark></p> <p>In this example, <strong>News</strong> is the primary tag which will be displayed by the theme, but the post will also still receive all the other tags, and show up in their respective archives.</p> <h2 id="privatetags">Private tags</h2> <p>Sometimes you may want to assign a post a specific tag, but you don't necessarily want that tag appearing in the theme or creating an archive page. In Ghost, hashtags are private and can be used for special styling.</p> <p>For example, if you sometimes publish posts with video content - you might want your theme to adapt and get rid of the sidebar for these posts, to give more space for an embedded video to fill the screen. In this case, you could use private tags to tell your theme what to do.</p> <p><mark><strong>News</strong>, Cycling, #video</mark></p> <p>Here, the theme would assign the post publicly displayed tags of <code>News</code>, and <code>Cycling</code> - but it would also keep a private record of the post being tagged with <code>#video</code>.</p> <p>In your theme, you could then look for private tags conditionally and give them special formatting:</p> <pre><code>{{#post}} {{#has tag="#video"}} ...markup for a nice big video post layout... {{else}} ...regular markup for a post... {{/has}} {{/post}} </code></pre> <p>You can find documentation for theme development techniques like this and many more over on Ghost's extensive <a href="https://themes.ghost.org/">theme documentation</a>.</p> </div> Ghost 597010871d5eff320d689cc0 Wed Jul 19 2017 22:08:10 GMT-0400 (EDT) Managing Ghost users @newbish http://epmjunkie.com/managing-users/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/team.jpg" alt="Managing Ghost users"><p>Ghost has a number of different user roles for your team</p> <h3 id="authors">Authors</h3> <p>The base user level in Ghost is an author. Authors can write posts, edit their own posts, and publish their own posts. Authors are <strong>trusted</strong> users. If you don't trust users to be allowed to publish their own posts, you shouldn't invite them to Ghost admin.</p> <h3 id="editors">Editors</h3> <p>Editors are the 2nd user level in Ghost. Editors can do everything that an Author can do, but they can also edit and publish the posts of others - as well as their own. Editors can also invite new authors to the site.</p> <h3 id="administrators">Administrators</h3> <p>The top user level in Ghost is Administrator. Again, administrators can do everything that Authors and Editors can do, but they can also edit all site settings and data, not just content. Additionally, administrators have full access to invite, manage or remove any other user of the site.</p> <h3 id="theowner">The Owner</h3> <p>There is only ever one owner of a Ghost site. The owner is a special user which has all the same permissions as an Administrator, but with two exceptions: The Owner can never be deleted. And in some circumstances the owner will have access to additional special settings if applicable — for example, billing details, if using Ghost(Pro).</p> <hr> <p>It's a good idea to ask all of your users to fill out their user profiles, including bio and social links. These will populate rich structured data for posts and generally create more opportunities for themes to fully populate their design.</p> </div> Ghost 597010871d5eff320d689cbf Wed Jul 19 2017 22:08:09 GMT-0400 (EDT) Managing Ghost users http://epmjunkie.com/managing-users/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/team.jpg" alt="Managing Ghost users"><p>Ghost has a number of different user roles for your team</p> <h3 id="authors">Authors</h3> <p>The base user level in Ghost is an author. Authors can write posts, edit their own posts, and publish their own posts. Authors are <strong>trusted</strong> users. If you don't trust users to be allowed to publish their own posts, you shouldn't invite them to Ghost admin.</p> <h3 id="editors">Editors</h3> <p>Editors are the 2nd user level in Ghost. Editors can do everything that an Author can do, but they can also edit and publish the posts of others - as well as their own. Editors can also invite new authors to the site.</p> <h3 id="administrators">Administrators</h3> <p>The top user level in Ghost is Administrator. Again, administrators can do everything that Authors and Editors can do, but they can also edit all site settings and data, not just content. Additionally, administrators have full access to invite, manage or remove any other user of the site.</p> <h3 id="theowner">The Owner</h3> <p>There is only ever one owner of a Ghost site. The owner is a special user which has all the same permissions as an Administrator, but with two exceptions: The Owner can never be deleted. And in some circumstances the owner will have access to additional special settings if applicable — for example, billing details, if using Ghost(Pro).</p> <hr> <p>It's a good idea to ask all of your users to fill out their user profiles, including bio and social links. These will populate rich structured data for posts and generally create more opportunities for themes to fully populate their design.</p> </div> Ghost 597010871d5eff320d689cbf Wed Jul 19 2017 22:08:09 GMT-0400 (EDT) Making your site private @newbish http://epmjunkie.com/private-sites/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/locked.jpg" alt="Making your site private"><p>Sometimes you might want to put your site behind closed doors</p> <p>If you've got a publication that you don't want the world to see yet because it's not ready to launch, you can hide your Ghost site behind a simple shared pass-phrase.</p> <p>You can toggle this preference on at the bottom of Ghost's General Settings</p> <p><img src="https://casper.ghost.org/v1.0.0/images/private.png" alt="Making your site private"></p> <p>Ghost will give you a short, randomly generated pass-phrase which you can share with anyone who needs access to the site while you're working on it. While this setting is enabled, all search engine optimisation features will be switched off to help keep the site off the radar.</p> <p>Do remember though, this is <em>not</em> secure authentication. You shouldn't rely on this feature for protecting important private data. It's just a simple, shared pass-phrase for very basic privacy.</p> </div> Ghost 597010871d5eff320d689cbe Wed Jul 19 2017 22:08:08 GMT-0400 (EDT) Making your site private http://epmjunkie.com/private-sites/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/locked.jpg" alt="Making your site private"><p>Sometimes you might want to put your site behind closed doors</p> <p>If you've got a publication that you don't want the world to see yet because it's not ready to launch, you can hide your Ghost site behind a simple shared pass-phrase.</p> <p>You can toggle this preference on at the bottom of Ghost's General Settings</p> <p><img src="https://casper.ghost.org/v1.0.0/images/private.png" alt="Making your site private"></p> <p>Ghost will give you a short, randomly generated pass-phrase which you can share with anyone who needs access to the site while you're working on it. While this setting is enabled, all search engine optimisation features will be switched off to help keep the site off the radar.</p> <p>Do remember though, this is <em>not</em> secure authentication. You shouldn't rely on this feature for protecting important private data. It's just a simple, shared pass-phrase for very basic privacy.</p> </div> Ghost 597010871d5eff320d689cbe Wed Jul 19 2017 22:08:08 GMT-0400 (EDT) Advanced Markdown tips @newbish http://epmjunkie.com/advanced-markdown/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/advanced.jpg" alt="Advanced Markdown tips"><p>There are lots of powerful things you can do with the Ghost editor</p> <p>If you've gotten pretty comfortable with <a href="http://epmjunkie.com/the-editor/">all the basics</a> of writing in Ghost, then you may enjoy some more advanced tips about the types of things you can do with Markdown!</p> <p>As with the last post about the editor, you'll want to be actually editing this post as you read it so that you can see all the Markdown code we're using.</p> <h2 id="specialformatting">Special formatting</h2> <p>As well as bold and italics, you can also use some other special formatting in Markdown when the need arises, for example:</p> <ul> <li><s>strike through</s></li> <li><mark>highlight</mark></li> <li>*escaped characters*</li> </ul> <h2 id="writingcodeblocks">Writing code blocks</h2> <p>There are two types of code elements which can be inserted in Markdown, the first is inline, and the other is block. Inline code is formatted by wrapping any word or words in back-ticks, <code>like this</code>. Larger snippets of code can be displayed across multiple lines using triple back ticks:</p> <pre><code>.my-link { text-decoration: underline; } </code></pre> <p>If you want to get really fancy, you can even add syntax highlighting using <a href="http://prismjs.com/">Prism.js</a>.</p> <h2 id="fullbleedimages">Full bleed images</h2> <p>One neat trick which you can use in Markdown to distinguish between different types of images is to add a <code>#hash</code> value to the end of the source URL, and then target images containing the hash with special styling. For example:</p> <p><img src="https://casper.ghost.org/v1.0.0/images/walking.jpg#full" alt="Advanced Markdown tips"></p> <p>which is styled with...</p> <pre><code>img[src$="#full"] { max-width: 100vw; } </code></pre> <p>This creates full-bleed images in the Casper theme, which stretch beyond their usual boundaries right up to the edge of the window. Every theme handles these types of things slightly differently, but it's a great trick to play with if you want to have a variety of image sizes and styles.</p> <h2 id="referencelists">Reference lists</h2> <p><strong>The quick brown <a href="https://en.wikipedia.org/wiki/Fox" title="Wikipedia: Fox">fox</a>, jumped over the lazy <a href="https://en.wikipedia.org/wiki/Dog" title="Wikipedia: Dog">dog</a>.</strong></p> <p>Another way to insert links in markdown is using reference lists. You might want to use this style of linking to cite reference material in a Wikipedia-style. All of the links are listed at the end of the document, so you can maintain full separation between content and its source or reference.</p> <h2 id="creatingfootnotes">Creating footnotes</h2> <p>The quick brown fox<sup class="footnote-ref"><a href="http://epmjunkie.com/advanced-markdown/#fn1" id="fnref1">[1]</a></sup> jumped over the lazy dog<sup class="footnote-ref"><a href="http://epmjunkie.com/advanced-markdown/#fn2" id="fnref2">[2]</a></sup>.</p> <p>Footnotes are a great way to add additional contextual details when appropriate. Ghost will automatically add footnote content to the very end of your post.</p> <h2 id="fullhtml">Full HTML</h2> <p>Perhaps the best part of Markdown is that you're never limited to just Markdown. You can write HTML directly in the Ghost editor and it will just work as HTML usually does. No limits! Here's a standard YouTube embed code as an example:</p> <iframe width="560" height="315" src="https://www.youtube.com/embed/Cniqsc9QfDo?rel=0&amp;showinfo=0" frameborder="0" allowfullscreen></iframe> <hr class="footnotes-sep"> <section class="footnotes"> <ol class="footnotes-list"> <li id="fn1" class="footnote-item"><p>Foxes are red <a href="http://epmjunkie.com/advanced-markdown/#fnref1" class="footnote-backref">↩︎</a></p> </li> <li id="fn2" class="footnote-item"><p>Dogs are usually not red <a href="http://epmjunkie.com/advanced-markdown/#fnref2" class="footnote-backref">↩︎</a></p> </li> </ol> </section> </div> Ghost 597010871d5eff320d689cbd Wed Jul 19 2017 22:08:07 GMT-0400 (EDT) Advanced Markdown tips http://epmjunkie.com/advanced-markdown/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/advanced.jpg" alt="Advanced Markdown tips"><p>There are lots of powerful things you can do with the Ghost editor</p> <p>If you've gotten pretty comfortable with <a href="http://epmjunkie.com/the-editor/">all the basics</a> of writing in Ghost, then you may enjoy some more advanced tips about the types of things you can do with Markdown!</p> <p>As with the last post about the editor, you'll want to be actually editing this post as you read it so that you can see all the Markdown code we're using.</p> <h2 id="specialformatting">Special formatting</h2> <p>As well as bold and italics, you can also use some other special formatting in Markdown when the need arises, for example:</p> <ul> <li><s>strike through</s></li> <li><mark>highlight</mark></li> <li>*escaped characters*</li> </ul> <h2 id="writingcodeblocks">Writing code blocks</h2> <p>There are two types of code elements which can be inserted in Markdown, the first is inline, and the other is block. Inline code is formatted by wrapping any word or words in back-ticks, <code>like this</code>. Larger snippets of code can be displayed across multiple lines using triple back ticks:</p> <pre><code>.my-link { text-decoration: underline; } </code></pre> <p>If you want to get really fancy, you can even add syntax highlighting using <a href="http://prismjs.com/">Prism.js</a>.</p> <h2 id="fullbleedimages">Full bleed images</h2> <p>One neat trick which you can use in Markdown to distinguish between different types of images is to add a <code>#hash</code> value to the end of the source URL, and then target images containing the hash with special styling. For example:</p> <p><img src="https://casper.ghost.org/v1.0.0/images/walking.jpg#full" alt="Advanced Markdown tips"></p> <p>which is styled with...</p> <pre><code>img[src$="#full"] { max-width: 100vw; } </code></pre> <p>This creates full-bleed images in the Casper theme, which stretch beyond their usual boundaries right up to the edge of the window. Every theme handles these types of things slightly differently, but it's a great trick to play with if you want to have a variety of image sizes and styles.</p> <h2 id="referencelists">Reference lists</h2> <p><strong>The quick brown <a href="https://en.wikipedia.org/wiki/Fox" title="Wikipedia: Fox">fox</a>, jumped over the lazy <a href="https://en.wikipedia.org/wiki/Dog" title="Wikipedia: Dog">dog</a>.</strong></p> <p>Another way to insert links in markdown is using reference lists. You might want to use this style of linking to cite reference material in a Wikipedia-style. All of the links are listed at the end of the document, so you can maintain full separation between content and its source or reference.</p> <h2 id="creatingfootnotes">Creating footnotes</h2> <p>The quick brown fox<sup class="footnote-ref"><a href="http://epmjunkie.com/advanced-markdown/#fn1" id="fnref1">[1]</a></sup> jumped over the lazy dog<sup class="footnote-ref"><a href="http://epmjunkie.com/advanced-markdown/#fn2" id="fnref2">[2]</a></sup>.</p> <p>Footnotes are a great way to add additional contextual details when appropriate. Ghost will automatically add footnote content to the very end of your post.</p> <h2 id="fullhtml">Full HTML</h2> <p>Perhaps the best part of Markdown is that you're never limited to just Markdown. You can write HTML directly in the Ghost editor and it will just work as HTML usually does. No limits! Here's a standard YouTube embed code as an example:</p> <iframe width="560" height="315" src="https://www.youtube.com/embed/Cniqsc9QfDo?rel=0&amp;showinfo=0" frameborder="0" allowfullscreen></iframe> <hr class="footnotes-sep"> <section class="footnotes"> <ol class="footnotes-list"> <li id="fn1" class="footnote-item"><p>Foxes are red <a href="http://epmjunkie.com/advanced-markdown/#fnref1" class="footnote-backref">↩︎</a></p> </li> <li id="fn2" class="footnote-item"><p>Dogs are usually not red <a href="http://epmjunkie.com/advanced-markdown/#fnref2" class="footnote-backref">↩︎</a></p> </li> </ol> </section> </div> Ghost 597010871d5eff320d689cbd Wed Jul 19 2017 22:08:07 GMT-0400 (EDT) Setting up your own Ghost theme @newbish http://epmjunkie.com/themes/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/design.jpg" alt="Setting up your own Ghost theme"><p>Creating a totally custom design for your publication</p> <p>Ghost comes with a beautiful default theme called Casper, which is designed to be a clean, readable publication layout and can be easily adapted for most purposes. However, Ghost can also be completely themed to suit your needs. Rather than just giving you a few basic settings which act as a poor proxy for code, we just let you write code.</p> <p>There are a huge range of both free and premium pre-built themes which you can get from the <a href="http://marketplace.ghost.org">Ghost Theme Marketplace</a>, or you can simply create your own from scratch.</p> <p><a href="http://marketplace.ghost.org"><img src="https://casper.ghost.org/v1.0.0/images/marketplace.jpg" alt="Setting up your own Ghost theme"></a></p> <blockquote> <p>Anyone can write a completely custom Ghost theme, with just some solid knowledge of HTML and CSS</p> </blockquote> <p>Ghost themes are written with a templating language called handlebars, which has a bunch of dynamic helpers to insert your data into template files. Like <code>{{author.name}}</code>, for example, outputs the name of the current author.</p> <p>The best way to learn how to write your own Ghost theme is to have a look at <a href="https://github.com/TryGhost/Casper">the source code for Casper</a>, which is heavily commented and should give you a sense of how everything fits together.</p> <ul> <li><code>default.hbs</code> is the main template file, all contexts will load inside this file unless specifically told to use a different template.</li> <li><code>post.hbs</code> is the file used in the context of viewing a post.</li> <li><code>index.hbs</code> is the file used in the context of viewing the home page.</li> <li>and so on</li> </ul> <p>We've got <a href="http://themes.ghost.org/docs/about">full and extensive theme documentation</a> which outlines every template file, context and helper that you can use.</p> <p>If you want to chat with other people making Ghost themes to get any advice or help, there's also a <strong>#themes</strong> channel in our <a href="https://slack.ghost.org">public Slack community</a> which we always recommend joining!</p> </div> Ghost 597010861d5eff320d689cbc Wed Jul 19 2017 22:08:06 GMT-0400 (EDT) Setting up your own Ghost theme http://epmjunkie.com/themes/ <div class="kg-card-markdown"><img src="https://casper.ghost.org/v1.0.0/images/design.jpg" alt="Setting up your own Ghost theme"><p>Creating a totally custom design for your publication</p> <p>Ghost comes with a beautiful default theme called Casper, which is designed to be a clean, readable publication layout and can be easily adapted for most purposes. However, Ghost can also be completely themed to suit your needs. Rather than just giving you a few basic settings which act as a poor proxy for code, we just let you write code.</p> <p>There are a huge range of both free and premium pre-built themes which you can get from the <a href="http://marketplace.ghost.org">Ghost Theme Marketplace</a>, or you can simply create your own from scratch.</p> <p><a href="http://marketplace.ghost.org"><img src="https://casper.ghost.org/v1.0.0/images/marketplace.jpg" alt="Setting up your own Ghost theme"></a></p> <blockquote> <p>Anyone can write a completely custom Ghost theme, with just some solid knowledge of HTML and CSS</p> </blockquote> <p>Ghost themes are written with a templating language called handlebars, which has a bunch of dynamic helpers to insert your data into template files. Like <code>{{author.name}}</code>, for example, outputs the name of the current author.</p> <p>The best way to learn how to write your own Ghost theme is to have a look at <a href="https://github.com/TryGhost/Casper">the source code for Casper</a>, which is heavily commented and should give you a sense of how everything fits together.</p> <ul> <li><code>default.hbs</code> is the main template file, all contexts will load inside this file unless specifically told to use a different template.</li> <li><code>post.hbs</code> is the file used in the context of viewing a post.</li> <li><code>index.hbs</code> is the file used in the context of viewing the home page.</li> <li>and so on</li> </ul> <p>We've got <a href="http://themes.ghost.org/docs/about">full and extensive theme documentation</a> which outlines every template file, context and helper that you can use.</p> <p>If you want to chat with other people making Ghost themes to get any advice or help, there's also a <strong>#themes</strong> channel in our <a href="https://slack.ghost.org">public Slack community</a> which we always recommend joining!</p> </div> Ghost 597010861d5eff320d689cbc Wed Jul 19 2017 22:08:06 GMT-0400 (EDT) A Birthday This Big Deserves an Entire Year of Celebrations – Happy Birthday ODTUG! http://www.odtug.com/p/bl/et/blogaid=739&source=1 A Birthday This Big Deserves an Entire Year of Celebrations – Happy Birthday ODTUG! If you think you know everything about ODTUG’s history – think again! We’ve picked the minds of many long-time ODTUGers and compiled this list of memorable ODTUG milestones. ODTUG http://www.odtug.com/p/bl/et/blogaid=739&source=1 Wed Jul 19 2017 16:12:34 GMT-0400 (EDT) A Birthday This Big Deserves an Entire Year of Celebrations – Happy Birthday ODTUG! @odtug @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs http://www.odtug.com/p/bl/et/blogaid=739&source=1 A Birthday This Big Deserves an Entire Year of Celebrations – Happy Birthday ODTUG! If you think you know everything about ODTUG’s history – think again! We’ve picked the minds of many long-time ODTUGers and compiled this list of memorable ODTUG milestones. ODTUG http://www.odtug.com/p/bl/et/blogaid=739&source=1 Wed Jul 19 2017 16:12:34 GMT-0400 (EDT) Oracle Enterprise Performance Reporting Cloud Service (EPRCS) 101 http://blog.performancearchitects.com/wp/2017/07/19/oracle-enterprise-performance-reporting-cloud-service-eprcs-101/ <p>Author: Mike McLean, Performance Architects</p> <p>As organizations face more complex internal and external reporting requirements.  It is no longer sufficient to just provide the “numbers;” organizations need the ability to provide narrative in order to support and explain financial results.  Companies require a framework whereby they can collaborate across multiple sources and locations.  <a href="https://cloud.oracle.com/enterprise-performance-reporting-cloud">Oracle’s Enterprise Performance Reporting Cloud Service (EPRCS)</a> provides a solution.</p> <p>EPRCS provides three steps in the report creation process: “Author,” “Review,” and “Sign-Off.” Work flow (with start and end dates) and security can be assigned to each step.</p> <p>Content is created in the “Author” step.  EPRCS utilizes “doclets” to create content.  Doclets are individual components of a report that can be assigned to multiple contributors.  Security can be assigned to the doclet so that only the necessary individuals can access it.  Only one author can sign out a doclet at time.  When a doclet is signed in, a new version is created.  Doclets are then grouped together to create a “Report Package.”</p> <p>The “Review” step allows users to review and edit the content of a report package.</p> <p>In the “Sign-Off” step, users can approve and publish the report package or they can request edits.  Once the report package is approved, no additional edits can be made.</p> <p>EPRCS contains a library where all artifacts of the application are stored.</p> <p>If you have any questions, please drop us a note at <a href="mailto:sales@performancearchitects.com">sales@performancearchitects.com</a>, and we’ll see what we can do to help.</p> Melanie Mathews http://blog.performancearchitects.com/wp/?p=2076 Wed Jul 19 2017 05:05:40 GMT-0400 (EDT) Oracle Enterprise Performance Reporting Cloud Service (EPRCS) 101 @PerfArchitects @orclEPMblogs @orclEPMblogs http://blog.performancearchitects.com/wp/2017/07/19/oracle-enterprise-performance-reporting-cloud-service-eprcs-101/ <p>Author: Mike McLean, Performance Architects</p> <p>As organizations face more complex internal and external reporting requirements.  It is no longer sufficient to just provide the “numbers;” organizations need the ability to provide narrative in order to support and explain financial results.  Companies require a framework whereby they can collaborate across multiple sources and locations.  <a href="https://cloud.oracle.com/enterprise-performance-reporting-cloud">Oracle’s Enterprise Performance Reporting Cloud Service (EPRCS)</a> provides a solution.</p> <p>EPRCS provides three steps in the report creation process: “Author,” “Review,” and “Sign-Off.” Work flow (with start and end dates) and security can be assigned to each step.</p> <p>Content is created in the “Author” step.  EPRCS utilizes “doclets” to create content.  Doclets are individual components of a report that can be assigned to multiple contributors.  Security can be assigned to the doclet so that only the necessary individuals can access it.  Only one author can sign out a doclet at time.  When a doclet is signed in, a new version is created.  Doclets are then grouped together to create a “Report Package.”</p> <p>The “Review” step allows users to review and edit the content of a report package.</p> <p>In the “Sign-Off” step, users can approve and publish the report package or they can request edits.  Once the report package is approved, no additional edits can be made.</p> <p>EPRCS contains a library where all artifacts of the application are stored.</p> <p>If you have any questions, please drop us a note at <a href="mailto:sales@performancearchitects.com">sales@performancearchitects.com</a>, and we’ll see what we can do to help.</p> Melanie Mathews http://blog.performancearchitects.com/wp/?p=2076 Wed Jul 19 2017 05:05:40 GMT-0400 (EDT) OAC Quick Tip: Manually Accessing Essbase Cloud Log Files @opal_epm https://womaninepm.com/2017/07/18/oac-quick-tip-manually-accessing-essbase-cloud-log-files/ Please note that the following blog post contains temporary information. In patch 106 (released in mid-August 2017), Oracle added a feature to Essbase Cloud that allows customers to download their Essbase log files directly from the web interface. While troubleshooting the issue we hit last week (read the first part of that blog post here), &#8230; <a href="https://womaninepm.com/2017/07/18/oac-quick-tip-manually-accessing-essbase-cloud-log-files/" class="more-link">Continue reading <span class="screen-reader-text">OAC Quick Tip: Manually Accessing Essbase Cloud Log&#160;Files</span></a><img alt="" border="0" src="https://pixel.wp.com/b.gif?host=womaninepm.com&#038;blog=86936629&#038;post=10333&#038;subd=womaninepm&#038;ref=&#038;feed=1" width="1" height="1" /> OpaL http://womaninepm.com/?p=10333 Tue Jul 18 2017 10:30:41 GMT-0400 (EDT) OAC Quick Tip: Manually Accessing Essbase Cloud Log Files https://womaninepm.com/2017/07/18/oac-quick-tip-manually-accessing-essbase-cloud-log-files/ Please note that the following blog post contains temporary information. In patch 106 (released in mid-August 2017), Oracle added a feature to Essbase Cloud that allows customers to download their Essbase log files directly from the web interface. While troubleshooting the issue we hit last week (read the first part of that blog post here), &#8230; <a href="https://womaninepm.com/2017/07/18/oac-quick-tip-manually-accessing-essbase-cloud-log-files/" class="more-link">Continue reading <span class="screen-reader-text">OAC Quick Tip: Manually Accessing Essbase Cloud Log&#160;Files</span></a><img alt="" border="0" src="https://pixel.wp.com/b.gif?host=womaninepm.com&#038;blog=86936629&#038;post=10333&#038;subd=womaninepm&#038;ref=&#038;feed=1" width="1" height="1" /> OpaL http://womaninepm.com/?p=10333 Tue Jul 18 2017 10:30:41 GMT-0400 (EDT) ODI 12c Standalone Agent Install for an ODI 11g guy https://devepm.com/2017/07/17/odi-12c-standalone-agent-install-for-an-odi-11g-guy/ Hi everybody! Today’s post is about installing an ODI 12c standalone agent. This is not a “new” topic and the steps to perform it can also be found at the Oracle site, however it got me a little bit “off guard” when I was requested to install one and the reason is that it changed [&#8230;]<img alt="" border="0" src="https://pixel.wp.com/b.gif?host=devepm.com&#038;blog=33318620&#038;post=1504&#038;subd=devepm&#038;ref=&#038;feed=1" width="1" height="1" /> radk00 http://devepm.com/?p=1504 Mon Jul 17 2017 10:40:08 GMT-0400 (EDT) ODI 12c Standalone Agent Install for an ODI 11g guy @devepm @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs https://devepm.com/2017/07/17/odi-12c-standalone-agent-install-for-an-odi-11g-guy/ Hi everybody! Today’s post is about installing an ODI 12c standalone agent. This is not a “new” topic and the steps to perform it can also be found at the Oracle site, however it got me a little bit “off guard” when I was requested to install one and the reason is that it changed [&#8230;]<img alt="" border="0" src="https://pixel.wp.com/b.gif?host=devepm.com&#038;blog=33318620&#038;post=1504&#038;subd=devepm&#038;ref=&#038;feed=1" width="1" height="1" /> radk00 http://devepm.com/?p=1504 Mon Jul 17 2017 10:40:08 GMT-0400 (EDT) Weekly Offenders – Week Ending 7/15/2017 https://www.epmmarshall.com/weekly-offenders-week-ending-7152017/ <h3>Introduction to Weekly Offenders</h3> <p>This week was a bit busier than last week.  We even had a few more posts about Kscope17 this week.  What new this week?</p> <p><a href="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?ssl=1" data-pp="lightbox[1625]" class="autolink lightbox " ><img src="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?resize=800%2C207&#038;ssl=1" alt="Weekly Offenders - Kscope17" data-recalc-dims="1" /></a></p> <h3><a href="http://adashek-epm.blogspot.com/">Adeshek EPM</a></h3> <p>Gary has a pair of posts this week.  First, he went and started his own <a href="http://adashek-epm.blogspot.com/2017/07/doug-detroit-oracle-user-group.html"><strong>Oracle User group for the Detroit Area</strong></a> (DOUG).  He also dives head-first into the <a href="http://adashek-epm.blogspot.com/2017/07/oracle-cloud-erp-and-maxl.html"><strong>Essbase behind Oracle&#8217;s cloud ERP</strong></a>.</p> <h3><a href="https://www.epmmarshall.com">EPM Marshall</a></h3> <p>I continued my series focusing on Essbase Performance.  This week we started talking about <a href="https://www.epmmarshall.com/essbase-physical-vs-virtual-performance-1/"><strong>physical vs. virtual Essbase performance</strong></a>.</p> <h3><a href="http://exploitsinhyperion.blogspot.com/">Exploits in Hyperion</a></h3> <p>Sibin started off the week with a post about <a href="http://exploitsinhyperion.blogspot.com/2017/07/essbase-report-scripts-did-my-essbase.html"><strong>keeping your downstream systems in mind</strong></a> when making changes.  He then has a post re-capping his series on <a href="http://exploitsinhyperion.blogspot.com/2017/07/universal-data-access-in-fdmee-how-to.html"><strong>Universal Data Access in FDMEE</strong></a>.</p> <h3><a href="http://john-goodwin.blogspot.com/">More to Life&#8230;</a></h3> <p>John Goodwin has an excellent post showing off the new <a href="http://john-goodwin.blogspot.com/2017/07/epm-cloud-clearing-data-with-epm.html"><strong>clearcube</strong></a> functionality in EPM Automate and the REST API for PBCS.  Finally&#8230;ASO clears can be executed via batch!</p> <h3><a href="https://blogs.oracle.com/proactivesupportepm/">Oracle Business Analytics &#8211; Proactive Support Blog</a></h3> <p>The Proactive Support Blog brings us news of just one on-prem patch this week.  Oracle Hyperion Tax Provision <a href="https://blogs.oracle.com/proactivesupportepm/psu_htp_11124202"><strong>11.1.2.4.202</strong></a> has been released.  Perhaps this is exciting to someone?</p> <p>The blog also provides us with news of an <a href="https://blogs.oracle.com/proactivesupportepm/psu_hfm_11124205"><strong>HFM patch (11.1.2.4.205)</strong></a>.  While a variety of new features are listed, they are generic to the .2xx series of HFM patches.  This appears to be mostly bug fixes.</p> <h3><a href="http://www.orahyplabs.com/">Oracle &#8211; Hyperion Labs</a></h3> <p>Celvin had a busy week starting off with a re-cap of <a href="http://www.orahyplabs.com/2017/07/kscope17-week-full-fun-learning.html"><strong>Kscope17</strong></a>.  He then takes a detour away from Oracle in general and focuses on an OLAP tool named <a href="http://www.orahyplabs.com/2017/07/mondrian-olap-not-essbase.html"><strong>Mondrian</strong> </a>(Open Source ROLAP tool).  Pretty neat.   Finally, he also has a post about new PBCS features.  The focuses on the ability to actually get <a href="http://www.orahyplabs.com/2017/07/epbcs-quick-tips-auditing.html"><strong>audit information from PBCS</strong></a>.  I just recently mentioned in a demo that we had been waiting for this&#8230;now I can demo it!</p> <h3><a href="https://realtrigeek.com/">Real Tri Geek</a></h3> <p>Sarah has a pair of posts this week starting out with a post on <a href="http://realtrigeek.com/2017/07/13/understanding-data-visualizations-candlesticks/"><strong>understanding Candlestick graphs</strong></a>.  She continues on this theme and also tells us how to read and understand <a href="http://realtrigeek.com/2017/07/14/understanding-data-visualizations-box-plots/"><strong>Box Plots</strong></a>.</p> <p>Tim Tow&#8217;s Hyperion Blog</p> <p>Tim tells us how to get <a href="http://timtows-hyperion-blog.blogspot.com/2017/07/possible-solution-for-tls-12-issues.html"><strong>TLS 1.2. working on Java 1.6</strong></a> (the version that ships with Oracle&#8217;s EPM stack).  Pretty interesting.  For those of you wondering what TLS 1.2 is&#8230;it&#8217;s basically a more recent version of SSL.</p> <h3><a href="https://womaninepm.com/">Woman in EPM</a></h3> <p>Opal is back this week with a pair of posts.  First she has a quick tip on <a href="https://womaninepm.com/2017/07/13/oac-quick-tip-manually-restarting-essbase-cloud/"><strong>restarting your Essbase Cloud</strong> </a>instance.  She finishes out our week in review with her <a href="https://womaninepm.com/2017/07/14/odtug-kscope17-the-fun-never-stops/"><strong>re-cap of Kscope17</strong></a>.</p> <h3>Be On the Lookout!</h3> <p>That&#8217;s it for this week!  Be on the lookout for more great EPM Blog content next week!</p> <p>The post <a rel="nofollow" href="https://www.epmmarshall.com/weekly-offenders-week-ending-7152017/">Weekly Offenders &#8211; Week Ending 7/15/2017</a> appeared first on <a rel="nofollow" href="https://www.epmmarshall.com">EPM Marshall</a>.</p> Brian Marshall https://www.epmmarshall.com/?p=1625 Mon Jul 17 2017 08:00:00 GMT-0400 (EDT) Weekly Offenders – Week Ending 7/15/2017 @hyperionepmcom @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs @orclEPMblogs https://www.epmmarshall.com/weekly-offenders-week-ending-7152017/ <h3>Introduction to Weekly Offenders</h3> <p>This week was a bit busier than last week.  We even had a few more posts about Kscope17 this week.  What new this week?</p> <p><a href="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?ssl=1" data-pp="lightbox[1625]" class="autolink lightbox " ><img src="https://i0.wp.com/www.epmmarshall.com/wp-content/uploads/2017/07/EPM-Marshall-Weekly-Offenders.png?resize=800%2C207&#038;ssl=1" alt="Weekly Offenders - Kscope17" data-recalc-dims="1" /></a></p> <h3><a href="http://adashek-epm.blogspot.com/">Adeshek EPM</a></h3> <p>Gary has a pair of posts this week.  First, he went and started his own <a href="http://adashek-epm.blogspot.com/2017/07/doug-detroit-oracle-user-group.html"><strong>Oracle User group for the Detroit Area</strong></a> (DOUG).  He also dives head-first into the <a href="http://adashek-epm.blogspot.com/2017/07/oracle-cloud-erp-and-maxl.html"><strong>Essbase behind Oracle&#8217;s cloud ERP</strong></a>.</p> <h3><a href="https://www.epmmarshall.com">EPM Marshall</a></h3> <p>I continued my series focusing on Essbase Performance.  This week we started talking about <a href="https://www.epmmarshall.com/essbase-physical-vs-virtual-performance-1/"><strong>physical vs. virtual Essbase performance</strong></a>.</p> <h3><a href="http://exploitsinhyperion.blogspot.com/">Exploits in Hyperion</a></h3> <p>Sibin started off the week with a post about <a href="http://exploitsinhyperion.blogspot.com/2017/07/essbase-report-scripts-did-my-essbase.html"><strong>keeping your downstream systems in mind</strong></a> when making changes.  He then has a post re-capping his series on <a href="http://exploitsinhyperion.blogspot.com/2017/07/universal-data-access-in-fdmee-how-to.html"><strong>Universal Data Access in FDMEE</strong></a>.</p> <h3><a href="http://john-goodwin.blogspot.com/">More to Life&#8230;</a></h3> <p>John Goodwin has an excellent post showing off the new <a href="http://john-goodwin.blogspot.com/2017/07/epm-cloud-clearing-data-with-epm.html"><strong>clearcube</strong></a> functionality in EPM Automate and the REST API for PBCS.  Finally&#8230;ASO clears can be executed via batch!</p> <h3><a href="https://blogs.oracle.com/proactivesupportepm/">Oracle Business Analytics &#8211; Proactive Support Blog</a></h3> <p>The Proactive Support Blog brings us news of just one on-prem patch this week.  Oracle Hyperion Tax Provision <a href="https://blogs.oracle.com/proactivesupportepm/psu_htp_11124202"><strong>11.1.2.4.202</strong></a> has been released.  Perhaps this is exciting to someone?</p> <p>The blog also provides us with news of an <a href="https://blogs.oracle.com/proactivesupportepm/psu_hfm_11124205"><strong>HFM patch (11.1.2.4.205)</strong></a>.  While a variety of new features are listed, they are generic to the .2xx series of HFM patches.  This appears to be mostly bug fixes.</p> <h3><a href="http://www.orahyplabs.com/">Oracle &#8211; Hyperion Labs</a></h3> <p>Celvin had a busy week starting off with a re-cap of <a href="http://www.orahyplabs.com/2017/07/kscope17-week-full-fun-learning.html"><strong>Kscope17</strong></a>.  He then takes a detour away from Oracle in general and focuses on an OLAP tool named <a href="http://www.orahyplabs.com/2017/07/mondrian-olap-not-essbase.html"><strong>Mondrian</strong> </a>(Open Source ROLAP tool).  Pretty neat.   Finally, he also has a post about new PBCS features.  The focuses on the ability to actually get <a href="http://www.orahyplabs.com/2017/07/epbcs-quick-tips-auditing.html"><strong>audit information from PBCS</strong></a>.  I just recently mentioned in a demo that we had been waiting for this&#8230;now I can demo it!</p> <h3><a href="https://realtrigeek.com/">Real Tri Geek</a></h3> <p>Sarah has a pair of posts this week starting out with a post on <a href="http://realtrigeek.com/2017/07/13/understanding-data-visualizations-candlesticks/"><strong>understanding Candlestick graphs</strong></a>.  She continues on this theme and also tells us how to read and understand <a href="http://realtrigeek.com/2017/07/14/understanding-data-visualizations-box-plots/"><strong>Box Plots</strong></a>.</p> <p>Tim Tow&#8217;s Hyperion Blog</p> <p>Tim tells us how to get <a href="http://timtows-hyperion-blog.blogspot.com/2017/07/possible-solution-for-tls-12-issues.html"><strong>TLS 1.2. working on Java 1.6</strong></a> (the version that ships with Oracle&#8217;s EPM stack).  Pretty interesting.  For those of you wondering what TLS 1.2 is&#8230;it&#8217;s basically a more recent version of SSL.</p> <h3><a href="https://womaninepm.com/">Woman in EPM</a></h3> <p>Opal is back this week with a pair of posts.  First she has a quick tip on <a href="https://womaninepm.com/2017/07/13/oac-quick-tip-manually-restarting-essbase-cloud/"><strong>restarting your Essbase Cloud</strong> </a>instance.  She finishes out our week in review with her <a href="https://womaninepm.com/2017/07/14/odtug-kscope17-the-fun-never-stops/"><strong>re-cap of Kscope17</strong></a>.</p> <h3>Be On the Lookout!</h3> <p>That&#8217;s it for this week!  Be on the lookout for more great EPM Blog content next week!</p> <p>The post <a rel="nofollow" href="https://www.epmmarshall.com/weekly-offenders-week-ending-7152017/">Weekly Offenders &#8211; Week Ending 7/15/2017</a> appeared first on <a rel="nofollow" href="https://www.epmmarshall.com">EPM Marshall</a>.</p> Brian Marshall https://www.epmmarshall.com/?p=1625 Mon Jul 17 2017 08:00:00 GMT-0400 (EDT) An Alternative Solution for Dynamic Organization Roll-up https://blog.topdownconsulting.com/2017/07/an-alternative-solution-for-dynamic-organization-roll-up/ <p>Over my 15 plus years of consulting, a frequent consolidations theme amongst clients pose goes something along these lines:</p> <p><em>“How can I have a dynamic organization hierarchy?” </em></p> <p><em>Or “can I report historical data in a frozen view?” </em></p> <p><em>Or “Tell me about the org-by-period functionality and should we use it?” </em></p> <p>The ask boils down to this general reporting requirement: the ability to report historical data the way it was reported organizationally at that previous point in time, and also to report current data in a different organizational view at the current point in time. I call this a dynamic organization roll-up when you need to freeze history in its own view(s) and see current period(s) in a different view.</p> <h3>First, let’s discuss the org-by-period functionality and get level set on our understanding.</h3> <p>The org-by-period setting has existed in Oracle Hyperion Financial Management (HFM) for a long time. Org-by-period works on the Entity dimension and there’s a system account named [Active] that you set for each child-parent node to determine if it should consolidate up. By default, you can set the [Active] flag to always be equaled to “1” which means an entity always consolidates to its parent, even new entities that you create. Then you are left to manually change data when an entity should NOT consolidate to its parent. To do so, you change the [Active] flag to a value = “0”. And you need to continue to store the value of “0” for the [Active] flag every period that an entity should NOT consolidate to its parent. And almost since its introduction, this way to use it has not changed and consequently, how consultants have approached it has not changed. That is to say, consolidations consultants try to discourage its usage.</p> <p>Full disclosure: I fall in in the discourage camp. Why? Lack of ease in maintaining the [Active] flag. Typically, we can add a business rule solution to copy forward the [Active] value = “0” so the HFM administrator does not need to manually input it every period. Then, the HFM administrator is left to be responsible for making an update when there is a new change to the organizational roll-up. The default interface is to use the Manage Ownership module. And if there are a medium-to-high volume of organizational changes, the HFM administrator has a spend a lot of time in the Manage Ownership module because it does not work very well for bulk changes. Alternatively, the HFM administrator could create a custom data grid but it takes some setup time to make it visually easy to use and he/she must set all dimensions correctly. The trick with a data grid is to set the Entity, Account, ICP, and Customx dimensions all to the exact correct combination to input data. That might not sound so bad to more advanced HFM administrators but in my experience, it tends to trip almost everyone up at some point in time.</p> <h3>So, what’s a better alternative?</h3> <p>Well for some clients, it could make sense to use a Custom dimension to maintain the dynamic organizational view. Remember that HFM 11.1.2.x allows extendable Custom dimensions so we are not encumbered with a limit of 4 maximum Custom dimensions anymore. Here’s a scenario where I think it works very well. We have a hypothetical corporation named BigCo Inc. BigCo Inc. has two divergent reporting requirements when it comes to its organizational reporting: (1) it has a legal reporting view that is used for external reporting that should always reflect the current organizational structure for both historical and current data periods; (2) it has an alternative internal reporting view that should freeze historical data in a previous view. The commonality between the two reporting views is they both share the lowest level of the organization unit – base legal entity.</p> <p>Let’s look at a simplified portion of the BigCo Inc. legal reporting view below.</p> <p id="TngLyPT"><a href="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8.png"><img class="alignleft wp-image-1830 size-medium" src="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8-300x221.png" alt="" width="300" height="221" srcset="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8-300x221.png 300w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8-768x566.png 768w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8-520x384.png 520w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8.png 842w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>Now, let’s assume this is a simplified portion of the BigCo Inc. internal reporting view at the beginning of FY 2017 below.</p> <p>&nbsp;</p> <p id="doKjSfp"><a href="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671.png"><img class="alignleft wp-image-1831 size-medium" src="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671-300x219.png" alt="" width="300" height="219" srcset="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671-300x219.png 300w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671-768x561.png 768w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671-520x380.png 520w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671.png 845w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>Then, let’s say we’re midway into FY 2017 and we get a directive from management that there will be an internal re-organization and the new internal reporting view should look like this one below.</p> <p>&nbsp;</p> <p>What we know is that BigCo Inc. will want to keep the first Tot Internal BigCo reporting view for its 2017 data and then start using the Tot Internal BigCo 2018 reporting view in FY 2018 for some unknown duration, at least until the next major internal reorganization. With the alternative Custom dimension solution, we would build the Tot Internal parents as members in the Customx dimension. Here’s how it would look below and it would work for any year of reporting.</p> <p id="tKOGGwO"><a href="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72.png"><img class="alignleft wp-image-1832 size-medium" src="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72-300x213.png" alt="" width="300" height="213" srcset="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72-300x213.png 300w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72-768x546.png 768w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72-520x370.png 520w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72.png 900w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>We would leave the legal reporting view as the organization hierarchy in the HFM Entity dimension.</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>And then we would map data from the base legal entities to the IntParent1-IntParent3 in the Customx dimension. We’re using the best data integration tool in the business – FDM/FDMEE so creating a mapping is very straightforward. In FY2017, the mapping table would look like this below.</p> <p id="mKquQYN"><a href="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4809bc05.png"><img class="alignleft wp-image-1833 size-medium" src="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4809bc05-300x99.png" alt="" width="300" height="99" srcset="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4809bc05-300x99.png 300w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4809bc05-520x172.png 520w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4809bc05.png 767w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>Then when management needs us to change the internal reporting data roll-up, we would modify the mapping table and change it to the following below.</p> <p id="zdMiIMw"><a href="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e49566217.png"><img class="alignleft wp-image-1834 size-medium" src="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e49566217-249x300.png" alt="" width="249" height="300" srcset="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e49566217-249x300.png 249w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e49566217.png 467w" sizes="(max-width: 249px) 100vw, 249px" /></a></p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>When we need to drill-down on the internal reporting view, we would use the Customx dimension as our starting point and then drill down to the base level on the Entity dimension. This can be done easily in an HFM data grid, in SmartView Excel, and in FR reports. We would get effectively the same detail that someone would need to see the lowest level for internal reporting. And a big bonus is that FDM/FDMEE is user-friendly so updating the mapping tables will be straightforward for the HFM administrator or a power user.</p> <p>&nbsp;</p> <p>The post <a rel="nofollow" href="https://blog.topdownconsulting.com/2017/07/an-alternative-solution-for-dynamic-organization-roll-up/">An Alternative Solution for Dynamic Organization Roll-up</a> appeared first on <a rel="nofollow" href="https://blog.topdownconsulting.com">TopDown Consulting Blog</a>.</p> Hoa Pham https://blog.topdownconsulting.com/?p=1828 Fri Jul 14 2017 15:06:02 GMT-0400 (EDT) An Alternative Solution for Dynamic Organization Roll-up @TopDownInc https://blog.topdownconsulting.com/2017/07/an-alternative-solution-for-dynamic-organization-roll-up/ <p>Over my 15 plus years of consulting, a frequent consolidations theme amongst clients pose goes something along these lines:</p> <p><em>“How can I have a dynamic organization hierarchy?” </em></p> <p><em>Or “can I report historical data in a frozen view?” </em></p> <p><em>Or “Tell me about the org-by-period functionality and should we use it?” </em></p> <p>The ask boils down to this general reporting requirement: the ability to report historical data the way it was reported organizationally at that previous point in time, and also to report current data in a different organizational view at the current point in time. I call this a dynamic organization roll-up when you need to freeze history in its own view(s) and see current period(s) in a different view.</p> <h3>First, let’s discuss the org-by-period functionality and get level set on our understanding.</h3> <p>The org-by-period setting has existed in Oracle Hyperion Financial Management (HFM) for a long time. Org-by-period works on the Entity dimension and there’s a system account named [Active] that you set for each child-parent node to determine if it should consolidate up. By default, you can set the [Active] flag to always be equaled to “1” which means an entity always consolidates to its parent, even new entities that you create. Then you are left to manually change data when an entity should NOT consolidate to its parent. To do so, you change the [Active] flag to a value = “0”. And you need to continue to store the value of “0” for the [Active] flag every period that an entity should NOT consolidate to its parent. And almost since its introduction, this way to use it has not changed and consequently, how consultants have approached it has not changed. That is to say, consolidations consultants try to discourage its usage.</p> <p>Full disclosure: I fall in in the discourage camp. Why? Lack of ease in maintaining the [Active] flag. Typically, we can add a business rule solution to copy forward the [Active] value = “0” so the HFM administrator does not need to manually input it every period. Then, the HFM administrator is left to be responsible for making an update when there is a new change to the organizational roll-up. The default interface is to use the Manage Ownership module. And if there are a medium-to-high volume of organizational changes, the HFM administrator has a spend a lot of time in the Manage Ownership module because it does not work very well for bulk changes. Alternatively, the HFM administrator could create a custom data grid but it takes some setup time to make it visually easy to use and he/she must set all dimensions correctly. The trick with a data grid is to set the Entity, Account, ICP, and Customx dimensions all to the exact correct combination to input data. That might not sound so bad to more advanced HFM administrators but in my experience, it tends to trip almost everyone up at some point in time.</p> <h3>So, what’s a better alternative?</h3> <p>Well for some clients, it could make sense to use a Custom dimension to maintain the dynamic organizational view. Remember that HFM 11.1.2.x allows extendable Custom dimensions so we are not encumbered with a limit of 4 maximum Custom dimensions anymore. Here’s a scenario where I think it works very well. We have a hypothetical corporation named BigCo Inc. BigCo Inc. has two divergent reporting requirements when it comes to its organizational reporting: (1) it has a legal reporting view that is used for external reporting that should always reflect the current organizational structure for both historical and current data periods; (2) it has an alternative internal reporting view that should freeze historical data in a previous view. The commonality between the two reporting views is they both share the lowest level of the organization unit – base legal entity.</p> <p>Let’s look at a simplified portion of the BigCo Inc. legal reporting view below.</p> <p id="TngLyPT"><a href="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8.png"><img class="alignleft wp-image-1830 size-medium" src="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8-300x221.png" alt="" width="300" height="221" srcset="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8-300x221.png 300w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8-768x566.png 768w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8-520x384.png 520w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e417977f8.png 842w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>Now, let’s assume this is a simplified portion of the BigCo Inc. internal reporting view at the beginning of FY 2017 below.</p> <p>&nbsp;</p> <p id="doKjSfp"><a href="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671.png"><img class="alignleft wp-image-1831 size-medium" src="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671-300x219.png" alt="" width="300" height="219" srcset="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671-300x219.png 300w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671-768x561.png 768w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671-520x380.png 520w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4471d671.png 845w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>Then, let’s say we’re midway into FY 2017 and we get a directive from management that there will be an internal re-organization and the new internal reporting view should look like this one below.</p> <p>&nbsp;</p> <p>What we know is that BigCo Inc. will want to keep the first Tot Internal BigCo reporting view for its 2017 data and then start using the Tot Internal BigCo 2018 reporting view in FY 2018 for some unknown duration, at least until the next major internal reorganization. With the alternative Custom dimension solution, we would build the Tot Internal parents as members in the Customx dimension. Here’s how it would look below and it would work for any year of reporting.</p> <p id="tKOGGwO"><a href="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72.png"><img class="alignleft wp-image-1832 size-medium" src="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72-300x213.png" alt="" width="300" height="213" srcset="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72-300x213.png 300w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72-768x546.png 768w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72-520x370.png 520w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e463a0a72.png 900w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>We would leave the legal reporting view as the organization hierarchy in the HFM Entity dimension.</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>And then we would map data from the base legal entities to the IntParent1-IntParent3 in the Customx dimension. We’re using the best data integration tool in the business – FDM/FDMEE so creating a mapping is very straightforward. In FY2017, the mapping table would look like this below.</p> <p id="mKquQYN"><a href="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4809bc05.png"><img class="alignleft wp-image-1833 size-medium" src="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4809bc05-300x99.png" alt="" width="300" height="99" srcset="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4809bc05-300x99.png 300w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4809bc05-520x172.png 520w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e4809bc05.png 767w" sizes="(max-width: 300px) 100vw, 300px" /></a></p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>Then when management needs us to change the internal reporting data roll-up, we would modify the mapping table and change it to the following below.</p> <p id="zdMiIMw"><a href="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e49566217.png"><img class="alignleft wp-image-1834 size-medium" src="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e49566217-249x300.png" alt="" width="249" height="300" srcset="https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e49566217-249x300.png 249w, https://blog.topdownconsulting.com/wp-content/uploads/2017/07/img_5968e49566217.png 467w" sizes="(max-width: 249px) 100vw, 249px" /></a></p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>When we need to drill-down on the internal reporting view, we would use the Customx dimension as our starting point and then drill down to the base level on the Entity dimension. This can be done easily in an HFM data grid, in SmartView Excel, and in FR reports. We would get effectively the same detail that someone would need to see the lowest level for internal reporting. And a big bonus is that FDM/FDMEE is user-friendly so updating the mapping tables will be straightforward for the HFM administrator or a power user.</p> <p>&nbsp;</p> <p>The post <a rel="nofollow" href="https://blog.topdownconsulting.com/2017/07/an-alternative-solution-for-dynamic-organization-roll-up/">An Alternative Solution for Dynamic Organization Roll-up</a> appeared first on <a rel="nofollow" href="https://blog.topdownconsulting.com">TopDown Consulting Blog</a>.</p> Hoa Pham https://blog.topdownconsulting.com/?p=1828 Fri Jul 14 2017 15:06:02 GMT-0400 (EDT) ODTUG Kscope17: The Fun Never Stops https://womaninepm.com/2017/07/14/odtug-kscope17-the-fun-never-stops/ This post is a little late, but better late than never! Here is a recap of what I like to call the most nerdiest, fun week of the year! Thursday (pre-Kscope) ODTUG Board members arrive to Kscope early because we have an all-day meeting the Friday before Kscope starts. Therefore, the Board descended upon San &#8230; <a href="https://womaninepm.com/2017/07/14/odtug-kscope17-the-fun-never-stops/" class="more-link">Continue reading <span class="screen-reader-text">ODTUG Kscope17: The Fun Never&#160;Stops</span></a><img alt="" border="0" src="https://pixel.wp.com/b.gif?host=womaninepm.com&#038;blog=86936629&#038;post=10155&#038;subd=womaninepm&#038;ref=&#038;feed=1" width="1" height="1" /> OpaL http://womaninepm.com/?p=10155 Fri Jul 14 2017 11:31:13 GMT-0400 (EDT)