|
[ODBC SQL Server Driver][DBNETLIB]Недопустимое соединение. | ☑ | ||
---|---|---|---|---|
0
Федя Тяпкин
01.12.22
✎
15:16
|
Подключаюсь к серверу SQL из 1С, который находиться на другой машине в сети. Ошибка в сабже. Если меняю имя SQL сервера на неправильное, то ошибка другая. Если меняю на неправильные имя пользователя и прочие параметры ошибка не меняется. Подскажите куда копать пжл. Код такой:
|
|||
1
Федя Тяпкин
01.12.22
✎
15:17
|
ИмяСервераSQL = "xxx.xxx.xxx.xxx";
ПользовательSQL = "user"; ПарольSQL = "password"; БазаДанныхSQL = "DataBase"; ТаблицаSQL = "Table"; ///////////////////////////////////////// //Подключение к SQL-серверу Попытка Соединение = Новый COMОбъект("ADODB.Connection"); Соединение.ConnectionString = "driver={SQL Server};" + "server="+ИмяСервераSQL+";"+ "uid="+ПользовательSQL+";"+ "pwd="+ПарольSQL+";"+ "database="+БазаДанныхSQL+";"; Соединение.ConnectionTimeout = 30; Соединение.CommandTimeout = 600; Соединение.Open(); Сообщить("Успешное подключение!"); Исключение Сообщить(ОписаниеОшибки()); Возврат; КонецПопытки; |
|||
2
Федя Тяпкин
01.12.22
✎
15:19
|
если меняю ip сервера
{ВнешняяОбработка.ПодключениеКSQL.Форма.Форма.Форма(28)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server не существует, или доступ запрещен. |
|||
3
shuhard
01.12.22
✎
15:31
|
(2) а что говорит udl файлик по этому поводу ?
|
|||
4
Федя Тяпкин
01.12.22
✎
15:35
|
(3) а кто это?)
|
|||
5
Garykom
гуру
01.12.22
✎
15:50
|
Не используй COM/OLE и ODBC
Используй другие методы, более универсальные |
|||
6
Федя Тяпкин
01.12.22
✎
16:01
|
(5) а как еще можно цепануться к SQL?
|
|||
7
Garykom
гуру
01.12.22
✎
16:09
|
||||
8
Garykom
гуру
01.12.22
✎
16:11
|
(7)+ взять и добавить вот сюда https://github.com/Garykom/psql
|
|||
9
Garykom
гуру
01.12.22
✎
16:12
|
||||
10
arsik
гуру
01.12.22
✎
16:13
|
Внешние источники юзай
|
|||
11
Garykom
гуру
01.12.22
✎
16:17
|
(9)+ лучше пример
https://gist.github.com/rossnelson/cbb192d314b6c89b7148e919ab25986c что и где поменять |
|||
12
Garykom
гуру
01.12.22
✎
16:20
|
в https://github.com/Garykom/psql/blob/main/main.go
достаточно поменять только import с _ "github.com/jackc/pgx/stdlib" на _ "github.com/denisenkom/go-mssqldb" и connectionString := "postgres://" + request.User + ":" + request.Password + "@" + request.Server + ":" + request.Port + "/" + request.Database + "?sslmode=disable" db, err := sqlx.Connect("pgx", connectionString) на db, err := sqlx.Connect( "mssql", "sqlserver://SA:[email protected]:1433?database=testingstuff&connection+timeout=30", ) |
|||
13
Garykom
гуру
01.12.22
✎
16:24
|
(6) В итоге получается exe который засовываешь в макет в 1С
Когда надо сохраняешь в temp и запускаешь с параметрами аля https://github.com/Garykom/psql/blob/main/run.bat на вход подается вот такой json https://github.com/Garykom/psql/blob/main/request.json результат будет тоже в json, его средствами 1С легко |
|||
14
1Сергей
01.12.22
✎
16:33
|
фу, ехешник..
|
|||
15
Федя Тяпкин
01.12.22
✎
16:38
|
(10) с внешних источников и начал. та же петрушка.
|
|||
16
Федя Тяпкин
01.12.22
✎
16:38
|
(13) спасибо.
|
|||
17
Kassern
01.12.22
✎
16:39
|
(15) Можно простой вопрос, зачем вам на прямую соединяться к скулю? Какую задачу решаете?
|
|||
18
Федя Тяпкин
01.12.22
✎
16:42
|
(17) в скуле данные с энергосчетчиков, с ними нужно провести некоторые вычисления и вывести в отчет о суточном потреблении электроэнергии по каждому объекту.
|
|||
19
Kassern
01.12.22
✎
16:44
|
(18) Этот скуль от 1ски, или вообще левая база с 1с не связанная? Скуль от мелкомягких?
|
|||
20
Федя Тяпкин
01.12.22
✎
16:45
|
(19) левая. от программы учета электроэнергии.
|
|||
21
Kassern
01.12.22
✎
16:48
|
(20) скуль-то какой? MySQL, postgresql, MSSQL, Oracle и т.д
|
|||
22
Kassern
01.12.22
✎
16:50
|
Может вообще firebird какой-нибудь
|
|||
23
Федя Тяпкин
01.12.22
✎
16:51
|
(21) MS SQL
|
|||
24
Kassern
01.12.22
✎
16:55
|
(23) попробуйте обновить драйвер ODBC, или выбрать другой в ВИД. У как-то была проблема, что не цеплялось к скулю, в итоге пару танцев с бубном и все завелось, давненько правда было.
|
|||
25
Kassern
01.12.22
✎
16:55
|
А может вам тупо прав не хватает у юзвера, под которым вы пытаетесь подцепиться
|
|||
26
Федя Тяпкин
01.12.22
✎
16:57
|
(24) что за вид? как выбрать? тоже есть подозрение на пользователя. но пароль sa пока не дают.
|
|||
27
Kassern
01.12.22
✎
16:57
|
(26) ВИД - внешние источники данных. Хотя, если бы дело было в драйвере, то скорее всего ругнулось бы именно на него.
|
|||
28
Kassern
01.12.22
✎
16:59
|
||||
29
Федя Тяпкин
01.12.22
✎
17:00
|
(27) с внешними источниками как то совсем все не прозрачно. решил подцепиться сначала обработкой, а потом уже с ВИД пробовать.
|
|||
30
Федя Тяпкин
01.12.22
✎
17:01
|
у юзера под которым цепляюсь в скуле только одна роль public. этого достаточно?
|
|||
31
shuhard
01.12.22
✎
17:02
|
(4) файлик сделай с таким расширением, текстовый - дальше всё очевидно
|
|||
32
Kassern
01.12.22
✎
17:04
|
(30) Вы можете самостоятельно протестить. Создайте базу данных в скуле, создайте табличку какую-нибудь и вбейте туда несколько строк данных. Создайте пользователя суперадмина и попробуйте под ним подключиться к этой базе вашей обработкой, или через ВИД. Если все успешно, тогда создайте другого пользователя с ограниченными правами и проверьте достаточно ли public. В итоге вы придете к пониманию минимальных прав для работы с нужной таблицей.
|
|||
33
Федя Тяпкин
01.12.22
✎
17:06
|
(32) пароля к sa нет. не могу эти эксперементы провести.
|
|||
34
Федя Тяпкин
01.12.22
✎
17:21
|
так под sa тоже не подключается. подскажите агент sqL должен быть запущен? как проверить что драйвер ODBC установлен?
|
|||
35
Kassern
01.12.22
✎
17:22
|
(34) Уберите попытку и исключение. Соединение = Новый COMОбъект("ADODB.Connection"); - проходит?
|
|||
36
Kassern
01.12.22
✎
17:24
|
(34) агент вроде нужен для выполнения заданий, бекапы там всякие, реструктуризации по расписанию
|
|||
37
Федя Тяпкин
01.12.22
✎
17:33
|
(35) Проходит. На Соединение.Open() валится.
|
|||
38
Kassern
01.12.22
✎
17:39
|
(37) Попробуйте через ВИД подключиться к нужной таблице, в строке подключения укажите, что-то типа DRIVER={SQL Server};SERVER=ИмяСервера;UID=sa;PWD=ПарольSA;DATABASE=ИмяБазы
|
|||
39
Федя Тяпкин
01.12.22
✎
17:42
|
(38) я начинал пробовать с настройки ВИД. там на строке подключения так же валится и вообще не понятно на чем именно. лучше разбираться через обработку думаю.
|
|||
40
1Сергей
01.12.22
✎
17:43
|
(39) Подключение идёт с сервера или с клиента?
|
|||
41
Федя Тяпкин
02.12.22
✎
11:24
|
(40) с клиента
|
|||
42
Федя Тяпкин
02.12.22
✎
11:40
|
(40) с сервера тоже самое. да и через ВИД подключение видимо происходит с сервера, тот же результат(
|
|||
43
1Сергей
02.12.22
✎
11:47
|
||||
44
Федя Тяпкин
02.12.22
✎
12:38
|
Всем спасибо. Причина в том что в SQL EXSPRESS по умолчанию закрыты возможности удаленного подключения. Помогло вот это:
https://forum.technologics.ru/topic1691.html и это: https://www.it-fm.ru/?p=1210 Пошел теперь с ВИД воевать. |
|||
45
1Сергей
02.12.22
✎
12:52
|
Святой гуглёж помог
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |