-
Notifications
You must be signed in to change notification settings - Fork 1
/
Регистр.МодульНабораЗаписей.bsl
58 lines (42 loc) · 2.97 KB
/
Регистр.МодульНабораЗаписей.bsl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
Процедура ВыполнитьКонтрольРезультатовПроведения(ДокументОбъект, Отказ) Экспорт
МетаРегистр = ЭтотОбъект.ДополнительныеСвойства.Метаданные;
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Регистратор", Отбор.Регистратор.Значение);
Запрос.МенеджерВременныхТаблиц = ЭтотОбъект.ДополнительныеСвойства.МенеджерВременныхТаблиц;
Запрос.Текст =
"ВЫБРАТЬ
| РегистрОстаткиОстатки.Организация КАК Организация,
| РегистрОстаткиОстатки.Пользователь КАК Пользователь,
| РегистрОстаткиОстатки.КоличествоОстаток КАК Количество
|ИЗ
| РегистрНакопления.РегистрОстатки.Остатки(
| ,
| (Организация, Пользователь) В
| (ВЫБРАТЬ РАЗЛИЧНЫЕ
| Т.Организация,
| Т.Пользователь
| ИЗ
| РегистрОстаткиИзменение КАК Т)) КАК РегистрОстаткиОстатки
|ГДЕ
| РегистрОстаткиОстатки.КоличествоОстаток < 0
|;
|
|////////////////////////////////////////////////////////////////////////////////
|УНИЧТОЖИТЬ РегистрОстаткиИзменение";
ДокументОбъект.ДополнительныеСвойства.РезультатКонтроля.Вставить(МетаРегистр.Имя, Запрос.Выполнить().Выгрузить());
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийМодуля
Процедура ПередЗаписью(Отказ, Замещение)
ПроведениеСерверПТБ.ПередЗаписьюРегистра(ЭтотОбъект, Отказ, Замещение);
КонецПроцедуры
Процедура ПриЗаписи(Отказ, Замещение)
ПравилаПроверки = Новый Массив;
ПравилаПроверки.Добавить("СУММА(ТаблицаДвижений.Количество) < 0");
ПроведениеСерверПТБ.УстановитьПравилаПроверкиРегистра(ЭтотОбъект, ПравилаПроверки);
ПроведениеСерверПТБ.ПриЗаписиРегистра(ЭтотОбъект, Отказ, Замещение);
КонецПроцедуры
#КонецОбласти
#КонецЕсли