Как узнать Полное Имя Файла? #431448


#0 by ПТР
Платформа 8.1.14. Файл, размещен в том же каталоге, что и обработка, его создавшая. 1.ПУТЬ файла - ПУСТОЙ!? 2.ИМЯФАЙЛА совпадает с ПОЛНЫМИМЕНЕМФАЙЛА!? Получается, что каталог, в котором создана обработка, становится "ТЕКУЩИМКАТАЛОГОМ" файловой системы 1С8, хотя не ЯСНО, почему выхолощены такие понятия как: ПУТЬ и ПОЛНОЕИМЯ. Как в этой ситуации определить имя этого каталога из текущей или другой внешней обработки, возможно созданой ранее??? Я просмотрел форум по этой теме и доминирует мнение, что это невозможно.
#1 by Vitello
Нужно узнать полное имя файла внешней обработки? или что?
#2 by ПТР
Я в текущей обработке создал файл как новый. Объявил в строке Короткое имя файла:   2.Убедился,что ВыбФайл.Существует=Истина. 3.И что я получаю Далее: 3.2   ВыбрФайл.Путь=""; Где Полное Имя в обычном смысле, относительно корневого каталога? Где Путь от корневого каталога до короткого имени?
#3 by hhhh
вопрос на засыпку. Корневого каталога чего?
#4 by Jolly Roger
у обработки есть ИспользуемоеИмяФайла... ну, вообще, не стоит класть файлы куда попало...
#5 by ПТР
Тогда какой смысл ВЛОЖЕН в понятия ПУТЬ И ПОЛНОЕИМЯФАЙЛА?
#6 by Mitriy
ты чем недовольный? ты путь указал, для того, чтобы требовать его?
#7 by ПТР
Я в каталог базы добавил текст с путями возможного размещения обработок. При загрузке я вывожу на рабочий стол  "Обработку-Диспетчер" в таблице которого размещены  файловые адреса моих "горячих" обработок. Диспетчер сам по Путям Текста находит объявленные в таблице короткими именами обработки. Эти обработки могут размещаться в разных каталогах. Но главная задача диспетчера заключается в избавлении меня от необходимости изменять пути в таблице диспетчера при переносе БД с одного компьютера на другой. Повышая интеллект "Диспетчера" я столкнулся с невполне объяснимыми явлениями, в т.ч. и в части обсуждаемых понятий.
#8 by Vitello
Храни обработку прямо в базе и не парься.
#9 by Vitello
+пример см. справочник Внешние обработки в типовых.
#10 by Serg_1960
Автор не подозревает о наличие в конфе справочника "Внешние обработки"? К чему этот цирк-шапито с "диспетчером"?
#11 by Vitello
Вполне вероятно что он "свежий" семерошник :)
#12 by Serg_1960
Упс, сорри, - не подумал об этом.
#13 by ПТР
Справочник "Внешние обработки" конфигуратора не обеспечивает значительной доли сервиса, по сравнению с моим диспетчером. В справочнике д.б. заполнено поле с файловым адресом обработки и как быть при смене файлового пространства, например, при переносе БД с одного компютера на другой. Кроме того, через справочник оперативно редактировать текст обработки с помощью отладчика нельзя. Необходимо после каждой коррекции модулей активизировать обработку в справочнике заново.
#14 by Vitello
Этот справочник хранит обработку в двоичном виде целиком, и пофигу ему "файловое пространство".
#15 by Serg_1960
Справочник внешних обработок, по сути своей, является хранилишем данных. Можете его использовать вместо каталога для обработок. Разрешаю :) Достаточно написать процедуру выгрузки обработки из справочника во внешний файл для редактирования и процедуру загрузки после редактирования... Впрочем, как с ним работать, интерактивно или программно, - решать Вам.
#16 by ПТР
Все таки мы ушли от начальной темы. Что такое ПУТЬ и что такое ПОЛНОЕИМЯФАЙЛА в терминах 1С8 применительно к такой сущности как ФАЙЛ?
#17 by hhhh
если написано, ПОЛНОЕИМЯФАЙЛА, ты должен указать ей полное имя файла. На бред, типа она не ведется.
#18 by ПТР
Видимо мой вопрос неправильно понят. Мой фрагмент: ВыбФайл.ПолноеИмя="КороткоеИмя"; это не оператор присвоения, а запись, показвывающая чему равно фактическое значение левой части равенства. ПОДЧЕРКИВАЮ для файла объявленного существующим по короткому имени
#19 by Serg_1960
А как Вас правильно понять с Вашей абстрактной конструкцией "КороткоеИмя"? Синтакс-помощник ясно и недвухсмысленно требует: "...<Имя> (обязательный) Тип: Строка. ПОЛНОЕ имя файла или каталога, с которым будет связан конструируемый объект..." Озвучьте реальный пример - будет конкретный разговор :(
#20 by ПТР
#21 by Wehrmacht
А вопрос-то в чем? Почему вы видите не то, что ожидаете?
#22 by ПТР
Собственно вопрос в этом и заключается. Почему я не вижу ожидаемого пути и ожидаемого полного имени. Платформа не древняя, Конфы и УТ и УПП результат одинаковый.
#23 by НЕА123
пустота - это и есть ТЕКУЩИЙКАТАЛОГ. если ТЕКУЩИЙКАТАЛОГ изменится, то должно измениться полноеИмя и путь?
#24 by Wehrmacht
Может вы не того ожидаете? =)
#25 by НЕА123
> Получается, что каталог, в котором создана обработка,становится "ТЕКУЩИМКАТАЛОГОМ" файловой системы 1С8... неправда.
#26 by НЕА123
+ неа. скорее всего тут Вы правы. но "ТЕКУЩИЙКАТАЛОГ" можно меняется многими методами.
#27 by Jolly Roger
читаем внимательно СП (капсы мои): Файл (File) По имени файла Синтаксис: Новый Файл(<Имя>) Параметры: <Имя> (обязательный) Тип: Строка. ПОЛНОЕ имя файла или каталога, с которым будет связан конструируемый объект. Какие еще могут быть вопросы? Вопрос может быть один - почему платформа не генерит исключение, когда ей передаешь <Имя>, не содержащее разделителя каталогов...
#28 by Serg_1960
Отвяньте все :) Автор прав. Есть такой баг или фича (кому как).   Если во внешней обработке работать с файлами, не указывая явно каталог, то используется "по умолчанию" каталог из полного имени файла внешней обработки. И этот "по умолчанию" каталог не прописывается в соответствующих свойствах. Корректно работает код, когда явно указывается полное имя файла, везде где оно требуется. Например:
#29 by Wehrmacht
Т.е. а если я не во внешней обработке сделаю тоже самое, он мне покажет чо?
#30 by Wehrmacht
+всмысле не ваш код, а код автора.
#31 by Serg_1960
Увидите то, что автор озвучил :) Точнее сказать - НЕ увидите :(
#32 by hhhh
да нет правда, последний каталог 1С автоматом делает текущим. Например делаю сравнение объединение конфигураций, каталог шаблонов, потом например хочу открыть внешнюю обработку - он мне сразу подсовывает в качестве текущего каталог шаблонов, хотя ни я ни ПТР этого не ожидаем.
#33 by Jolly Roger
>Корректно работает код, когда явно указывается полное имя файла, везде где оно требуется. конгениально! СП курит в сторонке...
#34 by ПТР
Понятно. Спасибо! Кстати, как можно программно, не используя диалог выбора изменять текущий каталог в 1С8?
#35 by Serg_1960
Ой-ли? Поведение конфигуратора, интерактивная работа - не стоит "переносить" на язык... Можешь сказать/объяснить лучше - делай. Или нервно покури в сторонке :) А зачем? Зачем использовать "текущий" каталог. Есть что - то можно использовать значения из настройки пользователя, КаталогВременныхФайлов, ПолучитьИмяВременногоФайла...
#36 by Jolly Roger
все предельно ясно изложено в ...
#37 by Serg_1960
Поясню: Если использовать для записи файлов "текущий" каталог (не нравится мне такой термин, да Бог с ним) - то юзверь может нарваться на каталог с ограничением доступа - "только чтение"... Читай - я первый "ясно и недвухсмысленно" :)
#38 by Serg_1960
И кстати, раз пошла такая пьянка, - кое-что еще из СП: Использование: Чтение и запись. Описание: Тип: Строка. Содержит полное имя файла, которое будет использоваться при сохранении текстового документа пользователем. Данное свойство будет заполняться: 1. При программной установке значения; 2. При интерактивном открытии документа из файла; 3. При вызове метода Показать, если в нем указано имя файла; 4. При вызове пользователем команды "Сохранить как…". Сериализуется.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С