Thursday, 5 June 2014

Client/Server method modifier and ‘Run On’ property of object

Client/Server method modifier and ‘Run On’ property of object

Client /Server Basically these are the method modifiers use to minimized the load/traffic between client and server. These modifiers can only be used for static methods of class and table static methods. These can’t be use for instance methods because these method will be run on where the class instance method created. Also we can’t’ use these modifiers for table methods insert, doInsert, update, doUpdate, delete, and doDelete on the Server (where the data source is).

Since we have Client tier (AX Client) and Server tier (AOS), so if we want to execute our method on client then we can set the method modifier to ‘client’ and if we want to execute the method on server than we can set the modifier to ‘server’.Also if don’t set and modifier to the method then method will be run based on the ‘RunOn’ property of the class.If the RunOn property of the class is set to ‘Called From’ then method can either be executed on client or server.












// Sets the RunOn property to Client.
client static boolean myMethod()
{
    // ToDo Insert code here.
}
Above method will be run on AX client

// Sets the RunOn property to Server.
server static boolean myMethod()
{
    // ToDo Insert code here.
}
Above method will be run on AOS
 
But we can also do this(see below) which apparently make the property of the method to ‘Called from’
 
// Sets the RunOn property to Called from.
client server static boolean myMethod()
{
    // ToDo Insert code here.
}

Example1(Client modifier):
We have a table called ‘JournalizingDefinition’ which has a static method ‘lookupRefCtrlJournalizingDefByModule’ which has a ‘Client’ modifier declare. Now this method will always we be used for a form lookup field on a ‘Transaction Posting Definition’ form













Transaction Posting Definition form





Now on a lookup field of the form this method is being used several times for different module(see below).So basically it means that this method will never be used on Server side that’s why it is set to Client(AX Client)















Example 2 (Server modifier):
We have a class ‘LedgerJournalPost’ which has a method called ‘Post’ which is apparently used when we try to ‘Post’ a journal.


 
















So it mean that this method will always be called on Server AOS for posting purposes.




No comments:

Post a Comment

Labels

#veryusefulcode (1) AIF (8) AOT Maps (1) Args (1) Ax 2009 Reports (2) AX 2012 navigation (1) Ax 2012 Interview Questions (1) AX 7 (2) AX Architecture (1) Ax Backup (1) AX Workflow (2) AX2012 (1) AX2012 R2 (1) Ax2012R3 (1) AX2012R3 Dynamics Connector Step by Step Installation and Configuration (1) AX2012R3 EP Step by Step Installation and Configuration EP R3 (1) AX2012R3 HelpServer Step by Step Installation and Configuration (1) AX2012R3 Rapid Start Connector Step by Step Installation and Configuration (1) AX2012R3 Report Server and Analysis Server Step by Step Installation and Configuration (1) AX7 (1) Best practices (1) Blocking user to enter (1) Collection Classes (1) Container (1) D365FO (3) Data Migration Frame Work ax 2012R3 (1) Deleting duplicate Record from Table – Ax2012 (1) Delivery due date notification workflow in Ax 2012 (1) Development Steps EP (1) Dimensions (1) DIXF (1) DMF in Ax 2012 R3 (1) Dynamics Ax 2012 Interview Questions (1) DYNAMICS AX 2012 INTERVIEW QUESTIONS PART 2 (1) DYNAMICS AX 7 (1) EDT relation Migration Tool (1) EP AX 2012 (1) Ep Lookup (1) Error (1) Event Handler (1) F5 (1) File Handling (4) Filter on AX2012 Listpage (1) filtering (2) financial dimensions in AX 2012 (3) form (1) images (1) Installation and Configration (4) Installation and Configuration (11) Installation of Management Reporter 2012 for AX 2012 (1) Interaction class in ax 2012 (1) Interview Question (1) Interview Questions For Ax 2012 (1) Invent DIm (1) Jobs (2) license (1) List page and form menuitem enable code (1) Methods (1) microsoft Dynamics AX 365FO (1) Number Sequence Generation – AX 2012 (5) Number Sequence2012 (1) OLTP-OLAP (1) Passing Args (1) Passing form caller and menu item caller in ax 2012 (1) Passing Multiple Records Args (1) Posting in Ax 2012 (1) POSTING PURCHASE ORDER (1) Query (1) Query Filter Form (2) Query Ranges in X++ (1) Question and Answer (1) Report (1) Reports Controller class (1) RLS in ax 2009 (1) SALES ORDER IMPORT/EXPORT FRAMEWORK BY DMF (1) Security (1) security roles (1) Security Sysqueryrangeutil (1) Sharepoint 2016 (1) SQL SERVER (1) SSRS (2) SSRS Reports Controller class (2) Table collections & Virtual company (1) Time (1) TIPS AND TRICKS (1) Web service AIF (3) Web Services on IIS (AIF) Step by Step Installation and Configuration (1) workflow ax2012 (1) Workflow installation (1) Workflow Method (3) X++ (1)