แชร์ผ่าน


ประมวลผลคิวงาน

การประมวลผลคิวงานหมายถึงการจัดการรายการงานที่ต้องทำให้เสร็จในคำสั่งเฉพาะ รายการนี้มีข้อมูลเกี่ยวกับแต่ละรายการ เช่น ชื่อ ลำดับความสำคัญ วันหมดอายุ สถานะ และค่าจริงที่ต้องดำเนินการ

วิธีการประมวลผลคิวงาน:

เรียนรู้เพิ่มเติมเกี่ยวกับเครื่องมือโปรโค้ดของ Dataverse: คู่มือนักพัฒนา Dataverse

คำแนะนำในการประมวลผล

หากต้องการแสดงตัวเลือกการประมวลผลที่มีอยู่บางส่วน ต่อไปนี้เป็นสถานการณ์การประมวลผลที่แตกต่างกันสามแบบ

การประมวลผลคิวงานตามโฟลว์เดสก์ท็อปใน Power Automate Desktop (PAD)

ตัวอย่างการประมวลผลรายการคิวงานและอัปเดต

ขั้นตอนแรกในการใช้การดำเนินการคิวงานใน Power Automate Desktop คือการสร้างคิวงานในสภาพแวดล้อมที่คุณกำลังทำงานอยู่ และโหลดรายการคิวบางรายการที่มีข้อมูลที่จะใช้ดาวน์สตรีม สามารถโหลดรายการคิวลงในคิวงานผ่านโฟลว์เดสก์ท็อป โฟลว์ระบบคลาวด์หรือแบบจำนวนมากตามที่ระบุไว้ ที่นี่ ซึ่งเติมรายการคิว ในตัวอย่างนี้ มีการเพิ่มคิวบางรายการด้วยตนเองในคิวงานเพื่ออธิบายวิธีการใช้การดำเนินการใน Power Automate Desktop

สร้างรายการคิวงานแล้วและฟิลด์ค่ามีข้อความในรูปแบบ JSON ที่จะใช้ดาวน์สตรีมในโฟลว์เดสก์ท็อป

ภาพหน้าจอของรายการคิวงานที่สามารถดำเนินการใน Power Automate Desktop

โฟลว์ตัวอย่างที่เราจะใช้เพื่อสาธิตการใช้การดำเนินการคิวงานจะเลียนแบบกระบวนการที่จะใช้รายการคิวงานจากระบบคลาวด์ ประมวลผลข้อมูลที่รวมอยู่ในฟิลด์ค่า และแปลงเป็นออบเจ็กต์ที่กำหนดเองเพื่อประมวลผลดาวน์สตรีม โปรดทราบว่าไม่จำเป็นต้องใช้ JSON หรือออบเจ็กต์ที่กำหนดเองเป็นค่าสำหรับรายการคิวงานของคุณ แต่อาจเป็นวิธีที่มีประโยชน์สำหรับการจัดระเบียบค่าที่มีคุณสมบัติหลายอย่างและเป็นไปตามสคีมาเฉพาะ

ภาพหน้าจอของกระบวนการโฟลว์เดสก์ท็อปที่ใช้สำหรับบทช่วยสอนนี้

  1. การดำเนินการ ประมวลผลรายการคิวงาน ใช้เพื่อกำหนดคิวงานที่จะใช้รายการจากและดำเนินการในโฟลว์เดสก์ท็อปของคุณ สามารถกำหนดค่าการดำเนินการเพื่อเลือกคิวงานจากรายการโดยใช้ลูกศรดรอปดาวน์ ส่งผ่านตัวแปรรวมถึงชื่อคิว เมื่อเรียกใช้ การดำเนินการนี้ทำงานโดยนำรายการแรก (เก่าที่สุด) จากคิวงานเข้าสู่โฟลว์ที่มีสถานะเป็น อยู่ในคิว เมื่อรายการคิวเริ่มประมวลผลในโฟลว์ของคุณ สถานะจะเปลี่ยนเป็น กำลังประมวลผล โดยอัตโนมัติ

    ภาพหน้าจอของการดำเนินการ WorkQueueItem ที่กำหนดค่าให้ประมวลผลรายการคิวใน Power Automate Desktop

    ภาพหน้าจอของรายการคิวงานในสถานะ **กำลังประมวลผล**

  2. จุดสั่งหยุด (จุดสีแดง) ถูกตั้งค่าโดยคลิกถัดจากการดำเนินการ 3 ในโฟลว์ แล้วเรียกใช้ผ่านคอนโซล PAD เมื่อกระบวนการหยุดชั่วคราวที่จุดสั่งหยุด ตัวแปร WorkQueueItem สามารถเปิดได้โดยดับเบิลคลิกค่าที่เติมภายใต้ ตัวแปรโฟลว์ และเป็นการแสดงคุณสมบัติทั้งหมดที่เกี่ยวข้องกับรายการคิวงานที่กำลังดำเนินการ

    ภาพหน้าจอของตัวแปร WorkQueueItem ในตัวแสดงตัวแปร

  3. ในการดำเนินการ 2 ของโฟลว์ ฉันได้แปลงค่า JSON ที่ส่งคืน ซึ่งในกรณีนี้สามารถเข้าถึงได้ผ่าน %WorkQueueItem.Value% เป็นออบเจ็กต์ที่กำหนดเอง เหตุผลสำหรับกรณีนี้เป็นเพราะช่วยแยกวิเคราะห์ JSON และใช้คุณสมบัติ JSON ดาวน์สตรีมในโฟลว์ของคุณ ในกรณีสมมุตินี้ ข้อมูลจะถูกใช้เพื่อเข้าสู่พอร์ทัลการเงินของ Farbrikam

    {
     "InvoiceId": "I-1006",
     "InvoiceDate": "06/04/2023",
     "AccountName": "Fabrikam",
     "ContactEmail": "invoicing@fabrikam.com",
     "Amount": 1253.78,
     "Status": "Paid",
     "WorkQueueKey": "Vendor Invoices",
     "ComponentState": 0,
     "OverwriteTime": "1900-01-01T00:00:00"
    }
    

    ภาพหน้าจอของค่า JSON ที่แปลงเป็นออบเจ็กต์ที่กำหนดเอง

    ตัวอย่างเช่น สมมติว่ามีข้อกำหนดในการป้อนรหัสใบแจ้งหนี้ลงในฟิลด์ของระบบการเงิน ซึ่งเป็นส่วนหนึ่งของกระบวนการที่คุณทำให้ UI ของเว็บหรือแอปบนเดสก์ท็อปเป็นแบบอัตโนมัติ คุณสามารถเรียกค่านั้นโดยใช้ %JsonAsCustomObject.InvoiceId% เพื่อเติมข้อมูลฟิลด์ข้อความและกดปุ่ม

  4. ต่อไป ตัวอย่างนี้มีข้อความแสดงเงื่อนไขบางอย่างเมื่อเสร็จสิ้นการประมวลผลขั้นตอนและใช้ข้อมูลจากออบเจ็กต์ที่กำหนดเองภายในโฟลว์ย่อยการป้อนข้อมูล Fabrikam หากกระบวนการทำงานแบบครบวงจรโดยไม่พบข้อยกเว้นที่เกี่ยวข้องกับระบบอินพุตใดๆ การดำเนินการ อัปเดตรายการคิวงาน จะถูกใช้เพื่อเปลี่ยนสถานะของรายการคิวงานเป็น ประมวลผลแล้ว และฟิลด์ ผลการประมวลผล สามารถใช้เพื่อป้อนบันทึกย่อเพิ่มเติมได้ ถ้าฟิลด์ หมดอายุ ถูกเว้นว่างไว้ รายการคิวใหม่จะรักษาค่า รายการหมดอายุหลังจาก ที่กำหนดไว้ในคุณสมบัติของคิวงาน

    ภาพหน้าจอตัวอย่างของอินพุตการดำเนินการอัปเดตรายการคิวงาน

    ตัวเลือกการจัดการข้อยกเว้นสามารถกำหนดค่าได้โดยคลิก เมื่อเกิดข้อผิดพลาด ในหน้าต่างการกำหนดค่าการดำเนินการ อัปเดตรายการคิวงาน มีตัวเลือกสามตัวเลือกสำหรับการปรับแต่งภายใต้แท็บขั้นสูง ไม่พบรายการคิวงาน อาจเกิดขึ้นได้หากรายการคิวงานถูกลบออกจากคิว ไม่ว่าจะด้วยตนเองหรือผ่านกระบวนการอื่นที่เป็นของระบบก่อนที่จะเสร็จสิ้นการประมวลผลใน PAD รายการคิวงานถูกระงับ อาจเกิดขึ้นได้หากกระบวนการอัตโนมัติ หรือมีคนเปลี่ยนสถานะของรายการคิวงานที่กำลังประมวลผลเป็น ถูกระงับ ในพอร์ทัลโฟลว์ขณะที่กำลังประมวลผลรายการคิว การอัปเดตรายการคิวงานล้มเหลว อาจเกิดขึ้นได้หากรายการคิวไม่มีอยู่ในคิวอีกต่อไป หรืออยู่ในสถานะ ถูกระงับ ทั้งหมดข้างต้นเป็นกรณีเอดจ์ที่อาจเกิดขึ้น - เรียนรู้เพิ่มเติมเกี่ยวกับการจัดการข้อผิดพลาดในโฟลว์เดสก์ท็อปที่นี่

    ภาพหน้าจอตัวอย่างของการจัดการข้อยกเว้นของการดำเนินการอัปเดตรายการคิวงาน

  5. หากมีการกำหนดปัญหาบางอย่างในระหว่างการประมวลผลข้อมูลของรายการคิวงานลงในระบบการป้อนข้อมูล รายการนั้นอาจถูกกำหนดสถานะเป็น ข้อยกเว้นทั่วไป ข้อยกเว้นด้านไอที หรือข้อยกเว้นทางธุรกิจ สถานะข้อยกเว้นเหล่านี้สามารถใช้งานเมื่อหรือหากกรณีการใช้งานอัตโนมัติของคุณตรงตามเกณฑ์ที่อาจนำไปใช้

    ตัวอย่างภาพหน้าจอของคำสั่งเงื่อนไขที่ใช้เพื่ออัปเดตรายการคิวงานปัจจุบันในโฟลว์เดสก์ท็อป และเพิ่มรายการคิวใหม่ลงในคิวสำรองเพื่อจัดการข้อยกเว้น

    สมมติว่าในขณะที่ประมวลผลรายการคิว สถานการณ์ที่ 2 เกิดขึ้น ในกรณีนี้ รายการคิวจะถูกทำเครื่องหมายเป็นข้อยกเว้นทั่วไปในคิวต้นทาง ขึ้นอยู่กับสถานการณ์ คุณอาจตัดสินใจเปลี่ยนสถานะของรายการคิวซึ่งไม่สามารถดำเนินการได้สำเร็จเป็นหนึ่งในตัวเลือกสถานะทางเลือก จากที่นั่น คุณสามารถตัดสินใจได้ว่าจำเป็นต้องมีการแทรกแซงจากมนุษย์ หรือสร้างกระบวนการที่ตามมาด้วยตรรกะที่จำเป็นในการจัดการสถานะข้อยกเว้นแต่ละรายการ

    ภาพหน้าจอตัวอย่างของสถานะที่อัปเดตสำหรับรายการคิวงานที่ประมวลผลในพอร์ทัลโฟลว์

รูปแบบการลองใหม่อัตโนมัติ

การดำเนินการ ประมวลผลรายการคิวงาน ใน Power Automate Desktop มีตัวเลือกขั้นสูงในการกำหนดค่าหรือแทนที่กลไกการลองใหม่อัตโนมัติ คุณลักษณะนี้ช่วยให้คุณสามารถระบุจำนวนการลองใหม่อัตโนมัติสูงสุดต่อรายการคิวงาน ซึ่งมีประโยชน์สำหรับการจัดการข้อยกเว้นด้านไอที เช่น ข้อผิดพลาดของเครือข่ายชั่วคราวหรือความไม่พร้อมใช้งานของระบบชั่วคราว ช่วยให้เครื่องสามารถเก็บรายการและดำเนินการลองใหม่แบบควบคุมได้โดยไม่ต้องจัดคิวรายการ เพื่อให้มั่นใจว่าการประมวลผลคิวงานมีประสิทธิภาพและยืดหยุ่นมากขึ้น

คุณสามารถตั้งค่าและควบคุมจำนวนการลองใหม่สูงสุดในเรกคอร์ดคิวงานใน Dataverse ได้จากส่วนกลาง ค่าเริ่มต้นนี้ใช้กับโฟลว์เดสก์ท็อปทั้งหมดที่ประมวลผลคิวงานนี้ผ่านการดำเนินการ ประมวลผลรายการคิวงาน

หากต้องการแทนที่ค่าเริ่มต้นของระดับคิวในโฟลว์ของคุณ ให้ไปที่ส่วน ขั้นสูง ของการดำเนินการ ประมวลผลรายการคิวงาน และสลับตัวเลือก แทนที่การกำหนดค่าการลองใหม่อัตโนมัติของคิวงาน การตั้งค่านี้ให้คุณปรับจำนวนการลองใหม่สูงสุดเป็นค่าที่สูงขึ้นหรือต่ำลง หรือแม้แต่ปิดใช้งานกลไกการลองใหม่โดยตั้งค่าจำนวนการลองใหม่สูงสุดเป็น 0

เมื่อคุณใช้การดำเนินการ อัปเดตรายการคิวงาน ที่มีการตั้งค่าสถานะเป็น IT exception และจำนวนการลองใหม่อัตโนมัติสูงสุดมากกว่า 0 ระบบจะไม่ส่งการอัปเดตไปยังตัวประสานคิวงานในทันที แต่จะลองดำเนินการใหม่จนกว่าจะถึงจำนวนการลองใหม่สูงสุดที่ระบุ ค่าเดียวที่อัปเดตในรายการคิวงานคือ retrycount ค่านี้จะเพิ่มขึ้นจากการพยายามอัปเดตครั้งที่สองเป็นต้นไปจนกว่าจะถึงจำนวนการลองใหม่อัตโนมัติสูงสุด นอกจากนี้ ตัวแปรรายการคิวงานภายในเครื่องที่เรียกว่า CurrentRetryCount จะเพิ่มขึ้นในการลองใหม่แต่ละครั้ง ตัวแปรนี้ช่วยให้คุณสามารถใช้ตรรกะที่กำหนดเองตามค่าได้หากจำเป็น

ภาพหน้าจอของการดำเนินการ WorkQueueItem ที่กำหนดค่าให้ประมวลผลรายการคิวที่มีการตั้งค่าจำนวนการลองใหม่สูงสุดล่วงหน้าในเดสก์ท็อป Power Automate

โฟลว์จะไม่ร้องขอรายการใหม่เมื่อวนกลับไปที่ด้านบนสุดของการดำเนินการ ประมวลผลรายการคิวงาน หากตรงตามเงื่อนไขต่อไปนี้:

  • ไม่ถึงจำนวนการลองใหม่สูงสุด
  • ไม่มีการอัปเดตอื่นๆ เกิดขึ้นยกเว้นข้อยกเว้นด้านไอที

เมื่อถึงจำนวนการลองใหม่สูงสุด การดำเนินการอัปเดตจะส่งการอัปเดตไปยังตัวประสานรวม ทำให้มีการเปลี่ยนสถานะของรายการเป็นข้อยกเว้นด้านไอทีและรวมถึงบันทึกการประมวลผลที่ให้ไว้

การเพิ่มและจัดคิวรายการคิวงานตัวอย่างจาก PAD

เพิ่มรายการคิวงาน ช่วยผู้ใช้โฟลว์เดสก์ท็อปเติมข้อมูลรายการคิวงานลงในคิวงานซึ่งได้รับการตั้งค่าในพอร์ทัลโฟลว์ การสร้างรายการชุดงานได้รับการสนับสนุนโดยใช้การดำเนินการ เพิ่มรายการคิวงาน

ในตัวอย่างนี้ ไฟล์ Excel ในรูปแบบ .csv ถูกวางลงในไดเรกทอรีทุกวัน และจำเป็นต้องเพิ่มแต่ละแถวลงในคิวงาน

