|
Как правильно запускать экспортную процедуру com Обработки ? |
☑ |
0
EarthsSoul
23.04.13
✎
06:47
|
Добрый день, запускаю обработку из внешней базы.
cntr = Новый COMОбъект("V82.Application");
connection=cntr.Connect("File=""D:\MES"";Usr=""Админ"";");
ОбработкаОбмена=cntr.Обработки.ЗагрузкаСправочниковУПП.Создать();
// ОбработкаОбмена на этом этапе видно что ОбработкаОбмена это Com //объект
ОбработкаОбмена.Обмен();
И такое впечатление не отрабатывает экспортная процедура Обмен() обработки "ЗагрузкаСправочниковУПП" , так как у com объекта ОбработкаОбмена не меняются значения реквизитов, хотя в процедуре они меняются и не создает (и не читает) файлы на жестком диске.
Как правильно запускать экспортную процедуру com Обработки ?
|
|
1
Rie
23.04.13
✎
06:50
|
(0) А может, перед запуском ей какие-то реквизиты задать надо?
|
|
2
EarthsSoul
23.04.13
✎
06:52
|
предусмотрел, в этой процедуре в начале и задаю реквизиты
|
|
3
Рэйв
23.04.13
✎
07:10
|
В модуле внешнего соединения вставь функцию
Функция ИсполнитьВн(ТекстКоманды,Параметр="",Ответ="") Экспорт
Если СокрЛП(ТекстКоманды) <>"" Тогда
Попытка
Выполнить(ТекстКоманды);
Исключение
Ответ="Невозможно выполнить внешнюю команду. "+ОписаниеОшибки() ;
Конецпопытки;
КонецЕсли;
Возврат Ответ;
КонецФункции
//
потом в коде
Ответ=cntr.ИсполнитьВн("Обработки.ЗагрузкаСправочниковУПП.Создать();ОбработкаОбмена.Обмен();");
Если ТипЗнч(Ответ)=Тип("Строка") Тогда
Сообщить(Ответ);
КонецЕсли;
|
|
4
Рэйв
23.04.13
✎
07:11
|
блин, присвоить забыл:-)
текст кода такой
"ОбработкаОбмена=Обработки.ЗагрузкаСправочниковУПП.Создать();ОбработкаОбмена.Обмен();"
|
|
5
Рэйв
23.04.13
✎
07:12
|
Ну и ответ на непустое еще можно проверить. а то если ничего не возвращать специально он пустой строкой придет
|
|
6
EarthsSoul
23.04.13
✎
07:43
|
ИсполнитьВн добавлен в базу в которую провожу подключение:
{ОбщийМодуль.МойМодуль.Модуль(174)}: Метод объекта не обнаружен (ИсполнитьВн)
Ответ=cntr.ИсполнитьВн("ОбработкаОбмена=Обработки.ЗагрузкаСправочниковУПП.Создать();ОбработкаОбмена.Обмен();");
|
|
7
Галахад
гуру
23.04.13
✎
07:47
|
"В модуле внешнего соединения"
|
|
8
Рэйв
23.04.13
✎
07:48
|
(6)Процедуру надо вставить в МОдуль ВНЕШНЕГО соединения.
И не забыть Экспорт
|
|
9
EarthsSoul
23.04.13
✎
07:57
|
Спасибо ), не в той базе делал ), сейчас в реальную вернусь
|
|
10
EarthsSoul
23.04.13
✎
08:00
|
Рэйв Спасибо большое :), и всем спасибо похоже все работает еще со вчера ))
|
|
11
Рэйв
23.04.13
✎
08:04
|
а вроде вторник еще:-)
|
|