Запустить в режиме отладки, открыть обработку (точку останова надо поставить в ней), и так вызвать "Вычислить выражение", ввести ЭтотОбъект - вот там есть какое-то поле с полным путём.
3.
Збянтэжаны Саўка
24508.06.10 15:52 Сейчас в теме
Дмитрий пишет:
Запустить в режиме отладки, открыть обработку (точку останова надо поставить в ней), и так вызвать "Вычислить выражение", ввести ЭтотОбъект - вот там есть какое-то поле с полным путём.
Точно! Спасибо большое!
Вот так: ЭтотОбъект.ИспользуемоеИмяФайла;
и остается только извлечь путь из полного имени типа этого:
у меня все внешние обработки для типовых конфигураций регятся в сами - саморегистрация внешних обработок удобно обновлять, не нужно вручную прописывать дополнительные параметры и т.д.
&НаКлиенте
Функция ПолучитьПутьТекущегоКталогаВнешнейОбработки()
//Получаем файл со списком недавно использованных файлов
MRUFileList = Лев(РабочийКаталогДанныхПользователя(), СтрДлина(РабочийКаталогДанныхПользователя())-4) + "1cv8ccmn.pfl";
Текст = Новый ТекстовыйДокумент;
Текст.Прочитать(MRUFileList);
Для НомерСтроки = 1 По Текст.КоличествоСтрок() Цикл
Стр = Текст.ПолучитьСтроку(НомерСтроки);
//Ищем строку заголовок (MRUFileList) начала списка недавно использованных файлов
СтрокаПоискаНайдена = СтрНайти(Стр, "MRUFileList");
Если Не СтрокаПоискаНайдена = 0 Тогда
//Получаем строку последнего использованного файла
Стр = Текст.ПолучитьСтроку(НомерСтроки + 8);
Стр = Лев(Стр,СтрНайти(Стр, "\", НаправлениеПоиска.СКонца));
ТекКаталог = Прав(Стр, СтрДлина(Стр) - 9);
//Возвращаем полный путь к каталогу внешней обработки
Возврат ТекКаталог;
КонецЕсли;
КонецЦикла;
КонецФункции