Question

Custom menu - User Method / State Machine

  • 1 November 2019
  • 9 replies
  • 910 views

Userlevel 4
Badge +9

Custom menus have several features/methods.
two of Them are user method and state machine. 
can anyone tell me what they are for and how they are used? 
I did check the IFS documentation but honestly it was not very detailed or useful for these two types of method. 
 


9 replies

Userlevel 3
Badge +10

Seems like User Method is only possible to use if you know client method you wish to call. One possible way would be to look into debug Server Trace to find the client method.

Userlevel 7
Badge +19

yes, the usermethod is a special kind of method written in client code. That can be called using this menu type.

 

the state machine is used in different objects. for example a customer order has different states. So you can use this type of menu to change the object state. this is only applicable for objects which already have a state machine defined

Userlevel 3
Badge +10

yes, the usermethod is a special kind of method written in client code. That can be called using this menu type.

 

the state machine is used in different objects. for example a customer order has different states. So you can use this type of menu to change the object state. this is only applicable for objects which already have a state machine defined

How do you find out which objects has state defined. Is there any example to call State Machine event?

Userlevel 4
Badge +9

yes, the usermethod is a special kind of method written in client code. That can be called using this menu type.

 

the state machine is used in different objects. for example a customer order has different states. So you can use this type of menu to change the object state. this is only applicable for objects which already have a state machine definedow

 

how would one familiarise oneself with the available user methods?

 

Userlevel 7
Badge +19

yes, the usermethod is a special kind of method written in client code. That can be called using this menu type.

 

the state machine is used in different objects. for example a customer order has different states. So you can use this type of menu to change the object state. this is only applicable for objects which already have a state machine defined

How do you find out which objects has state defined. Is there any example to call State Machine event?

I don’t have any examples. But you should be able to find available states from the logical unit screen. For example CustomerOrder logical unit has the following states available. 

 

 

Userlevel 7
Badge +19

yes, the usermethod is a special kind of method written in client code. That can be called using this menu type.

 

the state machine is used in different objects. for example a customer order has different states. So you can use this type of menu to change the object state. this is only applicable for objects which already have a state machine definedow

 

how would one familiarise oneself with the available user methods?

 

mm, not 100% sure, but I think you would need to know source code of the client application. I found following in our technical documentation:

 

The UserMethod() function in the window will be called. Provided that you know what code is written in the client, extra functionality can be made available to the new menu item.
Knowledge of the internal structure of IFS Applications is needed in order to find  the correct identifier to use.

 

Userlevel 4
Badge +9

yes, the usermethod is a special kind of method written in client code. That can be called using this menu type.

 

the state machine is used in different objects. for example a customer order has different states. So you can use this type of menu to change the object state. this is only applicable for objects which already have a state machine definedow

 

how would one familiarise oneself with the available user methods?

 

mm, not 100% sure, but I think you would need to know source code of the client application. I found following in our technical documentation:

 

The UserMethod() function in the window will be called. Provided that you know what code is written in the client, extra functionality can be made available to the new menu item.
Knowledge of the internal structure of IFS Applications is needed in order to find  the correct identifier to use.

 

I found that too, but how would I access the Application source code ? 
it sounds like a pretty cool feature which no one really seems to know how to practically use.

Userlevel 7
Badge +19

yes, the usermethod is a special kind of method written in client code. That can be called using this menu type.

 

the state machine is used in different objects. for example a customer order has different states. So you can use this type of menu to change the object state. this is only applicable for objects which already have a state machine definedow

 

how would one familiarise oneself with the available user methods?

 

mm, not 100% sure, but I think you would need to know source code of the client application. I found following in our technical documentation:

 

The UserMethod() function in the window will be called. Provided that you know what code is written in the client, extra functionality can be made available to the new menu item.
Knowledge of the internal structure of IFS Applications is needed in order to find  the correct identifier to use.

 

I found that too, but how would I access the Application source code ? 
it sounds like a pretty cool feature which no one really seems to know how to practically use.

Lets see if someone else has a better idea. Also as a note, our consulting organization is also using the custom objects functionality to extend the solution to our customers’ specific needs. As they already have the source code, they should be able to better use it.

I found that too, but how would I access the Application source code ? 
it sounds like a pretty cool feature which no one really seems to know how to practically use.

If you are not a IFS partner, you must purchase a development license.

Reply