SAP R/3 форум ABAP консультантов
Russian ABAP Developer's Club

Home - FAQ - Search - Memberlist - Usergroups - Profile - Log in to check your private messages - Register - Log in - English
Blogs - Weblogs News

Demo: Portfolio Graphics Presentation



 
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> Dialog Programming -> Graphics
View previous topic :: View next topic  
Author Message
admin
Администратор
Администратор



Joined: 01 Sep 2007
Posts: 1639

PostPosted: Mon Nov 05, 2007 1:33 pm    Post subject: Demo: Portfolio Graphics Presentation Reply with quote

Code:

REPORT GRPORT_0
       NO STANDARD PAGE HEADING
       LINE-SIZE 180.
*---------------------------------------------------------------------*
*       DEKLARATIONSTEIL                                              *
*---------------------------------------------------------------------*
*       In dem Deklarationsteil werden die erforderlichen Tabellen    *
*       und Variablen deklariert                                      *
*---------------------------------------------------------------------*

***                                        Druckaufbereitungsfelder   *
DATA: PRINTPOS TYPE P,                 " *** Druckposition im Puffer
      COLSIZE TYPE P,                  " *** Breite der Textspalte
      PRINTBUFFER1(360),               " *** Zeilenpuffer 1
      PRINTBUFFER2(360).               " *** Zeilenpuffer 2

DATA: TITLE1(160),
      TITLE2(160).

DATA: RFELD TYPE P DECIMALS 2.

DATA: BEGIN OF SP_POS OCCURS 1,
        POSITION TYPE P,
      END OF SP_POS.

DATA: BEGIN OF SP_BR OCCURS 1,
        BREITE TYPE P,
      END OF SP_BR.

DATA: BEGIN OF AXIS OCCURS 4.
        INCLUDE STRUCTURE GPOAXIS.
DATA: END OF AXIS.

DATA: BEGIN OF OBJT OCCURS 1.          "// Objekt-Attibute
        INCLUDE STRUCTURE GPOOBJT.
DATA: END OF OBJT.

DATA: BEGIN OF COL_TEXT OCCURS 1,      "// Wertspalten
        C(40),
      END OF COL_TEXT.

DATA: BEGIN OF VALUES OCCURS 1,        "// Objekt-Kennzahlen
        P1 TYPE P DECIMALS 2,
        P2 TYPE P DECIMALS 2,
        P3 TYPE P DECIMALS 2,
        P4 TYPE P DECIMALS 2,
        P5 TYPE P DECIMALS 2,
        P6 TYPE P DECIMALS 2,
        P7 TYPE P DECIMALS 2,
        P8 TYPE P DECIMALS 2,
        P9 TYPE P DECIMALS 2,
      END OF VALUES.

DATA: BEGIN OF FL_AXIS,
        POS(10),
        BACKCLR(20),
        TEXTCLR(20),
        SCALCLR(20),
        SHADOW(1),
        TICKS(10),
        START(10),
        END(10),
      END OF FL_AXIS.

DATA: TREND_JN(1).
DATA: OBJEKTGR TYPE I.

DATA: XLOW TYPE P DECIMALS 2 VALUE 10000000,
      YLOW TYPE P DECIMALS 2 VALUE 10000000,
      XHIGH TYPE P DECIMALS 2 VALUE 0,
      YHIGH TYPE P DECIMALS 2 VALUE 0.

DATA: C_XLOW(30),
      C_YLOW(30),
      C_XHIGH(30),
      C_YHIGH(30).

DATA: BEGIN OF AREA_TAB OCCURS 1.
        INCLUDE STRUCTURE GPOAREA.
DATA: END OF AREA_TAB.

DATA: BEGIN OF LINES OCCURS 1.
        INCLUDE STRUCTURE GPOLINE.
DATA: END OF LINES.

LINES-TEXTCLR  = 'RED'.
LINES-LINECLR  = 'BLUE'.
LINES-WIDTH    = 1.
LINES-ALIGN    = 'CENTERCENTER'.
LINES-LINEMODE = 'SOLID'.
LINES-TITLE    = 'Red LineTitle'.
LINES-XFROM    = -1.
LINES-YFROM    = 5.
LINES-XTO      = 11.
LINES-YTO      = 15.
DO 11 TIMES.
  LINES-XFROM = LINES-XFROM + 1.
  LINES-XTO   = LINES-XTO   - 1.
* append lines.
ENDDO.

*---------------------------------------------------------------------*
*       PROGRAMMSTEUERUNG                                             *
*---------------------------------------------------------------------*
*       In der Programmsteuerung werden zunдchst die PF-Tasten        *
*       aktiviert, setzt die Attribute der Portfoliodarstellung       *
*       und zeigt das 1. Demo an.                                     *
*---------------------------------------------------------------------*


***                                         Funktionstasten           *
SET PF-STATUS 'PORT'.
***                                         Achsenattribute der       *
***                                         rechten Achse             *

OBJEKTGR = 4.
***                                         Anzeigen des 1. Demos     *
PERFORM DEMO1 TABLES OBJT COL_TEXT VALUES USING TITLE1 TITLE2.
PERFORM AUTODIM.
PERFORM ACHSEN_STANDARD_SETZTEN TABLES AXIS.
PERFORM ANZEIGEN TABLES OBJT COL_TEXT VALUES.


*---------------------------------------------------------------------*
*       INTERUPT-STEUERUNG                                            *
*---------------------------------------------------------------------*
*       Diese Routine ermittelt die gedrьckte Taste oder das          *
*       aktivierte Menь                                               *
*---------------------------------------------------------------------*

AT USER-COMMAND.
  SY-LSIND = 0.
  CASE SY-UCOMM.
***                                               Portfolio beenden   *
    WHEN 'END'.
      LEAVE.
***                                                 DEMO 1 anzeigen   *
    WHEN 'DMO1'.
      OBJEKTGR = 4.
      REFRESH COL_TEXT.
      REFRESH VALUES.
      REFRESH OBJT.
      PERFORM DEMO1 TABLES OBJT COL_TEXT VALUES
                    USING TITLE1 TITLE2.
      PERFORM AUTODIM.
      PERFORM ACHSEN_STANDARD_SETZTEN TABLES AXIS.
      PERFORM ANZEIGEN TABLES OBJT COL_TEXT VALUES.
***                                                 DEMO 2 anzeigen   *
    WHEN 'DMO2'.
      OBJEKTGR = 6.
      REFRESH COL_TEXT.
      REFRESH VALUES.
      REFRESH OBJT.
      PERFORM DEMO2 TABLES OBJT COL_TEXT VALUES
                    USING TITLE1 TITLE2.
      PERFORM AUTODIM.
*     XLOW = '-15'.
*     YLOW = '-15'.
*     XHIGH = '15'.
*     YHIGH = '15'.
      PERFORM ACHSEN_STANDARD_SETZTEN TABLES AXIS.
      PERFORM ANZEIGEN TABLES OBJT COL_TEXT VALUES.
    WHEN 'DMO4'.
      OBJEKTGR = 3.
      REFRESH COL_TEXT.
      REFRESH AREA_TAB.
      REFRESH VALUES.
      REFRESH OBJT.
      PERFORM DEMO4 TABLES OBJT COL_TEXT VALUES
                    USING TITLE1 TITLE2.
      PERFORM AUTODIM.
      PERFORM ACHSEN_STANDARD_SETZTEN TABLES AXIS.
      PERFORM ANZEIGEN TABLES OBJT COL_TEXT VALUES.
***                                                 DEMO 3 anzeigen   *
    WHEN 'DMO3'.
      OBJEKTGR = 2.
      REFRESH COL_TEXT.
      REFRESH VALUES.
      REFRESH OBJT.
      REFRESH AREA_TAB.
      PERFORM DEMO3 TABLES OBJT COL_TEXT VALUES
                    USING TITLE1 TITLE2.
      PERFORM AUTODIM.
      PERFORM ACHSEN_STANDARD_SETZTEN TABLES AXIS.
      PERFORM ANZEIGEN TABLES OBJT COL_TEXT VALUES.
    WHEN 'GRAF'.
***                                                 Grafik anzeigen   *
      PERFORM PORTFOLIO_ANZEIGEN TABLES COL_TEXT AXIS OBJT VALUES.
  ENDCASE.


*---------------------------------------------------------------------*
*       FORM ANZEIGEN - LISTAUSGABE                                   *
*---------------------------------------------------------------------*
*       Diese Routine ermittelt die Spaltenbreiten und -position      *
*       anhand der Texttabelle und gibt die Datentabelle              *
*---------------------------------------------------------------------*

FORM ANZEIGEN TABLES OBJT STRUCTURE GPOOBJT
                          COL_TEXT
                          VALUES STRUCTURE VALUES.
***                                         Headline drucken
  PRINTBUFFER1 = SPACE.
  WRITE: TITLE1.
  ULINE.
  PRINTBUFFER1 = TEXT-OBJ.
  REFRESH SP_POS.
  REFRESH SP_BR.
  LOOP AT COL_TEXT.
    COLSIZE = STRLEN( COL_TEXT ).
    SP_BR-breite = COLSIZE.
    APPEND SP_BR.
    PRINTPOS = STRLEN( PRINTBUFFER1 ) + 3.
    SP_POS-position = PRINTPOS.
    APPEND SP_POS.
    WRITE COL_TEXT TO PRINTBUFFER1+PRINTPOS(COLSIZE).
  ENDLOOP.
  WRITE:/ PRINTBUFFER1 INTENSIFIED OFF.
  PRINTBUFFER1 = SPACE.
  ULINE.

***                                         Positionszeilen drucken
  LOOP AT OBJT.
    READ TABLE VALUES INDEX SY-TABIX.  "*** paralleles Lesen der Werte
    PRINTBUFFER1 = '....................'.  "*** Vorfьllen der Druck-
    PRINTBUFFER2 = '....................'.  "*** puffer zur Lдngenbest.
    WRITE OBJT-TITLE TO PRINTBUFFER2+0(20).
    PRINTPOS = 0.
    LOOP AT SP_POS.
      READ TABLE SP_BR INDEX SY-TABIX.
      PRINTPOS = SP_POS-position.
      COLSIZE = SP_BR-breite.
      CASE SY-TABIX.
        WHEN 1.
          WRITE VALUES-P1 TO PRINTBUFFER2+PRINTPOS(COLSIZE).
        WHEN 2.
          WRITE VALUES-P2 TO PRINTBUFFER2+PRINTPOS(COLSIZE).
        WHEN 3.
          WRITE VALUES-P3 TO PRINTBUFFER2+PRINTPOS(COLSIZE).
        WHEN 4.
          WRITE VALUES-P4 TO PRINTBUFFER2+PRINTPOS(COLSIZE).
        WHEN 5.
          WRITE VALUES-P5 TO PRINTBUFFER2+PRINTPOS(COLSIZE).
        WHEN 6.
          WRITE VALUES-P6 TO PRINTBUFFER2+PRINTPOS(COLSIZE).
        WHEN 7.
          WRITE VALUES-P7 TO PRINTBUFFER2+PRINTPOS(COLSIZE).
        WHEN 8.
          WRITE VALUES-P8 TO PRINTBUFFER2+PRINTPOS(COLSIZE).
        WHEN 9.
          WRITE VALUES-P9 TO PRINTBUFFER2+PRINTPOS(COLSIZE).
      ENDCASE.
    ENDLOOP.
    WRITE:/ PRINTBUFFER2.
    PRINTBUFFER2 = SPACE.
  ENDLOOP.
ENDFORM.


*---------------------------------------------------------------------*
*       FORM DEMO1                                                    *
*---------------------------------------------------------------------*
*       Dieses Demo versorgt die Portfoliografik mit Produktsparte,   *
*       Einzelprodukte und einer Segmentierung ьber Verpackungs-      *
*       arten                                                         *
*---------------------------------------------------------------------*

