DQS Cleansing Component Connection Issue

  • Hi,

    I am building a package with SSIS 2012 and SQL 2012 as the database.

    I am trying to connect DQS Cleansing Component to DQS Server and I started to get an error when I do a test connection.

    An unexpected error occurred in the DQS infrastructure.

    System.FormatException: Index (zero based) must be greater than or equal to zero and less than the size of the argument list.

    at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args)

    at System.String.Format(IFormatProvider provider, String format, Object[] args)

    at Microsoft.Ssdqs.Infra.Messages.MessageManager`1.GetMessage(T message, Object[] args)

    at Microsoft.Ssdqs.Component.Common.UI.NewConnectionForm.TestConnection(Object sender, EventArgs e)

    at EventHandlerSafeHandler.handler(Object , EventArgs )

    When I tried to check from inside the component It shows that there are multiple instances of DQS on the server.

    There are no multiple instances and only one instance exist.

    Initially I tested this and worked fine.

    After certain time when I wanted to build started receiving the error.

    Does anybody encountered this kind of issue?

    I checked all possible options even uninstalled and installed DQS again but still the same.

    On the server DQS Client is working fine.

    Any Help much appreciated.

    Thanks

  • I guess that OP has already fixed the issue, but if someone is still looking for a solution, here it is:

    This type of error happens when you have more than one DQS_MAIN on the same server. For example if you restored a backup of DQS database as a copy with different name. How SSIS knows about it? Well, it runs the following query on every single database on the server and if it gets more than 1 record then it fails with an error.

    SELECT TOP 1 VALUE

    FROM sys.extended_properties

    WHERE NAME='DataBaseType' AND CAST(VALUE AS NVARCHAR(50))='MICROSOFT DATA QUALITY SERVICES - DQS'

    So in order to fix the issue you need to DROP all the copies of DQS DB, or at least clear out theirs extended_properties.


    Alex Suprun

  • The following will check for and extended property called 'MICROSOFT DATA QUALITY SERVICES - DQS' across all databases, returning one row for each match.

    exec sp_MSForEachDB

    '

    USE ?;

    if exists

    (

    SELECT *

    FROM sys.extended_properties

    WHERE NAME=''DataBaseType''

    AND CAST(VALUE AS NVARCHAR(50))=''MICROSOFT DATA QUALITY SERVICES - DQS''

    ) select db_name() as dbname;

    ';

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho

  • This wasn't a solution for me, I ran the thing and only got one db that qualified DQS_MAIN, which is supposed to be the right DB

Viewing 4 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply