Список Значений Как Элемент Диалога

lsnbox

New member
13.05.2013
3
0
#1
Народ, помогите чайнику!
Есть форма, в ней список значений с пометками.
Формирую список, выбираю значение для дальнейшей обработки, а результат пустой.
Вот текст:

Процедура ВыборРаб();
СпрРаб = СоздатьОбъект("Справочник.ФизЛица");
Режим = 1;
СпрРаб.ВыбратьЭлементы(Режим);
Пока СпрРаб.ПолучитьЭлемент()=1 Цикл
Если СпрРаб.ЭтоГруппа()=0 Тогда
СписРаб.ДобавитьЗначение(СпрРаб);
Сообщить(СпрРаб);
Иначе Продолжить;
КонецЕсли;
КонецЦикла;
КонецПроцедуры

Процедура Сформировать()
Для Сч = 1 По СписРаб.РазмерСписка() Цикл
Если СписРаб.Пометка(Сч) = 0 Тогда
Продолжить;
КонецЕсли;
ВыбрРаб = СписРаб.ПолучитьЗначение(Сч);
Если ПустоеЗначение(ВыбрРаб)=1 Тогда
Сообщить("строка № "+Сч+" пустая");
Продолжить;
КонецЕсли;
Сообщить(Сч+", "+ВыбрРаб);
КонецЦикла;
КонецПроцедуры

Вот итог:
строка № 1 пустая
На период внимания не обращайте.
Понимаю, что я тупила, но где конкретно???
Скрин на всякий.
 

Вложения

KiR

НЕ шибка опытный програмер)
11.09.2007
1 581
0
#2
так у тебя ведь не список на форме, а скорее всего таблица значений скорее всего с флагом выбора - т.е. есть что-то типа ТЗ.выводитьПиктограммы() Вот и обходи ее по условию типа если флаг = 2 тогда
 

lsnbox

New member
13.05.2013
3
0
#3
KiR,
это именно Список Значений, с дополнительным свойством "Список с пометками",
вставленный в форму как элемент диалога.
Я кое-что предпринял:
1. Проверил тип выбираемого значения. Оказалось, "справочник". Думал, здесь собака.
Поправил обработку, теперь он "строка". Но результат тот же :D .
Причем, проверяю на "пустое значение" - сообщения об этом не появляется.
Приложил работающий кусок обработки (надо расширение поменять на .ert), может кто ткнет меня, тупыря, носом.
 

Вложения

vbs

Well-known member
18.02.2007
1 708
1
#4
СписРаб.ДобавитьЗначение(СпрРаб.ТекущийЭлемент());
 

lsnbox

New member
13.05.2013
3
0
#5
vbs,
Спасибо за ответ. Я сделал так:
СписРаб.ДобавитьЗначение(СпрРаб.ТекущийЭлемент().Наименование);
Однако, дело было не в этом.
Просто при использовании "Сообщить(Сч+", "+ВыбрРаб)" - сообщаемое значение приводится к числу, т.к. первый аргумент - число. Нужно было:
Сообщить(""+Сч+", "+ВыбрРаб); Тогда все нормально видно и правильно выбирается.
Недостаток опыта мой :D
С уважением
Тему можно закрывать.