Exception when I try to use" Invoke Bo Method" in BPM

Hi Everyone

I need your help/advice
The purpose of this BPM is to update the field OrderHed.FOB from QuoteHed.CustomField when the SO is created,
I am doing my BPM on the Post-Processing action of the method Erp.Quote.CreateOrder

my first was to execute the GetByID from the SalesOrder.BO by using the “Invoke BO Method”; until here I tried to enabled and save my BPM but when I click on the save button I receive the following error (see below)
when I validate my BPM in designer mode, I don’t receive errors

Why I am receiving this error? could you help me?
thanks in advance for your feedback

Regards
Eduardo

Server Side Exception

There is at least one compilation error.

Exception caught in: Epicor.ServiceModel

Error Detail

Description: There is at least one compilation error.
Details:
Error CS0433: The type ‘Erp.Tablesets.ETCAddrValidationTableset’ exists in both ‘c:\inetpub\wwwroot\XXXXX\Server\Assemblies\Erp.Contracts.BO.SalesOrder.dll’ and ‘c:\inetpub\wwwroot\XXXXX\Server\Assemblies\Erp.Contracts.BO.Quote.dll’ [CustomizationAdapter.cs(264,30)]
Error CS0433: The type ‘Erp.Tablesets.QuoteQtyTable’ exists in both ‘c:\inetpub\wwwroot\XXXXX\Server\Assemblies\Erp.Contracts.BO.SalesOrder.dll’ and ‘c:\inetpub\wwwroot\XXXXX\Server\Assemblies\Erp.Contracts.BO.Quote.dll’ [CreateOrder.CommonTypes.cs(281,33)]
Error CS0433: The type ‘Erp.Tablesets.HedTaxSumTable’ exists in both ‘c:\inetpub\wwwroot\XXXXX\Server\Assemblies\Erp.Contracts.BO.SalesOrder.dll’ and ‘c:\inetpub\wwwroot\XXXXX\Server\Assemblies\Erp.Contracts.BO.Quote.dll’ [CreateOrder.CommonTypes.cs(301,33)]
Error CS0433: The type ‘Erp.Tablesets.PartSubsTable’ exists in both ‘c:\inetpub\wwwroot\XXXXX\Server\Assemblies\Erp.Contracts.BO.SalesOrder.dll’ and ‘c:\inetpub\wwwroot\XXXXX\Server\Assemblies\Erp.Contracts.BO.Quote.dll’ [CreateOrder.CommonTypes.cs(306,33)]
Error CS0433: The type ‘Erp.Tablesets.TaxConnectStatusTable’ exists in both ‘c:\inetpub\wwwroot\XXXXX\Server\Assemblies\Erp.Contracts.BO.SalesOrder.dll’ and ‘c:\inetpub\wwwroot\XXXXX\Server\Assemblies\Erp.Contracts.BO.Quote.dll’ [CreateOrder.CommonTypes.cs(311,33)]
Program: Epicor.Customization.dll
Method: PrepareException
Line Number: 99
Column Number: 13
Server Trace Stack: at Epicor.Customization.Standard.CustomizationCompiler.PrepareException(CompilerErrorCollection errors) in c:_Releases\ICE\3.1.500\Current\Source\Framework\Epicor.Customization\Standard\CustomizationCompiler.cs:line 99
at Epicor.Customization.Standard.CustomizationCompiler.Compile(BuildEnvironment input, String outputAssembly) in c:_Releases\ICE\3.1.500\Current\Source\Framework\Epicor.Customization\Standard\CustomizationCompiler.cs:line 29
at Epicor.Customization.Standard.CustomizationBuilder.Process(CustomizationProject project) in c:_Releases\ICE\3.1.500\Current\Source\Framework\Epicor.Customization\Standard\CustomizationBuilder.cs:line 78
at Ice.BO.BpMethod.Internal.CustomizationToolBase.Regenerate(CustomizationId method) in C:_Releases\ICE\3.1.500.13\Source\Server\Services\BO\BpMethod\Internal\CustomizationToolBase.cs:line 72
at Ice.Services.BO.BpMethodSvc.AfterUpdate() in C:_Releases\ICE\3.1.500.13\Source\Server\Services\BO\BpMethod\BpMethod.Events.cs:line 149
at Ice.Services.Trace.TablesetProfilingCollector.DoTablesetEventTrace(String tablesetName, String methodName, Action action) in C:_Releases\ICE\3.1.500.13\Source\Framework\Epicor.Ice\Services\TablesetProfilingCollector.cs:line 200
at Ice.TablesetBound3.InnerUpdate(IceDataContext dataContext, TFullTableset tableset) in C:\_Releases\ICE\3.1.500.13\Source\Framework\Epicor.Ice\Services\TablesetBound.cs:line 816 at Ice.Services.BO.BpMethodSvc.Update(BpMethodTableset& ds) in C:\_Releases\ICE\3.1.500.13\Source\Server\Services\BO\BpMethod\BpMethod.Designer.cs:line 835 at Ice.Services.BO.BpMethodSvcFacade.Update(BpMethodTableset& ds) in C:\_Releases\ICE\3.1.500.13\Source\Server\Services\BO\BpMethod\BpMethodSvcFacade.cs:line 640 at SyncInvokeUpdate(Object , Object[] , Object[] ) at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) at Epicor.Hosting.OperationBoundInvoker.InnerInvoke(Object instance, Func2 func) in C:_Releases\ICE\3.1.500.13\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 59
at Epicor.Hosting.OperationBoundInvoker.Invoke(Object instance, Func`2 func) in C:_Releases\ICE\3.1.500.13\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\3.1.500.13\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)

Yeah this is a known issue, Epicor declares the same class for multiple BO’s in different DLL’s which causes a compile time conflict. Currently the only way around it is with an external BPM.

1 Like

Thanks Jose for your help, I will work in my workaround

cheers

I’m having the same issue on another BO. Is this issue still not resolved. We have 10.1.600

Vinay