1C
&НаКлиенте
Процедура ЗаписатьДокумент(Отказ)
// Переменные для хранения номера и даты документа
Перем НомерДокумента, ДатаДокумента;
// Получаем номер и дату документа
НомерДокумента = Объект.Номер;
ДатаДокумента = Объект.Дата;
// Формируем запрос для проверки существования документа
Запрос = Новый Запрос(
"ВЫБРАТЬ
Ссылка
ИЗ
Документ.ИмяДокумента
ГДЕ
Номер = &Номер
И Дата = &Дата"
);
// Устанавливаем параметры запроса
Запрос.УстановитьПараметр("Номер", НомерДокумента);
Запрос.УстановитьПараметр("Дата", ДатаДокумента);
// Выполняем запрос
Результат = Запрос.Выполнить();
// Проверяем, найден ли документ
Если Результат.Количество() = 0 Тогда
Предупреждение("Документ с указанным номером и датой не найден.");
Отказ = Истина; // Отменяем запись
Иначе
// Документ найден, продолжаем запись
Объект.Записать();
КонецЕсли;
КонецПроцедуры
В этом примере кода мы получаем номер и дату документа, формируем запрос для проверки его существования в базе данных и, в зависимости от результата, либо отменяем запись, либо продолжаем её.