I’m trying to visualize what you want. The best I can do is give you the general rules for how things work in glide, and then you can decide what’s the best method to get what you want.
My general rule is that a details style layout screen, will attach the design of the layout to the table as long as you are on any level below a top level, such as a tab or a ‘show new screen’. I consider Tabs and New Screens to be a top level view, which can have an independent details layout. To explain this further, if you have an inline list and you click on each item to view it’s details, then the details view you see is a second level view and attached to the the table. So wherever you put a list to the same table throughout your app, the details layout for each list item will be the same however you get to it. That’s because the details view from a list is not a top level view.
If you use a ‘Show New Screen’ action, then it truly does just that. If gives you a new screen independent of any existing screens for any instance where you apply the ‘Show New Screen’ action. If you apply the action to a list, then each list item will happen to display the same screen (this is separate from the Show Details action, which has the layout attached to the table), but if you apply the action to buttons, then each button will have independent screens, so the resulting screen from each button will be different and independent of the others.
I’m not sure I follow this statement. If you are referring to the same table, then I don’t know why you would need to copy any columns. Theoretically, you could have multiple different custom forms referring to the same table if you wanted.
If I follow your question correctly, you want multiple different custom forms that have some parts that do the same thing (sending an email) and you don’t want to have to duplicate any logic. I think what I would do in this case, is either have each custom form refer to the same table, or have a separate table just to handle the email functionality. Then have a single relation that links your custom form table to the email table. Then navigate to the email form through a Show Detail action that navigates through the single relation. That way you would be within the details screen of the email table, at that second level, that’s attached to the table. So ultimately, you want to navigate to an existing detail screen instead of navigating to a new screen.
It’s hard for me to explain this generically without understand your full app flow, but I hope it makes sense what I’m saying. If you understand the general rules of how glide works, then it’s easier to understand how to structure you app to make it work the way you want.