MapForce를 이용한 JSON 데이터 매핑 및 변환
JSON은 간단한 구조, 작은 용량, 그리고 JavaScript 프로그래밍 언어에 기반한 특징 덕분에 시스템 간 데이터 전송에 널리 사용되는 형식입니다. MapForce는 JSON 데이터를 매핑하고 변환하는 데 있어 JSON을 입력 및 출력 형식 모두로 지원합니다 예를 들어, MapForce는 어떤 인기 있는 데이터베이스에서도 정보를 추출하여 전송할 준비가 된 JSON 파일을 생성할 수 있습니다. 요구 사항: 다음은 JSON 데이터 매핑에 대한 일반적인 요구 사항의 예입니다. 제조업체는 재고를 최소화하는 적시 생산 방식을 통해 비용을 절감합니다. 새로운 고객 주문은 판매 데이터베이스에 기록되며, 매일 마지막에는 해당 날짜의 판매에 필요한 부품 목록이 데이터베이스 쿼리를 통해 생성됩니다. 필요한 부품은 구매 주문서를 통해 공급업체에 JSON 형식으로 전송됩니다.

구매 주문서를 생성하기 위한 MapForce의 JSON 데이터 매핑 및 변환을 설계하려면 두 가지 요소가 필요합니다. 첫째, 데이터베이스에 대한 SQL 쿼리이고, 둘째는 구매 주문서를 모델링하기 위한 JSON 인스턴스 문서입니다. 우리는 이전에 데이터베이스 매핑에 대해 설명한 적이 있으며, 가장 최근에는 "Altova 제품군 전반의 데이터베이스 기능"에서 다루었습니다. 따라서 여기서는 JSON 구성 요소에 대해 집중적으로 설명하겠습니다.
다음은 데이터 매핑 결과의 모델 역할을 하는 JSON 인스턴스 파일의 예시입니다

JSON 인스턴스를 처음부터 만들려면, XMLSpy에서 직접 JSON 코드를 입력할 수 있습니다. 이때, 문법 강조, 상황에 맞는 입력 지원, 괄호와 중괄호를 자동으로 맞춰주는 기능, 그리고 기타 JSON 편집 기능을 활용할 수 있습니다. 만약 JSON에 익숙하지 않아서 직접 입력하기 어렵다면, XMLSpy를 사용하여 XML 인스턴스를 JSON 파일로 변환할 수도 있습니다.
JSON 인스턴스 파일을 데이터 매핑에 추가하면, MapForce는 해당 인스턴스 파일을 기반으로 JSON 스키마 파일을 자동으로 생성합니다. 이때 사용되는 스키마는 JSON Draft 04 스키마 (http://tools.ietf.org/html/draft-zyp-json-schema-04)입니다.

JSON 스키마가 매핑에 추가되며, 해당 스키마의 데이터 요소는 입력 또는 출력으로 매핑될 수 있습니다

MapForce의 데이터베이스 쿼리 창은 SQL 쿼리를 테스트하거나 수정할 수 있는 편리한 기능을 제공합니다

SQL 쿼리를 매핑에 삽입하여 JSON 파일에 필요한 원본 데이터를 제공할 수 있습니다

그런 다음, SQL 쿼리 결과와 JSON 구성 요소의 데이터 요소들을 연결합니다

참고로, SELECT 구문 자체는 위에서 빨간색으로 강조 표시된 행 배열 아래에 있는 객체 선언에 매핑됩니다. 이렇게 하면 쿼리 결과의 각 행에 대해 출력 파일에 새로운 JSON 객체가 생성됩니다.
JSON 데이터 매핑 및 변환을 완료하기 위해 남은 마지막 항목은 날짜입니다. 출력 파일에 주문 날짜를 제공해야 하며, 또한 SQL 쿼리를 수정하여 항상 현재 날짜의 데이터를 선택하도록 해야 합니다. MapForce에는 "now"라는 날짜/시간 함수가 있으며, 이 함수는 위 두 가지 요구 사항을 모두 충족할 수 있습니다.
다음은 완성된 JSON 데이터 매핑 정보입니다

저희는 SQL 쿼리에 필요한 매개변수를 제공하기 위해 추가적인 날짜 및 시간 관련 함수를 사용하여 월과 일을 추출했고, JSON 출력에 필요한 날짜를 제공하기 위해 now 함수에서 시간대 정보를 제거했습니다. (테스트용 판매 데이터베이스에는 1년 동안의 주문 데이터만 포함되어 있기 때문에 연도에 대한 매개변수는 제공하지 않았습니다.)
맵포스 매핑 창에서 "출력" 버튼을 클릭하면 매핑 작업이 실행되고 결과가 화면에 표시됩니다

이제 JSON 데이터 매핑 및 변환 작업이 완료되었으며, 매일 업무가 끝날 때마다 제조 라인에 필요한 부품에 대한 JSON 구매 주문서를 생성하도록 실행할 수 있습니다. 이 프로세스를 자동화하려면 매핑 정보를 MapForce Server 실행 파일로 저장하여 MapForce Server에서 처리할 수 있습니다. 이를 통해 배치 파일을 사용하거나, FlowForce Server의 제어 하에 실행하거나, MapForce Server API를 통해 처리할 수 있습니다.
또는, 매핑을 더 자세히 살펴보고 싶다면, MapForce가 XMLSpy에서 인스턴스 파일로부터 자동으로 생성한 JSON 스키마를 열고, XMLSpy의 스키마 보기에서 내용을 확인할 수 있습니다

MapForce는 JSON 데이터를 XML, JSON, 데이터베이스, EDI, XBRL, 일반 파일, 엑셀 및/또는 웹 서비스 등 다양한 형식으로 매핑하고 변환할 수 있는 강력한 데이터 매핑 도구입니다. MapForce를 직접 사용해 보고 싶으시다면, 지금 바로 완전한 기능을 갖춘 무료 체험판을 다운로드하여 사용해 보세요!