แชร์ผ่าน


ใช้ API กำหนดการโครงการ V2 กับ Power Automate

นำไปใช้กับ: Project Operations สำหรับสถานการณ์ตามทรัพยากร/ไม่ได้เก็บในคลัง การปรับใช้ Lite - จัดการกับการออกใบแจ้งหนี้ชั่วคราว

บทความนี้อธิบายโฟลว์ตัวอย่างที่แสดงวิธีสร้างแผนโครงการที่สมบูรณ์โดยใช้ Microsoft Power Automate วิธีสร้างชุดการดำเนินงาน และวิธีการปรับปรุงเอนทิตี ตัวอย่างนี้แสดงวิธีการสร้างโครงการ สมาชิกทีมโครงการ ชุดปการดำเนินงาน งานโครงการ และการมอบหมายทรัพยากร บทความนี้ยังอธิบายวิธีปรับปรุงเอนทิตีและเรียกใช้ชุดการดำเนินงาน

ตัวอย่างในบทความนี้ใช้ PssCreateV2 API สำหรับตัวอย่างที่ใช้ PssCreateV1 API โปรดดู ใช้ API กำหนดการโครงการ V1 กับ Power Automate

ต่อไปนี้คือรายการขั้นตอนทั้งหมดที่บันทึกไว้ในโฟลว์ตัวอย่างในบทความนี้:

  1. สร้างทริกเกอร์ PowerApps
  2. สร้างโครงการ
  3. เริ่มต้นตัวแปรสำหรับสมาชิกทีม
  4. สร้างสมาชิกทีมทั่วไป
  5. สร้างชุดการดำเนินงาน
  6. สร้างบักเก็ตโครงการ
  7. เริ่มต้นตัวแปรสำหรับจำนวนของงาน
  8. เริ่มต้นตัวแปรสำหรับรหัสงานโครงการ
  9. เริ่มต้นอาร์เรย์
  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: สร้างทริกเกอร์ PowerApps

  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 – คีย์หลักของรหัสทีมโครงการ ค่านี้เป็นนิพจน์รหัสเฉพาะสากล (GUID) รหัสดังกล่าวสร้างขึ้นจากแท็บ นิพจน์
    • msdyn_project@odata.bind – รหัสโครงการของโครงการที่เป็นเจ้าของ ค่านี้เป็นเนื้อหาแบบไดนามิกที่มาจากการตอบสนองของขั้นตอน "สร้างโครงการ" ตรวจสอบให้แน่ใจว่าคุณป้อนพาธแบบเต็มและเพิ่มเนื้อหาแบบไดนามิกระหว่างวงเล็บ ต้องมีเครื่องหมายอัญประกาศ ตัวอย่างเช่น ป้อน "/msdyn_projects(ADD DYNAMIC CONTENT)"
    • msdyn_name – ชื่อของสมาชิกทีม ตัวอย่างเช่น ป้อน "ScheduleAPIDemoTM1"

ขั้นตอนที่ 5: สร้างชุดการดำเนินงาน

  1. ในโฟลว์ ให้เลือก ขั้นตอนใหม่
  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน การดําเนินการที่ไม่ถูกผูก จากนั้นบนแท็บ การดำเนินการ เลือกการดำเนินการในรายการผลลัพธ์
  3. ในขั้นตอนใหม่ ให้เลือกจุดไข่ปลา () แล้วเลือก เปลี่ยนชื่อ
  4. เปลี่ยนชื่อขั้นตอน สร้างชุดการดำเนินงาน
  5. ในฟิลด์ ชื่อการดำเนินกา ให้เลือก msdyn_CreateOperationSetV1 ของการดำเนินการที่กำหนดเองของ Dataverse
  6. ในฟิลด์ คำอธิบาย ให้ป้อน ScheduleAPIDemoOperationSet
  7. สำหรับฟิลด์ โครงการ ให้เลือก msdyn_CreateProjectV1Response ProjectId ในกล่องโต้ตอบ เนื้อหาแบบไดนามิก

