feat(извещения): перезаполнение извещений при изменении документов, версия 1.0.1
This commit is contained in:
@@ -242,12 +242,19 @@
|
|||||||
"Организация, Учреждение, ИФО, Период, Ответственный, ИзвещениеИсходящее");
|
"Организация, Учреждение, ИФО, Период, Ответственный, ИзвещениеИсходящее");
|
||||||
|
|
||||||
ИзвещениеОбъект = Неопределено;
|
ИзвещениеОбъект = Неопределено;
|
||||||
|
ЭтоНовоеИзвещение = Истина;
|
||||||
Если ЗначениеЗаполнено(Реквизиты.ИзвещениеИсходящее) Тогда
|
Если ЗначениеЗаполнено(Реквизиты.ИзвещениеИсходящее) Тогда
|
||||||
ИзвещениеОбъект = Реквизиты.ИзвещениеИсходящее.ПолучитьОбъект();
|
ИзвещениеОбъект = Реквизиты.ИзвещениеИсходящее.ПолучитьОбъект();
|
||||||
|
ЭтоНовоеИзвещение = ИзвещениеОбъект = Неопределено;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ИзвещениеОбъект = Неопределено Тогда
|
Если ЭтоНовоеИзвещение Тогда
|
||||||
ИзвещениеОбъект = Документы.ИзвещениеИсходящее.СоздатьДокумент();
|
ИзвещениеОбъект = Документы.ИзвещениеИсходящее.СоздатьДокумент();
|
||||||
|
ИначеЕсли ИзвещениеОбъект.ПомеченНаУдаление Тогда
|
||||||
|
ОбщегоНазначения.СообщитьПользователю(
|
||||||
|
"Извещение " + Строка(ИзвещениеОбъект.Ссылка) + " помечено на удаление: изменения в него не вносятся."
|
||||||
|
+ " Снимите пометку удаления или отвяжите извещение от документа передачи.");
|
||||||
|
Возврат Документы.ИзвещениеИсходящее.ПустаяСсылка();
|
||||||
ИначеЕсли ИзвещениеОбъект.Проведен Тогда
|
ИначеЕсли ИзвещениеОбъект.Проведен Тогда
|
||||||
ОбщегоНазначения.СообщитьПользователю(
|
ОбщегоНазначения.СообщитьПользователю(
|
||||||
"Извещение " + Строка(ИзвещениеОбъект.Ссылка) + " проведено: изменения в него не вносятся."
|
"Извещение " + Строка(ИзвещениеОбъект.Ссылка) + " проведено: изменения в него не вносятся."
|
||||||
@@ -255,7 +262,9 @@
|
|||||||
Возврат Документы.ИзвещениеИсходящее.ПустаяСсылка();
|
Возврат Документы.ИзвещениеИсходящее.ПустаяСсылка();
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ИзвещениеОбъект.Дата = ТекущаяДатаСеанса();
|
Если ЭтоНовоеИзвещение Тогда
|
||||||
|
ИзвещениеОбъект.Дата = ТекущаяДатаСеанса();
|
||||||
|
КонецЕсли;
|
||||||
ИзвещениеОбъект.Организация = Реквизиты.Организация;
|
ИзвещениеОбъект.Организация = Реквизиты.Организация;
|
||||||
ИзвещениеОбъект.Получатель = КонтрагентПоОрганизации(Реквизиты.Учреждение);
|
ИзвещениеОбъект.Получатель = КонтрагентПоОрганизации(Реквизиты.Учреждение);
|
||||||
ИзвещениеОбъект.ВидИзвещения = Перечисления.ВидыОперацийИсходящееИзвещение.ПолучениеДохода;
|
ИзвещениеОбъект.ВидИзвещения = Перечисления.ВидыОперацийИсходящееИзвещение.ПолучениеДохода;
|
||||||
@@ -292,12 +301,19 @@
|
|||||||
"Организация, ЦБ, ИФО, Период, Ответственный, ИзвещениеВходящее, ДокументПередачи");
|
"Организация, ЦБ, ИФО, Период, Ответственный, ИзвещениеВходящее, ДокументПередачи");
|
||||||
|
|
||||||
ИзвещениеОбъект = Неопределено;
|
ИзвещениеОбъект = Неопределено;
|
||||||
|
ЭтоНовоеИзвещение = Истина;
|
||||||
Если ЗначениеЗаполнено(Реквизиты.ИзвещениеВходящее) Тогда
|
Если ЗначениеЗаполнено(Реквизиты.ИзвещениеВходящее) Тогда
|
||||||
ИзвещениеОбъект = Реквизиты.ИзвещениеВходящее.ПолучитьОбъект();
|
ИзвещениеОбъект = Реквизиты.ИзвещениеВходящее.ПолучитьОбъект();
|
||||||
|
ЭтоНовоеИзвещение = ИзвещениеОбъект = Неопределено;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ИзвещениеОбъект = Неопределено Тогда
|
Если ЭтоНовоеИзвещение Тогда
|
||||||
ИзвещениеОбъект = Документы.ИзвещениеВходящее.СоздатьДокумент();
|
ИзвещениеОбъект = Документы.ИзвещениеВходящее.СоздатьДокумент();
|
||||||
|
ИначеЕсли ИзвещениеОбъект.ПомеченНаУдаление Тогда
|
||||||
|
ОбщегоНазначения.СообщитьПользователю(
|
||||||
|
"Извещение " + Строка(ИзвещениеОбъект.Ссылка) + " помечено на удаление: изменения в него не вносятся."
|
||||||
|
+ " Снимите пометку удаления или отвяжите извещение от документа принятия.");
|
||||||
|
Возврат Документы.ИзвещениеВходящее.ПустаяСсылка();
|
||||||
ИначеЕсли ИзвещениеОбъект.Проведен Тогда
|
ИначеЕсли ИзвещениеОбъект.Проведен Тогда
|
||||||
ОбщегоНазначения.СообщитьПользователю(
|
ОбщегоНазначения.СообщитьПользователю(
|
||||||
"Извещение " + Строка(ИзвещениеОбъект.Ссылка) + " проведено: изменения в него не вносятся."
|
"Извещение " + Строка(ИзвещениеОбъект.Ссылка) + " проведено: изменения в него не вносятся."
|
||||||
@@ -305,7 +321,9 @@
|
|||||||
Возврат Документы.ИзвещениеВходящее.ПустаяСсылка();
|
Возврат Документы.ИзвещениеВходящее.ПустаяСсылка();
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ИзвещениеОбъект.Дата = ТекущаяДатаСеанса();
|
Если ЭтоНовоеИзвещение Тогда
|
||||||
|
ИзвещениеОбъект.Дата = ТекущаяДатаСеанса();
|
||||||
|
КонецЕсли;
|
||||||
ИзвещениеОбъект.Организация = Реквизиты.Организация;
|
ИзвещениеОбъект.Организация = Реквизиты.Организация;
|
||||||
ИзвещениеОбъект.Отправитель = КонтрагентПоОрганизации(Реквизиты.ЦБ);
|
ИзвещениеОбъект.Отправитель = КонтрагентПоОрганизации(Реквизиты.ЦБ);
|
||||||
ИзвещениеОбъект.ВидИзвещения = Перечисления.ВидыОперацийВходящееИзвещение.ПолучениеДохода;
|
ИзвещениеОбъект.ВидИзвещения = Перечисления.ВидыОперацийВходящееИзвещение.ПолучениеДохода;
|
||||||
@@ -329,6 +347,44 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Синхронизирует связанное извещение с изменившимся документом подсистемы.
|
||||||
|
//
|
||||||
|
// Вызывается из обработчика записи документов передачи и принятия платежей: извещение
|
||||||
|
// перезаполняется по актуальным строкам реестра, чтобы его печатная форма не разошлась
|
||||||
|
// с учётным документом. Проведённое извещение и извещение, помеченное на удаление,
|
||||||
|
// не изменяются - такие документы пользователь приводит в порядок сам.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// ДокументОбъект - ДокументОбъект.ПС_ПередачаПоступившихПлатежейВУчреждения,
|
||||||
|
// ДокументОбъект.ПС_ПринятиеПоступившихПлатежейИзЦБ - записываемый документ.
|
||||||
|
//
|
||||||
|
Процедура ОбновитьИзвещениеПриИзмененииДокумента(ДокументОбъект) Экспорт
|
||||||
|
|
||||||
|
Если ДокументОбъект.ЭтоНовый() Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ЭтоПередача = ТипЗнч(ДокументОбъект) = Тип("ДокументОбъект.ПС_ПередачаПоступившихПлатежейВУчреждения");
|
||||||
|
|
||||||
|
Извещение = ?(ЭтоПередача, ДокументОбъект.ИзвещениеИсходящее, ДокументОбъект.ИзвещениеВходящее);
|
||||||
|
Если НЕ ЗначениеЗаполнено(Извещение) Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СостояниеИзвещения = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Извещение,
|
||||||
|
"Проведен, ПометкаУдаления");
|
||||||
|
Если СостояниеИзвещения.Проведен ИЛИ СостояниеИзвещения.ПометкаУдаления Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если ЭтоПередача Тогда
|
||||||
|
СоздатьИзвещениеПоПередаче(ДокументОбъект.Ссылка);
|
||||||
|
Иначе
|
||||||
|
СоздатьИзвещениеПоПринятию(ДокументОбъект.Ссылка);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область СлужебныеПроцедурыИФункции
|
#Область СлужебныеПроцедурыИФункции
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
<usePurposes>PersonalComputer</usePurposes>
|
<usePurposes>PersonalComputer</usePurposes>
|
||||||
<scriptVariant>Russian</scriptVariant>
|
<scriptVariant>Russian</scriptVariant>
|
||||||
<defaultRoles>Role.ПС_ОсновнаяРоль</defaultRoles>
|
<defaultRoles>Role.ПС_ОсновнаяРоль</defaultRoles>
|
||||||
<version>1.0.0</version>
|
<version>1.0.1</version>
|
||||||
<defaultLanguage>Language.Русский</defaultLanguage>
|
<defaultLanguage>Language.Русский</defaultLanguage>
|
||||||
<interfaceCompatibilityMode>TaxiEnableVersion8_2</interfaceCompatibilityMode>
|
<interfaceCompatibilityMode>TaxiEnableVersion8_2</interfaceCompatibilityMode>
|
||||||
<languages uuid="2f74bb63-c643-4692-af13-1f99a56719fb" extendedConfigurationObject="4b1b900f-9c8f-4b2b-8292-3a9a6db40715">
|
<languages uuid="2f74bb63-c643-4692-af13-1f99a56719fb" extendedConfigurationObject="4b1b900f-9c8f-4b2b-8292-3a9a6db40715">
|
||||||
|
|||||||
+4
@@ -67,6 +67,10 @@
|
|||||||
// расходящиеся электронные документы аннулируются.
|
// расходящиеся электронные документы аннулируются.
|
||||||
ПС_ВнутреннийЭДОИзвещений.ПС_АннулироватьЭлектронныеДокументыПриИзменении(ЭтотОбъект, Отказ);
|
ПС_ВнутреннийЭДОИзвещений.ПС_АннулироватьЭлектронныеДокументыПриИзменении(ЭтотОбъект, Отказ);
|
||||||
|
|
||||||
|
// Связанное извещение перезаполняется по актуальным строкам реестра,
|
||||||
|
// чтобы его печатная форма не разошлась с документом.
|
||||||
|
ПС_УчетРодительскойПлаты.ОбновитьИзвещениеПриИзмененииДокумента(ЭтотОбъект);
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
|
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
|
||||||
|
|||||||
+4
@@ -133,6 +133,10 @@
|
|||||||
// расходящиеся электронные документы аннулируются.
|
// расходящиеся электронные документы аннулируются.
|
||||||
ПС_ВнутреннийЭДОИзвещений.ПС_АннулироватьЭлектронныеДокументыПриИзменении(ЭтотОбъект, Отказ);
|
ПС_ВнутреннийЭДОИзвещений.ПС_АннулироватьЭлектронныеДокументыПриИзменении(ЭтотОбъект, Отказ);
|
||||||
|
|
||||||
|
// Связанное извещение перезаполняется по актуальным строкам реестра,
|
||||||
|
// чтобы его печатная форма не разошлась с документом.
|
||||||
|
ПС_УчетРодительскойПлаты.ОбновитьИзвещениеПриИзмененииДокумента(ЭтотОбъект);
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
|
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
|
||||||
|
|||||||
Reference in New Issue
Block a user