AP Invoice Error, what does a successful conversion workbench look like?

Hello,
Could someone share what their conversion workbench looks like after successfully upgrading to 2023.2?

I am assisting on troubleshooting, and ours looks like

Which I am pretty sure that the problem that we are seeing related to searching for a PO and adding it to an AP invoice is caused by these sequence ID’s not running to their conclusion and the status not being marked as checked.

Thanks in advance

You need to filter on run date and only look at conversions that ran during your current upgrade. The conversion workbench will show every conversion ran back to the beginning of time and a lot of it won’t be relevant.

Next double click on the ones with errors and read the error details to decide if you need to do anything about it or not.

4 Likes

Yep it’s definitely broken then. Thanks @aosemwengie1

Did you do run pending conversions already?

It was run by someone else, so I am not fully conversant as to what they did.

What I can see is thay the function s conversion failed with errors and whilst it looks like the Bpms and BAQs competed 100% the did not get their check.

We are experiencing an error when selecting a PO in AP invoice entry, we get an error I
“InvoiceReceiptDate” unavailable,. We don’t get that error in the earlier version, or the current demo database version. So all I can assume is the field is part a data view on the ApInvoice. As a result of the conversions not running completely, we are getting this error. I have been td we have disabled any related Bpms, but the errors persist.

I’m open to suggestions…

If you do run pending conversions again does anything start running?

I’ll find out in the morning. Thanks will keep you posted.

Ok finally worked it out.

Credit goes out to @gpayne his post in here reminded me review the server logs, and believe it or believe it :slight_smile: the on screen error did not show additional CSF methods being activated.

Turns out that while we had installed the correct version of the CSF when the initial server was built, the database had been restored from our Live environment and left the CSF at the wrong level.

The server logs pointed to the csf, checked the installed solutions and the version was incorrect.

Thanks for everyone’s help on this one, had us going around in circles.

Just in case people are looking at this later.
The error was this when either adding a PO or a Supplier to an AP invoice.


Resolution was to enable BPM logging on the app server and then review the log after replicating the error.

 <Exception><![CDATA[System.Data.Entity.Core.EntityCommandExecutionException: An error occurred while executing the command definition. See the inner exception for details.
 ---> System.Data.SqlClient.SqlException (0x80131904): Invalid column name 'InvoiceReceiptDate'.
   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
   at System.Data.SqlClient.SqlDataReader.get_MetaData()
   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds)
   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior)
   at System.Data.Entity.Infrastructure.Interception.InternalDispatcher`1.Dispatch[TTarget,TInterceptionContext,TResult](TTarget target, Func`3 operation, TInterceptionContext interceptionContext, Action`3 executing, Action`3 executed)
   at System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.Reader(DbCommand command, DbCommandInterceptionContext interceptionContext)
   at System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior)
