|  | v7: Перехват открытой формы, как узнать есть ли на форме список значений с пометками | ☑ | 
    
        | 0
    
        Duke1C   19.08.14✎ 11:04 | 
        Вопрос более к Ёпрсту и иным аксакалам.
Ситуация такая. На панели есть кнопка вызывающая универсальную обработку, которая получая текущую открытую форму, при помощи Formex-го Сервис.АктивныйКонтекст(), выполняет с ней некие действия.
 Перед этим пробегаю по всем атрибутам формы через объект "АтрибутФормы" дабы определить состав реквизитов. Так вот у элемента формы типа Список значений в виде "поля со списком" тип=14, а у обычного многострочного списка значений тип=11, неважно стоит ли у него флажок "список с пометками" в конфигураторе. Так вот собственно сабж, как можно програмно узнать есть ли пометки в списке на форме?
 |  | 
    
        | 1
    
        NikVars   19.08.14✎ 12:20 | 
        Так ты программно и передвай список пометок туда, куда тебе нужно. Все равно ж ты бегаешь по всем атрибутам формы, так глянь и пометки.     |  | 
    
        | 2
    
        Duke1C   19.08.14✎ 13:54 | 
        (1) Так я не знаю, что за контекст попался, поэтому и нужно сначала "пощупать" реквизиты. В основном для контекста внешних отчетов и обработок.
"... Все равно ж ты бегаешь по всем атрибутам формы, так глянь и пометки ..." - т.е. тупо посмотреть у списка с типом 11 наличие хоть одной метки?
 |  | 
    
        | 3
    
        NikVars   19.08.14✎ 14:02 | 
        Да. Если есть - формируешь свой параметр, запихиваешь в СписокЗначений и передаешь инфо в СпискеЗначений.     |  | 
    
        | 4
    
        Duke1C   19.08.14✎ 15:06 | 
        (3) Просто может быть ситуация, когда на форме есть видимый список с пометками, у которого ни одной метки не поставлено. Вот и думал, мож как-то можно программно получить значение флажка "список с пометками".     |  | 
    
        | 5
    
        Chum   19.08.14✎ 15:09 | 
        (4) перебрав элементы списка и проверив на наличие пометки     |  | 
    
        | 6
    
        NikVars   19.08.14✎ 15:58 | 
        (5) Да. Именно.     |  | 
    
        | 7
    
        Duke1C   20.08.14✎ 07:38 | 
        (5) Как проверить наличие метки? Типа так:
 ЕстьМетка=0;
 Для Сч=1 по СписокНаФорме.РазмерСписка() Цикл
 Если СписокНаФорме.Пометка(Сч)=1 Тогда
 ЕстьМетка=1;
 Прервать;
 КонецЕсли;
 КонецЦикла;
 
 Тогда ситуация из (4) не обнаружится
 |  |