Results 1 to 10 of 10
  1. #1
    Join Date
    May 2012
    Posts
    2

    Question Data Compare for MS Access only works with English regional settings?

    When using non-English regional settings Data Compare does not succeed in successfully comparing two Microsoft Access databases. If regional settings are set to English, everything works fine.

    For non-English regional settings one only sees table names. To see table content one has to switch regional settings to English (UK, US, etc)...

    The issue can be simulated on Windows XP/Vista/7 32/64bit with Microsoft Access 2007/2010 files.

    Anyone an idea how to make BC work with non-English regional settings?

  2. #2
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    11,376

    Default

    Hello,

    Would you be able to send us a copy of your BCSupport.zip via email to support@scootersoftware.com? We do not have an MS Access format installed by default, and our additional download we offer on the website installs a Text Compare format (not Data Compare). With a copy of your settings, we should be able to see how you set this up and try to replicate the problem.

    Could you also include a link back to this forum post in the email for our reference?
    Aaron P Scooter Software

  3. #3
    Join Date
    May 2012
    Posts
    2

    Default

    I am sorry for replying so late.
    There is nothing strange to my configuration. I downloaded the additional file formats for Windows, one of which is 'Microsoft Access Databases'. Just take 2 MS Access 2010 databases (a database with one table with a few records is sufficient).
    Select both databases in Windows Explorer, right-click and select 'Compare'. As long as your regional settings are on EN-us, the database's tables and its contents. If you switch regional settings to something else (BE-nl in my case), only the table names are compared, not their contents.
    As you asked, I sent a file BCSupport.zip to you with screen shots of the behavior.

    About the probable root cause:
    The access compare use the MDB_to_CSV.vbs script in the BC3 Helpers folder. The script basically loops over all tables, exports them one by one to a temporary file and appends each temporary file to a resulting text file which is then subsequently compared by BC3. The extraction instruction is
    app.DoCmd.TransferText acExportDelim, "", obj.Name, tmpNames(I)
    As far as I could find on the internet, this instruction does not handle non-US language settings very well. There should be a work-around by making a schema file, but this is where I got stuck...

    Could you please help me out and tell me how to compare 2 MS Access 2010 databases' contents using BC3?

  4. #4
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    11,376

    Default

    Hello,

    Thanks for the email. I was able to reproduce the issue you are referencing by switching my regional settings, but this seems to be a bug in Microsoft's handling of VBScript. There is a codepage parameter we can try adding, but in my tests I was not able to see a difference in output when adding it to the DoCmd:
    http://msdn.microsoft.com/en-us/libr...ice.11%29.aspx

    Do you have better luck when attempting to add this parameter?
    Aaron P Scooter Software

  5. #5
    Join Date
    Aug 2013
    Posts
    2

    Default Data Compare for MS Access only works with English regional settings?

    Hi,

    has anyone found a workaround for this issue? I have the same problem and adding a codepage parameter to the docmd call changed nothing.
    I have the problem since we moved to Windows 7.

  6. #6
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    4,584

    Default

    I tested adding a codepage to the "app.DoCmd.TransferText" command in the vbscript, but it didn't fix the problem. I've added this to our bug list, but I don't know when we'll be able to fix it.

    For now, the only workaround is to save tables as text files from within Microsoft Access. To output a table as text in Microsoft Access 2013, right click on the table name, then select "Export > Text File". You should be able to load the exported text file in BC3's Text Compare or Data Compare.
    Chris K Scooter Software

  7. #7
    Join Date
    Aug 2013
    Posts
    2

    Default

    Hi,

    we have found a solution that works for our regional settings (german).
    Please have a look at the attached file and with some small changes it might work for everybody. It is a little bit slower, but it works

  8. #8
    Join Date
    Jun 2017
    Posts
    2

    Default

    Quote Originally Posted by carsten80 View Post
    Hi,
    Please have a look at the attached file and with some small changes it might work for everybody.
    I can't find any file attached.

  9. #9
    Join Date
    Jun 2017
    Posts
    2

    Default

    I have found a workaround for myself.

    Change the line near line 54 from
    Code:
    App.DoCmd.TransferText acExportDelim, "", Table.Name, TmpFilenames(I)
    to
    Code:
    Const acExportMerge = 4
    App.DoCmd.TransferText acExportMerge, "", Table.Name, TmpFilenames(I)
    or
    Code:
    Const acOutputTable = 0
    Const acFormatTXT = "MS-DOS Text (*.txt)"
    App.DoCmd.OutputTo acOutputTable, Table.Name, acFormatTXT, TmpFilenames(I)
    Both workarounds don't generate a CSV file, but generate plain ascii text which could be compared.

  10. #10
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    11,376

    Default

    Hello,

    Thanks for the code. I'll add it to our tracker entry on the subject. The file must have been lost in a forum upgrade, unfortunately. The original thread is from 2013, and we've had to perform upgrades and maintenance since then.
    Aaron P Scooter Software

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •