다음을 통해 공유


방법: InfoPath 2003 개체 모델을 사용하여 양식 데이터 액세스

InfoPath 양식의 기능을 확장하려는 경우 양식의 원본으로 사용하는 XML 문서에 대한 정보에 프로그래밍 방식으로 액세스하거나, XML 문서에 포함된 데이터에 액세스하거나, XML 문서에 대해 특정 작업을 실행해야 합니다. InfoPath 개체 모델을 사용하면 XDocumentsCollection 인터페이스와 함께 XDocument 인터페이스를 사용하여 양식의 원본으로 사용하는 XML 문서에 액세스하고 해당 문서를 조작할 수 있습니다.

XDocument 인터페이스는 양식의 원본으로 사용하는 XML 문서와 상호 작용하고 InfoPath 사용자 인터페이스의 많은 작업을 실행하는 다양한 속성, 메서드, 이벤트 등을 제공하므로 InfoPath 개체 모델에서 가장 유용한 형식 중 하나입니다. InfoPath 2003 호환 개체 모델을 사용하는 관리 코드 프로젝트에서는 프로젝트 양식 코드에 이벤트 처리기가 포함된 클래스의 _StartUp 메서드에 XDocument 형식의 변수 thisXDocument가 자동으로 정의됩니다. 그러면 양식의 코드에서 이 thisXDocument 변수를 사용하여 XDocument 인터페이스 및 해당 멤버에 액세스할 수 있습니다.

XDocumentsCollection 인터페이스 개요

XDocumentsCollection 인터페이스는 양식 개발자가 컬렉션에 포함된 XDocument 개체를 관리하는 데 사용할 수 있는 다음과 같은 메서드와 속성을 제공합니다.

이름

설명

Close 메서드

지정된 양식을 닫습니다.

New 메서드

기존 양식을 기반으로 새 양식을 만듭니다.

NewFromSolution 메서드

기존 양식 서식 파일을 기반으로 새 양식을 만듭니다.

NewFromSolutionWithData 메서드

지정된 XML 데이터와 양식 서식 파일을 사용하여 새 InfoPath 양식을 만듭니다.

Open 메서드

지정된 양식을 엽니다.

Count 속성

컬렉션에 포함된 XDocument 개체의 수를 반환합니다.

Item 속성

지정된 XDocument 개체에 대한 참조를 반환합니다.

XDocument 인터페이스 개요

XDocument 인터페이스는 양식 개발자가 양식의 원본 XML 문서와 상호 작용하고 관련 작업을 수행하는 데 사용할 수 있는 다음과 같은 메서드와 속성을 제공합니다.

이름

설명

GetDataVariable 메서드

지정된 데이터 변수의 문자열 값을 반환합니다.

GetDOM 메서드

지정된 DataObject 개체에 연결된 XML DOM(문서 개체 모델)에 대한 참조를 반환합니다.

ImportFile 메서드

지정된 양식을 현재 열려 있는 양식에 가져오거나 병합합니다.

PrintOut 메서드

양식의 현재 보기를 인쇄합니다.

Query 메서드

양식의 연결된 데이터 어댑터에서 데이터를 검색합니다.

Save 메서드

현재 열려 있는 양식을 저장합니다.

SaveAs 메서드

현재 열려 있는 양식을 지정된 이름으로 저장합니다.

SetDataVariable 메서드

지정된 데이터 변수의 값을 설정합니다.

Submit 메서드

디자인 모드에서 설정한 전송 작업에 따라 양식을 전송합니다.

DataObjects 속성

DataObjects 컬렉션에 대한 참조를 반환합니다.

DOM 속성

양식의 원본 XML 데이터로 채워지는 XML DOM에 대한 참조를 반환합니다.

Errors 속성

Errors 컬렉션에 대한 참조를 반환합니다.

Extension 속성

양식 코드 파일에 포함된 모든 함수와 변수를 나타내는 개체에 대한 참조를 반환합니다.

IsDirty 속성