ภาพหน้าจอตัวอย่างของกระบวนการที่รวมการดำเนินการเพิ่มรายการคิวงาน

การดำเนินการสองสามอย่างแรกในกระบวนการตัวอย่างนี้จะแมปโฟลเดอร์ที่วางไฟล์ Contoso Invoices.csv รายวัน เมื่อกระบวนการทำงาน จะเริ่มต้นด้วยการอ่านตารางข้อมูลจากไฟล์ CSV ตัวแปร CSVTable มีข้อมูลที่ถูกนำเข้าและจะถูกประมวลผลไปยังรายการคิวใหม่

ภาพหน้าจอตัวอย่างของข้อมูลที่นำเข้าจากไฟล์ CSV

การดำเนินการ 3 และ 4 สร้างเวลาที่เราเลือกรายการคิวใหม่ที่จะหมดอายุหลังจากเพิ่มลงในคิวงาน การดำเนินการ 3 บันทึกข้อมูลระบบปัจจุบันและเวลา จากนั้นสำหรับตัวอย่างนี้ มีการเพิ่ม 7 วันเข้าไปโดยใช้การดำเนินการ %เพิ่มไปยังวันที่เวลา% เอาต์พุตจะถูกเก็บไว้ในตัวแปรที่เรียกว่า ExpiryDatetime ซึ่งจะนำไปใช้ในการดำเนินการ เพิ่มรายการคิวงาน

ภาพหน้าจอตัวอย่างสำหรับการเพิ่มวันที่เวลาปัจจุบันเพื่อกำหนดวันที่เวลาหมดอายุ

การดำเนินการ 5 แนะนำลูป สำหรับแต่ละ ที่ใช้ในการวนซ้ำผ่านแต่ละแถวของข้อมูล ตาราง CSV ที่นำเข้า - การดำเนินการนี้แสดงแถวข้อมูลสำหรับรายการปัจจุบันที่กำลังดำเนินการ

ภาพหน้าจอตัวอย่างแถวข้อมูลที่สร้างขึ้นสำหรับแต่ละลูป

การดำเนินการก่อนหน้านี้ทั้งหมดในโฟลว์เดสก์ท็อปตัวอย่างนี้รวมเข้ากับการตั้งค่าสำหรับการดำเนินการ เพิ่มรายการคิวงาน

ภาพหน้าจอตัวอย่างของการดำเนินการเพิ่มรายการคิวงานที่กำหนดค่าในโฟลว์เดสก์ท็อป

พารามิเตอร์ คิวงาน ถูกตั้งค่าเป็นคิวที่เราต้องการเพิ่มรายการคิวงานใหม่ - ในกรณีนี้ คิว PAD สาธิต ถูกเลือกโดยเลือกจากเมนูดรอปดาวน์

พารามิเตอร์ ลำดับความสำคัญ ปล่อยไว้เป็นค่าเริ่มต้น ปกติ แต่มีตัวเลือกสำหรับ ต่ำ และ สูง เป็นทางเลือกด้วย รายการคิวงานที่มีลำดับความสำคัญสูงกว่าจะได้รับการประมวลผลก่อน จากนั้นจึงเป็นลำดับปกติและสุดท้ายเมื่อผสมกันในคิวงานเดียวกัน

พารามิเตอร์ ชื่อ ได้รับการตั้งค่าด้วยคำนำหน้าคงที่พร้อมกับค่าตัวแปร CurrentItem['ID'] - ซึ่งมีค่าจากเซลล์รหัสของแถวข้อมูลที่กำลังประมวลผล ซึ่งเป็นทางเลือกแต่อาจมีประโยชน์ขึ้นอยู่กับกรณีการใช้งานของคุณ

การใช้ค่าจากแถวข้อมูลในตัวแปร CurrentItem พารามิเตอร์ Input ถูกป้อนในรูปแบบ JSON โปรดทราบว่าแต่ละชื่อส่วนหัวถูกผนวกเข้ากับตัวแปร currentitem โดยใช้สัญกรณ์ ['ชื่อของส่วนหัว']

ฟิลด์ หมดอายุ มีตัวแปร datetime ที่เราเพิ่มเข้าไป 7 วันในขั้นตอนก่อนหน้านี้ เมื่อเว้นว่างไว้ รายการคิวงานที่เพิ่มจะมีค่า รายการหมดอายุหลังจาก ที่ตั้งไว้สำหรับคิวงาน

บันทึกย่อการประมวลผล เป็นทางเลือก - ใช้ตามความจำเป็น

เมื่อดำเนินการประมวลผล แต่ละแถวข้อมูลใน CSV ที่นำเข้าจะสร้างรายการคิวงานที่มีสถานะ อยู่ในคิว ซึ่งหมายความว่าพร้อมสำหรับการประมวลผล

ภาพหน้าจอตัวอย่างของรายการคิวงานที่แสดงในพอร์ทัลที่มีสถานะอยู่ในคิว

ซึ่งเป็นเพียงบางส่วนจากหลายวิธีที่สามารถใช้การดำเนินการคิวงานใน PAD ใช้เวลาในการสำรวจและค้นหาการใช้งานที่สร้างสรรค์เพื่อรวมคิวงานเข้ากับโฟลว์ Power Automate ของคุณ

ตัวอย่างจัดคิวรายการใหม่พร้อมความล่าช้า

การดำเนินการ จัดคิวรายการใหม่พร้อมความล่าช้า ทำให้ผู้ใช้โฟลว์เดสก์ท็อปสามารถจัดคิวรายการใหม่และกำหนดระยะเวลาการหน่วง ซึ่งในเวลาดังกล่าวจะสามารถปล่อยรายการดังกล่าวได้อีกครั้งเพื่อการประมวลผล

ในตัวอย่างนี้ มีคิวงานที่มีรายการอยู่เต็ม ซึ่งตั้งค่าให้หมดอายุใน 24 ชั่วโมง แต่ไม่สามารถประมวลผลได้ทันเวลา เนื่องจากมีการบำรุงรักษาระบบตามปกติบางอย่างที่กำลังดำเนินการโดยฝ่ายไอที รายการจำเป็นต้องได้รับการจัดคิวใหม่ การบำรุงรักษาจะเสร็จสิ้นในชั่วข้ามคืน ดังนั้นเราจะดำเนินการชะลอรายการคิวแต่ละรายการภายใน 24 ชั่วโมง จากนั้นกำหนดให้รายการคิวเหล่านั้นหมดอายุใน 24 ชั่วโมงหลังจากช่วงระยะเวลาเผยแพร่

ภาพหน้าจอตัวอย่างของกระบวนการที่ใช้การดำเนินจัดคิวรายการใหม่และเพิ่มความล่าช้า

การดำเนินการสามรายการแรกของกระบวนการตัวอย่างนี้คือการดำเนินการวันที่และเวลา การดำเนินการ 'รับวันที่และเวลาปัจจุบัน' จะบันทึกวันที่และเวลาของระบบในขณะที่การดำเนินการทำงาน ต่อไป เราใช้การดำเนินการ 'เพิ่มไปยังวันที่เวลา' เพื่อให้ครอบคลุมข้อกำหนดสองประการ ขั้นแรกเราต้องกำหนดเวลาล่าช้าโดยการเพิ่ม 24 ชั่วโมงไปยังวันที่เวลาปัจจุบัน จากนั้นเราจะต้องเพิ่มเวลา 48 ชั่วโมงให้กับวันที่เวลาปัจจุบันเป็นการหมดอายุ

ตัวอย่างภาพหน้าจอของการบันทึกภาพวันที่เวลาของระบบ

ตัวอย่างภาพหน้าจอของการเพิ่มวันที่เวลาเพื่อสร้างความล่าช้า

ตัวอย่างภาพหน้าจอของการเพิ่มวันที่เวลาเพื่อสร้างเวลาหมดอายุ

ถัดไปในตัวอย่าง การดำเนินการ 'ประมวลผลรายการคิวงาน' ได้รับการกำหนดค่าให้ชี้ไปที่คิวงานที่โหลด และ 'จัดคิวรายการใหม่พร้อมความล่าช้า' จะถูกวางไว้ภายในลูป

ตัวอย่างภาพหน้าจอของการจัดคิวรายการใหม่พร้อมความล่าช้า

ขณะนี้ค่าที่สร้างขึ้นสำหรับความล่าช้าและการหมดอายุสามารถส่งผ่านไปยังการดำเนินการ 'จัดคิวรายการที่มีความล่าช้าใหม่' ได้แล้ว ฟิลด์ 'รายการคิวงาน' ถูกเติมล่วงหน้าโดยตัวแปรที่สร้างโดยการวนซ้ำ - ซึ่งจะสั่งว่ารายการคิวใดที่จะจัดคิวใหม่ ต่อไปเราแทรกค่าที่สร้างขึ้นโดยใช้การดำเนินการวันที่เวลาสำหรับฟิลด์ 'ล่าช้าจนถึง' และ 'หมดอายุ' จำเป็นต้องมีค่า 'ล่าช้าจนถึง' แต่คุณสามารถใช้ 'หมดอายุ' และ 'ผลการประมวลผล' ได้ตามดุลยพินิจของคุณ

ด้วยกระบวนการง่ายๆ นี้ คุณสามารถจัดคิวรายการที่มีอยู่ทั้งหมดในคิวใหม่ ชะลอรายการเหล่านั้นในระยะเวลาหนึ่ง พร้อมตัวเลือกในการกำหนดวันหมดอายุและผลการประมวลผล

โฟลว์ระบบคลาวด์และการประมวลผลตามตัวเชื่อมต่อ

วิธีที่ง่ายที่สุดในการเอารายการคิวงานออกจากคิวและดำเนินการดังนี้:

  1. ไปที่ Power Automate และลงชื่อเข้าใช้ด้วยข้อมูลประจำตัวของคุณ

  2. บนเมนูด้านซ้าย เลือก โฟลว์ของฉัน

  3. บนแถบเครื่องมือ ให้เลือก + โฟลว์ใหม่ แล้วเลือก โฟลว์ระบบคลาวด์แบบทันที

  4. ระบุ ชื่อโฟลว์ เช่น โฟลว์คิวงานแรกของฉัน จากนั้นเลือก ทริกเกอร์โฟลว์ด้วยตนเอง

  5. เลือก สร้าง

  6. เมื่อตัวออกแบบโฟลว์เปิดขึ้น ให้เลือก + ขั้นตอนใหม่ แล้วเลือกตัวเชื่อมต่อ Microsoft Dataverse

  7. ในรายการของการดำเนินการ ให้เลือก ทำการดําเนินการที่ผูกไว้