ClientConnectionId:d5a4153f-cfcb-4da9-84bd-d95a42b5ffb2
Error Number:207,State:1,Class:16
   --- End of inner exception stack trace ---
   at System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior)
   at System.Data.Entity.Core.Objects.Internal.ObjectQueryExecutionPlan.Execute[TResultType](ObjectContext context, ObjectParameterCollection parameterValues)
   at System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction[T](Func`1 func, IDbExecutionStrategy executionStrategy, Boolean startLocalTransaction, Boolean releaseConnectionOnSuccess)
   at System.Data.Entity.Core.Objects.ObjectQuery`1.<>c__DisplayClass41_0.<GetResults>b__0()
   at System.Data.Entity.Core.Objects.ObjectQuery`1.<System.Collections.Generic.IEnumerable<T>.GetEnumerator>b__31_0()
   at System.Data.Entity.Internal.LazyEnumerator`1.MoveNext()
   at System.Linq.Enumerable.TryGetFirst[TSource](IEnumerable`1 source, Boolean& found)
   at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source)
   at System.Data.Entity.Core.Objects.CompiledQuery.ExecuteQuery[TResult](ObjectContext context, Object[] parameterValues)
   at System.Data.Entity.Core.Objects.CompiledQuery.Invoke[TArg0,TArg1,TArg2,TArg3,TResult](TArg0 arg0, TArg1 arg1, TArg2 arg2, TArg3 arg3)
   at Epicor.Data.DBExpressionCompiler.<>c__DisplayClass57_1`5.<Compile>b__3(TContext c, Func`5 query) in C:\_releases\ICE\ICE4.2.400.22\Source\Server\Framework\Epicor.System\Data\DBExpressionCompiler.Generated.cs:line 1259
   at Epicor.Data.DBExpressionCompiler.GetResult[TDataContext,TQuery,TResult](Func`3 executeQuery, Cache cacheSetting, TDataContext dataContext, TQuery query) in C:\_releases\ICE\ICE4.2.400.22\Source\Server\Framework\Epicor.System\Data\DBExpressionCompiler.cs:line 452
   at Epicor.Data.DBExpressionCompiler.InvokeSingle[TDataContext,TQuery,TResult](Expression expression, Cache currentCacheSetting, Boolean cacheQuery, TDataContext dataContext, Func`2 getDataCacheKey, Func`2 compileQuery, Func`3 executeQuery) in C:\_releases\ICE\ICE4.2.400.22\Source\Server\Framework\Epicor.System\Data\DBExpressionCompiler.cs:line 313
   at Epicor.Data.DBExpressionCompiler.<>c__DisplayClass57_0`5.<Compile>b__0(TContext context, TArg1 arg1, TArg2 arg2, TArg3 arg3) in C:\_releases\ICE\ICE4.2.400.22\Source\Server\Framework\Epicor.System\Data\DBExpressionCompiler.Generated.cs:line 0
   at Csfau.Tables.APInvHed.FindFirstByPrimaryKey(CsfauContext dataContext, String Company, Int32 VendorNum, String InvoiceNum) in C:\_projects\ERPCCCSF\Extensibility\CSF\Australia\Source\Server\Db\Csfau.Data.Model\CsfauContext.Model.cs:line 917
   at Csfau.Internal.Lib.BPay.GetAPInvHeadPBayData(String company, String invoiceNum, Int32 vendorNum, String bankID) in C:\_projects\ERPCCCSF\Extensibility\CSF\Australia\Source\Server\Internal\Lib\BPay\APBPay.cs:line 85
   at Extensibility.CSF.Australia.APInvoiceExtension.GetBPayData(APInvoiceTableset ds, APInvHedRow apInvHedRow, Boolean createExtRow)**
   at Extensibility.CSF.Australia.APInvoiceExtension.AfterMethod(String methodName, Object response, IDictionary`2 parameters)
   at ConcreteClass42.AfterMethod(String , Object , IDictionary`2 )
   at Erp.Services.BO.APInvoiceSvcFacade.ChangeVendorID(String ProposedVendorID, Boolean confirmCheck, String& confirmMsg, APInvoiceTableset& ds) in C:\_releases\ERP\ERP11.2.400.22\Source\Server\Services\BO\APInvoice\APInvoiceSvcFacade.cs:line 4787
   at Erp.Controllers.BO.APInvoiceController.ChangeVendorID(ChangeVendorID_InputModel model) in C:\_releases\ERP\ERP11.2.400.22\Source\Server\Services\BO\APInvoice\Generated\APInvoiceController.cs:line 1928
   at lambda_method4072(Closure , Object , Object[] )
   at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync()
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()
--- End of stack trace from previous location ---

it was this line that gave it away:
Extensibility.CSF.Australia.APInvoiceExtension.GetBPayData(APInvoiceTableset ds, APInvHedRow apInvHedRow, Boolean createExtRow)
at Extensibility.CSF.Australia.APInvoiceExtension.AfterMethod(String methodName, Object response, IDictionary`2 parameters)

hope it helps someone…

4 Likes