7장. 쿼리 커스터마이징

쿼리 커스터마이징 개념

다보리 컴포저블에서는 weberp_queries에 표준화된 쿼리 구조가 적용되어 있습니다. 표준 쿼리는 다양한 ERP 및 PRO 기능을 체계적으로 지원하며, 각 분류별로 구조화되어 있습니다. 테마별로 쿼리를 커스터마이징하여 사용할 수도 있지만, 기본적인 표준 쿼리의 구조와 위치를 유지하는 것이 중요합니다.

표준 쿼리 구조

weberp_queries 는 표준화된 쿼리들이 구축되어 있으며, 각 쿼리는 특정 기능과 연관된 디렉토리 구조를 따릅니다. 예를 들어, erp/list/list-type1/download/post 디렉토리에는 pro_post 테이블의 다운로드 기능을 구현하는 쿼리 파일이 포함되어 있습니다.

커스터마이징 지침

예시

weberp_queries의 디렉토리 구조 예시:

테마 디렉토리의 커스터마이징된 쿼리 구조 예시:

커스터마이징 쿼리를 구축할 때는 반드시 weberp_queries를 참조하여 필요한 쿼리의 구조와 위치를 확인하고, 동일한 디렉토리 구조로 구현해야 합니다. 이를 통해 표준 쿼리의 체계를 유지하면서도 필요한 부분을 커스터마이징할 수 있습니다.

커스터마이징 예제

pro 테마중 kbgolf에 적용된 쿼리 커스터마이징 예제를 살펴보겠습니다.

디렉토리 구조 설정

먼저 kbgolf 테마의 qry 디렉토리로 이동합니다. 예제에서 kbgolf/qry 디렉토리 구조는 다음과 같습니다.

image.png

표준 쿼리 디렉토리와 일치

백엔드 서버에서 SQL 파일을 인식하기 위해서는 main_api 서버의 디렉토리 구조와 동일하게 만들어야 합니다. 

weberp_queries 의 디렉토리를 참고하여 동일한 디렉토리를 구축합니다.

image.png

weberp_queries 디렉토리 구조 예시:

image.png

커스터마이징 쿼리의 디렉토리 구조 예시

 

QueryVars 작성

프론트엔드에서 쿼리를 호출하기 위한 파라미터를 작성합니다. QueryVars에 테마명을 포함하여 작성합니다:

"QueryVars": {
        "QueryName": "kbgolf::post/sise",
        "FilterName": "",
        "FilterValue": "",
        "FilterDate": "",
        "SimpleFilter": ""
    },

QueryName: kbgolf::post/sise와 같이 테마명을 포함시켜줍니다. 테마명이 포함되지 않으면 서버에서 표준 쿼리를 찾게 되어 에러가 발생할 수 있습니다.

서버 반영

파라메터 작성이 완료되었으면 해당 서버에 반영해야 합니다.
참고사항

테마 서버에 반영 방법