Template Wizard does create SheetNames with more than 30 characters

The Template Wizard (Administration/Periodic/Data export/import/Excel spreadsheets/Template Wizard) creates unfortunately SheetNames that might exceed 30 characters, which is not allowed by Excel and results in annoying message boxes that are requesting a new SheetName with less than 31 characters. The following code change in the method SysDataExcelDef/buildTmpExcelWorksheet will resolve this problem: 1: //modifications done for working…

0

Large Xml-documents with an AIF-WebService.

If you are faced to ‘large’ Xml-documents with AIF-WebServices, you might be faced to difficulties for Inbound and OutBound services. The following two points should be applied for the client app.config, if the client uses the WCF for communicating with the AIF-WebService (Inbound-Services – you are sending large Xml-Documents to the AIF-WebService), and on the…

1

‘0’-values don’t appear in Xml files generated by the AIF

Numeric values that are 0 (not null) are not serialized and don’t appear in the Xml file. The reason for this is, that the numeric types in Dynamics Ax are not nullable (must have a value) and do interpret the value 0 as a "null value" (0 as a ‘magic number’) during the serialization. The…

0

AIF-service call with COM and .Net Business Connector

When executing an AIF-service with the COM and .Net Business Connector the client will not be notified about exceptions during the execution. The reason for this is, that AIF-services are always executed within a transaction (ttslevel = 1) even when no ttsBegin has been executed. And as described on the X++ blog, exceptions are not…

0

Request for the permission of type 'SecurityPermission' failed

When you get the following exception while executing a report on the SSRS or within Ax: System.Security.SecurityException was unhandled Message="Request for the permission of type ‘System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089’ failed.” this is probably because the permission set in the config file of the SSRS – which you can normally find here (SQL 2005): C:\Program…

3

base64Encode() of the kernel class ‘Image’ does return an empty string

A partner asked me why the base64Encode method of the Image class does always return an empty string. In the following example: 1: Image image; 2: str sBase64Encode; 3: ; 4: image = new Image(); 5: image.loadImage(@’C:\sample.bmp’); 6:   7: sBase64Encode = image.base64Encode(); 8: info(sBase64Encode); will display an empty string for the variable sBase64Encode in…

0

Gender information in Employees-form and the Global Address Book (GAB)

You can open the information about employees with the Global Address Book (Basic/Global Address Book) and with the Employees form (Basic/Employees). Normally it is no problem to modify data in both forms, but unfortunately this is not true for the ‘gender’ property. This information is stored in the DirPersonPartyDetail (Gender) and EmplTable (EmplGender) table. The particularity…

0

IDynamicsAXExpressionBuilder returned error code 0x80131509

In forms that are using the ActiveX-control ExpressionBuilder (like TrvPolicyForm) you might be faced to the following error message: Method ‘initialize’ in COM object of class ‘IDynamicsAXExpressionBuilder’ returned error code 0x80131509 (<unknown>) which means: End enum not found. This is caused by an enumerator that is used by the ActiveX-control. The method “initialize” of that…

4

Deploying service references with Dynamics Ax 2009

Service references are are great feature in Dynamics Ax 2009 and using WCF with Ax is now really easy. But unfortunately it is not easy to deploy this service reference. If you now need to deploy a service reference from the development environment to the evaluation environment, or from the evaluation to the production environment,…

2

RPC error 1702 when calling a WinAPI method from a batch job

You probably already noticed that error messages are sometimes not really helpful when you are trying to understand a problem. The following code creates such misleading error message: 1: public void run() 2: { 3: ; 4: if(WinApi::folderExists(@”c:\temp\”)) 5: info(“Folder exists”); 6: else 7: info(“Folder does not exists”); 8: } If you do execute this…

4