diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/Forms/ФормаДокумента/Form.form b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/Forms/ФормаДокумента/Form.form index 380f654..14c8cd7 100644 --- a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/Forms/ФормаДокумента/Form.form +++ b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/Forms/ФормаДокумента/Form.form @@ -401,6 +401,7 @@ UsualGroup + Vertical true true Auto @@ -2086,7 +2087,7 @@ Left - Hyperlink + UsualButton Normal Auto true @@ -2115,7 +2116,7 @@ UsualGroup - Vertical + AlwaysHorizontal true true Auto @@ -2675,6 +2676,32 @@ Normal + + ПС_СоздатьПередачуЗадолженностиВЦБ + 241 + true + true + + true + + + ФормаПС_СоздатьПередачуЗадолженностиВЦБРасширеннаяПодсказка + 242 + Label + true + true + + Left + + + Form.Command.ПС_СоздатьПередачуЗадолженностиВЦБ + Normal + Auto + true + true + UserCmds + Auto + Left true @@ -2712,6 +2739,22 @@ Auto Auto + + ПС_СоздатьПередачуЗадолженностиВЦБ + + <key>ru</key> + <value>Создать на основании: Передача задолженности в ЦБ</value> + + 1000001 + + true + + + + ПС_СоздатьПередачуЗадолженностиВЦБ + + + diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/Forms/ФормаДокумента/Module.bsl b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/Forms/ФормаДокумента/Module.bsl index 239751d..93ac720 100644 --- a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/Forms/ФормаДокумента/Module.bsl +++ b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/Forms/ФормаДокумента/Module.bsl @@ -93,3 +93,20 @@ Процедура ПС_ПроверитьНаОшибкиПосле(Команда) ПС_ПроверитьНаОшибкиПослеНаСервере(); КонецПроцедуры + +&НаКлиенте +Процедура ПС_СоздатьПередачуЗадолженностиВЦБ(Команда) + + Если НЕ ЗначениеЗаполнено(Объект.Ссылка) Тогда + СообщениеПользователю = Новый СообщениеПользователю; + СообщениеПользователю.Текст = "Сначала запишите документ начисления."; + СообщениеПользователю.Сообщить(); + Возврат; + КонецЕсли; + + ПараметрыФормы = Новый Структура("Основание", Объект.Ссылка); + ОткрытьФорму("Документ.ПС_ПередачаЗадолженностиВЦБ.Форма.ФормаДокумента", + ПараметрыФормы, + ЭтотОбъект); + +КонецПроцедуры diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/ManagerModule.bsl b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/ManagerModule.bsl new file mode 100644 index 0000000..e69de29 diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/ObjectModule.bsl b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/НачислениеРодительскойПлаты/ObjectModule.bsl new file mode 100644 index 0000000..e69de29 diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/Forms/ФормаДокумента/Form.form b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/Forms/ФормаДокумента/Form.form index 8c543f6..2aba5d6 100644 --- a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/Forms/ФормаДокумента/Form.form +++ b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/Forms/ФормаДокумента/Form.form @@ -1,19 +1,255 @@ - - Номер - 1 + + ГруппаОрганизаций + 71 + + ГруппаЦБПолучатель + 69 + + ГруппаНомерДата + 67 + + Номер + 1 + true + true + + true + + + Объект.Number + + + НомерРасширеннаяПодсказка + 3 + Label + true + true + + Left + + + + НомерКонтекстноеМеню + 2 + true + + InputField + EnterOnInput + true + Left + true + + true + true + true + true + true + true + true + Normal + + + + Дата + 4 + true + true + + true + + + Объект.Date + + + ДатаРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 5 + true + + InputField + EnterOnInput + true + Left + true + + true + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа номер дата</value> + + + ГруппаНомерДатаРасширеннаяПодсказка + 68 + Label + true + true + + Left + + + UsualGroup + + Auto + Auto + true + true + Auto + Auto + + + + ЦБ + 10 + true + true + + true + + + Объект.ЦБ + + + ЦБРасширеннаяПодсказка + 12 + Label + true + true + + Left + + + + ЦБКонтекстноеМеню + 11 + true + + InputField + EnterOnInput + true + Left + true + + true + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа ЦБПолучатель</value> + + + ГруппаЦБПолучательРасширеннаяПодсказка + 70 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + Организация + 7 + true + true + + true + + + Объект.Организация + + + ОрганизацияРасширеннаяПодсказка + 9 + Label + true + true + + Left + + + + ОрганизацияКонтекстноеМеню + 8 + true + + InputField + EnterOnInput + true + Left + true + + true + true + true + true + true + true + true + + Style.ReportHeaderBackColor + + Normal + + true true true - - Объект.Number - + + <key>ru</key> + <value>Группа организаций</value> + - НомерРасширеннаяПодсказка - 3 + ГруппаОрганизацийРасширеннаяПодсказка + 72 Label true true @@ -21,151 +257,14 @@ Left - - НомерКонтекстноеМеню - 2 - true - - InputField - EnterOnInput - true - Left - true - - true - true - true - true - true - true - true - Normal - - - - Дата - 4 - true - true - - true - - - Объект.Date - - - ДатаРасширеннаяПодсказка - 6 - Label - true - true - - Left - - - - ДатаКонтекстноеМеню - 5 - true - - InputField - EnterOnInput - true - Left - true - - true - true - true - true - true - true - true - Normal - - - - Организация - 7 - true - true - - true - - - Объект.Организация - - - ОрганизацияРасширеннаяПодсказка - 9 - Label - true - true - - Left - - - - ОрганизацияКонтекстноеМеню - 8 - true - - InputField - EnterOnInput - true - Left - true - - true - true - true - true - true - true - true - Normal - - - - ЦБ - 10 - true - true - - true - - - Объект.ЦБ - - - ЦБРасширеннаяПодсказка - 12 - Label - true - true - - Left - - - - ЦБКонтекстноеМеню - 11 - true - - InputField - EnterOnInput - true - Left - true - - true - true - true - true - true - true - true - Normal + UsualGroup + + Auto + Auto + true + true + Auto + Auto @@ -841,9 +940,39 @@ ФормаКоманднаяПанель -1 + + ПечатьИзвещения + 65 + true + true + + true + + + ФормаПечатьИзвещенияРасширеннаяПодсказка + 66 + Label + true + true + + Left + + + Form.Command.ПечатьИзвещения + Normal + Auto + true + true + UserCmds + Auto + Left true + + OnCreateAtServer + ПриСозданииНаСервере + true true true @@ -871,6 +1000,22 @@
true
true + + ПечатьИзвещения + + <key>ru</key> + <value>Печать извещения (ф. 0504805)</value> + + 1 + + true + + + + ПечатьИзвещения + + + diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/Forms/ФормаДокумента/Module.bsl b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/Forms/ФормаДокумента/Module.bsl index e69de29..9232801 100644 --- a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/Forms/ФормаДокумента/Module.bsl +++ b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/Forms/ФормаДокумента/Module.bsl @@ -0,0 +1,24 @@ +// ПС_ПередачаЗадолженностиВЦБ: модуль формы документа. + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура ПечатьИзвещения(Команда) + + ТабличныйДокумент = ПечатьИзвещенияНаСервере(Объект.Ссылка); + ТабличныйДокумент.Показать("Извещение (ф. 0504805, ред. 103н)"); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Функция ПечатьИзвещенияНаСервере(ДокументСсылка) + + Возврат Документы.ПС_ПередачаЗадолженностиВЦБ.СформироватьПечатныеФормыИзвещений(ДокументСсылка); + +КонецФункции + +#КонецОбласти diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/ManagerModule.bsl b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/ManagerModule.bsl index 8c690f4..82ba04d 100644 --- a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/ManagerModule.bsl +++ b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/ManagerModule.bsl @@ -1,97 +1,104 @@ // ПС_ПередачаЗадолженностиВЦБ: модуль менеджера. -// Печатная форма Извещения (ф. 0504805, ред. 103н). +// Печатная форма Извещения (ф. 0504805, ред. 103н) - сторона отправителя (сад). // Используется типовая вёрстка макета ИзвещениеИсходящее с областями: // Заголовок, ПояснениеМБТ, Строка, Итого, Подвал. // Проводка между садом и ЦБ по 205.31/304.04 - одна сводная на документ. -Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт +#Область ПрограммныйИнтерфейс - Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПФ_MXL_Извещение0504805_103н_ПС_РП") Тогда +// Регистрирует команды создания на основании в подменю форм документов-оснований. +// +// Параметры: +// КомандыСоздатьНаОсновании - ТаблицаЗначений - состав колонок см. в документации БСП. +// Параметры - Структура - параметры формы. +// +Процедура ДобавитьКомандыСоздатьНаОсновании(КомандыСоздатьНаОсновании, Параметры) Экспорт - УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию( - КоллекцияПечатныхФорм, - "ПФ_MXL_Извещение0504805_103н_ПС_РП", - "Извещение (ф. 0504805, ред. 103н)", - СформироватьПечатныеФормыИзвещений(МассивОбъектов, ОбъектыПечати)); + Если ПравоДоступа("Добавление", Метаданные.Документы.ПС_ПередачаЗадолженностиВЦБ) Тогда + + КомандаСоздатьНаОсновании = КомандыСоздатьНаОсновании.Добавить(); + КомандаСоздатьНаОсновании.Идентификатор = Метаданные.Документы.ПС_ПередачаЗадолженностиВЦБ.ПолноеИмя(); + КомандаСоздатьНаОсновании.Представление = НСтр("ru = 'Передача задолженности в ЦБ'"); + КомандаСоздатьНаОсновании.РежимЗаписи = "Проводить"; КонецЕсли; КонецПроцедуры -Функция СформироватьПечатныеФормыИзвещений(МассивОбъектов, ОбъектыПечати) Экспорт +// Формирует табличный документ извещения (ф. 0504805, ред. 103н). +// Вызывается из модуля формы документа кнопкой "Печать". +// +// Параметры: +// ДокументСсылка - DocumentRef.ПС_ПередачаЗадолженностиВЦБ - печатаемый документ. +// +// Возвращаемое значение: +// ТабличныйДокумент +// +Функция СформироватьПечатныеФормыИзвещений(ДокументСсылка) Экспорт ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.КлючПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ПС_ПередачаЗадолженностиВЦБ_Извещение0504805"; - Макет = УправлениеПечатью.МакетПечатнойФормы("Document.ПС_ПередачаЗадолженностиВЦБ.ПФ_MXL_Извещение0504805_103н_ПС_РП"); + Макет = ПолучитьМакет("ПФ_MXL_Извещение0504805_103н_ПС_РП"); Если Макет = Неопределено Тогда Возврат ТабличныйДокумент; КонецЕсли; + Если НЕ ДокументСсылка.Проведен Тогда + Возврат ТабличныйДокумент; + КонецЕсли; + + ДокументОбъект = ДокументСсылка.ПолучитьОбъект(); + Если ДокументОбъект = Неопределено ИЛИ ДокументОбъект.Задолженность.Количество() = 0 Тогда + Возврат ТабличныйДокумент; + КонецЕсли; + Счет304_04_130 = ПланыСчетов.ЕПСБУ.НайтиПоКоду("304.04.130"); Счет205_31_66X = ПланыСчетов.ЕПСБУ.НайтиПоКоду("205.31.66X"); Счет205_31_56X = ПланыСчетов.ЕПСБУ.НайтиПоКоду("205.31.56X"); - Для Каждого ДокументСсылка Из МассивОбъектов Цикл + ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); + ОбластьЗаголовок.Параметры.Номер = ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(ДокументСсылка.Номер, Истина, Истина); + ОбластьЗаголовок.Параметры.Дата = Формат(ДокументСсылка.Дата, "ДЛФ=DD"); + ОбластьЗаголовок.Параметры.пНаименованиеОтправитель = Строка(ДокументОбъект.Организация); + ОбластьЗаголовок.Параметры.пНаименованиеПолучатель = Строка(ДокументОбъект.ЦБ); + ТабличныйДокумент.Вывести(ОбластьЗаголовок); - Если НЕ ДокументСсылка.Проведен Тогда - Продолжить; - КонецЕсли; + ОбластьПояснение = Макет.ПолучитьОбласть("ПояснениеМБТ"); + ОбластьПояснение.Параметры.ПояснениеМБТ = "Передача задолженности по родительской плате за " + + Формат(ДокументОбъект.Период, "ДФ=MMMM yyyy") + + ". Основание: " + Строка(ДокументОбъект.ДокументНачисления) + "."; + ТабличныйДокумент.Вывести(ОбластьПояснение); - ДокументОбъект = ДокументСсылка.ПолучитьОбъект(); - Если ДокументОбъект = Неопределено Тогда - Продолжить; - КонецЕсли; + ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); + ОбластьСтрока.Параметры.пСодержание = "Передача задолженности по родительской плате"; + ОбластьСтрока.Параметры.пДебетСчетОтправитель = Строка(Счет304_04_130); + ОбластьСтрока.Параметры.пКредитСчетОтправитель = Строка(Счет205_31_66X); + ОбластьСтрока.Параметры.пСуммаОтправитель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); + ОбластьСтрока.Параметры.пДебетСчетПолучатель = Строка(Счет205_31_56X); + ОбластьСтрока.Параметры.пКредитСчетПолучатель = Строка(Счет304_04_130); + ОбластьСтрока.Параметры.пСуммаПолучатель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); + ТабличныйДокумент.Вывести(ОбластьСтрока); - Если ДокументОбъект.Задолженность.Количество() = 0 Тогда - Продолжить; - КонецЕсли; + ОбластьИтого = Макет.ПолучитьОбласть("Итого"); + ОбластьИтого.Параметры.пИтогоСуммаОтправитель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); + ОбластьИтого.Параметры.пИтогоСуммаПолучатель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); + ТабличныйДокумент.Вывести(ОбластьИтого); - ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); - ОбластьЗаголовок.Параметры.Номер = ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(ДокументСсылка.Номер, Истина, Истина); - ОбластьЗаголовок.Параметры.Дата = Формат(ДокументСсылка.Дата, "ДЛФ=DD"); - ОбластьЗаголовок.Параметры.пНаименованиеОтправитель = Строка(ДокументОбъект.Организация); - ОбластьЗаголовок.Параметры.пНаименованиеПолучатель = Строка(ДокументОбъект.ЦБ); - ТабличныйДокумент.Вывести(ОбластьЗаголовок); - - ОбластьПояснение = Макет.ПолучитьОбласть("ПояснениеМБТ"); - ОбластьПояснение.Параметры.ПояснениеМБТ = "Передача задолженности по родительской плате за " - + Формат(ДокументОбъект.Период, "ДФ=MMMM yyyy") - + ". Основание: " + Строка(ДокументОбъект.ДокументНачисления) + "."; - ТабличныйДокумент.Вывести(ОбластьПояснение); - - ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); - ОбластьСтрока.Параметры.пСодержание = "Передача задолженности по родительской плате"; - ОбластьСтрока.Параметры.пДебетСчетОтправитель = Строка(Счет304_04_130); - ОбластьСтрока.Параметры.пКредитСчетОтправитель = Строка(Счет205_31_66X); - ОбластьСтрока.Параметры.пСуммаОтправитель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); - ОбластьСтрока.Параметры.пДебетСчетПолучатель = Строка(Счет205_31_56X); - ОбластьСтрока.Параметры.пКредитСчетПолучатель = Строка(Счет304_04_130); - ОбластьСтрока.Параметры.пСуммаПолучатель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); - ТабличныйДокумент.Вывести(ОбластьСтрока); - - ОбластьИтого = Макет.ПолучитьОбласть("Итого"); - ОбластьИтого.Параметры.пИтогоСуммаОтправитель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); - ОбластьИтого.Параметры.пИтогоСуммаПолучатель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); - ТабличныйДокумент.Вывести(ОбластьИтого); - - ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); - ОбластьПодвал.Параметры.пФИОРуководительОтправитель = Строка(ДокументОбъект.Организация.Руководитель); - ОбластьПодвал.Параметры.пФИОБухгалтерОтправитель = Строка(ДокументОбъект.Организация.ГлавныйБухгалтер); - ОбластьПодвал.Параметры.пФИОРуководительПолучатель = Строка(ДокументОбъект.ЦБ.Руководитель); - ОбластьПодвал.Параметры.пФИОБухгалтерПолучатель = Строка(ДокументОбъект.ЦБ.ГлавныйБухгалтер); - ОбластьПодвал.Параметры.ДолжностьИсполнительОтправитель = "Главный бухгалтер"; - ОбластьПодвал.Параметры.ФИОИсполнительОтправитель = Строка(ДокументОбъект.Ответственный); - ОбластьПодвал.Параметры.ДолжностьИсполнительПолучатель = "Главный бухгалтер"; - ОбластьПодвал.Параметры.ФИОИсполнительПолучатель = Строка(ДокументОбъект.Ответственный); - ОбластьПодвал.Параметры.пКоличествоПриложений = ДокументОбъект.Задолженность.Количество(); - ТабличныйДокумент.Вывести(ОбластьПодвал); - - ОбъектыПечати.Добавить(ДокументСсылка); - - КонецЦикла; + ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); + ОбластьПодвал.Параметры.пФИОРуководительОтправитель = Строка(ДокументОбъект.Организация.Руководитель); + ОбластьПодвал.Параметры.пФИОБухгалтерОтправитель = Строка(ДокументОбъект.Организация.ГлавныйБухгалтер); + ОбластьПодвал.Параметры.пФИОРуководительПолучатель = Строка(ДокументОбъект.ЦБ.Руководитель); + ОбластьПодвал.Параметры.пФИОБухгалтерПолучатель = Строка(ДокументОбъект.ЦБ.ГлавныйБухгалтер); + ОбластьПодвал.Параметры.ДолжностьИсполнительОтправитель = "Главный бухгалтер"; + ОбластьПодвал.Параметры.ФИОИсполнительОтправитель = Строка(ДокументОбъект.Ответственный); + ОбластьПодвал.Параметры.ДолжностьИсполнительПолучатель = "Главный бухгалтер"; + ОбластьПодвал.Параметры.ФИОИсполнительПолучатель = Строка(ДокументОбъект.Ответственный); + ОбластьПодвал.Параметры.пКоличествоПриложений = ДокументОбъект.Задолженность.Количество(); + ТабличныйДокумент.Вывести(ОбластьПодвал); Возврат ТабличныйДокумент; КонецФункции +#КонецОбласти diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/ObjectModule.bsl b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/ObjectModule.bsl index b4be9a9..da9db67 100644 --- a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/ObjectModule.bsl +++ b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПередачаЗадолженностиВЦБ/ObjectModule.bsl @@ -2,6 +2,50 @@ // Этап 2 из методических рекомендаций по учёту родительской платы ЦБ ОУО. // На стороне детского сада (л/с 03): Дт 1.304.04.130 — Кт 1.205.31.66X. +Процедура ОбработкаЗаполнения(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка) + + Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.НачислениеРодительскойПлаты") Тогда + ЗаполнитьНаОснованииНачисления(ДанныеЗаполнения); + КонецЕсли; + +КонецПроцедуры + +Процедура ЗаполнитьНаОснованииНачисления(ДокументНачисленияСсылка) + + ДокументНачисления = ДокументНачисленияСсылка.ПолучитьОбъект(); + Если ДокументНачисления = Неопределено Тогда + Возврат; + КонецЕсли; + + Организация = ДокументНачисления.Организация; + ИФО = ДокументНачисления.ИФО; + Ответственный = ДокументНачисления.Ответственный; + ДокументНачисления = ДокументНачисленияСсылка; + + Если ДокументНачисления.НачалоПериода <> '00010101' Тогда + Период = ДокументНачисления.НачалоПериода; + Иначе + Период = НачалоМесяца(ДокументНачисления.Дата); + КонецЕсли; + + Задолженность.Очистить(); + СуммаДокумента = 0; + + Для Каждого СтрокаНачисления Из ДокументНачисления.Начисления Цикл + + НоваяСтрока = Задолженность.Добавить(); + НоваяСтрока.Контрагент = СтрокаНачисления.Контрагент; + НоваяСтрока.Договор = СтрокаНачисления.ДоговорКонтрагента; + НоваяСтрока.Ребенок = СтрокаНачисления.Ребенок; + НоваяСтрока.ИДСтроки = СтрокаНачисления.ИДСтроки; + НоваяСтрока.Сумма = СтрокаНачисления.Сумма; + + СуммаДокумента = СуммаДокумента + СтрокаНачисления.Сумма; + + КонецЦикла; + +КонецПроцедуры + Процедура ОбработкаПроведения(Отказ, РежимПроведения) Если Отказ Тогда diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/Forms/ФормаДокумента/Form.form b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/Forms/ФормаДокумента/Form.form index f5d908f..d488428 100644 --- a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/Forms/ФормаДокумента/Form.form +++ b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/Forms/ФормаДокумента/Form.form @@ -841,6 +841,32 @@ ФормаКоманднаяПанель -1 + + ПечатьИзвещения + 65 + true + true + + true + + + ФормаПечатьИзвещенияРасширеннаяПодсказка + 66 + Label + true + true + + Left + + + Form.Command.ПечатьИзвещения + Normal + Auto + true + true + UserCmds + Auto + Left true @@ -871,6 +897,22 @@
true
true + + ПечатьИзвещения + + <key>ru</key> + <value>Печать извещения (ф. 0504805) - получатель</value> + + 1 + + true + + + + ПечатьИзвещения + + + diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/Forms/ФормаДокумента/Module.bsl b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/Forms/ФормаДокумента/Module.bsl new file mode 100644 index 0000000..82e1637 --- /dev/null +++ b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/Forms/ФормаДокумента/Module.bsl @@ -0,0 +1,24 @@ +// ПС_ПринятиеЗадолженностиОтУчреждения: модуль формы документа. + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура ПечатьИзвещения(Команда) + + ТабличныйДокумент = ПечатьИзвещенияНаСервере(Объект.Ссылка); + ТабличныйДокумент.Показать("Извещение (ф. 0504805, ред. 103н) - получатель"); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Функция ПечатьИзвещенияНаСервере(ДокументСсылка) + + Возврат Документы.ПС_ПринятиеЗадолженностиОтУчреждения.СформироватьПечатныеФормыИзвещений(ДокументСсылка); + +КонецФункции + +#КонецОбласти diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/ManagerModule.bsl b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/ManagerModule.bsl index b6d072b..feedb80 100644 --- a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/ManagerModule.bsl +++ b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/ManagerModule.bsl @@ -3,94 +3,101 @@ // Используется типовая вёрстка макета ИзвещениеИсходящее с областями: // Заголовок, ПояснениеМБТ, Строка, Итого, Подвал. -Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт +#Область ПрограммныйИнтерфейс - Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПФ_MXL_Извещение0504805_103н_ПС_РП_Получатель") Тогда +// Регистрирует команды создания на основании в подменю форм документов-оснований. +// +// Параметры: +// КомандыСоздатьНаОсновании - ТаблицаЗначений - состав колонок см. в документации БСП. +// Параметры - Структура - параметры формы. +// +Процедура ДобавитьКомандыСоздатьНаОсновании(КомандыСоздатьНаОсновании, Параметры) Экспорт - УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию( - КоллекцияПечатныхФорм, - "ПФ_MXL_Извещение0504805_103н_ПС_РП_Получатель", - "Извещение (ф. 0504805, ред. 103н) - получатель", - СформироватьПечатныеФормыИзвещений(МассивОбъектов, ОбъектыПечати)); + Если ПравоДоступа("Добавление", Метаданные.Документы.ПС_ПринятиеЗадолженностиОтУчреждения) Тогда + + КомандаСоздатьНаОсновании = КомандыСоздатьНаОсновании.Добавить(); + КомандаСоздатьНаОсновании.Идентификатор = Метаданные.Документы.ПС_ПринятиеЗадолженностиОтУчреждения.ПолноеИмя(); + КомандаСоздатьНаОсновании.Представление = НСтр("ru = 'Принятие задолженности от учреждения'"); + КомандаСоздатьНаОсновании.РежимЗаписи = "Проводить"; КонецЕсли; КонецПроцедуры -Функция СформироватьПечатныеФормыИзвещений(МассивОбъектов, ОбъектыПечати) Экспорт +// Формирует табличный документ извещения (ф. 0504805, ред. 103н). +// Вызывается из модуля формы документа кнопкой "Печать". +// +// Параметры: +// ДокументСсылка - DocumentRef.ПС_ПринятиеЗадолженностиОтУчреждения - печатаемый документ. +// +// Возвращаемое значение: +// ТабличныйДокумент +// +Функция СформироватьПечатныеФормыИзвещений(ДокументСсылка) Экспорт ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.КлючПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ПС_ПринятиеЗадолженности_Извещение0504805"; - Макет = УправлениеПечатью.МакетПечатнойФормы("Document.ПС_ПринятиеЗадолженностиОтУчреждения.ПФ_MXL_Извещение0504805_103н_ПС_РП_Получатель"); + Макет = ПолучитьМакет("ПФ_MXL_Извещение0504805_103н_ПС_РП_Получатель"); Если Макет = Неопределено Тогда Возврат ТабличныйДокумент; КонецЕсли; + Если НЕ ДокументСсылка.Проведен Тогда + Возврат ТабличныйДокумент; + КонецЕсли; + + ДокументОбъект = ДокументСсылка.ПолучитьОбъект(); + Если ДокументОбъект = Неопределено ИЛИ ДокументОбъект.Задолженность.Количество() = 0 Тогда + Возврат ТабличныйДокумент; + КонецЕсли; + Счет304_04_130 = ПланыСчетов.ЕПСБУ.НайтиПоКоду("304.04.130"); Счет205_31_66X = ПланыСчетов.ЕПСБУ.НайтиПоКоду("205.31.66X"); Счет205_31_56X = ПланыСчетов.ЕПСБУ.НайтиПоКоду("205.31.56X"); - Для Каждого ДокументСсылка Из МассивОбъектов Цикл + ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); + ОбластьЗаголовок.Параметры.Номер = ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(ДокументСсылка.Номер, Истина, Истина); + ОбластьЗаголовок.Параметры.Дата = Формат(ДокументСсылка.Дата, "ДЛФ=DD"); + ОбластьЗаголовок.Параметры.пНаименованиеОтправитель = Строка(ДокументОбъект.Учреждение); + ОбластьЗаголовок.Параметры.пНаименованиеПолучатель = Строка(ДокументОбъект.Организация); + ТабличныйДокумент.Вывести(ОбластьЗаголовок); - Если НЕ ДокументСсылка.Проведен Тогда - Продолжить; - КонецЕсли; + ОбластьПояснение = Макет.ПолучитьОбласть("ПояснениеМБТ"); + ОбластьПояснение.Параметры.ПояснениеМБТ = "Принятие задолженности по родительской плате за " + + Формат(ДокументОбъект.Период, "ДФ=MMMM yyyy") + + ". Основание: " + Строка(ДокументОбъект.ДокументПередачи) + "."; + ТабличныйДокумент.Вывести(ОбластьПояснение); - ДокументОбъект = ДокументСсылка.ПолучитьОбъект(); - Если ДокументОбъект = Неопределено Тогда - Продолжить; - КонецЕсли; + ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); + ОбластьСтрока.Параметры.пСодержание = "Принятие задолженности по родительской плате"; + ОбластьСтрока.Параметры.пДебетСчетОтправитель = Строка(Счет304_04_130); + ОбластьСтрока.Параметры.пКредитСчетОтправитель = Строка(Счет205_31_66X); + ОбластьСтрока.Параметры.пСуммаОтправитель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); + ОбластьСтрока.Параметры.пДебетСчетПолучатель = Строка(Счет205_31_56X); + ОбластьСтрока.Параметры.пКредитСчетПолучатель = Строка(Счет304_04_130); + ОбластьСтрока.Параметры.пСуммаПолучатель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); + ТабличныйДокумент.Вывести(ОбластьСтрока); - Если ДокументОбъект.Задолженность.Количество() = 0 Тогда - Продолжить; - КонецЕсли; + ОбластьИтого = Макет.ПолучитьОбласть("Итого"); + ОбластьИтого.Параметры.пИтогоСуммаОтправитель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); + ОбластьИтого.Параметры.пИтогоСуммаПолучатель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); + ТабличныйДокумент.Вывести(ОбластьИтого); - ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); - ОбластьЗаголовок.Параметры.Номер = ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(ДокументСсылка.Номер, Истина, Истина); - ОбластьЗаголовок.Параметры.Дата = Формат(ДокументСсылка.Дата, "ДЛФ=DD"); - ОбластьЗаголовок.Параметры.пНаименованиеОтправитель = Строка(ДокументОбъект.Учреждение); - ОбластьЗаголовок.Параметры.пНаименованиеПолучатель = Строка(ДокументОбъект.Организация); - ТабличныйДокумент.Вывести(ОбластьЗаголовок); - - ОбластьПояснение = Макет.ПолучитьОбласть("ПояснениеМБТ"); - ОбластьПояснение.Параметры.ПояснениеМБТ = "Принятие задолженности по родительской плате за " - + Формат(ДокументОбъект.Период, "ДФ=MMMM yyyy") - + ". Основание: " + Строка(ДокументОбъект.ДокументПередачи) + "."; - ТабличныйДокумент.Вывести(ОбластьПояснение); - - ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); - ОбластьСтрока.Параметры.пСодержание = "Принятие задолженности по родительской плате"; - ОбластьСтрока.Параметры.пДебетСчетОтправитель = Строка(Счет304_04_130); - ОбластьСтрока.Параметры.пКредитСчетОтправитель = Строка(Счет205_31_66X); - ОбластьСтрока.Параметры.пСуммаОтправитель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); - ОбластьСтрока.Параметры.пДебетСчетПолучатель = Строка(Счет205_31_56X); - ОбластьСтрока.Параметры.пКредитСчетПолучатель = Строка(Счет304_04_130); - ОбластьСтрока.Параметры.пСуммаПолучатель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); - ТабличныйДокумент.Вывести(ОбластьСтрока); - - ОбластьИтого = Макет.ПолучитьОбласть("Итого"); - ОбластьИтого.Параметры.пИтогоСуммаОтправитель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); - ОбластьИтого.Параметры.пИтогоСуммаПолучатель = Формат(ДокументОбъект.СуммаДокумента, "ЧДЦ=2; ЧРГ=' '"); - ТабличныйДокумент.Вывести(ОбластьИтого); - - ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); - ОбластьПодвал.Параметры.пФИОРуководительОтправитель = Строка(ДокументОбъект.Учреждение.Руководитель); - ОбластьПодвал.Параметры.пФИОБухгалтерОтправитель = Строка(ДокументОбъект.Учреждение.ГлавныйБухгалтер); - ОбластьПодвал.Параметры.пФИОРуководительПолучатель = Строка(ДокументОбъект.Организация.Руководитель); - ОбластьПодвал.Параметры.пФИОБухгалтерПолучатель = Строка(ДокументОбъект.Организация.ГлавныйБухгалтер); - ОбластьПодвал.Параметры.ДолжностьИсполнительОтправитель = "Главный бухгалтер"; - ОбластьПодвал.Параметры.ФИОИсполнительОтправитель = Строка(ДокументОбъект.Ответственный); - ОбластьПодвал.Параметры.ДолжностьИсполнительПолучатель = "Главный бухгалтер"; - ОбластьПодвал.Параметры.ФИОИсполнительПолучатель = Строка(ДокументОбъект.Ответственный); - ОбластьПодвал.Параметры.пКоличествоПриложений = ДокументОбъект.Задолженность.Количество(); - ТабличныйДокумент.Вывести(ОбластьПодвал); - - ОбъектыПечати.Добавить(ДокументСсылка); - - КонецЦикла; + ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); + ОбластьПодвал.Параметры.пФИОРуководительОтправитель = Строка(ДокументОбъект.Учреждение.Руководитель); + ОбластьПодвал.Параметры.пФИОБухгалтерОтправитель = Строка(ДокументОбъект.Учреждение.ГлавныйБухгалтер); + ОбластьПодвал.Параметры.пФИОРуководительПолучатель = Строка(ДокументОбъект.Организация.Руководитель); + ОбластьПодвал.Параметры.пФИОБухгалтерПолучатель = Строка(ДокументОбъект.Организация.ГлавныйБухгалтер); + ОбластьПодвал.Параметры.ДолжностьИсполнительОтправитель = "Главный бухгалтер"; + ОбластьПодвал.Параметры.ФИОИсполнительОтправитель = Строка(ДокументОбъект.Ответственный); + ОбластьПодвал.Параметры.ДолжностьИсполнительПолучатель = "Главный бухгалтер"; + ОбластьПодвал.Параметры.ФИОИсполнительПолучатель = Строка(ДокументОбъект.Ответственный); + ОбластьПодвал.Параметры.пКоличествоПриложений = ДокументОбъект.Задолженность.Количество(); + ТабличныйДокумент.Вывести(ОбластьПодвал); Возврат ТабличныйДокумент; КонецФункции +#КонецОбласти diff --git a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/ObjectModule.bsl b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/ObjectModule.bsl index 24e74df..6956fdf 100644 --- a/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/ObjectModule.bsl +++ b/153_ЦБ_ОУО_БГУ.ПрофиСофт/src/Documents/ПС_ПринятиеЗадолженностиОтУчреждения/ObjectModule.bsl @@ -2,6 +2,42 @@ // Этап 3 из методических рекомендаций по учету родительской платы ЦБ ОУО. // На стороне ЦБ (л/с 04): Дт 1.205.31.56X - Кт 1.304.04.130. +Процедура ОбработкаЗаполнения(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка) + + Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ПС_ПередачаЗадолженностиВЦБ") Тогда + ЗаполнитьНаОснованииПередачи(ДанныеЗаполнения); + КонецЕсли; + +КонецПроцедуры + +Процедура ЗаполнитьНаОснованииПередачи(ДокументПередачиСсылка) + + ДокументПередачи = ДокументПередачиСсылка.ПолучитьОбъект(); + Если ДокументПередачи = Неопределено Тогда + Возврат; + КонецЕсли; + + Организация = ДокументПередачи.ЦБ; + Учреждение = ДокументПередачи.Организация; + ИФО = ДокументПередачи.ИФО; + Ответственный = ДокументПередачи.Ответственный; + Период = ДокументПередачи.Период; + ДокументПередачи = ДокументПередачиСсылка; + + Задолженность.Очистить(); + СуммаДокумента = 0; + + Для Каждого СтрокаПередачи Из ДокументПередачи.Задолженность Цикл + + НоваяСтрока = Задолженность.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаПередачи); + + СуммаДокумента = СуммаДокумента + СтрокаПередачи.Сумма; + + КонецЦикла; + +КонецПроцедуры + Процедура ОбработкаПроведения(Отказ, РежимПроведения) Если Отказ Тогда