Вход | Регистрация

1С:Предприятие ::

Метки: 

Установка фильтра на поле формы при открытии

Я
   falselight
 
20.10.17 - 10:33
На форме поле Источник типа СправочникСсылка.ЗначенияСвойствОбъектов.
При открытии его открываются все значения этого справочника.
Подскажите пожалуйста как установить отбор на поле Свойство.
Что бы в нем отобразились нужные значения только. В какой процедуре?
 
 
   Lexey_
 
1 - 20.10.17 - 10:36
(0) "В какой процедуре?"
напиши процедуру УстановкаОтбораНаПолеСвойство() и прям в ней пиши
   falselight
 
2 - 20.10.17 - 10:38
В этой вроде ИсточникНачалоВыбораИзСписка
что в теле будет?
   СамыйУмный
 
3 - 20.10.17 - 10:38
В НачалоВыбора()
   СамыйУмный
 
4 - 20.10.17 - 10:39
(2) А там заполняй реквизит данные выбора нужны запросом
   Lexey_
 
5 - 20.10.17 - 10:39
(2) код будет в теле, устанавливающий отбор
   falselight
 
6 - 20.10.17 - 10:40
не могу найти пример (((((
   falselight
 
7 - 20.10.17 - 10:40
Форма управляемая.
   СамыйУмный
 
8 - 20.10.17 - 10:43
   falselight
 
9 - 20.10.17 - 10:48
там ещё есть такой момент. При открытии формы списка справочника у этой формы списка есть реквизит свойство.
Можно ли как то в него из формы отчета передать значение?
А то если его задать это и есть фильтр.
   СамыйУмный
 
10 - 20.10.17 - 10:51
Как то так:

В месте получения формы:
Параметры = Новый Структура("НовыйПараметр",ПоследнийЭлемент);
ФормаВыбора = ПолучитьФорму("Справочник.Номенклатура.ФормаВыбора",Параметры);

В модуле управляемой формы:  
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Если Параметры.Свойство("НовыйПараметр") Тогда
        // здесь код обработки параметра

    КонецЕсли;
КонецПроцедуры
 
  Рекламное место пустует
   falselight
 
11 - 20.10.17 - 10:56
(10) В модуле управляемой формы, справочника?
А что бы не править в ней ничего можно?
   falselight
 
12 - 20.10.17 - 10:57
(10) Я открываю форму списка, формы выбора нет.
   _Дайвер_
 
13 - 20.10.17 - 11:07
(11) ТОгда вот тут
ФормаВыбора = ПолучитьФорму("Справочник.Номенклатура.ФормаВыбора",Параметры);
Поменяй на
ФормаСпмска = ПолучитьФорму("Справочник.Номенклатура.ФормаСписка",Параметры);
   falselight
 
14 - 20.10.17 - 11:11
(13) Я не понимаю это все. Буду сам искать решение!
   falselight
 
15 - 20.10.17 - 11:16
(13) Вы же предлагаете конфигурацию править!!!!
   falselight
 
16 - 20.10.17 - 11:37
(10) Что такое у вас ПоследнийЭлемент?
   falselight
 
17 - 20.10.17 - 11:46
В форме списка справочника

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Если Параметры.Свойство("НовыйПараментр") Тогда 
        Свойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Источник (канал рекламного воздействия)");    
    КонецЕсли;

При начале выбора на форме отчета в поле Источник

&НаКлиенте
Процедура ИсточникНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    //СтандартнаяОбработка  = Ложь;

    ПередаваемыеПараметры = Новый Структура("НовыйПараметр","ДляОтчета");
    ФормаВыбора           = ПолучитьФорму("Справочник.ЗначенияСвойствОбъектов.ФормаСписка", ПередаваемыеПараметры);
КонецПроцедуры


Сейчас вообще ничего не делается. Подскажите пожалуйста что поправить?
   falselight
 
18 - 20.10.17 - 11:56
вот из за этого вообще форма не открывается списка, почему?

Процедура ИсточникНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    //СтандартнаяОбработка  = Ложь;


    ПередаваемыеПараметры = Новый Структура("НовыйПараметр","ДляОтчета");
    ФормаВыбора           = ПолучитьФорму("Справочник.ЗначенияСвойствОбъектов.ФормаСписка", ПередаваемыеПараметры);
КонецПроцедуры
   Lexey_
 
19 - 20.10.17 - 11:57
(18) потому, что ты ее не открываешь
   falselight
 
20 - 21.10.17 - 05:21
Ребята, вот правильное решение. Оно работоспособно без изменения объектов конфигурации!!!

//

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


Список тем форума
Рекламное место пустует  
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует