문서
리포트 디자인
31. 데이터 링크

데이터 링크

리얼리포트 데이터에서 외부 URL에서 제공하는 데이터를 연결해서 사용할 수 있는 기능을 제공합니다.

💡

v1.9.0 버전 이상에서 지원하는 기능입니다.

data-link

URL 주소에서 응답받은 데이터 구조

리얼리포트에서는 Simple Data, Band Data 두가지 데이터 타입을 지원하고 있으며 URL 주소에서 응답 받은 데이터는 JSON 형식이여야 하며 데이터는 각 타입마다 아래 구조와 동일해야 합니다.

속성

이름타입설명필수여부
URLstring데이터와 연결해야 하는 URL 주소를 설정합니다.yes
Data Pathstring데이터의 경로를 설정합니다.yes
FormatJSON | CSVURL로 전달받은 데이터의 Format을 지정합니다.yes
MethodGET | POST | PUTHTTP Method 형식을 설정합니다.yes
Query ParametersstringQuery Parameter 정보를 설정합니다.no
HTTP HeadersstringHTTP Header 정보를 설정합니다.no
HTTP BodystringHTTP Body 정보를 설정합니다.no

URL

데이터와 연결해야 하는 URL 주소를 설정합니다.

data-link-url

⚠️

URL이 설정된 데이터는 URL 주소에서 응답받은 데이터로만 보고서가 표현됩니다.

Data Path

URL에서 응답받은 데이터 구조에서 특정 경로를 설정합니다.

data-link-data-path

위 이미지 처럼 Data Path -> sample로 설정할 경우 설정한 URL에서 응답 받은 데이터의 sample에 해당하는 값을 연결해서 사용하게 됩니다.

http://127.0.0.1:5555/api/bass/datalinks/2/run 데이터 구조
{
    "id": "1",
    "name": "tabular",
    "description": "tabular template data",
    "sample": [ // sample에 해당하는 데이터를 연결해서 사용
        {
            "company": "백두산",
            "model": "FA-210",
            "unitCost": 139000,
            "discount": null,
            "description": "열전사, 9600bps, ADF5매, 발신자표시, 폴링"
        },
        {
            "company": "백두산",
            "model": "FAX-B120",
            "unitCost": 180000,
            "discount": null,
            "description": "잉크젯, 14.4kbps, ADF15매, 폴링"
        },
        {
            "company": "백두산",
            "model": "FAX-B120",
            "unitCost": 180000,
            "discount": null,
            "description": "잉크젯, 14.4kbps, ADF15매, 폴링"
        },
        {
            "company": "백두산",
            "model": "FAX-B140",
            "unitCost": 230000,
            "discount": null,
            "description": "잉크젯, 14.4kbps, ADF15매, 폴링"
        },
        {
            "company": "백두산",
            "model": "FAX-L240",
            "unitCost": 492000,
            "discount": null,
            "description": "레이저, 33.6kbps, ADF30매"
        },
        {
            "company": "백두산",
            "model": "FAX-L7000",
            "unitCost": 594000,
            "discount": null,
            "description": "레이저, 14.4kbps, A4"
        }
    ]
}

Format 설정

응답받을 데이터의 format을 설정 합니다.

  • JSON
  • CSV

Method 설정

HTTP Method의 형식을 설정 합니다.

  • GET
  • POST
  • PUT

Query Parameters

HTTP 요청에서 Query Paramter 정보가 필요할 경우 설정합니다.

data-link-query-parameter

HTTP Headers

HTTP 요청에서 Header 정보가 필요할 경우 설정합니다.

data-link-header-parameter

HTTP Body

HTTP 요청에서 Body 정보가 필요할 경우 설정합니다.

data-link-body

HTTP Body는 Method 형식이 POST 혹은 PUT일 경우에만 설정할 수 있습니다.

링크 소스

리얼리포트 데이터에서 설정한 데이터 필드명과 URL을 설정하여 응답받은 JSON 형태의 데이터에서 Key 이름이 동일할 경우 자동으로 데이터가 연결되어 보고서가 표현됩니다.

만약 응답받은 데이터의 Key 이름과 리얼리포트 데이터에 설정한 필드명이 다른 경우에는 데이터의 스키마 편집 패널 영역에서 링크 소스를 설정하여 연결할 수 있습니다.

data-link-source

위 이미지는 리얼리포트에서 tabular 라는 데이터의 스키마 편집 패널에서 cost 필드명과 URL에서 응답받은 JSON 데이터의 unitCost Key를 연결하기 위해 링크소스를 설정한 예시입니다.

URL에서 응답받은 JSON 데이터 구조 예시
[
    {
        "company": "백두산",
        "model": "FA-210",
        "unitCost": 139000,
        "discount": null,
        "description": "열전사, 9600bps, ADF5매, 발신자표시, 폴링"
    },
    {
        "company": "백두산",
        "model": "FAX-B120",
        "unitCost": 180000,
        "discount": null,
        "description": "잉크젯, 14.4kbps, ADF15매, 폴링"
    },
    {
        "company": "백두산",
        "model": "FAX-B120",
        "unitCost": 180000,
        "discount": null,
        "description": "잉크젯, 14.4kbps, ADF15매, 폴링"
    },
    {
        "company": "백두산",
        "model": "FAX-B140",
        "unitCost": 230000,
        "discount": null,
        "description": "잉크젯, 14.4kbps, ADF15매, 폴링"
    },
    {
        "company": "백두산",
        "model": "FAX-L240",
        "unitCost": 492000,
        "discount": null,
        "description": "레이저, 33.6kbps, ADF30매"
    },
    {
        "company": "백두산",
        "model": "FAX-L7000",
        "unitCost": 594000,
        "discount": null,
        "description": "레이저, 14.4kbps, A4"
    }
]

연산자 사용

링크소스에서는 URL에서 가져온 데이터에 연산을 적용시켜서 데이터를 표현할 수 있습니다.

사용 가능한 연산 목록

  • +
  • -
  • *
  • /
  • %

data-link-source-calc