Error 20217 (The VBA code could not be compiled…)

I wrote an earlier post about a way to get this error when upgrading VBA from an earlier version of Dynamics SL to either v.2015 or v.2018. But I ran into a new way to get it today (other than just writing a bug into your code, which is the usual way to get it). NEVER check Tools > Options > Code Settings > Require Variable Declaration in the SL Customization Manager VB Editor. That will add “Option Explicit” to... Continue reading →

Dynamics SL Object Model Command Line Args

After searching the documentation and internet in vain for anything helpful on this topic, I created two SL SDK applications and used StartAppAndAutomate() to launch the second app from a button on the first. Here’s what I found. It works! I created two labels on the second form to show the command line arguments passed by the first. I called ApplGetParms() twice on the second form to get each of them. That emulates what a standard SL SDK app would... Continue reading →

SL Web Apps Login – 16302

I have had two web app installations now where sometime after installation users were not able to login. Users see the message “The user name or password provided is incorrect.” This occurs even when the user name and password are correct. Behind the scenes, the service log file contains “SQLDBException… 16302… InsertSessionRecord…” Upon investigation the system database installation script seems to have skipped the part where it adds some new columns to the WebServiceAccess table. An XEvent Profiler session revealed... Continue reading →

Accessing Dynamics SL Controls in VBA using sivMyApp.

The Dynamics SL object model documentation uses sivMyApp as the sample variable name to refer to an instance of SIVApplication. When using the object model, the developer has to instantiate it and can name it anything. It’s also always available in the Customization Manager using that name and can be called from VBA, although I don’t think that’s officially documented anywhere. You don’t have to instantiate it in the Customization Manager. I have used it, or seen it used, this... Continue reading →

For Want of a Comma…

When adding a new field to a Dynamics SL screen customization that has a PV (“Possible Value”) property that only uses the value entered in the field (in other words, there are no other parameters), it’s important to end the property value with a comma. Without that you may see strange error messages, like this: The exported PV property, when viewed using a text editor or VS Code should looks like this, when no additional parameters are needed. pv              =   “”pvNameGoesHere”,” Omitting... Continue reading →

Mac Mini 2018 Big Sur Upgrade Issue

While upgrading a headless Mac Mini 2018 to Big Sur the upgrade stopped. I connected a monitor and saw a picture that looked like the side of a laptop with a green dot in a small slider on the left. Under that was an arrow pointing left. That alternated with a picture of a mouse. Under the mouse was a circle with another arrow. I connected a mouse and clicked the arrow under the mouse picture. It was replaced by... Continue reading →

AcumaticaConfig Values

After moving Acumatica web site files to a new location on a development workstation and changing the properties in the Internet Information Server (IIS) Manager, the Acumatica ERP Configuration Wizard still shows the old file location in Application Maintenance. The wizard reads the value from the registry key:HKLM\Sofware\Acumarica ERP\Be sure to launch the Registry Editor as an administrator if you want to change it. The database value comes from the web.config file’s connectionStrings element. The wizard reads that file from... Continue reading →

Deadlock Sleuth

SQL Server’s Extended Events (XE) contain a feature that makes it easy to track down deadlocks. In stark contrast to Profiler, the Extended Events engine is always running, even in production, and has been so since SQL Server 2008. In 2012 XE got a GUI and you can find the always-running session titled “system_health” in SQL Server Management Studio (SSMS) under Object Explorer > Management > Extended Events > system_health. It writes to the ring buffer and an event file.... Continue reading →

Dynamics SL VBA Unbound Fields

When adding an unbound field to a Dynamics SL form for a VBA screen customization it’s pretty common to see System Message 5005, “Unable to locate field … in table b…. Error in property of control Form1.x….” Fill in the field name, table name and control name where the ellipsis appear above. Most customized controls in a VBA customization only have two numbers in the fieldname property, so it’s easy to follow suit for the unbound control. That’s the problem.... Continue reading →

Merge One SQL Column with a Delimiter While Selecting Others

A colleague posed a question, and I thought I’d post the answer here in case I needed to find it in the future, or others needed something like it. I found similar examples on the internet, but not quite like this, where a table needed to be filtered and ordered for the column that was merged, while listing other columns from the initial table. If the subquery filtering for tax returns blank or nothing, still return ‘SALES TAX’. Combine them... Continue reading →