แชร์ผ่าน


รวมกับระบบการดำเนินการผลิตของบุคคลที่สาม

องค์กรการผลิตบางแห่งที่ใช้ Microsoft Dynamics 365 Supply Chain Management ใช้ฟังก์ชันดั้งเดิมใน Dynamics 365 เพื่อควบคุมกิจกรรมการผลิตของเครื่องจักร อุปกรณ์ และบุคลากร อย่างไรก็ตาม องค์กรการผลิตอื่นๆ โดยเฉพาะอย่างยิ่งองค์กรที่มีความต้องการการผลิตขั้นสูง จะใช้ระบบการดำเนินการผลิตของบุคคลที่สาม (MES) แทน องค์กรอาจเลือกโซลูชัน MES ของบุคคลที่สาม ตัวอย่างเช่น เนื่องจากได้รับการออกแบบมาโดยเฉพาะกับอุตสาหกรรมในแนวตั้ง

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

โซลูชันนี้ช่วยให้การตั้งค่านั้นเร็วขึ้น ง่ายขึ้น และถูกกว่า สำหรับผู้ใช้ Supply Chain Management ในการรวมเข้ากับ MES ของบุคคลที่สาม ซึ่งนำเสนอคุณลักษณะดังต่อไปนี้:

  • เหตุการณ์ทางธุรกิจและอินเทอร์เฟสที่สนับสนุน กระบวนการการดำเนินการผลิตหลัก
  • แดชบอร์ดควบคุมส่วนกลางซึ่งคุณสามารถติดตามประวัติการประมวลผลเหตุการณ์ และแก้ไขปัญหาและแก้ไขกระบวนการที่ล้มเหลว

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

สถานการณ์จำลองการรวมทั่วไป

เปิดคุณลักษณะการรวม MES

ก่อนที่คุณจะสามารถใช้คุณลักษณะนี้ได้ ผู้ดูและระบบต้องเปิดคุณลักษณะในระบบของคุณตามที่อธิบายไว้ในกระบวนงานต่อไปนี้

  1. ไปที่ การจัดการระบบ > การตั้งค่า > การตั้งค่าคอนฟิกลิขสิทธิ์
  2. ตรวจสอบให้แน่ใจว่าคีย์ลิขสิทธิ์ เวลาและการเข้างาน เปิดใช้งานอยู่ (แสดงเครื่องหมายถูก) คุณต้องใช้คีย์ลิขสิทธิ์นี้เนื่องจากทำหน้าที่ควบคุมฟังก์ชันการทำงานและข้อมูลของระบบการดำเนินการผลิต หากไม่ได้เปิดใช้งาน ให้ปฏิบัติตามขั้นตอนต่อไปนี้:
    1. วางระบบของคุณให้เข้าสู่โหมดการบำรุงรักษา ตามที่อธิบายไว้ใน โหมดการบำรุงรักษา
    2. บนหน้า การตั้งค่าคอนฟิกลิขสิทธิ์ ให้เลือกกล่องกาเครื่องหมาย เวลาและการเข้างาน
    3. ปิดโหมดการบำรุงรักษาตามที่อธิบายไว้ใน โหมดการบำรุงรักษา
  3. ไปที่ การดูแลระบบ > พื้นที่ทำงาน > การจัดการคุณลักษณะ
  4. ใช้พื้นที่ทำงาน การจัดการคุณลักษณะ เพื่อเปิดคุณลักษณะ การรวมกับระบบการดำเนินการผลิต (เริ่มจาก Supply Chain Management รุ่น 10.0.29 คุณลักษณะนี้จะเปิดตามค่าเริ่มต้น เริ่มจาก Supply Chain Management รุ่น 10.0.32 คุณลักษณะนี้เป็นแบบบังคับและไม่สามารถปิดได้)

กระบวนการที่พร้อมใช้งานเพื่อการรวม MES

คุณสามารถเปิดใช้งานกระบวนการใดๆ หรือกระบวนการทั้งหมดต่อไปนี้เพื่อการรวม

ชื่อกระบวนการ คำอธิบาย
การปล่อยใบสั่งผลิตและสถานะของใบสั่งผลิตเปลี่ยนแปลงเหตุการณ์ทางธุรกิจ กระบวนการนี้แสดงเหตุการณ์ทางธุรกิจที่ MES สามารถรอรับข้อมูลเกี่ยวกับใบสั่งผลิตที่ควรผลิตได้ ข้อมูลอ้างอิงที่เกี่ยวข้องกับใบสั่งผลิตคาดว่าจะมีการใช้ร่วมกันจาก Supply Chain Management กับ MES โดยผ่าน Open Data Protocol (OData) หรือเอนทิตี้ข้อมูล
เริ่มใบสั่งผลิต กระบวนการนี้จะให้ Supply Chain Management กับข้อมูลเกี่ยวกับใบสั่งผลิตที่เริ่มต้น โดยใช้ MES ซึ่งช่วยให้มั่นใจว่าทั้งสองระบบจะมีมุมมองล่าสุดของกิจกรรมการผลิตทั้งหมด
รายงานปริมาณที่ผลิตหรือของเสีย กระบวนการนี้จะให้ Supply Chain Management ที่มีข้อมูลเกี่ยวกับจำนวนสินค้าดีและสินค้าเสียที่ได้รายงานในงานการผลิต โดยใช้ MES ซึ่งช่วยให้มั่นใจว่าผู้ควบคุมงานของการผลิตมีมุมมองปัจจุบันของความคืบหน้าของแผนการผลิต
รายงานการใช้วัตถุดิบ กระบวนการนี้จะให้ Supply Chain Management ที่มีข้อมูลจาก MES เกี่ยวกับปริมาณของวัตถุดิบที่ใช้ ซึ่งทำให้เรกคอร์ดสินค้าคงคลังที่เป็นปัจจุบันพร้อมใช้งานต่อกระบวนการที่สําคัญอื่นๆ เช่น การวางแผนและการขาย
รายงานเวลาที่ใช้ไปในการดําเนินงาน กระบวนการนี้จะให้ Supply Chain Management ที่มีข้อมูลเกี่ยวกับเวลาที่ใช้ในการดําเนินงานเฉพาะ
ใบสั่งผลิตสิ้นสุด กระบวนการนี้จะแจ้งให้ Supply Chain Management ทราบว่า MES ได้อัปเดตใบสั่งผลิตเป็นสถานะสุดท้ายของ การสิ้นสุด สถานะนี้บ่งชี้ว่าจะไม่มีการผลิตปริมาณมากบนใบสั่งผลิต

ตรวจสอบข้อความขาเข้า

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

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

หน้า การรวมระบบการดำเนินการผลิต จะทำงานในลักษณะเดียวกับหน้า ข้อความของตัวประมวลผลข้อความ และแสดงฟังก์ชันที่คล้ายกันมาก (นอกเหนือจากข้อความชนิดอื่นๆ ยังมีการแสดงข้อความ MES ด้วย) สำหรับข้อมูลเกี่ยวกับวิธีการใช้หน้าใดหน้าหนึ่งเพื่อตรวจสอบข้อความ ค้นหาและแก้ไขข้อความที่ล้มเหลว และอื่นๆ ดูที่ หน้าข้อความของตัวประมวลผลข้อความ

เรียก API

เมื่อต้องการเรียก MES Integration API ให้ส่งคำร้อง POST ไปยัง URL ปลายทางต่อไปนี้:

/api/services/SysMessageServices/SysMessageService/SendMessage

เนื้อหาของการร้องขอที่คุณส่งควรคล้ายกับตัวอย่างต่อไปนี้ แทนที่ค่า _companyId, _messageType และ _messageContent ตามต้องการ หากต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับข้อความชนิดต่างๆ ที่ API สนับสนุน และวิธีการออกแบบเนื้อหา โปรดดูที่ส่วนถัดไป

{
    "_companyId": "USMF",
    "_messageQueue": "JmgMES3P",
    "_messageType": "ProdProductionOrderReportFinished",
    "_messageContent":
    "{\"ProductionOrderNumber\": \"P000123\", \"ReportFinishedLines\": [{\"ItemNumber\": \"A0001\", \"ReportedGoodQuantity\": 10, \"ReportAsFinishedDate\": \"2021-01-01\"}]}"
}

ชนิดและเนื้อหาของข้อความ API

ส่วนนี้อธิบายข้อความแต่ละชนิดที่สามารถแลกเปลี่ยนผ่าน MES Integration API

เริ่มข้อความใบสั่งผลิต

สำหรับข้อความ เริ่มใบสั่งผลิต ค่า _messageType คือ ProdProductionOrderStart ตารางต่อไปนี้แสดงฟิลด์ที่ข้อความนี้สนับสนุน

