I have had this problem show up (I think) many times, in different ways. I discussed one of them here (
Then I upgrade the customizations to use the new DLLs, and publish them on the customer's 2021 R2 system.
Next, I try to pull up Service Orders (Screen ID: FS3001PL) to test the customizations, but I get this Error:
"A field with the name sODetID cannot be found"
Looking through the source code to the customizations, that field isn't used specifically anywhere.
[EDIT in response to Patrick Chen's Answer] In the GI, the table for FSSODet was referenced. And that table has sODetID in it. But it is never used. So, I removed the tables from the GI and now I see this strange error:
Even though that table is never referenced in any of the GI's tabs.
So, I unpublish all of the customizations. The error persists.
Screenshot of error (error log from Acumatica at the end):
So, I switch to a different Tenant, that has the standard sales demo data (and no Customizations).
In this tenant, I can get into Service Orders just fine.
My VS 2020 debugger doesn't stop when this error gets hit, so I am not sure how to even go about debugging this.
Any ideas?
The stack trace (FWIW) is:
[PXException: Error: A field with the name sODetID cannot be found.]
PX.Data.Description.GI.PXDesignedQueryProvider.GetValue(PXQueryDescription descr, String value, IPXValue field, PXTable table, String alias, Boolean& useExt, Nullable`1& condition) 2949
PX.Data.Description.GI.PXDesignedQueryProvider.CollectRelations(PXQueryDescription descr) 1378
PX.Data.Description.GI.PXDesignedQueryProvider.FillDescription(PXQueryDescription descr) 166
PX.Data.Description.GI.PXQueryDescription.Create(IGenericQueryProvider prov) 73
PX.Data.PXGenericInqGrph.get_BaseQueryDescription() 39
PX.Data.PXGenericInqGrph.CollectDescriptionFields() 47
PX.Data.PXGenericInqGrph.PrepareCaches(GIDescription def, Dictionary`2 parameters) 310
PX.Data.PXGenericInqGrph.PrepareCaches(String id, String name, Dictionary`2 parameters, Boolean fetchSchema) 466
PX.Web.UI.PXGenericDataSource.InstantiateDataGraph(Type type) 785
PX.Web.UI.PXBaseDataSource.CreateDataGraphAsSingleton(Type type) 560
PX.Web.UI.PXBaseDataSource.CreateDataGraph(Type type) 175
PX.Web.UI.PXBaseDataSource.get_DataGraph() 412
PX.Web.UI.PXDataSource.HasDashboardsSupport() 16
PX.Common.Tools.With(TInput o, Func`2 evaluator) 75
PX.Web.UI.PXGrid.RenderToolsRow(Boolean top) 1910
PX.Web.UI.PXGrid.CreateChildControls(IEnumerable dataSource, Boolean dataBinding) 867
System.Web.UI.WebControls.CompositeDataBoundControl.CreateChildControls() 230
System.Web.UI.Control.EnsureChildControls() 130
System.Web.UI.WebControls.CompositeDataBoundControl.get_Controls() 24
PX.Web.UI.PXSmartPanel.CollectInnerControls(ControlCollection controls, Boolean load, Boolean collectUpdatable) 347
PX.Web.UI.PXSmartPanel.CollectInnerControls(Boolean load) 110
PX.Web.UI.PXSmartPanel.SetBindingState(Boolean load) 109
PX.Web.UI.PXSmartPanel.OnInit(EventArgs e) 99
System.Web.UI.Control.InitRecursive(Control namingContainer) 454
System.Web.UI.Control.InitRecursive(Control namingContainer) 219
System.Web.UI.Control.InitRecursive(Control namingContainer) 219
System.Web.UI.Control.InitRecursive(Control namingContainer) 219
System.Web.UI.Control.InitRecursive(Control namingContainer) 219
System.Web.UI.Control.InitRecursive(Control namingContainer) 219
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 1719
CodePudding user response:
Sounds like the GI you're trying to access has been altered to include this field by some customization. Unpublishing the customization doesn't remove all elements of a customization,see below, so you might try and edit the GI (FS3001PL) using SM208000