ADG with heatmap (extra dimension)

Hi,
I am trying to create ADG with additional dimension, where I need to pass 2 values to each ADG cell,
one is a data value to display, and another is another dimension, which will be visual colorcoding.
In the simplest case it is when you try to color code ranges of data.
(say: if value<0 - blue, value=0 - yellow,   value>0 - red)
My case is more complex, I need to reflect color coding of the second value Value, while displaying Value1.
Later I also need to allow user the modify thresholds for Value2 colorcoding.
Has anybody implemented something similar?
Can I have ArrayCollection of Object's (and I pass it to ADG) ?
Please advise.
TIA,
Oleg.

If you edit your planning unit hierarchy there should be an option to add a secondary dimension so you should be able to add department.
Cheers
John
http://john-goodwin.blogspot.com/

Similar Messages

  • Planning Unit add extra dimension

    Hi,
    In Planning unit along with Scenario, Version and Entity can we have one extra dimension? I have another custom dimension named Department with security and want to have workflow against both Entity and Department. I am using EPM 11.1.2. If possible where can I define that.
    Thanks for any help.
    Dev

    If you edit your planning unit hierarchy there should be an option to add a secondary dimension so you should be able to add department.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • How to tune performance of a cube with multiple date dimension?

    Hi, 
    I have a cube where I have a measure. Now for a turn time report I am taking the date difference of two dates and taking the average, max and min of the date difference. The graph is taking long time to load. I am using Telerik report controls. 
    Is there any way to tune up the cube performance with multiple date dimension to it? What are the key rules and beset practices for a cube to perform well? 
    Thanks, 
    Amit

    Hi amit2015,
    According to your description, you want to improve the performance of a SSAS cube with multiple date dimension. Right?
    In Analysis Services, there are many tips to improve the performance of a cube. In this scenario, I suggest you only keep one dimension, and only include the column which are required for your calculation. Please refer to "dimension design" in
    the link below:
    http://www.mssqltips.com/sqlservertip/2567/ssas--best-practices-and-performance-optimization--part-3-of-4/
    If you have any question, please feel free to ask.
    Simon Hou
    TechNet Community Support

  • Audio player with some extra's - can't get player realized

    I try to build an audio player with some extra's like looping between 2 time marks.
    Till now i have an interface that can play back audio files but after that the problems start.
    There is no way i can add functions without creating a {color:#ff0000}NotRealizedError{color}.
    According to the documentation the start() method should realize (etc) the player, but it doesn't in my program and neighter does the method player.realize();.
    Can someone give me a hint to get me on the road again.
    Thanks in advance.
    Here is the complete code which generates the NotRealizedError on the dp.setRate(); method:
    (most of it is older source from a basic player on the internet).
    package dictaplayer;
    import java.awt.*;*
    *import java.awt.event.*;
    import java.io.*;*
    *import java.net.MalformedURLException;*
    *import java.net.URI;*
    *import java.net.URL;*
    *import javax.swing.*;
    import javax.media.*;
    public class DictaPlayer extends JFrame {
    private Player dp;
    private URI uri;
    private URL url;
    private boolean realized = false;
    public DictaPlayer()
    super( "Testing DictaPlayer" );
    JButton openFile = new JButton( "Open file to play" );
    openFile.addActionListener(
    new ActionListener() {
    public void actionPerformed( ActionEvent e ) {
    openFile();
    createPlayer();
    getContentPane().add( openFile, BorderLayout.NORTH );
    setSize( 300, 300 );
    setVisible(true);
    private void openFile()
    File file = null;
    JFileChooser fileChooser = new JFileChooser();
    fileChooser.setFileSelectionMode(
    JFileChooser.FILES_ONLY );
    int result = fileChooser.showOpenDialog( this );
    // user clicked Cancel button on dialog
    if ( result != JFileChooser.CANCEL_OPTION )
    file = fileChooser.getSelectedFile();
    try {
    uri = file.toURI();
    } catch (SecurityException e) {
    e.printStackTrace();
    // Convert the absolute URI to a URL object
    try {
    url = uri.toURL();
    } catch (IllegalArgumentException e) {
    e.printStackTrace();
    } catch (MalformedURLException e) {
    e.printStackTrace();
    private void createPlayer()
    if ( url == null )
    return;
    removePreviousPlayer();
    try {
    // create a new player and add listener
    dp = Manager.createPlayer( url );
    // blockingRealize();
    dp.addControllerListener( new EventHandler() );
    dp.start(); // start player
    dp.setRate(2);
    catch ( Exception e ){
    JOptionPane.showMessageDialog( this,
    "Invalid file or location", "Error loading file",
    JOptionPane.ERROR_MESSAGE );
    private void removePreviousPlayer()
    if ( dp == null )
    return;
    dp.close();
    Component visual = dp.getVisualComponent();
    Component control = dp.getControlPanelComponent();
    Container c = getContentPane();
    if ( visual != null )
    c.remove( visual );
    if ( control != null )
    c.remove( control );
    private synchronized void blockingRealize() {
    int teller = 1;
    dp.realize();
    while (!realized && teller <= 20) {
    try {
    wait(1000);
    System.out.println("not realized " +teller);+
    +teller++;
    } catch (java.lang.InterruptedException e) {
    System.exit(1);
    public static void main(String args[])
    DictaPlayer app = new DictaPlayer();
    app.addWindowListener(
    new WindowAdapter() {
    public void windowClosing( WindowEvent e )
    System.exit(0);
    // inner class to handler events from media player
    private class EventHandler implements ControllerListener {
    public void controllerUpdate( ControllerEvent e ) {
    if ( e instanceof RealizeCompleteEvent ) {
    Container c = getContentPane();
    // load Visual and Control components if they exist
    Component visualComponent =
    dp.getVisualComponent();
    if ( visualComponent != null )
    c.add( visualComponent, BorderLayout.CENTER );
    Component controlsComponent =
    dp.getControlPanelComponent();
    if (!realized) {
    System.out.println("not realized.");
    if ( controlsComponent != null )
    c.add( controlsComponent, BorderLayout.SOUTH );
    c.doLayout();
    }

    captfoss,
    Thank you for your comment.
    captfoss wrote:
    Start does realize the player, automatically, before it starts it... if it isn't realizing then it also isn't starting.Right, I thought so, but my test was wrong. I now tested it with getState() and I can see it's going from unrealized to realized.
    First off, you can only call setRate on a player that is realized but not started... further, any of the calls like configure, realize, start, stop, etc... are non-blocking calls...so you have to wait for them to finish before you go on to the next step.So you say that when the rate is changed (f.i. by a user in a gui) the program first has to bring player in non-started realized mode (stop + realize), call the setRate() and start the player again (on the exact position it was stopped)?
    The easiest solution would be to use Manager.createRealizedPlayer rather than Manager.createPlayer...Didn't find out yet why, but when i change this (only this), there is no playing.
    Also, ++teller++ is about the most-confused looking code I've ever seen...Just like all the asterisks, i now know that code changes when i toggle between the tabs (rich/plain/preview) in the message box.
    Beyond that, your "blocking realize" function doesn't appear to do anything except suggest you have no business coding anything this advanced. Your boolean value "realize" isn't ever changed, so, I'm not entirely sure what the point of that function is other than to wait 10 seconds.I got this somewhere from the internet. Thought it could help me realize the player, but it didn't (obvious) so i commented it out.
    Slowly I begin to understand the basics of JMF (at least i think so), but I also understand that there are other (Java) ways to build the application I need. Unfortunatly I have to little (hardly any) knowledge of all those (sound) API's (f.i. JLayer) to find my way through them and to decide which is the best for my use (user controled audio playback (at least WAV and MP3) with looping possiblities between 2 marked positions).
    If someone could give me an advise which API (method or whatever you call it) is best to focus on I shurely would appriciate that.

  • Where can I buy a new 3.5" SATA HDD with the extra thermal sensor port for my late 2009 imac?

    where can I buy a new 3.5" SATA HDD with the extra thermal sensor port for my late 2009 imac?

    Depends on the original drive. According to OWC, at least last time I checked some months ago, any current WD drive they sell (up to 2 TB?) will be able to be swapped directly. I am unable to confirm this personally. But, even so, that was a while back. You should check with them again on this. As for Seagates, that might not be so simple.
    This is the original article on this from them.
    http://blog.macsales.com/2751-proprietary-cable-can-put-the-brakes-on-upgrading- late-09-imacs
    If you find a drive that OWC sells and is certain will swap in directly, you can see if newegg.com has it for less.
    This one that OWC sells will swap in directly, according to them.
    http://www.newegg.com/Product/Product.aspx?Item=N82E16822236339

  • Execution of a planning function with the used dimension values in a crosstab

    Hello,
    would like to execute planning functions within Design Studio but I don't really know how I combine this execution with the used dimension values in a crosstab for the .
    Here the requirement:
    3 Planning functions which should use the same filter (all values of all dimensions in the crosstab) and which should run one after another:
    // open data slice
    PF_1.execute();
    // generate combinitions
    PF_2.execute();
    // close data slice
    PF_3.execute();
    Many thanks in advance.
    Kind regards,
    Tobias

    Hi Arun,
    in general it is not possible to nest planning functions. The inner function would update the data in the plan buffer without the outer function knowing about it. Also the inner function might be on a different aggregation level which would make things very tricky.
    Alternatively you can include ABAP logic into a FOX formula:
    http://help.sap.com/saphelp_nw70/helpdata/en/47/94eb78b6394befe10000000a42189d/frameset.htm
    Or just create the complete logic in one ABAP planning function type.
    Regards,
    Marc
    SAP NetWeaver RIG

  • I am going to make a ADG with around 7 columns 6 of which I am going to use checkboxes as Item renderer

    I am going to make a ADG with around 7 columns 6 of which I am going to use checkboxes as Item renderers. Each of these 6 checkboxes renderers will be define in separate actionscript files as they will be updating different parts of the ADG data provider. Does this sound like the best option?

    Well the only difference is that each checkbox effects a different attribute of the  dataprovider of the ADG:
    for example this renderer effects the isSelected attribute. I may want to set a different one , hope this explains it better
    package
    import flash.display.DisplayObject;
    import flash.events.KeyboardEvent;
    import flash.events.MouseEvent;
    import flash.text.TextField;
    import mx.controls.CheckBox;
    import mx.controls.advancedDataGridClasses.AdvancedDataGridListData;
    import mx.controls.listClasses.ListBase;
    *  The Renderer.
    public class CheckBoxRenderer extends CheckBox
        public function CheckBoxRenderer()
            focusEnabled = false;
         override public function set data(value:Object):void
            super.data = value;
            if(super.data.isSelected == null){
                data.isSelected = false;
            data.isSelected = this.selected;
            invalidateProperties();
        override protected function commitProperties():void
            super.commitProperties();
            if (owner is ListBase)
                selected = ListBase(owner).isItemSelected(data);
        override protected function keyDownHandler(event:KeyboardEvent):void
        override protected function keyUpHandler(event:KeyboardEvent):void
        override protected function clickHandler(event:MouseEvent):void
              super.clickHandler(event);
            if(!data.isSelected){
                data.isSelected = true;
            }else{
                data.isSelected = false;
        override protected function updateDisplayList(w:Number, h:Number):void
            super.updateDisplayList(w, h);
            if (listData is AdvancedDataGridListData)
                var n:int = numChildren;
                for (var i:int = 0; i < n; i++)
                    var c:DisplayObject = getChildAt(i);
                    if (!(c is TextField))
                        c.x = (w - c.width) / 2;
                        c.y = 0;

  • Custom Sort with a merged dimension in webi report

    Hello,
    I have a merged dimension (Year/Month - APR 2010, FEB 2010, MAR 2010, JAN 2010, ...), I need to apply a custom sort, but with a merged dimension this feature is disabled. Why? How can I solve this problem?
    Thanks & Regards
    SU

    Hello,
    This can be solved by creating a variable for the merged dimension object.
    After you have done this you can apply a custom sort
    Regards
    Rim

  • I've a video with an extra translator voice how can I remove the translator and keep the original voice ?

    I've a video with an extra translator voice how can I remove the translator and keep the original voice ?

    I got the quicktime 7 pro but that did not solve my problem I need to listen to the origenal voice on my video  however  in window properties there is only delete the it deleted all the voices together :'( helllllllllp someone

  • Infoset extractor with an extra field

    Hi
    I've created an extractor with an extra field - it concatenates date and time to get a timestamp. When I use this infoset in my generic datasource, the extra field is not displaying. It's just displaying the table that the infoset is based on.
    Any help with this will be appreciated.

    wxs,
    if you are just concatenating- why not do it on the BW side by way of transfer / start routines instead of customizing your extractor...?
    Arun
    Hope it helps...

  • Firefox not displaying swfs with their proper dimensions

    Some instances of Firefox are not displaying swf files with their proper dimensions. When the same .html and .swf combo is loaded on another domain, different dimensions are displayed. I'm not using swfobject or any other DOM manipulator to get the swf on the page. I'm using the standard wrapper that Flex generates with object/embed tags.
    The dimensions are 950x700. I wonder if the large size is part of the problem. I'm not going for any full screen effect.
    I've tested with and without css declarations. I've tried using swfobject. I've created a brand new project empty project and when I publish that, the dimensions are still off.
    == URL of affected sites ==
    http://www.webwebwebsite.com/badfit/BadFit.html

    That image doesn't seem to be working in Firefox 3 and 8 (works in Firefox 9 and later).
    It works if I save it as 24 bit instead of 32 bit.
    <pre><nowiki>data:image/x-icon;base64,
    AAABAAEAEBAAAAEAGABoAwAAFgAAACgAAAAQAAAAIAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAACa5eqb5eqa5eqf7PGd6O2g7/VskpUxKypNWVtifoA4NjY2MzN+srWf7fKa5eqa5eqb5uub
    5eqa4+hlhYeOzdKk9fppj5ExKilKVVeNy89BRUYzLy54pqmg7vSb5eqa5eqb5+ye7PGOztI1MTFW
    a2yk9flrkZQxKypFTU6U2t9LV1gxKypwmJuh8faa5Oma5epigIOi8veDu782MzM1MjGHwcV0oKMy
    LSxBR0iT2N1PXV8zLy5KVVaY4OSc5+yb5eowKilrj5J5p6s1MzI0MTFeeXtznqEzLi4/QUGS1dlU
    aGk2MzIzLi1znqGh8PWa5epNXF01MjFFTU05OTk5ODg7PDxMWVo4Nzc7OzyOzNFbdHUzLy9FS0xM
    WVqX3+Sc5+yFvcE3NTU3NTU5Ojo+QEE5ODg3NjU5Ojk4NjaJxcljgYQwKSlXbW5LWFl4qKuf7vOf
    7vNdd3kzLy82MzNddXdTZGU1MzI6Ojo2MzODur5tk5YwKShUaGlkg4VYbW+g7vOe6u+Q0tY/Q0My
    LCxjgIJ/s7Y1MTE5OTk1MTF7qq5znqExKypKVld+sbVETEyW3OGa5eqg7/V2oqUtIyNcdHak9fpb
    dHYzLi00MDBznqF4p6ozLi1ARkaMy89FTU2Dur6a5eqb5uud6e9skZN4qKyh8PaU2d5KVVYwKShp
    jI5+sbU1MTE5ODiLyc1ZcHJqjZCb5eqa5Omb5uuf7vOd6u+a5Omf7vOMy884NjZed3mFvsI2MzM1
    MTF/tLhynJ9VaGma5eqb5eqa5eqb5eqa5eqa5eqa5eqf7fKBt7qEvcGNzdE7PDwzLi1ynJ+Du79N
    Wlua5eqa5eqa5eqa5ema5eqa5eqa5eqa5eqf7PGf7vOW3OFFTE0yLCxjgYOLyM1LV1ia5eqa5eqa
    5eqa5eqa5eqa5eqa5eqa5eqa5eqb5eqe6/BWamwxKypTZmeMys9MWFma5eqa5eqa5eqb5eqa5eqa
    5eqa5eqa5eqa5eqa5eqg7/Rvl5oyLSxFTE19rrJKVVYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</nowiki></pre>

  • Problem with a multisourced dimension

    Hi Guru's
    I have a problem with a multisourced dimension. Some of the values that are in the tables are not visible when I create a filter and choose all choices, but when facts are set against the dimension these values do show.
    This is the situation: In my physical layer I've got 3 tables that are all pretty similar, structure is like year, quarter, amount. From these three tables I create 3 fact tables and 1 dimension, where the dimension is YearQuarter with two columns (year and quarter) and 3 sources. One of these tables has a quarter 0 (zero). The DimYearQuarter table is innerjoined in the BMM wit all 3 facttables. Changing to right or left outer doesn't change the results.
    In answers when i create a report just with the dimension columns , quarter 0 is not visible. When the measure (where the quarter 0 associated to) is added to my request it shows the values for quarter 0. When applying a filter, the quarter 0 is not visible with "all choices", but a filtercondition works with Quarter is equal to 0.
    Any suggestions are kindly appreciated. If more info is needed, I'm very willing to provide.
    I'm on 10.1.3.4.1 on windows server 2003 (server side) and XP professional as a client.
    Kind regards,
    Gilles

    You should alias the physical tables such that you can then physically join the aliases one to another. Then you should be able to use the dimension table on it's own - for prompting purposes and such.
    (Aliasing of physical tables is an OBI best practice)

  • Essbase export with a "string" appended with all account dimension members

    Hi Everyone ,
    can any one please suggest , how i can do my essbase export with a string appended with all account dimension members.
    i have tried more options but it doesn't looks working. i tried it by report scripts using RENAME function , but it works for 1 member at a time..
    please suggest !
    thanks
    Edited by: Vivek on Jun 19, 2012 6:55 PM

    Hi,
    If you're looking for the ability to append different strings, then you should probably be looking to an external process.
    If you're looking to append the same string, I can think of one way. Make your report script fixed-width (that way you always know which character in the line you're changing) and then utilize the MASK command. (you can find it in the Tech Ref under Report Commands)
    Robert

  • Optimizing order by query with multiple time dimensions

    Hello all,
    I have two time dimensions, one a standard date dimension (Year,Qtr, Month, Week, Day) the other a user defined Time dimension (All, Hour, Minute, Second).
    I am joining my cube with my time dimension using only the 'All' level, so that I can get a single record for the Day level in my Date dimension. Under these circumanstances there aren't many records in my sample data. Less than 100 dates, although at the lowest level(seconds) there are approx 2 million records.
    In order to get my results back in order I am ordering by the date dimension day_end_date. The query is taking longer than I would expect given that there aren't many records at the Day Level. How can I ensure that my query is ordering based only on the values in the current day_level and not all day_end_dates values in the underlying cube.

    Changed order, speed improved significantly.

  • How to print multiple copies of same image (with specific fixed dimensions) on single page

    I am using Photoshop Elements 10 on Win 7 PC.  I am trying to print multiple copies of one image on a single 8.5x11 sheet of paper? The images are artwork for buttons (to be used in button-making machine) so the dimensions must be exact on the duplicated images.  When I select Picture Package, the images are resized to fit the dimensions in the picture package. When I select Contact Sheet, the images are resized to fit the number of columns I selected.  Neither is acceptable.  How can I repeat the same image on a single piece of paper without having the system re-size the image?  I know that I can manually create a new PSE file and manually insert the images into this file.  This is what I have been doing as a work-around.   But I would hope there is a better/faster way.
    Thank-you!

    A variation of hatstead's method where the pictures are precisely aligned:
    1. Add the picture to the blank file as hatstead described. Use the Move tool to position the picture in the upper left corner.
    2. Duplicate the layer. Use the arrow keys (NOT the mouse) to move the new layer to the right.
    3. Repeat step 2 until the row is filled:
    4. Merge Down the 3 layers into one. Alternatively, link the 3 layers and do a Merge Linked as in this example. The end result is the pictures in the row are on one layer:
    5. Duplicate the layer and use the arrow keys to move this down to the 2nd row.
    6. Repeat step 5 to create additional rows.
    7. Finally, to center the whole thing on the sheet, link all the row layers and position with the arrow keys.
    Note that you can also custom-make your own Picture Package. Instructions for this should be somewhere in Help.

Maybe you are looking for