Default form at AX login

This question is answered

I'm wondering if it's possible for a form to be shown upon login by a user with specific attributes (e.g., role, name pattern, etc)? These users have very narrow responsibilities so we'd like to reduce their need to click through the system when their primary responsibility revolves around a single form. Thanks in advance!!!

Verified Answer
  • Kbanh,

    I don't know of any out of the box solution for having a startup form. However, we do have a customization that does this that you could try.

    You can create a class to manage what user & forms are started. You can then call this class from

    Classes\Info\startupPost().

    Place your code in the startupPost() method and it should execute when users login. We have this solution in place for users in a warehouse.

    Hope that helps,

    -John

  • for example, to open the customer list page, you specify the AOT path to the form:

    ax32 "-startupcmd=startupelementaction_\Menu&Items\Display\CustTableListPage"

All Replies
  • Kbanh,

    I don't know of any out of the box solution for having a startup form. However, we do have a customization that does this that you could try.

    You can create a class to manage what user & forms are started. You can then call this class from

    Classes\Info\startupPost().

    Place your code in the startupPost() method and it should execute when users login. We have this solution in place for users in a warehouse.

    Hope that helps,

    -John

  • Optionally you can change the user's windows shortcut for AX to pass a command line parameter to open a form. I need to double-check what the exact syntax is, unless someone here immediately can tell you.

  • Joris, we're not using the rich client but are instead using a terminal services solution. Any suggestions there? Thanks!

  • Terminal services still uses the rich client. If you're publishing the app as a remoteapp or through Citrix, it should still be possible to pass command line parameters to the AX rich client.

  • Do you happen to know the command line syntax? Thanks!

  • for example, to open the customer list page, you specify the AOT path to the form:

    ax32 "-startupcmd=startupelementaction_\Menu&Items\Display\CustTableListPage"

  • JorisdG, I ran into an access issue using the "-startupcmd". The error said that the user under which I'm running this command did not have sufficient rights for startupelementaction. Any idea what permissions are required to allow this to work? Thanks very much!

  • The default security only allows users with development access to use this startup command (see Classes\SysStartupCmd\canRun).  A developer could override this method on the SysStartupCommandStartupElementAction class to perform a different security check (perhaps by using the hasMenuItemSecurityAccess global method).

  • You beat me to it Dan :-)

    I'm pretty sure the security of the menu item will be checked anyway, so i think it's pretty safe to override the canrun method.

  • Thanks for the response guys. I'm not sure I will be comfortable with so little time under my belt with AX. Are there other options I have (e.g., privilege(s))? Thanks!

  • Unfortunately no, this is tied to the overall developer role. I'm sorry I guess my answer didn't work out :-(

  • Thanks JorisdG! I went into our sandbox environment and modified the canRun code a bit to only run the !isRunningMode() portion of the code but I was still getting the same insufficient access errors. Guess there's deeper security checks, which makes sense. Going to have to find another option.