FORM DEMO1 TABLES OBJT STRUCTURE GPOOBJT
                       COL_TEXT
                       VALUES STRUCTURE VALUES
           USING TITLE_TITLE TITLE_INFO.
  TREND_JN = 'J'.
  TITLE_INFO   = TEXT-NES.
  TITLE_TITLE   = 'PORTFOLIO (nach "BOSTON CONSULTING GROUP")'.
  REFRESH AREA_TAB.
  AREA_TAB-TEXTCLR = 'WHITE'.
  AREA_TAB-ALIGN = 'CENTERCENTER'.
  AREA_TAB-ID = '1'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '0'.
  AREA_TAB-XTO = '1'.
  AREA_TAB-YFROM = '10'.
  AREA_TAB-YTO = '20'.
  AREA_TAB-FILLCLR = 'DARKYELLOW'.
  AREA_TAB-TITLE = TEXT-X01.
  APPEND AREA_TAB.
  AREA_TAB-ID = '2'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '1'.
  AREA_TAB-XTO = '10'.
  AREA_TAB-YFROM = '10'.
  AREA_TAB-YTO = '20'.
  AREA_TAB-FILLCLR = 'DARKGREEN'.
  AREA_TAB-TITLE = TEXT-X02.
  APPEND AREA_TAB.
  AREA_TAB-ID = '3'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '0'.
  AREA_TAB-XTO = '1'.
  AREA_TAB-YFROM = '0'.
  AREA_TAB-YTO = '10'.
  AREA_TAB-FILLCLR = 'DARKMAGENTA'.
  AREA_TAB-TITLE = TEXT-X03.
  APPEND AREA_TAB.
  AREA_TAB-ID = '4'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '1'.
  AREA_TAB-XTO = '10'.
  AREA_TAB-YFROM = '0'.
  AREA_TAB-YTO = '10'.
  AREA_TAB-FILLCLR = 'DARKCYAN'.
  AREA_TAB-TITLE = TEXT-X04.
  APPEND AREA_TAB.

***                                         DEMO1 - SPALTENTEXTE
  COL_TEXT = TEXT-X05.              APPEND COL_TEXT.
  COL_TEXT = TEXT-X06.              APPEND COL_TEXT.
  COL_TEXT = TEXT-UMS.              APPEND COL_TEXT.
  COL_TEXT = TEXT-X07.              APPEND COL_TEXT.
  COL_TEXT = TEXT-X08.              APPEND COL_TEXT.
  COL_TEXT = TEXT-V01.              APPEND COL_TEXT.
  COL_TEXT = TEXT-V02.              APPEND COL_TEXT.
  COL_TEXT = TEXT-V03.              APPEND COL_TEXT.
  COL_TEXT = TEXT-V04.              APPEND COL_TEXT.

***                                         DEMO1 - OBJEKT1
  OBJT-FORM    = 'RECTANGLE'.
  OBJT-FILLCLR = 'DARKYELLOW'.
  OBJT-TEXTCLR = 'BLUE'.
  OBJT-TITLE   = TEXT-M01.
  OBJT-INFO    = TEXT-UMS.
  VALUES-P1 = 4 .
  VALUES-P2 = 4 .
  VALUES-P3 = 10000.
  VALUES-P4 = 3 .
  VALUES-P5 = 4 .
  VALUES-P6 = 400.                     "75 g Packung
  VALUES-P7 = 300.                     "250 g Packung
  VALUES-P8 = 200.                     "1000 g Packung
  VALUES-P9 = 100.                     "3000 g Packung
  APPEND OBJT.
  APPEND VALUES.

***                                         DEMO1 - OBJEKT2
  OBJT-FORM    = 'RECTANGLE'.
  OBJT-FILLCLR = 'DARKYELLOW'.
  OBJT-TEXTCLR = 'BLUE'.
  OBJT-TITLE   = TEXT-M03.
  OBJT-INFO    = TEXT-UMS.
  VALUES-P1 = 80 / 100.
  VALUES-P2 = 8.
  VALUES-P3 = 15000.
  VALUES-P4 = 70 / 100.
  VALUES-P5 = 5 .
  VALUES-P6 = 5000.                    "50 g Packung
  VALUES-P7 = 7000.                    "250 g Packung
  VALUES-P9 = 3000.                    "1000 g Packung
  VALUES-P8 = 0.
  APPEND OBJT.
  APPEND VALUES.

***                                         DEMO1 - OBJEKT3
  OBJT-FORM    = 'RECTANGLE'.
  OBJT-FILLCLR = 'DARKYELLOW'.
  OBJT-TEXTCLR = 'BLUE'.
  OBJT-TITLE   = TEXT-M02.
  OBJT-INFO    = TEXT-UMS.
  VALUES-P1 = 5.
  VALUES-P2 = 6 .
  VALUES-P3 = 22000.
  VALUES-P4 = 5 .
  VALUES-P5 = 3 .
  VALUES-P6 = 20.                      "250ml Flasche
  VALUES-P7 = 40.                      "500ml Flasche
  VALUES-P8 = 80.                      "1000ml Flasche
  VALUES-P9 = 160.                     "3000ml Flasche
  APPEND OBJT.
  APPEND VALUES.

***                                         DEMO1 - OBJEKT4
  OBJT-FORM    = 'RECTANGLE'.
  OBJT-FILLCLR = 'DARKYELLOW'.
  OBJT-TEXTCLR = 'BLUE'.
  OBJT-TITLE   = TEXT-M04.
  OBJT-INFO    = TEXT-UMS.
  VALUES-P1 = 50 / 100.
  VALUES-P2 = 3.
  VALUES-P3 = 12000.
  VALUES-P4 = 56 / 100.
  VALUES-P5 = 4.
  VALUES-P6 = 6000.
  VALUES-P7 = 3200.                    "1000ml Flasche
  VALUES-P8 = 1100.                    "3000ml Eimer
  VALUES-P9 = 1700.                    "10000ml Karnister
  APPEND OBJT.
  APPEND VALUES.

***                                         DEMO1 - OBJEKT5
  OBJT-FORM    = 'CIRCLE'.
  OBJT-FILLCLR = 'DARKGREEN'.
  OBJT-TEXTCLR = 'BLUE'.
  OBJT-TITLE   = TEXT-N01.
  OBJT-INFO    = TEXT-UMS.
  VALUES-P1 = 3 / 10.
  VALUES-P2 = 15 .
  VALUES-P3 = 15000.
  VALUES-P4 = 12 / 10.
  VALUES-P5 = 12.
  VALUES-P6 = 10000.
  VALUES-P7 = 7000.
  VALUES-P8 = 3000.
  VALUES-P9 = 5000.
  APPEND OBJT.
  APPEND VALUES.

***                                         DEMO1 - OBJEKT6
  OBJT-FORM    = 'CIRCLE'.
  OBJT-FILLCLR = 'DARKGREEN'.
  OBJT-TEXTCLR = 'BLUE'.
  OBJT-TITLE   = TEXT-N02.
  OBJT-INFO    = TEXT-UMS.
  VALUES-P1 = 2.
  VALUES-P2 = 5.
  VALUES-P3 = 26000.
  VALUES-P4 = 15 / 10.
  VALUES-P5 = 7.
  VALUES-P6 = 20000.
  VALUES-P7 = 9000.
  VALUES-P8 = 5300.
  VALUES-P9 = 2700.
  APPEND OBJT.
  APPEND VALUES.

***                                         DEMO1 - OBJEKT7
  OBJT-FORM    = 'CIRCLE'.
  OBJT-FILLCLR = 'DARKGREEN'.
  OBJT-TEXTCLR = 'BLUE'.
  OBJT-TITLE   = TEXT-N03.
  OBJT-INFO    = TEXT-UMS.
  VALUES-P1 = 4.
  VALUES-P2 = 7.
  VALUES-P3 = 11000.
  VALUES-P4 = 3.
  VALUES-P5 = 6 .
  VALUES-P6 = 1000.
  VALUES-P7 = 5000.
  VALUES-P8 = 2500.
  VALUES-P9 = 2500.
  APPEND OBJT.
  APPEND VALUES.

***                                         DEMO1 - OBJEKT8
  OBJT-FORM    = 'CIRCLE'.
  OBJT-FILLCLR = 'DARKGREEN'.
  OBJT-TEXTCLR = 'BLUE'.
  OBJT-TITLE   = TEXT-N04.
  OBJT-INFO    = TEXT-UMS.
  VALUES-P1 = 48 / 10.
  VALUES-P2 = 12.
  VALUES-P3 = 13000.
  VALUES-P4 = 43 / 10.
  VALUES-P5 = 8.
  VALUES-P6 = 9000.
  VALUES-P7 = 3700.
  VALUES-P8 = 4700.
  VALUES-P9 = 5600.
  APPEND OBJT.
  APPEND VALUES.
ENDFORM.


*---------------------------------------------------------------------*
*       FORM DEMO2                                                    *
*---------------------------------------------------------------------*
*       Dieses Demo verfolg den Lebenszyklus zweier Produkte ьber     *
*       einen Zeitraum von mehreren Jahren                            *
*---------------------------------------------------------------------*

FORM DEMO2 TABLES OBJT STRUCTURE GPOOBJT
                       COL_TEXT
                       VALUES STRUCTURE VALUES
           USING TITLE_TITLE TITLE_INFO.
  TITLE_TITLE   = 'PROJEKTPORTFOLIO'.
  TITLE_INFO    = TEXT-X09.
  REFRESH AREA_TAB.
  AREA_TAB-ID = '1'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '-12'.
  AREA_TAB-XTO = '12'.
  AREA_TAB-YFROM = '-12'.
  AREA_TAB-YTO = '12'.
  AREA_TAB-FILLCLR = 'DARKRED'.
  AREA_TAB-TITLE = TEXT-X10.
  APPEND AREA_TAB.
  AREA_TAB-ID = '2'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '-8'.
  AREA_TAB-XTO = '8'.
  AREA_TAB-YFROM = '-8'.
  AREA_TAB-YTO = '8'.
  AREA_TAB-FILLCLR = 'DARKMAGENTA'.
  AREA_TAB-TITLE = TEXT-X11.
  APPEND AREA_TAB.
  AREA_TAB-ID = '3'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '-5'.
  AREA_TAB-XTO = '5'.
  AREA_TAB-YFROM = '-5'.
  AREA_TAB-YTO = '5'.
  AREA_TAB-FILLCLR = 'DARKGREEN'.
  AREA_TAB-TITLE = TEXT-X12.
  APPEND AREA_TAB.
  TREND_JN = 'J'.
  CLEAR OBJT.
***                                         DEMO2 - SPALTENTEXT
  COL_TEXT = TEXT-X13.       APPEND COL_TEXT.
  COL_TEXT = TEXT-X14.       APPEND COL_TEXT.
  COL_TEXT = TEXT-X29.       APPEND COL_TEXT.
  COL_TEXT = TEXT-X15.       APPEND COL_TEXT.
  COL_TEXT = TEXT-X16.       APPEND COL_TEXT.
  COL_TEXT = TEXT-X18.       APPEND COL_TEXT.
  COL_TEXT = TEXT-X19.       APPEND COL_TEXT.
  COL_TEXT = TEXT-X17.       APPEND COL_TEXT.
  COL_TEXT = TEXT-X17.       APPEND COL_TEXT.

***                                         DEMO2 - OBJEKT1
  OBJT-FORM    = 'CIRCLE'.
  OBJT-FILLCLR = 'DARKYELLOW'.
  OBJT-TEXTCLR = 'BLACK'.
  OBJT-TITLE   = TEXT-P01.
*  OBJT-INFO    = text-ums.
  VALUES-P1 = -10.
  VALUES-P2 = 2.
  VALUES-P3 = 10.
  VALUES-P4 = -12.
  VALUES-P5 = 4.
  VALUES-P6 = 1.
  VALUES-P7 = 1.
  VALUES-P8 = 300.
  VALUES-P9 = 100.
  APPEND OBJT.
  APPEND VALUES.

***                                         DEMO2 - OBJEKT2
  OBJT-FORM    = 'CIRCLE'.
  OBJT-FILLCLR = 'DARKYELLOW'.
  OBJT-TEXTCLR = 'BLACK'.
  OBJT-TITLE   = TEXT-P02.
*  OBJT-INFO    = text-ums.
  VALUES-P1 = 2.
  VALUES-P2 = -9.
  VALUES-P3 = 15.
  VALUES-P4 = 5.
  VALUES-P5 = -4.
  VALUES-P6 = 1.
  VALUES-P7 = 1.
  VALUES-P8 = 500.
  VALUES-P9 = 100.
  APPEND OBJT.
  APPEND VALUES.

***                                         DEMO2 - OBJEKT3
  OBJT-FORM    = 'CIRCLE'.
  OBJT-FILLCLR = 'DARKYELLOW'.
  OBJT-TEXTCLR = 'BLACK'.
  OBJT-TITLE   = TEXT-P03.
*  OBJT-INFO    = text-ums.
  VALUES-P1 = 5.
  VALUES-P2 = 8.
  VALUES-P3 = 21.
  VALUES-P4 = 4.
  VALUES-P5 = 2.
  VALUES-P6 = 0..
  VALUES-P7 = 0.
  VALUES-P8 = 100.
  VALUES-P9 = 600.
  APPEND OBJT.
  APPEND VALUES.

***                                         DEMO2 - OBJEKT4
  OBJT-FORM    = 'CIRCLE'.
  OBJT-FILLCLR = 'DARKYELLOW'.
  OBJT-TEXTCLR = 'BLACK'.
  OBJT-TITLE   = TEXT-P04.
*  OBJT-INFO    = text-ums.
  VALUES-P1 = -4.
  VALUES-P2 = -5.
  VALUES-P3 = 12.
  VALUES-P4 = -5.
  VALUES-P5 = -3.
  VALUES-P6 = 0.
  VALUES-P7 = 0.
  VALUES-P8 = 800.
  VALUES-P9 = 200.
  APPEND OBJT.
  APPEND VALUES.
ENDFORM.

*---------------------------------------------------------------------*
*       FORM DEMO3                                                    *
*---------------------------------------------------------------------*
*       Dieses Demo versorgt die Portfolio mit Angaben ьber den       *
*       Umsatz dreier Produkte mit Anzeige ьber den bereits           *
*       verbrauchten Werbeetat                                        *
*---------------------------------------------------------------------*

FORM DEMO3 TABLES OBJT STRUCTURE GPOOBJT
                  COL_TEXT
                  VALUES STRUCTURE VALUES
           USING TITLE_TITLE TITLE_INFO.
  TITLE_TITLE   = 'GARDNER GROUP MATRIX'.
  TITLE_INFO    = TEXT-X20.
  REFRESH AREA_TAB.
  AREA_TAB-ID = '1'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '-100'.
  AREA_TAB-XTO = '0'.
  AREA_TAB-YFROM = '0'.
  AREA_TAB-YTO = '100'.
  AREA_TAB-FILLCLR = 'DARKYELLOW'.
  AREA_TAB-TITLE = TEXT-X21.
  APPEND AREA_TAB.
  AREA_TAB-ID = '2'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '0'.
  AREA_TAB-XTO = '100'.
  AREA_TAB-YFROM = '0'.
  AREA_TAB-YTO = '100'.
  AREA_TAB-FILLCLR = 'DARKGREEN'.
  AREA_TAB-TITLE = TEXT-X22.
  APPEND AREA_TAB.
  AREA_TAB-ID = '3'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '-100'.
  AREA_TAB-XTO = '0'.
  AREA_TAB-YFROM = '-100'.
  AREA_TAB-YTO = '0'.
  AREA_TAB-FILLCLR = 'DARKMAGENTA'.
  AREA_TAB-TITLE = TEXT-X23.
  APPEND AREA_TAB.
  AREA_TAB-ID = '4'.
  AREA_TAB-FORM = 'RECTANGLE'.
  AREA_TAB-XFROM = '0'.
  AREA_TAB-XTO = '100'.
  AREA_TAB-YFROM = '-100'.
  AREA_TAB-YTO = '0'.
  AREA_TAB-FILLCLR = 'DARKCYAN'.
  AREA_TAB-TITLE = TEXT-X24.
  APPEND AREA_TAB.
***                                         DEMO3 - SPALTENTEXTE
  COL_TEXT = TEXT-X25. APPEND COL_TEXT.
  COL_TEXT = TEXT-X26. APPEND COL_TEXT.
  TREND_JN = 'N'.
***                                         DEMO3 - OBJEKT1
  OBJT-FORM    = 'CIRCLE'.
  OBJT-FILLCLR = 'BLUE'.
  OBJT-TEXTCLR = 'BLACK'.

  OBJT-TITLE   = 'CA'.
  OBJT-INFO    = 'Computer Associated'.
  VALUES-P1 = -75.
  VALUES-P2 = 75.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Oracle'.
  OBJT-INFO    = 'Oracle Inc., Redwood, CA.'.
  VALUES-P1 = -5.
  VALUES-P2 = 60.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'DBS'.
  OBJT-INFO    = 'DBS'.
  VALUES-P1 = -10.
  VALUES-P2 = 50.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Am. S/W'.
  OBJT-INFO    = 'Am. S/W'.
  VALUES-P1 = -50.
  VALUES-P2 = 20.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Ross'.
  OBJT-INFO    = 'Ross'.
  VALUES-P1 = -40.
  VALUES-P2 = 5.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Integral'.
  OBJT-INFO    = 'Integral'.
  VALUES-P1 = 23.
  VALUES-P2 = -4.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Computron'.
  OBJT-INFO    = ''.
  VALUES-P1 = 27 .
  VALUES-P2 = -12.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Tesseract'.
  OBJT-INFO    = ''.
  VALUES-P1 = 17.
  VALUES-P2 = -26.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'People Soft'.
  OBJT-INFO    = ''.
  VALUES-P1 = 32.
  VALUES-P2 = -60.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Walker'.
  OBJT-INFO    = ''.
  VALUES-P1 = -25.
  VALUES-P2 = -8.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Lawson'.
  OBJT-INFO    = ''.
  VALUES-P1 = -20.
  VALUES-P2 = -14.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'S/W 2000'.
  OBJT-INFO    = ''.
  VALUES-P1 = -15.
  VALUES-P2 = -20.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'J.D. Edwards'.
  OBJT-INFO    = ''.
  VALUES-P1 = -3.
  VALUES-P2 = -40.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Cyborg'.
  OBJT-INFO    = ''.
  VALUES-P1 = -35.
  VALUES-P2 = -60.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Platinum MBS'.
  OBJT-INFO    = ''.
  VALUES-P1 = -4.
  VALUES-P2 = -80.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Ceridian'.
  OBJT-INFO    = ''.
  VALUES-P1 = -65.
  VALUES-P2 = -50.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'Genesys'.
  OBJT-INFO    = ''.
  VALUES-P1 = -60.
  VALUES-P2 = -8.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

  OBJT-TITLE   = 'SAP'.
  OBJT-INFO    = 'SAP AG, Germany'.
  VALUES-P1 = 8.
  VALUES-P2 = 40.
  VALUES-P3 = 10.
  APPEND OBJT.
  APPEND VALUES.

ENDFORM.


*---------------------------------------------------------------------*
*       FORM DEMO4                                                   *
*---------------------------------------------------------------------*
*       Dieses Demo versorgt die Portfolio mit Angaben ьber den       *
*       Umsatz dreier Produkte mit Anzeige ьber den bereits           *
*       verbrauchten Werbeetat                                        *
*---------------------------------------------------------------------*

FORM DEMO4 TABLES OBJT STRUCTURE GPOOBJT
                  COL_TEXT
                  VALUES STRUCTURE VALUES
           USING TITLE_TITLE TITLE_INFO.
  DATA: RFELD1 TYPE P VALUE 12345.
  DATA: RFELD2 TYPE P VALUE 23456.
  DATA: RFELD3 TYPE P VALUE 0.
  DATA: RFELD4 TYPE P VALUE 13557.
  DATA: RFELD5 TYPE P VALUE 93751.
  DATA: RFELD6 TYPE P VALUE 19753.
  DATA: RFELD7 TYPE P VALUE 93751.
  DATA: RFELD8 TYPE P VALUE 96751.
  DATA: RFELD9 TYPE P VALUE 12653.
  DATA: RFELD10 TYPE P VALUE 97751.
  DATA: CFELD1(10).
  DATA: BEGIN OF CFELD2,
           FILLER1(2),
            CFELD3(5),
           FILLER2(2),
         END OF CFELD2.

  TITLE_TITLE   = TEXT-X28.
  TITLE_INFO    = TEXT-X27.
***                                         DEMO4 - SPALTENTEXTE
  COL_TEXT = TEXT-D01.      APPEND COL_TEXT.
  COL_TEXT = TEXT-D02.      APPEND COL_TEXT.
  COL_TEXT = TEXT-D03.      APPEND COL_TEXT.
  COL_TEXT = TEXT-T01.      APPEND COL_TEXT.
  COL_TEXT = TEXT-T02.      APPEND COL_TEXT.
  COL_TEXT = TEXT-S01.      APPEND COL_TEXT.
  COL_TEXT = TEXT-S02.      APPEND COL_TEXT.
  APPEND COL_TEXT.
  TREND_JN = 'J'.
***                                         DEMO4 - OBJEKT1
  DO 100 TIMES.
    RFELD1 = RFELD1 * RFELD1.
    CFELD1 = RFELD1.
    CFELD2 = CFELD1.
    RFELD1 = CFELD2-CFELD3.
    RFELD1 = RFELD1 + 10000.
    RFELD2 = RFELD2 * RFELD2.
    CFELD1 = RFELD2.
    CFELD2 = CFELD1.
    RFELD2 = CFELD2-CFELD3.
    RFELD2 = RFELD2 + 10000.
    RFELD3 = RFELD3 + 1.
    RFELD4 = RFELD4 * RFELD4.
    CFELD1 = RFELD4.
    CFELD2 = CFELD1.
    RFELD4 = CFELD2-CFELD3.
    RFELD4 = RFELD4 + 10000.
    RFELD5 = RFELD5 * RFELD5.
    CFELD1 = RFELD5.
    CFELD2 = CFELD1.
    RFELD5 = CFELD2-CFELD3.
    RFELD5 = RFELD5 + 10000.
    RFELD6 = RFELD6 * RFELD6.
    CFELD1 = RFELD6.
    CFELD2 = CFELD1.
    RFELD6 = CFELD2-CFELD3.
    RFELD6 = RFELD6 + 10000.
    RFELD7 = RFELD7 * RFELD7.
    CFELD1 = RFELD7.
    CFELD2 = CFELD1.
    RFELD7 = CFELD2-CFELD3.
    RFELD7 = RFELD7 + 10000.
    RFELD8 = RFELD8 * RFELD8.
    CFELD1 = RFELD8.
    CFELD2 = CFELD1.
    RFELD8 = CFELD2-CFELD3.
    RFELD8 = RFELD8 + 10000.
    RFELD9 = RFELD9 * RFELD9.
    CFELD1 = RFELD9.
    CFELD2 = CFELD1.
    RFELD9 = CFELD2-CFELD3.
    RFELD9 = RFELD9 + 10000.
    RFELD10 = RFELD10 * RFELD10.
    CFELD1 = RFELD10.
    CFELD2 = CFELD1.
    RFELD10 = CFELD2-CFELD3.
    RFELD10 = RFELD10 + 10000.
    VALUES-P1 = RFELD1 / 10000.
    VALUES-P2 = RFELD2 / 10000.
    VALUES-P3 = RFELD4 / 10000.
    VALUES-P4 = RFELD1 / 10000 + ( COS( ( RFELD5 * 360 ) / 100000 ) ).
    VALUES-P5 = RFELD2 / 10000 + ( COS( ( RFELD6 * 360 ) / 100000 ) ).

    VALUES-P6 = RFELD7 / 10000.
    VALUES-P7 = RFELD8 / 10000.
    VALUES-P8 = 0.
    VALUES-P9 = 0.
    OBJT-FORM    = 'CIRCLE'.
    OBJT-FILLCLR = 'DARKYELLOW'.
    OBJT-TEXTCLR = 'BLUE'.
    OBJT-TITLE   = TEXT-OB2.
    CFELD1 = RFELD3.
    WRITE CFELD1 TO OBJT-TITLE+7.
    CONDENSE OBJT-TITLE.
    OBJT-INFO   = 'X:            Y:            Gr:           '.
    CFELD1 = VALUES-P1.
    WRITE CFELD1 TO OBJT-INFO+3.
    CFELD1 = VALUES-P2.
    WRITE CFELD1 TO OBJT-INFO+13.
    CFELD1 = VALUES-P3.
    WRITE CFELD1 TO OBJT-INFO+25.
* CONDENSE OBJT-INFO.
    APPEND OBJT.
    APPEND VALUES.
  ENDDO.
ENDFORM.

*---------------------------------------------------------------------*
*       FORM ACHSEN_STANDARD_SETZTEN                                  *
*---------------------------------------------------------------------*
*       Diese Routine setzt die Standardwerte der in der Grafik       *
*       angezeigten Achsen                                            *
*---------------------------------------------------------------------*
FORM ACHSEN_STANDARD_SETZTEN TABLES AXIS STRUCTURE GPOAXIS.
***                                         Achsenattribute der
***                                         rechten Achse

  REFRESH AXIS.

  AXIS-POS     = 'RIGHT'.
  AXIS-BACKCLR = 'DARKGRAY'.
  AXIS-TEXTCLR = 'WHITE'.
  AXIS-SCALCLR = 'WHITE'.
  AXIS-SHADOW  = 'N'.                  " *** Schattendarstellung
  AXIS-TICKS   = '10'.                 " *** Achseneinteilungen
* UNPACK YLOW TO C_YLOW.
  AXIS-START   = YLOW.                 " *** erster Wert der Achse
* UNPACK YHIGH TO C_YHIGH.
  AXIS-END     = YHIGH.                " *** letzter Wert der Achse
* AXIS-START   = SPACE.                " *** erster Wert der Achse
* AXIS-END     = SPACE.                " *** letzter Wert der Achse
  APPEND AXIS.
***                                         Achsenattribute der
***                                         oberen Achse
  AXIS-POS     = 'TOP'.
  AXIS-BACKCLR = 'DARKGRAY'.
  AXIS-TEXTCLR = 'WHITE'.
  AXIS-SCALCLR = 'WHITE'.
  AXIS-SHADOW  = SPACE.
  AXIS-TICKS   = '10'.
* UNPACK XLOW TO C_XLOW.
  AXIS-START   = XLOW.
* UNPACK XHIGH TO C_XHIGH.
  AXIS-END     = XHIGH.
* AXIS-START   = SPACE.
* AXIS-END     = SPACE.
  APPEND AXIS.

***                                         Achsenattribute der
***                                         linken Achse
  AXIS-POS     = 'LEFT'.
  AXIS-BACKCLR = 'DARKGRAY'.
  AXIS-TEXTCLR = 'WHITE'.
  AXIS-SCALCLR = 'WHITE'.
  AXIS-SHADOW  = 'N'.
  AXIS-TICKS   = '10'.
* UNPACK YLOW TO C_YLOW.
  AXIS-START   = YLOW.                 " *** erster Wert der Achse
* UNPACK YHIGH TO C_YHIGH.
  AXIS-END     = YHIGH.                " *** letzter Wert der Achse
* AXIS-START   =  SPACE.
* AXIS-END     =  SPACE.
  APPEND AXIS.

***                                         ACHSENATTRIBUTE DER
***                                         UNTEREN ACHSE
  AXIS-POS     = 'BOTTOM'.
  AXIS-BACKCLR = 'DARKGRAY'.
  AXIS-TEXTCLR = 'WHITE'.
  AXIS-SCALCLR = 'WHITE'.
  AXIS-SHADOW  = 'N'.
  AXIS-TICKS   = '10'.
* UNPACK XLOW TO C_XLOW.
  AXIS-START   = XLOW.
* UNPACK XHIGH TO C_XHIGH.
  AXIS-END     = XHIGH.
* AXIS-START   = SPACE.
* AXIS-END     = SPACE.
  APPEND AXIS.

ENDFORM.

*---------------------------------------------------------------------*
*       FORM PORTFOLIO_ANZEIGEN                                       *
*---------------------------------------------------------------------*
*       Ьbergabe der Parameter und Werte an die Grafikroutine         *
*       (Anzeigen der Grafik)                                         *
*---------------------------------------------------------------------*
FORM PORTFOLIO_ANZEIGEN TABLES COL_TEXT AXIS OBJT VALUES.

  DATA: TRENDX TYPE I,
        TRENDY TYPE I.

  IF TREND_JN = 'N'.
    TRENDX = SPACE.
    TRENDY = SPACE.
  ELSE.
    TRENDX = '3'.
    TRENDY = '4'.
  ENDIF.

  CALL FUNCTION 'GRAPH_PORT'
       EXPORTING
            TITLE_WINDOW  = 'Demo-Portfolio'
            TITLE_TITLE   = TITLE1
            TITLE_INFO    = TITLE2
            TITLE_TEXTCLR = 'YELLOW'
            TITLE_BACKCLR = 'DARKGRAY'
            TITLE_SIZE    = '6'
            FRM_BACKCLR   = 'GRAY'
            FRM_SCALCLR   = 'WHITE'
            FRM_SCALMOD   = 'LONGDASH'
*           FRM_GRIDX     = '10'
*           FRM_GRIDY     = '10'
            FRM_SHADOW    = 'X'
            OBJ_XVAL      = '0'
            OBJ_YVAL      = '1'
            OBJ_SVAL      = '2'
            OBJ_SIZE      = OBJEKTGR
            OBJ_XARR      = TRENDX
            OBJ_YARR      = TRENDY
*      IMPORTING
*           CUA_ID        = SPACE
*           M_TYP         = SPACE
*           P_TYP         = SPACE
*           RBUFF         = SPACE
*           RWNID         = SPACE
       TABLES
            AXIS          = AXIS
            COL_TEXT      = COL_TEXT
            OBJT          = OBJT
            VALUES        = VALUES
            LINES         = LINES      "// new 12.09.96
            AREA_TAB      = AREA_TAB.
ENDFORM.


*---------------------------------------------------------------------*
*       FORM AUTODIM                                                  *
*---------------------------------------------------------------------*
*       ........                                                      *
*---------------------------------------------------------------------*
FORM AUTODIM.

  XLOW = 1000000000.
  YLOW = 1000000000.
  XHIGH = -100000000.
  YHIGH = -100000000.

  LOOP AT VALUES.
    IF VALUES-P1 <XLOW> XHIGH.
      XHIGH = VALUES-P1.
    ENDIF.
    IF VALUES-P2 <YLOW> YHIGH.
      YHIGH = VALUES-P2.
    ENDIF.
    IF VALUES-P4 <XLOW> XHIGH.
      XHIGH = VALUES-P4.
    ENDIF.
    IF VALUES-P5 <YLOW> YHIGH.
      YHIGH = VALUES-P5.
    ENDIF.
  ENDLOOP.
  LOOP AT AREA_TAB.
    RFELD = AREA_TAB-XFROM.
    IF RFELD <XLOW> XHIGH.
      XHIGH = RFELD.
    ENDIF.

    RFELD = AREA_TAB-XTO.
    IF RFELD <XLOW> XHIGH.
      XHIGH = RFELD.
    ENDIF.

    RFELD = AREA_TAB-YFROM.
    IF RFELD <YLOW> YHIGH.
      YHIGH = RFELD.
    ENDIF.

    RFELD = AREA_TAB-YTO.
    IF RFELD <YLOW> YHIGH.
      YHIGH = RFELD.
    ENDIF.
  ENDLOOP.

  IF XLOW > 0.
    XLOW = XLOW * 80 / 100.
  ELSE.
    XLOW = XLOW * 120 / 100.
  ENDIF.
  IF YLOW > 0.
    YLOW = YLOW * 80 / 100.
  ELSE.
    YLOW = YLOW * 120 / 100.
  ENDIF.
  IF XHIGH < 0.
    XHIGH = XHIGH * 80 / 100.
  ELSE.
    XHIGH = XHIGH * 120 / 100.
  ENDIF.
  IF YHIGH <0> Portfoliografik Testbeispiel
* 001 --> їЮавдХЫмЭРп УаРдШЪР - вХбвЮТлЩ ЯаШЬХа

*Text elements
*----------------------------------------------------------
* D01 Dimension 1
* D02 Dimension 2
* D03 Dimension 3
* M01 Maggi Fondor
* M02 Maggi Wьrze
* M03 Maggi Fertigsuppen
* M04 Maggi Wьrzmischungen
* N01 Schokolade Nestle
* N02 Nesquick
* N03 Nescaffee
* N04 Chocolate-Chips
* NES Some NESTLE products
* OB2 Object
* OBJ Objekte            :
* P01 Project 1
* P02 Project 2
* P03 Project 3
* P04 Project 4
* S01 Segmentation 1
* S02 Segmentation 2
* T01 Trend - Dimension 1
* T02 Trend - Dimension 2
* UMS Sales 1992
* V01 Packaging 1
* V02 Packaging 2
* V03 Packaging 3
* V04 Packaging 4
* X01 Question marks
* X02 Stars
* X03 Dogs
* X04 Cash-cows
* X05 Rel. market share
* X06 Growth in %
* X07 Trend - share
* X08 Trend - growth
* X09 Cost/Time difference analysis
* X10 Risk area
* X11 Critical area
* X12 Normal area
* X13 Time difference
* X14 Cost difference
* X15 Time difference -trend
* X16 Cost difference - trend
* X17 Sales costs
* X18 Budget - plan
* X19 Budget - actual
* X20 Source: Gardner Group Conference Presentation, 1993
* X21 Challengers
* X22 Leaders
* X23 Niche
* X24 Visionaries
* X25 Completeness of vision
* X26 Ability to fulfill vision
* X27 with trend representation and segmentation
* X28 Portfolio
* X29 R O I in %

****************************************************************
* This file was generated by Direct Download Enterprise. *
* Please do not change it manually. *
****************************************************************
%_DYNPRO
GRPORT_0
0001
620
40
%_HEADER
GRPORT_0 0001 0001 0 1 0 0 0 0 20 80 0 D 19930902164217
%_DESCRIPTION
40
%_FIELDS
OK-CODE CHAR 5 80 10 00 00 00 64 5 O 0 0 0 0 0 0 _____
%_FLOWLOGIC
PROCESS BEFORE OUTPUT.
*
PROCESS AFTER INPUT.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> Dialog Programming -> Graphics All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG.
SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG.
Every effort is made to ensure content integrity. Use information on this site at your own risk.