พารามิเตอร์ มูลค่า คำอธิบาย
ชื่อตาราง คิวงาน ชื่อของตารางคิวงาน
ชื่อการดำเนินการ เอาออกจากคิว การดำเนินการซึ่งได้รับรายการถัดไปจากคิว
รหัสแถว [รหัสคิวงาน] รหัสคิวงาน (GUID) ของคิวที่คุณต้องการเอาออกจากคิว คุณสามารถรับค่านี้ได้โดยไปที่หน้ารายละเอียดคิวงานของคิวของคุณ และเปิดแผง รายละเอียดขั้นสูง

ภาพหน้าจอของหน้ารายละเอียดคิวงานที่มีการเน้นรหัสคิวงานในแถบ URL ของเบราว์เซอร์

หมายเหตุ

การดำเนินการที่ผูกไว้คือการดำเนินการ Dataverse ที่กำหนดไว้ในตารางเฉพาะ (คิวงานในตัวอย่างของเรา) และสามารถดำเนินการได้ในเรกคอร์ดของตารางนั้นเท่านั้น การดำเนินการที่ถูกผูกไว้ถูกใช้โดยแพลตฟอร์มเพื่อดำเนินการตามตรรกะทางธุรกิจที่กำหนดเองหรือการดำเนินงานในเรกคอร์ดเฉพาะ

  1. ตอนนี้โฟลว์ของคุณควรมีลักษณะคล้ายดังนี้

ภาพหน้าจอของการดำเนินการของโฟลว์ที่แสดงพารามิเตอร์สำหรับการดำเนินการเอาออกจากคิว

  1. เลือก บันทึก แล้วเลือก ทดสอบ โฟลว์ของคุณ

  2. ในบานหน้าต่างด้านการทดสอบให้เลือก ด้วยตนเอง, ทดสอบ, เรียกใช้โฟลว์ จากนั้น เสร็จสิ้น

  3. หากโฟลว์ทำงานสำเร็จ คุณควรได้รับผลลัพธ์ที่คล้ายกัน (แต่มีรหัสต่างกัน)

ภาพหน้าจอของตัวออกแบบโฟลว์ระบบคลาวด์ที่มีการเรียกใช้ที่ทำงานอยู่และประสบความสำเร็จ รวมถึงผลลัพธ์ของการดำเนินการเอาออกจากคิว

  1. ถัดไป คัดลอกเนื้อหา JSON ทั้งหมดจากฟิลด์ เนื้อความ จากนั้นเลือก แก้ไข ที่มุมขวาบนของโฟลว์

เคล็ดลับ

หลังจากการเอารายการงานออกจากคิวแล้ว ให้ใช้เนื้อหา JSON ของรายการเป็นตัวอย่างสคีมาสำหรับการแยกวิเคราะห์คุณสมบัติ JSON ของรายการ ซึ่งช่วยให้คุณเข้าถึงคุณสมบัติใดๆ ของรายการที่ส่งคืนโดยตัวประสานรวมคิวงานได้อย่างง่ายดายในการดำเนินการของโฟลว์ที่ตามมา

  1. เพิ่มขั้นตอนใหม่โดยเลือก + ขั้นตอนใหม่ และค้นหาการดำเนินการที่เรียกว่า แยกวิเคราะห์ JSON แล้วเลือก

ภาพหน้าจอของตัวออกแบบโฟลว์ระบบคลาวด์ที่แสดงการดำเนินการแยกวิเคราะห์ JSON ที่เลือก

  1. วางเมาส์ของคุณในฟิลด์ เนื้อหา และเลือกคุณสมบัติ เนื้อความ จากการดำเนินการก่อนหน้า

ภาพหน้าจอของตัวออกแบบโฟลว์ระบบคลาวด์ที่แสดงการดำเนินการแยกวิเคราะห์ JSON ที่มีการตั้งค่าเนื้อหาเป็นเนื้อความ

  1. จากนั้น เลือก สร้างจากตัวอย่าง แล้ววางสตริง JSON ที่คัดลอกไว้ก่อนหน้านี้ลงในกล่องโต้ตอบ แล้วเลือก เสร็จสิ้น

  2. เลือก + ขั้นตอนใหม่ แล้วเลือกตัวเชื่อมต่อ Microsoft Dataverse

  3. จากรายการของการดำเนินการ ให้เลือก อัปเดตแถว

  4. ในฟิลด์ ชื่อตาราง ให้เลือกตาราง รายการคิวงาน และวางเคอร์เซอร์ในฟิลด์ รหัสแถว

  5. ในรายการ เนื้อหาไดนามิก ตอนนี้คุณจะมีฟิลด์ทั้งหมดที่มีอยู่ในตารางรายการคิวงาน

  6. เลือก แสดงตัวเลือกขั้นสูง แล้วตั้งค่าฟิลด์ RowID, ผลลัพธ์การประมวลผล, สถานะ และ คำอธิบายรายการของสถานะ เป็นค่าต่อไปนี้

เขตข้อมูล มูลค่า คำอธิบาย
รหัสแถว workqueueitemid ค่านี้สามารถเลือกได้ในกล่องโต้ตอบรายการเนื้อหาไดนามิก
ผลการดำเนินการ ประมวลผลรายการเรียบร้อยแล้ว
สถานภาพ ประมวลผลแล้ว
คำอธิบายรายการของสถานะ ประมวลผลแล้ว

ภาพหน้าจอของตัวออกแบบโฟลว์ระบบคลาวด์ที่แสดงการอัปเดตการดำเนินการแถวของตัวเชื่อมต่อ Dataverse ด้วยค่ารายการคิวงาน

  1. เลือก บันทึก และ ทดสอบ โฟลว์อีกครั้ง

  2. หากโฟลว์ทำงานสำเร็จ คุณควรได้รับผลลัพธ์ที่คล้ายกับดังนี้

    ภาพหน้าจอของการเรียกใช้โฟลว์ระบบคลาวด์ที่ทำงานที่เสร็จสมบูรณ์

  3. ตอนนี้ ไปที่หน้ารายละเอียดคิวงานและในส่วนข้อมูลรายการคิว ให้เลือก ดูทั้งหมด

  4. กรองฟิลด์ สถานะ ที่จะแสดงเฉพาะรายการที่ กำลังประมวลผล และ ประมวลผลแล้ว เพื่อยืนยันว่าการดำเนินการเอาออกจากคิวและอัปเดตของเราทำงานตามที่คาดไว้

    ภาพหน้าจอของรายการคิวงาน ดูประสบการณ์ทั้งหมดที่กำลังจะถูกกรองตามสถานะ

    ภาพหน้าจอของประสบการณ์การกรองรายการคิวงานที่มีการเลือกตัวเลือกตัวกรองกำลังประมวลผลและประมวลผลแล้ว

    ภาพหน้าจอของผลลัพธ์ตัวกรอง แสดงสองเรกคอร์ดที่ตรงกับเกณฑ์ตัวกรองที่ตั้งค่าไว้ก่อนหน้านี้

    ขอแสดงความยินดีด้วย คุณเพิ่งเสร็จสิ้นสถานการณ์การประมวลผลคิวงานแรกของคุณ

การประมวลผลตามโฟลว์ระบบคลาวด์พร้อมรองรับโฟลว์เดสก์ท็อป

