본문 바로가기
개발 Tip

SharePoint List Adapter

예전에 제 네이버 블로그에 소개드린 적이 있었는데, 오늘은 SharePoint 2013 & SQL 2012를 대상으로 SharePoint List Adapter 사용방법을 소개드릴까 합니다.

 

소개해드릴 SharePoint List Adapter는 이름에서 보시면 아시듯이 SharePoint List와 SQL간에 연결해서 Data를 핸들링할 수 있는 프로그램입니다. 일종의 SSIS(SQL Server Integration Services)의 SharePoint를 대상하는 프로그램이라고 보시면 좋을 듯 싶습니다.

아래 Sample은, SharePoint 특정 List의 Contents를 SQL Data Table로 가져오는 것입니다.

 

1. 먼저 아래 사이트에 가서 프로그램을 다운받아 설치합니다.

http://sqlsrvintegrationsrv.codeplex.com/releases/view/17652

2. 이제 [Microsoft SQL Server 2012] - [SQL Server Data Tools]를 실행해서 SSIS용 프로젝트를 만듭니다.

 

3. 아래처럼, [Integration Services 프로젝트] 템플릿을 선택합니다.

 

4. [SSIS 도구 상자]에서 [SharePoint List Source] 또는 [SharePoint List Destination]을 우측 [데이터 흐름] 영역에 갖다 놓습니다.

 

5. [솔루션 탐색기]에서 [새 연결 관리자]를 추가합니다.

 

6. 아래와 같이 연결 관리자를 추가합니다.

 

7. SharePoint와의 연결 속성 정보를 입력합니다.

 

8. [SharePoint List Source] - [편집]을 누릅니다.

 

9. 위에서 만든 [연결 관리자]를 선택합니다.

 

10. SharePoint 속성 정보(SiteUrl, SiteListName, CamlQuery 등)를 입력합니다.

 

11. 가져올 해당 SharePoint List의 Column정보와 출력할 열을 매핑시킵니다.

 

12. 이제 입력하고자 하는 SQL Data 구성을 위해 [OLE DB 대상] Item을 아래와 같이 끌어다 놓습니다.

 

13. [OLE DB 대상 편집기]를 작성합니다.

 

14. 작성이 완료되면, 아래와 같이 '연결 테스트에 성공했습니다.'를 확인합니다.

 

15. Data가 입력될 Table을 새로 만듭니다. (아래와 같이 자동으로 테이블 쿼리가 생성됩니다.) 

 

16. 마지막으로 [솔루션 탐색기]에서 패키지 파일을 실행해서 아래와 같이 정상적으로 작동하는 지 여부를 확인합니다.

 

17. 이제 위에서 생성한 SQL Data Table에 가보시면, SharePoint List Contents가 들어가 있는 것을 보실 수가 있을 것입니다.^^

 

비고. 만약 패키지 배포시 "카탈로그(SSISDB)가 없다는 메세지가 나온다면 SQL 서버에 Integration Services가 설치되지 않아서 입니다.

 

##### 패키지 자동 실행 만들기

- 우선 아래와 같이 [자격 증명]을 추가합니다.

 

- [SQL Server 에이전트]에서 아래와 같이 프록시를 추가하고, [SQL Server Integration Services 패키지]를 활성화합니다.

 

- [작업] - [단계] - [다음 계정으로 실행]을 위에서 만든 프록시 계정으로 설정하고, 원하는 [일정]을 설정하면 자동으로 해당 일정에 실행됩니다.