Группа: Пользователи
Сообщений: 460
Из: Казахстан
Спасибо сказали: 45 раз
Рейтинг: 45
4andriy @ Вчера, 21:41
,
ИспользоватьСписокЭлементов(<СписокЗначений>) Назначение: Реализует фильтрацию элементов справочника, используя нединамический фильтр. Параметры: <СписокЗначений> - необязательный параметр. Значение типа - ''СписокЗначений'' - должен представлять собой список элементов справочника, выбранных для просмотра. Если это значение пустое, то фильтр отключается. Замечание: Метод доступен только в контексте Модуля формы списка справочника и относится ко всему текущему справочнику.
Группа: Пользователи
Сообщений: 184
Спасибо сказали: 1 раз
Рейтинг: 1
andrew76 @ 14.12.19, 7:27
,
Процедура Показать() СписокЭлементов = создатьОбъект("СписокЗначений"); Пока Контрагенты.ИНН() Цикл Если (ИНН = 0) Тогда СписокЭлементов.ДобавитьЗначение(ИНН.ТекущийЭлемент()); КонецЕсли; КонецЦикла; ИспользоватьСписокЭлементов(СписокЭлементов); КонецПроцедуры
У контрагента ИНН=0, но при нажатии на кнопку список полностью очищается и стает пустой
Группа: Пользователи
Сообщений: 460
Из: Казахстан
Спасибо сказали: 45 раз
Рейтинг: 45
4andriy @ Сегодня, 18:00
,
Вообще-то этот код лучше записать в процедуру ПриОткрытии() формы, где расположена табличная часть справочника. Реквизит ИНН какого типа ? Числовой или строковый ? Количество элементов в списке проверяли? Может список значений пуст ? Сколько уровней в справочнике ?
Пока Контрагенты.ПолучитьЭлемент()=1 Цикл Если Контрагенты.ИНН=0 Тогда СписокЭлементов.ДобавитьЗначение(Контрагенты.ТекущийЭлемент()); КонецЕсли; КонецЦикла;
Группа: Пользователи
Сообщений: 184
Спасибо сказали: 1 раз
Рейтинг: 1
andrew76 @ Сегодня, 17:24
,
сделал так:
Процедура Показать() СписокЭлементов = СоздатьОбъект("СписокЗначений"); Контрагенты=СоздатьОбъект("Справочник.Контрагенты"); Контрагенты.ВыбратьЭлементы(); Пока Контрагенты.ПолучитьЭлемент()=1 Цикл Если Контрагенты.ИНН="0" Тогда СписокЭлементов.ДобавитьЗначение(Контрагенты.ТекущийЭлемент()); КонецЕсли; КонецЦикла; ИспользоватьСписокЭлементов(СписокЭлементов); КонецПроцедуры
ИНН - строка в списке елементы есть. при открытии список контрагентов у которых 0 в инн, после нажатия показать они пропадают все 1 уровень
тоесть открываю список в котором контрагенты с 0 и другое значение после нажатия кнопки почему-то пропадает все
4andriy @ Сегодня, 12:14
, Попробуйте такое условие
Если ПустаяСтрока(Контрагенты.ИНН)=1 Тогда
Кажется для строковой переменной значение заполняется прбелами до полной длинны. Поэтому у вас в ИНН не "" или "0" а всегда заполнено так " " или "0 " (в смысле - например 12 пробелов).
Сообщение отредактировал volodya1122 - 17.12.19, 12:35
1, Нужно писать так: Сортировка("ИНН"); 2. Для реквизита ИНН в свойствах нужно поставить отметку "Сортировка" 3. Когда пишите ИспользоватьСписокЭлементов то сортировка работать небудет. 4. Попробуйте создать список в нужной последовательности. Используйте метод ПорядокРеквизита (до ВыбратьЭлементы)
Сообщение отредактировал volodya1122 - 19.12.19, 9:54
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!