Fixing 'Conversion failed when converting date and/or time from character string' in Sage Intelligence Reporting

9/5/2025

If you’ve ever run a report in Sage Intelligence Reporting (BIC) and been stopped by this error:


      [Microsoft][ODBC SQL Server Driver][SQL Server]
      Conversion failed when converting date and/or time from character string.
      
Sage Intelligence Error Screenshot

You know how frustrating it is. The error shows up in the Sage Intelligence Report Execution Error dialog, with SQL State 22008 and Driver Error 241.

🔍 What’s going on?

Sage Intelligence generates SQL queries behind the scenes based on the report parameters you enter. For example, if you filter by dates in September, it may build SQL like this:


      WHERE dStartDate >= '01-Sept-2025'
        AND dStartDate <= '30-Sept-2025'
      

The problem? SQL Server does not recognize Sept as a valid month abbreviation. It only accepts Sep (three letters) or the full September. As a result, the query fails and you see the conversion error.

🤔 Why does Sage use “Sept”?

Sage Intelligence is Excel-based and relies on Windows regional settings to format dates. Depending on your locale:

  • English (US, UK) → Sep
  • English (Ghana, South Africa) → Sept

That small difference is enough to break reports every September.

🛠 Solutions

1. Change Windows regional format

Switch your PC’s regional format to English (United States) or English (United Kingdom). Both use Sep, which SQL Server understands. This is quick but changes date formats across Windows and Excel.

2. Registry override (recommended)

You can override month abbreviations for your Windows user account by adding the following registry entries:


      Windows Registry Editor Version 5.00

      [HKEY_CURRENT_USERControl PanelInternational]
      "sAbbrevMonthNames"="Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec;"
      "sMonthNames"="January;February;March;April;May;June;July;August;September;October;November;December;"
      

How to apply:

  1. Copy the text into Notepad.
  2. Save as Fix_Sage_Sept_Abbreviation.reg (Save as type = All Files).
  3. Double-click it and confirm.
  4. Sign out or reboot Windows.

3. Quick batch script

For non-technical users, a batch file can apply the same fix automatically:


      @echo off
      echo.
      echo Applying fix for Sage Intelligence September abbreviation issue...
      echo.

      REM Create a temporary .reg file
      > "%temp%\Fix_Sage_Sept_Abbreviation.reg" echo Windows Registry Editor Version 5.00
      >>"%temp%\Fix_Sage_Sept_Abbreviation.reg" echo.
      >>"%temp%\Fix_Sage_Sept_Abbreviation.reg" echo [HKEY_CURRENT_USER\Control Panel\International]
      >>"%temp%\Fix_Sage_Sept_Abbreviation.reg" echo "sAbbrevMonthNames"="Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec;"
      >>"%temp%\Fix_Sage_Sept_Abbreviation.reg" echo "sMonthNames"="January;February;March;April;May;June;July;August;September;October;November;December;"

      REM Import into registry
      reg import "%temp%\Fix_Sage_Sept_Abbreviation.reg"

      echo.
      echo Done! Please sign out and sign back in (or reboot) for changes to take effect.
      pause
      

Save this as Fix_Sage_Sept_Abbreviation.bat, run it once, and restart your PC.

📥 Download Ready-Made Fix

For convenience, I’ve packaged both the registry file and batch script into a single zip you can download here:

👉 Download Sage Intelligence September Fix

⚠️ Notes & Caveats

  • This fix changes abbreviations for the current Windows user. If Sage Intelligence runs on a server, apply it on the server account too.
  • Always back up your registry first (right-click key → Export).
  • Changing regional settings or registry values can affect other apps. Test before rolling out widely.

✅ Takeaway

If you hit “Conversion failed when converting date and/or time from character string” in Sage Intelligence Reporting, check if your report is filtered on September dates. In many locales, Windows uses Sept instead of Sep, and SQL Server rejects it. Overriding the abbreviation fixes the error permanently.

← Back to Blog