Rules-Based Comparsion - BC removes decimal point

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Kiran2012
    New User
    • Aug 2012
    • 2

    Rules-Based Comparsion - BC removes decimal point

    Dear ScooterSoftware Support,

    In Beyond Compare (BC) in a Rules-Based comparsion why do I lose the decimal point, this means that values which are the same numerically are shown to be different numerically rather than in display only.

    For example, thing of a monetary amount

    Numerically,

    File A = File B
    $10 = $10.00

    Textually they are different, so it could be highlighted on that basis. But BC does not do either. It converts the File B value with the decimal point to a number without the decimal point. Now, we get,

    $10 compared to $1000.

    Now they are shown not to be the same, but they in fact should be at least numerically. Tolerance also don't work in this case.

    Please could you advise on how I can manage this correctly? What mistakes do I have in my configuration?

    (PS - I have attached example files to this thread.)

    Thanks,

    K.
  • Aaron
    Team Scooter
    • Oct 2007
    • 16009

    #2
    Hello,

    We can check your configuration if you email us at [email protected] with your BCSupport.zip (Help menu -> Support; Export). Are you opening these files in the Text Compare or Data Compare?

    Are these files pre or post-conversion issue? File A looks like it is simply missing the decimal data from the start; there's not conversion stripping the data out. There wouldn't be a conversion by default, but it is possible you may have created or imported a rule. We could double check your settings with BCSupport.zip.
    Aaron P Scooter Software

    Comment

    • Aaron
      Team Scooter
      • Oct 2007
      • 16009

      #3
      Hello,

      Thanks for the sample files and BCSupport.zip. What is your current Regional Settings in Windows? On my test system, the decimal point is converted correctly, and both numbers are the same in the Data Compare.

      If I had to guess, your current Regional Settings may define '.' as the thousands separator, which would be removed in a Numeric column in the way you are describing. BC3 follows the current system settings, so you would need to treat . as a decimal point in Windows to have it treated as such within BC3's Numeric column. Alternatively, you can configure the column to be treated as Text in the Session Settings, but this would still mark it as a difference (due to the additional characters ".00").
      Aaron P Scooter Software

      Comment

      • Kiran2012
        New User
        • Aug 2012
        • 2

        #4
        Thanks, regional settings could be a possibility. So is there a way in BC to override this? The work I am doing is on a shared server, so it might be difficult to change the regional settings.

        Comment

        • Aaron
          Team Scooter
          • Oct 2007
          • 16009

          #5
          Hello,

          There isn't an override within BC3, but are you running BC3 on the server remotely or from your machine accessing the files on the server? BC3 should respect the settings of the machine it is currently running on.

          You might able to override this with AppLocale, an older Microsoft app:
          http://www.microsoft.com/en-us/downl....aspx?id=13209

          If installing on Vista or 7, you will need to run a CMD prompt with Run As Administrator, then navigate to the setup.msi and run it. Running by double clicking or attempting to right-click Run As Administrator on the .msi won't work.
          Aaron P Scooter Software

          Comment

          • maurice
            Enthusiast
            • Jan 2008
            • 42

            #6
            Originally posted by Kiran2012
            Dear ScooterSoftware Support,

            In Beyond Compare (BC) in a Rules-Based comparsion why do I lose the decimal point, this means that values which are the same numerically are shown to be different numerically rather than in display only.

            K.
            I think there may be a misunderstanding here. BC does not compare numeric values. it only compares characters. BC cannot tell that 2 > 1, and it cannot tell that "10" = "10.00" = "10^1", etc

            The only thing BC can do is IGNORE certain specified situations. For example, you can create a "grammer" rule in BC3 to ignore ".00".
            Technically, the rule must be written as \.00 because "." is a wildcard matching any (all) characters.

            Comment

            • Aaron
              Team Scooter
              • Oct 2007
              • 16009

              #7
              Hello,

              BC3 can compare values numerically in the Data Compare. The Numeric Columns tolerance can be set to a value (with decimal symbol), but this symbol can be either a , or . depending on your Regional Settings. Meanwhile the thousands separator (default to , on US) is stripped out for Numeric columns.
              Aaron P Scooter Software

              Comment

              • maurice
                Enthusiast
                • Jan 2008
                • 42

                #8
                Cha-grin

                I can't believe I've never used that feature. This old dog learned a new trick!

                Comment

                Working...