Samples / Controls / sap.m

KPI Tile

Shows KPI Tile samples that can contain header, subheader, key value, trend, scale, unit, and a footer.

Class
z2ui5_cl_smpc_app_028
Repository
abap2UI5/samples-controls
Ports
sap.m.sample.GenericTileAsKPITile
UI5 libraries
sap.m, sap.ui.core
Lowest UI5 release
1.92
In the browser
Runs in the playground
Controls it builds
sap.m.FeedContent, sap.m.GenericTile, sap.m.ImageContent, sap.m.NewsContent, sap.m.NumericContent, sap.m.SlideTile, sap.m.TileContent, sap.ui.core.HTML, sap.ui.core.mvc.View

The class

" @keywords generictile generic tile sap.m shows kpi contain html tilecontent numericcontent imagecontent newscontent
" @summary Shows KPI Tile samples that can contain header, subheader, key value, trend, scale, unit, and a footer.
" @origin sap.m.sample.GenericTileAsKPITile - https://sdk.openui5.org/entity/sap.m.GenericTile/sample/sap.m.sample.GenericTileAsKPITile (status: checked - verified in a running system)
CLASS z2ui5_cl_smpc_app_028 DEFINITION PUBLIC.

  PUBLIC SECTION.
    INTERFACES z2ui5_if_app.

  PROTECTED SECTION.
    DATA client TYPE REF TO z2ui5_if_client.

    METHODS view_display.

  PRIVATE SECTION.
ENDCLASS.


CLASS z2ui5_cl_smpc_app_028 IMPLEMENTATION.

  METHOD z2ui5_if_app~main.

    me->client = client.
    IF client->check_on_navigated( ).
      view_display( ).
    ENDIF.

  ENDMETHOD.


  METHOD view_display.

    DATA(view) = z2ui5_cl_ui5_view_builder=>factory( ).

    view->ele( n = `View` ns = `mvc`
        )->a( n = `xmlns`      v = `sap.m`
        )->a( n = `xmlns:mvc`  v = `sap.ui.core.mvc`
        )->a( n = `xmlns:core` v = `sap.ui.core`

        " the sample's style.css, injected via a core:HTML content attribute (see CAPABILITIES.md)
        )->tag( n = `HTML` ns = `core`
            " literal braces escaped \{ \} - the XMLView binding parser reads unescaped braces as a binding
            )->a( n = `content` v = `<style>.tileLayout\{float:left\}</style>`

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Country-Specific Profit Margin`
            )->a( n = `frameType` v = `OneByHalf`
            )->a( n = `subheader` v = `Expenses`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )

            )->ele( `TileContent`
                )->a( n = `unit`   v = `EUR`
                )->a( n = `footer` v = `Current Quarter`

                )->tag( `NumericContent`
                    )->a( n = `scale`      v = `M`
                    )->a( n = `value`      v = `1.96`
                    )->a( n = `valueColor` v = `Error`
                    )->a( n = `indicator`  v = `Up`
                    )->a( n = `withMargin` v = `false`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `US Profit Margin`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )
            )->a( n = `frameType` v = `OneByHalf`

            )->ele( `TileContent`
                )->a( n = `unit` v = `Unit`

                )->tag( `NumericContent`
                    )->a( n = `scale`      v = `%`
                    )->a( n = `value`      v = `12`
                    )->a( n = `valueColor` v = `Critical`
                    )->a( n = `indicator`  v = `Up`
                    )->a( n = `withMargin` v = `false`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Sales Fulfillment Application Title`
            )->a( n = `subheader` v = `Subtitle`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )
            )->a( n = `frameType` v = `TwoByHalf`

            )->ele( `TileContent`
                )->a( n = `unit`   v = `EUR`
                )->a( n = `footer` v = `Current Quarter`

                )->tag( `ImageContent`
                    )->a( n = `src` v = `sap-icon://home-share`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Manage Activity Master Data Type`
            )->a( n = `subheader` v = `Subtitle`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )
            )->a( n = `frameType` v = `OneByHalf`

            )->ele( `TileContent`
                )->tag( `ImageContent`
                    )->a( n = `src` v = `https://sdk.openui5.org/test-resources/sap/m/demokit/sample/GenericTileAsLaunchTile/images/SAPLogoLargeTile_28px_height.png`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Manage Activity Master Data Type With a Long Title Without an Icon`
            )->a( n = `subheader` v = `Subtitle Launch Tile`
            )->a( n = `mode`      v = `HeaderMode`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )

            )->tag( `TileContent`
                )->a( n = `unit`   v = `EUR`
                )->a( n = `footer` v = `Current Quarter`

        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Jessica D. Prince Senior Consultant`
            )->a( n = `subheader` v = `Department`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )

            )->ele( `TileContent`
                )->tag( `ImageContent`
                    )->a( n = `src` v = `https://sdk.openui5.org/test-resources/sap/m/demokit/sample/GenericTileAsLaunchTile/images/ProfileImage_LargeGenTile.png`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`           v = `sapUiTinyMarginBegin sapUiTinyMarginTop`
            )->a( n = `backgroundImage` v = `https://sdk.openui5.org/test-resources/sap/m/images/NewsImage1.png`
            )->a( n = `frameType`       v = `OneByOne`
            )->a( n = `press`           v = client->follow_up_action( val   = client->cs_event-control_global
                                                                      t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )

            )->ele( `TileContent`
                )->a( n = `footer`    v = `Report Available`
                )->a( n = `frameType` v = `OneByOne`

                )->tag( `NewsContent`
                    )->a( n = `contentText` v = `Realtime Business Service Analytics`
                    )->a( n = `subheader`   v = `SAP Analytics Cloud`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`           v = `sapUiTinyMarginBegin sapUiTinyMarginTop`
            )->a( n = `backgroundImage` v = `https://sdk.openui5.org/test-resources/sap/m/demokit/sample/SlideTile/images/NewsImage1.png`
            )->a( n = `frameType`       v = `TwoByOne`
            )->a( n = `press`           v = client->follow_up_action( val   = client->cs_event-control_global
                                                                      t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )

            )->ele( `TileContent`
                )->a( n = `footer` v = `August 21, 2016`

                )->tag( `NewsContent`
                    )->a( n = `contentText` v = `Wind Map: Monitoring Real-Time and Forecasted Wind Conditions across the Globe`
                    )->a( n = `subheader`   v = `Today, SAP News`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`       v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`      v = `Country-Specific Profit Margin`
            )->a( n = `subheader`   v = `Expenses`
            )->a( n = `press`       v = client->follow_up_action( val   = client->cs_event-control_global
                                                                  t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )
            )->a( n = `systemInfo`  v = `system info`
            )->a( n = `appShortcut` v = `app shortcut`

            )->ele( `TileContent`
                )->a( n = `unit`   v = `EUR`
                )->a( n = `footer` v = `Current Quarter`

                )->tag( `NumericContent`
                    )->a( n = `scale`      v = `M`
                    )->a( n = `value`      v = `1.96`
                    )->a( n = `valueColor` v = `Error`
                    )->a( n = `indicator`  v = `Up`
                    )->a( n = `withMargin` v = `false`

            )->end(
        )->end(

        )->ele( `SlideTile`
            )->a( n = `class`          v = `sapUiTinyMarginBegin sapUiTinyMarginTop`
            )->a( n = `transitionTime` v = `250`
            )->a( n = `displayTime`    v = `2500`

            )->ele( `GenericTile`
                )->a( n = `backgroundImage` v = `https://sdk.openui5.org/test-resources/sap/m/demokit/sample/SlideTile/images/NewsImage1.png`
                )->a( n = `frameType`       v = `TwoByOne`
                )->a( n = `press`           v = client->follow_up_action( val   = client->cs_event-control_global
                                                                          t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )

                )->ele( `TileContent`
                    )->a( n = `footer` v = `August 21, 2016`

                    )->tag( `NewsContent`
                        )->a( n = `contentText` v = `Wind Map: Monitoring Real-Time and Forecasted Wind Conditions across the Globe`
                        )->a( n = `subheader`   v = `Today, SAP News`

                )->end(
            )->end(

            )->ele( `GenericTile`
                )->a( n = `backgroundImage` v = `https://sdk.openui5.org/test-resources/sap/m/demokit/sample/SlideTile/images/NewsImage2.png`
                )->a( n = `frameType`       v = `TwoByOne`
                )->a( n = `state`           v = `Failed`

                )->ele( `TileContent`
                    )->a( n = `footer` v = `August 21, 2016`

                    )->tag( `NewsContent`
                        )->a( n = `contentText` v = `SAP Unveils Powerful New Player Comparision Tool Exclusively on NFL.com`
                        )->a( n = `subheader`   v = `Today, SAP News`

                )->end(
            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Feed Tile that shows updates of the last feeds given to a specific topic:`
            )->a( n = `frameType` v = `TwoByOne`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )

            )->ele( `TileContent`
                )->a( n = `footer` v = `New Notifications`

                )->tag( `FeedContent`
                    )->a( n = `contentText` v = `@@notify Great outcome of the Presentation today. New functionality well received.`
                    )->a( n = `subheader`   v = `About 1 minute ago in Computer Market`
                    )->a( n = `value`       v = `352`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Country-Specific Profit Margin`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )
            )->a( n = `frameType` v = `TwoByHalf`

            )->ele( `TileContent`
                )->a( n = `unit`   v = `EUR`
                )->a( n = `footer` v = `Current Quarter`

                )->tag( `NumericContent`
                    )->a( n = `scale`      v = `M`
                    )->a( n = `value`      v = `1.96`
                    )->a( n = `valueColor` v = `Error`
                    )->a( n = `indicator`  v = `Up`
                    )->a( n = `withMargin` v = `false`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Cumulative Totals`
            )->a( n = `subheader` v = `Expenses`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )
            )->a( n = `frameType` v = `OneByHalf`

            )->ele( `TileContent`
                )->a( n = `unit`   v = `Unit`
                )->a( n = `footer` v = `Footer Text`

                )->tag( `NumericContent`
                    )->a( n = `value`      v = `1762`
                    )->a( n = `icon`       v = `sap-icon://line-charts`
                    )->a( n = `withMargin` v = `false`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Right click to open in new tab`
            )->a( n = `subheader` v = `Link tile`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )
            )->a( n = `url`       v = `https://www.sap.com/`
            )->a( n = `frameType` v = `TwoByHalf`

            )->ele( `TileContent`
                )->tag( `ImageContent`
                    )->a( n = `src` v = `https://sdk.openui5.org/test-resources/sap/m/demokit/sample/GenericTileAsLaunchTile/images/SAPLogoLargeTile_28px_height.png`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`  v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header` v = `US Profit Margin`
            )->a( n = `press`  v = client->follow_up_action( val   = client->cs_event-control_global
                                                             t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )

            )->ele( `TileContent`
                )->a( n = `unit` v = `Unit`

                )->tag( `NumericContent`
                    )->a( n = `scale`      v = `%`
                    )->a( n = `value`      v = `12`
                    )->a( n = `valueColor` v = `Critical`
                    )->a( n = `indicator`  v = `Up`
                    )->a( n = `withMargin` v = `false`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`       v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`      v = `Sales Fulfillment Application Title`
            )->a( n = `subheader`   v = `Subtitle`
            )->a( n = `press`       v = client->follow_up_action( val   = client->cs_event-control_global
                                                                  t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )
            )->a( n = `systemInfo`  v = `system`
            )->a( n = `appShortcut` v = `shortcut`

            )->ele( `TileContent`
                )->a( n = `unit`   v = `EUR`
                )->a( n = `footer` v = `Current Quarter`

                )->tag( `ImageContent`
                    )->a( n = `src` v = `sap-icon://home-share`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Cumulative Totals`
            )->a( n = `subheader` v = `Expenses`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )

            )->ele( `TileContent`
                )->a( n = `unit`   v = `Unit`
                )->a( n = `footer` v = `Footer Text`

                )->tag( `NumericContent`
                    )->a( n = `value`      v = `1762`
                    )->a( n = `icon`       v = `sap-icon://line-charts`
                    )->a( n = `withMargin` v = `false`

            )->end(
        )->end(

        )->ele( `GenericTile`
            )->a( n = `class`     v = `sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout`
            )->a( n = `header`    v = `Right click to open in new tab`
            )->a( n = `subheader` v = `Link tile`
            )->a( n = `press`     v = client->follow_up_action( val   = client->cs_event-control_global
                                                                t_arg = VALUE #( ( `MESSAGE_TOAST` ) ( `show` ) ( `The tile is pressed.` ) ) )
            )->a( n = `url`       v = `https://www.sap.com/`
            )->a( n = `frameType` v = `TwoByOne`

            )->ele( `TileContent`
                )->tag( `ImageContent`
                    )->a( n = `src` v = `https://sdk.openui5.org/test-resources/sap/m/demokit/sample/GenericTileAsLaunchTile/images/SAPLogoLargeTile_28px_height.png`

            )->end(
        )->end( ).

    client->view_display( view->stringify( ) ).

  ENDMETHOD.

ENDCLASS.