Configured Part GL control not copying from Base Part GL control

Need some thoughts and suggestions here.

Currently we are doing some creative changes to our COSandWIP GL Transaction types (AKA Posting rules).

We are currently doing some testing around KIT-CUS and STK-KIT.

The inventory transaction technical document says that the inventory account on the Part GL control is the first cab off the rank if it exists. For kit items we do want to use the part GL control as kit items exist across many part classes which have a different inventory account.

Testing a standard kit part, this appears to look correct. However if I use a configured kit the new parent kit part does not automatically assume the Part GL control from the base part.

My question is, has anyone seen this before, or are we just missing something in our setup? If not then we are into modifying the method that generates the new part when the configurator is saved.

Any thoughts and suggestions let me know.

1 Like

I always set the OrderDtl.ProdCode / QuoteDtl.ProdCode based on input configuration when generating parts that are not in the Part Master. Example:

QuoteDtl.ProdCode = PCLookUp.DataLookup( "Standards", "Value", Brand );

If you need it to inherit from the parent part, you can either pass it into a configurator input in the OnLoaded or OnPageLoaded scripts, or you can just grab it with a linq query in the same doc rules:

var ParentProdCode = Db.Part.Where( x => x.PartNum == QuoteDtl.BasePartNum ).Select( s => s.ProdCode ).FirstOrDefault();

string DefaultProdCode = "MISC";

QuoteDtl.ProdCode = ParentProdCode ?? DefaultProdCode;
1 Like

@kve I’m trying to add in the EntityGLC for the newly created part from the parent, there is no way to add the EntityGLC entity to the configurator, not that I could see anyway.

Instead I used the document rule and did a check and add there. Which seems to have fixed the problem.

Did use txnscope to do it, and probably should have used the Part.GetNewEntityGLC and then an EntityGLC.Update or and EntityGLC.GetNewEntityGLC then an EntityGLC.Update.

Thanks for pointing me in the right direction… Just don’t do enough configurator stuff to make it second nature.

That being said I would really like to know why the new part is created from the configurator it does not pickup that default from the base part.

What are other alternatives

  • A data directive when the part is added. Need to know the base part to do that
  • Post Method directive on the ConfigurtationRuntime.Save perhaps.

Putting it on the configurator will only make it fire for those configured kits rather than going though and checking every time a configured part is created, so I think it best put there.

Always interested in others feedback on how you would have solved it too…

1 Like

Your idea of adding a data directive on part creating is probably way better than my method of learning about it when Finance submits a ticket about missing transactions.

I learned a new Aussie phrase.

1 Like

Did end up using the configurator, but in hindsight what happens if they add another configurator to create different kits…

I might have to go back and review it. Thanks @kve