ขั้นตอนที่ 6: สร้างบักเก็ตโครงการ

  1. ในโฟลว์ ให้เลือก ขั้นตอนใหม่
  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน เพิ่มแถวใหม่ จากนั้นบนแท็บ การดำเนินการ เลือกการดำเนินการในรายการผลลัพธ์
  3. ในขั้นตอนใหม่ ให้เลือกจุดไข่ปลา () แล้วเลือก เปลี่ยนชื่อ
  4. เปลี่ยนชื่อขั้นตอน สร้างบักเก็ต
  5. ในฟิลด์ ชื่อตาราง ให้เลือก บักเก็ตโครงการ
  6. ในฟิลด์ ชื่อ ป้อน ScheduleAPIDemoBucket1
  7. ในฟิลด์ โครงการ ให้ป้อน /msdyn_projects(
  8. ในกล่องโต้ตอบ เนื้อหาแบบไดนามิก ให้เลือก msdyn_CreateProjectV1Response ProjectId
  9. ในฟิลด์ โครงการ ให้ป้อน )

ขั้นตอนที่ 7: เริ่มต้นตัวแปรสำหรับจำนวนของงาน

  1. ในโฟลว์ ให้เลือก ขั้นตอนใหม่
  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน เริ่มต้นตัวแปร จากนั้นบนแท็บ การดำเนินการ เลือกการดำเนินการในรายการผลลัพธ์
  3. ในขั้นตอนใหม่ ให้เลือกจุดไข่ปลา () แล้วเลือก เปลี่ยนชื่อ
  4. เปลี่ยนชื่อขั้นตอน เริ่มต้นจำนวนของงาน
  5. ในฟิลด์ ชื่อ ให้ป้อน จำนวนของงาน
  6. ในฟิลด์ ชนิด เลือก จำนวนเต็ม
  7. ในฟิลด์ ค่า ให้ป้อน 5

ขั้นตอนที่ 8: เริ่มต้นตัวแปรสำหรับรหัสงานโครงการ

  1. ในโฟลว์ ให้เลือก ขั้นตอนใหม่
  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน เริ่มต้นตัวแปร จากนั้นบนแท็บ การดำเนินการ เลือกการดำเนินการในรายการผลลัพธ์
  3. ในขั้นตอนใหม่ ให้เลือกจุดไข่ปลา () แล้วเลือก เปลี่ยนชื่อ
  4. เปลี่ยนชื่อขั้นตอน เริ่มต้น ProjectTaskID
  5. ในฟิลด์ ชื่อ ป้อน msdyn_projecttaskid
  6. ในฟิลด์ ชนิด เลือก สตริง
  7. สำหรับฟิลด์ ค่า ให้ป้อน guid() ในตัวสร้างนิพจน์

ขั้นตอนที่ 9: เริ่มต้นอาร์เรย์

  1. ในโฟลว์ ให้เลือก ขั้นตอนใหม่
  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน เริ่มต้นตัวแปร จากนั้นบนแท็บ การดำเนินการ เลือกการดำเนินการในรายการผลลัพธ์
  3. ในขั้นตอนใหม่ ให้เลือกจุดไข่ปลา () แล้วเลือก เปลี่ยนชื่อ
  4. เปลี่ยนชื่อขั้นตอน เริ่มต้นอาร์เรย์
  5. ในฟิลด์ ชื่อ ป้อน งานและการมอบหมาย
  6. ในฟิลด์ ชนิด เลือก อาร์เรย์

ขั้นตอนที่ 10: ทำจนถึง

  1. ในโฟลว์ ให้เลือก ขั้นตอนใหม่
  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน ทำจนถึง จากนั้นบนแท็บ การดำเนินการ เลือกการดำเนินการในรายการผลลัพธ์
  3. ตั้งค่าแรกในคำสั่งเงื่อนไขเป็นตัวแปร จำนวนของงาน จากกล่องโต้ตอบ เนื้อหาแบบไดนามิก
  4. ตั้งค่าเงื่อนไขเป็น น้อยกว่าหรือเท่ากับ
  5. ตั้งค่าที่สองในคำสั่งเงื่อนไขเป็น 0

