Имя: Пароль:
1C
1С v8
Выбор значения в табл части документа
0 Black Dragon
 
24.01.14
14:58
Доброго дня!

Подскажите, знатоки, какие есть варианты при выборе значения для ячейки табл части документа?

Вот по старинке сделал так:

Процедура РазмещениеТекущаяЯчейкаНачалоВыбора(Элемент, СтандартнаяОбработка)

    СтандартнаяОбработка = Ложь;
    ТекСтрока = ЭлементыФормы.Размещение.ТекущаяСтрока;
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("МоментВремени",Ссылка.МоментВремени());
    Запрос.УстановитьПараметр("Номенклатура",ТекСтрока.Номенклатура);
    Запрос.УстановитьПараметр("Характеристика",ТекСтрока.Характеристика);
    Запрос.УстановитьПараметр("Склад",ТекСтрока.ТекущийСклад);
    Запрос.Текст = "ВЫБРАТЬ
        |    РазмещениеПоЯчейкамОстатки.Номенклатура,
        |    РазмещениеПоЯчейкамОстатки.ХарактеристикаНоменклатуры КАК Характеристика,
        |    РазмещениеПоЯчейкамОстатки.Склад,
        |    РазмещениеПоЯчейкамОстатки.МестоХранения КАК Ячейка,
        |    РазмещениеПоЯчейкамОстатки.Основание,
        |    РазмещениеПоЯчейкамОстатки.КоличествоОстаток КАК Количество,
        |    РазмещениеПоЯчейкамОстатки.РезервОстаток КАК Резерв,
        |    РазмещениеПоЯчейкамОстатки.КоличествоОстаток - РазмещениеПоЯчейкамОстатки.РезервОстаток КАК Остаток
        |ИЗ
        |    РегистрНакопления.РазмещениеПоЯчейкам.Остатки(
        |            &МоментВремени,
        |            Номенклатура = &Номенклатура
        |                И ХарактеристикаНоменклатуры = &Характеристика
        |                И Склад = &Склад) КАК РазмещениеПоЯчейкамОстатки";
        
    ТаблОстатков = Запрос.Выполнить().Выгрузить();
    Если ТаблОстатков.Количество() > 0 Тогда
        ВыбСтрока = ТаблОстатков.ВыбратьСтроку();
        Если ВыбСтрока <> Неопределено Тогда
            Элемент.Значение = ВыбСтрока.Ячейка;
            ТекСтрока.ТекущееКоличество = ВыбСтрока.Количество;
            ТекСтрока.ТекущийРезерв = ВыбСтрока.Резерв;
        КонецЕсли;
    Иначе
        Предупреждение("По данной номенклатуре не найдено размещений по ячейкам!");
    КонецЕсли;

КонецПроцедуры

Однако интуитивно чувствую что можно по-другому реализовать!
1 Black Dragon
 
24.01.14
15:35