Стоит задача: что нельзя записывать более одного документа за одну дату. (Выдавать предупреждение и не позволять записывать). Как это сделать?
Noviscok @ Сегодня, 8:32
,
В модуле объекта в обработчике "ПередЗаписью" добавляете такое:
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
| КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВАШДОКУМЕНТ.Ссылка) КАК Колво
|ИЗ
| Документ.ВАШДОКУМЕНТ КАК ВАШДОКУМЕНТ
|ГДЕ
| ВАШДОКУМЕНТ.Дата МЕЖДУ &НачалоДня И &КонецДня
|";
Запрос.УстановитьПараметр("НачалоДня", НачалоДня(Дата));
Запрос.УстановитьПараметр("КонецДня", КонецДня(Дата));
Результат = Запрос.Выполнить();
Если НЕ Результат.Пустой() Тогда // раз есть результат значит уже есть документ
Выборка = Результат.Выбрать();
Выборка.Следующий();
Сообщить("В этот день уже есть "+Строка(Выборка.Колво)+" документов.");
Отказ = Истина;
Возврат;
КонецЕсли;
КонецПроцедуры
Bernet @ Сегодня, 13:09
,
Не могу понять пишет что поле Дата не найде
Вот дурак, разобрался. СПАСИБО ОГРОМНОЕ
Мне больше такой вариант нравится
Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
| ВАШДОКУМЕНТ.Ссылка
Выборка = Результат.Выбрать();
Выборка.Следующий();
Если Результат.Пустой() Тогда
Если Результат.Пустой() Тогда
//ничего не происходит, можно
Сообщить("Документов нет");
Иначе
Выборка = Результат.Выбрать();
Выборка.Следующий();
Сообщить("В этот день уже есть "+Строка(Выборка.Колво)+" документов.");
КонецЕсли;
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua