외부 콘텐츠 형식(3)-Visual Studio 2010

SharePoint 2010 2011.09.27 08:30 Posted by 정홍주

외부 콘텐츠 형식(3)-Visual Studio 2010

외부 콘텐츠 형식을 Visual Studio 2010에서 구성해보도록 하겠습니다. Visual Studio 2010을 이용하여 SharePoint 빈 프로젝트를 생성하고 새 항목 추가에서 비즈니스 데이터 연결 모델을 선택하고 “ProductModel” 로 이름을 지정합니다.

생성된 결과는 아래와 같습니다.

BDC 디자인 창의 Entity1“Product”로 변경합니다. 그리고 Identifier1 속성을 “ProductID” 로 변경하고 속성 창에서 System.Int32로 데이터 형식을 변경합니다.

솔루션 탐색기의 Entity1.cs 파일을 Product.cs 로 변경하고 아래와 같이 속성을 추가합니다. 실제 외부 목록이나 외부 데이터 열에서 표시할 데이터의 속성이며 외부 데이터 원본으로부터의 데이터를 가져와서 ReadList, ReadItem 메서드에서 처리될 클래스 속성입니다.

BDC 탐색기로 이동해서 ReadItem, ReadList 속성을 위의 클래스에 맞게 수정하면 ProductService.cs 클래스의 메서드가 변경되게 됩니다.

BDC 탐색기가 안보인다면 보기 메뉴의 다른 창에서 BDC 탐색기를 클릭하거나 bdcm 파일에서 BDC 탐색기 링크를 클릭합니다.

ReadItem 메서드의 @id 부분을 @ProductID로 변경하고 Identifier1 ProductID 로 변경하고 속성 창에서 데이터 형식을 System.Int32로 변경합니다.

@returnParameter 를 확장해서 Entity1 Product 로 변경하고 속성 창에서 데이터 형식은 현재프로젝트의 Product 클래스를 선택합니다. 그리고 BDC 탐색기의 Product 를 오른쪽 클릭하여 TypeDescriptor 추가를 클릭하여 속성을 추가하고 이름과 데이터 형식을 Product 클래스의 속성과 일치시켜줍니다.

그리고 BDC 탐색기의 ReadList 메서드 아래의 EntityList ProductList로 이름을 변경하고 형식 이름을 현재 프로젝트의 Product 클래스를 지정합니다. 그리고 위에서 생성된 Product 를 오른쪽 클릭하여 복사하고 ReadList 메서드 아래 ProductList 에 붙여넣기 합니다.

이제 솔루션 탐색기의 ProductService.cs 클래스의 코드로 이동하면 Entity1에 대한 기존 메서드 에 해당하는 부분은 삭제합니다.

이제 외부 데이터 원본을 연결하여 해당 제품과 제품 목록을 반환되도록 ADO.NET 코드를 아래와 같이 작성합니다.

프로젝트를 배포하고 BCS 서비스 응용 프로그램에 보면 Product가 아래처럼 생성된 것을 알 수 있습니다. 크롤링은 아니오로 되어 있으며 검색을 위해서는 추가 메서드를 구성해야만 합니다.


Visual Studio 2010을 통해 비즈니스 데이터 연결 모델을 통해 생성한 외부 목록 결과입니다.

Visual Studio 2010의 비즈니스 데이터 연결 모델에 대한 내용을 간단하게 알아보았습니다. 필터와 검색 등에 대한 내용은 더 추가해야 합니다. 다양한 외부 데이터 원본에 대해서 Visual Studio 2010을 통해 복잡한 로직을 구성하여 외부 데이터를 손쉽게 연결할 수 있습니다.



신고


외부 콘텐츠 형식(2)-SharePoint Designer 2010 (3)

이번 내용은 필터를 생성하는 내용을 다루어 보도록 하겠습니다.

SharePoint 2010에서의 열 만들기의 경우 외부 데이터 형식을 선택할 수 있습니다. 그러면 사용자들은 제품 ID나 제품 이름으로 검색해서 데이터를 사용할 수 있습니다. 외부 데이터를 사용하지 않는다면 별도의 목록으로 만들어두어야 하며 데이터를 동기화 해주어야 하고 통합시켜주어야 해서 작업이 더 많아질 수 있습니다. 또한 직접 입력한다면 오타 등으로 인해 데이터 무결성이 떨어지게 됩니다.

SharePoint Designer 2010을 통해 열의 외부 데이터 형식을 손쉽게 접근해 볼 수 있습니다.

자 그러면 SharePoint Designer 2010의 외부 콘텐츠 형식을 생성하고 데이터 원본에 연결합니다.

외부 콘텐츠 형식의 이름은 ProductsFilter로 지정했습니다. 데이터 원본은 SQL Server를 선택하고 AdventureWorks 데이터베이스를 연결했습니다.


데이터 원본 탐색기에서 Product 테이블을 오른쪽 클릭해서 새 항목 읽기 작업”,”새 목록 읽기 작업을 선택합니다. 열의 외부 데이터 형식이므로 생성, 삭제 , 수정에 대한 작업은 필요 없습니다.

새 항목 읽기 작업에서는 별다른 설정이 없으므로 화면은 생략하겠습니다. 관련 데이터를 설정하는 내용입니다.

Product 테이블을 오른쪽 클릭하여 새 목록 읽기 작업을 선택합니다. 목록 읽기 마법사의 처음 화면에서는 다음을 클릭합니다.

필터 매개 변수 구성 화면에서는 필터 매개 변수 추가를 클릭합니다. ProductID 에 대해 필터를 설정하기 위해 추가하려면 클릭링크를 선택합니다. 목록에서 항목을 작성할 때 해당 제품의 ID로 검색하면 해당 외부 데이터가 나타나게 하려고 합니다.

필터 설정 화면에서는 필터 형식은 비교”, 연산자는 같음을 선택하고 확인을 클릭 합니다.

필터 매개 변수 추가를 한번 더 클릭하고 “Name” 필드를 선택합니다. 목록에서 항목을 작성할 때 키워드가 포함된 제품 이름으로 외부 데이터를 검색하려고 합니다.

추가하려면 클릭링크를 선택하여 아래와 같이 필터 형식은 와일드 카드를 선택하고 기본값 여부를 체크하고 확인을 선택합니다. 그리고 기본값에 “*” 를 입력합니다.

아래와 같이 필터 두 개를 추가했고 연산자는 OR로 지정합니다. 아래 오류 및 경고는 제한 필터로 개수를 제한하고 ProductID 필터에 기본값을 설정하면 됩니다만 여기서는 다음으로 넘어가도록 하겠습니다.

다음을 클릭해서 선택 화면에 나오는 내용을 체크해주도로 하겠습니다.

불필요한 열은 체크를 해제하고 ProductID, Name은 선택 컨트롤에 표시를 체크해주고 마침을 선택하고 저장을 해서 외부 콘텐츠 형식을 생성합니다.

새로운 외부 콘텐츠 형식에 대해서 Business Data Connectivity Services 에서 권한을 할당해주어야 합니다. 외부 콘텐츠 형식을 일부 수정해서 저장하면 버전이 달라져 권한 설정을 새로 해주어야 합니다.

제품평가라는 사용자 지정 목록을 생성하고 제품명이라는 열을 추가하면서 열 형식을 “ProductsFilter”로 선택하고 추가 열을 체크해서 화면에 같이 표시되도록 합니다.

제품명을 하나 추가하면 아래와 같은 외부 데이터 화면을 보실 수 있습니다. 제한 필터를 추가해서 200여개 정도로 제한을 해준다면 아래와 같은 붉은색 메시지는 나타나지 않습니다.

필터를 이용해서 제품을 선택한 후 항목을 추가해봅니다. 제품명에 대해서 외부 데이터를 이용해서 효과적으로 관리할 수 있습니다.

제품명에 대해서 외부 데이터를 이용해서 효과적으로 관리할 수 있습니다.

외부 데이터 형식의 필터를 생성하는 내용을 간단히 다루어보았습니다.

신고

외부 콘텐츠 형식(2)-SharePoint Designer 2010(2)


앞에 글에 이어 나갑니다.

필터 매개 변수 구성에서는 값을 제한 하거나 와일드 카드를 통해 검색하는 것을 설정합니다. 외부 목록의 경우 값을 제한 하지 않으면 화면에 표시가 되지 않으므로 설정해야 합니다.

필터 매개 변수 추가를 클릭합니다. 그러면 오른쪽 상단의 추가하려면 클릭링크를 볼 수 있습니다. 데이터베이스의 열을 적절히 선택하고 링크를 클릭합니다.

