Есть функция, возвращающая коннект к субд

```1c
    Функция НовоеСоединениеССУБД(ДанныеДляПодключения) Экспорт

    Connection = Новый COMОбъект("ADODB.Connection");
    Connection.Provider = "SQLOLEDB";
    Connection.ConnectionTimeOut = 15;
    Connection.CommandTimeout = 220;

    Если ДанныеДляПодключения.ТипСУБД = "MSSQL" Тогда

    Connection.ConnectionString = "Data Source=" + ДанныеДляПодключения.АдресСервера + ";Initial Catalog="
    + ДанныеДляПодключения.ИмяБД + ";Persist Security Info=True;User ID=" + ДанныеДляПодключения.Логин +
    ";Password=" + ДанныеДляПодключения.Пароль;

    ИначеЕсли ДанныеДляПодключения.ТипСУБД = "PGSQL" Тогда

    Connection.ConnectionString = "DRIVER={PostgreSQL Unicode};Data Source=" + ДанныеДляПодключения.DataSource + ";SERVER=" +
    ДанныеДляПодключения.АдресСервера + ";PORT=" + ДанныеДляПодключения.Порт+";DATABASE=" + ДанныеДляПодключения.ИмяБД +
    ";UID=" + ДанныеДляПодключения.Логин + ";PWD=" + ДанныеДляПодключения.Пароль+";STMT=" + "utf8";

    КонецЕсли;

    Попытка

    Connection.Open();

    Исключение

    ЗаписьЖурналаРегистрации(НСтр("ru = 'Соединение с SQL базой " + ДанныеДляПодключения.ИмяБД + "'"), УровеньЖурналаРегистрации.Ошибка, , , ОписаниеОшибки());
    Connection = Неопределено;

    КонецПопытки;
    Возврат Connection;

    КонецФункции
```

В Connection.ConnectionString передается DRIVER={PostgreSQL Unicode};Data Source=PostgreSQL35W;SERVER=172.20.3.252;PORT=50432;DATABASE=testdb;UID=test;PWD=12345678;STMT=utf8

При попытке подключиться к PG выдает ошибку

Ошибка при вызове метода контекста (Open)
  Connection.Open();
по причине:
Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Недопустимый атрибут строки соединения

Собственно, куда копать?
---
У вас просто не верный провайдер : Microsoft OLE DB Provider for SQL Server.
Выберите провайдера для PGSQL
---
У вас просто не верный провайдер : Microsoft OLE DB Provider for SQL Server.
Выберите провайдера для PGSQL
---
Если ДанныеДляПодключения.ТипСУБД = "MSSQL" Тогда

 ИначеЕсли ДанныеДляПодключения.ТипСУБД = "PGSQL" Тогда

а почему не сделать отдельно подключение для MSSQL и PGSQL ...

условия в соединении - что будет, если две субд присутствуют ?
---
```1c
    Connection.Provider = "MSDASQL.1";
```

Теперь другая проблема
Ошибка при вызове метода контекста (Open)
  Connection.Open();
по причине:
Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): could not connect to server: Connection timed out (0x0000274C/10060)
 Is the server running on host "172.20.3.252" and accepting
 TCP/IP connections on port 50432?
То, что odbc проходит коннект тест, еще не значит, что сервер принимает по tcp/ip?
---
на скрине порт 5432, а в коде 1С пытаетесь подключиться по 50432 порту.
---
А, точно, совсем взгляд замылился, спасибо!
---
Не много не понял проблемы. Если мне надо сделать коннект к мс, то я в параметре передам "MSSQL", если пг, то "PGSQL".
Можно более развернуто описать возможные накладки?
---
username test

может признаетесь - где вы - где СУБД - и что вообще вы хотите сделать ?

в одной локальной,удаленно .

пользователю желательно права иметь
плюс права доступа установить

 в нужном фале hba.conf
---
плюс права доступа установить

1С и пг на разных серверах в локалке, сейчас просто отлаживаю соединение, запросы. А в будущем планируется синхронизация с самописной проходной. Проблему решил, коннект и запросы заработали.