Clock In / Clock Out Form (JmgRegistration)

This question is answered

I am using Dynamics AX 2012 (Not R2) and I am trying to figure out a way to force the "Absence Reson Code Dialog" - JmgDialog form so it can not loose focus.

My problem is that I am using the JmgRegistration form on a terminal with touch screen and bar code scanner. If a user clocks outside their normal profile then the JmgDialog form pops up requesting a reason code.

If the user presses outside the reason code dialog then this dialog will loose focus, falling behind the JmgRegistration form and block the clocking screen. The AX terminal does not have a keyboard / mouse and the workers are not trained to find the now hidden form.

Can anybody please suggest a customisation for this problem.

Thanks in advance

Steve

Verified Answer
  • The window in the background is probably the jmgRegistration form. Can you create a Method onFocus that checks if the child Window (JMGDialogForm) is open and refocus to that or simply Close the existing and open a New one?

All Replies
  • Can you code the dialogue to be full screen?

  • Thanks for the reply. Since posting my question I have implemented this.

    I started with using the modifying the form method JmgDialogForm::run and added this line

       WinAPI::forceMaximizeWindow(element.hWnd());

    This fixed the width to max, but not the height. The absence code form is constructed on the fly with radio buttons matching entries in the absence code table so it makes the dialog fit the contols.

    I have made changes the properties for the form to try and maximuse the form but this has not worked.

    Eventually I increased the font size of the radio buttons in the class method openAbsenceDialog and the size of the exit button in JmgDialogForm::run. The radio buttons now fill the screen.cThis has fixed my problem as the dialog is now the size of the screen and cannot go out of focus.

    BUT

    This is a crude solution to the problem as it is dependant on the number of entries in the absence code table so if this table changes then the screen will have to be re-coded.

  • The window in the background is probably the jmgRegistration form. Can you create a Method onFocus that checks if the child Window (JMGDialogForm) is open and refocus to that or simply Close the existing and open a New one?