This is what we should use to effectively cancel a CM that we need to delete off of one customer, correct?
AR Invoice Entry – Correction Invoices
To correct an invoice or credit memo, create a correction invoice: Click the Actions menu and select Create Correction Invoice. The Create Correction Invoice window displays. Enter or find and select the Legal Number to specify the invoice for correction. The legal number is the unique number assigned to identify this transaction. If legal numbers are not implemented, the application selects the invoice number entered in this field. If necessary, use the Invoice Date field to set the date on the correction invoice. In the Document Type field, use the drop-down list to select the correction invoice document type (for example, Accounts Receivable Invoice, or Credit Memo). Click OK. Click Yes to the confirmation message. Parent topic: AR Invoice Entry Email Feedback - Epicor ERP 10.2 - Epicor Software Corporation © 2017 All rights reserved.
Here’s what is happening when we try it:
AR Invoice entry, open group, then actions and select create correction invoice
So far so good at this point, then we get an error and here’s what the detail of the error reads:
Business Layer Exception
Invalid Invoice number specified.
Exception caught in: Epicor.ServiceModel
Error Detail
============
Description: Invalid Invoice number specified.
Program: Erp.Services.BO.ARInvoice.dll
Method: createCorrectionInvoice
Line Number: 6315
Column Number: 17
Table: InvcHead
Field: InvoiceNum
Server Trace Stack: at Erp.Services.BO.ARInvoiceSvc.createCorrectionInvoice(String groupID, Int32 sourceInvoiceNum, Nullable1 newInvoiceDate, Nullable
1 newApplyDate, String newDocType, String newCMReason, Boolean recalculateTaxes, Int32& opNewInvoiceNum, Boolean createOnlyCorrectionInvoice) in C:_Releases\ERP\UD10.2.100.12\Source\Server\Services\BO\ARInvoice\ARInvoice.cs:line 6315
at Erp.Services.BO.ARInvoiceSvc.CreateCorrectionInvoice(String groupID, Int32 sourceInvoiceNum, Nullable`1 newInvoiceDate, String newDocType, Boolean recalculateTaxes, Int32& opNewInvoiceNum) in C:_Releases\ERP\UD10.2.100.12\Source\Server\Services\BO\ARInvoice\ARInvoice.cs:line 6586
at Erp.Services.BO.ARInvoiceSvcFacade.CreateCorrectionInvoice(String groupID, Int32 sourceInvoiceNum, Nullable`1 newInvoiceDate, String newDocType, Boolean recalculateTaxes, Int32& opNewInvoiceNum) in C:_Releases\ERP\UD10.2.100.12\Source\Server\Services\BO\ARInvoice\ARInvoiceSvcFacade.cs:line 590
at SyncInvokeCreateCorrectionInvoice(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.12\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.12\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.12\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.SecurityChannelListener1.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 Erp.Proxy.BO.ARInvoiceImpl.CreateCorrectionInvoice(String groupID, Int32 sourceInvoiceNum, Nullable`1 newInvoiceDate, String newDocType, Boolean recalculateTaxes, Int32& opNewInvoiceNum)
at Erp.Adapters.ARInvoiceAdapter.CreateCorrectionInvoice(String groupID, Int32 sourceInvoiceNum, Nullable`1 newInvoiceDate, String newDocType, Boolean recalculateTaxes, Int32& opNewInvoiceNum)