7장. 쿼리 커스터마이징
쿼리 커스터마이징 개념
다보리 컴포저블에서는 weberp_queries
에 표준화된 쿼리 구조가 적용되어 있습니다. 표준 쿼리는 다양한 ERP 및 PRO 기능을 체계적으로 지원하며, 각 분류별로 구조화되어 있습니다. 테마별로 쿼리를 커스터마이징하여 사용할 수도 있지만, 기본적인 표준 쿼리의 구조와 위치를 유지하는 것이 중요합니다.
표준 쿼리 구조
weberp_queries
는 표준화된 쿼리들이 구축되어 있으며, 각 쿼리는 특정 기능과 연관된 디렉토리 구조를 따릅니다. 예를 들어, erp/list/list-type1/download/post
디렉토리에는 pro_post
테이블의 다운로드 기능을 구현하는 쿼리 파일이 포함되어 있습니다.
커스터마이징 지침
- 디렉토리 구조 유지: 테마 디렉토리의
qry
안에 쿼리를 커스터마이징할 때는weberp_queries
의 구조와 위치를 동일하게 유지해야 합니다. - 표준 쿼리 참조: 필요한 쿼리의 구조와 위치를
weberp_queries
에서 확인한 후, 테마 디렉토리의qry
에 동일한 구조로 구현합니다. - 쿼리 커스터마이징:
select
절,조건
절,from
절 등 쿼리의 세부 내용을 필요에 따라 다양하게 커스터마이징할 수 있습니다.
예시
weberp_queries
의 디렉토리 구조 예시:
weberp_queries/erp/list/list-type1/download/post
테마 디렉토리의 커스터마이징된 쿼리 구조 예시:
themes/your_theme/qry/erp/list/list-type1/download/post
커스터마이징 쿼리를 구축할 때는 반드시 weberp_queries
를 참조하여 필요한 쿼리의 구조와 위치를 확인하고, 동일한 디렉토리 구조로 구현해야 합니다. 이를 통해 표준 쿼리의 체계를 유지하면서도 필요한 부분을 커스터마이징할 수 있습니다.
커스터마이징 예제
pro 테마중 kbgolf에 적용된 쿼리 커스터마이징 예제를 살펴보겠습니다.
디렉토리 구조 설정
먼저 kbgolf
테마의 qry
디렉토리로 이동합니다. 예제에서 kbgolf/qry
디렉토리 구조는 다음과 같습니다.
표준 쿼리 디렉토리와 일치
백엔드 서버에서 SQL 파일을 인식하기 위해서는 main_api
서버의 디렉토리 구조와 동일하게 만들어야 합니다.
weberp_queries
의 디렉토리를 참고하여 동일한 디렉토리를 구축합니다.
weberp_queries
디렉토리 구조 예시:
커스터마이징 쿼리의 디렉토리 구조 예시
QueryVars 작성
프론트엔드에서 쿼리를 호출하기 위한 파라미터를 작성합니다. QueryVars
에 테마명을 포함하여 작성합니다:
"QueryVars": {
"QueryName": "kbgolf::post/sise",
"FilterName": "",
"FilterValue": "",
"FilterDate": "",
"SimpleFilter": ""
},
QueryName
: kbgolf::post/sise
와 같이 테마명을 포함시켜줍니다. 테마명이 포함되지 않으면 서버에서 표준 쿼리를 찾게 되어 에러가 발생할 수 있습니다.