Attempting to set up an OData external data source to Dynamics Great Plains - confirmed I can connect via OData using MS Excel, so I believe that's right. When attempting to set this up in Salesforce as an external data source, validate-and-sync gives back this error when using OData 2.0:
This data isn't available because the associated table in the external data source can't be found. Contact your administrator for help. Attempted query URL: https://my.endpoint.com/GPOData/GP2SF/$metadata
And when using OData 4.0, the error is a bit different:
Can't sync the schema metadata for your external system. Check that the schema metadata is valid. Error code: null
The endpoint URL I've configured is this: https://my.endpoint.com/GPOData/GP2SF/
. Fetching that document via a browser returns:
{
"@odata.context":"https://my.endpoint.com/GPOData/GP2SF/$metadata","value":[
{
"name":"Test","kind":"EntitySet","url":"Test"
}
]
}
And following that $metadata URL, which is the URL SF references in its first error, gives this:
<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
<edmx:DataServices>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Microsoft.Dynamics.GP.OData.Provider.Generated.GP2SF.Models">
<EntityType Name="SFTest">
<Property Name="BillAccount" Type="Edm.String" Nullable="false"/>
</EntityType>
<EntityContainer Name="Container">
<EntitySet Name="Test" EntityType="Microsoft.Dynamics.GP.OData.Provider.Generated.GP2SF.Models.SFTest"/>
</EntityContainer>
</Schema>
</edmx:DataServices>
</edmx:Edmx>
Aside from an odd transition from JSON to XML, this seems correct.
Anyone have any ideas on what's wrong?