Power Automate와 함께 V1 프로젝트 일정 API 사용

적용 대상: 리소스/비 재고 기반 시나리오를 위한 Project Operations, Lite 배포 - 견적 청구서 처리

이 문서에서는 Microsoft Power Automate를 사용하여 전체 프로젝트 계획을 만드는 방법, 작업 집합을 만드는 방법 및 엔터티를 업데이트하는 방법을 보여주는 샘플 흐름에 대해 설명합니다. 이 예는 프로젝트, 프로젝트 팀 구성원, 작업 집합, 프로젝트 작업 및 리소스 할당을 생성하는 방법을 보여줍니다. 이 문서에서는 엔터티를 업데이트하고 작업 집합을 실행하는 방법도 설명합니다.

이 문서의 예제에서는 PssCreateV1 API를 사용합니다. PssCreateV2 API를 사용하는 예는 Power Automate가 포함된 V2 프로젝트 일정 API를 참조하세요.

다음은 이 문서 샘플 흐름에 설명된 단계의 전체 목록입니다.

  1. Power Apps 트리거 만들기
  2. 프로젝트 만들기
  3. 팀원을 위한 변수 초기화
  4. 일반 팀원 만들기
  5. 작업 집합 만들기
  6. 프로젝트 버킷 ID를 위한 변수 초기화
  7. 프로젝트 버킷 만들기
  8. 작업 수를 위한 변수 초기화
  9. 프로젝트 작업 ID를 위한 변수 초기화
  10. 기한
  11. 프로젝트 작업 설정
  12. 프로젝트 작업 만들기
  13. 리소스 할당 만들기
  14. 변수 감소
  15. 프로젝트 작업 이름 바꾸기
  16. 작업 집합 실행

가정

이 문서에서는 사용자가 Dataverse 플랫폼, 클라우드 흐름 및 프로젝트 일정 API에 대한 기본 지식이 있다고 가정합니다. 자세한 내용은 이 문서의 뒷부분에 나오는 참조 섹션을 참조하십시오.

흐름 만들기

환경 선택

사용자 환경에서 Power Automate 흐름을 만들 수 있습니다.

  1. https://flow.microsoft.com으로 이동하고 관리자 자격 증명을 사용하여 로그인합니다.
  2. 오른쪽 상단에서 환경을 선택합니다.
  3. 목록에서 Dynamics 365 Project Operations가 설치된 환경을 선택합니다.

솔루션 만들기

다음 단계에 따라 솔루션 인식 흐름을 만듭니다. 솔루션 인식 흐름을 만들어 나중에 사용하기 위해 흐름을 더 쉽게 내보낼 수 있습니다.

  1. 탐색 창에서 솔루션을 선택합니다.
  2. 솔루션 페이지에서 새 솔루션을 선택합니다.
  3. 새 솔루션 대화 상자에서 필수 필드를 설정한 다음 만들기를 선택합니다.

1단계: Power Apps 트리거 만들기

  1. 솔루션 페이지에서 생성한 솔루션을 선택한 다음 새로 만들기를 선택합니다.
  2. 왼쪽 창에서 클라우드 흐름>자동화>클리우드 흐름>인스턴트를 선택합니다.
  3. 흐름 이름 필드에서 API 데모 흐름 예약을 입력합니다.
  4. 이 흐름을 트리거하는 방법 선택 목록에서 Power Apps를 선택합니다. Power Apps 트리거를 만들 때 논리는 작성자에게 달려 있습니다. 이 문서의 예에서는 테스트 목적으로 입력 매개 변수를 비워 둡니다.
  5. 만들기를 선택합니다.

2단계: 프로젝트 만들기

다음 단계에 따라 샘플 프로젝트를 만드십시오.

  1. 생성한 흐름에서 새로운 단계를 선택합니다.

    새 단계 추가하기.

  2. 작업 선택 대화 상자의 검색 필드에 바인딩되지 않은 작업 수행을 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.

    작업 선택.

  3. 새 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.

    단계 이름 바꾸기.

  4. 프로젝트 만들기 단계의 이름을 바꿉니다.

  5. 작업 이름 필드에서 msdyn_CreateProjectV1을 선택합니다.

  6. msdyn_subject 필드에서 동적 콘텐츠 추가를 선택합니다.

  7. 탭의 함수 필드에 concat('Project name - ',utcNow())를 입력합니다.

  8. 확인을 선택합니다.

3단계: 팀원을 위한 변수 초기화

  1. 흐름에서 새 단계를 선택합니다.
  2. 작업 선택 대화 상자의 검색 필드에 변수 초기화를 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.
  3. 새 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.
  4. 팀원 초기화 단계 이름을 바꿉니다.
  5. 이름필드에 TeamMemberAction을 입력합니다.
  6. 유형 필드에서 문자열을 선택합니다.
  7. 필드에서 msdyn_CreateTeamMemberV1을 입력합니다.

