Wechselnder Hintergrund mit IBM Cognos 8 Report Studio

Posted 11.02.2010 by Michael

Wenn man in einer Liste die Zeilen abwechselnd mit unterschiedlichen Hintergrundfarben gestalten möchte, gibt es einen recht einfachen Weg.

Zunächst erstellt man eine Berichtsvariable vom Typ Boolesch mit folgendem Ausdruck:

mod( RowNumber(); 2 ) = 0

Dann geht man wieder in die Seitenansicht und wählt “Stil für Listenspaltentext” der gewünschten Liste aus. Dann kann man die Hintergrundfarbe für die geraden und ungeraden Zeilennummern einstellen.

Das Ergebnis sieht dann zum Beispiel so aus:

Veröffentlicht in: ,

Kommentare

Cognos: Migration 8.2 nach 8.4

Posted 21.01.2010 by Michael

Bin zur Zeit dabei, eine größere Installation von Cognos 8.2 nach 8.4 zu bringen. Dabei gibt es eine ganze Menge JavaScript-Code, der angepasst werden muss. Werde hier in loser Folge die Änderungen dokumentieren:

  1. formWarpRequest wird nun über die Funktion getFormWarpRequest() angesprochen.
  2. Die Methode checkData() der Promptcontrols gibt es nicht mehr. Um die Überprüfung der Parameter anzustoße, wurde eine neue Funktion canSubmitPrompt() geschaffen, die für die ganze Eingabeaufforderungsseite die Prompts prüft und freigibt.

Um beispielsweise Standardeinträge aus Combo-Boxen zu entfernen, muss der Code wie folgt abgeändert werden:

Version 8.2

  1. document.formWarpRequest._oLstChoicesMyCombobox.options[0] = null;
  2. document.formWarpRequest._oLstChoicesMyCombobox.options[0] = null;
  3. document.formWarpRequest._oLstChoicesMyCombobox.value = 1;
  4. listBoxMyCombobox.checkData();

ab Version 8.3

Die Änderungen habe ich an dieser Stelle gleich in einer Funktion zusammengefasst, der man dann nur noch den Namen der Combobox (Name in Report Studio) übergeben muss.

  1. function initComboBox( name ) {
  2.   var fw = getFormWarpRequest();
  3.   var elementName = "_oLstChoices" + name;
  4.   if (!fw[ elementName ] ) {
  5.     alert( "Combo box not found: " + name );
  6.     return;
  7.   }
  8.   fw[ elementName ].options[0]=null;
  9.   fw[ elementName ].options[0]=null;
  10.   fw[ elementName  ].options[0].selected = true;
  11.   fw[ elementName ].removeAttribute("hasLabel");
  12.   canSubmitPrompt();
  13. }
  14. initComboBox( "MyCombobox" );

Veröffentlicht in: ,

Kommentare

Kategorien

Links

Feed

Suche