ขั้นตอนที่ 11: ตั้งค่างานโครงการ

  1. ในโฟลว์ เลือก เพิ่มการดำเนินการ
  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน ตั้งค่าตัวแปร จากนั้นบนแท็บ การดำเนินการ เลือกการดำเนินการในรายการผลลัพธ์
  3. ในขั้นตอนใหม่ ให้เลือกจุดไข่ปลา () แล้วเลือก เปลี่ยนชื่อ
  4. เปลี่ยนชื่อขั้นตอน ตั้งค่างานโครงการ
  5. ในฟิลด์ ชื่อ ให้เลือก msdyn_projecttaskid
  6. สำหรับฟิลด์ ค่า ให้ป้อน guid() ในตัวสร้างนิพจน์

ขั้นตอนที่ 12: เพิ่มงานลงในอาร์เรย์

  1. ในโฟลว์ เลือก เพิ่มการดำเนินการ

  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน ผนวกกับอาร์เรย์

  3. ในขั้นตอน ให้เลือกจุดไข่ปลา () แล้วเลือก เปลี่ยนชื่อ

  4. เปลี่ยนชื่อขั้นตอน เพิ่มงานลงในอาร์เรย์

  5. ในฟิลด์ ชื่อ เลือก งานและการมอบหมาย

  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(@{outputs('Create_Bucket')?['body/msdyn_projectbucketid']})",
        "msdyn_start": "@{addDays(utcNow(), 1)}",
        "msdyn_scheduledstart": "@{utcNow()}",
        "msdyn_scheduledend": "@{addDays(utcNow(), 5)}",
        "msdyn_LinkStatus": "192350000"
    }
    

    ต่อไปนี้เป็นคำอธิบายของพารามิเตอร์:

    • @@odata.type – ชื่อเอนทิตี ตัวอย่างเช่น ให้ป้อน "Microsoft.Dynamics.CRM.msdyn_projecttask"
    • msdyn_projecttaskid – รหัสเฉพาะของงาน ค่าควรมีการตั้งค่าเป็นตัวแปรแบบไดนามิกจาก msdyn_projecttaskid
    • msdyn_project@odata.bind – รหัสโครงการของโครงการที่เป็นเจ้าของ ค่านี้เป็นเนื้อหาแบบไดนามิกที่มาจากการตอบสนองของขั้นตอน "สร้างโครงการ" ตรวจสอบให้แน่ใจว่าคุณป้อนพาธแบบเต็มและเพิ่มเนื้อหาแบบไดนามิกระหว่างวงเล็บ ต้องมีเครื่องหมายอัญประกาศ ตัวอย่างเช่น ป้อน "/msdyn_projects(ADD DYNAMIC CONTENT)"
    • msdyn_subject – ชื่องานใดๆ
    • msdyn_projectbucket@odata.bind – บักเก็ตโครงการที่มีงานต่างๆ ค่านี้เป็นเนื้อหาแบบไดนามิกที่มาจากการตอบสนองของขั้นตอน "สร้างบักเก็ต" ตรวจสอบให้แน่ใจว่าคุณป้อนพาธแบบเต็มและเพิ่มเนื้อหาแบบไดนามิกระหว่างวงเล็บ ต้องมีเครื่องหมายอัญประกาศ ตัวอย่างเช่น ป้อน "/msdyn_projectbuckets(ADD DYNAMIC CONTENT)"
    • msdyn_start – เนื้อหาแบบไดนามิกสำหรับวันที่เริ่มต้น ตัวอย่างเช่น วันพรุ่งนี้แสดงเป็น "addDays(utcNow(), 1)"
    • msdyn_scheduledstart – วันที่เริ่มต้นตามกำหนดการ ตัวอย่างเช่น วันพรุ่งนี้แสดงเป็น "addDays(utcNow(), 1)"
    • msdyn_scheduleend – วันที่สิ้นสุดตามกำหนดการ เลือกวันที่ในอนาคต ตัวอย่างเช่น ให้ระบุ "addDays(utcNow(), 5)"
    • msdyn_LinkStatus – ลิงก์ไปยังการตั้งค่าการเรียกเก็บเงิน ตัวอย่างเช่น ป้อน "192350000" หากไม่มีลิงก์ไปยังการตั้งค่าการเรียกเก็บเงิน หรือ "192350001" หากมีการเชื่อมโยงการตั้งค่าการเรียกเก็บเงิน