สำหรับสถานการณ์นี้ เราขยายขั้นตอนก่อนหน้าโดยเพิ่มขั้นตอนการประมวลผลโฟลว์เดสก์ท็อปด้วย

  1. ย้อนกลับและแก้ไข โฟลว์คิวงานแรกของฉัน

  2. เพิ่มการดำเนินการใหม่โดยตรงหลังจากการดำเนินการ แยกวิเคราะห์ JSON และค้นหาตัวเชื่อมต่อ โฟลว์เดสก์ท็อป และ เรียกใช้โฟลว์ที่สร้างขึ้นด้วย Power Automate สำหรับเดสก์ท็อป

  3. ในเมนูดรอปดาวน์ของโฟลว์เดสก์ท็อป เลือกและแก้ไขโฟลว์เดสก์ท็อปที่มีอยู่หรือเลือก + สร้างโฟลว์เดสก์ท็อปใหม่ แล้วทำตามคำแนะนำบนหน้าจอเพื่อสร้างโฟลว์เดสก์ท็อปและเปิดใช้งาน Power Automate สำหรับเดสก์ท็อป หากคุณยังใหม่กับโฟลว์เดสก์ท็อป คุณสามารถเรียนรู้เพิ่มเติม ที่นี่

  4. เมื่อตัวออกแบบ Power Automate สำหรับเดสก์ท็อปเปิดขึ้น ให้สร้างตัวแปร อินพุต สองรายการที่ชื่อ WorkQueueItemValue และ WorkQueueItemName และเพิ่มตัวแปร เอาต์พุต สองรายการที่ชื่อว่า ProcessingNotes และ ProcessingStatus ตามลำดับ ตัวแปรทั้งหมดควรมี ข้อความ เป็นชนิดข้อมูล

  5. ระบุค่าเริ่มต้นสำหรับตัวแปร WorkQueueItem เพื่อให้คุณสามารถทดสอบสคริปต์ในเครื่องได้ในภายหลัง ในกรณีที่คุณทำตาม บทช่วยสอนการนำเข้าจำนวนมาก คุณควรมีรายการคิวงานในคิวใบแจ้งหนี้ ผู้จัดจำหน่าย ที่มีค่าในรูปแบบ JSON นี่คือตัวอย่างค่าหนึ่งที่ใช้

    {
     "InvoiceId": "I-1006",
     "InvoiceDate": "06/04/2023",
     "AccountName": "Fabrikam",
     "ContactEmail": "invoicing@fabrikam.com",
     "Amount": 1253.78,
     "Status": "Paid",
     "WorkQueueKey": "Vendor Invoices",
     "ComponentState": 0,
     "OverwriteTime": "1900-01-01T00:00:00"
    }
    

    ภาพหน้าจอของตัวออกแบบโฟลว์โฟลว์เดสก์ท็อปที่แสดงการดำเนินการอินพุตและเอาต์พุต

  6. ตอนนี้ บันทึก โฟลว์

  7. ในแผงการดำเนินการ เปิดกลุ่มการดำเนินการ ตัวแปร และดับเบิลคลิกที่การดำเนินการ แปลง JSON เป็นออบเจ็กต์ที่กำหนดเอง เพื่อเพิ่มลงในพื้นที่ทำงานการออกแบบ ซึ่งจะเปิดหน้าต่างคุณสมบัติ

  8. เลือกไอคอนตัวแปรในฟิลด์ JSON และเลือกตัวแปร WorkQueueItemValue

  9. เปลี่ยนชื่อตัวแปรเอาต์พุตที่สร้างจาก JsonAsCustomObject เป็น VendorInvoice แล้วเลือก บันทึก

  10. จากนั้น เพิ่มการดำเนินการ If จากกลุ่ม เงื่อนไข และกำหนดค่าคุณสมบัติดังต่อไปนี้:

    First operand Operator Second operand
    %VendorInvoice['Amount']% น้อยกว่า (<) 5000
  11. เลือก บันทึก

  12. เพิ่มการดำเนินการอื่นจากกลุ่ม เงื่อนไข ที่เรียกว่า Else และเพิ่มระหว่างการดำเนินการ If และ End

  13. ตอนนี้ให้เพิ่มอีกสองการดำเนินการจากกลุ่ม ตัวแปร ที่เรียกว่า ตั้งค่าตัวแปร และเพิ่มภายในการดำเนินการ If และ Else และตั้งค่าตัวแปร ProcessingNotes และ ProcessingStatus ตามค่าต่อไปนี้:

    ตัวแปร มูลค่า
    %ProcessingNotes% ใบแจ้งหนี้ได้รับการดำเนินการแล้ว
    %ProcessingStatus% ประมวลผลแล้ว
  14. คัดลอกการดำเนินการ ตั้งค่าตัวแปร สองรายการแล้ววางระหว่างการดำเนินการ Else และ End และเปลี่ยนค่าให้ตรงกับสิ่งเหล่านี้:

    ตัวแปร มูลค่า
    %ProcessingNotes% ข้อยกเว้นทางธุรกิจ: จำนวนเงินในใบแจ้งหนี้มากกว่า $5000 ซึ่งต้องได้รับอนุมัติจากผู้จัดการ
    %ProcessingStatus% ข้อยกเว้น
  15. ตอนนี้โฟลว์ของคุณควรมีลักษณะคล้ายดังนี้

    ภาพหน้าจอของตัวออกแบบโฟลว์เดสก์ท็อปที่แสดงโฟลว์แบบครบวงจรด้วยเงื่อนไข

  16. บันทึก โฟลว์และเรียกใช้เพื่อยืนยันว่าตรรกะของโฟลว์ทำงานตามที่คาดไว้

  17. ย้อนกลับเพื่อแก้ไข โฟลว์คิวงานแรกของฉัน

  18. เลือกโฟลว์เดสก์ท็อปที่สร้างขึ้นใหม่ (หรือแก้ไข) จากรายการ จากนั้นเลือก มีผู้ใช้ดูแลอยู่ เป็น โหมดเรียกใช้

  19. กรอกข้อมูลในพารามิเตอร์ ค่ารายการคิวงาน และ ชื่อรายการคิวงาน ตามที่แสดงที่นี่:

    ภาพหน้าจอของตัวออกแบบโฟลว์ระบบคลาวด์ที่แสดงการดำเนินการของโฟลว์เดสก์ท็อปที่ชี้ไปยังโฟลว์ที่เพิ่งสร้างหรืออัปเดต

  20. เพิ่มการดำเนินการ เงื่อนไข ก่อนการดำเนินการ อัปเดตแถว

  21. วางเมาส์ของคุณในฟิลด์ เลือกค่า และเลือก สถานะการประมวลผล จากกล่องโต้ตอบรายการเนื้อหาไดนามิก

  22. วางเมาส์ของคุณในฟิลด์ เลือกค่า อื่น แล้วป้อน ประมวลผลแล้ว เป็นค่าข้อความ

  23. ลากและปล่อยการดำเนินการ อัปเดตแถว ลงในส่วน หากใช่ ของการดำเนินการแบบมีเงื่อนไข

  24. เปิดรายละเอียดการดำเนินการ อัปเดตแถว และแทนที่ค่าเพื่อจับคู่รายการต่อไปนี้:

    ภาพหน้าจอของตัวออกแบบโฟลว์ระบบคลาวด์ที่แสดงการดำเนินการการอัปเดตแถวด้วยค่าต่างๆ

  25. ในกล่อง ถ้าไม่ใช่ สีแดง ให้เพิ่มการดำเนินการ อัปเดตแถว อื่น และเลือก รายการคิวงาน เป็น ชื่อตาราง

  26. จากนั้น เลือก workqueueitemid เป็น รกัสแถว และเปิดส่วน แสดงตัวเลือกขั้นสูง เลือก หมายเหตุการประมวลผล เป็นค่า ผลลัพธ์การประมวลผล

  27. เลือก ข้อผิดพลาด เป็น สถานะ และ GenericException สำหรับ คำอธิบายรายการของสถานะ

    ภาพหน้าจอของตัวออกแบบโฟลว์ระบบคลาวด์ที่แสดงการเรียกใช้ที่ประสบความสำเร็จ

  28. เลือก บันทึก และ ทดสอบ เพื่อทดสอบการทำงานอัตโนมัติโดยรวมและสังเกตผลลัพธ์จากการดำเนินการของโฟลว์เดสก์ท็อป

    ภาพหน้าจอของตัวออกแบบโฟลว์ระบบคลาวด์ที่แสดงการเรียกใช้ที่ประสบความสำเร็จ

  29. เพื่อยืนยันว่ารายการคิวงานได้รับการประมวลผลแล้ว คุณสามารถไปที่หน้ารายละเอียดคิวงาน เลือก ดูทั้งหมด ในส่วนรายการคิวงาน และกรองรายการตามสถานะ ประมวลผลแล้ว

    ภาพหน้าจอของหน้ารายการคิวงานที่ถูกกรองเพื่อให้แสดงเฉพาะรายการที่ประมวลผลแล้ว

ทำได้ดีมาก คุณเพิ่งเสร็จสิ้นสถานการณ์ขั้นสูงที่รวมการประมวลผลคิวงานแบบไฮบริด

ขั้นตอนถัดไป

เรียนรู้เกี่ยวกับการสร้างแอปที่สร้างโดยใช้แบบจำลองข้อมูล