방법: 워크플로 관리자 1.0용 워크플로 만들기

 

게시 날짜: 2016년 7월

시작 자습서의 이 단계에서는 GetProducts 작업을 사용하여 제품 컬렉션을 반환하는 워크플로를 만듭니다. 워크플로에서는 컬렉션을 반복하고 반환된 각 제품에서 제품 이름을 추출하여 목록에 추가하며 제품 이름이 포함된 사용자 상태를 설정합니다. 이 상태는 읽기 전용이며 이후 자습서 단계에서 만드는 워크플로 클라이언트 응용 프로그램에서 표시됩니다. 모든 제품을 읽은 후에는 워크플로에서 제품 이름 목록이 포함된 사용자 상태를 설정하고 작업을 완료합니다.

System_CAPS_ICON_note.jpg 참고

연습 동영상을 보거나 자습서의 시작 파일 및 전체 버전을 다운로드하려면 워크플로 관리자 1.0 - 시작 자습서를 참조하세요.

이 자습서의 단계

  • 워크플로 만들기

  • 인수 및 변수 만들기

  • 워크플로 작업 추가

워크플로 만들기

  1. 방법: 사용자 지정 작업 만들기에 솔루션이 열려 있지 않으면 자습서의 이전 단계인 Entity with relative path '../Token/vs_current_long_md.md' can not be found, for source topic '{"project_id":"79a1f4df-7306-4995-a144-4d201f89c75c","entity_id":"983ae4ef-44b3-4485-8723-dba5d5ea5cd4","entity_type":"Article","locale":"ko-KR"}'.에서 솔루션을 엽니다.

  2. 솔루션 탐색기에서 GetProductsActivities를 마우스 오른쪽 단추로 클릭하고 추가, 새 항목을 선택합니다.

  3. 설치, Visual C# 항목 노드에서 워크플로를 선택합니다.워크플로 목록에서 작업을 선택합니다.

  4. 이름 상자에 GetProductsWorkflow를 입력한 다음 추가를 클릭합니다.

  5. 솔루션 탐색기에서 GetProductsWorkflow.xaml을 두 번 클릭하여 디자이너에 표시합니다(아직 표시되지 않은 경우).

  6. 도구 상자제어 흐름 섹션에서 워크플로 디자이너의 여기에 작업 놓기 레이블로 시퀀스 작업을 끌어 놓습니다.

인수 및 변수 만들기

  1. 활동 디자이너의 왼쪽 아래에 있는 인수를 클릭하여 인수 창을 표시합니다.

  2. 인수 만들기를 클릭합니다.

  3. 이름 상자에 SearchKeyword를 입력하고 방향 드롭다운 목록에서 안쪽을 선택한 후 인수 형식 드롭다운 목록에서 문자열을 선택합니다.

  4. 활동 디자이너의 왼쪽 아래에 있는 인수를 클릭하여 인수 창을 닫습니다.

  5. 활동 디자이너의 왼쪽 아래에 있는 변수를 클릭하여 변수 창을 표시합니다.

  6. 변수 만들기를 클릭합니다.

    System_CAPS_ICON_tip.jpg 팁

    변수 만들기가 표시되지 않은 경우 워크플로 디자이너에서 시퀀스 작업을 클릭하여 선택합니다.

  7. 이름 상자에 ProductsData를 입력하고 변수 형식 드롭다운 목록에서 형식 찾아보기를 선택합니다.

  8. 형식 이름 상자에 DynamicValue를 입력하고 결과 목록에서 DynamicValue를 선택한 후 확인을 클릭합니다.

  9. 변수 만들기를 클릭합니다.

  10. 이름 상자에 Count를 입력하고 변수 형식 드롭다운 목록에서 Int32를 선택합니다.

  11. 변수 만들기를 클릭합니다.

  12. 이름 상자에 ProductsList를 입력하고 변수 형식 드롭다운 목록에서 문자열을 선택합니다.

  13. 워크플로 디자이너의 왼쪽 아래에 있는 변수를 클릭하여 변수 창을 닫습니다.

워크플로 작업 추가

  1. 도구 상자GetProductsActivities 섹션에서 시퀀스 작업으로 GetProducts 작업을 끌어 놓은 후 다음 속성을 구성합니다.

    속성
    ProductsData ProductsData
    SearchKeyword SearchKeyword
  2. CountDynamicValueItems 작업이 GetProducts 작업 뒤에 오도록 도구 상자DynamicValue 섹션에서 시퀀스 작업으로 끌어 놓은 후 다음 속성 값을 구성합니다.

    속성
    결과 Count
    원본 ProductsData
  3. SetUserStatus가 새로 추가된 CountDynamicValueItems 작업 뒤에 오도록 도구 상자런타임 섹션에서 끌어 놓은 후 설명 속성에 다음 식을 지정합니다.

    "Products: " + Count  
    
  4. Delay 작업이 새로 추가된 SetUserStatus 작업 뒤에 오도록 도구 상자기본 형식 섹션에서 끌어 놓은 후 지속 시간 속성에 다음 식을 지정합니다. Delay는 워크플로가 다음 상태를 설정하기 전에 워크플로 클라이언트가 상태를 검색할 수 있도록 하며 이 자습서에서 사용될 목적으로 추가되었습니다. 메시징 작업을 사용하거나 데이터베이스에 레코드를 기록하는 등의 프로덕션 응용 프로그램 기술에서는 정보를 전송하는 데 사용됩니다.

    TimeSpan.FromSeconds
    (1)  
    
  5. While 작업이 새로 추가된 SetUserStatus 작업 뒤에 오도록 도구 상자제어 흐름 섹션에서 끌어 놓습니다.

  6. 활동 디자이너의 왼쪽 아래에 있는 변수를 클릭하여 변수 창을 표시합니다.

  7. 변수 만들기를 클릭합니다.

  8. 이름 상자에 Items를 입력하고 변수 형식 드롭다운 목록에서 Int32를 선택한 후 범위 드롭다운 목록에서 While이 선택되어 있는지 확인하고 기본값 상자에 0을 입력합니다.

  9. 변수 만들기를 클릭합니다.

  10. 이름 상자에 ProductName을 입력하고 변수 형식 드롭다운 목록에서 문자열을 선택한 후 범위 드롭다운 목록에서 While이 선택되어 있는지 확인합니다.

  11. 활동 디자이너의 왼쪽 아래에 있는 변수를 클릭하여 변수 창을 닫습니다.

  12. While 작업의 조건 상자에 다음 식을 입력합니다.

    Items < Count  
    
  13. 도구 상자DynamicValue 섹션에서 While 작업의 본문으로 GetDynamicValueProperty<T> 작업을 끌어서 놓습니다.

    작업을 놓을 때 나타나는 형식 선택 창의 드롭다운 목록에서 문자열을 선택한 후 확인을 클릭합니다.

  14. 워크플로 디자이너에서 GetDynamicValueProperty<T> 작업을 클릭하여 선택하고 다음 속성을 구성합니다.

    속성
    DisplayName GetProductName
    PropertyName "(" + Items + ")/ProductName"
    결과 ProductName
    원본 ProductsData
  15. SetUserStatus가 새로 추가된 GetDynamicValueProperty<T> 작업 뒤에 오도록 도구 상자런타임 섹션에서 While 작업으로 끌어서 놓은 후 설명 속성에 다음 식을 지정합니다.

    "Product: " + ProductName  
    
    System_CAPS_ICON_note.jpg 참고

    SetUserStatus를 놓을 때 GetDynamicValueProperty<T> 작업과 SetUserStatus 작업이 모두 포함된 바깥쪽 Sequence 작업이 추가됩니다.

  16. Delay 작업이 새로 추가된 SetUserStatus 작업 뒤에 오도록 도구 상자기본 형식 섹션에서 끌어 놓은 후 지속 시간 속성에 다음 식을 지정합니다. Delay는 워크플로가 다음 상태를 설정하기 전에 워크플로 클라이언트가 상태를 검색할 수 있도록 하며 이 자습서에서 사용될 목적으로 추가되었습니다.

    TimeSpan.FromSeconds
    (1)  
    
  17. Assign 작업이 새로 추가된 Delay 작업 뒤에 오도록 도구 상자기본 형식 섹션에서 끌어 놓은 후 다음 속성을 구성합니다.

    속성
    받는 사람 항목
    Items + 1
  18. 두 번째 Assign 작업이 첫 번째 Assign 작업 뒤에 오도록 도구 상자기본 형식 섹션에서 끌어 놓은 후 다음 속성을 구성합니다.

    속성
    받는 사람 ProductsList
    ProductsList + ProductName + "\n"
  19. SetUserStatus가 외부 시퀀스의 마지막 작업으로 While 작업 뒤에 오도록 도구 상자런타임 섹션에서 끌어 놓은 후 설명 속성에 다음 식을 지정합니다.

    "Products List:\n" + ProductsList  
    

    사용자 상태는 255자로 제한되며 255자를 넘는 문자는 모두 잘립니다.

  20. Ctrl+Shift+B를 눌러 솔루션을 빌드합니다.

    완료된 워크플로 예제와 이 자습서 단계의 연습 동영상을 보려면 워크플로 관리자 1.0 - 시작 자습서를 참조하세요.

게시를 만들고 워크플로를 실행하는 방법은 자습서의 다음 단계인 방법: 워크플로 게시 및 실행을 참조하세요.

참고 항목

시작 자습서