Showing posts from November, 2009

Table Synchronize Error

During the customization of AX 2009, I always get this error prompt out when modifing table, index, EDI or even compile the whole AOT: Cannot execute a data definition language command on ().The SQL database has issued an error. It told neither what table nor index have error. Finally I found a job which can tell you what table cause the synchronization error. static void SIT_ForceDbSynchronize(Args _args) { Dictionary dict; int idx, lastIdx, totalTables; TableId tableId; Application application; SysOperationProgress progress; StackBase errorStack; ErrorTxt errorTxt; ; application = new Application(); dict = new Dictionary(); totalTables = dict.tableCnt(); progress = new SysOperationProgress(); progress.setTotal(totalTables); progress.setCaption("@SYS90206"); errorStack = new StackBase(Types::String); lastIdx = 0;

How to Reinstall or Repair IE6 and IE7

Internet Explorer can and does break. It is usually the result of some addon or Spyware that has been removed and has broken a key element of the popular browser. By now, most people should have already upgraded to IE7--especially if Automatic Updates are turned on. In fact, IE8 will soon be rolling out, and the versions since IE6 are more secure and easier to repair than the old, abandoned version 6. No matter which version you're using you should always have the capability of repairing or reinstalling the browser. In the case of IE6, you might need your Windows CD. Reinstall IE6 There are some cases where it is necessary to keep Internet Explorer 6. This is normally in corporate environments where compatibility is an issue. In this case, you can reinstall IE6 by going to Start>Run and typing %systemroot%\inf . Hit OK and then you should be able to scroll down until you find IE (or IE.inf). Right-click and select Install. You may be asked to insert your Windows CD at this

Count Distinct in Excel

To count the distinct value of a list of data, you can try the following functions (Assume the data are in A1:A30000, you cannot use A:A in this function): =SUMPRODUCT((A1:A30000<>"")/COUNTIF(A1:A30000,A1:A30000&""))

SQL Server 2005: MUST_CHANGE is ON

I have created a SQL user, but it force me to change to password. I go to the SQL Server Management Studio and untick the Enforce password policy. However it prompt the following message: The CHECK_POLICY and CHECK_EXPIRATION options cannot be turned OFF when MUST_CHANGE is ON (Microsoft SQL Server, Error: 15128) A SQL query can solve the problem ALTER LOGIN (Username here) WITH PASSWORD = '(Password here)'

AX 2009 enum DateFlags error

Situation: When you compile the AOT, you got a error which said enum DateFlags not found. Solution: Probably the problem was in different version of client and AOS. Client was AX 2009 without SP1. After installation of service pack on client machine. The compilation was OK.

Add a new inventory dimension

Dynamics AX 2009 includes the following inventory storage dimensions from the packaging: Warehouse Batch number Location Pallet ID Serial and item dimensions: Configuration Color Size Sometimes it may not be enough for the business needs. To add a new dimension, you can follow the steps below: First, I assume you have create the dimension tables (similar to InventColor, InventBatch) Add the key field into the table InventDim. Then add to the field group InventDimensions and InventoryDimensions Add fields to the DimIdx as well as relations if necessary. And then modify some methods if InventDim, just goes thru all methods. Add fields to InventDimParm also. Modify macro InventDimJoin and InventDimSelect. The most important things is do a seach at the top of AOT with #InventDimDevelop as the keywords. Do a complete Recompilation of all stuffs. Finish! You are suggested to add all new dimensions before the system implementation. If there's some open transaction, we