Skip to main content
Answer

The Multi part identifier "BAccount.UsrCostCodeID" could not be bound

  • October 15, 2025
  • 4 replies
  • 64 views

Forum|alt.badge.img+1

I have BAccountExt with this field (Its first customization):
#region UsrCostCodeID
        public abstract class usrCostCodeID : PX.Data.BQL.BqlInt.Field<usrCostCodeID> { }
        [EPTimeTrackerCostCodeSelector(typeof(BAccount.bAccountID))]
        public virtual int? UsrCostCodeID { get; set; }
        #endregion

And i have RQRequisitionLineExt with this field (Its second customization):
#region UsrCostCodeID
        public abstract class usrCostCodeID : PX.Data.BQL.BqlInt.Field<usrCostCodeID> { }
        [PXDefault(PersistingCheck = PXPersistingCheck.Nothing)]
        [CostCode(typeof(Current<RQRequisitionLine.expenseAcctID>), typeof(usrProjectTaskID))]
        [PXUIField(DisplayName = Messages.CostCode, Enabled = true, FieldClass = "COSTCODE")]
        public virtual int? UsrCostCodeID { get; set; }
        #endregion

When i on this two customizations. In Requisitions Primary List RQ3020PL i have this error

Best answer by bihalivan15

I have two customization projects with identical field names. When I renamed one of the fields, the problem went away.

4 replies

Forum|alt.badge.img+7
  • Captain II
  • October 15, 2025

I would be tempted to look at the Trace and see what the generated SQL looks like. That error means that SQL can’t find either the BAccount table or the UsrCostCodeID field in the BAccount table. Using SSMS and a copy of the database, see where that field is being referenced. 

 


Forum|alt.badge.img+1
  • Author
  • Semi-Pro II
  • October 15, 2025

Microsoft.Data.SqlClient.SqlException (0x80131904): The Multi part identifier "BAccount.UsrCostCodeID" could not be bound
   at Microsoft.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at Microsoft.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at Microsoft.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
   at Microsoft.Data.SqlClient.SqlDataReader.get_MetaData()
   at Microsoft.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
   at Microsoft.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
   at Microsoft.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
   at Microsoft.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
   at Microsoft.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
   at PX.Data.PXSqlDatabaseProvider.ExecuteReaderInternal(IDbCommand command, CommandBehavior behavior)
   at PX.Data.PXSelectResult.PXSelectResultEnumerator.System.Collections.IEnumerator.MoveNext()
   at PX.Data.PXView.GetResult(Object[] parameters, PXFilterRow[] filters, Boolean reverseOrder, Int32 topCount, PXSearchColumn[] sorts, Boolean& overrideSort, Boolean& extFilter)
   at PX.Data.PXView.Select(Object[] currents, Object[] parameters, Object[] searches, String[] sortcolumns, Boolean[] descendings, PXFilterRow[] filters, Int32& startRow, Int32 maximumRows, Int32& totalRows, String[] sortAsImplicitColumns)
   at PX.Data.PXView.Select(Object[] currents, Object[] parameters, Object[] searches, String[] sortcolumns, Boolean[] descendings, PXFilterRow[] filters, Int32& startRow, Int32 maximumRows, Int32& totalRows)
   at PX.Data.PXGraph.ExecuteSelect(String viewName, Object[] currents, Object[] parameters, Object[] searches, String[] sortcolumns, Boolean[] descendings, PXFilterRow[] filters, Int32& startRow, Int32 maximumRows, Int32& totalRows)
   at PX.Data.PXGraph.ExecuteSelect(String viewName, Object[] parameters, Object[] searches, String[] sortcolumns, Boolean[] descendings, PXFilterRow[] filters, Int32& startRow, Int32 maximumRows, Int32& totalRows)
   at PX.Web.UI.PXBaseDataSource.ExecuteSelect(String viewName, DataSourceSelectArguments arguments, PXDSSelectArguments pxarguments)
   at PX.Web.UI.PXDataSource.ExecuteSelect(String viewName, DataSourceSelectArguments arguments, PXDSSelectArguments pxarguments)
   at PX.Web.UI.PXDataSourceView.Select(DataSourceSelectArguments arguments, PXDSSelectArguments swarguments, DataSourceViewSelectCallback callback)
   at PX.Web.UI.PXGrid.PerformSelect()
   at System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound()
   at PX.Web.UI.PXGrid.OnPreRender(EventArgs e)
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

   at PX.Web.UI.Metadata.AspxScreenInfoCollector.Collect(String screenId, String locale, String url)
   at PX.Web.UI.Metadata.CachingScreenInfoCollectorDecorator`1.Collect(T id, String locale)
   at PX.Api.TSBasedScreen.ScreenInfo.SiteMapScreenInfoCollector.Collect(IScreenInfoDataId dataId, String locale)
   at PX.Data.PXGenericInqGrph.InitializeScreenInfo()
ClientConnectionId:a938780d-8764-4535-8b46-4818174af3a1
Error Number:4104,State:1,Class:16
   at PX.Data.PXGenericInqGrph.InitializeScreenInfo()
   at PX.Data.PXGenericInqGrph.results()
   at PX.Data.PXProcessingBase`1.OuterView.<>c__DisplayClass1_0.<.ctor>b__0()
   at _CustomMethod(Object , Object[] )
   at PX.Data.PXView.InvokeDelegate(Object[] parameters)
   at PX.Data.PXView.Select(Object[] currents, Object[] parameters, Object[] searches, String[] sortcolumns, Boolean[] descendings, PXFilterRow[] filters, Int32& startRow, Int32 maximumRows, Int32& totalRows, String[] sortAsImplicitColumns)
   at PX.Data.PXView.Select(Object[] currents, Object[] parameters, Object[] searches, String[] sortcolumns, Boolean[] descendings, PXFilterRow[] filters, Int32& startRow, Int32 maximumRows, Int32& totalRows)
   at PX.Data.PXProcessingBase`1._SelectRecords(Int32 startRow, Int32 maxRows)
   at PX.Data.Maintenance.GI.GIFilteredProcessing._List()
   at _CustomMethod(Object , Object[] )
   at PX.Data.PXView.InvokeDelegate(Object[] parameters)
   at PX.Data.PXView.Select(Object[] currents, Object[] parameters, Object[] searches, String[] sortcolumns, Boolean[] descendings, PXFilterRow[] filters, Int32& startRow, Int32 maximumRows, Int32& totalRows, String[] sortAsImplicitColumns)
   at PX.Data.PXProcessingBase`1.ParametrizedView.Select(Object[] currents, Object[] parameters, Object[] searches, String[] sortcolumns, Boolean[] descendings, PXFilterRow[] filters, Int32& startRow, Int32 maximumRows, Int32& totalRows)
   at PX.Data.PXGraph.ExecuteSelect(String viewName, Object[] currents, Object[] parameters, Object[] searches, String[] sortcolumns, Boolean[] descendings, PXFilterRow[] filters, Int32& startRow, Int32 maximumRows, Int32& totalRows)

Its trace


Chris Hackett
Community Manager
Forum|alt.badge.img
  • Acumatica Community Manager
  • November 6, 2025

Hi ​@bihalivan15 were you able to find a solution? Thank you!


Forum|alt.badge.img+1
  • Author
  • Semi-Pro II
  • Answer
  • November 6, 2025

I have two customization projects with identical field names. When I renamed one of the fields, the problem went away.