TEXT POP-UP WINDOW IN COGNOS REPORT

A customer has a report with some areas that need more explanation about the data or graphic. This is possible to just simple add a text item to the report with some text, but then there is a problem that it is always visible.

With this code it is possible to place the text in a popup window. If they click on the header name, defined in the script, a popup window will show. Click again on the header name to make it invisible again.

How to use:

Put 3 HTML in the report. In the first HTML item copy the code down below. In this code u can change the background color, name, width and position from the popup window. With z-index u can change the popup window to show up behind or in front of the text.
In the second HTML item just put in the text u want. In the third HTML item end the div </div>.

 

Run the report to see the result u just made.

<script type=”text/javascript” language=”JavaScript”>

<!–

function ReverseDisplay(d) {

if(document.getElementById(d).style.display == “none”) { document.getElementById(d).style.display = “inline”; }

else { document.getElementById(d).style.display = “none”; }

}

//–>

</script>

<style>

div#TEST {

display:none;

position:absolute;

z-index:1;

padding:4px 7px;

background-color:#DFE0E1;

width:400px;

}

a.popup {

color:#200;

font-size:0.8em;

}

</style>

<a href=”javascript:ReverseDisplay(‘TEST’)” class=”popup”>

PUT HERE YOUR HEADER NAME</a>

<div id=”TEST”>

Email this to someoneShare on FacebookShare on LinkedInTweet about this on TwitterShare on Google+Pin on Pinterest

6 thoughts on “TEXT POP-UP WINDOW IN COGNOS REPORT

  1. Ik kom er niet uit, ik heb de drie HTML’s gemaakt, maar als ik het rapport draai en op de naam van de HTML (TEST) klik word ik uit het rapport gegooid.
    Waar moet ik klikken voor de ‘header name’?

    • Hi Janna,

      I used the code long time ago. Don’t know exactly why it is not working.

      Instead try this code in a HTML item:

      ##

      ##
      ##

      Regards,

      Nanno

      • Dit is gewoon een tekst in een HTML-vakje zetten en die tekst is dan altijd zichtbaar?
        Als ik de hekjes mee kopieer blijven ze ook zichtbaar.

    • Hi Janna, what Cognos version do you use?
      Seems like in Cognos 10 u need to change the quotes around “TEXT” to a single quote.
      In the XML below i updated the javascript so it should work again.

      /content/folder[@name='XXX']/package[@name='XXXXXXX']/model[@name='2016-04-22T15:38:58.109Z']

      <script type="text/javascript" language="JavaScript">

      <!--

      function ReverseDisplay(d) {

      if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "inline"; }

      else { document.getElementById(d).style.display = "none"; }

      }

      //-->

      </script>

      <style>

      div#TEST {

      display:none;

      position:absolute;

      z-index:1;

      padding:4px 7px;

      background-color:#DFE0E1;

      width:400px;

      }

      a.popup {

      color:#200;

      font-size:0.8em;

      }

      </style>

      <a href="javascript:ReverseDisplay('TEST')" class="popup">

      PUT HERE YOUR HEADER NAME</a>

      <div id='TEST'>

      Put your own comment here

      </div>

      • Ik heb alles in een HTML-item gekopieerd. Daarna de regels tot de eerste <script verwijderd, i.p.v. PUT YOUR HEADER HERE het woordje Jaar gezet en i.p.v. Put your own comment here heb ik een stuk tekst uit een Word-document geplaatst. En het werkt heel mooi! In het rapport zie ik Jaar (onderstreept) en als ik klik zie ik de tekst.
        Nog wel twee vragen (ik ben niet bekend met HTML):
        1. In het script staat een paar keer TEST, ik zie dat nergens terug
        2. In de eerste oplossing, die niet werkte, moest ik 3 HTML-items aanmaken, dat hoeft niet meer?
        Misschien hebben mijn twee vragen met elkaar te maken, maar dat hoor ik wel.
        Alvast heel erg bedankt voor de hulp.

        • Hi Janna,

          Glad the solution works fine.
          To answer your questions:
          – “TEST” is just for the javascript itself. It links to functions together. You won’t see it in the report.
          If you change only one “TEST” ,the javascript should not work anymore unless you change them all to the same word.
          – I put all the scripts in one HTML item just to improve the usability.

          If you have more questions, don’t hesitate to ask.

          Greetings,

          Stefan

Leave a Reply

Your email address will not be published. Required fields are marked *