Min Max Safety Mass Update

Anyone out there know how to work this thing? I can’t get anything to load in it. Tried the o’l binocs for groups, tried the Actions > Part Search option. Help shows specifics about using it but nothing at the top level on populating it.

I’m just clicking around so I could be totally wrong, but it seems to be related to the part class settings and what’s included in the calculations there. If I search by part, and don’t have any of these checked, I get nothing (like you)

After I check them, I get an exception, so it’s trying to do something, but I can’t figure out what…

image

Probably not helpful…

Ah so you were able to reproduce that error! My user mentioned that little guy but I couldn’t reproduce it, he must have been using a class with those checked. I’ll see what happens in my 10.2.300 instance.

Here’s the full text of the error, if that’s helpful.

Application Error

Exception caught in: Epicor.ServiceModel

Error Detail 
============
Message: The cast to value type 'System.Decimal' failed because the materialized value is null. Either the result type's generic parameter or the query must use a nullable type.
Program: Epicor.ServiceModel.dll
Method: ShouldRethrowNonRetryableException

Client Stack Trace 
==================
   at System.Data.Entity.Core.Common.Internal.Materialization.Shaper.ErrorHandlingValueReader`1.GetValue(DbDataReader reader, Int32 ordinal)
   at lambda_method(Closure , Shaper )
   at System.Data.Entity.Core.Common.Internal.Materialization.Coordinator`1.ReadNextElement(Shaper shaper)
   at System.Data.Entity.Core.Common.Internal.Materialization.Shaper`1.SimpleEnumerator.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at Epicor.Data.DBExpressionCompiler.GetResult[TContext,TQuery,TResult](Func`3 executeQuery, Cache cacheSetting, TContext dataContext, TQuery query) in C:\_Releases\ICE\ICE3.2.200.13\Source\Framework\Epicor.System\Data\DBExpressionCompiler.cs:line 429
   at Epicor.Data.DBExpressionCompiler.InvokeList[TContext,TQuery,TResult](Expression expression, Cache currentCacheSetting, Boolean cacheQuery, TContext dataContext, Func`2 getDataCacheKey, Func`2 compileQuery, Func`3 executeQuery) in C:\_Releases\ICE\ICE3.2.200.13\Source\Framework\Epicor.System\Data\DBExpressionCompiler.cs:line 160
   at Epicor.Data.DBExpressionCompiler.<>c__DisplayClass4_0`6.<Compile>b__0(TContext context, TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4) in C:\_Releases\ICE\ICE3.2.200.13\Source\Framework\Epicor.System\Data\DBExpressionCompiler.Generated.cs:line 141
   at Erp.Services.BO.MinMaxSfyMassUpdSvc.GenerateMinMaxSafetyRecords(String companyId, String plantId, String classFilter, String partFilter) in c:\_Releases\ERP\RL10.2.200.0\Source\Server\Services\BO\MinMaxSfyMassUpd\MinMaxSfyMassUpd.Queries.cs:line 135
   at Erp.Services.BO.MinMaxSfyMassUpdSvc.GetMinMaxSafetyRecords(String classFilter, String partFilter) in c:\_Releases\ERP\RL10.2.200.0\Source\Server\Services\BO\MinMaxSfyMassUpd\MinMaxSfyMassUpd.cs:line 86
   at Erp.Services.BO.MinMaxSfyMassUpdSvcFacade.GetMinMaxSafetyRecords(String classFilter, String partFilter) in c:\_Releases\ERP\RL10.2.200.0\Source\Server\Services\BO\MinMaxSfyMassUpd\MinMaxSfyMassUpdSvcFacade.cs:line 163
   at SyncInvokeGetMinMaxSafetyRecords(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.200.13\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.200.13\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 47
   at Epicor.Hosting.Wcf.EpiOperationInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) in C:\_Releases\ICE\ICE3.2.200.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)
   at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)

   at Epicor.ServiceModel.Channels.ImplBase`1.ShouldRethrowNonRetryableException(Exception ex, DataSet[] dataSets)
   at Erp.Proxy.BO.MinMaxSfyMassUpdImpl.GetMinMaxSafetyRecords(String classFilter, String partFilter)
   at Erp.Adapters.MinMaxSfyMassUpdAdapter.GetMinMaxSafetyRecords(String classFilter, String partFilter)

I get the same thing in .300 I have to assume a condition created by something else missing, not necessarily a bug. I’ll reach out to support and see what they say, thanks for the nudge. I’ll report back with findings.

1 Like

You need a data fix from Epicor. I use the min max tool for multiple customers. You need to setup the part class settings.
The error appears for every customer I have used this for. I will try to find a case number for you.

1 Like

Issue of mine fixed with setting the plant cost id on plant record. You need to run trial balance before and after setting this IN TEST and ensure the amounts tie out the same. If they do, set the cost ID from the Actions menu in production and away you go!

3 Likes

We have the same thing happening and opened a case with Epicor yesterday on it. We were using this program in 10.2.200.6 without issue but now that we are in 10.2.300.3, it no longer works. We get the same system.decimal error as you. I spoke with Epicor on this case for a while and they did not get the error in 10.2.300.4 so they think it may be a bug. We are working with them for resolve on this now. We do not want to upgrade again (we just went to .300.4 on 11/3) so we are hoping for a fix.

I posted the fix. Add Plant Cost ID to your site record and it should be ok. If you have multiple buyer beware there are GL impacts here.