본문 바로가기
SharePoint 2010

SharePoint Workflow 개발(with InfoPath)

이번 시간엔,

SharePoint Workflow를 개발해 봅니다.

여기에서 사용되는 작업 양식은 InfoPath가 될 꺼구요.

 

우선, 작업 진행되어질 모양입니다.

샘플 양식은 휴가(출장) 신청서가 되겠습니다.

 

1. 신청자가 신청서(InfoPath)를 작성(업로드)됩니다.(Validation Check 및 기타 사항들은 생략.)

 

2. 결재자에 Task가 부여되고 요청 메일이 발송됩니다.

3. 결재자가 승인을 하게되면, 신청자에게 결과 메일이 갑니다.

4. 팀 사이트에 있는 Calendar에 해당자의 휴가(출장) 스케쥴이 자동 추가됩니다.

5. 직원 휴가 관리리스트에 신청한 기간만큼 신청자의 휴가 사용가능일 수를 자동 수정합니다.

 

6. 결재자가 거부를 하게되면, 신청자에게 거부사유가 포함된 결과 메일이 갑니다.

 

 


이제 본격적으로 설명하겠습니다.

 

1. 작성 양식에서 신청자의 사용가능한 휴가일 수를 가져옵니다.(remainder : ?? )

  만약 사용가능한 휴가일 수 보다 많이 신청하게되면 Error를 발생시킵니다.

 

2. 정상적으로 작성을 마치고 [Submit]을 누르면, Workflow가 시작되고, 

 

3. 결재자에게 승인요청 메일이 갑니다. 

 

4. 위에 그림 2곳에 표시한 링크를 클릭하면, 승인작업을 진행할 수가 있습니다.

 

5. 이제 승인작업을 진행합니다.

[Workflow Task]창에서 Comments를 적으면, 요청자에게 보내는 메일에 포함되어 전송됩니다.

 

6. Workflow 작업 진행상태를 바로 확인하실 수가 있습니다.(Check 아이콘 확인)

 

7. 아래와 같이 메일에서도 요청결과를 확인할 수가 있습니다.

 

8. 승인이 완료된 것을 확인할 수 있습니다.

 

9. [Team Calendar]에 가면, 아래와 같이 자동으로 일정이 추가된 것을 볼 수가 있습니다.

 


 

SharePoint Designer에서 주요 Workflow 기능을 설명 하겠습니다.

 

1. 위에 내용에 대한 Workflow Process는 아래와 같습니다.

   Step 2에서의 주요 내용은 승인이 완료되고(If Variable: IsItemApproved1 equals Yes)

   - 신청자에게 Email을 발송하고

   - [Team Calendar]에 휴가일정을 추가하고

   - 신청자의 휴가사용 가능일수를 수정하는 것입니다.

 

2. 그럼, 우선 Step 1에 있는 내용을 살표보면,

   결재자는 신청 양식에 있는 [Manager Name]에서 Id를 가지고 할당합니다.

 

3. [Approval] - [Change the behavior of the overall task process] - [When the Task Process Starts]에서 아래와 같이 결재자에게 메일 발송하는 부분을 Customizing 합니다.

 

 

4. 아울러, [Change the behavior of a single task]에서도 [When a Task Completes] 부분에 Comments를 추가합니다.

5. 해당 Comment는 아래처럼 신청자 결과메일 보내는 내용에 추가합니다.