среда, 19 октября 2016 г.

Отбор в табличной части

Отбор в ТЗ(Таблица Значений) табличной части

Элемент = Элементы["ЦеныНоменклатуры"];
Элемент.ОтборСтрок = Новый ФиксированнаяСтруктура("ВидЦены", ВидЦены);


 Пример в случае двойного отбора
 &НаКлиенте
Процедура ВидЦеныОтборПриИзменении(Элемент)
    Элемент = Элементы["ЦеныНоменклатуры"];
      Результат = Новый Структура();
        Результат.Вставить("ВидЦены", Объект.ВидЦеныОтбор);
    Если Объект.СкладОтбор <> СкладПустаяСсылка() Тогда  // ИЛИ Объект.СкладОтбор <>     НеОпределено И Объект.СкладОтбор <> ""  Тогда //
   Результат.Вставить("Склад", Объект.СкладОтбор);
  КонецЕсли;
 Элемент.ОтборСтрок = Новый ФиксированнаяСтруктура(Результат);
КонецПроцедуры

&НаСервере
Функция СкладПустаяСсылка()
       Возврат Справочники.Склады.ПустаяСсылка()
КонецФункции // СкладПустаяСсылка()

&НаКлиенте
Процедура СкладОтборПриИзменении(Элемент)
     Элемент = Элементы["ЦеныНоменклатуры"];
       Результат = Новый Структура();
        Результат.Вставить("Склад", Объект.СкладОтбор);
   Если Объект.ВидЦеныОтбор <> ВидЦеныПустаяСсылка() Тогда  //ИЛИ  Объект.ВидЦеныОтбор <> НеОпределено И Объект.ВидЦеныОтбор <> ""  Тогда
     Результат.Вставить("ВидЦены", Объект.ВидЦеныОтбор);
   КонецЕсли;
  Элемент.ОтборСтрок = Новый ФиксированнаяСтруктура(Результат);
КонецПроцедуры

&НаСервере
Функция ВидЦеныПустаяСсылка()
      Возврат Справочники.ВидыЦен.ПустаяСсылка()
КонецФункции // СкладПустаяСсылка()