Имя: Пароль:
1C
1С v8
УФ Как присвоить значению полю формы с типом строка?
0 Domovoi
 
02.06.15
15:46
Есть реквизит типа текст. На форме выведен этот реквизит, установлена кнопка выбора. При выборе выбираем каталог и должны путь к каталогу записать в элемент (или реквизит).

&НаКлиенте
Процедура ПутьКСохраненнымФайламНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    
    ДиалогВыбораФайла                                =    Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога);
    ДиалогВыбораФайла.Заголовок                        =    "Выберите каталог";
    ДиалогВыбораФайла.Каталог                       =    Элемент;
    Если ДиалогВыбораФайла.Выбрать() Тогда
        //Вот тут надо присвоить элементу выбранное знаение -  ДиалогВыбораФайла.Каталог;
    КонецЕсли;
        
КонецПроцедуры
1 Domovoi
 
02.06.15
15:47
Как присвоить значение элементу? Или на крайняк реквизиту?
2 pessok
 
02.06.15
15:49
ну дык...
ИмяРеквизитаФормы = ДиалогВыбораФайла.ПолныйПуть
3 Fish
 
02.06.15
15:50
А СП что говорит по этому поводу? И да, у тебя УФ или обычные формы?
4 pessok
 
02.06.15
15:50
полноимяфайла, т.е.
5 Легат
 
02.06.15
15:51
(3) Судя по тому  ,что на клиенте - управляемые..
6 Fish
 
02.06.15
15:51
(5) В УФ православно использовать ДиалогВыбораФайла.Показать() вместо ДиалогВыбораФайла.Выбрать()
7 pessok
 
02.06.15
15:51
у него в шляпе написано, что УФ
8 Domovoi
 
02.06.15
15:52
УФ у меня
9 Fish
 
02.06.15
15:52
(7) Точно, слона-то я и не приметил. Тогда (6) будет правильно.
10 Fish
 
02.06.15
15:54
+(9) ДиалогВыбораФайла (FileDialog)
Показать (Show)
Синтаксис:

Показать(<ОписаниеОповещения>)
Параметры:

<ОписаниеОповещения> (обязательный)

Тип: ОписаниеОповещения.
Содержит описание процедуры, которая будет вызвана после закрытия диалога выбора со следующими параметрами:
<ВыбранныеФайлы> – массив выбранных имен файлов или Неопределено, если выбор не осуществлен.
<ДополнительныеПараметры> - значение, которое было указано при создании объекта ОписаниеОповещения.
Описание:

Начинает отображение диалога выбора файла.

Доступность:

Тонкий клиент, веб-клиент, толстый клиент.
11 pessok
 
02.06.15
15:55
камрады, в (0) другое спрашивают :D
12 Fish
 
02.06.15
16:00
(11) Это понятно, но имхо, лучше на УФ сразу использовать немодальные вызовы, чтобы потом не пришлось переделывать.
13 Легат
 
02.06.15
16:04
Элемент.Значение = ДиалогФыбораФайла.Каталог так, не?
14 Domovoi
 
02.06.15
16:15
(13)В УФ нельзя так, насколько я понял. У элемента там нет Значение
15 Domovoi
 
02.06.15
16:16
(10)А такое точно есть? А то у меня в СП нет и через точку не выдает такой метод.
16 trooba
 
02.06.15
16:19
(0) Я делал реквизит: Элементы.ДекорацияПериод.Заголовок=
17 trooba
 
02.06.15
16:19
(16) + Но это естественно не хранит путь, да и зачем оно надо?
18 Domovoi
 
02.06.15
16:25
Попробовал, нету такого ДиалогВыбораФайла.Показать()
19 Fish
 
02.06.15
16:26
(18) Платформа какая?
20 Domovoi
 
02.06.15
16:27
8.3 (8.3.4.437)
21 Fish
 
02.06.15
16:28
(20) Древняя. См: http://v8.1c.ru/o7/201312ref/index.htm
22 Domovoi
 
02.06.15
16:37
Что-то это тяжко как-то.

Простого стандартного метода нету что ли? Забыли прикрутить?
23 Fish
 
02.06.15
16:39
(22) Так у тебя что не получается? Определить выбранное имя файла/каталог или присвоить его твоему элементу?
24 Domovoi
 
02.06.15
16:45
Присвоить его элементу
25 Domovoi
 
02.06.15
16:46
По старому я написал бы:
Элемент.Значение = ДиалогФыбораФайла.Каталог

Но теперь нету Элемент.Значение

Вместо Элемент.Значение - что используется в УФ?
26 Nuobu
 
02.06.15
16:50
(25) Вместо этого справа вверху добавляется новый элемент на форму. Тип - строка. Вот в него ты и можешь сохранить своё значение. Только не в значение, а так:
ЭтаФорма.НовыйЭлементСТипомСтрока = ДиалогВыбораФайла.Каталог;
27 Domovoi
 
02.06.15
16:53
Вообще выбор делается в элементе, который является реквизитом справочника. В итоге мне надо чтобы значение попало в реквизит.
28 Domovoi
 
02.06.15
16:53
+(27)Элемент расположен на форме элемента справочника
29 Domovoi
 
02.06.15
17:00
(26)Это работает
30 Fish
 
02.06.15
17:01
(28) Ну тогда пиши: Объект.КакТамТвойРеквизитНазывается = ДиалогФыбораФайла.Каталог;

Только я бы ещё добавил в процедуру НачалоВыбора

СтандартнаяОбработка = ложь;
31 Domovoi
 
02.06.15
17:10
(30)О чудо! :) работает.
О, кстати, СтандартнаяОбработка = ложь; я всегда раньше ставил, а тут без этого работает как я понял.
Ошибка? Это не ошибка, это системная функция.