Internal Compiler Error: 00000022

Sog
Member Posts: 1,023
Came to this error today:
This can occur when working with recordrefs as parameters in functions.
When the parameter is inclosed in brackets() then the error above will appear.
Compiles
Will not compile
Thought I'd share this.
The C/AL object was not saved in compiled form. Compile it from the Object Designer and run it again. Internal Compiler Error. Error Code = 00000022 . Unknown error.
This can occur when working with recordrefs as parameters in functions.
When the parameter is inclosed in brackets() then the error above will appear.
Compiles
myfunction(myrecordref)
Will not compile
myfunction((myrecordref))
Thought I'd share this.
0
Answers
-
Hello,
I encountered the exact same error message but for another reason :
It happens when one works with DotNet IEnumerator and function with DotNet parameters.
Here's the problem and its solution :
Consider one working with a function that accept any DotNet class, in this example I have taken FileInfo :
If one iterates through an array of FileInfo with an IEnumerator and then gives the current IEnumerator to the function, he will get this mysterious internal compiler error :===OnRun() dnArray := dnArray.CreateInstance(GETDOTNETTYPE(dnFileInfo),2); dnFileInfo1 := dnFileInfo1.FileInfo('C:\Test\dummy1.txt'); dnArray.SetValue(dnFileInfo1,0); dnFileInfo2 := dnFileInfo2.FileInfo('C:\Test\dummy2.txt'); dnArray.SetValue(dnFileInfo2,1); dnIEnumerator := dnArray.GetEnumerator; WHILE dnIEnumerator.MoveNext DO BEGIN printFileName(dnIEnumerator.Current); END; ===printFileName(VAR _FileInfo : DotNet "System.IO.FileInfo") MESSAGE(FORMAT(_FileInfo.Name));
To solve the problem : instanciate a DotNet object with the current IEnumerator and give this object to the function :dnIEnumerator := dnArray.GetEnumerator; WHILE dnIEnumerator.MoveNext DO BEGIN dnFileInfo := dnIEnumerator.Current; printFileName(dnFileInfo); END;
Cheers.0
Categories
- All Categories
- 73 General
- 73 Announcements
- 66.6K Microsoft Dynamics NAV
- 18.7K NAV Three Tier
- 38.4K NAV/Navision Classic Client
- 3.6K Navision Attain
- 2.4K Navision Financials
- 116 Navision DOS
- 851 Navision e-Commerce
- 1K NAV Tips & Tricks
- 772 NAV Dutch speaking only
- 617 NAV Courses, Exams & Certification
- 2K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 320 Dynamics CRM
- 111 Dynamics GP
- 10 Dynamics SL
- 1.5K Other
- 990 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 35 Design Patterns (General & Best Practices)
- 1 Architectural Patterns
- 10 Design Patterns
- 5 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1.1K General Chat
- 1.6K Website
- 83 Testing
- 1.2K Download section
- 23 How Tos section
- 252 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions