Dynamics AX

This blog is all about Dynamics AX (Formerly Known as Axapta). From News, Releases, Code, How-To's and interviews, all about the Dynamics AX world. (What is this?)

My Photo
Name: Brandon George
Location: Glencoe, Alabama, United States

Site Sponsored By:



Friday, November 20, 2009

Turkey Week is upon us!



Well Turkey week '09 is upon us. It's time for eating, eating and more eating. Also time for being with family, friends, loved one's.

This is a time that we all should reflect on what we are thankful for. Those things, times, people, place and such that help make our lives, ...our lives.

So I am thankful for.:

1.) Must always place God, YHWH, the Creator on high. And the salvation that I have seen in my life.
2.) My wonderful wife, and two little Girls!
3.) Both sides of our family: Mother, Dad, Mother-in-Law, Father-in-Law, Borthers, Sisters, etc.
4.) The ability to provide for my family, by having such a great company I am a part of, Sunrise!
5.) The little things, and small seconds that come and go that bring ordinary happinesses and bright spots into our lifes.
6.) This Blog of course, and all of you who care, and sometimes dare, to read it.
7.) Alabama Football! Roll Tide! (Sorry have to be thankful for the Tide!)

There is a lot more of course, to much to list. That's the point though, being thankful, having good times, laughing, and not taking yourself to serious.

Well I have plenty lined up for some really great post. Doktool for Dynamics AX, thoughts from PDC this week, Cyber warfare and your Cloud solutions survival, and more straight talk on Dynamics AX!

But for now, lets all have a great and wonderful Thanksgiving! I might pop-in for one or two posts next week, but just in case I don't, may you have a blessed and wonderful time with your family, friends and loved ones. Even if you don't celebrate Thanksgiving!





"Visit the Dynamics AX Community Page today!"


Labels: , , , , , ,

Tuesday, November 17, 2009

2009 Microsoft Dynamics Channel Economic Survey IDC Whitepaper

*[ PartnerSource Access Required ]*


Recently Microsoft released a white paper on PartnerSource, showing the Dynamics Channel Economic breakdown. This is survey results compiled from 467 survey respondants.

The full link to this white paper can be found here.: Now Available, the 2009 Microsoft Dynamics Channel Economic Survey IDC Whitepaper!

From the white paper summary.:
"This whitepaper highlights key findings and best practices from the 467 survey responses to the 2009 Microsoft Dynamics® Channel economic survey.

Read this whitepaper to gain key business insights such as understanding the KPIs of the top half of Microsoft Dynamics partners compared to the bottom half and learn important findings and best practices from the survey to help you drive your Microsoft Dynamics business."


This was compiled by IDC, and there is some really interesting information in this white paper.

The executive summary from IDC really sets what the purpose of this white paper is all about.:
"As part of its ongoing commitment to understanding the holistic profitability of its partners, Microsoft commissioned a follow-on Partner Economics Survey with IDC in 2009 to examine the business performance of Microsoft Dynamics partners.

This study follows up two very successful partner profitability studies in 2006 and 2007 and offers four key lessons from top performing partners that every partner should consider. It also offers a wealth of performance data against which partners can benchmark their individual results."


Some of the interesting nuggets, which a lot more is in there, are.:
"Top half partners showed a significant advantage in gross margin at 56% versus 35% for bottom half partners. Much of this difference comes down to services gross margin, which we explore later in this document. Top half partners outperform bottom half partners 51% to 30% on services gross margin. Given that services makes up such a large part of Dynamics business practices, this gap is too big to ignore."

And, something from the Top Partners, lessons learned.:
"Industry Focus Means More Customer Adds and a Trend Toward
Higher Profits"


I highly recommend taking this document and seeing what kind of information it has in it. Very worth while reading, and understanding the landscape of the Dynamics Channel.

That's all for now, check back soon for more!

In the meantime, if you want to check out a great 'Top half' partner, visit Sunrise Technologies, Inc. (www.sunriseconsult.com)




"Visit the Dynamics AX Community Page today!"


Labels: , , , , , ,

Monday, November 16, 2009

ZDNet: Oracle consulting layoffs: but what's the number?

Alright,

I just saw this today, and thought it was very important to talk about. Oracle, the love child for many New York Stock Jockeys, will most likely be doing some big layoffs.

The offical report back from Oracle as of now.: "No comment". But that is to be expected, with the Technology media catching wind of this before Oracle wanted it to leak out.

Now to what's important to understand about this.:
"...I have seen this before in Europe, accompanied by staunch denials or handing off to middle management who couldn’t possibly answer the tough questions. It is standard Oracle procedure."

And The Procedure...
"
It’s coming up to quarter end, the numbers are probably going to look bad, let’s give Wall Street something to cheer about.

Oracle can’t lie about the numbers but will avoid bumping up against the WARN Act if it can. I suspect the latter’s what’s been calculated here.

Since projects are ongoing and people within those projects are also being RIF’d then I also suspect that at least some of those same consultants will be re-hired as contractors. I saw that in Europe on a number of occasions. There’s no reason to doubt it will not happen in the US, especially if the numbers being RIF’d are high and possibly indiscriminately. The short term effect is that Oracle can legitimately call headcount numbers as lower which will please the financial analysts but will mask what’s really going on.

Customers lose out. Pulling consultants off projects mid-way through is disruptive for all the wrong reasons. If Oracle projects are billed on time and materials, then there’s always the chance that Oracle can get away for a few weeks at least by having people on the job billed out in the usual manner even if they’re really coming up to speed and not being productive. Alternatively, Oracle can offshore the work in the hope that any project delays can be compensated by short term over staffing in cheaper locales while maintaining the outbound contracted billing rate. Customers lose out either through delays for which they pay or substandard work requiring later re-work. Oracle doesn’t need to factor in the additional margin immediately as it can provide against the cost leverage it is able to get from sending work to cheaper locations against possible rework. Whichever method of accounting it adopts, it can afford to be cautious and still come up smiling"


Now lets see the big key words in this statement, and go back and reread the above again.: Customers lose out.

That's the reason why I believe this 110% to be important to understand. Customers loose out. So if your considering Dynamics AX vs. Oracle, it's worth noting this kind of moves. And from the Oracle followers it happens a good bit. Read the details about this. It's important and should impact your decision on one vs. the other.

This is another highlight and shows why the Microsoft Partner Model works great. Here at Sunrise Technologies, Inc. (www.sunriseconsult.com) we are hiring people to implement Microsoft Dynamics AX.

So are you going to fall into one of the Oracle Customer black holes? Don't get pushed into that. Look at the better option, Dynamics AX. It's a better fit, better software, and better model for implementation.

And that's not just from me saying those words. The proof is in the actions, customers and software itself.

Microsoft had layoffs as well last year, some of the first in it's history. Did you hear anything about the ERP implementation consultants getting pulled from an active role, on a project going through for another 6 months? No.

Why? Because of the Partner Model. With Microsoft, you will not end up in a ERP support black hole.

I am sure this will kick up some dust, but for this topic, it very much deserves to be kicked up. Comments? Questions?





"Visit the Dynamics AX Community Page today!"


Labels: , , , , ,

Wednesday, November 11, 2009

Reflection - Where and why

With Dynamics AX, the ability to make use of Reflection, or Reflective Programming, exist.

For those that don't quite understand what reflection is, please check out the following wikipedia link, which explains it well.:
Wikipedia.org Link



As described on the wikipdeia article.:
"In computer science, reflection is the process by which a computer program can observe and modify its own structure and behavior. The programming paradigm driven by reflection is called reflective programming. It is a particular kind of metaprogramming.

In many computer architectures, program instructions are stored as data - hence the distinction between instruction and data is merely a matter of how the information is treated by the computer and programming language. Normally, instructions are executed and data is processed; however, in some languages, programs can also treat instructions as data and therefore make reflective modifications. Reflection is most commonly used in high-level virtual machine programming languages."


So the idea of reflection, or meta-programming, has actually been around for a long while. Since the mid 1980's. And the ability to perform reflective programming exists in many langauges, including C#, Java, and X++.

There are plenty of examples actually of reflection, that are common use with Dynamics AX. These may not be considered full reflective based programming, but aspects of this exists all through the common code base of Dynamics AX.

Take for example the Common object. All tables actually extend from this Common object.

As it's base, you have then the ability to send a table of unknown type, and operate it on a method that does not know until runtime, what the Common object actually represents.

So there eixsts, for the Common object, the ability for it to describe itself to later executing code, and therefore can then be acted upon at runtime.

For example.:

public void SomeMethod(Common Rec)
{
Table1 tbl1var;
Table2 tbl2var;
;

switch(tableid2name(rec.tableid))
{
case "Table1" :
tbl1var = Rec;
break;

case "Table2" :
tbl2var = Rec;
break;
}

// Do some code here on the Tables...
}


In the above example we see a somewhat common approach for having a method find out what kind of table that is being passed in, and then operate on that table based on the table name.

Now if you expand this further, there are other classes, and objects that exists inside Dynamics AX that help us really implement Reflection.

These classes include.:

  • SysDictTable

  • SysDictField

  • SysDictClass

  • Etc.



You can browse the AOT, Classes and go to SysDict* and see what all exists there.

The reason I bring reflection up, is I think it's not a well understood topic, and one that if more people understood could really benefit from.

I have done some development work before, that making use of reflection could read an entire SQL Server databse, read in datatypes, field lengths, tables names, and use that to create tables, extended data types, and import the data into these new tables, with a single object.

There is also possibilities for making use of reflection for say you want to have a class framework, and have a class tied to a given customer to operate some kind of acknowledgement to that customer.

You don't however want to have a mega object that operates all this for you, and you want flexibility. What to do?

Well you can make use of reflection, to create a framework that will execute code, not knowing for sure what it's executing actually. Only knowing that the given class it is executing has a specific method. And you made sure of that this method exists, because you make use of reflection to see if it actually does exists.

This can be done with making use of the SysDictClass, and the Object, Object. You could also get fancy, if need be, and create code at run time, compile that code and run time, execute that code at run time, and have that code return it's output to operate on. Again, All at run time!

To see a decent example of this, check the following out.: Generating and running code RUNTIME

Also, a great resource on this very matter, with X++ as the focus is the SysDictCoder blog, found here.: SysDictCoder Blog

The following are just some of the great highlights that have been from this blog, and I myself have made use of most or not all of these in my lifetime of AX.:


Those are just some recent few actually, and there is a lot more.

The whole idea of reflective development, making use of reflection is smart coding. Sometimes people look at it as code that makes code. If I can create a single object that saves me time from coding 200 objects, that that is the better way.

And that last example, true example. Not a made up number. I have done this before, specifically relating to data imports.

That's all for now, I hope this is enough to get you thinking about reflection, some of it's common uses in X++, and maybe how it can help you solve that next need.

Till next time!




"Visit the Dynamics AX Community Page today!"


Labels: , , , , , , , , , , , ,

Sunday, November 08, 2009

Blog spot lioght: Gotdax?

I try to spotlight great resources I find from time to time. Places on the web that has some great peices of information, spanning the entire Microsoft stack, and how that relates to Dynamics AX.

In doing so, I will do these Blog spot light posts. Well today is one of those post, and I want to spotlight a blog called: Gotdax? - click here to visit.

This blog, was recently started this year it seems in July, by a one Jacob Sørensen who seems to be from around the north sea area of Europe, where AX was actually born.

His post, some we have see similar at the SysDict Blog and I myself have posted about, focus on the 'out of the box' ways to get things done inside Dynamics AX.

See I am a big fan of reflection, and reflective development. Meta-programming or meta-development as it is sometimes referred too. And Jacob touches some of that with his post.

Here are some of the interesting one's that he has posted so far.:


I always encourage my fellow bloggers to continue to push the envolope in being creative, and posting relavent information that helps the Dynamics AX community.

This is for sure some good post, Jacob, and I hope to see more from you! Thanks for taking the time to post!

That's all for now. I have more planned post for the upcoming week, so see you then!




"Visit the Dynamics AX Community Page today!"


Labels: , , , , , , , ,

Tuesday, November 03, 2009

Dynamics Anywhere - A new mobile focus for Dynamics AX



Last week a press release caught my eye. It was from a new company called 'Dynamics Anywhere'. A direct link to their website can be found here.: DynamicsAnywhere Website

This company was started to focus on Mobile based solutions for Dynamics brand ERP, and a big focus of that is Dynamics AX.

This comes at a time, when Microsoft stopped it's development of it's mobile framework. The reason Microsoft did this, was told in the ZDNet Blog entry that Mary Jo did, and this blog was featured in.

The news of that was first broke by MSDynamicsWorld.com.

Microsoft saw that most solutions are either custom or based on ISV based frameworks and solutions. And with that, has tipped it's hat and is depending on VAR's and ISV's to provide this need to customers.

That is where DynamicsAnywhere fits in. I am going to be digging deeper into what they actually will be offering, but this is some very interesting news. Mobile need for business data is growing in leaps and bounds, and when it comes to a build vs. buy, well the actual compare is build vs. buy+customize.

From the Press release.:
"On 15 October 2009 Dalosy, a well known and innovative Dutch company specialized in mobile solutions, has founded a new company: Dynamics Anywhere. Microsoft’s international Partner Development Center (PDC) program, in which Dalosy participated this year, resulted in the strategy to start a company fully dedicated to mobile business solutions . This is Dalosy’s answer to the market’s growing demand for flexible mobile solutions. Dynamics Anywhere will focus on the development and distribution of software for mobile applications for companies that use Microsoft Dynamics AX and NAV.

Dalosy has asked Mr. Joop van Voorthuijsen, director of the Dutch Partner Development Center and also founder and former CEO of To-Increase, to head Business Development. Joop has extensive experience in the field of development and distribution of software in the Microsoft Dynamics world. Combined with Dalosy’s broad knowledge of mobile solutions, this gives Dynamics Anywhere a very strong position.

Optimization
Dynamics Anywhere is an Independent Software Vendor (ISV) with focus on the development and distribution of software for mobile solutions for Microsoft Dynamics AX and NAV. These solutions, which will be sold globally through the Microsoft Dynamics partner channel, offer users of Dynamics AX and NAV the opportunity to optimize their business processes. Well known analysts, like IDC and Forrester, expect a lot of companies to invest in mobile solutions to be able to work more efficient and effective.

Improve productivity and save costs
Almost every business process can be improved by deployment of a mobile solution. Examples of this are management of order pickers in warehouses, sales order entry while visiting the customer, optimization of a distribution route or the execution of quality inspections. With Dynamics Anywhere’s innovative mobile solutions, the user can count on improvements in productivity and lower costs. The Return On Investment of these kinds of solutions is often less than one year."




The link to the full Press release can be found here.: DynamicsAnywhere Press Release

Check them out, as I will be, and seeing how this can possible help out customer needs in the mobile area.

That's all for now, back check back soon. See you next time!




"Visit the Dynamics AX Community Page today!"


Labels: , , , , , , , ,

Friday, October 30, 2009

A Possible Dynamics AX Solution - with the Cloud

Alright,

As I talked about in my recent post, More Focus on the Cloud, I want to start showing how Dynamics AX 2009 and beyond can be used with the cloud, cloud services, cloud based applications and platforms.

To kick this off, I want to talk about a possibility that can be done today. So lets invent a company, called CompanyA. They already have Dynamics AX 2009 in place, and some integrations with Dynamics AX with other applications.

They are wanting though, to have a field service application for their field service agents. These agents are located all over the world, and sometimes are contract employees. They have a desired to have the Field Service mobile application to work directly with their instance of Dynamics AX. They want to be able to keep track of work done, by who, hours, operations performed, charges to the clients, ticket information, etc.

They don't want to open their network to the world, and don't really have a lot of internal staff to support hosting a web presence internally. They want to off load the hosting somewhere else.

Also they want to be able to push the data out in the cloud from AX for the field service agents to pick up when they can connect. Finally, they want to pull data from the cloud datasource, to get updates from the field service agents.

So with that said, lets look at this.:


This daigram shows Dynamics AX instance on the top part, with it's core business logic. Then you have AIF and the AIF generated .Net Services. These services live at the service layer, where some SSIS packages and custom .Net Services are used to perform some data extraction and loading for reporting into a datawarehouse possibly.

You have the Services layer acting as the bridge between the Dynamics AX On Premise solution, to the SQL Azure based Field Service Database.

With this option, which by the way can be done right now with the CTP version of SQL Azure, a very secure connection to the outside world, with limited and controlled interactions between Dynamics AX and the SQL Azure database takes place.

Next we have the Field Service Agents, that have a mobile based solution designed to connect to the SQL Azure database, when it can connect to the internet, to download specific information for that field service agent and to also upload updates from the field service agent.

So with this possible solution design, we can address the needs to the client, by making use of SQL Azure Cloud based database. And I point out again, this can be done right now with Dynamics AX 2009 and SQL Azure CTP.

Now to take some steps further, lets look at a diagram from MSDN.:


This image shows how a windows or web client, on-premise can be used and make use of the Windows Azure platform for SQL Azure and Application code that lives in the cloud.

That's all for now. More on this topic to come. If you have questions, issues, interests about seeing more of this. Drop me a comment on this post.

Till next time!




"Visit the Dynamics AX Community Page today!"


Labels: , , , , , , ,

Wednesday, October 28, 2009

Dynamics AX 2009 - SSRS Report Deployment Issue

If you have deployed the SSRS Report Lib.'s from Dynamics AX 2009 before, you might have ran into some timeout issues.

Even with deploying the reports one ReportLib at a time. And if you have not seen this yet, most likely you will.

An error message, sometimes with great detail will show up during the Reports Deployment process, and that will reference something similar to the following.

[ThreadAbortException: Thread was being aborted.]


The ThreadAbortException is the key for this error. Basically the thread trying to do the deploy is timing out writing to the Report Server.

Most likely you cause is related to the amount of langauge files / cultures that are trying to be deployed for the given ReportLib.

A simple change can be done to help fix this issue.



The following is the steps to do, that relate to the above table inside Dynamics AX.:
1) Open the AOT
2) Expand Data Dictionary > Tables > LanguageTable > Fields
3) Right click on the 'LabelFile' field and choose properties
4) Change the Visible property to 'Yes'
5) Save the change
6) Right click on the LanguageTable and choose Open
7) In the table, uncheck the Label file field for any languages that are not needed
8) Deploy the ReportLibs again that were having issues

This may not be the fix all the time, but most likely it will be. Also this can be used to help clean up the Report Manager. The initial deploy can deploy a lot of reports in languages you just don't care about. So you can remove those, or clear the entire Report Manager and then deploy with only the language files / Cultures that matter to you.

Well that's call for now, check back soon, as I have more post coming! See you then!




"Visit the Dynamics AX Community Page today!"


Labels: , , , , , , , , , ,

Monday, October 26, 2009

More Focus on the Cloud

Alright,

So a topic that I have not talked about in a few months is really about to come into focus. Specifically in 2010. What I am talking about is Cloud Computing, and focused on the Cloud Platforms.

That's right I used the plural, because there are many now to choose from. However, the two that I will focus on for my postings are Windows Azure Cloud Platform, and then Google's AppEngine Cloud Platform.



Sometimes it will be a vs. and sometimes it will be different approaches. Because believe me, there are some major differences. For example SQL Azure is a true relational database. I have setup a SQL Azure database, then use SSMS (SQL Server Management Studio) to connect to it, and create tables, etc. Then use SSIS to initially fill the tables or work with that data. It's that simple with creating your relational data with SQL Azure.




However with Google's AppEngine it's a different ball game as POJO's, Plain Old Java Objects are stored via JDO, or Java Data Objects, into a not so relational datastore.

So this is a totally different mind set in thinking.

Now, to point why this will be important for 2010, and beyond. First all of the previous news and interest up to this point, but now check out the following three links.:

- RCPMAG: Making a Cloud Play
Check this statement out from that post.:
"What are kids doing in college today? They don't have Windows servers sitting in their dorm rooms to build really cool applications -- but they do have access to the Google App Engine. What's going to happen in three to five years when those kids start coming into the workforce? You're going to come in with a proposal for $100,000 of infrastructure costs, and there's going to be some kid fresh out of college saying, 'I think I can do that for nothing.' You have to understand the tradeoffs. There might be a reason to spend $100,000 -- there might not be."

That is a big, and true statement. Think about what happened when all of us College kids had Microsoft to play with? Or Java even, how did that change the world? This is going to be a similar aspect.

Now the following, point to interest and also Microsoft expanding it's Office Web Applications testing.:

-ZDNet: Survey: cloud interest grows triple-fold; cost may not be main factor
-Microsoft expanding Office Web Apps test program

Both Microsoft Windows Azure Platform and Google.com AppEngine are in beta still but very soon will be in full swing. And I have been playing with both, and you can do a lot already with these two. Again though it's a totally different mindset sometimes when you look at how you design a service, application, etc.

So I am using this post to talk about the focus on the Cloud, and these two options for working with Dynamics AX instances, and having real world, pratical applications living in the cloud, parts living in the cloud, services living in the cloud, and interacting with Dynamic AX instances on different levels.

The Hybrid Cloud will be the most domaint, and will be like that for the next 5-8 years, as trust builds and certain low level aspects of the computing pardiam are worked out.

See you soon, as we will go cloud hopping! Yes cheezy closing tag... oh well!




"Visit the Dynamics AX Community Page today!"


Labels: , , , , , , , , , ,

Thursday, October 22, 2009

Windows 7 Launched Today!



Well I would not be much of a Microsoft person, if I did not talk about the launch of Windows 7 today. This is the next release of the Microsoft Windows OS. So far, this OS has had rave reviews from critics and analysts alike.

The full online press kit can be found here.:
Windows 7 Launch Virtual Presskit

Just to make sure it's clear, like I posted about last week, Microsoft Dynamics AX 4.0 and 2009 are Windows 7 ready. So being able to take advantage of Windows 7 features as an OS for those companies wanting to make the move, your ERP investment is ready to make use of it now!

Here is the direct link to that post.: MSDW: Microsoft Confirms Dynamics AX Compatibility with Windows 7

Another interesting blog is one talking about what people are saying about Windows 7 OS.: What People Are Saying About Windows 7

That's all for now, congrats to the Windows OS development team, and the marketing team at Microsoft for the latest launch!




"Visit the Dynamics AX Community Page today!"


Labels: , , , , ,