Версия для печати темы (https://pro1c.org.ua/index.php?s=353f18b6684dd70fc9e1785c44ad8015&showtopic=48989)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.3 _ Подключение к инфо. базе через COM порт

Автор: Gigi 20.11.18, 10:53

Всем привет!
Возник вопрос связанный с корректным подключением к базе.
Ну в случае с подключением к файловому варианту базы все нормально. Тест проходит.

&НаКлиенте
Процедура ТестСоеденения_ФайловыйВариантБД(Команда)
//============================
Base="*******\BeseConn";
Log="Пользователь1";    
Pass="";
//----------------------------
ТестСоеденения_БД_ФайлВар(Base,Log,Pass);
//----------------------------
КонецПроцедуры

&НаСервере
Процедура ТестСоеденения_БД_ФайлВар(Base,Log,Pass)
//----------------------------
ЕстьКонтакт=ПодключениеКФайловойБД_черезСОМ(Base,Log,Pass);
Сообщить(ЕстьКонтакт);
ЕстьКонтакт = Неопределено;
//----------------------------
КонецПроцедуры
&НаСервере
Функция ПодключениеКФайловойБД_черезСОМ(Base,Log,Pass) Экспорт
//-----------------------------------------------
ПараметрыСоеденения = "File="""+Base+""";Usr="""+Log+""";Pwd="""+Pass+""";";
V83COMConnector=Новый COMОбъект("V83.COMConnector");
//-----------------------------------------------
Попытка    
    ЕстьКонтакт=V83COMConnector.Connect(ПараметрыСоеденения);    
    Возврат ЕстьКонтакт;    
Исключение
    Сообщить("Ошибка подключения!");
    Возврат Неопределено;
КонецПопытки;
//-----------------------------------------------
КонецФункции

Но это в случае с файловым вариантом.
А что касается подключения к северному дело в том, что у нас временные неполадки.
И пока база запускается только через Веб-Сервер, но не запускается через Сервер. Просто этим не я занимаюсь, а другой. И что бы было как надо надо ждать...
Поэтому вопрос в том, как тестировать уже в случае к северному подключению.
&НаКлиенте
Процедура ТестСоеденения_СерверныйВариантБД(Команда)
//============================
Log="Пользователь1";    
Pass="**************";
//----------------------------
//--- Вариант 1
    Server="***.**.*.*"; //Тут имеется ввиду IP сервера что ли? Короче пожалуйста уточните.
    Base="ИмяБазы";
//--- Вариант 2
    //Server="http://***.**.*.*";    
    //Base="http://***.**.*.*/ИмяБазы";
//============================
ТестСоеденения_БД_СервВар(Server,Base,Log,Pass);
//============================
КонецПроцедуры

&НаСервере
Процедура ТестСоеденения_БД_СервВар(Server,Base,Log,Pass)
//----------------------------
ЕстьКонтакт=ПодключениеКСервернойБД_черезСОМ(Server,Base,Log,Pass);
Сообщить(ЕстьКонтакт);
ЕстьКонтакт = Неопределено;
//----------------------------
КонецПроцедуры
&НаСервере
Функция ПодключениеКСервернойБД_черезСОМ(Server,Base,Log,Pass)Экспорт
ПараметрыСоеденения = "Srvr="""+Server+""";Ref="""+Base+""";Usr="""+Log+""";Pwd="""+Pass+""";";
V83COMConnector= Новый COMОбъект("V83.COMConnector");
//----------------------------
    ЕстьКонтакт=V83COMConnector.Connect(ПараметрыСоеденения);    
    Возврат ЕстьКонтакт;
//----------------------------
КонецФункции

Данный код я протестировать не могу. Ибо у нас на сервере временные неполадки.
Поэтому нужно просто корректно прописать код соединения. Что бы он работал когда устранят неполадки
Т.е. имеется ввиду ПараметрыСоединения ... там указаны варианты...
Короче я просто не хочу долго искать инфу.. а вместо этого хочу сэкономить время.
Так что нужно просто корректно прописать ПараметрыСоединения.
Буду признателен!

Автор: Gigi 20.11.18, 12:11

Gigi @ Сегодня, 10:53 * ,
Да еще... по наименованию темы... не COM порт, а COM объект. Порт это другое.
Ладно... во общем, буду признателен!
Так что, пожалуйста ... Если не трудно

Автор: Gigi 20.11.18, 13:30

Gigi @ Сегодня, 12:11 * ,

Уважаемые ... че нет отклика?

Просто нужно по быстрому если не трудно.

Автор: Vofka 20.11.18, 14:19

Gigi, что вы хотите услышать: запустится ли код, когда у вас внутри фирмы что-то заработает? Это задача телепатическая. Когда заработает - тогда проверите и если не сработает, то зададите более конкретный вопрос.

Автор: Gigi 20.11.18, 14:22

Gigi @ Сегодня, 13:30 * ,
Мне просто нужно уточнить строки:

Server="***.**.*.*"; // Тут везде говорится о том, что нужно указать имя базы. Думаю это IP сервера. Скорее всего

Тоже мне термины "Имя базы" ... какое имя? Петя, Вася что ли?))))
Просто хотел уточнить.
А по поводу прежних весьма жарких дискуссий smile.gifsmile.gif)))) ...Ну ладно ... каюсь ...
Каюсь что говорил ПРАВДУ! Не судите за это
Ладно простите ... че там... smile.gifsmile.gif
Обещаю больше не нарушать регламент
Честное слово ))))))

Автор: Vofka 20.11.18, 14:28

ПараметрыСоединения = "Srvr=""server"";Ref=""BaseName"";Usr=""login"";Pwd=""password"";";

где:
server - адрес сервера 1С (имя, IP)
BaseName - имя базы в кластере
login - логин пользователя 1С
password - пароль пользователя 1С

Первые 2 параметра пишутся в окне запуска 1С.

Автор: Gigi 20.11.18, 14:39

Vofka @ Сегодня, 14:28 * ,
Понятно!
Да ... т.е. не имя базы, а имя сервера это и есть IP
А база может называться как угодно ... петя вася и.д.
Конечно извините за занудство но адрес сервера нужно указывать так:

"http://***.**.*.*"

Или просто
"***.**.*.*"
Я просто в сис админных делах не очень ...
Если можно уточнить хотел

Автор: Vofka 20.11.18, 14:43

Gigi, это должен быть адрес сервера внутри вашей сети (без http).

Автор: Gigi 20.11.18, 14:46

Vofka @ Сегодня, 14:43 * ,
Понятно!
Огромное Вам спасибо!
Пока!

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua