I created an External Object using an OData 4.0 provider and attempted to display the values of this object (several columns) in a listview.

The listview displays an error with text as in title of OP:

enter image description here

Why would this be? Googling on this error indicates issues unrelated to external objects.


Documenting for others who may run across this issue as I saw no other references

  • Use case was an OData 4.0 provider for Shopify
  • The External Data Source button Validate and Sync creates external objects for each exposed OData table. In my case, I was using the Shopify Orders table.
  • SFDC creates custom fields for all "amount" fields as Field Type Number (18,0). So, an order amount in Shopify of 99.99 would display as 100.
  • Initially, I changed the field (in Salesforce) to Number (16,2). This displays fine (as 99.99)
  • I changed the Field Data type to Currency (16,2) and then got the error.

Checking the Salesforce Compatibility Considerations for Salesforce Connect—All Adapters doc, I note that Currency data type is not supported except for the cross-org adapter in Salesforce Connect. Unfortunately, although SFDC knows the external object arises from an external data source other than the Salesforce Connect cross-org adapter, you don't get any error message when you change the field type to Currency.

So, bottom line, if you expect currency fields in your external objects to display as currency fields in the OOTB detail pages/list views - they won't. You will need to expose on list views and page layouts the external object's custom currency field, assuming one exists in the OData data source.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.