Update a Change Extensible Flexfield Using Product Change Orders V2

You can use the Product Change Orders V2 REST API to get and update Change Extensible Flexfield in any of the Change types.

Note:

It's recommended to limit the number of objects and, or, updates to less than 50 per transaction.

Let's discuss this scenarios briefly.

A company needs to update the design of its existing product range according to the new regulation norms defined by the governing body. To do this, the product data steward needs to get the change order and has to fill in the regulation details. Let's see how they would use the Product Change Orders V2 REST API resource to do that. Assume that the attribute group is Regulation, and the attributes are Regulation Code and Regulation Region.

Here's what they need to do:

  1. Get the change ID of the change order using the change name.

  2. Get the change order extensible flexfield self-link for the change order.

  3. Get the description of the change order extensible flexfield attribute group context, Regulation, for the change order to get the attribute names.

  4. Update the change extensible flexfield attributes Regulation Code and Regulation Region value for the change order.

Get the Change ID of the Change Order Using the Change Name

This example shows how to get the Change ID using the Change Name.

Example URL

Use this resource URL format:

GET

curl -u username:password -X GET -H "Content-Type:application/vnd.oracle.adf.action+json" -d 
"https://servername/fscmRestApi/resources/version/productChangeOrdersV2?q=ChangeName=REGCO0991"

Example Response

Here's an example of the response body in JSON format:
{
    "items": [
        {
            "ChangeId": 300100578182503,
            "ChangeTypeId": 300100578111346,
            "ChangeNotice": "REGCO0991",
            "ChangeName": "REGCO0991",
            "Description": null,
            "OrganizationId": 204,
            "PriorityCode": null,
            "ReasonCode": null,
            "ChangeTypeValue": "SS_CO_Type5",
            "OrganizationCode": "V1",
            "PriorityCodeValue": null,
            "ReasonCodeValue": null,
            "AssigneeId": "EE090FD91FAF33D2F3E424B67B06F902",
            "RequestorId": "EE090FD91FAF33D2F3E424B67B06F902",
            "AssignedTo": "PLM_AUTO",
            "RequestedBy": "PLM_AUTO",
            "StatusType": 0,
            "StatusCode": 0,
            "ApprovalStatus": 1,
            "StatusTypeValue": "Draft",
            "StatusCodeValue": "Draft",
            "ApprovalStatusValue": "Not submitted for approval",
            "EffectiveImmediatelyFlag": true,
            "EffectivityIncrementDays": 1,
            "CreatedBy": "PLM_AUTO",
            "LastUpdatedBy": "PLM_AUTO",
            "LastUpdateLogin": "FA08EE88D7776002E053F56115AC6632",
            "AssignedToRole": null,
            "ApprovalDateTime": null,
            "NeedByDateTime": null,
            "InitiationDateTime": "2023-05-04T00:00:00+00:00",
            "ImplementationDateTime": null,
            "CancellationDateTime": null,
            "ApprovalRequestDateTime": null,
            "CreationDateTime": "2023-05-04T12:13:20+00:00",
            "LastUpdateDateTime": "2023-05-04T12:13:59.420+00:00",
            "StatusComments": null,
            "CustomerId": null,
            "CustomerAccountNumber": null,
            "CustomerName": null,
            "SupplierId": null,
            "SupplierNumber": null,
            "SupplierName": null,
            "ManufacturerId": null,
            "ManufacturerRegistryId": null,
            "ManufacturerName": null,
            "SourceCode": null,
            "SourceName": null,
            "CategoryCode": "SS_CO_Type5",
            "links": [
                {
                    "rel": "self",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503",
                    "name": "productChangeOrdersV2",
                    "kind": "item",
                    "properties": {
                        "changeIndicator": "ACED0005737200136A6176612E7574696C2E41727261794C6973747881D21D99C7619D03000149000473697A65787000000001770400000001737200116A6176612E6C616E672E496E746567657212E2A0A4F781873802000149000576616C7565787200106A6176612E6C616E672E4E756D62657286AC951D0B94E08B02000078700000000178"
                    }
                },
                {
                    "rel": "canonical",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503",
                    "name": "productChangeOrdersV2",
                    "kind": "item"
                },
                {
                    "rel": "child",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderAffectedObject",
                    "name": "changeOrderAffectedObject",
                    "kind": "collection"
                },
                {
                    "rel": "child",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderAttachments",
                    "name": "changeOrderAttachments",
                    "kind": "collection"
                },
                {
                    "rel": "child",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderDFF",
                    "name": "changeOrderDFF",
                    "kind": "collection"
                },
                {
                    "rel": "child",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF",
                    "name": "changeOrderEFF",
                    "kind": "collection"
                },
                {
                    "rel": "child",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderNextStatuses",
                    "name": "changeOrderNextStatuses",
                    "kind": "collection"
                },
                {
                    "rel": "child",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderParticipants",
                    "name": "changeOrderParticipants",
                    "kind": "collection"
                },
                {
                    "rel": "child",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderRelationships",
                    "name": "changeOrderRelationships",
                    "kind": "collection"
                },
                {
                    "rel": "child",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderTasks",
                    "name": "changeOrderTasks",
                    "kind": "collection"
                },
                {
                    "rel": "child",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderTeam",
                    "name": "changeOrderTeam",
                    "kind": "collection"
                }
            ]
        }
    ],
    "count": 1,
    "hasMore": false,
    "limit": 25,
    "offset": 0,
    "links": [
        {
            "rel": "self",
            "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2",
            "name": "productChangeOrdersV2",
            "kind": "collection"
        }
    ]
}

Get the Change Order Extensible Flexfield Self-Link for the Change Order

This example shows how to get the change order extensible flexfield self-link.

Example URL

Use this resource URL format:

GET

curl -u username:password -X GET -H "Content-Type:application/vnd.oracle.adf.action+json" -d 
"https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF"

Example Response

Here's an example of the response body in JSON format:
{
    "items": [
        {
            "ObjectVersionNumber": 1,
            "ChangeId": 300100578182503,
            "CreatedBy": "PLM_AUTO",
            "CreationDate": "2023-05-04T12:13:20+00:00",
            "LastUpdateDate": "2023-05-04T12:13:59.420+00:00",
            "LastUpdateLogin": "FA08EE88D7776002E053F56115AC6632",
            "LastUpdatedBy": "PLM_AUTO",
            "BaseChangeMgmtTypeCode": "CHANGE_ORDER",
            "CategoryCode": "SS_CO_Type5",
            "links": [
                {
                    "rel": "self",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503",
                    "name": "changeOrderEFF",
                    "kind": "item",
                    "properties": {
                        "changeIndicator": "ACED0005737200136A6176612E7574696C2E41727261794C6973747881D21D99C7619D03000149000473697A65787000000001770400000001737200116A6176612E6C616E672E496E746567657212E2A0A4F781873802000149000576616C7565787200106A6176612E6C616E672E4E756D62657286AC951D0B94E08B02000078700000000178"
                    }
                },
                {
                    "rel": "canonical",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503",
                    "name": "changeOrderEFF",
                    "kind": "item"
                },
                {
                    "rel": "parent",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503",
                    "name": "productChangeOrdersV2",
                    "kind": "item"
                },
                {
                    "rel": "child",
                    "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503/child/Regulation",
                    "name": "Regulation",
                    "kind": "collection"
                }
            ]
        }
    ],
    "count": 1,
    "hasMore": false,
    "limit": 25,
    "offset": 0,
    "links": [
        {
            "rel": "self",
            "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF",
            "name": "changeOrderEFF",
            "kind": "collection"
        }
    ]
}

Get the Description of the Change Order Extensible Flexfield Attribute Group Context to Get Attribute Names

This example shows how to get the description of the change order extensible flexfield attribute group context to get attribute names.

You must do a describe to get attribute details such as code and type. These details are required to perform Create or Update operations on certain attributes. In this case, the user can get the details of different change extensible flexfields in the context Regulation. After that, the user can create or update the extensible flexfields.

Example URL

Use this resource URL format:

GET

curl -u username:password -X GET -H "Content-Type:application/vnd.oracle.adf.action+json" -d 
"https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503/child/Regulation/describe"

Example Response

Here's an example of the response body in JSON format:
{
  "Resources" : {
    "Regulation" : {
      "discrColumnType" : true,
      "properties" : {
        "FND_ACFF_ApplicationID" : "10010",
        "FND_ACFF_ApplicationShortName" : "EGO",
        "FND_ACFF_Delimiter" : "-",
        "FND_ACFF_ModelID" : "EFF_EGO_EGO_5FCHANGE_5FEFF_EGO_5FCHANGE_5FDL_EGO_5FCHANGE_5FEFF_5FB",
        "FND_ACFF_Title" : "Change Extended Attributes",
        "FND_ACFF_Type" : "EFF"
      },
      "attributes" : [ {
        "name" : "CategoryCode",
        "type" : "string",
        "updatable" : true,
        "mandatory" : true,
        "inputRequired" : true,
        "queryable" : true,
        "allowChanges" : "always",
        "precision" : 800,
        "maxLength" : "800",
        "properties" : {
          "DISPLAYHINT" : "Hide"
        }
      }, {
        "name" : "ChangeId",
        "type" : "integer",
        "updatable" : true,
        "mandatory" : true,
        "inputRequired" : true,
        "queryable" : true,
        "allowChanges" : "always",
        "precision" : 18,
        "properties" : {
          "DISPLAYHINT" : "Hide"
        }
      }, {
        "name" : "ContextCode",
        "type" : "string",
        "updatable" : true,
        "mandatory" : true,
        "queryable" : true,
        "allowChanges" : "always",
        "precision" : 80,
        "defaultValue" : "Regulation Code",
        "maxLength" : "80",
        "properties" : {
          "DISPLAYHINT" : "Hide"
        }
      }, {
        "name" : "CreatedBy",
        "type" : "string",
        "updatable" : false,
        "mandatory" : true,
        "queryable" : true,
        "allowChanges" : "never",
        "precision" : 64,
        "maxLength" : "64",
        "properties" : {
          "DISPLAYHINT" : "Hide"
        }
      }, {
        "name" : "CreationDate",
        "type" : "datetime",
        "updatable" : false,
        "mandatory" : true,
        "queryable" : true,
        "allowChanges" : "never",
        "properties" : {
          "DISPLAYHINT" : "Hide"
        }
      }, {
        "name" : "EffLineId",
        "type" : "integer",
        "updatable" : true,
        "mandatory" : true,
        "queryable" : true,
        "allowChanges" : "always",
        "precision" : 18,
        "hasDefaultValueExpression" : true,
        "includeInCompactView" : true,
        "properties" : {
          "DISPLAYHINT" : "Hide",
          "fnd:GLOBALLY_UNIQUE" : "true"
        }
      }, {
        "name" : "LastUpdateDate",
        "type" : "datetime",
        "updatable" : false,
        "mandatory" : true,
        "queryable" : true,
        "allowChanges" : "never",
        "properties" : {
          "DISPLAYHINT" : "Hide"
        }
      }, {
        "name" : "LastUpdatedBy",
        "type" : "string",
        "updatable" : false,
        "mandatory" : true,
        "queryable" : true,
        "allowChanges" : "never",
        "precision" : 64,
        "maxLength" : "64",
        "properties" : {
          "DISPLAYHINT" : "Hide"
        }
      }, {
        "name" : "ObjectVersionNumber",
        "type" : "integer",
        "updatable" : true,
        "mandatory" : true,
        "queryable" : true,
        "allowChanges" : "always",
        "precision" : 9,
        "properties" : {
          "DISPLAYHINT" : "Hide"
        }
      }, {
        "name" : "regulationCode",
        "type" : "string",
        "updatable" : true,
        "mandatory" : false,
        "queryable" : true,
        "allowChanges" : "always",
        "precision" : 4000,
        "title" : "Regulation Code",
        "includeInCompactView" : true,
        "maxLength" : "4000",
        "properties" : {
          "DISPLAYWIDTH" : "28",
          "FND_ACFF_BI_Disabled" : "Y",
          "FND_ACFF_EFF_CONTEXT_SEGMENT_CODE" : "Regulation Code",
          "FND_ACFF_EFF_INDEXED_FLAG" : "N",
          "FND_ACFF_EFF_SEGMENT_ATTRIBUTE" : "true",
          "FND_ACFF_JavaType" : "java.lang.String",
          "FND_ACFF_MaximumLength" : "10",
          "FND_ACFF_OpenIdentifier" : "regulationCode",
          "FND_ACFF_PreferredDisplayType" : "TEXT_BOX",
          "FND_ACFF_SegmentName" : "Regulation Code",
          "FND_ACFF_ValueSetInfo" : "0233A_10 Characters#FORMAT_ONLY",
          "TOOLTIP" : "Regulation Code"
        }
      }, {
        "name" : "regulationRegion",
        "type" : "string",
        "updatable" : true,
        "mandatory" : false,
        "queryable" : true,
        "allowChanges" : "always",
        "precision" : 4000,
        "title" : "Regulation Region",
        "includeInCompactView" : true,
        "maxLength" : "4000",
        "properties" : {
          "DISPLAYWIDTH" : "28",
          "FND_ACFF_BI_Disabled" : "Y",
          "FND_ACFF_EFF_CONTEXT_SEGMENT_CODE" : "Regulation Region",
          "FND_ACFF_EFF_INDEXED_FLAG" : "N",
          "FND_ACFF_EFF_SEGMENT_ATTRIBUTE" : "true",
          "FND_ACFF_JavaType" : "java.lang.String",
          "FND_ACFF_MaximumLength" : "50",
          "FND_ACFF_OpenIdentifier" : "regulationRegion",
          "FND_ACFF_PreferredDisplayType" : "TEXT_BOX",
          "FND_ACFF_SegmentName" : "Regulation Region",
          "FND_ACFF_ValueSetInfo" : "COUNTRY#FORMAT_ONLY",
          "TOOLTIP" : "Regulation Region"
        }
      } ],
      "collection" : {
        "rangeSize" : 25,
        "finders" : [ {
          "name" : "EFF_ALT_KEY",
          "attributes" : [ {
            "name" : "ChangeId",
            "type" : "integer",
            "updatable" : true,
            "mandatory" : true,
            "inputRequired" : true,
            "queryable" : true,
            "allowChanges" : "always",
            "precision" : 18,
            "properties" : {
              "DISPLAYHINT" : "Hide"
            }
          }, {
            "name" : "ContextCode",
            "type" : "string",
            "updatable" : true,
            "mandatory" : true,
            "queryable" : true,
            "allowChanges" : "always",
            "precision" : 80,
            "defaultValue" : "Regulation Code",
            "maxLength" : "80",
            "properties" : {
              "DISPLAYHINT" : "Hide"
            }
          } ]
        }, {
          "name" : "PrimaryKey",
          "attributes" : [ {
            "name" : "EffLineId",
            "type" : "integer",
            "updatable" : true,
            "mandatory" : true,
            "queryable" : true,
            "allowChanges" : "always",
            "precision" : 18,
            "hasDefaultValueExpression" : true,
            "includeInCompactView" : true,
            "properties" : {
              "DISPLAYHINT" : "Hide",
              "fnd:GLOBALLY_UNIQUE" : "true"
            }
          } ]
        } ],
        "links" : [ {
          "rel" : "self",
          "href" : "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503/child/Regulation",
          "name" : "self",
          "kind" : "collection"
        } ],
        "actions" : [ {
          "name" : "get",
          "method" : "GET",
          "responseType" : [ "application/vnd.oracle.adf.resourcecollection+json", "application/json" ]
        }, {
          "name" : "create",
          "method" : "POST",
          "requestType" : [ "application/vnd.oracle.adf.resourceitem+json", "application/json" ],
          "responseType" : [ "application/vnd.oracle.adf.resourceitem+json", "application/json" ]
        }, {
          "name" : "upsert",
          "method" : "POST",
          "header" : "Upsert-Mode=true",
          "requestType" : [ "application/vnd.oracle.adf.resourceitem+json", "application/json" ],
          "responseType" : [ "application/vnd.oracle.adf.resourceitem+json", "application/json" ]
        } ]
      },
      "item" : {
        "links" : [ {
          "rel" : "self",
          "href" : "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503/child/Regulation/{id}",
          "name" : "self",
          "kind" : "item"
        }, {
          "rel" : "parent",
          "href" : "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503",
          "name" : "parent",
          "kind" : "item"
        }, {
          "rel" : "canonical",
          "href" : "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503/child/Regulation/{id}",
          "name" : "canonical",
          "kind" : "item"
        } ],
        "actions" : [ {
          "name" : "get",
          "method" : "GET",
          "responseType" : [ "application/vnd.oracle.adf.resourceitem+json", "application/json" ]
        }, {
          "name" : "update",
          "method" : "PATCH",
          "requestType" : [ "application/vnd.oracle.adf.resourceitem+json", "application/json" ],
          "responseType" : [ "application/vnd.oracle.adf.resourceitem+json", "application/json" ]
        }, {
          "name" : "delete",
          "method" : "DELETE"
        } ]
      },
      "links" : [ {
        "rel" : "self",
        "href" : "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503/child/Regulation/describe",
        "name" : "self",
        "kind" : "describe"
      }, {
        "rel" : "canonical",
        "href" : "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503/child/Regulation/describe",
        "name" : "canonical",
        "kind" : "describe"
      } ]
    }
  }
}

Update the Change Extensible Flexfield Attributes

In this case, the user updates the change extensible flexfield attributes Regulation Code and Regulation Region.

Example URL

Use this resource URL format:

PATCH

curl -u username:password -X PATCH -H "Content-Type:application/vnd.oracle.adf.action+json" -d 'request payload' 
"https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503/child/Regulation"

Example Request

Here's an example of the request body in JSON format:
{
    "regulationCode": "AE0339",
    "regulationRegion": "United States"
}

Example Response

Here's an example of the response body in JSON format:
{
    "CategoryCode": "SS_CO_Type5",
    "ChangeId": 300100578182503,
    "ContextCode": "Regulation Code",
    "CreatedBy": "PIMQA",
    "CreationDate": "2023-05-08T04:11:13+00:00",
    "EffLineId": 300100578545652,
    "LastUpdateDate": "2023-05-08T04:11:13.269+00:00",
    "LastUpdatedBy": "PIMQA",
    "ObjectVersionNumber": 1,
    "regulationCode": "AE0339",
    "regulationRegion": "United States",
    "links": [
        {
            "rel": "self",
            "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503/child/Regulation/300100578545652",
            "name": "Regulation",
            "kind": "item",
            "properties": {
                "changeIndicator": "ACED0005737200136A6176612E7574696C2E41727261794C6973747881D21D99C7619D03000149000473697A65787000000001770400000001737200116A6176612E6C616E672E496E746567657212E2A0A4F781873802000149000576616C7565787200106A6176612E6C616E672E4E756D62657286AC951D0B94E08B02000078700000000178"
            }
        },
        {
            "rel": "canonical",
            "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503/child/Regulation/300100578545652",
            "name": "Regulation",
            "kind": "item"
        },
        {
            "rel": "parent",
            "href": "https://servername/fscmRestApi/resources/version/productChangeOrdersV2/300100578182503/child/changeOrderEFF/300100578182503",
            "name": "changeOrderEFF",
            "kind": "item"
        }
    ]
}