I have a menu item that runs UD01 form. I built a brand new customization layer on it.
From there, I can create whatever customization I’d like with no issues.
I am able to save and exist the customization dialog.
When I attempt to re-enter the customized form in developer mode, it crashes my client.
There are no actual customization errors or anything, it just simply causes Epicor to stop responding.
I’ve tried this with multiple new and different customization, but the same thing happens.
Could this be a bug?
1 Like
I think I’ve narrowed down the issue.
When creating a new customization layer on a UD0X Form App, I am changing the Visibility property of both the Main Panel and the Tree View to false from true. This compiles and I am able to save.
When attempting to load the customization, the client will simply freeze and will not respond regardless of length of time.
Is changing the visibility property of those two items not allowed? I am not sure how other developers are using these UD forms to create custom forms without hiding the native controls.
Thanks
Some people just move them off page (large negative X value).
1 Like
may not be able to hide, but make the size 0,0 and position -1,-1 ?
2 Likes
Thanks guys, I knew I was doing something dumb. I appreciate it!
Ok so this is a bit weird. I created a brand new layer and attempted to change the location of the mainPanel1 in a UD01 form.
This also makes the form reflect the change:
If I click anywhere else, it resets to the base 0,20 location:
And the form shows the controls again:
What else is weird is after loading the customization again, the XML Editor shows the values that I had entered:
you may need to leave the main panel alone and shrink/move the detail and list tabs
Ok got it to work. The secret is disable epiTreeViewPanel1, enable mainPanel1, make groupBox1 in detailPanel1 invisible, make btnKey1Field invisible, make listPanel1 invisible. Also, when loading the customiation in developer mode, unpin the epiTreeViewPanel1 control and click save layouts.
Thanks for the help!
FYI:
Do not hide the Key Fields by using Visible Property or moving them off the grid. If you hide them via the ExtendedProps IsHidden then Epicor will detect “oh you are only using 2 out of 5 Keys” and it will handle New Record creation for you (Key Field Validation) and will also honor the Tab Key so you don’t have to add additional code to handle KeyPress.
When Developing inside UD Screens use the Extended Props, they are your friend.
edvUD100.dataView.Table.Columns["Key2"].ExtendedProperties["Caption"] = "Batch ID";
edvUD100.dataView.Table.Columns["Key2"].ExtendedProperties["IsHidden"] = true;
edvUD100.dataView.Table.Columns["Key2"].ExtendedProperties["ReadOnly"] = true;
If you don’t then Epicor might make them visible again after you Hit Save + Clear Button. If you use Caption then it will also change the Grid Title’s for you.
2 Likes
Good idea, I’ll include in my boilerplate. This will make a nice little template for other custom forms