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