2단계: Siebel 비즈니스 구성 요소 작업을 위한 애플리케이션 정의 파일 만들기
완료 시간: 15분
목표: Business Data Catalog LOB(기간 업무) 애플리케이션의 데이터를 포털에 노출하고 통합합니다. 이 데이터를 포털 사이트에 통합하려면 Microsoft Office SharePoint Server에서 사용할 수 있는 애플리케이션 정의 파일을 빌드해야 합니다.
비즈니스 Data Catalog 정의 편집기 도구를 사용하면 Business Data Catalog 대한 애플리케이션 정의 파일을 만들 수 있습니다. 이 도구는 정의 파일에 대한 XML을 자동으로 생성합니다. 따라서 XML 편집기에서 파일을 수동으로 만들 필요가 없습니다.
만드는 Microsoft Office SharePoint Server 애플리케이션의 목적은 계정 비즈니스 구성 요소에서 쿼리 작업을 수행하여 레코드 목록을 검색하는 것입니다. 이렇게 하려면 비즈니스 Data Catalog 정의 편집기에서 일련의 작업을 완료해야 합니다. 이 항목에서는 이러한 작업을 수행하는 방법에 대한 지침을 제공합니다.
사전 요구 사항
Microsoft Office SharePoint Server 2007 SDK의 일부로 비즈니스 Data Catalog 정의 편집기가 설치되어 있어야 합니다.
1 단계: Siebel Business Component Operations를 WCF 서비스로 게시에 설명된 대로 WCF 서비스를 게시해야 합니다.
애플리케이션 정의 파일 만들기
이 섹션에서는 WCF 서비스에 대한 애플리케이션 정의 파일을 만드는 단계별 지침을 제공합니다.
WCF 서비스에 연결하고 엔터티 만들기
서비스에 대한 WSDL(웹 서비스 설명 언어)을 추출하려면 WCF 서비스에 연결해야 합니다. WSDL에서 비즈니스 Data Catalog 정의 편집기는 메서드를 추출합니다. 이러한 메서드를 사용하여 엔터티를 만들 수 있습니다. 이 예제에서는 계정 비즈니스 구성 요소의 쿼리 작업에 대해 하나의 엔터티를 만들어야 합니다.
WCF 서비스에 연결하고 엔터티를 만들려면
비즈니스 Data Catalog 정의 편집기를 시작합니다. 시작 메뉴에서 Microsoft Business Data Catalog 정의 편집기를 클릭합니다.
도구에서 LOB 시스템 추가를 클릭합니다.
LOB 시스템 추가 창에서 Webservice에 연결을 클릭합니다.
URL 상자에 WCF 서비스의 URL을 입력합니다. URL은 다음 형식이어야 합니다.
https://<computer_name>/Siebel_Account/BusinessObjects_Account_Account_Operation.svc?wsdl
여기서 BusinessObjects_Account_Account_Operation.svc는 Siebel 계약에 대해 만든 서비스 파일입니다.
1 단계: Siebel Business Component Operations를 WCF 서비스로 게시에 설명된 대로 WCF 서비스가 성공적으로 게시되었는지 여부를 테스트할 때 입력해야 하는 URL을 사용할 수 있습니다.
연결을 클릭합니다.
웹 메서드 추가 탭을 클릭하여 WCF 어댑터 서비스 개발 마법사에서 선택한 작업을 확인합니다. Query 메서드가 표시됩니다.
에 웹 메서드 추가
Query 메서드를 디자인 화면으로 끌어간 다음 확인을 클릭합니다.
LOB 시스템 이름 입력 대화 상자의 LOB 시스템 이름 상자에 이름을 입력합니다. 이 예제에서는 를 입력
Siebel_Account
한 다음 확인을 클릭합니다. 엔터티 Entity0은 비즈니스 Data Catalog 정의 편집기에서 만들어집니다.중요
비즈니스 Data Catalog 정의 편집기 도구는 열거된 데이터 형식을 처리하지 않습니다. 따라서 비즈니스 Data Catalog 정의 편집기 도구는 열거된 데이터 형식이 발생할 때까지 필드를 가져오고 나머지 필드를 무시합니다. 비즈니스 Data Catalog 정의 편집기 도구도 오류를 제공합니다. 이 오류를 무시하고 확인을 클릭하여 진행할 수 있습니다. 나중에 애플리케이션 정의 파일에 필요한 필드를 수동으로 추가할 수 있습니다.
보다 친숙한 이름을 사용하도록 엔터티 이름을 변경합니다. 이 예제에서는 Entity0을 Account로 변경 합니다.
Siebel_Account 노드를 확장한 다음 엔터티 노드를 확장합니다.
Entity0 노드를 선택합니다.
속성 창의 이름 필드에 계정을 입력합니다.
메서드에 대한 사용자 이름 및 암호 헤더 지정
Siebel 시스템에서 선택한 비즈니스 구성 요소 작업에 대한 WCF 서비스를 만들 때 엔드포인트 동작 구성의 일부로 사용자 이름 및 암호 헤더를 지정했습니다(1단계: Siebel Business Component Operations를 WCF 서비스로 게시). 메서드 속성에 대해 동일한 값을 지정해야 합니다.
Query 메서드에 대한 사용자 이름 및 암호 헤더를 지정하려면
메타데이터 개체 창에서 계정 노드를 확장한 다음 메서드 노드를 확장합니다.
쿼리 노드를 클릭하고 속성 창에서 속성 필드에 대한 줄임표(...) 단추를 클릭합니다.
PropertyView 컬렉션 편집기 대화 상자에서 추가를 클릭하고 속성 창에서 이름 필드에 를 입력
HttpHeaderUserName
합니다. 마찬가지로 PropertyValue 필드에 를 입력MyUserHeader
합니다. 형식 필드에 대해 System.String을 선택합니다.PropertyView 컬렉션 편집기 창에서 추가를 클릭하고 속성 창에서 이름 필드에 를 입력
HttpHeaderPassword
합니다. 마찬가지로 PropertyValue 필드에 를 입력MyPassHeader
합니다. 형식 필드에 대해 System.String을 선택합니다.확인을 클릭합니다.
Siebel 시스템에 연결하기 위한 단일 Sign-On 설정
이 항목의 모든 절차를 완료한 후에는 SharePoint 애플리케이션으로 가져올 수 있는 애플리케이션 정의 XML을 만듭니다. 애플리케이션에서 Siebel 비즈니스 구성 요소 작업(웹 메서드로 노출됨)을 호출하여 Siebel 시스템에서 관련 데이터를 검색합니다. 이를 사용하도록 설정하려면 Siebel 시스템의 사용자와 SharePoint 애플리케이션의 사용자 간에 매핑을 만들어야 합니다. 애플리케이션 정의 XML을 가져온 후 SharePoint 중앙 관리 웹 사이트에서 이 매핑을 만듭니다.
그러나 매핑을 만들려면 Business Data Catalog 정의 편집기에서 SecondarySsoApplicationId 속성을 설정해야 합니다.
SecondarySsoApplicationId 속성을 설정하려면
메타데이터 개체 창에서 Siebel_Account 노드를 확장한 다음 인스턴스 노드를 확장합니다 .
Siebel_Account_Instance 클릭하고 속성 창에서 속성 필드에 대한 줄임표(...) 단추를 클릭합니다.
PropertyView 컬렉션 편집기 창에서 추가를 클릭하고 속성 창에서 이름 필드에 SecondarySsoApplicationId를 입력합니다. 마찬가지로 PropertyValue 필드에 SiebelSSO를 입력합니다. 형식 필드에 대해 System.String을 선택합니다.
추가
확인을 클릭합니다.
요구 사항: 계정 비즈니스 구성 요소에 대한 쿼리 작업 수행
이 예제의 첫 번째 요구 사항은 계정 비즈니스 구성 요소에서 쿼리 작업을 수행하는 데 사용할 수 있는 애플리케이션 정의를 만드는 것입니다. 이 요구 사항을 달성하려면 다음 작업 집합을 수행해야 합니다.
Query 메서드에서 필터를 만들고 쿼리 작업이 수행되는 매개 변수에 매핑합니다. 계정 비즈니스 구성 요소의 경우 SearchExpr 매개 변수를 사용하여 쿼리를 수행합니다. 따라서 필터를 SearchExpr 매개 변수에 매핑합니다.
Query 메서드에 대한 Finder 메서드 instance 만듭니다. Finder 메서드는 필터를 기반으로 레코드 목록을 검색합니다.
필터를 만들고 SearchExpr 매개 변수에 매핑하려면
Query 메서드에 대한 필터를 만듭니다.
메타데이터 개체 창에서 계정 노드를 확장한 다음 메서드 노드를 확장합니다.
Query 메서드를 확장하고 필터를 마우스 오른쪽 단추로 클릭한 다음 필터 추가를 클릭합니다.
메서드
속성 창에서 이름 필드에 를 입력
SearchExpression
합니다.FilterType 속성에 대해 같음을 선택합니다.
을 입력합니다.
쿼리 메서드의 SearchExpr 매개 변수에 필터를 매핑합니다.
메타데이터 개체 창에서 계정 노드를 확장한 다음 메서드 노드를 확장합니다.
Query 메서드를 확장한 다음 매개 변수 노드를 확장합니다.
AccountQueryInputRecord 노드를 확장한 다음 두 번째 AccountQueryInputRecord 노드를 확장합니다.
SearchExpr 노드를 클릭하고 속성 창에서 FilterDescriptor목록에서 SearchExpression을 선택합니다.
에 매핑
중요
AccountQueryInputRecord에는 QueryFields 노드도 포함되며, 이 노드에는 항목 노드가 포함됩니다. 항목 노드를 삭제해야 합니다. 그렇지 않으면 계정 비즈니스 구성 요소의 쿼리 작업이 원하는 결과를 제공하지 않을 수 있습니다. 항목 노드를 삭제하려면 노드를 마우스 오른쪽 단추로 클릭한 다음 삭제를 선택합니다.
Query 메서드에 대한 Finder 메서드 instance 만들려면
메타데이터 개체 창에서 계정 노드를 확장한 다음 메서드 노드를 확장합니다.
쿼리 노드를 확장하고 인스턴스를 마우스 오른쪽 단추로 클릭한 다음 메서드 인스턴스 추가를 클릭하여 메서드 인스턴스 만들기 창을 엽니다.
메서드 인스턴스 만들기 창에서 메서드 인스턴스 형식에 대해 Finder를 클릭합니다.
Return TypeDescriptor 섹션에서 반환을 클릭합니다.
확인을 클릭합니다.
속성 창에서 이름 필드에 를 입력
QueryAccount
합니다.
System.Nullable 형식의 매개 변수 제거
Query 함수의 반환 매개 변수에는 System.Nullable 형식의 매개 변수가 포함될 수 있습니다. 애플리케이션 정의에 이러한 매개 변수가 있으므로 SharePoint 포털에서 Siebel 데이터를 표시하는 동안 오류가 발생할 수 있습니다. 따라서 애플리케이션 정의에서 System.Nullable 형식의 매개 변수를 제거해야 합니다.
또한 System.Nullable 형식의 각 매개 변수에 대해 Business Data Catalog 정의 편집기는 System.Boolean 형식의 다른 매개 변수를 만들고 매개 변수 이름에 "지정됨"을 추가합니다. 예를 들어 AccountRole 매개 변수는 System.Nullable 형식입니다. 따라서 비즈니스 Data Catalog 정의 편집기는 매개 변수 목록에 AccountRoleSpecified 매개 변수를 추가합니다. 이러한 매개 변수도 제거해야 합니다.
참고
비즈니스 Data Catalog 정의 편집기에서 매개 변수를 선택하고 속성 창에서 TypeName 속성의 값을 확인하여 매개 변수 형식을 볼 수 있습니다.
참고
애플리케이션에 System.Nullable 형식의 매개 변수가 없는 경우 이 단계를 건너뛸 수 있습니다.
Query 메서드에 대한 System.Nullable 형식의 매개 변수를 제거하려면
메타데이터 개체 창에서 계정 노드를 확장한 다음 메서드 노드를 확장합니다.
쿼리 노드를 확장한 다음 매개 변수 노드를 확장합니다.
반환 노드를 확장한 다음 두 번째 반환 노드를 확장합니다.
삭제할 매개 변수를 마우스 오른쪽 단추로 클릭한 다음 삭제를 선택합니다.
대화 상자에서 확인를 클릭합니다.
애플리케이션 정의를 파일로 내보내기
이제 Siebel 시스템 instance 메타데이터를 포함하는 애플리케이션 정의를 만들었습니다. 이 정의를 Microsoft Office SharePoint Server로 가져올 수 있는 XML 파일로 내보내야 합니다.
애플리케이션 정의를 파일로 내보내려면
메타데이터 개체 창에서 Siebel_Account 노드를 마우스 오른쪽 단추로 클릭한 다음 내보내기를 클릭합니다.
파일을 Siebel_Account.xml 저장합니다.
특정 매개 변수를 포함하도록 애플리케이션 정의 파일 수정
이 항목의 앞부분에서 설명한 것처럼 비즈니스 Data Catalog 정의 편집기 도구는 열거된 데이터 형식을 처리하지 않습니다. 비즈니스 Data Catalog 정의 편집기 도구는 열거된 데이터 형식이 발견되고 나머지 필드를 무시할 때까지 필드를 가져옵니다. 따라서 애플리케이션에서 원하는 특정 필드를 생략할 수 있습니다. 애플리케이션 정의 파일을 수동으로 편집하여 해당 필드를 포함할 수 있습니다.
참고
추가하는 매개 변수가 1 단계: Siebel Business Component Operations를 WCF 서비스로 게시의 WCF 어댑터 서비스 개발 마법사에서 생성된 .cs 파일에 있는지 확인해야 합니다.
이 애플리케이션 정의 파일에서 QueryAccount 메서드에 대한 반환 매개 변수를 추가하거나 제거합니다.
애플리케이션 정의 파일을 수정하려면
Visual Studio 또는 다른 편집기를 사용하여 Siebel_Account.xml 애플리케이션 정의 파일을 엽니다.
QueryAccount 메서드에 대한 매개 변수를 대체하도록 애플리케이션 정의 파일을 수정합니다.
애플리케이션 정의 파일 내에서 다음을 검색합니다.
<TypeDescriptor TypeName="BDC.AccountQueryRecord,Siebel_Account" Name="Item">
태그 내에서
<TypeDescriptors>
기존<TypeDescriptor>
요소를 다음으로 바꿉다.<TypeDescriptor TypeName="System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=<token>" Name="Id" /> <TypeDescriptor TypeName="System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=<token>" Name="Country" /> <TypeDescriptor TypeName="System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=<token>" Name="Name" /> <TypeDescriptor TypeName="System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=<token>" Name="Location" />
파일을 저장하고 닫습니다.
팁
새로 추가된 필드를 보려면 비즈니스 Data Catalog 정의 편집기 도구에서 업데이트된 애플리케이션 정의 파일을 다시 가져올 수 있습니다. 그러나 가져오기 전에 비즈니스 Data Catalog 정의 편집기 도구에서 기존 "Siebel_Account" 애플리케이션을 제거해야 합니다.
다음 단계
이제 Siebel 시스템에서 데이터를 검색할 SharePoint 애플리케이션을 만들어야 합니다. 지침은 3단계: Siebel에서 데이터를 검색하는 SharePoint 애플리케이션 만들기 를 참조하세요.