MES Security and Customization Issues

I have added a customization to MES so that there is a button that can open time phase. I was able to apply the customization through the config file and add both the Custom MES and TimePhase to Menu Maintenance.

The issue is that the button is grayed out for users.

I have attempted to change the security of MES in Handheld/MES Menu Security Maintenance but it does not seem to work. (Another issue is that in MES Security Maintenance, only Package Control is showing up. None of the other sections show up here)

I have also attempted to setup the employee with different roles (Material Handler, Production, Shop Supervisor, etc). And in Production Info, giving the employee ability to Request Material, etc. This does open some of the buttons on the different screens. What is interesting though is that none of the Package Control buttons work even if the employee has all of the roles. According to the Security Maintenance, Material Handlers, Shipping/Receiving, and Supervisors should have access to these buttons, yet they are still greyed out no matter the employees role.

I feel like these security issues are affecting why my Time Phase button is greyed out too. Anyone know what is going on? Does it have to do with the person who is logging into MES not just the employee login? (User Security?)

Did you set an EpiBinding? If so, can you remove it?

I had added the MESControl.NotUsed EpiBinding. This causes it to be grayed out. When I remove the EpiBinding, it is white and not clickable.

Did you create a new button or simply hijack that button?
You will need to hide the existing button and put a new one in its place.

No this is a new button I made. There wasnt a button there before. It was white without a epibinding so I decided to try adding it.

Strange. The binding should not be used in your case. Did the button get the AppStyling changed?

UseAppStyling is set to True. The only thing I notice that is different than the other buttons is there is no Data Tag. Should that be set to something?

Iā€™m not sure there should be anything special there. Did you close and re-open the form after it was ā€œwhiteā€?
Also, could you screenshot the ā€œwhiteā€ for me?

Yup.


This is without the EpiBinding. I say ā€œwhiteā€ because it is not quite the same as the other buttons that are grayed out.

Also here is the customization used. I also tried subsituting MESMenu with oTrans. No luck there.

private void epiButtonTimePhase_Click(object sender, System.EventArgs args)
	{
		// ** Place Event Handling Code Here **
		ProcessCaller.LaunchForm(MESMenu, "Erp.UI.TimePhasEntry");
	}

Is Enabled = false?

Nope.

Wow. Iā€™m at a lossā€¦

1 Like

Iā€™d try copying it to a new UD menu item and linking that to the button instead.

By ā€˜itā€™, do you mean TimePhase? I have tried adding Time Phase as a menu item under Processes (UDTimePh) and then pointing the button to that instead of directly to the program dll.

private void epiButtonTimePhase_Click(object sender, System.EventArgs args)
	{
		// ** Place Event Handling Code Here **
		ProcessCaller.LaunchForm(oTrans, "UDTimePh");
	}

Still not working. Appears as if it is not clickable.

I have seen many posts that have done just this and has worked easily but I guess I needed some additional steps. I had to set the ReadOnly value of the button.

To have it only be available when an employee is logged in I followed this:

Here is the link that walked through how to do it for any future users having issues with this: