...

Фильтрация списка выбора приложения

Тема в разделе "Вопросы по платформе", создана пользователем software_infotecs, 7 сен 2023.

  1. software_infotecs

    software_infotecs Участник

    Подскажите пожалуйста как применить фильтр к списку выбора приложения?
    Есть приложение при создании открывается форма и там нужно выбрать другое приложение, когда открывается форма выбора нужно применить фильтр.
    Пробовал на форме на инит и на клиенте и на сервере, но фильтр не применяется.
    Код:
    
    /* Server scripts module */

    async function OnServerInit(): Promise<void> {
        
    Context.fields.shablon_proekta.data.setFilter((appFieldscontextglobalFilters) => globalFilters.and(
         
    appFields.kind.eq("RNumProject"),     
         
    appFields.status.eq(Context.fields.shablon_proekta.app.fields.status.variants.active)
    ));
    }
    На клиенет пробовал аналогично, но в обоих случаях никакого эффекта.
    Подскажите пожалуйста как и где правильно реализовать данный фильтр?
  2. r.varankin

    r.varankin Участник

    Добрый день! Пробовали ли вы пользоваться фильтрами в настройке контекста элемента приложения? Здесь вы можете установить необходимые фильтры или связать фильтрацию с другой переменной. Подробнее о полях настройки https://elma365.com/ru/help/platform/360009707032.html#Приложение . Подробнее о динамике на форме https://elma365.com/ru/help/platform/360029574371.html#filter .
    [​IMG] [​IMG]
    По поводу вашего сценария ваша ошибка состоит в сравнении типа данных TEnum(Категория), если конечно мы правильно вас поняли, с типом данных String(Строка). Чтобы вам правильно сравнить категорию, необходимо добраться до неё подобным образом, как вы добирались до статуса. Ниже пример:
    [​IMG]
  3. software_infotecs

    software_infotecs Участник

    Да, вариант с ограничить выбор помог. Но частично.
    тут правильно, это у нас текстовое поле
    Код:
    
    appFields.kind.eq("RNumProject"), 
    
    
    Хотелось бы сделать это все-таки через setFilter потому что там можно накладывать исключающие условия neq.
    И можно ли это сделать как-то для общего списка приложения? Вариант с фильтром не подходит, потому что там нет возможности добавить исключающие условия.
  4. r.varankin

    r.varankin Участник