Adición de un elemento de menú

Para personalizar los menús Query Studio, puede añadir elementos de menú.

Procedimiento

  1. Detenga el servicio de IBM® Cognos.
  2. Abra el archivo ubicación_c10/templates/ps/qs/ui.xml en un editor XML.
  3. Localice el contenido entre las etiquetas <menuContent>...</menuContent>.
  4. Para el menú al que desee añadir un nuevo elemento, añada el identificador del elemento de menú bajo el elemento <menu>.

    En el siguiente ejemplo, se muestra cómo hacer esto para un elemento de menú llamado Test, al añadirlo al menú edit.

    <menu alias="edit"> 
    	<name>
    		<xts:string id="MENU_EDIT_COLUMN"/>
    	</name>
    	...
    	<menuItem id="Test" >
    </menu>
  5. Localice el contenido entre las etiquetas <contextMenu>...</contextMenu>.

    Cada elemento menu de esta sección representa un contexto de menú diferente, como el contexto de report o chart.

  6. Para el contexto en el que desee que aparezca el elemento de menú, añada un nuevo elemento <menuItem>.

    En el siguiente ejemplo se muestra cómo añadir el elemento de menú Test para el contexto report:

    <menu alias="report">
    	<menuItem id="Test" >
    		<label>"Test..."</label>
    <link>goApplicationManager.getFeatureManager().launchFeature("Test")</link>
    		<icon useWebRoot="true">qs/images/toolbar/test.gif</icon>
    	</menuItem>
    </menu>

    El elemento link de este ejemplo especifica la función JavaScript definida en los pasos 11 y 12.

    El archivo de gráficos test.gif al que el elemento icono hace referencia debe existir en el directorio ubicación_c10/webcontent/qs/images/toolbar.

  7. Guarde y cierre el archivo ui.xml.
  8. Abra el archivo ubicación_c10/templates/ps/qs/features.xml en un editor XML.
  9. Bajo la etiqueta <included>…</included> del elemento root, añada un elemento new feature correspondiente al elemento de menú definido en el archivo ui.xml.

    Por ejemplo, para el elemento de menú Test, añada lo siguiente:

    <feature name="Test" >
    	<menuItem type="menuItem">
    		<label>"Test..."</label>
    		<tooltip>"Test"</tooltip>
    		<icon>
    			<active useWebRoot="true">qs/images/toolbar/test.gif</active>
    		</icon>
    		<action>
    				<parameters>
    					<parameter type="string">Test</parameter>
    				</parameters>
    			</action>
    		</menuItem>
    	</feature>

    Nota: Si va a añadir un botón para la misma funcionalidad, añada el elemento de menú bajo el mismo elemento feature que el botón, según se muestra en el siguiente ejemplo:

    <feature name="Test">
    	<menuItem type="menuItem">
    		<...
    	</menuItem>
    	<toolbar buttonType="button">
    		<...
    	</toolbar>
    </feature>
  10. Guarde y cierre el archivo features.xml.
  11. En el directorio ubicación_c10\webcontent\qs\classes, cree un nuevo archivo JavaScript denominado CIDCaracterística.js.

    Por ejemplo, para el elemento de menú Test, el nombre de archivo sería CTest.js.

    Nota: Si va a añadir un botón de la barra de herramientas para la misma funcionalidad, este archivo lo utilizarán tanto el elemento de menú como el botón.

  12. En el archivo JavaScript, defina una clase llamada CFeatureID, por ejemplo CTest, y las funciones de soporte, según se muestra en el siguiente ejemplo:
    function CTest() 
    {
    	//Initialize
    }
    CTest.prototype = new AFeatureObject();
    CTest.prototype.setup = function (aFeatureParams)
    {
    	//setup feature parameter
    };
    CTest.prototype.processErrorState = function()
    {
    	//Handle error and return error state
    };
    CTest.prototype.proceedWithoutDialog = function()
    {
    	return this.execute();
    };
    CTest.prototype.execute = function (aParameters)
    {
    	//Execute Feature
    };
  13. Guarde el archivo JavaScript.
  14. Inicie el servicio de IBM Cognos.

Resultados

El nuevo elemento de menú aparecerá bajo el menú para el que se añadió cuando se visualizó el contexto especificado.

Para eliminar un elemento de menú, suprima de ui.xml y features.xml las secciones de código asociadas al elemento.