Имя: Пароль:
1C
1C 7.7
v7: COM соединение 8.2 --> 7.7 и ЗначениеИзФайла
0 fox06
 
15.10.11
09:39
Несколько вопросов:
1. Необходимо передать ТЗ из 8 в 7 и в последней выполнить функцию ЗначениеИзФайла использую такой код:
vt = V7.CreateObject("ТаблицаЗначений");
Данные = V7.EvalExpr("ЗначениеИзФайла(""d:\тз.exp"", " + vt + ", 0 )");
естественно выдает ошибку т.к. vt в данном случае COMobject, как реализовать и возможно ли это вообще без создания в 7.7 глобальной функции?

2. Есть самописная конфа на 7.7 при создании Ком соединения указываю:
Открыта = v7.Initialize(v7.RMTrade, "/D""" + "D:\Работа\проверка\77\" + """ /M ", "NO_SPLASH_SHOW");
ругается на v7.RMTrade и вылетает с ошибкой, как узнать этот идентификатор конфигурции?
1 дущ
 
15.10.11
12:26
1) Попробуй покурить функцию Шаблон (это аналог Выполнить() на восьмерке)
2) Не знаю.
2 G-Re
 
15.10.11
19:53
2)
 V7=СоздатьОбъект("V77.Application");
 Открыта=V7.Initialize(ОЛЕ.RMTrade,КСтрока,ПоказатьЗаставку);

у меня это работает. А как ругается?
Кстати, V7-легальная, или серая?
3 Азат
 
15.10.11
20:17
(0) v7 - это что?
4 Torquader
 
15.10.11
22:22
В (0) маразм!
Вы хотите, чтобы какой-то OLE-сервер (в данном случае V7) знал о том, что у вас находится в переменной vt, которая внутри вашего сеанса - это невозможно в принципе! При работе с функциями OLE-сервера и передаче строки для исполнения (как делается в EvalExpr) необходимо передавать ссылки на переменные внутри пространства имён OLE-сервера.
5 fox06
 
18.10.11
16:33
Dnjhj
6 fox06
 
18.10.11
16:35
Второй вопрос отпал, с первым все еще проблема. Думал через Шаблон() но что то не придумать ничего, ведь в конце концов мне надо будет в 8 вернуть ТЗ из 7.7 для обработки. А есть ли возможность тоже самое сделать , но в 7 через внешнюю обработку вот тока вопрос как ее заставить вернуть значение т.е. ТЗ?
Независимо от того, куда вы едете — это в гору и против ветра!