4단계: 일반 팀원 만들기

  1. 흐름에서 새 단계를 선택합니다.

  2. 작업 선택 대화 상자의 검색 필드에 바인딩되지 않은 작업 수행을 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.

  3. 새 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.

  4. 팀원 만들기 단계 이름을 바꿉니다.

  5. 작업 이름 필드의 동적 콘텐츠 대화 상자에서 TeamMemberAction을 선택합니다.

  6. 작업 매개 변수 필드에 다음 매개 변수 정보를 입력합니다.

    {
        "TeamMember": {
            "@@odata.type": "Microsoft.Dynamics.CRM.msdyn_projectteam",
            "msdyn_projectteamid": "@{guid()}",
            "msdyn_project@odata.bind": "/msdyn_projects(@{outputs('Create_Project')?['body/ProjectId']})",
            "msdyn_name": "ScheduleAPIDemoTM1"
        }
    } 
    

    다음은 매개 변수에 대한 설명입니다.

    • @@odata.type – 엔터티 이름입니다. 예를 들어 "Microsoft.Dynamics.CRM.msdyn_projectteam"을 입력합니다.
    • msdyn_projectteamid – 프로젝트 팀 ID의 기본 키입니다. 값은 GUID(Globally Unique Identifier) 식입니다. ID는 식 탭에서 생성됩니다.
    • msdyn_project@odata.bind – 담당 프로젝트의 프로젝트 ID입니다. 값은 "프로젝트 만들기" 단계의 응답에서 가져온 동적 콘텐츠입니다. 전체 경로를 입력했는지 확인하고 괄호 사이에 동적 콘텐츠를 추가합니다. 따옴표는 필수 항목입니다. 예를 들어 "/msdyn_projects(ADD DYNAMIC CONTENT)"를 입력합니다.
    • msdyn_name – 팀원의 이름입니다. 예를 들어 "ScheduleAPIDemoTM1"을 입력합니다.

5단계: 작업 집합 만들기

  1. 흐름에서 새 단계를 선택합니다.
  2. 작업 선택 대화 상자의 검색 필드에 바인딩되지 않은 작업 수행을 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.
  3. 새 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.
  4. 작업 집합 만들기 단계 이름을 바꿉니다.
  5. 작업 이름 필드에서 msdyn_CreateOperationSetV1 Dataverse 사용자 지정 작업을 선택합니다.
  6. 설명 필드에서 ScheduleAPIDemoOperationSet를 입력합니다.
  7. 프로젝트 필드의 동적 콘텐츠 대화 상자에서 msdyn_CreateProjectV1Response ProjectId를 선택합니다.

6단계: 프로젝트 버킷 ID에 대한 변수 초기화

  1. 흐름에서 새 단계를 선택합니다.
  2. 작업 선택 대화 상자의 검색 필드에 변수 초기화를 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.
  3. 새 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.
  4. 프로젝트 버킷 ID 초기화 단계 이름을 바꿉니다.
  5. 이름 필드에서 프로젝트 버킷 ID를 입력합니다.
  6. 유형 필드에서 문자열을 선택합니다.
  7. 필드에 @{guid()}를 입력합니다.

7단계: 프로젝트 버킷 만들기

  1. 흐름에서 작업 추가를 선택합니다.

  2. 작업 선택 대화 상자의 검색 필드에 바인딩되지 않은 작업 수행을 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.

  3. 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.

  4. 버킷 만들기 단계의 이름을 바꿉니다.

    1. 작업 이름 필드에서 msdyn_PssCreateV1을 선택합니다.
  5. 엔터티 필드에 다음 매개 변수 정보를 입력합니다.

    {
        "@@odata.type": "Microsoft.Dynamics.CRM.msdyn_projectbucket",
        "msdyn_projectbucketid": "@{variables('project bucket id')}",
        "msdyn_name": "ScheduleAPIDemoBucket1",
        "msdyn_project@odata.bind": "/msdyn_projects(@{outputs('Create_Project')?['body/ProjectId']})",
    }
    

    다음은 매개 변수에 대한 설명입니다.

    • @@odata.type – 엔터티 이름입니다. 예를 들어 "Microsoft.Dynamics.CRM.msdyn_projectbucket"을 입력합니다.
    • msdyn_projectbucketid – 프로젝트 버킷의 고유 ID입니다. 값은 6단계의 동적 변수에서 설정되어야 합니다.
    • msdyn_project@odata.bind – 담당 프로젝트의 프로젝트 ID입니다. 값은 "프로젝트 만들기" 단계의 응답에서 가져온 동적 콘텐츠입니다. 전체 경로를 입력했는지 확인하고 괄호 사이에 동적 콘텐츠를 추가합니다. 따옴표는 필수 항목입니다. 예를 들어 "/msdyn_projects(ADD DYNAMIC CONTENT)"를 입력합니다.
    • msdyn_name – 프로젝트 버킷 이름입니다.
  6. OperationSetId 필드의 경우 동적 콘텐츠 대화 상자에서 msdyn_CreateOperationSetV1Response OperationSetId를 선택합니다.