필터 구성 창에서는 필터 형식을 선택할 수 있습니다. 여기에서는 외부 목록을 위해 제한을 선택하고 확인을 클릭합니다.

제한에 대해서는 반드시 제한에 대한 기본값을 지정해야 합니다.

마침을 누르고 저장을 하면 외부 콘텐트 형식을 만들게 되고 Business Data Connectivity Services에 추가되게 됩니다.

외부 콘텐트 형식을 생성했다고 바로 외부 목록 등을 생성해서 이용 할 수는 없습니다. 중앙 관리의 Business Data Connectivity Services 서비스 응용 프로그램에서 개체 사용 권한 설정을 해주어야 합니다.

위에서 생성한 Contacts 를 선택하고 리본 메뉴의 개체 사용 권한 설정을 클릭합니다. 사용자나 그룹을 추가하고 권한을 선택합니다.

팀 사이트로 이동하여 사이트 작업, 기타 옵션에서 외부 목록을 선택하고 만들기를 클릭합니다.

이름을 입력하고 데이터 원본 구성에서 적절한 외부 콘텐츠 형식을 선택하고 확인을 클릭합니다.

그러면 아래와 같은 외부 콘텐츠 형식을 볼 수 있습니다.

외부 콘텐트 형식의 모든 작업 만들기를 선택하였으므로 외부 목록에서 수정하면 해당 데이터베이스의 값이 변경되게 됩니다. 그리고 Office 항목 형식과 오프 라인 사용에 따라서 Outlook의 연락처나 SharePoint Workspace 2010에서의 오프라인 사용도 가능합니다.

수정사항이 발생하여 외부 콘텐트 형식을 수정하면 외부 목록까지 같이 변경되는 것은 아닙니다.

중앙 관리에서 만들어지므로 다른 모든 사이트 모음에서 액세스 가능합니다.

필터의 경우 위와는 별도로 만들어야 할 경우도 있습니다.

다음으로는 필터를 생성하는 내용으로 열 만들기에서 외부 데이터를 이용해보도록 하겠습니다.

신고

외부 콘텐츠 형식(2)-SharePoint Designer 2010(1)

외부 콘텐츠 형식을 만들기 위해 SharePoint Designer 2010을 이용하여 외부 목록을 생성해보도록 하겠습니다.



외부 콘텐츠 형식을 만들기 위해서는 SharePoint Designer 2010에서 사이트를 열어서 생성하게 됩니다.

위의 화면에서 리본 메뉴중의 외부 콘텐츠 형식을 클릭합니다.

이름과 표시이름은 데이터베이스의 테이블 이름과 동일하게 “Contacts”로 지정합니다. 네임스페이스는 이름보다 한 단계 위의 카테고리 개념으로 보면 됩니다. 또한 Office 항목 형식에서 지정한다면 Outlook의 연락처로 연결도 가능합니다. 그리고 SharePoint Workspace 2010에서 오프라인 동기화 사용을 체크할 수 있습니다.

맨 마지막의 외부 시스템을 클릭해서 데이터 원본 설정과 작업을 생성하게 됩니다.



연결 추가를 클릭하면 아래와 같은 화면을 볼 수 있습니다.



데이터 원본 설정에서는 “.NET 형식”, ”SQL Server”, ”WCF 서비스세 가지만 설정할 수 있습니다. 다른 데이터 원본에 대한 요구사항은 Visual Studio 2010을 통해 생성해야 합니다.

SQL Server를 선택하고 필요한 정보를 입력합니다.



보안 저장소 응용 프로그램 ID는 외부 데이터를 통합하는 Business Data Connectivity Services Secure Store Services 와 연관이 있습니다.

데이터 원본이 잘 연결되었다면 데이터 탐색기에서 데이터베이스를 확장해서 Contact 테이프를 오른쪽 클릭해서 모든 작업 만들기를 선택합니다.

마법사에서 작업에 대한 설정을 하게 됩니다.



다음을 클릭하고 외부 항목 선택 컨트롤에 표시하도록 선택한 필드가 없다는 경고에 따라 데이터원본 요소에서 “LastName” 을 선택하고 선택 컨트롤에 표시를 체크하고 다음을 클릭합니다.

Office 항목 형식에서 선택한 것에 따라 마법사에서 선택해야 하는 것은 달라집니다.

글이 길어 바로 이어 쓰도록 하겠습니다.


신고