Имя: Пароль:
1C
1С v8
Создание документа по com-подключению
0 Uchenica74
 
25.01.14
09:19
Доброе утро! Подскажите пожалуйста, подключаюсь к базе(из УПП к ИСМ), использую сом - соединение. При подключении нахожу нужный документ, но получить объект  не могу(метод не найден), не могу так же создать документ(метод не найден), ругается на ошибку в общем модуле той базы к которой подключаюсь(ИСМ).
{(1)}: Ошибка при вызове метода контекста (создатьдокумент): Произошла исключительная ситуация: {ОбщийМодуль.ОбщегоНазначения(1672,43)}: Процедура или функция с указанным именем не определена (глЗначениеПеременной).

Проверила создание документа в базе к которой подключаюсь(ИСМ). При создании дока к общему модулю нет обращения. глЗначениеПеременной - используется в функциях сообщить, сообщитьобошибке.

Не знаю, что еще проверить.

Может сам метод подключения не устаривает. Не пойму(((
1 hhhh
 
25.01.14
09:21
а как создаете документ?
2 Uchenica74
 
25.01.14
09:23
Подключение_8 = Новый COMОбъект("V81.COMConnector");
//ПараметрСоединения = "Srvr="""+"srv1cdev"+""";Ref="""+"upp2"+""";Usr="""+"ISM"+""";Pwd="""+""+""";";
ПараметрСоединения = "Srvr="""+Сервер+""";Ref="""+База+""";Usr="""+Пользователь+""";Pwd="""+Пароль+""";";
Попытка
ПодключениеИСМ = Подключение_8.Connect(ПараметрСоединения);
//возврат истина;
Исключение
Сообщить(ОписаниеОшибки());
//возврат Ложь;
ПодключениеИСМ = неопределено;
КонецПопытки;

ДокумИСМ = ПодключениеИСМ.Документы.Заявка.СоздатьДокумент();
3 Uchenica74
 
25.01.14
09:47
Сегодня выходной)))))  наверно все спят, а я тут со своими проблемами)))))))))))))
4 hhhh
 
25.01.14
10:42
(3) наверно у вас в модуле документа "Заявка" внизу после всех процедур какая-то фигня написана. Типа "глЗначениеПеременной"
5 hhhh
 
25.01.14
10:54
что там вообще есть в модуле документа?
6 Uchenica74
 
26.01.14
12:10
(4)все проверила, нет ничего связанного с этой переменной, хотя скорее всего что то упустила.
7 Uchenica74
 
26.01.14
12:30
Поменяла Подключение_8 = Новый COMОбъект("V81.COMConnector") на Подключение_8 = Новый COMОбъект("V81.Application") - все работает))))
8 Fedot200
 
26.01.14
12:47
(7) Не лучшее решение, ИМХО, лучше подключаться к той базе из которой тащим данные, т.е. подключаться из ИСМ к УПП.
9 Uchenica74
 
26.01.14
13:27
(7) при проведении дока в УПП я должна создать новый док или перезаполнить созданный в ИСМ
10 Fedot200
 
26.01.14
14:04
(9) Это Вы сами с собой? :-)
А так, зачем дублировать документы? При создании нового - создаем новый, при записи/перепроведении записываем/перепроводим в ИСМ. Кстате, шо це такэ ИСМ?
11 Uchenica74
 
26.01.14
14:51
(10) Нет, не с собой, с Вами. Случайно выделила))))
ИСМ  - это Конфигурация: Информационная система мерчандайзинга. 1С:Предприятие 8.1.

Грубо говоря, я в Управление производственным предприятием создаю документ(1С:Предприятие 8.1), когда записываю его, должна создать документ в другой базе - в Информационной системе мерчандайзинга(1С:Предприятие 8.1).

Вот и подключаюсь из УПП к ИСМ)))))

Как то так)))
12 Fedot200
 
26.01.14
15:49
(11) А что нужна именно такая оперативность?
минусы (7)
1. подключаемся по ОLE, а это не есть гуд
2. Всегда прекрасней создавать документы находясь в базе где их и нужно создавать, т.к. все методы/возможности доступны, а данные тащить уже из другой системы.

С другой стороны - работает и пусть работает :-)
13 zladenuw
 
26.01.14
15:51
(12) можно описать функция в внешнем соединение в приемнике где создавать документ. передать можно тз или структуру нужногог документа. и все. при неудачи передавать в источник информацию
14 Fedot200
 
26.01.14
16:18
(13) Можно, но как-то все это сложно ;-)
15 zladenuw
 
26.01.14
16:27
(14) да ладно. тогда кд и вызывать обработку через сом
16 Fedot200
 
26.01.14
17:25
(15) Каждому свое, я люблю из базы подключатся куда мне надо и тащить нужные данные.
17 zladenuw
 
26.01.14
17:26
(16) иногда надо именно из источника передать в приемник. а не с приемника в источник. все зависит от задачи. и да. каждому свое :)
18 SiAl-chel
 
29.01.14
17:39
(0) Проверьте где создается переменная глЗначениеПеременной.
Скорее всего она создается либо в модуле сеанса, либо модуле управляемого приложения, которые недоступен при COM-соединении.
В случае COM-соединения надо создавать переменную в модуле внешнего соединения.