We have a number of UD01 customizations in classic that all have the same header/summary information but differ in the details. Key1 determines the applicable screen configuration and we have menu items for each.
I figured this was great for the new layering, I could build a parent UD01_Header with a summary panel and base events, and then have multiple child layers UD01_A, UD01_B, UD01_C, etc with their own detail panel below. Change the parent layer once to update all the others.
I misunderstood the parent/child relationship, since I realise now I can only have a single child layer and the relationship is 1:1 not 1:many. So what is the point?
Is there a way to do what I’m trying, or is it just like classic - make a template and just copy and extend as needed. If I need to update the header, repeat for each layer? I can add multiple layers to the menu item, but I thought that was for adding pieces to the base, flat not hierarchical. I want layer A to use a dataview created in the header layer.
You would want a menu item set up with the header layer as order 0, and your child layer as order 1, and need a separate menu item for each different UD01_A, UD01_B, etc.
Then, you have to convince AppStudio not to copy your complete base layer when it’s setting up the UD01_A, UD01_B layer, etc. - so that you can achieve the desired effect of editing the header layer and have it affect all child layers. That’s where i’m fuzzy. I know how to strip the extra stuff out of the json manually, but “Copy Layer” in App Studio does what it says and copies the whole thing. Not sure what the right entry point is to get a “minimum number of components that are different from the layer i copied from” - that works when doing parent/child, but ive only done this set up to support Desktop/Tablet/Mobile interfaces - i’ve not tried a 1:many parent:child.
Yeah, it copies everything. The other wrinkle is that I want to use the dataview created and populated from the header layer in the layer A, which wouldn’t be available in a minimized layer A.
The parent/child verbiage sounds like it should be a 1:many, it just doesn’t let me create it that way… however if I add the parent layer reference to Ice.XXXDef.SysCharacter01 for layer B it seems to work. I might be breaking something horribly and end up corrupting my layers later, but I’ve got a long way to go before these are live anyway ![]()
Saving UD10_Header now:
These layers will also be affected.
Customization: UD10_LayerA
Customization: UD10_LayerB
Sounds like your Header layer needs to be an editable Base layer. Haven’t tried but is it possible to create a new app by posting UD01Entry system app json as the Base layer? You wouldn’t get base changes from future Epicor releases but, if possible, should give you today’s OOTB base as an editable base with the inheritance you want for child layers. ![]()