ขั้นตอนที่ 13: สร้างการมอบหมายทรัพยากร

  1. ในโฟลว์ เลือก เพิ่มการดำเนินการ

  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน ผนวกกับอาร์เรย์

  3. ในขั้นตอน ให้เลือกจุดไข่ปลา () แล้วเลือก เปลี่ยนชื่อ

  4. เปลี่ยนชื่อขั้นตอน เพิ่มการมอบหมายลงในอาร์เรย์

  5. ในฟิลด์ ชื่อ เลือก งานและการมอบหมาย

  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']})"
    }
    

ขั้นตอนที่ 14: ลดตัวแปร

  1. ในโฟลว์ เลือก เพิ่มการดำเนินการ
  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน ลดตัวแปร จากนั้นบนแท็บ การดำเนินการ เลือกการดำเนินการในรายการผลลัพธ์
  3. ในฟิลด์ ชื่อ ให้เลือก จำนวนของงาน
  4. ในฟิลด์ ค่า ให้ป้อน 1

ขั้นตอนที่ 15: เพิ่มงานและการมอบหมายให้กับชุดการดำเนินงาน

  1. ในโฟลว์ ให้เลือก ขั้นตอนใหม่
  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน การดําเนินการที่ไม่ถูกผูก จากนั้นบนแท็บ การดำเนินการ เลือกการดำเนินการในรายการผลลัพธ์
  3. ในขั้นตอน ให้เลือกจุดไข่ปลา () แล้วเลือก เปลี่ยนชื่อ
  4. เปลี่ยนชื่อขั้นตอน เพิ่มงานและการมอบหมายให้กับชุดการดำเนินงาน
  5. ในฟิลด์ ชื่อการดำเนินการ ให้เลือก msdyn_PssCreateV2
  6. สำหรับฟิลด์ OperationSetId ให้เลือก msdyn_CreateOperationSetV1Response OperationSetId ในกล่องโต้ตอบ เนื้อหาแบบไดนามิก
  7. ในฟิลด์ EntityCollection เลือก สลับอินพุตเป็นอาร์เรย์ทั้งหมด
  8. สำหรับฟิลด์ EntityCollection ให้เลือก งานและการมอบหมายงาน ในกล่องโต้ตอบ เนื้อหาแบบไดนามิก

ขั้นตอนที่ 16: เรียกใช้ชุดการดำเนินงาน

  1. ในโฟลว์ ให้เลือก ขั้นตอนใหม่
  2. ในกล่องโต้ตอบ เลือกการดำเนินการ ในฟิลด์ค้นหา ให้ป้อน การดําเนินการที่ไม่ถูกผูก จากนั้นบนแท็บ การดำเนินการ เลือกการดำเนินการในรายการผลลัพธ์
  3. ในขั้นตอน ให้เลือกจุดไข่ปลา () แล้วเลือก เปลี่ยนชื่อ
  4. เปลี่ยนชื่อขั้นตอน ประมวลผลชุดการดำเนินงาน
  5. ในฟิลด์ ชื่อการดำเนินการ ให้เลือก msdyn_ExecuteOperationSetV1
  6. สำหรับฟิลด์ OperationSetId ให้เลือก msdyn_CreateOperationSetV1Response OperationSetId ในกล่องโต้ตอบ เนื้อหาแบบไดนามิก

การอ้างอิง