Имя: Пароль:
1C
 
Отбор в форме выбора
0 ispi123
 
27.03.25
13:09
Нужно сделать отбор в форме выбора, конфа - уат
Запрос.УстановитьПараметр("Дата", Объект.Дата);  
    Выборка = Запрос.Выполнить().Выбрать();
    Если Водитель <> Неопределено Тогда
        Если Выборка.Количество() > 0 И Выборка.Сотрудник = Водитель Тогда
            Возврат Истина;
        Иначе    
            Возврат Ложь;
        КонецЕсли;                        
    КонецЕсли;              
    СписокВодителей = Новый СписокЗначений;
    Пока Выборка.Следующий() Цикл
        СписокВодителей.Добавить(Выборка.Сотрудник);
    КонецЦикла;
    Возврат СписокВодителей;
собираю сотрудников через запрос
пытаюсь сделать отбор
СтандартнаяОбработка = Ложь;  
    Настройки = Новый НастройкиКомпоновкиДанных;
    Элемент = Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    Элемент.Использование = Истина;
    Элемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Наименование");
    Элемент.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
    Элемент.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный;
    ПравоеЗначение = ПроверитьВодителя();
    ПараметрыФормы = Новый Структура;
    ПараметрыФормы.Вставить("ФиксированныеНастройки", Настройки);
    ОткрытьФорму("Справочник.Сотрудники.ФормаВыбора", ПараметрыФормы);

почему-то пустая форма, не могу понять почему лыжи не едут, подскажите пожалуйста
1 Волшебник
 
27.03.25
13:15
отладчик умеете?
2 ispi123
 
27.03.25
13:19
Умею, но не знаю куда смотреть)) если тыкните носом будет замечательно
3 Волшебник
 
27.03.25
13:21
(2) F9 — поставить точку останова
Shift-F9 — вычислить выражение
4 ispi123
 
27.03.25
13:21
Это я понимаю. Ничего криминального в отладчике вроде не вижу.. Левое значение тип поле компановки данных - наименование, правое значение - мой динамический список.
5 Волшебник
 
27.03.25
13:23
(4) У Вас в правом значении может быть Истина/Ложь или массив ссылок.
А в левом Наименование (строка, наверное). Они никогда не будут равны
6 Greeen
 
27.03.25
13:25
(2)
-проверьте, какие типы значения в СписокВодителей и в ЛевомЗначении
-корректно ли задано ПравоеЗначение?
7 Мультук
 
гуру
27.03.25
13:38
(0)
Элемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ссылка");


ПравоеЗначение = ПроверитьВодителя();


Чуть-чуть разница есть, да ?

Элемент.ПравоеЗначение = ПроверитьВодителя();
8 ispi123
 
27.03.25
16:14
(7) Да, заметил это сразу после того как запостил, но все равно спасибо за то что указали
9 ispi123
 
27.03.25
16:15
(5) (6) Действительно, сравнивал строку со ссылкой. Большое спасибо за помощь!
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший