Archive for March, 2009

Microsoft TechDays 2009 Virtual Event

Monday, March 30th, 2009

Be a part of Microsoft history and join developers from all over the world for the first ever 24-hour day of technology learning.

Participate in 95 live sessions anywhere, at anytime, or on-demand at your convenience, and:

  • Learn The Technology. With more than 95 sessions on current and emerging technologies in developer tools, mobility, Windows, Office/SharePoint, and web development.
  • Connect With Experts and Peers. A unique opportunity to meet and connect with Microsoft, industry experts, and your peers, from all over the world.
  • Apply What Your Learn. Continue your learning experience after the event. Access all learning sessions on-demand and apply what you learn with an evaluation copy of Visual Studio.

This event takes place on April 1, 2009. Visit https://www.msfttechdays.com/public/home.aspx for more information.

VN:F [1.0.8_357]
Rating: 0.0/10 (0 votes cast)

Share/Save/Bookmark

Pass Through Dex Code and Table Buffer

Tuesday, March 24th, 2009

‘Pass through Dex’ code includes only using tables from the original Dynamics GP dictionary and tables from the Dynamics GP module that you want to include in using the execute command. If you need any other table, you have to submit it to code like the inout table, and you have to do the same for all other fields of that table which are used in this code. Otherwise, the table would not be recognized.

There is an example of ‘pass through Dex’ code. We use table SVC_RTV_MSTR in code, which belongs to the 949 module called in the execute() function and we use our table mxTable which neither belongs to Dynamics GP nor the 949 module.

The tables that will be passed to the procedure will have the address information but will not necessarily have the fields named Name_field, Address_field, like in ‘pass through Dex’ code.

local text code;
local string compile_message;
clear field code;
code = code + “inout anonymous table Table;“;
code = code + “inout anonymous field Name_field;“;
code = code + “inout anonymous field Address_field;“;
code = code + “range clear table SVC_RTV_MSTR;”;
code = code + “release table SVC_RTV_MSTR;”;
code = code + “clear table SVC_RTV_MSTR;”;
code = code + “get first table Table;”;

error_count = execute(949,

code,

compile_message,

table mxTable,

field mxName,

field mxAddress);

if error_count <> 0 then 

warning “Error in pass-through sanscript - ” + compile_message;

abort script;

end if;
 

VN:F [1.0.8_357]
Rating: 0.0/10 (0 votes cast)

Share/Save/Bookmark

Localization and Globalization in C#: Globalization

Thursday, March 19th, 2009

Like localization, globalization in .NET is easy. If you want your application to be globalization-aware you need to display all the date, time, currency and other data in the proper display format. Fortunately, every .NET Convert method has a built in IFormatProvider parameter you can use to specify the culture you want your globalization-aware data to be displayed in. In order to force yourself to use the IFormatProvider, you can use CODE_ANALYSIS in Visual Studio, or external FxCop application which does the same thing. This application inspects your code and suggest to you how you can improve it.

DateTime.Now.ToString(CultureInfo.CurrentCulture);

If the data you are working with is not going to be displayed to the user, for example, you want to save information into a file so you can load it later, you should not use the CurrentCulture as an IFormatProvider. If you save your settings using the “de-AT” culture, and then you try to load them using “en-US” culture you might end-up with the invalid data. For this purposes, you should use CultureInfo.InvariantCulture, since it is invariant to both localization and globalization settings.

DateTime.Now.ToString(CultureInfo.InvariantCulture);

VN:F [1.0.8_357]
Rating: 7.5/10 (4 votes cast)

Share/Save/Bookmark

Easier Dynamics GP Support with Automatic Log Files

Monday, March 16th, 2009

As the knowledge of Dexterity and Microsoft Dynamics GP grows, the projects get bigger and more complicated. The customizations we produce are more and more tightly integrated with core Dynamics GP processes and very often they control and change those core processes and flows.

Such modifications are quite challenging for developers and they most often like to deal with such problems. The main pain point that rises from such customizations are bugs or issues which might appear due to the uniqueness of a customer’s environment or data. Such issues are very difficult to replicate which leads to very ineffective support.

Asking customers to enable the Script Debugger and create a log file or organizing Live Meetings with a demonstration of the issue can often be time consuming for both sides. The elegant solution for such cases may be creation of log files directly from our code. The Developer can incorporate the creation of log files directly in the code which calls the “risky” logic through ScriptLog_Start() and ScriptLog_End() functions of Dexterity.

Logging will overwrite the previous log file every time “risky” logic is initiated. In most cases the issue is identified immediately so if path where the log file is saved is documented, the customer can attach it to a support request and make identifying of the cause much easier.

VN:F [1.0.8_357]
Rating: 10.0/10 (1 vote cast)

Share/Save/Bookmark

Dynamics GP Utilities and Server Name Change Problems

Tuesday, March 10th, 2009

During the login process on the Microsoft Dynamics GP software, we are able to choose a server to connect to, but actually using ODBC connection name.

However, it seems that the Dynamics GP Utilities uses the name of the server itself and not the ODBC name, so we should change the server name using the following commands:

sp_dropserver old_name
GO

sp_addserver new_name, local
GO

This doesn’t take effect until the SQL Server is stopped, and then re-started. Then SELECT @@SERVERNAME should return the server name, and the Dynamics GP Utilities should get past the login process.

VN:F [1.0.8_357]
Rating: 0.0/10 (0 votes cast)

Share/Save/Bookmark

Microsoft Dynamics AX 2009 Snap In Launches at Convergence

Thursday, March 5th, 2009

Vendors Journal Snap In at Microsoft Convergence

Microsoft Convergence is rapidly approaching, taking place next week in New Orleans. For Microsoft Dynamics AX 2009 users - this is great news!

The Vendors Journal Snap In for Dynamics AX 2009 is launching next week in Booth #840. This FREE Snap In enables offline visibility into vendor attribute information within the Dynamics AX 2009 system by capturing that information in a Microsoft Office InfoPath 2007 form. This gives employees the ability to capture all the information needed about a particular vendor, take that information with them, view it and update it, all while remaining offline from the Microsoft Dynamics AX 2009 system. Users can then update the system when back on the network.

Be sure to stop by the booth to be the first to see the Snap In in action. Make sure you ask a Merit Solutions Representative for your download card. Booth attendees will be given exclusive access to the Vendors Journal before general availability on April 1.

If you cannot attend Microsoft Convergence, but are interested in downloading your FREE copy before general availability, request your free Snap In download online. Valid requests will be sent further information on download options.

VN:F [1.0.8_357]
Rating: 0.0/10 (0 votes cast)

Share/Save/Bookmark

Possible Problems with Alternate or Modified Forms

Wednesday, March 4th, 2009

Recently I received a request from a client to add some fields on the Item Detail Entry window, which usually looks like:

Dynamics GP Purchasing Item Detail Entry

That didn’t seem to be a problem, and they told me that the form hadn’t been modified. However, on a screenshot I saw a checkbox named ‘Capital Item’ which is not on the original Dynamics GP window.

Dynamics GP Purchasing Detail Entry

The Client told me that it is because the Fixed Assets are installed in GP. I researched for a while, but there was not a modified window in Fixed Assets. That checkbox actually belongs to Dynamics GP’s original window, but it wasn’t originally placed there. It was moved to another position through some code in Fixed Assets module.

The way of working with fields like that can be a little bit dangerous. This is an example. We don’t know where that field is going to be set. And if we add some more fields on the same position, we can make a collision and in some cases the window would not work well.

The better way is making fields visible or not, but keeping them on their regular positions.

VN:F [1.0.8_357]
Rating: 0.0/10 (0 votes cast)

Share/Save/Bookmark