Версия для печати темы (https://pro1c.org.ua/index.php?s=40e6dda696fc216c048dc799f15304b6&showtopic=41783)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Убрать пустые строки в ФормеСписка справочника

Автор: illiona 09.11.17, 6:28


Есть справочник партии. Как мне из него либо удалить, либо скрыть отбором строки, где остаток = 0 ? Пустые строки ненужны, лучше бы их удалить

Автор: salton 09.11.17, 8:06

Цитата(illiona @ 09.11.17, 6:28) *
Пустые строки ненужны, лучше бы их удалить

Удалить можно, но не нужно! Это же партии!
А скрыть можно - для этого в панели задач воспользуйтесь кнопочкой "Отбор".

Автор: illiona 09.11.17, 8:17

salton @ Сегодня, 13:06 * ,
не могу найти у себя отбор в свойствах

Автор: cwant 09.11.17, 8:41

Если "Остаток" динамическое поле, которое рассчитывается при отрисовке строки - тогда нужно, перед открытием формы узнать все партии без остатка и настроить отбор не в списке из этих партий

Автор: illiona 09.11.17, 9:50

Процедура СправочникСписокПриПолученииДанных(Элемент, ОформленияСтрок)
    .......
    
    Для Каждого Строка ИЗ ОформленияСтрок Цикл
        
            СтрТЗ = тзВыгрузка.Найти(Строка.ДанныеСтроки.Ссылка, "Партия");
            Если СтрТЗ <> Неопределено Тогда
                Строка.Ячейки.Остаток.УстановитьТекст(СтрТЗ.КоличествоОстаток);
            КонецЕсли;    
      
    КонецЦикла;    
    
КонецПроцедуры


Так отображается остаток

Автор: Moloko 12.11.17, 13:08


 ! 

http://pro1c.org.ua/index.php?act=announce&id=2: 12. Бесполезный, неверный совет
 

Автор: Flexy 12.11.17, 15:09

Процедура СправочникСписокПриПолученииДанных(Элемент, ОформленияСтрок)
    .......
    
// Flexy
СписокОтбор = Новый СписокЗначений;
//-----
Для Каждого Строка ИЗ ОформленияСтрок Цикл
    
    СтрТЗ = тзВыгрузка.Найти(Строка.ДанныеСтроки.Ссылка, "Партия");
    Если СтрТЗ <> Неопределено Тогда
        Строка.Ячейки.Остаток.УстановитьТекст(СтрТЗ.КоличествоОстаток);
        
        // Flexy
        Если СтрТЗ.КоличествоОстаток = 0 Тогда
            СписокОтбор.Добавить(СтрТЗ.Партия);
        КонецЕсли;
        //-----
        
    КонецЕсли;    
    
КонецЦикла;    
// Flexy
Если СписокОтбор.Количество() > 0 Тогда
    СправочникСписок.Отбор.Ссылка.Использование = Истина;
    СправочникСписок.Отбор.Ссылка.ВидСравнения = ВидСравнения.НеВСписке;
    СправочникСписок.Отбор.Ссылка = СписокОтбор;
КонецЕсли;
//-----
КонецПроцедуры

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua