Добрый день!
Есть необходимость выдавать ошибку в табличной части справочника, при незаполненной ячейке при определенном условии.
Скажите, можно это обработать с помощью ОбработкаПроверкиЗаполнения?
---
```1c
    Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)

    Индекс = ПроверяемыеРеквизиты.Найти("Товары.Характеристика");
    ПроверяемыеРеквизиты.Удалить(Индекс);

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ТаблицаТоваров.НомерСтроки КАК НомерСтроки,
    | ТаблицаТоваров.Номенклатура КАК Номенклатура
    |ИЗ
    | Документ.РеализацияРекламныхМетериалов.Товары КАК ТаблицаТоваров
    |ГДЕ
    | ТаблицаТоваров.Характеристика = ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
    | И ТаблицаТоваров.Номенклатура.ИспользованиеХарактеристик В (ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеДляВидаНоменклатуры),
    | ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеСДругимВидомНоменклатуры),
    | ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ИндивидуальныеДляНоменклатуры))
    | И ТаблицаТоваров.Ссылка = &Ссылка
    | И ТаблицаТоваров.Ссылка.ПометкаУдаления = ЛОЖЬ";
    Запрос.УстановитьПараметр("Ссылка", ЭтотОбъект.Ссылка);
    Результат = Запрос.Выполнить();
    ТекстОшибки = ";
    Если Не Результат.Пустой() Тогда
    ТекстОшибки = "Обнаружены ошибки:" + Символы.ПС;
    Выборка = Результат.Выбрать();
    Пока ВЫборка.Следующий() Цикл
    ТекстОшибки = ТекстОшибки + " " + Строка(Выборка.Номенклатура) + ", в строке - " + Строка(Выборка.НомерСтроки) + Символы.ПС;
    КонецЦикла;
    СообщенияПользователюБЗК.СообщитьПользователю(ТекстОшибки);
    ОТказ = Истина;
    КонецЕсли;
    КонецПроцедуры
```
---
Можно
(3) хмм. В СП даже такой пример приведен.
---
да можно,я что-то подобное делал. Но можно и свое создать, при записи и свою процедуру проверки
---
при определенном условии
Нет.
---
Можно
(3) хмм. В СП даже такой пример приведен.
---
```1c
    Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)

    Индекс = ПроверяемыеРеквизиты.Найти("Товары.Характеристика");
    ПроверяемыеРеквизиты.Удалить(Индекс);

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ТаблицаТоваров.НомерСтроки КАК НомерСтроки,
    | ТаблицаТоваров.Номенклатура КАК Номенклатура
    |ИЗ
    | Документ.РеализацияРекламныхМетериалов.Товары КАК ТаблицаТоваров
    |ГДЕ
    | ТаблицаТоваров.Характеристика = ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
    | И ТаблицаТоваров.Номенклатура.ИспользованиеХарактеристик В (ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеДляВидаНоменклатуры),
    | ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеСДругимВидомНоменклатуры),
    | ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ИндивидуальныеДляНоменклатуры))
    | И ТаблицаТоваров.Ссылка = &Ссылка
    | И ТаблицаТоваров.Ссылка.ПометкаУдаления = ЛОЖЬ";
    Запрос.УстановитьПараметр("Ссылка", ЭтотОбъект.Ссылка);
    Результат = Запрос.Выполнить();
    ТекстОшибки = ";
    Если Не Результат.Пустой() Тогда
    ТекстОшибки = "Обнаружены ошибки:" + Символы.ПС;
    Выборка = Результат.Выбрать();
    Пока ВЫборка.Следующий() Цикл
    ТекстОшибки = ТекстОшибки + " " + Строка(Выборка.Номенклатура) + ", в строке - " + Строка(Выборка.НомерСтроки) + Символы.ПС;
    КонецЦикла;
    СообщенияПользователюБЗК.СообщитьПользователю(ТекстОшибки);
    ОТказ = Истина;
    КонецЕсли;
    КонецПроцедуры
```
---
Какого-то смысла это делать именно в проверке заполнения, если функционал проверки платформы не используется (да и не подходит), и проверка реализована своим кодом, имхо, не вижу.
Этот же код можно вставить и в ПередЗаписьюНаСервере, и проверять в нем.
---
это с сохранением штатной проверки. Т е. Если моя проверка не выдает ошибок, далее проверяются все остальные реквизиты формы. Эта процедура не вся, я фрагмент выложил. Но я и писал выше, что можно это делать при записи, не обязательно в этой процедуре.
---
Правильно я поняла, что что для табличных частей это неприменимо? В плане встроенного функционала.