เทมเพลตข้อมูลการวางแผนการผลิตของคุณ
เทมเพลตข้อมูลการวางแผนการผลิตของคุณ
- คุณลักษณะที่แนะนำให้เก็บ
- กิจกรรมสำคัญที่ควรติดตาม
- แนวทางดึงข้อมูลจาก Microsoft Dynamics 365 Manufacturing
คุณลักษณะของการวางแผนการผลิต
| ชื่อ | คำอธิบาย | ||
|---|---|---|---|
| ใบสั่งผลิต ProductionOrderNumber | รหัสเฉพาะของใบสั่งผลิต ใช้เป็นรหัสเคสหลักสำหรับติดตามกิจกรรมการวางแผนและการผลิตที่เกี่ยวข้องทั้งหมด. | ||
| คำอธิบาย หมายเลขใบสั่งผลิต ซึ่งมักเรียกว่า ProdId ใน Microsoft Dynamics 365 เป็นรหัสหลักที่เชื่อมโยงเหตุการณ์ วัสดุ ทรัพยากร และต้นทุนทั้งหมดของงานผลิตแต่ละรายการ ช่วยให้วิเคราะห์วงจรการวางแผนและการผลิตตั้งแต่ต้นจนจบสำหรับงานแต่ละรายการได้ ใน process mining คุณสมบัตินี้จำเป็นต่อการจัดกลุ่มเหตุการณ์ที่เกี่ยวข้องให้อยู่ในเคสเดียวกัน การวิเคราะห์ตามหมายเลขใบสั่งผลิตช่วยระบุคอขวด ความล่าช้า และจุดที่เบี่ยงเบนจากขั้นตอนการผลิตมาตรฐาน ตั้งแต่สร้างและจัดตารางใบสั่ง ไปจนถึงผลิตเสร็จและคำนวณต้นทุน. เหตุผลที่สำคัญ นี่คือรหัสเคสหลักที่จำเป็นต่อการจัดกลุ่มเหตุการณ์ที่เกี่ยวข้องและสร้างกระบวนการวางแผนการผลิตตั้งแต่ต้นจนจบขึ้นใหม่เพื่อวิเคราะห์. แหล่งข้อมูล นี่คือฟิลด์ 'ProdId' ในตาราง 'ProdTable' ของ Microsoft Dynamics 365 Manufacturing. ตัวอย่าง WO-000456WO-000457WO-000458 | |||
| ชื่อกิจกรรม ActivityName | ชื่อเหตุการณ์หรือขั้นตอนทางธุรกิจที่เกิดขึ้นในกระบวนการวางแผนการผลิต. | ||
| คำอธิบาย ชื่อกิจกรรมระบุขั้นตอนหนึ่งในวงจรการวางแผนการผลิต เช่น 'สร้างใบสั่งผลิต' 'เบิกวัสดุเพื่อการผลิต' หรือ 'เริ่มการผลิต' กิจกรรมเหล่านี้เป็นองค์ประกอบพื้นฐานของแผนผังกระบวนการ การวิเคราะห์ลำดับและระยะเวลาของกิจกรรมช่วยแสดงขั้นตอนการทำงาน ระบุเส้นทางที่เกิดขึ้นบ่อย ตรวจหาการทำงานซ้ำ และวัดเวลาที่ใช้ในแต่ละช่วง คุณสมบัตินี้ช่วยให้เข้าใจว่าเกิดอะไรขึ้นในแต่ละขั้นตอนของกระบวนการ. เหตุผลที่สำคัญ คุณสมบัตินี้ระบุขั้นตอนต่างๆ ในกระบวนการ จึงใช้สร้างแผนผังกระบวนการและวิเคราะห์ขั้นตอนการทำงาน ความแตกต่าง และคอขวดได้. แหล่งข้อมูล โดยทั่วไป ค่านี้ได้มาจากบันทึกเหตุการณ์ หรือจากการจับคู่การเปลี่ยนสถานะและประเภทรายการในตาราง เช่น 'ProdRouteTrans', 'ProdJournalBOM' และฟิลด์สถานะใน 'ProdTable'. ตัวอย่าง สร้างใบสั่งผลิตปล่อยใบสั่งผลิตเริ่มการผลิตรายงานการผลิตว่าเสร็จแล้ว | |||
| ระบบต้นทาง SourceSystem | ระบบบันทึกข้อมูลต้นทางที่ใช้ดึงข้อมูล. | ||
| คำอธิบาย คุณสมบัตินี้ระบุระบบสารสนเทศต้นทางที่เป็นแหล่งข้อมูลเหตุการณ์ สำหรับมุมมองกระบวนการนี้ ค่าจะเป็น 'Microsoft Dynamics 365 Manufacturing' เสมอ ในสภาพแวดล้อมที่เชื่อมต่อหลายระบบ ฟิลด์นี้จำเป็นต่อการติดตามที่มาของข้อมูล แก้ไขปัญหาคุณภาพข้อมูล และทำความเข้าใจว่าระบบต่างๆ มีส่วนในกระบวนการโดยรวมอย่างไร ช่วยให้ทราบแหล่งที่มาของข้อมูลที่นำมาวิเคราะห์อย่างชัดเจน. เหตุผลที่สำคัญ คุณสมบัตินี้ให้ข้อมูลสำคัญเกี่ยวกับแหล่งที่มาของข้อมูล ซึ่งจำเป็นต่อการกำกับดูแลและตรวจสอบข้อมูล รวมถึงการจัดการไปป์ไลน์ข้อมูลจากระบบองค์กรหลายระบบ. แหล่งข้อมูล ค่านี้เป็นค่าคงที่ที่ควรเพิ่มระหว่างการดึงและแปลงข้อมูล เพื่อระบุแหล่งที่มาของชุดข้อมูล. ตัวอย่าง Microsoft Dynamics 365 ManufacturingD365 F&O | |||
| เวลาที่เกิดเหตุการณ์ EventTime | เวลาที่ระบุอย่างแม่นยำว่ากิจกรรมเกิดขึ้นเมื่อใด. | ||
| คำอธิบาย เวลาที่เกิดเหตุการณ์หรือการประทับเวลาใช้บันทึกวันที่และเวลาที่กิจกรรมเกิดขึ้นอย่างแม่นยำ ข้อมูลนี้เป็นพื้นฐานของการวิเคราะห์ process mining ที่อิงตามเวลา ทั้งการคำนวณรอบเวลา การระบุความล่าช้าระหว่างขั้นตอน และการทำความเข้าใจประสิทธิภาพของกระบวนการในแต่ละช่วง สำหรับการวางแผนการผลิต คุณสมบัตินี้ใช้วัดระยะเวลาต่างๆ เช่น ระยะเวลานำในการวางแผน ความล่าช้าก่อนเริ่มผลิต และเวลาตั้งแต่รับใบสั่งจนดำเนินการเสร็จ การประทับเวลาที่แม่นยำและเรียงตามลำดับเวลาเป็นสิ่งจำเป็นต่อการสร้างแบบจำลองกระบวนการที่ถูกต้องและมีความหมาย. เหตุผลที่สำคัญ การประทับเวลานี้จำเป็นต่อการเรียงลำดับเหตุการณ์ คำนวณระยะเวลาระหว่างกิจกรรม และวิเคราะห์ข้อมูลตามเวลา เช่น รอบเวลาและการระบุคอขวด. แหล่งข้อมูล พบข้อมูลนี้ได้ในตารางรายการต่างๆ เช่น 'createdDateTime' ใน 'ProdTable' หรือฟิลด์วันที่ทำรายการใน 'ProdRouteTrans', 'ProdJournalRoute' และ 'ProdJournalBOM'. ตัวอย่าง 2023-04-15T09:00:12Z2023-04-15T11:30:00Z2023-04-16T14:22:05Z | |||
| อัปเดตข้อมูลล่าสุด LastDataUpdate | เวลาที่ระบุว่าข้อมูลของเหตุการณ์นี้ได้รับการรีเฟรชหรือดึงจากระบบต้นทางครั้งล่าสุดเมื่อใด. | ||
| คำอธิบาย คุณสมบัตินี้ระบุวันที่และเวลาที่ดึงข้อมูลจากระบบต้นทางครั้งล่าสุด เป็นฟิลด์ข้อมูลเมตาที่จำเป็นต่อการตรวจสอบว่าข้อมูลที่ใช้วิเคราะห์เป็นข้อมูลล่าสุดเพียงใด การทราบเวลาที่อัปเดตข้อมูลล่าสุดช่วยให้นักวิเคราะห์และผู้ใช้ทางธุรกิจเชื่อมั่นในข้อมูลเชิงลึกจากเครื่องมือ process mining นอกจากนี้ยังช่วยให้ทราบว่าแดชบอร์ดแสดงข้อมูลล่าสุดหรือข้อมูลจากช่วงเวลาก่อนหน้า ซึ่งสำคัญต่อการตัดสินใจด้านการปฏิบัติการ. เหตุผลที่สำคัญ คุณสมบัตินี้สำคัญต่อการกำกับดูแลข้อมูล ช่วยให้ผู้ใช้ทราบว่าข้อมูลเป็นข้อมูลล่าสุดเพียงใดและเชื่อมั่นได้ว่าข้อมูลเชิงลึกของกระบวนการเป็นปัจจุบัน. แหล่งข้อมูล ระบบสร้างและบันทึกการประทับเวลานี้ลงในแต่ละรายการระหว่างกระบวนการดึง แปลง และโหลดข้อมูล (ETL). ตัวอย่าง 2023-05-20T05:00:00Z2023-05-21T05:00:00Z | |||
| จำนวนที่ผลิตได้จริง ActualQuantity | จำนวนสินค้าที่ผลิตเสร็จและรายงานว่าเสร็จแล้วสำหรับใบสั่งผลิต. | ||
| คำอธิบาย จำนวนที่ผลิตได้จริงคือจำนวนหน่วยที่ผลิตเสร็จและผ่านการตรวจสอบคุณภาพสำหรับใบสั่งผลิตนั้น โดยบันทึกค่านี้เมื่อมีการ 'Reported as finished' ข้อมูลนี้ใช้วิเคราะห์ผลผลิตและประสิทธิภาพการผลิต เมื่อนำจำนวนที่ผลิตได้จริงไปเปรียบเทียบกับจำนวนตามแผน จะช่วยคำนวณอัตราของเสียและทำความเข้าใจการสูญเสียในการผลิต อีกทั้งยังเป็นข้อมูลสำคัญสำหรับวิเคราะห์ปริมาณงานที่ผลิตได้และแดชบอร์ดการใช้กำลังการผลิต. เหตุผลที่สำคัญ จำเป็นต่อการคำนวณผลผลิต อัตราของเสีย และปริมาณงานที่ผลิตได้จริง ช่วยให้เห็นประสิทธิภาพและผลการดำเนินงานด้านการผลิต. แหล่งข้อมูล ค่านี้มักมาจากฟิลด์ 'QtyGood' ในตาราง 'ProdTable' หรือตารางบันทึกรายการที่เกี่ยวข้อง เมื่อรายงานใบสั่งผลิตว่าเสร็จแล้ว. ตัวอย่าง 100985000 | |||
| ประเภทการผลิต ProductionType | การจัดประเภทใบสั่งผลิต เช่น ผลิตตามปกติ แก้ไขงาน หรือผลิตตามโครงการ. | ||
| คำอธิบาย ประเภทการผลิตใช้จัดกลุ่มใบสั่งผลิตตามวัตถุประสงค์ เช่น ใบสั่งผลิต 'Standard' ใช้ผลิตสินค้าเข้าสต็อกตามปกติ ส่วน 'Rework' ใช้แก้ข้อบกพร่องของสินค้าที่ผลิตไปแล้ว และ 'Project' เชื่อมโยงกับโครงการของลูกค้าโดยเฉพาะ ข้อมูลนี้ช่วยให้สร้างมุมมองการวิเคราะห์ที่เปรียบเทียบกันได้ กระบวนการของใบสั่งแก้ไขงานย่อมแตกต่างจากใบสั่งผลิตตามปกติ การแบ่งผลการวิเคราะห์ตามประเภทการผลิตจึงช่วยให้เปรียบเทียบได้อย่างมีความหมาย และเข้าใจขั้นตอนกับความท้าทายเฉพาะของแต่ละประเภท. เหตุผลที่สำคัญ ช่วยแบ่งกลุ่มผลการวิเคราะห์ เพราะใบสั่งผลิตแต่ละประเภท เช่น 'Standard' และ 'Rework' มีกระบวนการและความคาดหวังด้านผลการดำเนินงานต่างกัน. แหล่งข้อมูล ฟิลด์ 'ProdType' ในตาราง 'ProdTable'. ตัวอย่าง StandardReworkProject | |||
| ผู้ใช้ UserId | รหัสผู้ใช้ที่ทำกิจกรรมหรือรับผิดชอบกิจกรรมนั้น. | ||
| คำอธิบาย รหัสผู้ใช้ระบุพนักงานหรือบัญชีระบบที่ดำเนินขั้นตอนหนึ่งของกระบวนการ เช่น การปล่อยใบสั่งผลิตหรือการรายงานว่างานเสร็จแล้ว ข้อมูลนี้ช่วยให้เห็นว่าใครเป็นผู้ปฏิบัติงานในกระบวนการ การวิเคราะห์กระบวนการแยกตามผู้ใช้ช่วยให้เข้าใจการกระจายภาระงาน ระบุโอกาสในการฝึกอบรม เปรียบเทียบผลการดำเนินงานระหว่างบุคคลหรือทีม และตรวจสอบความผิดปกติที่เกิดจากผู้ใช้บางราย นอกจากนี้ยังสำคัญต่อการปฏิบัติตามข้อกำหนดและการตรวจสอบย้อนหลัง. เหตุผลที่สำคัญ ช่วยวิเคราะห์ผลการดำเนินงานของกระบวนการแยกตามผู้ใช้หรือทีม ระบุโอกาสในการทำงานอัตโนมัติ และเก็บหลักฐานการตรวจสอบย้อนหลังสำหรับกิจกรรมสำคัญ. แหล่งข้อมูล พบได้ในฟิลด์อย่าง 'modifiedBy' หรือ 'createdBy' ของตารางต่างๆ หรือในฟิลด์ผู้ใช้ของตารางบันทึกรายการ เช่น 'ProdJournalTable'. ตัวอย่าง j.smithm.jonesAX_BATCH_SVC | |||
| โรงงานผลิต ProductionPlant | สถานที่หรือโรงงานที่ดำเนินการผลิตตามใบสั่งผลิต. | ||
| คำอธิบาย โรงงานผลิตระบุสถานที่หรือโรงงานที่รับผิดชอบกระบวนการผลิต ซึ่งเป็นมิติสำคัญสำหรับแบ่งกลุ่มและเปรียบเทียบผลการผลิต ใน process mining ข้อมูลนี้ช่วยเปรียบเทียบผลการดำเนินงานระหว่างโรงงาน นักวิเคราะห์สามารถเปรียบเทียบรอบเวลา การใช้ทรัพยากร และการปฏิบัติตามกระบวนการมาตรฐานของแต่ละแห่ง เพื่อหาแนวทางปฏิบัติที่ดีหรือระบุโรงงานที่ควรปรับปรุงการปฏิบัติการ ข้อมูลนี้จำเป็นต่อการวิเคราะห์การใช้กำลังการผลิต. เหตุผลที่สำคัญ ช่วยเปรียบเทียบและวัดผลการดำเนินงานระหว่างโรงงานผลิต เพื่อค้นหาแนวทางปฏิบัติที่ดีและปัญหาเฉพาะพื้นที่. แหล่งข้อมูล ฟิลด์ 'InventSiteId' ในตาราง 'ProdTable'. ตัวอย่าง SITE-ASITE-BMain-WH | |||
| ลำดับความสำคัญของการผลิต ProductionPriority | ระดับที่บอกความเร่งด่วนหรือลำดับความสำคัญของใบสั่งผลิต. | ||
| คำอธิบาย ผู้วางแผนและผู้จัดตารางใช้ลำดับความสำคัญของการผลิตเพื่อจัดลำดับงานในพื้นที่ผลิต ใบสั่งที่มีลำดับความสำคัญสูงอาจถูกเร่งให้เสร็จ ซึ่งอาจกระทบกำหนดการของใบสั่งอื่น การวิเคราะห์ข้อมูลนี้ช่วยให้เข้าใจว่าแผนการผลิตถูกรบกวนจากใบสั่งเร่งด่วนบ่อยเพียงใด การติดตามการเปลี่ยนแปลงลำดับความสำคัญตลอดอายุของใบสั่งช่วยให้เห็นความไม่เสถียรของความต้องการหรือการวางแผน ข้อมูลนี้สำคัญต่อแดชบอร์ด 'Expedited Production Trends' และ KPI 'Expedited Production Rate'. เหตุผลที่สำคัญ ช่วยระบุความถี่และผลกระทบของใบสั่งเร่งด่วน ซึ่งอาจบ่งชี้ถึงความไม่เสถียรของแผนหรือการบริหารการปฏิบัติงานที่ต้องแก้ปัญหาเฉพาะหน้า. แหล่งข้อมูล อาจเป็นฟิลด์มาตรฐานหรือฟิลด์ที่กำหนดเองใน 'ProdTable' การตั้งค่ามักแตกต่างกันไปในแต่ละบริษัท. ตัวอย่าง ปกติสูงเร่งด่วน | |||
| วันที่เริ่มตามแผน PlannedStartDate | วันและเวลาที่กำหนดให้เริ่มใบสั่งผลิต. | ||
| คำอธิบาย วันที่เริ่มต้นตามแผนเป็นผลลัพธ์สำคัญจากการจัดตารางการผลิต โดยระบุเวลาเป้าหมายที่จะเริ่มกิจกรรมการผลิตของใบสั่งผลิต วันที่นี้คำนวณจากความพร้อมของวัสดุ กำลังการผลิตของทรัพยากร และกำหนดส่งตามความต้องการ ข้อมูลนี้จำเป็นต่อการวิเคราะห์ว่าการผลิตเป็นไปตามกำหนดหรือไม่ โดยเปรียบเทียบวันที่เริ่มต้นตามแผนกับเวลาเริ่มผลิตจริงจากเวลาประทับของกิจกรรม 'Production Started' เพื่อวัดความตรงต่อเวลา หาสาเหตุของความล่าช้า และคำนวณ KPI เช่น อัตราการผลิตที่เป็นไปตามกำหนดการ. เหตุผลที่สำคัญ ใช้เป็นเกณฑ์ตั้งต้นในการวัดว่าการผลิตเป็นไปตามกำหนดหรือไม่ และระบุความล่าช้าระหว่างการวางแผนกับการเริ่มผลิตจริง. แหล่งข้อมูล ฟิลด์ 'SchedStart' ในตาราง 'ProdTable'. ตัวอย่าง 2023-04-18T08:00:00Z2023-04-19T08:00:00Z2023-04-20T08:00:00Z | |||
| วันที่สิ้นสุดตามแผน PlannedEndDate | วันและเวลาที่กำหนดให้ใบสั่งผลิตเสร็จสิ้น. | ||
| คำอธิบาย วันที่สิ้นสุดตามแผนคือเวลาเป้าหมายที่ระบบจัดตารางการผลิตกำหนดให้ใบสั่งผลิตเสร็จ โดยพิจารณาเวลาปฏิบัติงาน ปฏิทินทรัพยากร และระยะเวลานำ เพื่อคาดการณ์ว่าสินค้าสำเร็จรูปจะพร้อมเมื่อใด ในการวิเคราะห์กระบวนการ ข้อมูลนี้สำคัญต่อการประเมินอัตราการผลิตเสร็จตรงเวลา เมื่อนำวันที่สิ้นสุดตามแผนไปเปรียบเทียบกับเวลาที่เสร็จจริงจากกิจกรรม 'Production Reported As Finished' หรือ 'Production Order Ended' จะคำนวณ KPI อัตราการผลิตเสร็จตรงเวลาได้ และช่วยหาสาเหตุเชิงระบบของการส่งมอบล่าช้า. เหตุผลที่สำคัญ ใช้เป็นเกณฑ์วัดอัตราการผลิตเสร็จตรงเวลา และวิเคราะห์ความแม่นยำของการจัดตารางการผลิต. แหล่งข้อมูล ฟิลด์ 'SchedEnd' ในตาราง 'ProdTable'. ตัวอย่าง 2023-04-25T17:00:00Z2023-04-26T17:00:00Z2023-04-27T17:00:00Z | |||
| สถานะใบสั่งผลิต ProductionOrderStatus | ระบุสถานะปัจจุบันของใบสั่งผลิตในวงจรการผลิต. | ||
| คำอธิบาย สถานะใบสั่งผลิตแสดงความคืบหน้าของใบสั่งตลอดวงจรการผลิต สถานะที่พบบ่อยใน Dynamics 365 ได้แก่ Created, Estimated, Scheduled, Released, Started, Reported as finished และ Ended คุณสมบัตินี้แสดงสถานะของใบสั่งแต่ละรายการ ณ เวลาที่ตรวจสอบ ใน process mining การวิเคราะห์การเปลี่ยนสถานะเป็นวิธีหลักในการกำหนดกิจกรรมและทำความเข้าใจขั้นตอนการทำงาน คุณสามารถกรองใบสั่งตามสถานะ วิเคราะห์เวลาที่ใช้ในแต่ละสถานะ และระบุใบสั่งที่ค้างหรือล่าช้าได้. เหตุผลที่สำคัญ คุณสมบัตินี้แสดงภาพรวมความคืบหน้าของใบสั่ง และจำเป็นต่อการกรองข้อมูล การตรวจสอบความสอดคล้อง และการวิเคราะห์เวลาที่ใช้ในแต่ละช่วงการผลิต. แหล่งข้อมูล นี่คือฟิลด์ 'ProdStatus' ในตาราง 'ProdTable'. ตัวอย่าง จัดตารางแล้วปล่อยแล้วเริ่มแล้วสิ้นสุดแล้ว | |||
| หมายเลขผลิตภัณฑ์ ProductNumber | รหัสเฉพาะของสินค้าที่ผลิต. | ||
| คำอธิบาย หมายเลขผลิตภัณฑ์หรือรหัสสินค้า (Item ID) ระบุสินค้าสำเร็จรูปที่ใบสั่งผลิตนั้นมีเป้าหมายจะผลิต ข้อมูลนี้เชื่อมโยงกระบวนการผลิตกับผลิตภัณฑ์ที่กำลังผลิต รวมถึงรายการวัสดุและขั้นตอนการผลิตที่เกี่ยวข้อง การวิเคราะห์กระบวนการแยกตามหมายเลขผลิตภัณฑ์ช่วยให้เห็นความแตกต่างของวงจรการผลิตในแต่ละผลิตภัณฑ์ เช่น บางผลิตภัณฑ์ใช้เวลาผลิตนานกว่า ต้องแก้ไขงานมากกว่า หรือเกิดความล่าช้าบ่อยกว่า ข้อมูลนี้เป็นประโยชน์ต่อวิศวกรผลิตภัณฑ์และกระบวนการ. เหตุผลที่สำคัญ ช่วยวิเคราะห์ความแตกต่างของกระบวนการตามผลิตภัณฑ์ที่ผลิต และระบุคอขวดหรือปัญหาด้านคุณภาพเฉพาะผลิตภัณฑ์. แหล่งข้อมูล ฟิลด์ 'ItemId' ในตาราง 'ProdTable'. ตัวอย่าง FG-1001FG-2050ASSY-500B | |||
| ความพร้อมของวัสดุ MaterialAvailabilityStatus | ระบุว่าวัตถุดิบที่จำเป็นสำหรับใบสั่งผลิตมีพร้อมใช้งานหรือไม่. | ||
| คำอธิบาย ข้อมูลนี้ติดตามความพร้อมของชิ้นส่วนที่ต้องใช้ในการผลิต โดยอาจแสดงสถานะ เช่น 'Available', 'On Order' หรือ 'Shortage' ผู้จัดตารางต้องใช้ข้อมูลนี้เพื่อประเมินว่าใบสั่งผลิตจะเริ่มได้ตามแผนจริงหรือไม่ ใน process mining ข้อมูลนี้สำคัญต่อการหาสาเหตุที่แท้จริงของความล่าช้าในการเริ่มผลิต เมื่อนำสถานะนี้ไปเทียบกับเวลาระหว่าง 'Production Order Released' และ 'Production Started' นักวิเคราะห์จะวัดผลกระทบจากการขาดแคลนวัสดุต่อการทำตามกำหนดการและรอบเวลารวมได้ ข้อมูลนี้สนับสนุนแดชบอร์ด 'Material Availability Delay Impact' โดยตรง. เหตุผลที่สำคัญ ช่วยทำความเข้าใจและวัดความล่าช้าในการเริ่มผลิตที่เกิดจากการขาดแคลนวัสดุ พร้อมเชื่อมโยงผลการดำเนินงานของห่วงโซ่อุปทานกับประสิทธิภาพการผลิต. แหล่งข้อมูล สถานะนี้มักไม่ได้อยู่ในฟิลด์เดียว แต่อาจคำนวณจากการตรวจสอบยอดคงเหลือของสินค้าทุกรายการในรายการวัสดุ (BOM) ของใบสั่งผลิตผ่านตาราง 'InventSum'. ตัวอย่าง มีพร้อมทั้งหมดขาดแคลนบางส่วนไม่มีพร้อมใช้งาน | |||
| ความล่าช้าก่อนเริ่มผลิต ProductionStartDelay | เวลาที่ผ่านไประหว่างการปล่อยใบสั่งผลิตกับการเริ่มผลิตจริง. | ||
| คำอธิบาย ระยะเวลาที่คำนวณได้นี้ใช้วัดเวลารอหรือเวลาที่ใบสั่งค้างอยู่ในพื้นที่ผลิต โดยคำนวณจากเวลาระหว่างกิจกรรม 'Production Order Released' กับ 'Production Started' KPI นี้สำคัญต่อแดชบอร์ด 'Resource Allocation Delay Analysis' เพราะช่วยระบุความล่าช้าที่เกิดขึ้นหลังวางแผนเสร็จและใบสั่งพร้อมดำเนินการแล้ว ค่าที่สูงอาจบ่งชี้ปัญหาด้านความพร้อมของทรัพยากร การจัดเตรียมวัสดุ หรือการส่งต่อข้อมูลไปยังพื้นที่ผลิต จึงช่วยชี้จุดที่ควรปรับปรุงการปฏิบัติการได้อย่างชัดเจน. เหตุผลที่สำคัญ วัดเวลาที่ใบสั่งพร้อมเริ่มแต่ยังไม่ได้เริ่มได้อย่างแม่นยำ ช่วยระบุคอขวดที่เกี่ยวกับความพร้อมของทรัพยากรหรือพื้นที่ผลิต. แหล่งข้อมูล เป็นค่าที่คำนวณจาก: Timestamp('Production Started') - Timestamp('Production Order Released'). ตัวอย่าง 0 วัน 4 ชม. 15 นาที1 วัน 2 ชม. 0 นาที0 วัน 1 ชม. 30 นาที | |||
| จำนวนตามแผน PlannedQuantity | จำนวนสินค้าที่วางแผนจะผลิต. | ||
| คำอธิบาย จำนวนตามแผนคือจำนวนหน่วยเป้าหมายที่ต้องผลิตสำหรับใบสั่งผลิต โดยทั่วไปกำหนดจากความต้องการในใบสั่งขาย ระดับสต็อกสำรอง หรือแผนหลัก ข้อมูลนี้เป็นเกณฑ์ตั้งต้นสำหรับวัดผล เช่น ผลผลิตและอัตราของเสีย เมื่อนำจำนวนตามแผนไปเปรียบเทียบกับจำนวนที่ผลิตได้จริง ผู้วางแผนจะติดตามประสิทธิภาพการผลิตและความคลาดเคลื่อนของวัสดุได้ นอกจากนี้ยังเป็นข้อมูลพื้นฐานสำหรับการวางแผนกำลังการผลิตและความต้องการวัสดุ. เหตุผลที่สำคัญ เป็นจำนวนตั้งต้นสำหรับวัดผลผลิตและอัตราของเสีย โดยเปรียบเทียบกับจำนวนที่ผลิตได้จริง. แหล่งข้อมูล ฟิลด์ 'QtySched' ในตาราง 'ProdTable'. ตัวอย่าง 1005000250 | |||
| เริ่มตรงเวลา ProductionScheduleAdherence | ค่าบูลีนที่เป็นจริงเมื่อเริ่มผลิตในวันที่กำหนดไว้หรือก่อนวันเริ่มต้นตามแผน. | ||
| คำอธิบาย ข้อมูลคำนวณนี้แสดงผลแบบสองค่าอย่างชัดเจนว่าการเริ่มผลิตเป็นไปตามกำหนดหรือไม่ โดยเปรียบเทียบเวลาที่เริ่มจริงจาก event 'Production Started' กับข้อมูล 'PlannedStartDate' ค่านี้มีประโยชน์มากสำหรับสร้างแดชบอร์ดและ KPI ที่อ่านเข้าใจง่าย เช่น 'Production Schedule Adherence Rate' คุณสามารถกรองและรวมข้อมูลเพื่อดูสัดส่วนใบสั่งที่เริ่มตรงเวลา และวิเคราะห์ลักษณะของใบสั่งที่ล่าช้าได้ โดยไม่ต้องเปรียบเทียบวันที่ในเครื่องมือวิเคราะห์โดยตรง. เหตุผลที่สำคัญ ช่วยให้รายงานและคำนวณ KPI การทำงานตามกำหนดได้ง่ายขึ้น พร้อมกรองและรวมข้อมูลเพื่อเปรียบเทียบใบสั่งที่เริ่มตรงเวลากับใบสั่งที่ล่าช้า. แหล่งข้อมูล เป็นค่าที่คำนวณจากเงื่อนไข: เวลาของ event 'Production Started' <= PlannedStartDate. ตัวอย่าง truefalse | |||
| เวลาสิ้นสุด EndTime | เวลาประทับที่ระบุเวลาสิ้นสุดของกิจกรรมอย่างแม่นยำ. | ||
| คำอธิบาย เวลาสิ้นสุดระบุว่ากิจกรรมหนึ่งเสร็จเมื่อใด ส่วนเวลาเริ่มต้นบอกจุดเริ่มต้น เวลาสิ้นสุดจึงจำเป็นต่อการคำนวณระยะเวลาจริงหรือเวลาที่ใช้ดำเนินขั้นตอนนั้น ใน process mining การมีทั้งเวลาเริ่มต้นและเวลาสิ้นสุดของกิจกรรมช่วยให้วิเคราะห์เวลารอเทียบกับเวลาปฏิบัติงานได้ละเอียดขึ้น ทำให้แยกได้ว่ากิจกรรมใช้เวลาปฏิบัติงานจริงนานเท่าใด และใช้เวลารอเริ่มขั้นตอนถัดไปนานเท่าใด ซึ่งสำคัญต่อการวิเคราะห์คอขวดอย่างละเอียด. เหตุผลที่สำคัญ ช่วยคำนวณเวลาที่ใช้ดำเนินกิจกรรมและแยกจากเวลารอ ทำให้วิเคราะห์คอขวดได้แม่นยำขึ้น. แหล่งข้อมูล มักคำนวณจากข้อมูลอื่น เช่น เวลาสิ้นสุดของ 'Production Started' อาจใช้เวลาเริ่มต้นของ 'Operation Completed' ในบาง event log อาจมีการบันทึกเวลาสิ้นสุดไว้อย่างชัดเจน. ตัวอย่าง 2023-04-15T09:30:45Z2023-04-15T12:00:00Z2023-04-16T15:00:10Z | |||
| สายการผลิต ProductionLine | สายการผลิต ศูนย์งาน หรือกลุ่มทรัพยากรที่กำหนดให้กับใบสั่งผลิต. | ||
| คำอธิบาย สายการผลิตระบุเครื่องจักร เซลล์การผลิต หรือกลุ่มทรัพยากรที่จะดำเนินงานผลิต ซึ่งให้รายละเอียดเฉพาะเจาะจงกว่าโรงงานผลิต การวิเคราะห์กระบวนการแยกตามสายการผลิตสำคัญต่อการวิเคราะห์กำลังการผลิตและการใช้ทรัพยากรอย่างละเอียด ช่วยระบุศูนย์งานที่มีภาระงานเกิน เปรียบเทียบประสิทธิภาพของสายการผลิตต่างๆ ที่ผลิตสินค้าเดียวกัน และค้นหาคอขวดเฉพาะทรัพยากรที่อาจมองไม่เห็นเมื่อวิเคราะห์ในระดับโรงงาน. เหตุผลที่สำคัญ ช่วยวิเคราะห์การใช้ทรัพยากรและผลการดำเนินงานได้อย่างละเอียด เพื่อระบุศูนย์งานที่มีภาระงานเกินหรือสายการผลิตที่ไม่มีประสิทธิภาพ. แหล่งข้อมูล ข้อมูลนี้มักอยู่ในฟิลด์ 'WrkCtrId' ของรายการธุรกรรมเส้นทางการผลิตในตาราง 'ProdRoute' หรือ 'ProdRouteTrans'. ตัวอย่าง LINE-01LINE-02CNC-A | |||
| หมายเลขการแก้ไข ProductionOrderRevisionNumber | จำนวนครั้งที่ปรับแผนการผลิตหลังจากสร้างแผนครั้งแรก. | ||
| คำอธิบาย ข้อมูลนี้ติดตามจำนวนครั้งที่แก้ไขหรือเปลี่ยนแปลงใบสั่งผลิตอย่างมีนัยสำคัญ เช่น เปลี่ยนจำนวน วันที่ หรือเส้นทางการผลิต หลังจากจัดตารางหรือปล่อยใบสั่งแล้ว จำนวนครั้งที่สูงบ่งชี้ว่าแผนไม่เสถียร ข้อมูลนี้ใช้วัด KPI 'Production Plan Revision Rate' โดยตรง การวิเคราะห์ช่วยระบุสาเหตุที่ทำให้แผนไม่เสถียร เช่น ความต้องการเปลี่ยนบ่อยหรือการวางแผนครั้งแรกไม่แม่นยำ อีกทั้งยังวัดปริมาณงานแก้ไขและการจัดตารางใหม่ ซึ่งมักทำให้ประสิทธิภาพลดลง. เหตุผลที่สำคัญ ใช้วัดเสถียรภาพของแผนโดยตรงและสนับสนุน KPI 'Production Plan Revision Rate' พร้อมชี้ให้เห็นกระบวนการที่มีการเปลี่ยนแปลงและแก้ไขงานมากเกินไป. แหล่งข้อมูล เป็นข้อมูลที่คำนวณขึ้น โดยนับจำนวนกิจกรรม 'Production Order Adjusted' ในแต่ละเคส. ตัวอย่าง 012 | |||
| หมายเลขใบสั่งตรวจสอบคุณภาพ QualityOrderNumber | รหัสใบสั่งตรวจสอบคุณภาพที่เชื่อมโยงกับใบสั่งผลิต. | ||
| คำอธิบาย เมื่อจำเป็นต้องตรวจสอบคุณภาพ Dynamics 365 มักสร้าง Quality Order ขึ้นมา ข้อมูลนี้เชื่อมโยงกระบวนการผลิตกับกระบวนการประกันคุณภาพ โดยบันทึกรหัสของใบสั่งตรวจสอบคุณภาพที่เกี่ยวข้อง การเชื่อมโยงนี้ช่วยให้เห็นกระบวนการตั้งแต่ต้นจนจบ รวมถึงขั้นตอนการจัดการคุณภาพ และช่วยวิเคราะห์ว่าการตรวจสอบคุณภาพส่งผลต่อระยะเวลานำของการผลิตอย่างไร ระบุความล่าช้าในกระบวนการคุณภาพ และทำความเข้าใจความถี่ในการตรวจสอบผลิตภัณฑ์หรือสายการผลิตแต่ละประเภท. เหตุผลที่สำคัญ เชื่อมกระบวนการผลิตกับกระบวนการประกันคุณภาพ เพื่อวิเคราะห์ผลกระทบของการตรวจสอบคุณภาพต่อระยะเวลานำโดยรวม. แหล่งข้อมูล ข้อมูลนี้จัดเก็บในตารางการจัดการคุณภาพ เช่น 'InventQualityOrderTable' และต้องเชื่อมกลับไปยังใบสั่งผลิต. ตัวอย่าง QO-00123QO-00124QO-00125 | |||
กิจกรรมในการวางแผนการผลิต
| กิจกรรม | คำอธิบาย | ||
|---|---|---|---|
| จัดตารางใบสั่งผลิต | กิจกรรมนี้หมายถึงการจัดตารางใบสั่งผลิต โดยกำหนดทรัพยากร วันที่ และเวลาสำหรับการปฏิบัติงาน ขั้นตอนนี้อาจเป็นการจัดตารางการปฏิบัติงานหรือการจัดตารางงานอย่างละเอียด. | ||
| เหตุผลที่สำคัญ การจัดตารางมีความสำคัญต่อการวางแผนกำลังการผลิตและการจัดการทรัพยากร การวิเคราะห์เวลาที่ใช้จัดตารางใบสั่งผลิตและช่วงเวลาจนกว่าจะปล่อยใบสั่ง ช่วยให้เห็นข้อจำกัดด้านการวางแผนและกำลังการผลิต. แหล่งข้อมูล บันทึกเหตุการณ์นี้เมื่อสถานะใบสั่งผลิตใน ProdTable เปลี่ยนเป็น 'Scheduled' โดยเกิดขึ้นเมื่อผู้ใช้เรียกใช้ฟังก์ชันจัดตาราง. บันทึก ตรวจหาเวลาที่ฟิลด์ ProdStatus ใน ProdTable เปลี่ยนเป็น 'Scheduled'. ประเภทเหตุการณ์ inferred | |||
| ปล่อยใบสั่งผลิต | กิจกรรมนี้หมายถึงใบสั่งผลิตได้รับอนุมัติและอนุญาตให้ดำเนินการในพื้นที่การผลิตแล้ว นี่คือหมุดหมายสำคัญที่ทำให้เอกสาร เช่น ใบสั่งงานและบัตรเส้นทางการผลิตพร้อมใช้งาน. | ||
| เหตุผลที่สำคัญ นี่คือจุดส่งต่องานอย่างเป็นทางการจากการวางแผนไปสู่การผลิต เวลาระหว่าง 'Scheduled' กับ 'Released' อาจบ่งชี้ถึงความล่าช้าในการอนุมัติหรือการตรวจสอบขั้นสุดท้าย ส่วนเวลาตั้งแต่ 'Released' ถึง 'Started' ใช้วัดความพร้อมของพื้นที่การผลิต. แหล่งข้อมูล บันทึกเหตุการณ์นี้เมื่อสถานะใบสั่งผลิตใน ProdTable เปลี่ยนเป็น 'Released' ซึ่งเกิดจากการดำเนินการของผู้ใช้ ไม่ว่าจะทำด้วยตนเองหรือโดยอัตโนมัติ. บันทึก ตรวจหาเวลาที่ฟิลด์ ProdStatus ใน ProdTable เปลี่ยนเป็น 'Released'. ประเภทเหตุการณ์ inferred | |||
| ปิดใบสั่งผลิต | กิจกรรมสุดท้ายนี้หมายถึงการปิดบัญชีใบสั่งผลิต โดยคำนวณและลงรายการต้นทุนทั้งหมดแล้ว และไม่สามารถทำรายการเพิ่มเติมกับใบสั่งนี้ได้. | ||
| เหตุผลที่สำคัญ เหตุการณ์นี้หมายถึงใบสั่งผลิตเสร็จสมบูรณ์ทั้งในด้านการผลิตจริงและการเงิน ความล่าช้าระหว่าง 'Reported as Finished' กับ 'Ended' อาจชี้ถึงปัญหาในการคำนวณต้นทุนหรือการปิดบัญชี. แหล่งข้อมูล บันทึกการเปลี่ยนสถานะขั้นสุดท้ายนี้เมื่อกำหนดฟิลด์ 'ProdStatus' ในตาราง 'ProdTable' เป็น 'Ended' โดยเกิดขึ้นเมื่อเรียกใช้การคำนวณต้นทุนและปิดใบสั่งผลิต. บันทึก ตรวจหาเวลาที่ฟิลด์ ProdStatus ใน ProdTable เปลี่ยนเป็น 'Ended'. ประเภทเหตุการณ์ inferred | |||
| รายงานการผลิตว่าเสร็จแล้ว | หมายถึงการผลิตสินค้าตามจำนวนที่ระบุเสร็จสมบูรณ์ และสินค้าสำเร็จรูปอยู่ในคลังแล้ว การอัปเดตสถานะสำคัญนี้จะทำให้เกิดรายการสินค้าคงคลัง. | ||
| เหตุผลที่สำคัญ เหตุการณ์นี้หมายถึงการผลิตจริงเสร็จสิ้น ใช้คำนวณอัตราการผลิตเสร็จตรงเวลา ระยะเวลาการผลิตจริง และปริมาณงานที่ผลิตได้. แหล่งข้อมูล บันทึกเหตุการณ์นี้เมื่อสถานะใบสั่งผลิตใน ProdTable เปลี่ยนเป็น 'Reported as finished' โดยเกิดขึ้นเมื่อมีการลงรายการสมุดรายวัน Report as Finished. บันทึก ตรวจหาเวลาที่ฟิลด์ ProdStatus ใน ProdTable เปลี่ยนเป็น 'Reported as finished'. ประเภทเหตุการณ์ inferred | |||
| เริ่มการผลิต | หมายถึงการเริ่มงานผลิตจริงของใบสั่งในพื้นที่การผลิต โดยมักบันทึกเมื่อเริ่มปฏิบัติงานหรือเริ่มงานแรกผ่านเทอร์มินัลหน้างานหรือการลงรายการสมุดรายวัน. | ||
| เหตุผลที่สำคัญ กิจกรรมนี้ระบุเวลาเริ่มผลิตจริง ซึ่งจำเป็นต่อการคำนวณความล่าช้าก่อนเริ่มผลิต การทำตามกำหนดการ และระยะเวลานำจริง. แหล่งข้อมูล บันทึกเหตุการณ์นี้เมื่อสถานะใบสั่งผลิตใน ProdTable เปลี่ยนเป็น 'Started' โดยมักเกิดขึ้นเมื่อบันทึกสมุดรายวันใบสั่งงานหรือบัตรเส้นทางการผลิตของงานแรก. บันทึก ตรวจหาเวลาที่ฟิลด์ ProdStatus ใน ProdTable เปลี่ยนเป็น 'Started'. ประเภทเหตุการณ์ inferred | |||
| สร้างใบสั่งผลิต | กิจกรรมนี้หมายถึงการสร้างใบสั่งผลิตเพื่อระบุความต้องการผลิตสินค้าตามจำนวนที่กำหนด โดยทั่วไปจะบันทึกเมื่อยืนยันใบสั่งผลิตที่วางแผนไว้ ทำให้เกิดรายการอย่างเป็นทางการในระบบพร้อมรหัสเฉพาะ. | ||
| เหตุผลที่สำคัญ นี่คือเหตุการณ์เริ่มต้นหลักของกระบวนการผลิต การวิเคราะห์เวลาตั้งแต่สร้างใบสั่งผลิตจนถึงขั้นตอนถัดไปช่วยวัดระยะเวลานำและประสิทธิภาพโดยรวมของการวางแผน. แหล่งข้อมูล อนุมานเหตุการณ์นี้จากเวลาที่สร้างรายการใบสั่งผลิตใน ProdTable โดยสถานะเริ่มต้นมักเป็น 'Created'. บันทึก บันทึกเวลาที่สร้างรายการใหม่ใน ProdTable ซึ่งมีค่า ProdStatus เป็น 'Created'. ประเภทเหตุการณ์ inferred | |||
| เบิกวัสดุสำหรับการผลิต | หมายถึงการเบิกวัตถุดิบที่จำเป็นสำหรับใบสั่งผลิตจากคลังสินค้า เพื่อเตรียมไว้ใช้ในการผลิต ระบบบันทึกเหตุการณ์นี้เมื่อทำงานเบิกวัตถุดิบหรือบันทึกสมุดรายวันรายการเบิกเสร็จแล้ว. | ||
| เหตุผลที่สำคัญ กิจกรรมนี้เป็นเงื่อนไขสำคัญก่อนเริ่มผลิต ความล่าช้าระหว่างการจัดตารางกับการเบิกวัสดุอาจชี้ให้เห็นปัญหาในการปฏิบัติงานคลังสินค้าหรือการจัดหาวัสดุ. แหล่งข้อมูล โดยทั่วไป เหตุการณ์นี้บันทึกไว้อย่างชัดเจนในตารางการจัดการคลังสินค้า (WHSWorkTable) หรือสมุดรายวันสินค้าคงคลัง (InventJournalTrans) ที่เชื่อมโยงกับใบสั่งผลิต. บันทึก บันทึกเวลาที่ลงรายการสมุดรายวันรายการเบิกซึ่งเชื่อมโยงกับใบสั่งผลิต. ประเภทเหตุการณ์ explicit | |||
| ปฏิบัติงานเสร็จ | กิจกรรมนี้หมายถึงการผลิตแต่ละขั้นตอนหรือแต่ละงานในเส้นทางการผลิตเสร็จสิ้น โดยทั่วไปใบสั่งผลิตหนึ่งรายการจะมีเหตุการณ์นี้หลายครั้ง. | ||
| เหตุผลที่สำคัญ การวิเคราะห์เวลาระหว่างงานช่วยระบุคอขวดภายในกระบวนการผลิต และทำให้เห็นขั้นตอนการทำงานในพื้นที่การผลิตได้ละเอียดขึ้น. แหล่งข้อมูล เหตุการณ์นี้บันทึกโดยตรงเมื่อมีการลงรายการสมุดรายวันบัตรเส้นทางการผลิต (ProdJournalRoute) ของแต่ละงาน เพื่อระบุว่าขั้นตอนนั้นเสร็จสิ้นแล้ว. บันทึก บันทึกเวลาที่ลงรายการ ProdJournalRoute แต่ละรายการซึ่งเชื่อมโยงกับใบสั่งผลิต. ประเภทเหตุการณ์ explicit | |||
| ประเมินใบสั่งผลิต | หมายถึงการคำนวณปริมาณการใช้วัสดุและต้นทุนโดยประมาณของใบสั่งผลิต ขั้นตอนการวางแผนที่สำคัญนี้ช่วยให้ทราบความต้องการด้านการเงินและวัสดุก่อนดำเนินการต่อ. | ||
| เหตุผลที่สำคัญ ความล่าช้าในการประเมินอาจเป็นคอขวดสำคัญในช่วงวางแผน การติดตามกิจกรรมนี้ช่วยให้พบจุดที่ไม่มีประสิทธิภาพในกระบวนการวางแผนต้นทุนและวัสดุ. แหล่งข้อมูล บันทึกเหตุการณ์นี้เมื่อสถานะใบสั่งผลิตใน ProdTable เปลี่ยนเป็น 'Estimated' โดยเกิดขึ้นเมื่อผู้ใช้เรียกใช้ฟังก์ชัน 'Estimate' กับใบสั่งผลิต. บันทึก ตรวจหาเวลาที่ฟิลด์ ProdStatus ใน ProdTable เปลี่ยนเป็น 'Estimated'. ประเภทเหตุการณ์ inferred | |||
| ปรับใบสั่งผลิต | หมายถึงการเปลี่ยนแปลงสำคัญของใบสั่งผลิตหลังจากปล่อยใบสั่งแล้ว เช่น การเปลี่ยนจำนวนหรือวันที่ อนุมานเหตุการณ์นี้ได้จากการเปรียบเทียบฟิลด์สำคัญก่อนและหลังการเปลี่ยนแปลง. | ||
| เหตุผลที่สำคัญ การปรับใบสั่งบ่อยครั้งอาจบ่งชี้ว่าการวางแผนไม่เสถียรหรือความต้องการผันผวน ซึ่งทำให้เกิดความไม่มีประสิทธิภาพและต้องทำงานซ้ำ ข้อมูลนี้ช่วยวัดความถี่และผลกระทบของการเปลี่ยนแปลงดังกล่าว. แหล่งข้อมูล อนุมานเหตุการณ์นี้โดยวิเคราะห์บันทึกการเปลี่ยนแปลงหรือเปรียบเทียบสแนปชอตของรายการใน ProdTable เช่น ฟิลด์ 'QtySched' หรือ 'SchedEnd' หลังสถานะใบสั่งเปลี่ยนเป็น 'Released'. บันทึก ตรวจหาการเปลี่ยนแปลงฟิลด์สำคัญ เช่น จำนวนหรือวันที่ ใน ProdTable หลังเวลาที่เกิดเหตุการณ์ 'Released'. ประเภทเหตุการณ์ calculated | |||
| ผ่านการตรวจสอบคุณภาพ | หมายถึงการตรวจสอบและยืนยันใบสั่งตรวจสอบคุณภาพที่เกี่ยวข้องกับรอบการผลิตเสร็จสมบูรณ์และผ่านเกณฑ์ ซึ่งยืนยันว่าสินค้าที่ผลิตได้ตรงตามมาตรฐานคุณภาพที่กำหนด. | ||
| เหตุผลที่สำคัญ นี่คือหมุดหมายสำคัญของกระบวนการตรวจสอบคุณภาพ ระยะเวลาตั้งแต่สร้างใบสั่งตรวจสอบจนถึงผ่านการตรวจสอบช่วยให้เห็นประสิทธิภาพของทีม QA. แหล่งข้อมูล อนุมานเหตุการณ์นี้จากการเปลี่ยนสถานะรายการใน InventQualityOrderTable เป็น 'Pass' โดยค่าเฉพาะของสถานะอาจแตกต่างกันไป. บันทึก ตรวจหาเวลาที่สถานะของรายการ InventQualityOrderTable ที่เกี่ยวข้องเปลี่ยนเป็น 'Pass'. ประเภทเหตุการณ์ inferred | |||
| ยกเลิกใบสั่งผลิต | หมายถึงการยกเลิกใบสั่งผลิตก่อนดำเนินการเสร็จสิ้น ซึ่งเป็นจุดสิ้นสุดอีกแบบหนึ่งของกระบวนการที่ไม่สำเร็จ. | ||
| เหตุผลที่สำคัญ การติดตามการยกเลิกช่วยให้ทราบสาเหตุที่กระบวนการไม่สำเร็จ เช่น ความต้องการเปลี่ยนแปลงหรือข้อผิดพลาดในการวางแผน หากอัตราการยกเลิกสูง อาจบ่งชี้ถึงปัญหาเชิงระบบ. แหล่งข้อมูล อนุมานสถานะสิ้นสุดอีกแบบหนึ่งนี้จากการเปลี่ยนสถานะ ค่าเฉพาะอาจแตกต่างกันไป แต่มักเกิดจากการเปลี่ยนสถานะใบสั่งกลับไปเป็นสถานะก่อนหน้าและระบุว่ายกเลิกแล้ว. บันทึก ตรวจหาการเปลี่ยนสถานะที่บ่งชี้ว่ามีการยกเลิก อาจต้องวิเคราะห์ระบบเพิ่มเติมเพื่อระบุสถานะดังกล่าว. ประเภทเหตุการณ์ inferred | |||
| สร้างใบสั่งตรวจสอบคุณภาพ | สร้างใบสั่งตรวจสอบคุณภาพเพื่อตรวจสอบผลผลิตจากใบสั่งผลิต เหตุการณ์นี้หมายถึงการเริ่มกระบวนการประกันคุณภาพของสินค้าที่ผลิต. | ||
| เหตุผลที่สำคัญ การติดตามกระบวนการตรวจสอบคุณภาพช่วยให้เข้าใจระยะเวลานำทั้งหมด หากการตรวจสอบล่าช้า สินค้าอาจไม่พร้อมจัดส่งหรือใช้ในกระบวนการถัดไป. แหล่งข้อมูล เหตุการณ์นี้บันทึกโดยตรงเมื่อมีการสร้างรายการใน InventQualityOrderTable ที่อ้างอิงใบสั่งผลิตต้นทาง. บันทึก บันทึกเวลาที่สร้างใบสั่งตรวจสอบคุณภาพใน InventQualityOrderTable ซึ่งเชื่อมโยงกับรหัสใบสั่งผลิต. ประเภทเหตุการณ์ explicit | |||
คู่มือการดึงข้อมูล
ขั้นตอน
- ไปที่ Data Management Workspace: ลงชื่อเข้าใช้ Microsoft Dynamics 365 Finance and Operations ใช้แถบค้นหาเพื่อค้นหาและเปิด workspace
Data management - สร้างโปรเจกต์ส่งออกใหม่: ใน workspace ให้เลือกไทล์
Exportเพื่อสร้างโปรเจกต์ส่งออกข้อมูลใหม่ ตั้งชื่อโปรเจกต์ให้สื่อความหมาย เช่นProcessMind_Production_Orders - เลือกรูปแบบไฟล์ส่งออก: ในการกำหนดค่าโปรเจกต์ ให้เลือกรูปแบบข้อมูลที่ต้องการ เช่น CSV หรือ Excel ตั้งค่าตัวเลือก
Entityและระบุรายละเอียดรูปแบบ แนะนำให้ใช้ CSV เพื่อประสิทธิภาพและความเข้ากันได้ - เพิ่มเอนทิตีข้อมูลที่จำเป็น: เพิ่มเอนทิตีข้อมูลที่จำเป็นลงในโปรเจกต์เพื่อเก็บเหตุการณ์ใบสั่งผลิต โดยเพิ่มเอนทิตีต่อไปนี้:
ใบสั่งผลิต,Production order route transactions,Inventory quality ordersและProduction picking list journal linesสำหรับแต่ละเอนทิตี ให้เลือกฟิลด์ที่เกี่ยวข้องทั้งหมดตามที่ระบุไว้ในส่วน query - ใช้ตัวกรองข้อมูล: สำหรับแต่ละเอนทิตี ให้ใช้ตัวเลือก
ตัวกรองเพื่อกำหนดขอบเขตการส่งออก อย่างน้อยให้กรองตามCompanyเพื่อเลือกนิติบุคคลที่ถูกต้อง แนะนำอย่างยิ่งให้กรองช่วงวันที่จากฟิลด์วันที่สำคัญ เช่นCreation dateในเอนทิตีใบสั่งผลิตเพื่อจำกัดปริมาณข้อมูลให้อยู่ในระดับที่จัดการได้ เช่น 6 เดือนที่ผ่านมา - กำหนดค่าการส่งออกแบบเพิ่มเฉพาะข้อมูลใหม่ (ไม่บังคับ): หากต้องการวิเคราะห์ต่อเนื่อง ให้กำหนดโปรเจกต์สำหรับการส่งออกแบบเพิ่มเฉพาะข้อมูลใหม่ โดยติดตามการเปลี่ยนแปลงในเอนทิตีต้นทาง เพื่อดึงเฉพาะระเบียนใหม่หรือระเบียนที่แก้ไขนับจากการส่งออกครั้งก่อน ซึ่งช่วยลดเวลาในการส่งออกได้มาก
- เรียกใช้งานการส่งออก: เมื่อกำหนดค่าโปรเจกต์แล้ว ให้เริ่มส่งออกโดยคลิก
Exportในแถบการดำเนินการ คุณสามารถเรียกใช้ทันทีหรือตั้งเวลาเป็นงานชุดที่ทำซ้ำได้ - ดาวน์โหลดไฟล์ที่ส่งออก: เมื่องานส่งออกเสร็จสมบูรณ์ ให้ไปที่ประวัติงานแล้วดาวน์โหลดแพ็กเกจ ZIP ซึ่งมีไฟล์ข้อมูลแยกตามแต่ละเอนทิตีที่เลือก
- แปลงข้อมูลเป็นบันทึกเหตุการณ์: ไฟล์ที่ส่งออกเป็นข้อมูลดิบจากตาราง ไม่ใช่บันทึกเหตุการณ์ที่จัดรูปแบบแล้ว คุณต้องใช้เครื่องมือภายนอก เช่น สคริปต์ Python, Power Query ใน Excel/Power BI หรือเครื่องมือ ETL เพื่อประมวลผลและรวมข้อมูลจากไฟล์เหล่านี้ ใช้ตรรกะการแปลงที่ระบุไว้ในส่วน query เพื่อปรับฟิลด์วันที่และสถานะจากเอนทิตีต่าง ๆ ให้เป็นไฟล์บันทึกเหตุการณ์เดียว โดยมีหนึ่งแถวต่อกิจกรรม
- จัดโครงสร้างบันทึกเหตุการณ์ฉบับสมบูรณ์: ตรวจสอบว่าไฟล์ CSV ที่แปลงแล้วมีคอลัมน์ที่ต้องใช้ ได้แก่
ProductionOrderNumber,ActivityName,EventTime,SourceSystemและLastDataUpdateรวมถึงแอตทริบิวต์ที่แนะนำ ไฟล์ควรมีแถวส่วนหัวและพร้อมอัปโหลดไปยัง ProcessMind.
การกำหนดค่า
- เอนทิตีข้อมูลหลัก: การดึงข้อมูลนี้ต้องส่งออกเอนทิตีหลายรายการแล้วนำมาเชื่อมกันภายหลัง เอนทิตีหลัก ได้แก่
Production orders(ProdTable),Production order route transactions(ProdRouteTrans) และInventory quality orders(InventQualityOrderTable). - การกรองช่วงวันที่: ควรกำหนดตัวกรองวันที่เสมอเพื่อควบคุมปริมาณข้อมูล แนวทางที่แนะนำคือกรองเอนทิตี
Production ordersตามCreation date(CREATEDDATETIME) ย้อนหลัง 3 ถึง 6 เดือน เพื่อให้ได้ข้อมูลกระบวนการล่าสุดที่ครบถ้วน โดยไม่ทำให้ระบบรับภาระมากเกินไป. - ตัวกรองบริษัท: ต้องกำหนดตัวกรองสำหรับบริษัทหรือนิติบุคคลที่ต้องการวิเคราะห์ โดยใช้ตัวเลือก
Filterของแต่ละเอนทิตีในโครงการส่งออก. - การส่งข้อมูลทั้งหมดหรือแบบเพิ่มเฉพาะข้อมูลใหม่: ในการดึงข้อมูลครั้งแรก ต้องส่งข้อมูลทั้งหมด สำหรับการอัปเดตครั้งต่อไป แนะนำให้ตั้งค่าการติดตามการเปลี่ยนแปลงในเอนทิตีและส่งออกเฉพาะข้อมูลใหม่ เพื่อเพิ่มประสิทธิภาพและลดปริมาณข้อมูล.
- ข้อกำหนดเบื้องต้น: ผู้ใช้ที่เรียกใช้งานส่งออกต้องมีบทบาทด้านความปลอดภัยที่เหมาะสม โดยทั่วไปต้องมีบทบาท
Data management administratorหรือบทบาทที่มีสิทธิ์เข้าถึงเอนทิตีข้อมูลที่จำเป็น.
ตัวอย่างคำค้น sql
/*
This is not a runnable script but a configuration and transformation plan for the Dynamics 365 Data Management Framework.
**Step 1: Configure the Export Project**
Export the following entities with the specified fields:
1. **Entity: Production orders (ProdTable)**
* `ProductionOrderNumber` (PRODID)
* `ProductionOrderStatus` (PRODSTATUS)
* `CreationDate` (CREATEDDATETIME)
* `LastUpdateDateStatusEstimate` (LASTUPDATEDATESTATUSESTIMATE)
* `LastUpdateDateStatusScheduled` (LASTUPDATEDATESTATUSSCHEDULED)
* `ReleaseDate` (RELEASEDATETIME)
* `StartDate` (STARTEDDATETIME)
* `ReportedFinishedDate` (REPORTEDFINISHEDDATETIME)
* `LastUpdateDateStatusEnded` (LASTUPDATEDATESTATUSENDED)
* `ModifiedDateTime` (MODIFIEDDATETIME)
* `CreatedByUser` (CREATEDBY)
* `ProductionSite` (INVENTSITEID)
* `ProductNumber` (ITEMID)
* `ProductionType` (PRODTYPE)
* `Quantity` (QTYsched)
* `ActualQuantity` (QTYCALC)
* `DeliveryDate` (DLVDATE)
2. **Entity: Production order route transactions (ProdRouteTrans)**
* `ProductionOrderNumber` (PRODID)
* `OperationNumber` (OPRNUM)
* `TransactionDate` (TRANSDATE)
* `TransactionTime` (TRANSTIME)
* `CreatedDateTime` (CREATEDDATETIME)
* `CreatedByUser` (CREATEDBY)
3. **Entity: Inventory quality orders (InventQualityOrderTable)**
* `QualityOrderNumber` (INVENTQUALITYORDERID)
* `ReferenceType` (REFTYPE)
* `ReferenceNumber` (PRODID)
* `QualityOrderStatus` (STATUS)
* `CreationDate` (CREATEDDATETIME)
* `ModifiedDateTime` (MODIFIEDDATETIME)
4. **Entity: Production picking list journal lines (ProdJournalBOM)**
* `JournalId` (JOURNALID)
* `ProductionOrderNumber` (PRODID)
* `PostedDateTime` (POSTEDDATETIME)
* `CreatedByUser` (CREATEDBY)
**Step 2: Apply Transformation Logic (Post-Export)**
Use a script or ETL tool to transform the exported files into a single event log CSV. For each row in the source files, generate events as described below.
*/
-- Production Order Created
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Created' AS ActivityName,
CREATEDDATETIME AS EventTime,
PRODSTATUS AS ProductionOrderStatus,
DLVDATE AS PlannedStartDate,
-- [Logic to calculate PlannedEndDate] AS PlannedEndDate,
CREATEDBY AS UserId,
INVENTSITEID AS ProductionPlant,
ITEMID AS ProductNumber,
PRODTYPE AS ProductionType,
QTYCALC AS ActualQuantity,
-- [Your field for Production Priority] AS ProductionPriority
FROM ProdTable
WHERE CREATEDDATETIME IS NOT NULL
UNION ALL
-- Production Order Estimated
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Estimated' AS ActivityName,
LASTUPDATEDATESTATUSESTIMATE AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE LASTUPDATEDATESTATUSESTIMATE IS NOT NULL
UNION ALL
-- Production Order Scheduled
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Scheduled' AS ActivityName,
LASTUPDATEDATESTATUSSCHEDULED AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE LASTUPDATEDATESTATUSSCHEDULED IS NOT NULL
UNION ALL
-- Materials Picked For Production (based on the first picking list journal posting)
SELECT
PRODID AS ProductionOrderNumber,
'Materials Picked For Production' AS ActivityName,
MIN(POSTEDDATETIME) AS EventTime, -- Use the earliest posting time for a given order
-- Other attributes from ProdTable...
FROM ProdJournalBOM
WHERE POSTEDDATETIME IS NOT NULL
GROUP BY PRODID
UNION ALL
-- Production Order Released
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Released' AS ActivityName,
RELEASEDATETIME AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE RELEASEDATETIME IS NOT NULL
UNION ALL
-- Production Order Adjusted (inferred from modification after release)
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Adjusted' AS ActivityName,
MODIFIEDDATETIME AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE MODIFIEDDATETIME > RELEASEDATETIME AND PRODSTATUS NOT IN ('Ended', 'Cancelled') -- Example logic
UNION ALL
-- Production Started
SELECT
PRODID AS ProductionOrderNumber,
'Production Started' AS ActivityName,
STARTEDDATETIME AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE STARTEDDATETIME IS NOT NULL
UNION ALL
-- Operation Completed
SELECT
PRODID AS ProductionOrderNumber,
'Operation Completed' AS ActivityName,
CREATEDDATETIME AS EventTime,
-- Other attributes from ProdTable linked on PRODID...
FROM ProdRouteTrans
WHERE CREATEDDATETIME IS NOT NULL
UNION ALL
-- Production Reported As Finished
SELECT
PRODID AS ProductionOrderNumber,
'Production Reported As Finished' AS ActivityName,
REPORTEDFINISHEDDATETIME AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE REPORTEDFINISHEDDATETIME IS NOT NULL
UNION ALL
-- Quality Order Generated
SELECT
PRODID AS ProductionOrderNumber,
'Quality Order Generated' AS ActivityName,
CREATEDDATETIME AS EventTime,
-- Other attributes from ProdTable linked on PRODID...
FROM InventQualityOrderTable
WHERE REFTYPE = 'Production' AND CREATEDDATETIME IS NOT NULL
UNION ALL
-- Quality Inspection Passed
SELECT
PRODID AS ProductionOrderNumber,
'Quality Inspection Passed' AS ActivityName,
MODIFIEDDATETIME AS EventTime,
-- Other attributes from ProdTable linked on PRODID...
FROM InventQualityOrderTable
WHERE REFTYPE = 'Production' AND STATUS = 'Pass' AND MODIFIEDDATETIME IS NOT NULL
UNION ALL
-- Production Order Ended
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Ended' AS ActivityName,
LASTUPDATEDATESTATUSENDED AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE LASTUPDATEDATESTATUSENDED IS NOT NULL
UNION ALL
-- Production Order Cancelled
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Cancelled' AS ActivityName,
MODIFIEDDATETIME AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE PRODSTATUS = 'Stopped' -- Or the equivalent 'Cancelled' status enum value in your system ขั้นตอน
- ตั้งค่า BYOD ใน Dynamics 365: ตรวจสอบว่าตั้งค่าฟีเจอร์ 'Bring your own database' ในสภาพแวดล้อม Dynamics 365 for Finance and Operations แล้ว โดยต้องตั้งค่า Azure SQL Database และกำหนดการส่งออกข้อมูลจาก Dynamics 365
- เผยแพร่เอนทิตีที่ต้องใช้: จากพื้นที่ทำงาน 'Data management' ไปที่ 'Data entities' ค้นหาและเผยแพร่เอนทิตีหลักต่อไปนี้ไปยังฐานข้อมูล BYOD: ProdTable, ProdRouteTrans, InventPickingListJour และ InventQualityOrderTable ตรวจสอบว่าตั้งค่าให้ส่งออกซ้ำตามกำหนดแล้ว
- ตรวจสอบการซิงโครไนซ์ข้อมูล: ยืนยันว่าข้อมูลจากเอนทิตีที่เผยแพร่ซิงโครไนซ์ไปยัง Azure SQL Database เป้าหมายได้สำเร็จและสม่ำเสมอ ตรวจสอบประวัติงานส่งออกว่ามีข้อผิดพลาดหรือไม่
- เชื่อมต่อฐานข้อมูล BYOD: ใช้ไคลเอนต์ SQL เช่น SQL Server Management Studio (SSMS) หรือ Azure Data Studio เชื่อมต่อกับ Azure SQL Database ที่จัดเก็บข้อมูล Dynamics 365 ของคุณ
- เตรียมคำสั่ง SQL: เปิดหน้าต่างคำสั่งใหม่ แล้วคัดลอกคำสั่ง SQL ฉบับเต็มจากเอกสารนี้
- กำหนดพารามิเตอร์คำสั่งค้นหา: ค้นหาตัวแปรตัวอย่างในคำสั่ง แล้วแทนที่ '{StartDate}', '{EndDate}' และ '{CompanyCode}' ด้วยช่วงวันที่ที่ต้องการและ DataAreaId ของบริษัทที่ต้องการวิเคราะห์
- เรียกใช้คำสั่งค้นหา: เรียกใช้คำสั่ง SQL ที่แก้ไขแล้วกับฐานข้อมูล BYOD ระยะเวลาประมวลผลขึ้นอยู่กับปริมาณข้อมูลและช่วงวันที่ที่ระบุ
- ตรวจสอบผลลัพธ์: เมื่อคำสั่งทำงานเสร็จ ให้ตรวจสอบว่าผลลัพธ์มีคอลัมน์และข้อมูลที่คาดไว้สำหรับกิจกรรมทั้งหมดที่ดึงมา ชุดผลลัพธ์นี้คือบันทึกเหตุการณ์
- ส่งออกบันทึกเหตุการณ์: ส่งออกผลลัพธ์จากคำสั่งค้นหาเป็นไฟล์ CSV ไคลเอนต์ SQL ส่วนใหญ่มีฟังก์ชันบันทึกผลลัพธ์ลงไฟล์โดยตรง
- จัดรูปแบบสำหรับ ProcessMind: ตรวจสอบว่าไฟล์ CSV ที่ส่งออกใช้การเข้ารหัส UTF-8 และส่วนหัวคอลัมน์ตรงกับชื่อคุณลักษณะที่ ProcessMind ต้องการ เช่น CaseId, Activity และ Timestamp คำสั่งที่ให้มามีชื่อแทนคอลัมน์ที่ถูกต้องอยู่แล้ว
การกำหนดค่า
- เอนทิตีข้อมูลหลัก: คิวรีนี้ใช้เอนทิตีต่อไปนี้เป็นหลัก ซึ่งต้องส่งออกไปยัง BYOD ของคุณ:
PRODTABLE: มีข้อมูลส่วนหัวและสถานะของคำสั่งผลิตหลักPRODROUTETRANS: มีรายละเอียดการปฏิบัติงานผลิตแต่ละรายการและสถานะการดำเนินการเสร็จสิ้นINVENTPICKINGLISTJOUR: บันทึกการเบิกวัสดุสำหรับคำสั่งผลิตINVENTQUALITYORDERTABLE: ติดตามคำสั่งตรวจสอบคุณภาพที่เชื่อมโยงกับการผลิต
- ช่วงวันที่: แนะนำให้เริ่มจากช่วงวันที่จำกัด เช่น ข้อมูลย้อนหลัง 3 ถึง 6 เดือน เพื่อให้คิวรีทำงานได้ในเวลาที่เหมาะสม คิวรีใช้วันที่สร้างคำสั่งผลิต (
CREATEDDATETIMEจากPRODTABLE) เป็นตัวกรอง. - ตัวกรองรหัสบริษัท: ใช้ฟิลด์
DATAREAIDเพื่อกรองข้อมูลตามนิติบุคคลหรือบริษัทที่ต้องการ แทนที่ตัวแทน'{CompanyCode}'ด้วย ID ที่เกี่ยวข้อง เช่น 'usmf'. - ข้อกำหนดเบื้องต้น: วิธีนี้ต้องใช้สิทธิ์ผู้ดูแลระบบทั้งใน Dynamics 365 Finance and Operations เพื่อกำหนดค่า BYOD และสิทธิ์ Contributor ใน Azure SQL Database เพื่อเรียกใช้คิวรี.
- ประสิทธิภาพ: หากชุดข้อมูลมีขนาดใหญ่มากและครอบคลุมหลายปีหรือหลายบริษัท ให้เรียกใช้คิวรีนอกช่วงเวลาที่มีการใช้งานสูง คุณยังแบ่งการดึงข้อมูลเป็นช่วงเวลาสั้นๆ แล้วนำผลลัพธ์มารวมกันภายหลังได้.
ตัวอย่างคำค้น sql
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Created' AS ActivityName,
p.CREATEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.CREATEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYCALC AS ActualQuantity, -- Using calculated quantity at creation
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Estimated' AS ActivityName,
p.COSTCALCDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYCALC AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.COSTCALCDATETIME IS NOT NULL AND p.PRODSTATUS >= 2 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Scheduled' AS ActivityName,
p.SCHEDDATE AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYCALC AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.SCHEDDATE IS NOT NULL AND p.PRODSTATUS >= 3 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Materials Picked For Production' AS ActivityName,
pl.LEDGERVOUCHERPOSTEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
pl.CREATEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM INVENTPICKINGLISTJOUR pl
JOIN PRODTABLE p ON pl.INVENTREFID = p.PRODID AND pl.DATAREAID = p.DATAREAID
WHERE pl.LEDGERVOUCHERPOSTEDDATETIME IS NOT NULL AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Released' AS ActivityName,
p.RELEASEDATE AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.RELEASEDATE IS NOT NULL AND p.PRODSTATUS >= 4 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Adjusted' AS ActivityName,
p.MODIFIEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.RELEASEDATE IS NOT NULL AND p.MODIFIEDDATETIME > p.RELEASEDATE AND p.PRODSTATUS IN (4, 5) AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Started' AS ActivityName,
p.STARTEDUPDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.STARTEDUPDATETIME IS NOT NULL AND p.PRODSTATUS >= 5 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
prt.PRODID AS ProductionOrderNumber,
'Operation Completed' AS ActivityName,
prt.TRANSDATE AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
prt.CREATEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODROUTETRANS prt
JOIN PRODTABLE p ON prt.PRODID = p.PRODID AND prt.DATAREAID = p.DATAREAID
WHERE prt.POSTINGTYPE = 8 AND prt.TRANSDATE IS NOT NULL AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Reported As Finished' AS ActivityName,
p.LASTUPDDATEPRINT AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.PRODSTATUS = 6 AND p.LASTUPDDATEPRINT IS NOT NULL AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Quality Order Generated' AS ActivityName,
qo.CREATEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
qo.CREATEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM INVENTQUALITYORDERTABLE qo
JOIN PRODTABLE p ON qo.INVENTREFID = p.PRODID AND qo.DATAREAID = p.DATAREAID
WHERE qo.INVENTREFTYPE = 9 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Quality Inspection Passed' AS ActivityName,
qo.MODIFIEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
qo.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM INVENTQUALITYORDERTABLE qo
JOIN PRODTABLE p ON qo.INVENTREFID = p.PRODID AND qo.DATAREAID = p.DATAREAID
WHERE qo.INVENTREFTYPE = 9 AND qo.STATUS = 2 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Ended' AS ActivityName,
p.LASTUPDDATEPRINT AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.PRODSTATUS = 7 AND p.LASTUPDDATEPRINT IS NOT NULL AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Cancelled' AS ActivityName,
p.MODIFIEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.PRODSTATUS = 0 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'; ขั้นตอน
- ตรวจสอบว่ามี Power BI Desktop หรือเครื่องมืออื่นที่ได้รับอนุมัติและมี Power Query พร้อมใช้งาน และผู้ใช้มีสิทธิ์อ่านเอนทิตีข้อมูล Microsoft Dynamics 365 Manufacturing ที่จำเป็น ยืนยัน URL ของสภาพแวดล้อม นิติบุคคลหรือขอบเขตบริษัท และวิธียืนยันตัวตนที่ได้รับอนุมัติ.
- ใน Power BI Desktop ให้เลือก Get data แล้วเลือกตัวเชื่อมต่อ Dynamics 365 ที่ได้รับอนุมัติ หรือการเชื่อมต่อ OData หรือ Dataverse เฉพาะขององค์กร ใช้ [Your Dynamics 365 environment connection] และ [Your credentials] ตามที่ผู้ดูแลระบบกำหนด อย่าสมมติว่าเอนทิตี ปลายทาง หรือเส้นทางเมนูใดจะมีให้ใช้ในทุกการติดตั้ง.
- เลือกเอนทิตีส่วนหัวคำสั่งผลิต เอนทิตีการปฏิบัติงานหรือเส้นทางของคำสั่งผลิต เอนทิตีการเบิกวัสดุหรือรายการเบิก เอนทิตีการบันทึกผลการผลิต เอนทิตีคำสั่งตรวจสอบคุณภาพ และเอนทิตีตรวจสอบ ประวัติ หรือการติดตามการเปลี่ยนแปลงที่ได้รับอนุมัติ ซึ่งจำเป็นต่อการระบุการเปลี่ยนสถานะ แทนที่การอ้างอิงแหล่งข้อมูลแต่ละรายการในคิวรีด้วยเอนทิตีหรือคิวรีที่มีในสภาพแวดล้อมของคุณ.
- กำหนดขอบเขตการดึงข้อมูล ใช้ [Start date parameter], [End date parameter] และ [Your company or legal entity filter] จำกัดคิวรีให้เหลือคำสั่งผลิตในโรงงาน ผลิตภัณฑ์ ประเภทคำสั่ง และสถานะที่ต้องการ เก็บการประทับเวลาต้นทางที่จำเป็นต่อการแยกเหตุการณ์สร้าง ประเมิน กำหนดตารางเวลา เบิกวัสดุ ปล่อยคำสั่ง ปรับปรุง เริ่มงาน ดำเนินการเสร็จ รายงานว่าผลิตเสร็จ ตรวจสอบคุณภาพ ปิดงาน และยกเลิก.
- ใน Power Query ให้ปรับชื่อคอลัมน์ต้นทางและชนิดข้อมูลให้เป็นมาตรฐาน แปลงการประทับเวลาเหตุการณ์เป็นชนิด datetime ที่สอดคล้องกัน และปรับรหัส ค่าแสดงสถานะ บริษัท โรงงาน หมายเลขผลิตภัณฑ์ ผู้ใช้ ปริมาณ และลำดับความสำคัญให้เป็นรูปแบบเดียวกัน หากไม่มีฟิลด์ต้นทาง ให้คืนค่า null แทนการสร้างค่าเอง ใช้หมายเลขคำสั่งผลิตเป็นรหัสเคส.
- สร้างตารางเหตุการณ์แยกตามกิจกรรม แต่ละตารางต้องมี ProductionOrderNumber, ActivityName, EventTime, SourceSystem, LastDataUpdate, ProductionOrderStatus, PlannedStartDate, PlannedEndDate, UserId, ProductionPlant, ProductNumber, ProductionType, ActualQuantity และ ProductionPriority ชื่อกิจกรรมต้องเป็นค่าคงที่ที่ตรงกับหนึ่งใน 13 ชื่อที่กำหนด.
- ระบุ Production Order Adjusted จากแหล่งประวัติ การตรวจสอบ หรือการติดตามการเปลี่ยนแปลงก่อนและหลังที่ได้รับอนุมัติเท่านั้น เปรียบเทียบฟิลด์ที่เกี่ยวข้อง เช่น ปริมาณ วันที่วางแผน สถานะ โรงงาน ผลิตภัณฑ์ และลำดับความสำคัญ สร้างแถวเหตุการณ์การปรับปรุงสำหรับการเปลี่ยนแปลงที่เข้าเกณฑ์แต่ละครั้ง โดยใช้เวลาที่บันทึกการเปลี่ยนแปลง ห้ามอนุมานว่ามีการปรับปรุงจากภาพสถานะปัจจุบันของคำสั่งผลิตเพียงอย่างเดียว.
- รวมตารางกิจกรรมทั้ง 13 ตารางด้วย UNION ALL ลบแถวที่ไม่มีหมายเลขคำสั่งผลิตหรือไม่มีการประทับเวลาเหตุการณ์ แต่อย่าลบเหตุการณ์ที่เกิดซ้ำอย่างถูกต้อง เช่น การดำเนินงานเสร็จ การปรับปรุง หรือเหตุการณ์ด้านคุณภาพ เรียงตาม ProductionOrderNumber และ EventTime พร้อมใช้ลำดับรองที่แน่นอนเมื่อมีข้อมูล.
- โหลดตารางผลลัพธ์เข้า Power BI หรือส่งออกเป็น CSV หรือรูปแบบบันทึกเหตุการณ์อื่นที่ ProcessMind รองรับ ตรวจสอบให้แน่ใจว่าหัวคอลัมน์ที่ส่งออกตรงตามนี้ทุกประการ: ProductionOrderNumber, ActivityName, EventTime, SourceSystem, LastDataUpdate, ProductionOrderStatus, PlannedStartDate, PlannedEndDate, UserId, ProductionPlant, ProductNumber, ProductionType, ActualQuantity และ ProductionPriority.
- ก่อนอัปโหลดเข้า ProcessMind ให้ตรวจสอบว่ามีกิจกรรมที่จำเป็นทุกรายการเป็นแถวเหตุการณ์อย่างชัดเจน การประทับเวลาใช้เขตเวลาเดียวกัน มีค่า ProductionOrderNumber และ LastDataUpdate ระบุเวลาที่รีเฟรชข้อมูล ProcessMind อ่านบันทึกเหตุการณ์ตามข้อมูลที่ให้มา และจะไม่สร้างเหตุการณ์ที่ขาดหายขึ้นเอง.
การกำหนดค่า
- การเชื่อมต่อ: ใช้ตัวเชื่อมต่อ Power Query และวิธียืนยันตัวตนที่ได้รับอนุมัติสำหรับสภาพแวดล้อม Dynamics 365 แทนที่ [Your Dynamics 365 environment connection] และ [Your credentials] ด้วยค่าที่องค์กรอนุมัติ.
- เอนทิตีต้นทาง: เลือกเอนทิตีส่วนหัวคำสั่งผลิต การปฏิบัติงานหรือเส้นทาง การเบิกวัสดุหรือรายการเบิก การบันทึกผลการผลิต คำสั่งตรวจสอบคุณภาพ และเอนทิตีตรวจสอบหรือการติดตามการเปลี่ยนแปลงที่ได้รับอนุมัติและมีในสภาพแวดล้อม ชื่อและความพร้อมใช้งานของเอนทิตีแตกต่างกันตามการติดตั้ง โปรดตรวจสอบในเบราว์เซอร์ข้อมูลเมตา.
- ช่วงวันที่: เริ่มจากช่วง 3 ถึง 6 เดือน หากทำได้ ให้กรอง EventTime ที่แหล่งข้อมูล และขยายช่วงเมื่อทดสอบคำสั่งผลิตที่ใช้เวลานานหรือการเปลี่ยนสถานะย้อนหลัง.
- ตัวกรองบริษัทและโรงงาน: ใช้ [Your company or legal entity filter] และตัวกรองโรงงานผลิตที่จำเป็น หากเกี่ยวข้อง อย่าใช้ตัวกรองบริษัทแบบทั่วไป หากสภาพแวดล้อมมีหลายนิติบุคคลที่ใช้หมายเลขคำสั่งซ้ำกัน.
- ตัวกรองคำสั่งผลิต: กรองตามประเภทคำสั่งผลิต ผลิตภัณฑ์ โรงงาน สถานะ และช่วงหมายเลขคำสั่งที่ต้องการ อย่ากรองคำสั่งที่ยกเลิกหรือปิดงานออก หากต้องใช้ผลลัพธ์เหล่านี้ในการวิเคราะห์กระบวนการ.
- การรวมเหตุการณ์: เก็บเหตุการณ์การดำเนินงานเสร็จ การเบิกวัสดุ การตรวจสอบคุณภาพ และการปรับปรุงที่เกิดซ้ำไว้ อย่ารวมบันทึกให้เหลือเพียงหนึ่งแถวต่อคำสั่งผลิต.
- เขตเวลา: แปลงการประทับเวลาต้นทางทั้งหมดให้เป็นเขตเวลาเดียวกันและบันทึกเขตเวลาที่ใช้ หากแหล่งข้อมูลมีการประทับเวลาต้นทางหรือค่าออฟเซ็ตเขตเวลา ให้เก็บข้อมูลนั้นไว้.
- ข้อมูลการรีเฟรช: กำหนดค่า LastDataUpdate ให้เป็นเวลาที่รีเฟรชหรือดึงข้อมูลสำหรับทุกแถว หากดึงชุดข้อมูลทั้งหมดในการรีเฟรชครั้งเดียว สามารถใช้เวลารีเฟรชเดียวกันได้.
- ประสิทธิภาพ: ส่งตัวกรองวันที่ บริษัท โรงงาน และคำสั่งไปยังแหล่งข้อมูล เลือกเฉพาะคอลัมน์ที่จำเป็น หลีกเลี่ยงการรวมข้อมูลที่ไม่จำเป็น เตรียมคิวรีต้นทางที่ใช้ซ้ำไว้ และพิจารณาการรีเฟรชแบบเพิ่มเฉพาะข้อมูลใหม่สำหรับชุดข้อมูลขนาดใหญ่.
- ข้อกำหนดเบื้องต้น: ต้องมี Power BI Desktop หรือโฮสต์ Power Query ที่ได้รับอนุมัติ การเข้าถึงเครือข่ายไปยังสภาพแวดล้อม Dynamics 365 สิทธิ์อ่านที่ถูกต้องสำหรับเอนทิตีที่เลือกทั้งหมด และสิทธิ์ที่จำเป็นสำหรับ Dynamics 365 Manufacturing คลังสินค้า คุณภาพ การตรวจสอบ หรือการติดตามการเปลี่ยนแปลง.
- ข้อมูลที่ขึ้นอยู่กับการตั้งค่า: หากไม่ได้เปิดใช้แหล่งข้อมูลเหตุการณ์ที่จำเป็น ให้ใช้ [Configure based on your system] และบันทึกแหล่งข้อมูลที่ขาด ห้ามใช้ภาพสถานะปัจจุบันแทนเหตุการณ์ย้อนหลัง.
ตัวอย่างคำค้น sql
let
StartDate = #datetime(2026, 1, 1, 0, 0, 0),
EndDate = #datetime(2026, 6, 30, 23, 59, 59),
CompanyFilter = "[Your company or legal entity filter]",
SourceSystemValue = "Microsoft Dynamics 365 Manufacturing",
RefreshTime = DateTimeZone.RemoveZone(DateTimeZone.UtcNow()),
ProductionOrderHeader = [Your production order header query],
ProductionOrderOperation = [Your production order operation or route query],
MaterialPicking = [Your material picking or picking list query],
ProductionPosting = [Your production posting query],
QualityOrder = [Your quality order query],
ProductionOrderHistory = [Your approved production order audit or change tracking query],
Header = Table.SelectRows(ProductionOrderHeader, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
Operations = Table.SelectRows(ProductionOrderOperation, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
Picking = Table.SelectRows(MaterialPicking, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
Posting = Table.SelectRows(ProductionPosting, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
Quality = Table.SelectRows(QualityOrder, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
History = Table.SelectRows(ProductionOrderHistory, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
Created = Table.SelectRows(Header, each [EventType] = "Created" or [EventType] = "Firmed"),
Estimated = Table.SelectRows(Header, each [EventType] = "Estimated"),
Scheduled = Table.SelectRows(Operations, each [EventType] = "Scheduled"),
Picked = Table.SelectRows(Picking, each [EventType] = "Picked" or [EventType] = "Posted"),
Released = Table.SelectRows(Header, each [EventType] = "Released"),
Adjusted = Table.SelectRows(History, each [ChangedField] = "Quantity" or [ChangedField] = "PlannedStartDate" or [ChangedField] = "PlannedEndDate" or [ChangedField] = "Status" or [ChangedField] = "ProductionPlant" or [ChangedField] = "ProductNumber" or [ChangedField] = "ProductionPriority"),
Started = Table.SelectRows(Posting, each [EventType] = "Started"),
OperationCompleted = Table.SelectRows(Operations, each [EventType] = "Completed"),
ReportedFinished = Table.SelectRows(Posting, each [EventType] = "Reported as finished" or [EventType] = "Finished"),
QualityGenerated = Table.SelectRows(Quality, each [EventType] = "Generated" or [EventType] = "Created"),
QualityPassed = Table.SelectRows(Quality, each [EventType] = "Passed" or [EventType] = "Validated"),
Ended = Table.SelectRows(Header, each [EventType] = "Ended"),
Cancelled = Table.SelectRows(Header, each [EventType] = "Cancelled"),
ToEvent = (InputTable as table, Activity as text) as table =>
let
Selected = Table.SelectColumns(InputTable, {"ProductionOrderNumber", "EventTime", "ProductionOrderStatus", "PlannedStartDate", "PlannedEndDate", "UserId", "ProductionPlant", "ProductNumber", "ProductionType", "ActualQuantity", "ProductionPriority"}, MissingField.UseNull),
Named = Table.AddColumn(Selected, "ActivityName", each Activity, type text),
Source = Table.AddColumn(Named, "SourceSystem", each SourceSystemValue, type text),
Updated = Table.AddColumn(Source, "LastDataUpdate", each RefreshTime, type datetime),
Ordered = Table.ReorderColumns(Updated, {"ProductionOrderNumber", "ActivityName", "EventTime", "SourceSystem", "LastDataUpdate", "ProductionOrderStatus", "PlannedStartDate", "PlannedEndDate", "UserId", "ProductionPlant", "ProductNumber", "ProductionType", "ActualQuantity", "ProductionPriority"}),
Valid = Table.SelectRows(Ordered, each [ProductionOrderNumber] <> null and [ProductionOrderNumber] <> "" and [EventTime] <> null)
in
Valid,
EventsCreated = ToEvent(Created, "Production Order Created"),
EventsEstimated = ToEvent(Estimated, "Production Order Estimated"),
EventsScheduled = ToEvent(Scheduled, "Production Order Scheduled"),
EventsPicked = ToEvent(Picked, "Materials Picked For Production"),
EventsReleased = ToEvent(Released, "Production Order Released"),
EventsAdjusted = ToEvent(Adjusted, "Production Order Adjusted"),
EventsStarted = ToEvent(Started, "Production Started"),
EventsOperationCompleted = ToEvent(OperationCompleted, "Operation Completed"),
EventsReportedFinished = ToEvent(ReportedFinished, "Production Reported As Finished"),
EventsQualityGenerated = ToEvent(QualityGenerated, "Quality Order Generated"),
EventsQualityPassed = ToEvent(QualityPassed, "Quality Inspection Passed"),
EventsEnded = ToEvent(Ended, "Production Order Ended"),
EventsCancelled = ToEvent(Cancelled, "Production Order Cancelled"),
EventLog = Table.Combine({EventsCreated, EventsEstimated, EventsScheduled, EventsPicked, EventsReleased, EventsAdjusted, EventsStarted, EventsOperationCompleted, EventsReportedFinished, EventsQualityGenerated, EventsQualityPassed, EventsEnded, EventsCancelled}),
Typed = Table.TransformColumnTypes(EventLog, {{"ProductionOrderNumber", type text}, {"ActivityName", type text}, {"EventTime", type datetime}, {"SourceSystem", type text}, {"LastDataUpdate", type datetime}, {"ProductionOrderStatus", type text}, {"PlannedStartDate", type datetime}, {"PlannedEndDate", type datetime}, {"UserId", type text}, {"ProductionPlant", type text}, {"ProductNumber", type text}, {"ProductionType", type text}, {"ActualQuantity", type number}, {"ProductionPriority", type text}}),
Sorted = Table.Sort(Typed, {{"ProductionOrderNumber", Order.Ascending}, {"EventTime", Order.Ascending}, {"ActivityName", Order.Ascending}})
in
Sorted พร้อมเริ่มต้นหรือยัง?
เทมเพลตนี้มีข้อมูลที่จำเป็นสำหรับเริ่มดึงและวิเคราะห์ข้อมูลการวางแผนการผลิต เริ่มปรับปรุงการปฏิบัติการให้มีประสิทธิภาพสูงสุดได้วันนี้.
เพิ่มประสิทธิภาพสูงสุด ปรับปรุงการวางแผนการผลิตได้ตั้งแต่วันนี้
ระบุคอขวดและลดเวลารอบการผลิตได้ 30% ขึ้นไป.
ไม่ต้องใช้บัตรเครดิต ตั้งค่าได้ในไม่กี่นาที.