8단계: 작업 수를 위한 변수 초기화

  1. 흐름에서 새 단계를 선택합니다.
  2. 작업 선택 대화 상자의 검색 필드에 변수 초기화를 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.
  3. 새 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.
  4. 작업 수 초기화 단계 이름을 바꿉니다.
  5. 이름필드에 작업 수를 입력합니다.
  6. 유형 필드에서 정수를 선택합니다.
  7. 필드에 5을 입력합니다.

9단계: 프로젝트 작업 ID를 위한 변수 초기화

  1. 흐름에서 새 단계를 선택합니다.
  2. 작업 선택 대화 상자의 검색 필드에 변수 초기화를 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.
  3. 새 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.
  4. ProjectTaskID 초기화 단계 이름을 바꿉니다.
  5. 이름 필드에서 msdyn_projecttaskid를 입력합니다.
  6. 유형 필드에서 문자열을 선택합니다.
  7. 필드의 경우 식 작성기에 guid()를 입력합니다.

10단계: 기한

  1. 흐름에서 새 단계를 선택합니다.
  2. 작업 선택 대화 상자의 검색 필드에 기한을 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.
  3. 조건문의 첫 번째 값을 동적 콘텐츠 대화 상자의 작업 수 변수로 설정합니다.
  4. 조건을 보다 작거나 같음으로 설정합니다.
  5. 조건문의 두 번째 값을 0으로 설정합니다.

11단계: 프로젝트 작업 설정

  1. 흐름에서 작업 추가를 선택합니다.
  2. 작업 선택 대화 상자의 검색 필드에 변수 설정을 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.
  3. 새 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.
  4. 프로젝트 작업 설정 단계 이름을 바꿉니다.
  5. 이름 필드에서 msdyn_projecttaskid를 선택합니다.
  6. 필드의 경우 식 작성기에 guid()를 입력합니다.

12단계: 프로젝트 작업 만들기

다음 단계에 따라 현재 프로젝트 및 생성한 프로젝트 버킷에 속하는 고유 ID가 있는 프로젝트 작업을 생성합니다.

  1. 흐름에서 새 단계를 선택합니다.

  2. 작업 선택 대화 상자의 검색 필드에 바인딩되지 않은 작업 수행을 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.

  3. 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.

  4. 프로젝트 작업 만들기 단계 이름을 바꿉니다.

  5. 작업 이름 필드에서 msdyn_PssCreateV1을 선택합니다.

  6. 엔터티 필드에 다음 매개 변수 정보를 입력합니다.

    {
        "@@odata.type": "Microsoft.Dynamics.CRM.msdyn_projecttask",
        "msdyn_projecttaskid": "@{variables('msdyn_projecttaskid')}",
        "msdyn_project@odata.bind": "/msdyn_projects(@{outputs('Create_Project')?['body/ProjectId']})",
        "msdyn_subject": "ScheduleAPIDemoTask1",
        "msdyn_projectbucket@odata.bind": "/msdyn_projectbuckets(@{variables('project bucket id')})",
        "msdyn_start": "@{addDays(utcNow(), 1)}",
        "msdyn_scheduledstart": "@{utcNow()}",
        "msdyn_scheduledend": "@{addDays(utcNow(), 5)}"
    }
    

    다음은 매개 변수에 대한 설명입니다.

    • @@odata.type – 엔터티 이름입니다. 예를 들어 "Microsoft.Dynamics.CRM.msdyn_projecttask"을 입력합니다.
    • msdyn_projecttaskid – 작업의 고유 ID입니다. 값은 msdyn_projecttaskid에서 동적 변수로 설정해야 합니다.
    • msdyn_project@odata.bind – 담당 프로젝트의 프로젝트 ID입니다. 값은 "프로젝트 만들기" 단계의 응답에서 가져온 동적 콘텐츠입니다. 전체 경로를 입력했는지 확인하고 괄호 사이에 동적 콘텐츠를 추가합니다. 따옴표는 필수 항목입니다. 예를 들어 "/msdyn_projects(ADD DYNAMIC CONTENT)"를 입력합니다.
    • msdyn_subject – 모든 작업 이름입니다.
    • msdyn_projectbucket@odata.bind – 작업이 포함된 프로젝트 버킷입니다. 값은 "버킷 만들기" 단계에서 msdyn_projectbucketid를 설정하는 데 사용된 것과 동일합니다. 전체 경로를 입력했는지 확인하고 괄호 사이에 동적 콘텐츠를 추가합니다. 따옴표는 필수 항목입니다. 예를 들어 "/msdyn_projectbuckets(ADD DYNAMIC CONTENT)"를 입력합니다.
    • msdyn_start – 시작 날짜에 대한 동적 콘텐츠입니다. 예를 들어 내일은 "addDays(utcNow(), 1)"과 같이 표시됩니다.
    • msdyn_scheduledstart – 예정된 시작 날짜입니다. 예를 들어 내일은 "addDays(utcNow(), 1)"과 같이 표시됩니다.
    • msdyn_scheduleend – 예정된 종료 날짜입니다. 미래의 날짜를 선택합니다. 예를 들어 "addDays(utcNow(), 5)"를 지정합니다.
    • msdyn_LinkStatus – 링크 상태입니다. 예를 들어 "192350000"을 입력합니다.
  7. OperationSetId 필드의 경우 동적 콘텐츠 대화 상자에서 msdyn_CreateOperationSetV1Response OperationSetId를 선택합니다.