ชื่อฟิลด์ สถานะ ชนิด
ProductionOrderNumber จำเป็น สตริง
StartedQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
StartedDate ไม่จำเป็นต้องระบุ วันที่
AutomaticBOMConsumptionRule ไม่จำเป็นต้องระบุ Enum (FlushingPrincip | Always | Never)

ข้องความรายงานเมื่อเสร็จสิ้น

สำหรับข้อความ รายงานเมื่อเสร็จสิ้น ค่า _messageType คือ ProdProductionOrderReportFinished ตารางต่อไปนี้แสดงฟิลด์ที่ข้อความนี้สนับสนุน

ชื่อฟิลด์ สถานะ ชนิด
ProductionOrderNumber จำเป็น สตริง
ReportFinishedLines จำเป็น รายการ (อย่างน้อยหนึ่งรายการ) แต่ละบรรทัดมี payload ที่อธิบายไว้ในตารางถัดไป

ตารางต่อไปนี้จะแสดงฟิลด์ที่แต่ละบรรทัดในส่วน ReportFinishedLines ของข้อความสนับสนุน ProdProductionOrderReportFinished

ชื่อฟิลด์ สถานะ ชนิด
LineNumber ไม่จำเป็นต้องระบุ จำนวนจริง
ItemNumber ไม่จำเป็นต้องระบุ สตริง
ProductionType ไม่จำเป็นต้องระบุ Enum (MainItem | Formula | BOM | Co_Product | By_Product | None) ที่ขยายได้
ReportedErrorQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
ReportedGoodQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
ReportedErrorCatchWeightQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
ReportedGoodCatchWeightQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
AcceptError ไม่จำเป็นต้องระบุ Enum (Yes | No)
ErrorCause ไม่จำเป็นต้องระบุ Enum (None | Material | Machine | OperatingStaff) ที่ขยายได้
ExecutedDateTime ไม่จำเป็นต้องระบุ วันที่และเวลา
ReportAsFinishedDate ไม่จำเป็นต้องระบุ วันที่
AutomaticBOMConsumptionRule ไม่จำเป็นต้องระบุ Enum (FlushingPrincip | Always | Never)
AutomaticRouteConsumptionRule ไม่จำเป็นต้องระบุ Enum (RouteDependent | Always | Never)
RespectFlushingPrincipleDuringOverproduction ไม่จำเป็นต้องระบุ Enum (Yes | No)
JournalNameId ไม่จำเป็นต้องระบุ สตริง
PickingListJournalNameId ไม่จำเป็นต้องระบุ สตริง
RouteCardJournalNameId ไม่จำเป็นต้องระบุ สตริง
FromOperationNumber ไม่จำเป็นต้องระบุ เลขจำนวนเต็ม
ToOperationNumber ไม่จำเป็นต้องระบุ เลขจำนวนเต็ม
InventoryLotId ไม่จำเป็นต้องระบุ สตริง
BaseValue ไม่จำเป็นต้องระบุ สตริง
EndJob ไม่จำเป็นต้องระบุ Enum (Yes | No)
EndPickingList ไม่จำเป็นต้องระบุ Enum (Yes | No)
EndRouteCard ไม่จำเป็นต้องระบุ Enum (Yes | No)
PostNow ไม่จำเป็นต้องระบุ Enum (Yes | No)
AutoUpdate ไม่จำเป็นต้องระบุ Enum (Yes | No)
ProductColorId ไม่จำเป็นต้องระบุ สตริง
ProductConfigurationId ไม่จำเป็นต้องระบุ สตริง
ProductSizeId ไม่จำเป็นต้องระบุ สตริง
ProductStyleId ไม่จำเป็นต้องระบุ สตริง
ProductVersionId ไม่จำเป็นต้องระบุ สตริง
ItemBatchNumber ไม่จำเป็นต้องระบุ สตริง
ProductSerialNumber ไม่จำเป็นต้องระบุ สตริง
LicensePlateNumber ไม่จำเป็นต้องระบุ สตริง
InventoryStatusId ไม่จำเป็นต้องระบุ สตริง
ProductionWarehouseId ไม่จำเป็นต้องระบุ สตริง
ProductionSiteId ไม่จำเป็นต้องระบุ สตริง
ProductionWarehouseLocationId ไม่จำเป็นต้องระบุ สตริง
InventoryDimension1 ถึง InventoryDimension12 ไม่จำเป็นต้องระบุ สตริง

มิติที่ขยายได้ 12 มิติ (InventoryDimension1 ผ่าน InventoryDimension12) ต้องมีการเลือกเอง และไม่ได้ใช้เสมอไป สำหรับข้อมูลเพิ่มเติม ดูที่ เพิ่มมิติสินค้าคงคลังใหม่โดยใช้ส่วนขยาย

ข้อความปริมาณการใช้วัสดุ (รายการเบิกสินค้า)

สำหรับข้อความ ปริมาณการใช้วัสดุ (รายการเบิกสินค้า) ค่า _messageType คือ ProdProductionOrderPickingList ตารางต่อไปนี้แสดงฟิลด์ที่ข้อความนี้สนับสนุน

ชื่อฟิลด์ สถานะ ชนิด
ProductionOrderNumber จำเป็น สตริง
JournalNameId ไม่จำเป็นต้องระบุ สตริง
PickingListLines จำเป็น รายการ (อย่างน้อยหนึ่งรายการ) แต่ละบรรทัดมี payload ที่อธิบายไว้ในตารางถัดไป

ตารางต่อไปนี้จะแสดงฟิลด์ที่แต่ละบรรทัดในส่วน PickingListLines ของข้อความสนับสนุน ProdProductionOrderPickingList

ชื่อฟิลด์ สถานะ ชนิด
ItemNumber จำเป็น สตริง
ConsumptionBOMQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
ProposalBOMQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
ScrapBOMQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
BOMUnitSymbol ไม่จำเป็นต้องระบุ สตริง
ConsumptionInventoryQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
ProposalInventoryQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
ConsumptionCatchWeightQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
ProposalCatchWeightQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
ConsumptionDate ไม่จำเป็นต้องระบุ วันที่
OperationNumber ไม่จำเป็นต้องระบุ เลขจำนวนเต็ม
LineNumber ไม่จำเป็นต้องระบุ จำนวนจริง
PositionNumber ไม่จำเป็นต้องระบุ สตริง
IsConsumptionEnded ไม่จำเป็นต้องระบุ Enum (Yes | No)
ErrorCause ไม่จำเป็นต้องระบุ Enum (None | Material | Machine | OperatingStaff) ที่ขยายได้
InventoryLotId ไม่จำเป็นต้องระบุ สตริง

เวลาที่ใช้ข้อความการดําเนินงาน (บัตรกระบวนการผลิต)

สำหรับข้อความ เวลาที่ใช้ข้อความการดําเนินงาน (บัตรกระบวนการผลิต) ค่า _messageType คือ ProdProductionOrderRouteCard ตารางต่อไปนี้แสดงฟิลด์ที่ข้อความนี้สนับสนุน

ชื่อฟิลด์ สถานะ ชนิด
ProductionOrderNumber จำเป็น สตริง
JournalNameId ไม่จำเป็นต้องระบุ สตริง
RouteCardLines จำเป็น รายการ (อย่างน้อยหนึ่งรายการ) แต่ละบรรทัดมี payload ที่อธิบายไว้ในตารางถัดไป

ตารางต่อไปนี้จะแสดงฟิลด์ที่แต่ละบรรทัดในส่วน RouteCardLines ของข้อความสนับสนุน ProdProductionOrderRouteCard

ชื่อฟิลด์ สถานะ ชนิด
OperationNumber จำเป็น เลขจำนวนเต็ม
OperationPriority ไม่จำเป็นต้องระบุ Enum (Primary | Secondary1 | Secondary2 | ... | Secondary20)
OperationId ไม่จำเป็นต้องระบุ สตริง
OperationsResourceId ไม่จำเป็นต้องระบุ สตริง
Worker ไม่จำเป็นต้องระบุ สตริง
HoursRouteCostCategoryId ไม่จำเป็นต้องระบุ สตริง
QuantityRouteCostCategoryId ไม่จำเป็นต้องระบุ สตริง
HourlyRate ไม่จำเป็นต้องระบุ จำนวนจริง
Hours ไม่จำเป็นต้องระบุ จำนวนจริง
GoodQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
ErrorQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
CatchWeightGoodQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
CatchWeightErrorQuantity ไม่จำเป็นต้องระบุ จำนวนจริง
QuantityPrice ไม่จำเป็นต้องระบุ จำนวนจริง
ProcessingPercentage ไม่จำเป็นต้องระบุ จำนวนจริง
ConsumptionDate ไม่จำเป็นต้องระบุ วันที่
TaskType ไม่จำเป็นต้องระบุ Enum (QueueBefore | Setup | Process | Overlap | Transport | QueueAfter | Burden)
ErrorCause ไม่จำเป็นต้องระบุ Enum (None | Material | Machine | OperatingStaff) ที่ขยายได้
OperationCompleted ไม่จำเป็นต้องระบุ Enum (Yes | No)
BOMConsumption ไม่จำเป็นต้องระบุ Enum (Yes | No)
ReportAsFinished ไม่จำเป็นต้องระบุ Enum (Yes | No)

สิ้นสุดข้อความใบสั่งผลิต

สำหรับข้อความ สิ้นสุดใบสั่งผลิต ค่า _messageType คือ ProdProductionOrderEnd ตารางต่อไปนี้แสดงฟิลด์ที่ข้อความนี้สนับสนุน

ชื่อฟิลด์ สถานะ ชนิด
ProductionOrderNumber จำเป็น สตริง
ExecutedDateTime ไม่จำเป็นต้องระบุ วันที่และเวลา
EndedDate ไม่จำเป็นต้องระบุ วันที่
UseTimeAndAttendanceCost ไม่จำเป็นต้องระบุ Enum (Yes | No)
AutoReportAsFinished ไม่จำเป็นต้องระบุ Enum (Yes | No)
AutoUpdate ไม่จำเป็นต้องระบุ Enum (Yes | No)

ข้อมูลการผลิตอื่นๆ

ข้อความสนับสนุนการดำเนินการหรือเหตุการณ์ที่เกิดขึ้นในส่วนการผลิต ซึ่งจะประมวลผลโดยใช้กรอบงานการรวม MES ที่อธิบายไว้ในบทความนี้ การออกแบบสันนิษฐานว่าข้อมูลอ้างอิงอื่นๆ ที่จะใช้ร่วมกันกับ MES (เช่น ข้อมูลที่เกี่ยวข้องกับผลิตภัณฑ์ หรือสูตรการผลิตหรือกระบวนการผลิต (ที่มีการตั้งค่าและเวลาการตั้งค่าคอนฟิกเฉพาะ) ที่ใช้ในใบสั่งผลิตหนึ่งๆ) จะถูกเรียกข้อมูลมาจากระบบที่ใช้ เอนทิตี้ข้อมูล ผ่านทางการโอนย้ายไฟล์หรือ OData

รับผลป้อนกลับเกี่ยวกับสถานะของข้อความ

หลังจากที่ MES ส่งข้อความไปยัง Supply Chain Management แล้ว อาจเกี่ยวข้องกับ Supply Chain Management เพื่อส่งคืนผลป้อนกลับเกี่ยวกับสถานะของข้อความ ต่อไปนี้เป็นตัวอย่างของกรณีที่ลักษณะการทำงานนี้อาจจะเกี่ยวข้อง:

  • ไม่มีบุคคลที่รับผิดชอบการรวม MES อย่างต่อเนื่อง
  • บุคคลที่รับผิดชอบการควบคุมการรวม MES ต้องการได้รับการแจ้งเตือนทางอีเมล เมื่อข้อความล้มเหลว เพื่อที่พวกเขาทราบว่าต้องดำเนินการ
  • MES ต้องแสดงข้อความแสดงข้อผิดพลาดเพื่อแจ้งผู้ปฏิบัติงานฝ่ายควบคุมสินค้าหรือใครสักคนจากแผนก IT ซึ่งต้องเป็นผู้ดำเนินการ
  • MES ต้องคำนวณการจัดกำหนดการผลิตอีกครั้ง หลังจากที่ได้รับข้อความความล้มเหลว (ตัวอย่างเช่น เนื่องจากใบสั่งผลิตไม่สามารถเริ่มต้นได้)

ในกรณีนี้ คุณสามารถใช้ประโยชน์จากคุณลักษณะการแจ้งเตือนมาตรฐานใน Supply Chain Management สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้งานข้อความแจ้งเตือนมาตรฐาน โปรดดูที่ทรัพยากรต่อไปนี้:

ตัวอย่างเช่น คุณอาจตั้งค่าการแจ้งเตือนต่อไปนี้เพื่อให้ผลป้อนกลับเกี่ยวกับสถานะของข้อความ:

  • สร้างเหตุการณ์ทางธุรกิจ ("ส่งภายนอก") ที่ใช้เมื่อข้อความ ล้มเหลว
  • ส่งการแจ้งเตือนและส่งอีเมลถึงผู้ดูแลระบบไอทีหรือผู้จัดการฝ่ายผลิต