Skip to main content
Question

ProductionOrderDetail OperationDescription After 25R2 Update

  • November 17, 2025
  • 1 reply
  • 27 views

Forum|alt.badge.img

I have a program that PUTs Production Orders via REST API. It worked until our recent upgrade from 24R2 to 25R2. I was using endpoint version 23.200.001 but it happens with 25.100.001 also.

I PUT to ~entity/MANUFACTURING/25.100.001/ProductionOrderDetail?$expand=Operations&$select=Operations/OperationDescription:

{
"OrderType": {
"value": "RG"
},
"ProductionNbr": {
"value": "TESTORD"
},
"Operations": [
{
"ControlPoint": {
"value": true
},
"OperationNbr": {
"value": "010"
},
"WorkCenter": {
"value": "SAW"
},
"rowNumber": {
"value": 1
},
"OperationDescription": {
"value": "Cut 12\""
}
}
]
}

And it responds 200:

{
"id": "ca50efb0-01c4-f011-843a-06b1b982e321",
"rowNumber": 1,

"Operations": [
{
"id": "0846d663-06c4-f011-843a-06b1b982e321",
"rowNumber": 1,
"note": {
"value": ""
},
"ControlPoint": {
"value": true
},
"Material": [],
"OperationDescription": {
"value": "Saw Cutting"
},
"OperationNbr": {
"value": "010"
},
"OutsideProcess": {
"value": false
},
"QueueTime": {
"value": 960
},
"RunTime": {
"value": 60
},
"RunUnits": {
"value": 0.000000
},
"SetupTime": {
"value": 0
},
"WorkCenter": {
"value": "SAW"
},
"custom": {},
"_links": {
"files:put": "/entity/MANUFACTURING/25.100.001/files/PX.Objects.AM.ProdDetail/ProdOperRecords/0846d663-06c4-f011-843a-06b1b982e321/{filename}"
}
},

],
"OrderType": {
"value": "RG"
},
"ProductionNbr": {
"value": "189995-001"
},

"custom": {},
"_links": {
"self": "/entity/MANUFACTURING/25.100.001/ProductionOrderDetail/ca50efb0-01c4-f011-843a-06b1b982e321",
"files:put": "/entity/MANUFACTURING/25.100.001/files/PX.Objects.AM.ProdDetail/ProdItemRecords/ca50efb0-01c4-f011-843a-06b1b982e321/{filename}"
}
}

I’ve tried moving the JSON around, tried when adding new lines and editing existing, with and without the id populated. I cannot replicate this problem via UI, it only occurs in the API.

Any idea how I can repair this? Is this a known issue?

Thanks for reading.

1 reply

Forum|alt.badge.img
  • Author
  • Jr Varsity II
  • January 9, 2026

This is a larger problem than previously reported. It also affects other critical fields on AMProdOper including Run Units, Run Time, and Queue Time.

In a fresh Sales Demo for 25R2, I turned on the Manufacturing feature, then sent this PUT request via Postman:

PUT http://localhost/25R2SalesDemo/entity/MANUFACTURING/25.100.001/ProductionOrderDetail?$filter=ProductionNbr eq 'AM000037'&$expand=Operations

{
"OrderType": {
"value": "RO"
},
"ProductionNbr": {
"value": "AM000037"
},
"Operations": [
{
"OperationDescription": {
"value": "TEST DESCRIPTION"
},
"OperationNbr": {
"value": "0011"
},
"RunUnits": {
"value": 1
},
"RunTime": {
"value": 120
},
"WorkCenter": {
"value": "WC80"
},
"QueueTime": {
"value": 240
}
}
]
}

The response is 200:

{
"id": "43c377fc-ab8a-ec11-817b-9b18f6aae9b8",
"rowNumber": 1,
"note": {
"value": ""
},
"Branch": {
"value": "SERVEAST"
},
"EndDate": {
"value": "2025-06-13T00:00:00-07:00"
},
"Hold": {
"value": true
},
"InventoryID": {
"value": "AMTOOLOSP"
},
"Operations": [
...
{
"id": "0f468ebe-a7ed-f011-8297-7015fbf2f2ff",
"rowNumber": 2,
"note": {
"value": ""
},
"ActualEndDate": {},
"ActualStartDate": {},
"AtVendorQuantity": {
"value": 0.0
},
"AutoReportQty": {
"value": true
},
"BackflushLabor": {
"value": false
},
"ControlPoint": {
"value": false
},
"DropShippedtoVendor": {
"value": false
},
"EndDate": {
"value": "2025-06-13T00:00:00-07:00"
},
"FinishTime": {
"value": 0
},
"MachineTime": {
"value": 60
},
"MachineUnits": {
"value": 0.000000
},
"MoveTime": {
"value": 0
},
"OperationDescription": {
"value": "Painting"
},
"OperationNbr": {
"value": "0011"
},
"OperationStatus": {
"value": "Released"
},
"OutsideProcess": {
"value": false
},
"PhantomBomID": {},
"PhantomBOMLineID": {},
"PhantomBOMOperNbr": {},
"PhantomBOMRevision": {},
"PhantomLevel": {},
"PhantomMatlBOMID": {},
"PhantomMatlLineID": {},
"PhantomMatlOperNbr": {},
"PhantomMatlRevision": {},
"PhantomPriorLevelQty": {
"value": 0.000000
},
"PlanEndDate": {
"value": "2025-06-13T00:00:00-07:00"
},
"PlanStartDate": {
"value": "2025-06-13T00:00:00-07:00"
},
"POLineNbr": {},
"POOrderNbr": {},
"QtyComplete": {
"value": 0.000000
},
"QtyRemaining": {
"value": 1.00
},
"QtyScrapped": {
"value": 0.000000
},
"QtytoProduce": {
"value": 0.000000
},
"QueueTime": {
"value": 0
},
"RunTime": {
"value": 60
},
"RunUnits": {
"value": 0.000000
},
"ScrapAction": {
"value": "No Action"
},
"SetupTime": {
"value": 0
},
"ShippedQuantity": {
"value": 0.000000
},
"ShipRemainingQty": {
"value": 0.0
},
"StartDate": {
"value": "2025-06-13T00:00:00-07:00"
},
"TotalQty": {
"value": 1.000000
},
"Vendor": {},
"VendorLocation": {},
"WorkCenter": {
"value": "WC80"
},
"custom": {},
"_links": {
"files:put": "/25R2SalesDemo/entity/MANUFACTURING/25.100.001/files/PX.Objects.AM.ProdDetail/ProdOperRecords/0f468ebe-a7ed-f011-8297-7015fbf2f2ff/{filename}"
}
},
...
],
"OrderDate": {
"value": "2023-09-01T00:00:00-07:00"
},
"OrderType": {
"value": "RO"
},
"ProductionNbr": {
"value": "AM000037"
},
"SchedulingMethod": {
"value": "Finish On"
},
"StartDate": {
"value": "2025-06-13T00:00:00-07:00"
},
"Status": {
"value": "On Hold"
},
"Warehouse": {
"value": "VA-WHOLESL"
},
"custom": {},
"_links": {
"self": "/25R2SalesDemo/entity/MANUFACTURING/25.100.001/ProductionOrderDetail/43c377fc-ab8a-ec11-817b-9b18f6aae9b8",
"files:put": "/25R2SalesDemo/entity/MANUFACTURING/25.100.001/files/PX.Objects.AM.ProdDetail/ProdItemRecords/43c377fc-ab8a-ec11-817b-9b18f6aae9b8/{filename}"
}
}

On the production, here is the operation list before:

And after:

You can see it ignored the 120 minute run time I sent, as well as the 1 run units.