|
Подключение из 1с8 к 1с7 | ☑ | ||
---|---|---|---|---|
0
Ver_olga
19.03.12
✎
09:05
|
Добрый день. Подскажите пожалуйста по использованию COMобъект.
1с8, УПП, платформа 8.2.14.540, релиз 1.3.22.1, SQL. 1с7, Зарплата+Кадры, платформа 7.70.027, релиз 7.70.321, SQL. Мне необходимо каждую ночь обновлять справочник "Физические лица" в УПП, используя справочник "Сотрудники" из Зик. Планировала запускать регламентное задание, в котором будет производиться подключение к ЗИК, сотрудники выгружаться в таблицу значений и подкачиваться в УПП. Написала для тестирования обработку. Код для подключения 1с8 к 1с7 следующий: //попробуем подключиться к внешней базе ПутьКБазе1с77="\\serv_zik\baza_zik\"; //пользователь для подключения Пользователь1с77="ПользовательЗИК"; //пароль для подключения Пароль1с77="123456789"; База1с77=Новый COMОбъект("v77s.Application"); ПараметрыПодключения="/D"+СокрЛП(ПутьКБазе1с77)+" /N"+СокрЛП(Пользователь1с77)+" /P"+СокрЛП(Пароль1с77); СоединениеУстановлено=База1с77.Initialize(База1с77.RMTrade,ПараметрыПодключения,"NO_SPLASH_SHOW"); //соединение есть Если СоединениеУстановлено Тогда сообщить("Удалось установить подключение с БД ""Зарплата+Кадры"""); Иначе сообщить("Не удалось установить подключение с БД ""Зарплата+Кадры"""); КонецЕсли; Тестирование осуществлялось на моей локальной машине, на ней установлена платформа 1с7, код отрабатывает как мне необходимо - подключение устанавливается, сотрудники переносятся в УПП. Но возник вопрос, как запускать данную обработку с сервера 1с8, на котором не установлена платформа 1с7 (устанавливать ее не хотелось бы). Пробовала написать код: База1с77=Новый COMОбъект("v77s.Application","serv_zik"); но выходит ошибка, связанная с незарегистрированным классом. Каким образом мне подключиться с сервера 1с8 к серверу 1с7, не устанавливая на 1с8 платформу 1с7? Заранее спасибо. |
|||
1
ДенисЧ
19.03.12
✎
09:06
|
Установить платформу.
|
|||
2
Гефест
19.03.12
✎
09:07
|
Никак. Подключение через COM требует установленной платформы.
Разве что из базы напрямую читать |
|||
3
Ver_olga
19.03.12
✎
09:13
|
(2) Читать напрямую из базы - делать запросы к таблице sc16?
|
|||
4
Гефест
19.03.12
✎
09:25
|
(3) Делать запросы ко всем необходимым таблицам, уж не знаю, как они у вас в базе называются
|
|||
5
milan
19.03.12
✎
09:31
|
Ну может тогда выгружать из зик ?
|
|||
6
Ver_olga
19.03.12
✎
09:39
|
(4) спасибо
(5) Наверное так и придется. Просто не хотелось выполнять 2 зависящих друг от друга действия. Загрузка в 8-ку будет зависеть от того, насколько успешно до этого произошел запуск 7-ки, выгрузка из нее данных, насколько удачно произошло считывание потом dbf. А при подключении из 1с8 в 1с7 - все в ней: открытие 7-ки, считывание данных, загрузка - практически нет никаких зависимостей от других процессов. |
|||
7
Balabass
19.03.12
✎
11:01
|
У меня сделано так:
1. Запускаем 8. В справочнике сотрудников сделал кнопку - обновить сотрудников. 2. По кнопке открывается 7 и запускается обработка, которая выгружает сотрудников в дбф фалик на серваке. После этого 7 успешщно закрывается 3. 8 проверяет наличие фала. Если есть - то загружает его. если нет - то увы..ниче не поделаешь. 4. Профит. |
|||
8
Ver_olga
19.03.12
✎
11:13
|
(7) А у вас 7-ка открывается на компьютере, на котором не установлена платформа 1с7?
|
|||
9
Kashton
19.03.12
✎
11:17
|
(0) Создай лучше пользователя в ЗИК латинскими буквами
|
|||
10
Ver_olga
19.03.12
✎
11:22
|
(9) я из тестирования на своем компьютере поняла, что проблема не в пользователе.
|
|||
11
Balabass
19.03.12
✎
11:33
|
(8) Естественно установлена.
|
|||
12
Ver_olga
19.03.12
✎
11:43
|
(11) спасибо за ответы. Но мне необходимо было, чтобы подключение производилось на компьютере, на котором платформа 1с7 не установлена. Из ответов, данных выше поняла, что это невозможно. Просто из описания в СП:
Синтаксис: Новый COMОбъект(<Имя>, <Имя сервера>) Параметры: <Имя> (обязательный) Тип: Строка. ProgID класса COM, с которым он зарегистрирован в системе. Например, "Excel.Application". <Имя сервера> (необязательный) Тип: Строка. Имя компьютера, на котором надо создать указанный объект. Если параметр опущен, то создается на данном компьютере. я думала, что если объект создается на указанном мной сервере 1с7, то использоваться будет приложение-сервер 1cv77 именно на нем, и на сервере 1с8 его установка необязательна. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |