This is a repeat of an article I wrote in November 2011 with updated information.
Issue #2 in that blog was regarding permissions during the Generate Cheques routine and the message “There is an error in the Transmission Header - Incorrect Length”.
At that time, the fix seemed pretty obvious and it worked during testing on Windows 7 machines. I wrote about it, forgot about it, and moved on. Months later I learned the client doesn’t use Windows 7 on the machines that they use payroll for (those machines happen to be older Windows XP machines) so the error never came up again and I had completely forgotten about it. Fast forward to last month and another client of mine upgraded all of their workstations to Windows 7 and the error re-surfaced. It is a Canadian Payroll error that only occurs if you use Canada Savings Bonds - when the CSB file is saved, it defaults to the GP2010 application directory without any option to change that destination.
Windows or Dynamics GP (I’m not sure which) seemed to be using the LEAST amount of permissions for a given user to assess if it could save a file in the GP 2010 application directory. Their IT department had added the users affected and given them full control to no avail. They figured that the only solution was to “Run As” Administrator (launch Dynamics GP as Administrator did fix the problem but as a general rule that is a horrible workaround!).
This time I have a confirmed resolution for this: and yes, it is permissions related. After playing with various changes to permissions and confirming the issue STILL occurs for a Domain Administrator (yes!), I came to the conclusion about the “least permissions” angle. So I looked at the least permissions the user had and they were part of the general “Users” group and in that group, the permissions were the default read-only permissions. Changing that to allow “Write” solved the issue. In this client’s case we actually changed “Users” to “Modify” and “Write” just in case modifying an existing file someday comes up.
I can’t confirm this from a “windows User Account Control” perspective since that is not my area of expertise (the “least permissions” thing) but it definitely seems to be on the right track. At the very least, the customer is happy once again because removing UAC or launching Dynamics GP “as administrator” is not a long term solution!