Thanks that worked!!!
My code will now add an invoice thorough my updateable BAQ!! But then I get the error below. I don’t see a method called APTranAfterGetNew available anywhere.
Business Layer Exception
Group record not found. Update not allowed on posted Groups.
Exception caught in: Epicor.ServiceModel
Error Detail
============
Description: Group record not found. Update not allowed on posted Groups.
Program: Erp.Services.BO.PaymentEntry.dll
Method: APTranAfterGetNew
Line Number: 1073
Column Number: 17
Table: ApTran
Field: GroupID
Server Trace Stack: at Erp.Services.BO.PaymentEntrySvc.APTranAfterGetNew() in C:\_Releases\ERP\UD10.2.100.9\Source\Server\Services\BO\PaymentEntry\PaymentEntry.cs:line 1073
at Ice.Services.Trace.TablesetProfilingCollector.DoRowEventTrace(String tableName, String methodName, Int32 rowCount, Action action) in C:\_Releases\ICE\ICE3.2.100.9\Source\Framework\Epicor.Ice\Services\TablesetProfilingCollector.cs:line 146
at Ice.TablesetBound`3.InnerGetNew[TDataTable,TDataRow](TDataTable dataTable, Action`1 setForeignKeys) in C:\_Releases\ICE\ICE3.2.100.9\Source\Framework\Epicor.Ice\Services\TablesetBound.cs:line 388
at Erp.Services.BO.PaymentEntrySvc.GetNewAPTran(PaymentEntryTableset& ds, Int32 headNum, Int32 apTranNo, String invoiceNum) in C:\_Releases\ERP\UD10.2.100.9\Source\Server\Services\BO\PaymentEntry\PaymentEntry.Designer.cs:line 1533
at Erp.Services.BO.PaymentEntrySvcFacade.GetNewAPTran(PaymentEntryTableset& ds, Int32 headNum, Int32 apTranNo, String invoiceNum) in C:\_Releases\ERP\UD10.2.100.9\Source\Server\Services\BO\PaymentEntry\PaymentEntrySvcFacade.cs:line 2640
at Epicor.Customization.Bpm.Ubaq1912D2CBED3E44B69B5EFC00D7A6CE80.UpdateBaseDirective_CreateCheckHeads_64E00981BA7F474AABD188A8D739AFC5.A001_CustomCodeAction()
at Epicor.Customization.Bpm.Ubaq1912D2CBED3E44B69B5EFC00D7A6CE80.UpdateBaseDirective_CreateCheckHeads_64E00981BA7F474AABD188A8D739AFC5.ExecuteCore()
at Epicor.Customization.Bpm.DirectiveBase`3.Execute(TParam parameters) in C:\_Releases\ICE\ICE3.2.100.9\Source\Server\Internal\Lib\Epicor.Customization.BPM\DirectiveBase.Generic.cs:line 131
at Epicor.Customization.Bpm.MethodCustomizationBase2`3.RunDirectives(TParam parameters) in C:\_Releases\ICE\ICE3.2.100.9\Source\Server\Internal\Lib\Epicor.Customization.BPM\MethodCustomizationBase2.cs:line 170
at Epicor.Customization.Bpm.CustomizationBase2`3.Execute(TParam parameters) in C:\_Releases\ICE\ICE3.2.100.9\Source\Server\Internal\Lib\Epicor.Customization.BPM\CustomizationBase2.cs:line 71
at Epicor.Customization.Bpm.Ubaq1912D2CBED3E44B69B5EFC00D7A6CE80.CHS_PaymentEntry_3SvcCustomization.Update(DynamicQueryTableset queryDS, DataSet& queryResultDataset)
at Ice.Services.BO.DynamicQuery.Internal.Ubaq.UbaqBpmCaller.Update(DynamicQueryTableset queryDesign, DataSet& queryResultDataset) in C:\_Releases\ICE\ICE3.2.100.9\Source\Server\Services\BO\DynamicQuery\Internal\Ubaq\UbaqBpmCaller.cs:line 101
at Ice.Services.BO.DynamicQuerySvc.Update(DynamicQueryTableset queryDS, DataSet queryResultDataset) in C:\_Releases\ICE\ICE3.2.100.9\Source\Server\Services\BO\DynamicQuery\DynamicQuery.cs:line 597
at Ice.Services.BO.DynamicQuerySvcFacade.Update(DynamicQueryTableset queryDS, DataSet queryResultDataset) in C:\_Releases\ICE\ICE3.2.100.9\Source\Server\Services\BO\DynamicQuery\DynamicQuerySvcFacade.cs:line 760
at SyncInvokeUpdate(Object , Object[] , Object[] )
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
at Epicor.Hosting.OperationBoundInvoker.InnerInvoke(Object instance, Func`2 func) in C:\_Releases\ICE\ICE3.2.100.9\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 59
at Epicor.Hosting.OperationBoundInvoker.Invoke(Object instance, Func`2 func) in C:\_Releases\ICE\ICE3.2.100.9\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 28
at Epicor.Hosting.Wcf.EpiOperationInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) in C:\_Releases\ICE\ICE3.2.100.9\Source\Framework\Epicor.System\Hosting\Wcf\EpiOperationInvoker.cs:line 23
at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
at System.ServiceModel.Dispatcher.ChannelHandler.DispatchAndReleasePump(RequestContext request, Boolean cleanThread, OperationContext currentOperationContext)
at System.ServiceModel.Dispatcher.ChannelHandler.HandleRequest(RequestContext request, OperationContext currentOperationContext)
at System.ServiceModel.Dispatcher.ChannelHandler.AsyncMessagePump(IAsyncResult result)
at System.ServiceModel.Dispatcher.ChannelHandler.OnAsyncReceiveComplete(IAsyncResult result)
at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
at System.ServiceModel.Channels.SecurityChannelListener`1.ReceiveItemAndVerifySecurityAsyncResult`2.InnerTryReceiveCompletedCallback(IAsyncResult result)
at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
at System.ServiceModel.Channels.TransportDuplexSessionChannel.TryReceiveAsyncResult.OnReceive(IAsyncResult result)
at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
at System.ServiceModel.Channels.SynchronizedMessageSource.ReceiveAsyncResult.OnReceiveComplete(Object state)
at System.ServiceModel.Channels.SessionConnectionReader.OnAsyncReadComplete(Object state)
at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
at System.Net.LazyAsyncResult.Complete(IntPtr userToken)
at System.Net.LazyAsyncResult.ProtectedInvokeCallback(Object result, IntPtr userToken)
at System.Net.Security.NegotiateStream.ProcessFrameBody(Int32 readBytes, Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.NegotiateStream.ReadCallback(AsyncProtocolRequest asyncRequest)
at System.Net.AsyncProtocolRequest.CompleteRequest(Int32 result)
at System.Net.FixedSizeReader.CheckCompletionBeforeNextRead(Int32 bytes)
at System.Net.FixedSizeReader.ReadCallback(IAsyncResult transportResult)
at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
at System.ServiceModel.Channels.ConnectionStream.IOAsyncResult.OnAsyncIOComplete(Object state)
at System.Net.Sockets.SocketAsyncEventArgs.OnCompleted(SocketAsyncEventArgs e)
at System.Net.Sockets.SocketAsyncEventArgs.FinishOperationSuccess(SocketError socketError, Int32 bytesTransferred, SocketFlags flags)
at System.Net.Sockets.SocketAsyncEventArgs.CompletionPortCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)
Client Stack Trace
==================
at Epicor.ServiceModel.Channels.ImplBase`1.ShouldRethrowNonRetryableException(Exception ex, DataSet[] dataSets)
at Ice.Proxy.BO.DynamicQueryImpl.Update(DynamicQueryDataSet queryDS, DataSet queryResultDataset)
at Ice.Adapters.DynamicQueryAdapter.<>c__DisplayClass27_0.<Update>b__0(DataSet datasetToSend)
at Ice.Adapters.DynamicQueryAdapter.ProcessUbaqMethod(String methodName, DataSet updatedDS, Func`2 methodExecutor, Boolean refreshQueryResultsDataset)
at Ice.Adapters.DynamicQueryAdapter.Update(DynamicQueryDataSet queryDS, DataSet updatedDS, Boolean refreshQueryResultsDataset)
at Ice.UI.App.BAQDesignerEntry.BAQTransaction.<CallUpdate>b__380_0(Int32& rowReturned)
at Ice.UI.App.BAQDesignerEntry.Forms.BAQDiagramForm.ShowQueryResults(DataSet dsResults, getQueryResult getResults, ReportAdditionalInfo additionalInfo)
at Ice.UI.App.BAQDesignerEntry.BAQTransaction.CallUpdate()