Search through blog..

Monday, November 30, 2015

AX Retail - Basic setup to get started

In this post, the focus will be on some basic setup which needs to be understood and implemented for having a functional AX Retail.
Assuming that you have already installed the necessary AX Retail components beforehand. If not, Please go through the below links, which you can find already on Internet (no need for any Partner permissions)
  • A nice Youtube video explaining Retail Topology - See here
  • Also you can find the Microsoft's Retail Deployment Guide - PDF here

So now let's focus on what all steps you have to take, settings which you have to configure at the AX Retail HeadQuater level in order to have a functional AX Retail. Kindly note that I am us
 
Configure and Validate Retail Headquarter settings:
  1. Initialize Base configuration for AX Retail
  2. Verify Stores
  3. Publish channels
  4. Retail store management and security
  5. Hardware profiles
  6. Configure Commerce Data Exchange (CDX)
  7. Verify Retail server configuration
  8. Check Infolog's generated for more information
  9. Restart AOS
1. Initialize Base Configuration for AX Retail:
After the successful installation of components, it is very important to initialize a set of jobs.
  1. Go to Path: Retail > Setup > Parameters > Retail parameters.
  2. Click Initialize button.
  3. This will popup a Message box: "Initialize the base configuration data for Retail"
  4. Click Yes
  5. Will take couple of minutes
  6. And will pop up an infolog on completion.
  7. Go to Path: Retail > Setup > Retail scheduler > Retail channel schema
  8. Click Generate classes.
Initialize : will create the necessary objects, based on the setup done in the following forms (we will see some more details during this post).
* Retail channel schemas
* Scheduler jobs
* Distribution schedule

Generate classes - will create the necessary methods in the RetailCDX* classes for download/upload of the data between AOS and Async server.

2. Verify Store:
For a retail setup, the next most important to check is the Stores. Few configurations and setup which I feel are important are as below
Path: Retail > Common > Retail channels > Retail Stores.
Choose (double click on) the store on which you would like to work and verify the setup, say MIAMI for example (in Contoso data)
  1. Verify "Screen Layout" (Fast tab)
    Validate and create new records to select for "Enterprise POS" and/or "Modern POS" based on your requirement.
  2. Verify that at least one POS Register exists under "Registers" Factbox
  3. Verify that the store is assigned to the correct "Legal entity" (In General Tab > Identification)
  4. Verify that "Employee address book" (In General Tab > Address book) are setup correctly
  5. Verify that "Real-time Service profile" (In General Tab > Profiles) is setup.

3. Publish Channels:
This step is necessary to make the store Active and involves very simple process.
Path: Retail > Common > Retail channels > Retail Stores.
Click Publish on the Ribbon > Setup. And click Yes on the Message box that pops up.

4. Retail Store Management and Security:
This is basically to view and enable the necessary Store workers the access to work on POS devices. Involves a set of simple steps.
  1. On the Retail store, in our example, MIAMI. Click Workers on the Ribbon > Set up.
  2. AX directs to the list of all the Workers on this store. Validate and "Hire New Worker" if needed.
  3. Double click on the worker and validate that the Worker should have the correct address (Profile Tab > Worker summary > Other information > Address books)
  4. Go to Retail Tab
  5. Click on Hyperlink "POS Permissions" (Under Retail > Information)
  6. Validate the permissions and "Override permissions" if necessary
  7. Verify "manageDevice" is checked in order to have the Worker be able to work on the POS

5. Hardware profiles:
Hardware profile is used to set preferences and properties for a register and peripherals of the register, such as the cash drawer and the receipt printer.
Path: Select Store (MIAMI) > Registers (Factbox). Click on Hardware profile (In General fasttab > Profiles)
And setup necessary Hardware profiles.

6. Configuring CDX:
Configuring the Commerce Data Exchange consists of several steps again:

1. Message Database configuration:
This has to be performed in AX Form, Path: Retail > Setup > Parameters > Retail scheduler parameters.
Make sure the "Server name" points to the AsyncServer name and
"Database name" points to the AsyncServer Database.

2. Aysnc Server profile:
Go to Path: Retail > Setup > Retail scheduler > Channel Integration > Async Server profile.
Verify that profile exists. The Data download and Upload intervals provide the time intervals for request and response. Type '0' for an immediate response.

3. Working folders:
The working folders are needed for the temporary placement of Outgoing and Incoming data. Can be setup in AX form, Path: Retail > Setup > Retail scheduler > Channel Integration > Working folders.
Verify that the records exist for both Download and Upload paths. Also validate the permissions for folders - both AOSServiceAccount and AsyncServerServiceAccount should have read/write permissions to the selected folders.

4. Channel Data Groups:
Go to Path: Retail > Setup > Retail scheduler > Channel Integration > Channel Data Group. Verify and create (if necessary) a new Channel Data group with a Unique "Name". And "Retail Channel schema" and "Working folders" should be selected from the drop-down.

Also for every Channel Data group, we would have to create Distribution schedule. Path: Retail > Periodic > Data distribution > Distribution schedule.
Add the newly created Channel Distribution Group to "Distribution schedule" and create batch jobs accordingly.

5. Channel Database:
Go to Path: Retail > Setup > Retail scheduler > Channel Integration > Channel database. 
The form allows us to configure which Channels should be made available in which Database. Note: In Contoso Demo data, every Single store is mapped to Single channel Database.
Create a new Channel Database ID (unique) by filling the necessary fields. 'Username/Password' combination should match values used during installation of Async client instance for the corresponding Channel Database.
'Retail Server' FastTab information purpose is to be able to have active database assignments for each channel.

6. Real-time service profiles:
Go to Path: Retail > Setup > Retail scheduler > Channel Integration > Real-time Service profiles.
Create a new records, fill in necessary fields under table 'Retail time service location', Server (certificate name), Web application name (is the one used during installation).
The checkbox under FastTab:Settings, set true, if User login credentials for Realtime POS or modern POS should always query real time service for validation.


7. Verifying Retail Server configuration:
The validation can be done from Path: Retail > Setup > Retail scheduler > Channel Integration > Channel profiles.
Validate all the fields as per settings done above. And 'Retail server URL' is the one which Modern POS users. 'Media based URL' is the one where the Images in Retail POS are hosted. 'Hardware station URL' is to connect with the peripherals like printer/barcode scanners.

Certificate Management
Before Aysnc server is installed, the SSL certification should be configured. This is to ensure secure communication between Async server and Aysnc client.
Go to Path: IIS > Select Server > Server certificates > Create new Self-signed certificate. Provide necessary details.
The code to be provided during installation can be found on the newly created certificate. Go to Path: Double-click on the certificate > Details > Thumbprint. Copy the code.

Async Server:
Another setup to be performed on the Async server level is to, Go to Path: Retail > Setup > parameters > Retail scheduler parameters > Click button "Sync Metadata".

Thanks for reading, hope it helps. Will update more details as I dig more into the setup. Happy DAXing. 

Monday, November 2, 2015

How to identify the SQL Version and SQL Edition

When working on AX implementations, one main purpose of Analysis phase is to identify and estimate the License costs for the Customer. And a major part of the Implementation cost can go into "Purchasing licenses"

During such a scenario, I found some helpful information on how to identify the Microsoft SQL Editions.

If you want to check the SQL Version and/or SQL Edition of the installed product, you can follow the below simple steps:
  1. Connect to the server in which SQL Server is installed.
  2. Open SQL Server Management Studio from Programs/Start. Alternatively you can type 'ssms' in Run.
  3. Connect to the Database
  4. Open a new Query window and paste the below code

    select @@servername
    go
    select @@version
    go
    select serverproperty('edition')
    go


  5. Execute the query


This will result in Three different output/resultset. The first provides you the "Name of the server", second provides you the "Version of Installed SQL" and the third provides you with the "Edition of SQL Server installed".

Couple more examples are as below:







Also you can find more details and Compare Editions, i.e, verify the features supported by different Editions of SQL in this Microsoft link: https://www.microsoft.com/en-us/server-cloud/products/sql-server-editions/overview.aspx 

Sunday, November 1, 2015

Retail understanding and AX Retail

Clearly, we can see focus shift in the Microsoft product (Dynamics AX) towards Retail industry. In this post, I will try to put forward the understanding of Retail industry and map how Dynamics AX is placed in order to support Retail.

What is "Retail"?
Retail is the sale of goods to the public in relatively small quantities for use or consumption rather than for resale. Or we can also say, It is the process of selling consumer goods and/or services to customers through multiple channels of distribution to earn a profit.

According to Wiki, the top ten Retailers are as below. Maybe this helps in understanding what is a Retail industry is all about.
Worldwide Top Ten Retailers
Rank Company Country of Origin
1 Walmart  United States
2 Tesco  United Kingdom
3 Costco  United States
4 Carrefour  France
5 Kroger  United States
6 Amazon.com  United States
7 Lidl  Germany
8 Metro AG  Germany
9 The Home Depot  United States
10 Aldi  Germany

So, Retail management: is basically the process of managing a Retail industry. And this is where Dynamics AX comes into picture. (Version: AX 2012 R3 CU8 onwards have several enhanced features in use for Retailers).





The above picture provides an illustration on what are the most important factors to be considered in Retail mgmt. Customers is the focus, Products and Suppliers are also very much needed. Also is the channel through which Retailer provides the Products to Customers.

Dynamics AX for Retail:
Dynamics AX is an ERP system that handles entire Business process, back office duties, most advanced Retail POS and packed with the Omni channel experience to the customers.
Microsoft Retail website is quite helpful if you are looking for an Overview of Dynamics AX for Retail implementations and module specific details.

If you would like to learn about Microsoft Dynamics AX Retail stories. You can do that from Clicking here. Just apply the necessary filter on the left hand pane and click search. Some most popular Customers are:

Dynamics AX Retail terminology:
Head office: From where the organization operates all its retail stores located in different geographical locations of the country.
Retail store: A store that is geographically located at a particular place. For an example: In a city, if a retailer has 3 outlets these are nothing but Retail stores in AX.
POS Register: At each store, there would be number of billing terminals which are called POS terminals.
Store database: Each store has a Store database where the necessary data from AX main database is replicated. Each POS can also work offline with an offline database at the POS, if needed.
By now, you might have realized that one important point to be noted is that there are lot of data push and pull operations to be performed in retail. Data to be transferred from Stores database to Headquarters and vice versa.

Some Examples of the data that should be transferred between store and headquarters:
  • Sales data that is recorded at POS must be transferred to Head quarters
  • Payment data and product receipts data that is recorded at POS.
  • New Products that need to be released to stores.
  • New store personnel data and credentials
  • Offers and schemes related data that should be applied to stores and POS
Some Examples of the data that should be transferred between store and POS terminals:
  • List of products
  • POS Screen layout
  • Employees who can login to POS
Operating model guideline for Retail:
Before going into the Technical details of Retail, it is important to get an understanding of the basic operating model for Retail.
Operating model is an abstract representation of how an organization operates across a range of domains in order to accomplish its function. The below picture illustrates Retail operating model.

We can split the Operating model logically as shown below:

Enterprise Foundation: Basically holds the Foundation information about the Business and Technology. This information is basic to kick start any operation.
Business foundation can consist of Finance, Human resources, Corporate support, even real estate. And the Technology foundation can consist of Infrastructure, Security, Integrations, Service mgmt., Device mgmt. and basic information.

Selling: The next logical section of the operating model can be "Selling". As the name suggest, the focus here is to enable selling in the most efficient way. This will include Customer Service/experience, Customer support, Store, Master data management, Order processing and Financial services.

Movement: The retail organization is about reaching out the necessary products to the customers over locations and in necessary quantities. The "Movement" becomes an important logical section in this regards. This will include Supply chain mgmt., Asset and Fleet mgmt., Inventory mgmt., Distribution mgmt., Manufacturing, Network mgmt. and Fulfilment mgmt.

Plan & Buy: The next logical section should be planning and buying. In order to provide the necessary products to the customers, products have to be purchase from vendors with store specific planning. This will include Merchandising planning and mgmt., Marketing and Enterprise analytics.

Strategy: The final and most important logical section is Strategy, where the decisions are made based on roadmap and also historic data analytics. This section will include Corporate strategy, Customer and Brand strategy, Channel strategy, Portfolio strategy etc..

Hope this post helps. The idea was to give insights about Retail industry. I am working on Technical details of Dynamics AX for Retail and try to post more technical going forward. Happy DAXing.

Also here is a video with the high level goal of Microsoft for their aggressive approach with regards to Retail industry in here.

Wednesday, September 9, 2015

Data partition in AX 2012 and why?

Why? - Data partitioning enables us to logically separate all the business data (very few System data, like batch framework and AIF data are shared). With partitions we achieve the isolation of business data, partition specific, with in the same installation of Microsoft Dynamics AX. The business data can be still shared among companies/legal entities that are in the same partition. Microsoft Dynamics AX displays the partition key in the title bar of the client application.

Quick Tip: If utilized properly, partitions can help use maintain two systems, for example, test and UAT in the same environment. We can create one partition for Test and another for UAT and provide access only to the Super users / Customers.
This will help in utilizing the System resources more effectively and reduce unnecessary hardware costs.

Pros and Cons to have Partitions in Production environments:
For a production environment, if the Customer demands to completely isolate the data between two subsidiaries (or geographic locations). This can be achieved using partitions.

General suggestions show that partitioning is not advisable in most of the cases. Instead other approaches are suggested like, Updated security roles with access to specific legal entities, XDS policy implementation, closing cross-company creep holes could be the approach.

Cons in more detail:
  • There will be general overhead/inconvenience with running partitions for anyone administering the implementation, like checking batch jobs in different partitions. Also a result could be that there is significant increase of Admin work, maybe by 50-75%. 
  • In most real world scenarios, we tend to encounter a business scenario where we will have to try and find mechanisms to share data anyway. 
  • There is a significant risk that people might forgot to do the replication of setup and tasks with multiple partitions in place.
  • When you create a legal entity, the system assigns it to the current partition. And the legal entity can never be moved to another partition. However, its data can be exported using DIXF, MDM, Excel Addins, Default import export or other data transfer mechanisms. 
  • A typical user has authorization in only one partition. However, some users might be authorized to see data in more than one partition. For an example, System administrators are authorized to see data in all partitions.
  • Default BI Analysis (SSAS) will be specific to partition and needs additional configuration for each partition.
  • The crossCompany keyword will apply only to the companies that are in the same partition.
  • A user who plans to work on multiple partitions, if any. When you start the AX32.exe client, your session is assigned to one partition context for that whole session. You can switch to another partition only by starting a new client session.
    Even for System Administrators, they would need separate clients for each partition.
  • For every new partition, the system adds one legal entity DAT. And each DAT company in different partition is a separate company from the others and cannot be deleted.

Hardware details:

  • Data partitions do not create separate installations of Microsoft Dynamics AX. Partitioned systems share instances of AOS, databases, AOT, administration functionality, AIF, and the batch framework, SSRS, MR.
  • However, partitioned systems demands to maintain separate application data, organizational hierarchies, and user configurations.

Quick tip: With Partitions enabled you might have to log on to different client sessions. So you can mention "partition parameter" at run to dynamically open sessions with specific partitions.
Open Windows run, type:
ax32 -partition=nameofpartition

Data partitioning architecture - TechNet link.



Scope of Data Isolation:
Consider the following characteristics of partitioned systems:

  1. Shared AOS – A partitioned system is created in the context of a single instance of AOS or an AOS cluster. When Microsoft Dynamics AX is first set up, the system creates a default partition. The partition key for the default partition is "initial". Additional partitions can be created during installation or upgrade, or at any time after the system is deployed. After a partition has been created, it cannot be deleted.
  2. Shared database – In a partitioned system, all data is stored in the same database or database cluster. Partitions provide only logical data separation. No physical isolation of data occurs. Many system tables are shared tables that do not contain a column for the partition ID.
  3. Shared AOT – A partitioned system has one Microsoft Dynamics AX Application Object Tree (AOT). Customizations are always shared across all partitions. The model store database is not partitioned. Metadata that describes objects in the AOT is shared. Custom code is shared across the system.
  4. By default, code runs in the context of the partition for the current session. This behavior resembles the behavior of X++, which handles companies by using the dataAreaId field. Therefore, pre-existing code that uses the X++ query mechanism works without modification. Direct SQL calls must be modified to filter on the context of the current partition.For more information about using data partitions in development projects, see Partitions, Companies, and Data Isolation in Microsoft Dynamics AX.
  5. The Microsoft Dynamics AX cross-reference system is shared. Role definitions are shared across the system. In Microsoft Dynamics AX 2012 R2 and later versions, multi-partition configurations have no new requirements to define or maintain reports.
  6. Common administration – Users who have the system administrator role can access data in all partitions. However, to view data in a particular partition, the administrator must log on to a client instance for that partition. System administrators can create new partitions. Both system administrators and security administrators can manage users in the context of a partition. License keys and configuration keys are shared across the system.
  7. Common application integration – In a partitioned system, Services and Application Integration Framework (AIF) is a shared subsystem. To guarantee that incoming requests are correctly isolated, you can restrict an inbound integration port to a particular partition. Additionally, you can specify a target partition for an incoming request by including the partition key in an XML element in the header of the document. Similarly, outbound responses indicate the source partition for the response data by including the partition key in the header. Because AIF uses a single gateway queue, a system administrator can view all documents in the queue, AIF history, or exceptions list in any partition. The forms that display these lists now have a field that shows the partition key for each document.
  8. Common batch framework – Like AIF, the batch processing framework is a shared subsystem. One batch server is shared across partitions. However, each batch job is associated with a specific partition. The batch server executes batch jobs in the context of the correct partition. To view batch jobs or their history, you must log on to the partition that the batch jobs are associated with.
  9. Separate application data – Access to application data is controlled by a combination of the partition ID and the user's role and permissions. The Microsoft Dynamics AX client does not let users view unified data across partitions. Microsoft Dynamics AX does not provide a query mechanism to retrieve and combine data from multiple partitions.
  10. Separate organizational hierarchies – Each partition contains its own organizational hierarchy, which includes one or more legal entities. Like a new deployment of Microsoft Dynamics AX, each partition that is created contains the DAT company as a default legal entity. System administrators can add legal entities to each partition. Legal entities are never shared between partitions, even if the legal entities have the same name.
  11. Separate user configurations – Each partition contains its own list of authorized users. The system administrator who created the partition is automatically created as a user who has the system administrator role in the new partition. After a system administrator logs on to a partition, he or she can add authorized users to the partition. A user can be authorized to access data in more than one partition. However, the user must be created and managed separately in each partition. This user must use a separate client configuration to start a separate client session for each partition. Each user is associated with a default partition. This default partition can be changed by a system administrator. A user who logs on to Microsoft Dynamics AX by using a default client configuration is logged on to the user's default partition. The Microsoft Dynamics AX client application displays the partition key for the current session in the title bar of the main window. User roles are assigned for each partition.
 Information above is shared based on my experience with Partitions and several online sources. Happy Daxing. 

Saturday, July 4, 2015

Error 1001: During install of Dynamics AX components

Hello everyone.. 

Very rarely you might encounter an issue during installation of an AX component/AOS, where you typically get just an error message: "Error 1001" and nothing else. 



Reason: This is a generic issue, which seems to be caused with an improper uninstall. And the reason behind the scenes is that the corresponding registry entries are still present in the "CurrentControlSet" in Registry, even after you have uninstalled the components. 

Solution: There could be many ways to clean the Registry entries (regedit). However, my suggestion is to use the tool provided by Microsoft for resolving such issues. 
Link - https://support.microsoft.com/en-us/help/17588/fix-problems-that-block-programs-from-being-installed-or-removed

You can download and follow the steps provided by Microsoft to fix the wrong entries in registry and should be able to continue in your next install attempt.  

Thursday, June 18, 2015

Here we have information about AX7 / AX2015 / Rainier!

AX7 / AX2015 / Rainier, we have heard many names for the upcoming and much awaited Microsoft Dynamics AX Product. Seems like Microsoft has settled with the name AX7 now.


While looking out for information about AX7, I have bumped into this Microsoft Convergence Video: http://convergence.evo-td.com/library/CS15A000 . Although the site demands you to login, I think it is pretty easy to register. Check it out!
Microsoft aims to release this product by End of 2015 and has clearly stated the Guiding principles for AX 7.0.
  1. To Empower every person and every organization on the planet to achieve more
  2. To create more personal computing
  3. To Reinvent productivity and business processes
  4. To Build the intelligent cloud
Below is some key information on AX Functionality enhancements from the above roadmap session.

Productivity:
  • Modern, web-based user experience based on HTML5 technology. The client is device-independent and has a panorama view / dashboard and next generation role centres. In addition, it can support mouse or touch screen!

  • User adoption still remains a focus. Data input screens look similar to AX 2012 R3 so users can easily transition after a Dynamics AX upgrade.
  • Hover over task and preview mode reveals underlying data, reducing the number of clicks that are required to view underlying data.

  • Integration of the Windows “Hamburger” navigation pane for ease of navigation on screens with limited real estate. You can add or subtract favorites, view recent screens you have visited, etc.

  • New metadata search experience enables the use of metadata search to find an application screen very quickly (dashboard, navigation pane or Metadata search) without having to navigate menus.
  • Run multiple screens – you can dock windows and use side by side screens. A great feature for those in production who typically run multiple screens, like MRP side by side.

  • Personalization has not been overlooked. Microsoft understands that there is an emotional connection with the application user experience and this can make a huge difference in how much you enjoy work or how much you don’t.


Analytics:
 
Power Business Intelligence (BI):
  • Data entities will expose an OData (Open Data Protocol) feed and can be consumed by Power BI.
  • Embedded Power BI – drill from one box to transactional information – in memory (Read Real-time Analytics).


Task Guides – AX documentation built on the fly:
  • The old Task Recorder gets reimagined into Task Guides.
  • End-user can now walk through a process end-to-end in a guided fashion.
  • Has annotation capability to provide feedback on a business process. This gives users the ability to add notations as they walk through the guided process.
  • So many uses:
    • Useful for increasing productivity
    • Helps users manage change
    • Use it for testing
    • Use it for training
    • Use it for support – send a Task Guide to Microsoft to ask them to get something working
  • Step by step snapshots of how Task guides work will follow soon. 
Development:
  • Visual Studio is used for development. Classic MorphX and model experience is still available.
  • Microsoft has enabled a WYSIWYG, multi-window environment to aid in developer efficiency. Utilities can work in both the web page and the designer at the same time.
  • Exceptionally rich customization environment.
  • More details regarding Dev enhancements will follow soon.
Data management:
  • Data management in AX 7.0 has implemented everything from DIXF / DMF from AX 2012 with a rich user experience.
  • Version 7.0 significantly improves the capability to do data load tasks that are common in a heterogeneous environment where you want to have a single version of the truth.
  • Bring in incremental data loads and do name and name pattern matching. This reduces the amount of work that a consultant/business analyst needs to do to import data.
  • Drag and drop field mapping.
  • Data uses staging tables and can be mapped either in a visual or tabular format.
  • View a side-by-side comparison of records in the live system.
  • Bring imported data into forms for preview and validation.
Upgrading from Older versions of Dynamics AX?
If you are interested in upgrading from your current version of Microsoft Dynamics AX to AX 7.0, here are some important details that may help in your decision process:
  • Business logic and Data Model in Dynamics AX 2012 R3 CU8 is the same as in AX 7.0. This will make the transition from AX 2012 R3 to AX 7.0 relatively straightforward. AX 7.0 is more about the modern user interface and new tools and less about the underlying business logic and data models.
  • Direct upgrade path from AX 2009 & AX 2012.
  • Support for AX 2009 has been extended to 2018 because Microsoft wants all their customers to be able to upgrade to AX 7.0 at their own pace.
  • Functionality in CU8 will be made available to AX R2
Availability of Dynamics AX Version 7.0.
  • End of 2015 year release.
  • Initial launch will be in the Microsoft Cloud only. This will be followed by an on-premise release.
  • Microsoft is fully committed to support running Dynamics AX in the public or private cloud and on-premise and Hybrid.
  • Reminder as above that the data model and business logic is the same.
 
Data collected from: In here & from here.

Cumulative update 9 (CU9) for AX 2012 R3


Microsoft has recently released Cumulative update 9 (CU9) for Microsoft Dynamics AX 2012 R3 very recently and here some information around it.
The Knowledge base (KB) article number is 3063879 and the Build number after installation would be 6.3.2000.326. There is lot of information on TechNet – here is the link.
CU9 is the second Cumulative Update for Dynamics AX 2012 R3 after CU8. It only applies to R3 at this moment. However Microsoft has made the Cumulative Update 8 for Dynamics AX 2012 R2.  There by enabling users of AX R2 customers to directly upgrade to AX7 in the near future.
In addition to containing several hotfixes that have been recently released, CU9 also includes new features across several different module sets. The details on the new features can be found in the above TechNet article link - do look to the bottom of the page of the “What’s New” link to see the content that’s specific to CU9.
Starting with Dynamics AX 2012 R3, you can now slipstream the update using Microsoft Dynamics Lifecycle Services. The step by step process of doing so is detailed in the Installation guide from Microsoft – http://go.microsoft.com/fwlink/?LinkId=613553  
For a detailed walkthrough of the installation process, please check this video: https://www.youtube.com/watch?v=gNg3pHWxoik&feature=youtu.be 
Note: The best part now with CU9 is that you can actually choose the updates you want to install. This is very helpful in case you have an ISV solution on top of the standard in your implementation. You can wisely choose the update based on Customer requirements and not disturb the underlying code used by the ISV code. I strongly recommend to watch the above video in order to get a visual sense of the installation process.
Good luck.

Tuesday, June 2, 2015

Harddisk full: But don't see any specific file which has grown big?

Occasionally, I ran into this issue in my Virtual machine - that the Harddisk becomes full and I couldn't find any specific huge file like, a over-grown database (.mdf, .ldf) files and neither do I have huge amount of backup files (.bak).
 
After a little searching, I found about the Windows.edb file has grown exponentially and was taking up all the hard disk space. This file is a result of Windows Search service. Below is the problem statement from one of the Microsoft sites:
 
Problem statement:
In Windows 8 or Windows Server 2012, the Windows Search Service may bloat the Windows.edb file. When this issue occurs, the Windows.edb file grows to a very large size and consumes lots of disk space. In some instances, the file size can be larger than 50 gigabytes (GB).
 
Resolution:
To resolve this issue, install update rollup 2836988 for Windows 8 and Windows Server 2012. For more information about how to obtain this update rollup package, click the following article number to view the article in the Microsoft Knowledge Base:2836988: Windows 8 and Windows Server 2012 update rollup: May 2013
 
How to delete / shrink the huge size of Windows.edb:
  1. Swipe in from the right edge of the screen, and then tap Search. Or, if you are using a mouse, point to the lower-right corner of the screen, and then click Search.
  2. Tap or click Settings.
  3. In the search box, type indexing options.
  4. Tap or click Indexing Options.
  5. Tap or click Advanced.
  6. Tap or click Rebuild on the Indexing Settings tab.
  7. Tap or click OK to confirm.

Information collected from here.

Sunday, May 3, 2015

How to Fix Reporting services in Microsoft Demo VM

Microsoft Demo VMs are really useful if you are aiming to quickly understand a particular AX component or even to quickly go ahead with a specific development. However, it comes with default settings and thus might cause some issues regarding few components around AX. Today, I have seen such issue with Reporting Services in my AX 2012 R3 Microsoft demo VM. 

Error received when I click "Create report folder" in "Report Servers" AX form. 
The report server installation is not initialized

Also when I checked in the EventLog, the below errors were logged. 
Report Server (MSSQLSERVER) cannot connect to the report server database.
&
Web service request FindItems to Report Server http://bakedev02-1-1/reportserver/ReportService2010.asmx failed with SoapException. Error: The report server installation is not initialized.

When I check the "Reporting Services Configuration Manager", everything looks normal. However, I could NOT successfully load the "Report Manager URL" nor the "Report Server Web service URL". I could connect and test the Database connection successfully though. 

One difference I have noticed from a working instance is that the "Backup" and "Change" buttons were disabled under the "Encryption keys" tab in the Reporting Service Configuration Manager


Solution I applied: 

After a bit of troubleshooting, the solution which worked for me is quite simple - the below two steps: 

  • Go to "Encryption keys" tab and click button Delete in the "Delete Encrypted content" group
  • Go back to the main node and "Stop" and "Start" the service. 
I followed the change with two more steps in order to get AX reports up and running: 
  • Creating a new folder "DynamicsAX" in the Reporting Service URL via Dynamics AX "Report Servers" form. (Path: Dynamics AX Client >> File >> Tools >> Business Intelligence (BI) tools >> Report Servers) 
  • And publishing the standard AX reports from "Microsoft Dynamics AX 2012 Management Shell" >> Publish-AXReport -ReportName *
Hope this helps!

Saturday, May 2, 2015

How to Fix EP in Microsoft Demo VM environments

It is quite often that you will run into issues trying to open Enterprise portal (EP) in Microsoft released DEMO VM environments. This is basically because of the change in IP addresses and also depends on which host the VM is installed (Hyper-V or Oracle Box or VMWare).

The same happened to me and I have found posts by several helpful AX Tech people. Below are two such related links. 
  1. Here's how you can fix it. (intranet.contoso.com) (VMWare player): Link
  2. EP is not working In AX 2012 R3 VM: Link
  3. How to use Set IP Utility: Link (Needs PartnerSource access)
However, My personal suggestion to you is to reinstall EP after you have setup your VM in order to have better results. Of course, this requires that you have the Setup file for the respective AX Version.

Steps to follow:
  1. Download/collect setup file of the necessary AX Version (like AX 2012 R2 or AX 2012 R3..)
  2. Copy the setup files to the VM (or) use a Shared folder from your host
  3. Run as Administrator, the setup file. 
  4. Uninstall Enterprise portal (if felt needed Enterprise search as well)
  5. Reinstall the EP component using the same Setup file
  6. Choose the Default website when prompted for (Change port number/binding later if needed)
  7. After successful installation, you should have NO PROBLEMS in opening and working with Enterprise portal again :)
 
I feel that, this is a simpler way to fix if you have necessary setup files. Good luck!

Sunday, February 1, 2015

How to solve if SQL database struck in Restoring state

Sometimes, even during a simple task like Database backup and restore could be tricky because of a strange error. That is how IT works.


During one such operation, I have observed that the Database was struck in Restoring state. And no SQL operations were working on the DB with the usual error message: "The database is not accessible for the user" and "The database is currently in use".


If you have a database backup, which most probably you will have if you were trying to restore the database - you can follow the below steps as a solution:
  1. Execute the dbcc detachdb ('Your database name')

    The observation made here is that, the GUI way to detach the database does not work. However, when you run this command - you will receive an error message when you execute. However the database is dropped which gives you a scope to attach the database again.
  2. Now use the database backup with you to restore the database again. Maybe try to use RECOVERY while restoring, just to be sure.  
If you are wondering what is the difference between RECOVERY and NORECOVERY,
  • Restoring a database with RECOVERY (also is used by default, if you don't specify explicitly to use NORECOVERY). RECOVERY key ensures that the database is available and online for use for the users after completion of a successful restore.

    RESTORE DATABASE YourDatabase FROM DISK = 'C:\\Data\\YourDatabaseBackup.bak'
    WITH RECOVERY
    GO

  • Restoring a database with NORECOVERY is especially used when multiple backups are to be restored. So for all the restore backup commands we include NORECOVERY key and this ensures that the databases is not released to users until the last backup in the sequence is restored to the database. And with the last backup the RECOVERY key is used and database goes online.

    RESTORE DATABASE YourDatabase FROM DISK - 'C:\\Data\\Backup_part1.bak'
    WITH NORECOVERY
    GO

    RESTORE LOG YourDatabase FROM DISK = 'C:\\Data\\BackupLog-part2.trn'
    WITH RECOVERY
    GO
Hope this helps.