Troubleshooting
Problem
Attempts to run changeOrder API to change the Kit Quantity of components results in the error YFS: Key Fields cannot be modified in IBM Sterling Order Management 9.3.
Symptom
Steps to reproduce:
- Created a order for a bundled item 'Parent'
input.xml:
------------------
<Order BillToID="test_101" DocumentType="0001" DraftOrderFlag="Y" EnteredBy="113174" EnterpriseCode="" EntryType="COM" OrderType="" SellerOrganizationCode="" OrderNo="Test_1303" >
<OrderLines>
<OrderLine PrimeLineNo="1" SubLineNo="1" OrderedQty="1" KitCode="BUNDLE">
<Item ItemID="Parent" ProductClass="GOOD" UnitOfMeasure="EACH" /> <PersonInfoShipTo AddressID="" AddressLine1="" AddressLine2="" AddressLine3="" AddressLine4="" AddressLine5="" AddressLine6="" AlternateEmailID="" Beeper="" City="qwqq" Company="" Country="US" DayFaxNo="" DayPhone="" Department="" EMailID="" EveningFaxNo="" EveningPhone="" FirstName="" IsCommercialAddress="" JobTitle="" LastName="" MiddleName="" MobilePhone="" OtherPhone="" PersonID="" State="" Suffix="" TaxGeoCode="" Title="" ZipCode=""/>
</OrderLine>
<OrderLine PrimeLineNo="2" SubLineNo="1" KitQty="1">
<Item ItemID="C1" ProductClass="GOOD" UnitOfMeasure="EACH" />
<BundleParentLine PrimeLineNo="1" SubLineNo="1"/>
<PersonInfoBillTo AddressID="" AddressLine1="" AddressLine2="" AddressLine3="" AddressLine4="" AddressLine5="" AddressLine6="" AlternateEmailID="" Beeper="" City="qwqq" Company="" Country="US" DayFaxNo="" DayPhone="" Department="" EMailID="" EveningFaxNo="" EveningPhone="" FirstName="" IsCommercialAddress="" JobTitle="" LastName="" MiddleName="" MobilePhone="" OtherPhone="" PersonID="" State="" Suffix="" TaxGeoCode="" Title="" ZipCode=""/>
</OrderLine>
</OrderLines>
<Priceinfo Currency="USD"/>
</Order>
------------------
- Run changeOrder to change the Kit Quantity of component C1
input.xml:
------------------
"20140609085414101784" Override="Y">
<OrderLines>
<OrderLine PrimeLineNo="2" SubLineNo="1" KitQty="2">
<Item ItemID="C1" ProductClass="GOOD" UnitOfMeasure="EACH" />
</OrderLine>
</OrderLines>
</Order>
------------------
Output:.xml
------------------
<Errors>
- <Error ErrorCode="YFS10415" ErrorDescription="YFS: Key Fields cannot be modified." ErrorRelatedMoreInfo="" ErrorUniqueExceptionId="127.0.1.114023185920060000000000194">
<Attribute Name="ErrorCode" Value="YFS10415" />
<Attribute Name="ErrorDescription" Value="YFS: Key Fields cannot be modified." />
<Attribute Name="Name" Value="KitQty" />
<Attribute Name="PrimeLineNo" Value="2" />
<Attribute Name="SubLineNo" Value="1" />
<Attribute Name="ModificationLevel" Value="ORDER_LINE" />
<Attribute Name="ErrorUniqueExceptionId" Value="127.0.1.114023185920060000000000194" />
------------------
Cause
This is working as designed.
Resolving The Problem
KitQty is not a modifiable field. OrderedQty should be modifiable. If you want to update the KitQty, then you will have to remove and add with a new KitQty.
[{"Product":{"code":"SS6PEW","label":"Sterling Order Management"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"Documentation","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.3","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]
Was this topic helpful?
Document Information
Modified date:
11 February 2020
UID
swg21677637