양식의 데이터가 변경되었는지 여부를 나타내는 Boolean 값을 반환합니다.

IsDOMReadOnly 속성

XML DOM이 읽기 전용으로 설정되어 있는지 여부를 나타내는 Boolean 값을 반환합니다.

IsNew 속성

양식을 만든 후에 저장했는지 여부를 나타내는 Boolean 값을 반환합니다.

IsReadOnly 속성

양식이 읽기 전용 모드에 있는지 여부를 나타내는 Boolean 값을 반환합니다.

IsSigned 속성

양식이 디지털 서명되었는지 여부를 나타내는 Boolean 값을 반환합니다.

Language 속성

양식에 사용되는 언어의 문자열 값을 지정하거나 반환합니다.

QueryAdapter 속성

데이터 어댑터 개체에 대한 참조를 반환합니다.

Solution 속성

Solution 개체에 대한 참조를 반환합니다.

UI 속성

UI 개체에 대한 참조를 반환합니다.

URI 속성

양식의 URI(Uniform Resource Identifier)를 포함하는 문자열 값을 반환합니다.

View 속성

View 개체에 대한 참조를 반환합니다.

ViewInfos 속성

ViewInfos 컬렉션에 대한 참조를 반환합니다.

XDocuments 컬렉션 및 XDocument 인터페이스 사용

XDocumentsCollection 인터페이스는 Application 인터페이스의 XDocuments 속성을 통해 액세스합니다. InfoPath 2003 호환 개체 모델을 사용하여 만든 관리 코드 프로젝트에서는 프로젝트 양식 코드의 _StartUp 메서드에서 인스턴스화된 thisApplication 변수를 사용하여 XDocumentsCollection 인터페이스에 액세스할 수 있습니다. 다음 코드 줄에서는 현재 프로젝트의 XDocumentsCollection 인터페이스를 참조하는 변수를 만듭니다.

XDocumentsCollection xdocs;
xdocs = thisApplication.XDocuments;

// Write code here to work with the XDocumentsCollection.
Dim xdocs As XDocumentsCollection
xdocs = thisApplication.XDocuments

' Write code here to work with the XDocumentsCollection.

InfoPath 2003 호환 개체 모델을 사용하여 만든 관리 코드 프로젝트에서는 프로젝트 양식 코드의 StartUp 메서드에서 인스턴스화된 thisXDocument 변수를 사용하여 XDocument 인터페이스에 액세스할 수 있습니다. 다음 코드 줄에서는 thisXDocument 변수를 사용하여 현재 프로젝트의 XDocument 인터페이스에 액세스한 후 현재 열려 있는 양식의 URI를 경고 메시지에 표시합니다.

thisXDocument.UI.Alert(thisXDocument.URI);
thisXDocument.UI.Alert(thisXDocument.URI)
참고 사항참고 사항

XDocument 인터페이스를 사용하여 양식의 원본 XML 문서에 액세스할 때는 현재 열려 있는 양식에 연결된 XML 문서에 액세스하게 됩니다.

XDocument 인터페이스의 핵심 속성은 DOM 속성입니다. 이 속성은 양식의 원본 XML 데이터로 채워지는 XML DOM에 대한 참조를 반환합니다. DOM 속성을 사용하면 XML DOM에서 지원하는 속성과 메서드를 모두 사용할 수 있습니다. 예를 들어 다음 코드에서는 XML DOM의 xml 속성을 사용하여 양식의 원본 XML 문서의 내용을 모두 반환합니다.

string xmldoc;
xmldoc = thisXDocument.DOM.xml;
// Display xml.
thisXDocument.UI.Alert(xmldoc);
Dim xmldoc As String
xmldoc = thisXDocument.DOM.xml
' Display xml.
thisXDocument.UI.Alert(xmldoc)
참고 사항참고 사항

XML DOM 및 XML DOM이 지원하는 모든 속성과 메서드에 대한 자세한 내용은 MSDN의 MSXML SDK를 참조하십시오.