EP Error: Field '%fieldName%' is not a valid surrogate foreign key field

This question is answered

Same changes were made recently to some of our custom tables and now when accessing some pages in EP I am getting the following...

 

Field 'CustomField' is not a valid surrogate foreign key field

 at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxReferenceBoundField.InitializeFieldMetadata(Control dataBoundControl, Boolean forceInitialization) at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxBoundField.Initialize(Boolean sortingEnabled, Control control) at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxFormTable.CreateDataRowsFromFields(ICollection fieldSet, Object dataItem, Boolean dataBinding, TableRowCollection rows) at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxFormTable.CreateDataRows(ICollection fieldSet, Boolean dataBinding, TableRowCollection rows, Object dataItem) at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxGroup.CreateFormControls(Boolean dataBinding, Object dataItem, PagedDataSource pagedDataSource) at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxForm.<>c__DisplayClassf.<CreateFormControls>b__e(Control control) at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxForm.TraverseControlsRecursively(IEnumerable`1 controls, Func`2 handleControl) at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxForm.TraverseControls(Func`2 handleControl) at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxForm.CreateChildControls(IEnumerable dataSource, Boolean dataBinding) at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxFormBaseControl.PerformDataBinding(IEnumerable data) at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxForm.PerformDataBinding(IEnumerable data) at System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data) at System.Web.UI.WebControls.DataBoundControl.PerformSelect() at System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxFormBaseControl.CreateChildControls() at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxForm.CreateChildControls() at System.Web.UI.Control.EnsureChildControls() at Microsoft.Dynamics.Framework.Portal.UI.WebControls.AxForm.OnLoad(EventArgs e) at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

 

Any thoughts?

 

The tables look good. Is this from the dataset/query? they all look good.

 

I cannot seem to figure out where something thinks that 'CustomField' is a surrogate foreign key? (it was at one point a foreign key before the recent changes)

 

Thanks

Verified Answer
  • found my issue to be with an incorrect relation on a table

All Replies
  • found my issue to be with an incorrect relation on a table