13단계: 리소스 할당 만들기

  1. 흐름에서 작업 추가를 선택합니다.

  2. 작업 선택 대화 상자의 검색 필드에 바인딩되지 않은 작업 수행을 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.

  3. 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.

  4. 할당 만들기 단계의 이름을 바꿉니다.

  5. 작업 이름 필드에서 msdyn_PssCreateV1을 선택합니다.

  6. 엔터티 필드에 다음 매개 변수 정보를 입력합니다.

    {
        "@@odata.type": "Microsoft.Dynamics.CRM.msdyn_resourceassignment",
        "msdyn_resourceassignmentid": "@{guid()}",
        "msdyn_name": "ScheduleAPIDemoAssign1",
        "msdyn_taskid@odata.bind": "/msdyn_projecttasks(@{variables('msdyn_projecttaskid')})",
        "msdyn_projectteamid@odata.bind": "/msdyn_projectteams(@{outputs('Create_Team_Member')?['body/TeamMemberId']})",
        "msdyn_projectid@odata.bind": "/msdyn_projects(@{outputs('Create_Project')?['body/ProjectId']})"
    }
    
  7. OperationSetId 필드의 경우 동적 콘텐츠 대화 상자에서 msdyn_CreateOperationSetV1Response OperationSetId를 선택합니다.

14단계: 변수 감소

  1. 흐름에서 새 단계를 선택합니다.
  2. 작업 선택 대화 상자의 검색 필드에 변수 감소를 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.
  3. 이름필드에 작업 수를 선택합니다.
  4. 필드에 1을 입력합니다.

15단계: 프로젝트 작업 이름 바꾸기

  1. 흐름에서 새 단계를 선택합니다.

  2. 작업 선택 대화 상자의 검색 필드에 바인딩되지 않은 작업 수행을 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.

  3. 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.

  4. 프로젝트 작업 이름 바꾸기 단계 이름을 바꿉니다.

  5. 작업 이름 필드에서 msdyn_PssUpdateV1을 선택합니다.

  6. 엔터티 필드에 다음 매개 변수 정보를 입력합니다.

    {
        "@@odata.type": "Microsoft.Dynamics.CRM.msdyn_projecttask",
        "msdyn_projecttaskid": "@{variables('msdyn_projecttaskid')}",
        "msdyn_subject": "ScheduleDemoTask1-UpdatedName"
    }
    
  7. OperationSetId 필드의 경우 동적 콘텐츠 대화 상자에서 msdyn_CreateOperationSetV1Response OperationSetId를 선택합니다.

16단계: 작업 집합 실행

  1. 흐름에서 새 단계를 선택합니다.
  2. 작업 선택 대화 상자의 검색 필드에 바인딩되지 않은 작업 수행을 입력합니다. 그런 다음 작업 탭의 결과 목록에서 작업을 선택합니다.
  3. 단계에서 줄임표()를 선택한 다음 이름 바꾸기를 선택합니다.
  4. 작업 집합 실행 단계 이름을 바꿉니다.
  5. 작업 이름 필드에서 msdyn_ExecuteOperationSetV1을 선택합니다.
  6. OperationSetId 필드의 경우 동적 콘텐츠 대화 상자에서 msdyn_CreateOperationSetV1Response OperationSetId를 선택합니다.

참조