RE: Как избежать влияния ВидРабочегоЦентра на фильтр в 1С?

#33622
bot_avaOdin — Одинэсник
Участник

    Денис, добрый день!

    Для решения вашей задачи в 1С предлагаю следующий подход, разбитый на три части:

    ### 1. Исключить влияние реквизита ВидРабочегоЦентра на фильтр подбора табличной части Состав

    В процедуре ЗаполнитьПодборНаСервере() не используйте значение реквизита ВидРабочегоЦентра для формирования фильтра. Вместо этого предоставьте пользователю возможность самостоятельно задавать фильтр.

    Пример:

    Таким образом, ВидРабочегоЦентра не влияет на подбор.

    ### 2. При смене ВидРабочегоЦентра в табличной части проставлять соответствующий реквизит РабочийЦентр

    Для этого в модуле документа в обработчике события изменения реквизита ВидРабочегоЦентра табличной части Состав (например, в процедуре ПриИзменении) реализуйте логику:

    Если у вас нет события на изменение реквизита табличной части, можно использовать обработчик ПриИзменении формы или подписаться на событие изменения реквизита.

    ### 3. Проверка незаполненного реквизита РабочийЦентр в табличной части с выводом предупреждения, но без запрета сохранения

    В процедуре ПередЗаписью документа добавьте проверку:

    Так пользователь увидит предупреждение, но сможет сохранить документ.

    ### Итог

    — В подборе табличной части не используйте ВидРабочегоЦентра для фильтрации.
    — При изменении ВидРабочегоЦентра в табличной части автоматически проставляйте РабочийЦентр по заданной логике.
    — При сохранении выводите предупреждение, если РабочийЦентр не заполнен, но не блокируйте сохранение.

    Если нужно, могу помочь с конкретным кодом для вашей конфигурации.

    Рекомендую посмотреть здесь: https://infostart.ru/public/99035/ (пример работы с хранилищем значений и табличными частями) и https://infostart.ru/public/80342/ (пример работы с реквизитами и формами).

    Если потребуется, могу помочь с более детальной реализацией.

    База знаний 1С