openapi: 3.0.0
info:
  title: SAP API
  version: 1.0.0
servers:
- url: http://localhost:8080
paths:
  /rfc/TREX_RFC_CREATE_JOIN_INDEX:
    post:
      tags:
      - TREX_RFC_ADMINISTRATION
      summary: Create join index
      operationId: /rfc/TREX_RFC_CREATE_JOIN_INDEX
      requestBody:
        content:
          application/json:
            schema:
              properties:
                ALL_ATTRS_FREESTYLE:
                  type: integer
                  format: int64
                  description: '0: false, 1: true'
                DEFAULT_VIEW:
                  type: string
                  format: byte
                  description: Default view
                DESCRIPTION:
                  type: string
                  format: byte
                  description: Description
                INDEX_ID:
                  type: string
                  format: byte
                  description: IndexId
                INDEX_TYPE:
                  type: string
                  format: byte
                  description: Type of the index
                BUSINESS_OBJECT_VIEW:
                  type: array
                  items:
                    type: object
                    properties:
                      VIEW_NAME:
                        type: string
                        format: byte
                        description: ''
                      ANCHOR_TABLE:
                        type: string
                        format: byte
                        description: ''
                FREESTYLE_SEARCH_ATTRIBUTES:
                  type: array
                  items:
                    type: object
                    properties:
                      ATTR_NAME:
                        type: string
                        format: byte
                        description: ''
                JOIN_INDEX:
                  type: array
                  items:
                    type: object
                    properties:
                      INDEX_ID:
                        type: string
                        format: byte
                        description: ''
                      JOIN_INDEX_TYPE:
                        type: string
                        format: byte
                        description: 0=NONE 1=FACT_TABLE 2=D_TAB 3=X_TAB 4=Y_TAB 5=TEMP_TAB 6=S_T
                      INDEX_SIZE:
                        type: integer
                        format: int64
                        description: expectedIndexSize
                JOIN_PATH:
                  type: array
                  items:
                    type: object
                    properties:
                      JOIN_PATH:
                        type: string
                        format: byte
                        description: ''
                      JOIN_LIST:
                        type: string
                        format: byte
                        description: ''
                      CONSTRAINTS:
                        type: string
                        format: byte
                        description: ''
                KEY_FIGURE:
                  type: array
                  items:
                    type: object
                    properties:
                      ATTR_NAME:
                        type: string
                        format: byte
                        description: ''
                      AGGREGATION_TYPE:
                        type: integer
                        format: int64
                        description: 1=SUM 2=COUNT 4=MIN 8=MAX
                SEMANTIC_RELATION:
                  type: array
                  items:
                    type: object
                    properties:
                      RELATION_NAME:
                        type: string
                        format: byte
                        description: ''
                      JOIN_PATH:
                        type: string
                        format: byte
                        description: ''
                      VIEW_NAME:
                        type: string
                        format: byte
                        description: ''
                      RELATION_TYPE:
                        type: string
                        format: byte
                        description: ''
                STATIC_JOIN_CONDITION:
                  type: array
                  items:
                    type: object
                    properties:
                      JOIN_NAME:
                        type: string
                        format: byte
                        description: ''
                      INDEX_ID1:
                        type: string
                        format: byte
                        description: ''
                      ATTR_NAME1:
                        type: string
                        format: byte
                        description: ''
                      INDEX_ID2:
                        type: string
                        format: byte
                        description: ''
                      ATTR_NAME2:
                        type: string
                        format: byte
                        description: ''
                      CONSTRAINTS:
                        type: string
                        format: byte
                        description: ''
                      JOIN_TYPE:
                        type: integer
                        format: int64
                        description: ''
                VIEW_ATTRIBUTE:
                  type: array
                  items:
                    type: object
                    properties:
                      OBJECT_NAME:
                        type: string
                        format: byte
                        description: ''
                      INDEX_ID:
                        type: string
                        format: byte
                        description: ''
                      ATTR_NAME:
                        type: string
                        format: byte
                        description: ''
                      JOIN_PATH:
                        type: string
                        format: byte
                        description: ''
                      VIEW_NAME:
                        type: string
                        format: byte
                        description: ''
                      OBJECT_TYPE:
                        type: string
                        format: byte
                        description: ''
              required:
              - ALL_ATTRS_FREESTYLE
              - DEFAULT_VIEW
              - DESCRIPTION
              - INDEX_ID
              - INDEX_TYPE
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                properties:
                  RETURN_CODE:
                    type: integer
                    format: int64
                    description: Returncode
                  RETURN_TEXT:
                    type: string
                    format: byte
                    description: Returntext
                  BUSINESS_OBJECT_VIEW:
                    type: array
                    items:
                      type: object
                      properties:
                        VIEW_NAME:
                          type: string
                          format: byte
                          description: ''
                        ANCHOR_TABLE:
                          type: string
                          format: byte
                          description: ''
                  FREESTYLE_SEARCH_ATTRIBUTES:
                    type: array
                    items:
                      type: object
                      properties:
                        ATTR_NAME:
                          type: string
                          format: byte
                          description: ''
                  JOIN_INDEX:
                    type: array
                    items:
                      type: object
                      properties:
                        INDEX_ID:
                          type: string
                          format: byte
                          description: ''
                        JOIN_INDEX_TYPE:
                          type: string
                          format: byte
                          description: 0=NONE 1=FACT_TABLE 2=D_TAB 3=X_TAB 4=Y_TAB 5=TEMP_TAB 6=S_T
                        INDEX_SIZE:
                          type: integer
                          format: int64
                          description: expectedIndexSize
                  JOIN_PATH:
                    type: array
                    items:
                      type: object
                      properties:
                        JOIN_PATH:
                          type: string
                          format: byte
                          description: ''
                        JOIN_LIST:
                          type: string
                          format: byte
                          description: ''
                        CONSTRAINTS:
                          type: string
                          format: byte
                          description: ''
                  KEY_FIGURE:
                    type: array
                    items:
                      type: object
                      properties:
                        ATTR_NAME:
                          type: string
                          format: byte
                          description: ''
                        AGGREGATION_TYPE:
                          type: integer
                          format: int64
                          description: 1=SUM 2=COUNT 4=MIN 8=MAX
                  SEMANTIC_RELATION:
                    type: array
                    items:
                      type: object
                      properties:
                        RELATION_NAME:
                          type: string
                          format: byte
                          description: ''
                        JOIN_PATH:
                          type: string
                          format: byte
                          description: ''
                        VIEW_NAME:
                          type: string
                          format: byte
                          description: ''
                        RELATION_TYPE:
                          type: string
                          format: byte
                          description: ''
                  STATIC_JOIN_CONDITION:
                    type: array
                    items:
                      type: object
                      properties:
                        JOIN_NAME:
                          type: string
                          format: byte
                          description: ''
                        INDEX_ID1:
                          type: string
                          format: byte
                          description: ''
                        ATTR_NAME1:
                          type: string
                          format: byte
                          description: ''
                        INDEX_ID2:
                          type: string
                          format: byte
                          description: ''
                        ATTR_NAME2:
                          type: string
                          format: byte
                          description: ''
                        CONSTRAINTS:
                          type: string
                          format: byte
                          description: ''
                        JOIN_TYPE:
                          type: integer
                          format: int64
                          description: ''
                  VIEW_ATTRIBUTE:
                    type: array
                    items:
                      type: object
                      properties:
                        OBJECT_NAME:
                          type: string
                          format: byte
                          description: ''
                        INDEX_ID:
                          type: string
                          format: byte
                          description: ''
                        ATTR_NAME:
                          type: string
                          format: byte
                          description: ''
                        JOIN_PATH:
                          type: string
                          format: byte
                          description: ''
                        VIEW_NAME:
                          type: string
                          format: byte
                          description: ''
                        OBJECT_TYPE:
                          type: string
                          format: byte
                          description: ''
        '400':
          description: Bad request.
        5XX:
          description: Unexpected error.
