FileMaker Pro Advanced는 XML 데이터를 기존 FileMaker Pro Advanced 파일로 가져오거나 XML을 새로운 FileMaker Pro Advanced 파일로 변환할 수 있습니다.
XML은 파일이거나 웹 서버로 전송된 HTTP 요청의 결과일 수 있습니다. 예를 들어 HTTP 요청의 형태로 추적 번호를 택배 회사에 보내도록 주문 데이터베이스를 설정할 수 있으며, 웹 서버는 최근 패키지 추적 정보를 XML 포맷으로 반환하며 주문 데이터베이스로 가져올 준비가 됩니다.
가져오는 XML은 FileMaker FMPXMLRESULT DTD(문서 유형 정의)를 준수해야 합니다. 사용자의 XML이 다른 포맷이면 가져오는 동안 XSLT(Extensible Stylesheet Language) 스타일 시트를 적용하여 XML을 FMPXMLRESULT 문법으로 변환할 수 있습니다 XML 포맷를 참조하십시오.
1. 먼저 수행할 작업은 XML을 기존 FileMaker Pro Advanced 파일로 가져왔는지 또는 XML을 새로운 FileMaker Pro Advanced 파일로 변환했는지에 따라 다릅니다.
XML 가져오기 | 방법 |
기존 FileMaker Pro Advanced 파일에 가져오기 | 2단계를 진행합니다. |
XML을 새로운 FileMaker Pro Advanced 파일로 변환하여 가져오기 | 8단계로 건너뜁니다. |
2. 일치하는 레코드를 업데이트하거나 기존 레코드를 대치하는 경우, 대상 파일의 백업 복사본을 생성합니다.
중요사항 일치하는 레코드를 업데이트하거나 기존 레코드를 대치하면 대상 파일의 데이터를 덮어쓰며 취소할 수 없습니다. 데이터를 보호하려면 파일 메뉴 > 복사본 별도 저장을 선택하여 대상 FileMaker Pro Advanced 파일의 백업 복사본을 작성하십시오. 이 작업은 로컬 파일(사용자의 컴퓨터에 있는 파일)에만 수행할 수 있습니다. 레코드 업데이트 또는 대치 동작 방법을 숙지해야 합니다. FileMaker Pro Advanced로 데이터 가져오기를 참조하십시오.
3. FileMaker Pro Advanced에서 대상 파일을 여십시오.
4. 대상 파일이 여러 테이블을 포함하면 레이아웃 팝업 메뉴를 사용하여 데이터를 가져오려는 테이블에서 레코드를 표시하는 레이아웃을 보여줍니다.
5. 일치하는 레코드를 업데이트하거나 기존 레코드를 대치하는 경우, 가져오기 전에 다음을 수행합니다. (새 레코드를 추가하는 경우 다음 단계로 건너뜁니다.)
•일치하는 레코드를 업데이트하는 경우 찾기 세트는 업데이트할 레코드만 포함해야 합니다. 일치 필드 데이터가 일치하더라도 찾기 세트 밖의 레코드는 업데이트되지 않습니다.
•파일에서 기존 레코드를 대치하는 경우 찾기 세트가 변경할 레코드만 포함해야 합니다. 필요한 경우 원본 파일의 올바른 레코드가 대상 파일의 각 레코드의 데이터를 대치하도록 레코드를 정렬합니다.
6. 파일 메뉴 > 레코드 가져오기 > XML 데이터 원본을 선택합니다.
XML 및 XSL 옵션 지정 대화상자가 나타납니다.
7. 10단계로 건너뜁니다.
XML을 새로운 FileMaker Pro Advanced 파일로 변환하려는 경우 다음의 8~9단계만 수행해야 합니다.
8. 파일 메뉴 > 열기를 선택합니다.
9. 파일 열기 대화상자에서 파일 유형(Windows) 또는 보기(macOS)에서 XML 데이터 원본을 선택합니다.
XML 및 XSL 옵션 지정 대화상자가 나타납니다.
10. XML 데이터 원본 지정에서 가져오려는 XML 데이터 원본을 선택합니다.
XML 원본은 파일이나 HTTP 요청의 결과일 수 있습니다.
11. 가져오기 전에 XSLT 스타일 시트를 XML에 적용하려면 XSL 스타일 시트 사용을 선택하고 XSLT 스타일 시트의 원본을 지정합니다.
가져오려는 XML이 FMPXMLRESULT DTD를 준수하지 않으면 XML을 적절한 문법으로 변환하는 XSLT 스타일 시트를 적용해야 합니다. XSLT 원본은 파일 또는 HTTP 요청 결과일 수 있습니다.
12. 계속을 클릭합니다.
Xerces 기반 XML 파서 및 Xalan 기반 XSLT 프로세서를 사용하여 FileMaker Pro Advanced는 XSLT 스타일 시트(지정한 경우)를 적용하여 XML 데이터를 변형합니다. 오류 메시지가 나타나면 오류를 정정하고 다시 가져오기를 시도하십시오.
13. 수행할 가져오기 동작을 선택한 후, 원본 파일에서 가져오려는 데이터로 대상 파일에 있는 필드를 맵핑합니다. (가져오는 동안 가져오기 동작 및 맵핑 필드 설정하기를 참조하십시오). 대화상자에서 옵션을 선택한 다음 가져오기를 클릭합니다.
XML을 새로운 FileMaker Pro Advanced 파일로 변환하려는 경우, 새 파일의 이름을 입력하고 위치를 선택한 다음 저장을 클릭합니다.
•잘 구성된 XML의 요구사항에 관한 세부사항은 www.w3.org/XML/에 있는 XML 사양을 참조하십시오.
•FileMaker Pro Advanced는 Xerces-C++ XML 파서를 사용하며 다음과 같은 문자 인코딩으로 XML 데이터를 지원합니다.
•ASCII
•UTF-8
•UTF-16(Big/Small Endian)
•UCS4(Big/Small Endian)
•IBM037 및 IBM1140 인코딩에서 모두 EBCDIC
•ISO-8859-1(Latin1)
•Windows-1252
Windows-1252가 Windows에서 기본 문자 인코딩이더라도 이 문자 인코딩은 다른 XML 처리 툴에서 폭넓게 인식되지 않습니다. Windows 기반 편집 툴을 사용하여 XML을 생성하는 경우 encoding="..." 선언을 확인하여 XML를 생성하는 문자를 확인하십시오. Apache 웹 사이트, xerces.apache.org/xerces-c/에서 Xerces C++ FAQ를 참조하십시오.
•레코드 가져오기 스크립트 단계에서 XML 데이터를 데이터 원본으로 지정할 때, XML 데이터 및 XSL 스타일 시트의 경로를 다음 두 가지 방법으로 지정할 수 있습니다.
•파일의 경우, 경로는 FileMaker 포맷이어야 합니다(파일 경로 생성하기 참조).
•계산의 경우, 경로는 운영 체제 포맷에 있는 전체 경로여야 합니다. 예를 들어 다음과 같습니다.
Windows: driveletter:\directoryName\fileName
macOS: /directoryName/fileName
크로스 플랫폼 솔루션을 제공하는 경우 Get(시스템 플랫폼) 함수 함수를 사용하여 현재 플랫폼을 확인하고 각 플랫폼에 대해 올바른 포맷을 사용할 수 있습니다.