Skip to main content

Posts

Showing posts from May, 2016

Microsoft Dynamics 365 for Operations - Tips and Questions

Deep dive into AX 7 - How development happens and where all source code stores; With AX 7, the development has moved back to file system, any technical change we make in the application is saved into an XML file. What does development environment include? The development environment is the one box deployment of AX 7 with its own local SQL database installed. What is the format of the source code files? Source code (Technical changes) are the set of XML files (model elements) onto your disk. Does AOS require to be running during development? Visual Studio user interface communicates with source files (XML files) with metadata API. When you build from Visual Studio, you are compiling into assemblies and other binaries that runtime. Through this whole process of development and build, you are working against files and as we all know Visual Studio works very weel with files so technically there is no need for AOS to be running during design and compilation. Is there a...

Microsoft Dynamics 365 for Operations - How Packages and Models live in Visual Studio

In continuation of my previous post on few major technical changes in the world of AX 7, this post is all about to understand the core components of AX 7 development before we jump into AX development IDE in visual studio. Yes, we will write X++ code into Visual Studio by using four components. There are 4 main components to understand in Visual Studio include Elements, Models, Projects and Packages . To explore more let's have a look at a screenshot of the Application Explorer. Within it, there is an AOT node. Model(s) and Packages(s) in Visual Studio environment I am gonna dig dipper into what Model and Package mean? Model: Model is a group of elements that represents the particular solution (Tables, Forms, and Classes e.t.c)  The definition of the Model is similar to what it was in AX 2012 (AX 2012 Models)  Model is a design time concept. For example A Fleet Management Model, A Project Account Model A Model may contains multiple Visual Studio projects. Ho...

How to: Generate number sequence for new developed module in AX 2012

In this post I am going to create a number sequence for newly developed module in AX 2012.  1. Add a new element in NumberSeqModule baseenum with your new module name 2. Create a new Class NumberSequenceModuleModuleName extends NumberSequenceModule 3. Override loadModule method by adding the parameters of the sequence NumberSeqDatatype datatype = NumberSeqDatatype::construct(); //Message ID: MessageID is a new EDT of string type datatype.parmDatatypeId(extendedtypenum(MessageID)); datatype.parmReferenceHelp(literalstr("MessageId")); datatype.parmWizardIsManual(NoYes::No); datatype.parmWizardIsChangeDownAllowed(NoYes::No); datatype.parmWizardIsChangeUpAllowed(NoYes::No); datatype.parmSortField(2); datatype.addParameterType(NumberSeqParameterType::DataArea, true, false); this.create(datatype); 4. Override numberSeqModule method public NumberSeqModule numberSeqModule() { return NumberSeqModule::NewModule; ...

AX 2012 - sysOperation Framework - Use controller class to open dialog from AX form

In my previous post on  sysOperation framework Example  I described how the sysOperation framework can be used for the batch functionality in contrast to RunBaseBatch framework. In this post I will explain how you can use sysOperation Framework  classes to open a dialog from a AX form using contract and controller classes and then run logic in Service class. In this example I added a new menu item "Example" on projProjectsListPage form which will call controller class. This example is create project transactions using service calls at the end. First we need to create a contract class which holds parameters (dialog fields value or user input). To keep it simple I only added two parameters ProjId (Project Id) and ProjContractId (Project Contract Id). That's the model part of MVC pattern and view part is automatically created by using these data member attributes. [DataContractAttribute] class  FF_ExampleContract {     ProjId ...

AX 2012 - how to use 'NOT LIKE' in AX statements

Please note that I am using ! after 'where' keyword to reverses the effect of 'like'  static void Not_Like(Args _args) {     #define.createdBy( 'faisal' )     InventTable     inventTable;         while select inventTable         where !(inventTable.ItemId like 'I*' )     {         // do your logic       } }