Show TOC Anfang des Inhaltsbereichs

Hintergrunddokumentation Befehlsverarbeitung  Dokument im Navigationsbaum lokalisieren

Im Rahmen der Erweiterung des Kontextmenüs durch kundenspezifische Einträge (per  JavaScript Funktion 'sapbi_addToMenu') muss eine JavaScript-Funktion angegeben werden, die beim Auswählen des kundenspezifischen Eintrags ausgeführt wird. Diese Funktion ist für die Verarbeitung des Befehls verantwortlich.

Funktionsumfang

Die Funktion muss folgende Schnittstelle unterstützen:

JavaScript-Funktion

 

JavaScript-Funktion zur Befehlsverarbeitung

Parameter

Beschreibung

parameter

 

Freier Parameter

Der Parameter ermöglicht es, mit einer Funktion mehrere Menüeinträge zu verarbeiten. Siehe Beispiele.

cell_type

 

Kontext der Zelle

' ' = Kein spezieller

'CHARACTERISTIC' = Merkmal

'CHARACTERISTIC_VALUE' = Merkmalswert

'STRUCTURE' = Struktur

'STRUCTURE_VALUE' = Strukturbestandteil

'DATA' = Datenzelle

'EXCEPTIONS' = Web Item Liste der Exceptions

'CONDITIONS' = Web Item Liste der Bedingungen

'DOCUMENT_LIST' = Web Item Liste von Dokumenten

Filter

 

 

Kontext der Zelle

Je nach Wert von 'cell_type' sind hier verschiedene Werte sinnvoll:

'CHARACTERISTIC', 'CHARACTERISTIC_VALUE', 'STRUCTURE', 'STRUCTURE_VALUE': Iobjnm

'EXCEPTIONS': Exception ID

'CONDITIONS': Condition ID

'DOCUMENT_LIST': Dokumenten ID

Siehe Abschnitt „Beispiel“ unten.

parameter1

 

 

Genauere Festlegung des Kontexts der Zelle

cell_type = 'CHARACTERISTIC_VALUE': Schlüssel des Merkmalswertes

cell_type = 'STRUCTURE_VALUE': STRUCTURE_MEMBER_ID_1

parameter2

 

Genauere Festlegung des Kontexts der Zelle

cell_type = 'CHARACTERISTIC_VALUE': Knotentyp im Falle von einem Hierarchieknoten

cell_type = 'STRUCTURE_VALUE': STRUCTURE_MEMBER_ID_2

item

 

Name des Web Items, auf dem das Menü aufgerufen wird

dataprovider

Name des Data Providers, auf dem das Menü aufgerufen wird

x

 

 

Zelle ist auf der Datenspalte x

Dieser Parameter wird insbesondere für die Bericht/Bericht-Schnittstelle (BBS) benötigt.

Y

 

 

Zelle ist auf der Datenzeile y

Dieser Parameter wird insbesondere für die Bericht/Bericht-Schnittstelle (BBS) benötigt.

Zur Verarbeitung kann das JavaScript-API zum Ausführen von Befehlen verwendet werden. Weitere Informationen: JavaScript-API zum Ausführen von Befehlen

Beispiel

Mit diesem Beispiel wird das Kontextmenü um die Eintrage erweitert, mit denen man die Eigenschaft alternierende Zeilen ein- oder ausstellen kann. Dazu werden zwei Kontextmenü-Einträge hinzugefügt. Der Menühandler (in diesem Fall die Javascript-Funktion alternate_context_menu) setzt den Befehl um.

 

<bi:bisp  xmlns="http://www.w3.org/TR/REC-html40" xmlns:bi="http://xml.sap.com/2005/01/bi/wad/bisp" xmlns:jsp="http://java.sun.com/JSP/Page" >

    <html >

        <head >

            <title >BEx Web Application</title>

            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

        </head>

        <body >

            <bi:QUERY_VIEW_DATA_PROVIDER name="DP_1" >

                <bi:INITIAL_STATE type="CHOICE" value="QUERY" >

                    <bi:QUERY value="0D_DX_M01_Q0006" />

                </bi:INITIAL_STATE>

            </bi:QUERY_VIEW_DATA_PROVIDER>

            <bi:TEMPLATE_PARAMETERS name="TEMPLATE_PARAMETERS" />

            <p >

                <bi:ANALYSIS_ITEM name="ANALYSIS_ITEM_1" designwidth="400" designheight="200" >

                    <bi:DATA_PROVIDER_REF value="DP_1" />

                </bi:ANALYSIS_ITEM>

            </p>

            <p >

                <bi:SCRIPT_ITEM name="SCRIPT_ITEM_1" designwidth="300" designheight="70" >

                    <bi:SCRIPT value="biLargeData:U83SWLZ98BKCPBMOXEYJDNX54" />

                </bi:SCRIPT_ITEM>

            </p>

<!-- insert data providers, items and other template content here -->

        </body>

    </html>

</bi:bisp>

 

Der Inhalt des Parameters Script sieht wie folgt aus:

function alternate_context_menu(parameter, cellType, filter, parameter1, parameter2, item, dataProvider, x, y){

 

      var commandSET_ITEM_PARAMETERS_1 = new sapbi_Command( "SET_ITEM_PARAMETERS" );

                 var paramITEM_TYPE = new sapbi_Parameter( "ITEM_TYPE", "ANALYSIS_ITEM");

                commandSET_ITEM_PARAMETERS_1.addParameter( paramITEM_TYPE );

 

      var paramINIT_PARAMETERS = new sapbi_Parameter( "INIT_PARAMETERS" );

               var paramListINIT_PARAMETERS = new sapbi_ParameterList();

                commandSET_ITEM_PARAMETERS_1.addParameter( paramINIT_PARAMETERS );

 

      var paramALTERNATE_STYLES = new sapbi_Parameter( "ALTERNATE_STYLES",parameter );

      paramListINIT_PARAMETERS.addParameter( paramALTERNATE_STYLES );

      paramINIT_PARAMETERS.setChildList( paramListINIT_PARAMETERS );

      var paramTARGET_ITEM_REF = new sapbi_Parameter( "TARGET_ITEM_REF", item);

      commandSET_ITEM_PARAMETERS_1.addParameter( paramTARGET_ITEM_REF );

    return sapbi_page.sendCommand( commandSET_ITEM_PARAMETERS_1 );

}

/* Add Contextmenu entries */

sapbi_addToMenu("Alternate Styles on", "alternate_context_menu", "X", "", "", "top", "", "");

sapbi_addToMenu("Alternate Styles off", "alternate_context_menu", "", "", "", "top", "", "")

Ende des Inhaltsbereichs