#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
Процедура ЗадатьОписаниеЗаполняемыхРеквизитовПоСтатистике(ОписаниеРеквизитов) Экспорт
Параметры = ЗаполнениеОбъектовПоСтатистике.ПараметрыЗаполняемыхРеквизитов();
Параметры.РазрезыСбораСтатистики.ИспользоватьВсегда = "Автор";
Параметры.ЗаполнятьПриУсловии.ПоляОбъектаЗаполнены = "Автор";
ЗаполнениеОбъектовПоСтатистике.ДобавитьОписаниеЗаполняемыхРеквизитов(ОписаниеРеквизитов,
"Подразделение", Параметры);
Параметры = ЗаполнениеОбъектовПоСтатистике.ПараметрыЗаполняемыхРеквизитов();
Параметры.РазрезыСбораСтатистики.ИспользоватьВсегда = "Касса";
Параметры.ЗаполнятьПриУсловии.ПоляОбъектаЗаполнены = "Касса, Автор";
ЗаполнениеОбъектовПоСтатистике.ДобавитьОписаниеЗаполняемыхРеквизитов(ОписаниеРеквизитов, "Кассир", Параметры);
КонецПроцедуры
#Область Проведение
Процедура ЗарегистрироватьУчетныеМеханизмы(МеханизмыДокумента) Экспорт
МеханизмыДокумента.Добавить("Взаиморасчеты");
МеханизмыДокумента.Добавить("ОборотныеРегистрыУправленческогоУчета");
МеханизмыДокумента.Добавить("ПланированиеКонтрольДенежныхСредств");
МеханизмыДокумента.Добавить("РасчетыСПодотчетниками");
МеханизмыДокумента.Добавить("РеестрДокументов");
МеханизмыДокумента.Добавить("СуммыДокументовВВалютахУчета");
МеханизмыДокумента.Добавить("УчетДенежныхСредств");
МеханизмыДокумента.Добавить("УчетДоходовРасходов");
МеханизмыДокумента.Добавить("УчетПрочихАктивовПассивов");
МеханизмыДокумента.Добавить("ФинансовыеИнструменты");
МеханизмыДокумента.Добавить("ИсправлениеДокументов");
ПриходныйКассовыйОрдерЛокализация.ЗарегистрироватьУчетныеМеханизмы(МеханизмыДокумента);
КонецПроцедуры
Функция ДанныеДокументаДляПроведения(Документ, Регистры, ДопПараметры = Неопределено) Экспорт
Если ДопПараметры = Неопределено Тогда
ДопПараметры = ПроведениеДокументов.ДопПараметрыИнициализироватьДанныеДокументаДляПроведения();
КонецЕсли;
Если ТипЗнч(Документ) = Тип("ДокументОбъект.ПриходныйКассовыйОрдер") Тогда
ДокументОбъект = Документ;
ДокументСсылка = Документ.Ссылка;
Иначе
ДокументОбъект = Документ.ПолучитьОбъект();
ДокументСсылка = Документ;
КонецЕсли;
Запрос = Новый Запрос;
ТекстыЗапроса = Новый СписокЗначений;
ПолучитьДанныеДокумента(Запрос, ДокументСсылка);
Если Не ДопПараметры.ПолучитьТекстыЗапроса Тогда
ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка);
СформироватьСуммыДокументаВВалютахУчета(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаДенежныеСредстваНаличные(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаДенежныеСредстваБезналичные(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаДенежныеСредстваВПути(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаДенежныеСредстваКВыплате(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаДенежныеСредстваУПодотчетныхЛиц(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаПрочиеДоходы(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаДенежныеСредстваВКассахККМ(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаРасчетыПоФинансовымИнструментам(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаДвиженияДенежныхСредств(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаДвиженияДенежныеСредстваДоходыРасходы(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаДвиженияДенежныеСредстваКонтрагент(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаДвиженияПоПрочимАктивамПассивам(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаПрочиеАктивыПассивы(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаПрочиеРасходы(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаДвиженияКонтрагентКонтрагент(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ТекстЗапросаТаблицаРеестрДокументов(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ПриходныйКассовыйОрдерЛокализация.ДополнитьТекстыЗапросовПроведения(Запрос, ТекстыЗапроса, Регистры);
КонецЕсли;
ДобавитьТекстыОтраженияВзаиморасчетов(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект);
ПроведениеДокументов.ДобавитьЗапросыСторноДвижений(Запрос, ТекстыЗапроса, Регистры, ПустаяСсылка().Метаданные());
Возврат ПроведениеДокументов.ИнициализироватьДанныеДокументаДляПроведения(Запрос, ТекстыЗапроса, ДопПараметры);
КонецФункции
#КонецОбласти
Функция ПараметрыЗаполненияНалогообложенияНДСПродажи(Объект) Экспорт
ПараметрыЗаполнения = УчетНДСУПКлиентСервер.ПараметрыЗаполненияНалогообложенияНДСПродажи();
Если ТипЗнч(Объект) = Тип("ДокументОбъект.ПриходныйКассовыйОрдер")
Или ТипЗнч(Объект) = Тип("ДанныеФормыСтруктура") Тогда
ДанныеОбъекта = Объект;
ИначеЕсли ТипЗнч(Объект) = Тип("ДокументСсылка.ПриходныйКассовыйОрдер") Тогда
ДанныеОбъекта = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Объект, "Организация,Договор,Склад,Дата,НаправлениеДеятельности,ХозяйственнаяОперация");
КонецЕсли;
ПараметрыЗаполнения.Организация = ДанныеОбъекта.Организация;
ПараметрыЗаполнения.Дата = ДанныеОбъекта.Дата;
ПараметрыЗаполнения.Договор = ДанныеОбъекта.Договор;
ПараметрыЗаполнения.НаправлениеДеятельности = ДанныеОбъекта.НаправлениеДеятельности;
ПараметрыЗаполнения.Подразделение = ДанныеОбъекта.Подразделение;
ПараметрыЗаполнения.РеализацияТоваров = Истина;
ПараметрыЗаполнения.РеализацияРаботУслуг = Истина;
Возврат ПараметрыЗаполнения;
КонецФункции
Функция ПараметрыЗаполненияНалогообложенияНДСЗакупки(Объект) Экспорт
ПараметрыЗаполнения = УчетНДСУПКлиентСервер.ПараметрыЗаполненияНалогообложенияНДСЗакупки();
ПараметрыЗаполнения.Контрагент = Объект.Контрагент;
ПараметрыЗаполнения.Договор = Объект.Договор;
ПараметрыЗаполнения.Период = Объект.Дата;
ПараметрыЗаполнения.ПриобретениеТоваров = Истина;
ПараметрыЗаполнения.ПриобретениеРабот = Истина;
ПараметрыЗаполнения.ПриобретениеНаСтатьи = Истина;
Возврат ПараметрыЗаполнения;
КонецФункции
Процедура ПриОпределенииНастроекВерсионированияОбъектов(Настройки) Экспорт
КонецПроцедуры
#Область Прочее
Процедура ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры) Экспорт
БизнесПроцессы.Задание.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
Если ПолучитьФункциональнуюОпцию("ИспользоватьУчетНДС") Тогда
Документы.СчетФактураВыданныйАванс.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
КонецЕсли;
ИсправлениеДокументов.ДобавитьКомандуИсправление(КомандыСозданияНаОсновании, ПустаяСсылка().Метаданные());
КомандаСозданияНаОснованииЗаявка = Документы.ЗаявкаНаРасходованиеДенежныхСредств.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
ХозяйственныеОперацииДляВводаНаОсновании = Новый Массив;
ХозяйственныеОперацииДляВводаНаОсновании.Добавить(Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента);
ХозяйственныеОперацииДляВводаНаОсновании.Добавить(Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации);
Если КомандаСозданияНаОснованииЗаявка <> Неопределено Тогда
ПодключаемыеКоманды.ДобавитьУсловиеВидимостиКоманды(КомандаСозданияНаОснованииЗаявка,
"ХозяйственнаяОперация",
ХозяйственныеОперацииДляВводаНаОсновании,
ВидСравненияКомпоновкиДанных.ВСписке);
КонецЕсли;
КомандаСозданияНаОснованииРКО = Документы.РасходныйКассовыйОрдер.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
Если КомандаСозданияНаОснованииРКО <> Неопределено Тогда
ПодключаемыеКоманды.ДобавитьУсловиеВидимостиКоманды(КомандаСозданияНаОснованииРКО,
"ХозяйственнаяОперация",
ХозяйственныеОперацииДляВводаНаОсновании,
ВидСравненияКомпоновкиДанных.ВСписке);
КонецЕсли;
ПриходныйКассовыйОрдерЛокализация.ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры);
КонецПроцедуры
Функция ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании) Экспорт
Если ПравоДоступа("Добавление", Метаданные.Документы.ПриходныйКассовыйОрдер) Тогда
КомандаСоздатьНаОсновании = КомандыСозданияНаОсновании.Добавить();
КомандаСоздатьНаОсновании.Менеджер = Метаданные.Документы.ПриходныйКассовыйОрдер.ПолноеИмя();
КомандаСоздатьНаОсновании.Представление = ОбщегоНазначенияУТ.ПредставлениеОбъекта(Метаданные.Документы.ПриходныйКассовыйОрдер);
КомандаСоздатьНаОсновании.РежимЗаписи = "Проводить";
Возврат КомандаСоздатьНаОсновании;
КонецЕсли;
Возврат Неопределено;
КонецФункции
Процедура ДобавитьКомандыОтчетов(КомандыОтчетов, Параметры) Экспорт
ПриходныйКассовыйОрдерЛокализация.ДобавитьКомандыОтчетов(КомандыОтчетов, Параметры);
КонецПроцедуры
Функция РеквизитыДокументаДляОбменаСБухгалтерией(ДокументСсылка) Экспорт
Запрос = Новый Запрос("
|ВЫБРАТЬ ПЕРВЫЕ 1
| ДанныеДокумента.СтатьяДвиженияДенежныхСредств.КорреспондирующийСчет КАК КорреспондирующийСчет,
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация
|ИЗ
| Документ.ПриходныйКассовыйОрдер КАК ДанныеДокумента
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
| И ДанныеДокумента.СтатьяДвиженияДенежныхСредств.КорреспондирующийСчет <> """"
|;
|
|ВЫБРАТЬ ПЕРВЫЕ 1
| ДанныеДокумента.СтатьяДоходов.КорреспондирующийСчет КАК КорреспондирующийСчет,
| ДанныеДокумента.СтатьяДоходов КАК СтатьяДоходов
|ИЗ
| Документ.ПриходныйКассовыйОрдер.РасшифровкаПлатежа КАК ДанныеДокумента
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
| И ДанныеДокумента.Ссылка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПрочиеДоходы)
| И ДанныеДокумента.СтатьяДоходов.КорреспондирующийСчет <> """"
|
|УПОРЯДОЧИТЬ ПО
| ДанныеДокумента.НомерСтроки
|");
Запрос.УстановитьПараметр("Ссылка", ДокументСсылка);
МассивРезультатов = Запрос.ВыполнитьПакет();
Выборка = МассивРезультатов[0].Выбрать();
Если Выборка.Следующий() Тогда
КорреспондирующийСчет = Выборка.КорреспондирующийСчет;
ХозяйственнаяОперация = Выборка.ХозяйственнаяОперация;
Иначе
КорреспондирующийСчет = "";
ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПустаяСсылка();
КонецЕсли;
Выборка = МассивРезультатов[1].Выбрать();
Если Выборка.Следующий() Тогда
КорреспондирующийСчет = Выборка.КорреспондирующийСчет;
СтатьяДоходов = Выборка.СтатьяДоходов;
Иначе
СтатьяДоходов = Неопределено;
КонецЕсли;
ВидОперации = "ПрочееПоступление";
Если ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств Тогда
Если СтрНайти(КорреспондирующийСчет, "66") <> 0
ИЛИ СтрНайти(КорреспондирующийСчет, "67") <> 0 Тогда
ВидОперации = "РасчетыПоКредитамИЗаймам";
КонецЕсли;
КонецЕсли;
СтруктураРеквизитов = Новый Структура("ВидОперации, Счет, СтатьяДоходов",
ВидОперации,
КорреспондирующийСчет,
СтатьяДоходов);
Возврат СтруктураРеквизитов;
КонецФункции
Процедура ЗаполнитьИменаРеквизитовПоХозяйственнойОперации(ХозяйственнаяОперация, МассивВсехРеквизитов, МассивРеквизитовОперации) Экспорт
МассивВсехРеквизитов = Новый Массив;
МассивВсехРеквизитов.Добавить("БанковскийСчет");
МассивВсехРеквизитов.Добавить("ВалютаКонвертации");
МассивВсехРеквизитов.Добавить("ВТомЧислеНДС");
МассивВсехРеквизитов.Добавить("КассаККМ");
МассивВсехРеквизитов.Добавить("КассаОтправитель");
МассивВсехРеквизитов.Добавить("Контрагент");
МассивВсехРеквизитов.Добавить("КурсКонвертации");
МассивВсехРеквизитов.Добавить("КратностьКурсаКонвертации");
МассивВсехРеквизитов.Добавить("СуммаКонвертации");
МассивВсехРеквизитов.Добавить("ПодотчетноеЛицо");
МассивВсехРеквизитов.Добавить("РаспоряжениеНаПеремещениеДенежныхСредств");
МассивВсехРеквизитов.Добавить("СтатьяДвиженияДенежныхСредств");
МассивВсехРеквизитов.Добавить("Подразделение");
МассивВсехРеквизитов.Добавить("ГруппаФинансовогоУчета");
МассивВсехРеквизитов.Добавить("НаправлениеДеятельности");
МассивВсехРеквизитов.Добавить("Договор");
МассивВсехРеквизитов.Добавить("НалогообложениеНДС");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.ВалютаВзаиморасчетов");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.ДоговорКредитаДепозита");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.ДоговорЗаймаСотруднику");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.ОбъектРасчетов");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.ОснованиеПлатежа");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.Партнер");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.Подразделение");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.СуммаВзаиморасчетов");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.СтавкаНДС");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.СуммаНДС");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.ТипСуммыКредитаДепозита");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.Организация");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.НаправлениеДеятельности");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.ДоговорАренды");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.ТипПлатежаПоАренде");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.РасчетныйДокументПоАренде");
МассивВсехРеквизитов.Добавить("РасшифровкаПлатежа.ДатаПогашения");
МассивРеквизитовОперации = Новый Массив;
Если ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента Тогда
МассивРеквизитовОперации.Добавить("Контрагент");
МассивРеквизитовОперации.Добавить("ВТомЧислеНДС");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.Партнер");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ОбъектРасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ОснованиеПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СуммаВзаиморасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтавкаНДС");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СуммаНДС");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ВалютаВзаиморасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.Организация");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ДатаПогашения");
МассивРеквизитовОперации.Добавить("Подразделение");
МассивРеквизитовОперации.Добавить("ГруппаФинансовогоУчета");
МассивРеквизитовОперации.Добавить("НаправлениеДеятельности");
МассивРеквизитовОперации.Добавить("Договор");
МассивРеквизитовОперации.Добавить("НалогообложениеНДС");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ Тогда
МассивРеквизитовОперации.Добавить("КассаККМ");
МассивРеквизитовОперации.Добавить("ВТомЧислеНДС");
МассивРеквизитовОперации.Добавить("Подразделение");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика Тогда
МассивРеквизитовОперации.Добавить("Контрагент");
МассивРеквизитовОперации.Добавить("ВТомЧислеНДС");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.Партнер");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ОбъектРасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ОснованиеПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СуммаВзаиморасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтавкаНДС");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СуммаНДС");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ВалютаВзаиморасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.Организация");
МассивРеквизитовОперации.Добавить("Подразделение");
МассивРеквизитовОперации.Добавить("ГруппаФинансовогоУчета");
МассивРеквизитовОперации.Добавить("НаправлениеДеятельности");
МассивРеквизитовОперации.Добавить("Договор");
МассивРеквизитовОперации.Добавить("НалогообложениеНДС");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка Тогда
МассивРеквизитовОперации.Добавить("БанковскийСчет");
МассивРеквизитовОперации.Добавить("РаспоряжениеНаПеремещениеДенежныхСредств");
МассивРеквизитовОперации.Добавить("Подразделение");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка Тогда
МассивРеквизитовОперации.Добавить("БанковскийСчет");
МассивРеквизитовОперации.Добавить("РаспоряжениеНаПеремещениеДенежныхСредств");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПодотчетника Тогда
МассивРеквизитовОперации.Добавить("ПодотчетноеЛицо");
МассивРеквизитовОперации.Добавить("Подразделение");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы Тогда
МассивРеквизитовОперации.Добавить("КассаОтправитель");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации
Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации Тогда
МассивРеквизитовОперации.Добавить("ВТомЧислеНДС");
МассивРеквизитовОперации.Добавить("КассаОтправитель");
МассивРеквизитовОперации.Добавить("Подразделение");
МассивРеквизитовОперации.Добавить("ГруппаФинансовогоУчета");
МассивРеквизитовОперации.Добавить("НаправлениеДеятельности");
МассивРеквизитовОперации.Добавить("Договор");
МассивРеквизитовОперации.Добавить("НалогообложениеНДС");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ОбъектРасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ОснованиеПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СуммаВзаиморасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтавкаНДС");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СуммаНДС");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ВалютаВзаиморасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.Комментарий");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.Организация");
Если ХозяйственнаяОперация <> Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации Тогда
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ДатаПогашения");
КонецЕсли;
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств Тогда
МассивРеквизитовОперации.Добавить("Контрагент");
МассивРеквизитовОперации.Добавить("ВТомЧислеНДС");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.Подразделение");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.НаправлениеДеятельности");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств Тогда
МассивРеквизитовОперации.Добавить("ВТомЧислеНДС");
МассивРеквизитовОперации.Добавить("СтатьяДвиженияДенежныхСредств");
МассивРеквизитовОперации.Добавить("КассаОтправитель");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты Тогда
МассивРеквизитовОперации.Добавить("Подразделение");
МассивРеквизитовОперации.Добавить("Контрагент");
МассивРеквизитовОперации.Добавить("СтатьяДвиженияДенежныхСредств");
МассивРеквизитовОперации.Добавить("ВалютаКонвертации");
МассивРеквизитовОперации.Добавить("КурсКонвертации");
МассивРеквизитовОперации.Добавить("КратностьКурсаКонвертации");
МассивРеквизитовОперации.Добавить("СуммаКонвертации");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам
ИЛИ ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам
ИЛИ ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным Тогда
МассивРеквизитовОперации.Добавить("Контрагент");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.Партнер");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ДоговорКредитаДепозита");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СуммаВзаиморасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ВалютаВзаиморасчетов");
Если ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам
ИЛИ ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным Тогда
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ТипСуммыКредитаДепозита");
КонецЕсли;
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПогашениеЗаймаСотрудником Тогда
МассивРеквизитовОперации.Добавить("ПодотчетноеЛицо");
МассивРеквизитовОперации.Добавить("Подразделение");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ТипСуммыКредитаДепозита");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ДоговорЗаймаСотруднику");
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтАрендодателя Тогда
МассивРеквизитовОперации.Добавить("Контрагент");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.Партнер");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ДоговорАренды");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.СуммаВзаиморасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ВалютаВзаиморасчетов");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.ТипПлатежаПоАренде");
МассивРеквизитовОперации.Добавить("РасшифровкаПлатежа.РасчетныйДокументПоАренде");
КонецЕсли;
КонецПроцедуры
Функция ПараметрыВыбораСтатейИАналитик(ХозяйственнаяОперация) Экспорт
МассивПаметровВыбора = Новый Массив;
#Область СтатьяДоходов
ПараметрыВыбора = ДоходыИРасходыСервер.ПараметрыВыбораСтатьиИАналитики();
ПараметрыВыбора.ПутьКДанным = "Объект.РасшифровкаПлатежа";
ПараметрыВыбора.Статья = "СтатьяДоходов";
ПараметрыВыбора.ТипСтатьи = "ТипСтатьи";
ПараметрыВыбора.ЗначениеПоУмолчанию = ПланыВидовХарактеристик.СтатьиДоходов.ПустаяСсылка();
ПараметрыВыбора.ЭлементыФормы.Статья.Добавить("РасшифровкаБезРазбиенияСтатьяДоходов");
ПараметрыВыбора.ЭлементыФормы.Статья.Добавить("РасшифровкаПлатежаСтатьяДоходов");
ПараметрыВыбора.ДоступностьПоОперации = (ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств);
ВариантыРаспределенияРасходов = Новый Массив();
ВариантыРаспределенияРасходов.Добавить(Перечисления.ВариантыРаспределенияРасходов.НеРаспределять);
ВариантыРаспределенияРасходов.Добавить(Перечисления.ВариантыРаспределенияРасходов.НаНаправленияДеятельности);
ПараметрыВыбора.ОтборСтатейРасходов.ВариантРаспределенияРасходов = ВариантыРаспределенияРасходов;
#Область АналитикаАктивовПассивов
ПараметрыВыбора.ВыборСтатьиАктивовПассивов = Истина;
ПараметрыВыбора.АналитикаАктивовПассивов = "АналитикаАктивовПассивов";
ПараметрыВыбора.ЭлементыФормы.АналитикаАктивовПассивов.Добавить("РасшифровкаБезРазбиенияАналитикаАктивовПассивов");
ПараметрыВыбора.ЭлементыФормы.АналитикаАктивовПассивов.Добавить("РасшифровкаПлатежаАналитикаАктивовПассивов");
#КонецОбласти
#Область АналитикаРасходов
ПараметрыВыбора.ВыборСтатьиРасходов = Истина;
ПараметрыВыбора.АналитикаРасходов = "АналитикаРасходов";
ПараметрыВыбора.ЭлементыФормы.АналитикаРасходов.Добавить("РасшифровкаБезРазбиенияАналитикаРасходов");
ПараметрыВыбора.ЭлементыФормы.АналитикаРасходов.Добавить("РасшифровкаПлатежаАналитикаРасходов");
#КонецОбласти
#Область АналитикаДоходов
ПараметрыВыбора.ВыборСтатьиДоходов = Истина;
ПараметрыВыбора.АналитикаДоходов = "АналитикаДоходов";
ПараметрыВыбора.ЭлементыФормы.АналитикаДоходов.Добавить("РасшифровкаБезРазбиенияАналитикаДоходов");
ПараметрыВыбора.ЭлементыФормы.АналитикаДоходов.Добавить("РасшифровкаПлатежаАналитикаДоходов");
#КонецОбласти
МассивПаметровВыбора.Добавить(ПараметрыВыбора);
#КонецОбласти
Возврат МассивПаметровВыбора;
КонецФункции
Процедура ЗаполнитьНастройкиПолейФормы(Настройки) Экспорт
Финансы = ФинансоваяОтчетностьСервер;
Операции = Перечисления.ХозяйственныеОперации;
#Область Шапка
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ПодотчетноеЛицо");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПодотчетника);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПогашениеЗаймаСотрудником);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ПодотчетноеЛицо");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПогашениеЗаймаСотрудником);
Элемент.Свойства.Вставить("Заголовок", НСтр("ru='Работник'"));
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ПодотчетноеЛицо");
Финансы.НовыйОтбор(Элемент.Условие, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПодотчетника);
Элемент.Свойства.Вставить("Заголовок", НСтр("ru='Подотчетное лицо'"));
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("БанковскийСчет");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзБанка);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ИнкассацияДенежныхСредствИзБанка);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("КассаОтправитель");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойКассы);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВнутренняяПередачаДенежныхСредств);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("КассаККМ");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзКассыККМ);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("НадписьВалюта");
Финансы.НовыйОтбор(Элемент.Условие, "Дополнительно.ИспользоватьНесколькоВалют", Ложь);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("Контрагент");
Элемент.Поля.Добавить("СтраницыПроблемаПроверкаКонтрагентаКонтрагент");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПрочееПоступлениеДенежныхСредств);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.КонвертацияВалюты);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоКредитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоДепозитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоЗаймамВыданным);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтАрендодателя);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("Контрагент");
Финансы.НовыйОтбор(Элемент.Условие, "ХозяйственнаяОперация", Операции.КонвертацияВалюты);
Элемент.Свойства.Вставить("Заголовок", НСтр("ru = 'Брокер'"));
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ВТомЧислеНДС");
Элемент.Поля.Добавить("ВставитьВТомЧислеНДС");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзКассыККМ);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПрочееПоступлениеДенежныхСредств);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВнутренняяПередачаДенежныхСредств);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РаспоряжениеНаПеремещениеДенежныхСредств");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзБанка);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ИнкассацияДенежныхСредствИзБанка);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("СтатьяДвиженияДенежныхСредств");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВнутренняяПередачаДенежныхСредств);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.КонвертацияВалюты);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("Подразделение");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзБанка);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзКассыККМ);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПодотчетника);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.КонвертацияВалюты);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПогашениеЗаймаСотрудником);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ДокументОснование");
Финансы.НовыйОтбор(Элемент.Условие, "ДокументОснование",,, ВидСравненияКомпоновкиДанных.Заполнено);
Элемент.Свойства.Вставить("Видимость");
#КонецОбласти
#Область Реквизиты
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ВалютаКонвертации");
Элемент.Поля.Добавить("КурсКонвертации");
Элемент.Поля.Добавить("СуммаКонвертации");
Элемент.Поля.Добавить("КратностьКурсаКонвертации");
Элемент.Поля.Добавить("ВалютаКурсаКонвертации");
Элемент.Поля.Добавить("ВалютаКратностиКурсаКонвертации");
Финансы.НовыйОтбор(Элемент.Условие, "ХозяйственнаяОперация", Операции.КонвертацияВалюты);
Элемент.Свойства.Вставить("Видимость");
#КонецОбласти
#Область РасшифровкаПлатежа
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("СтраницаРасшифровка");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПодотчетника);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПрочееПоступлениеДенежныхСредств);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоКредитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоДепозитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоЗаймамВыданным);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПогашениеЗаймаСотрудником);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтАрендодателя);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.Подразделение");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияПодразделение");
Элемент.Поля.Добавить("РасшифровкаПлатежа.НаправлениеДеятельности");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияНаправлениеДеятельности");
Финансы.НовыйОтбор(Элемент.Условие, "ХозяйственнаяОперация", Операции.ПрочееПоступлениеДенежныхСредств);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияСтатьяДвиженияДенежныхСредств");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПодотчетника);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПрочееПоступлениеДенежныхСредств);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоКредитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоДепозитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоЗаймамВыданным);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПогашениеЗаймаСотрудником);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтАрендодателя);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.СуммаВзаиморасчетов");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияСуммаВзаиморасчетов");
Элемент.Поля.Добавить("РасшифровкаПлатежа.ВалютаВзаиморасчетов");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияВалютаВзаиморасчетов");
Финансы.НовыйОтбор(Элемент.Условие, "Дополнительно.ИспользоватьНесколькоВалют", Истина);
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоКредитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоДепозитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоЗаймамВыданным);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтАрендодателя);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияСуммаВзаиморасчетов");
Финансы.НовыйОтбор(Элемент.Условие, "Дополнительно.ИспользоватьНесколькоВалют", Истина);
Финансы.НовыйОтбор(Элемент.Условие, "Дополнительно.ВалютаВзаиморасчетов", "Валюта", , , Истина);
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоКредитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоДепозитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоЗаймамВыданным);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтАрендодателя);
Элемент.Свойства.Вставить("ТолькоПросмотр");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ДекорацияВалютыИКурсПлатежа");
Элемент.Поля.Добавить("РасшифровкаПлатежа.КурсЧислительВзаиморасчетов");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияКурсЧислительВзаиморасчетов");
Элемент.Поля.Добавить("РасшифровкаПлатежа.КурсЧислительВзаиморасчетовТекст");
Элемент.Поля.Добавить("РасшифровкаПлатежаКурсЗнаменательВзаиморасчетовНадпись");
Элемент.Поля.Добавить("РасшифровкаПлатежа.ВариантКурсаДоговора");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияВариантКурсаДоговора");
Финансы.НовыйОтбор(Элемент.Условие, "Дополнительно.ИспользоватьНесколькоВалют", Истина);
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоКредитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоДепозитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоЗаймамВыданным);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтАрендодателя);
Финансы.НовыйОтбор(Элемент.Условие, "Валюта", "Дополнительно.ВалютаВзаиморасчетов",, ВидСравненияКомпоновкиДанных.НеРавно, Истина);
ПодгруппаИли = Финансы.НовыйОтбор(Элемент.Условие, , , Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ПодгруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ПодгруппаИли, "Дополнительно.НесколькоВалютВзаиморасчетов", Истина);
Финансы.НовыйОтбор(ПодгруппаИли, "Дополнительно.ВалютаВзаиморасчетов", Справочники.Валюты.ПустаяСсылка(), , ВидСравненияКомпоновкиДанных.НеРавно);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ДекорацияВалютыИКурсПлатежа");
ГруппаИ = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
Финансы.НовыйОтбор(ГруппаИ, "Дополнительно.ВалютаВзаиморасчетов",,, ВидСравненияКомпоновкиДанных.Заполнено);
Финансы.НовыйОтбор(ГруппаИ, "Дополнительно.ВариантКурсаДоговора",,, ВидСравненияКомпоновкиДанных.Заполнено);
Элемент.Свойства.Вставить("Доступность");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияВариантКурсаДоговора");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "Дополнительно.ВариантКурсаДоговора", Перечисления.ВариантыКурсаДоговора.УстановленныйВДоговоре,, ВидСравненияКомпоновкиДанных.Равно);
ГруппаИ = Финансы.НовыйОтбор(ГруппаИли,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
Финансы.НовыйОтбор(ГруппаИ, "Дополнительно.ВариантКурсаДоговора", Перечисления.ВариантыКурсаДоговора.ФиксированныйНаДатуОтгрузки,, ВидСравненияКомпоновкиДанных.Равно);
Финансы.НовыйОтбор(ГруппаИ, "Дополнительно.ТипОбъектаРасчетов", Перечисления.ТипыОбъектовРасчетов.Накладная,, ВидСравненияКомпоновкиДанных.Равно);
Элемент.Свойства.Вставить("Гиперссылка");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.СуммаНДС");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияСуммаНДС");
Элемент.Поля.Добавить("РасшифровкаПлатежа.СтавкаНДС");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияСтавкаНДС");
Элемент.Поля.Добавить("ВалютаНДС");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.ОснованиеПлатежа");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияОснованиеПлатежа");
Элемент.Поля.Добавить("РасшифровкаПлатежа.ОбъектРасчетов");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияОбъектРасчетов");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.Партнер");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияПартнер");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоКредитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоДепозитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоЗаймамВыданным);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтАрендодателя);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.ДоговорКредитаДепозита");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияДоговорКредитаДепозита");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоКредитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоДепозитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоЗаймамВыданным);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.ТипСуммыКредитаДепозита");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияТипСуммыКредитаДепозита");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоДепозитам);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоЗаймамВыданным);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПогашениеЗаймаСотрудником);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.ДоговорЗаймаСотруднику");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияДоговорЗаймаСотруднику");
Финансы.НовыйОтбор(Элемент.Условие, "ХозяйственнаяОперация", Операции.ПогашениеЗаймаСотрудником);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.ДоговорАренды");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияДоговорАренды");
Элемент.Поля.Добавить("РасшифровкаПлатежа.ТипПлатежаПоАренде");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияТипПлатежаПоАренде");
Финансы.НовыйОтбор(Элемент.Условие, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтАрендодателя);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.РасчетныйДокументПоАренде");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияРасчетныйДокументПоАренде");
Финансы.НовыйОтбор(Элемент.Условие, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтАрендодателя);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежа.Организация");
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияОрганизация");
Финансы.НовыйОтбор(Элемент.Условие, "Дополнительно.ЕстьФилиалы", Истина);
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ГиперссылкаРеквизитыОбъектаРасчетов");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ГруппаФинансовогоУчета");
Элемент.Поля.Добавить("НаправлениеДеятельности");
Элемент.Поля.Добавить("ПодразделениеРП");
ГруппаИ = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
Финансы.НовыйОтбор(ГруппаИ, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации,, ВидСравненияКомпоновкиДанных.НеРавно);
Финансы.НовыйОтбор(ГруппаИ, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика,, ВидСравненияКомпоновкиДанных.НеРавно);
Финансы.НовыйОтбор(ГруппаИ, "Дополнительно.СуммаНераспределено", 0,, ВидСравненияКомпоновкиДанных.НеРавно);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ГруппаФинансовогоУчетаВозврата");
Элемент.Поля.Добавить("НаправлениеДеятельностиВозврата");
Элемент.Поля.Добавить("ПодразделениеРПВозврата");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("Договор");
ГруппаИ1 = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ1.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
ГруппаИли = Финансы.НовыйОтбор(ГруппаИ1,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
ГруппаИ2 = Финансы.НовыйОтбор(ГруппаИли,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ2.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
Финансы.НовыйОтбор(ГруппаИ2, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИ2, "Дополнительно.ИспользоватьДоговорыСКлиентами", Истина);
ГруппаИ3 = Финансы.НовыйОтбор(ГруппаИли,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ3.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
Финансы.НовыйОтбор(ГруппаИ3, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИ3, "Дополнительно.ИспользоватьДоговорыМеждуОрганизациями", Истина);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ДоговорВозврата");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
ГруппаИ1 = Финансы.НовыйОтбор(ГруппаИли,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ1.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
Финансы.НовыйОтбор(ГруппаИ1, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИ1, "Дополнительно.ИспользоватьДоговорыМеждуОрганизациями", Истина);
ГруппаИ2 = Финансы.НовыйОтбор(ГруппаИли,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ2.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
Финансы.НовыйОтбор(ГруппаИ2, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИ2, "Дополнительно.ИспользоватьДоговорыСПоставщиками", Истина);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежаДоговор");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
ГруппаИ1 = Финансы.НовыйОтбор(ГруппаИли,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ1.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
Финансы.НовыйОтбор(ГруппаИ1, "Дополнительно.ИспользоватьДоговорыСКлиентами", Истина);
Финансы.НовыйОтбор(ГруппаИ1, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
ГруппаИ2 = Финансы.НовыйОтбор(ГруппаИли,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ2.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
Финансы.НовыйОтбор(ГруппаИ2, "Дополнительно.ИспользоватьДоговорыМеждуОрганизациями", Истина);
ГруппаИли2 = Финансы.НовыйОтбор(ГруппаИ2,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли2.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли2, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли2, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
ГруппаИ3 = Финансы.НовыйОтбор(ГруппаИли,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИ3.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
Финансы.НовыйОтбор(ГруппаИ3, "Дополнительно.ИспользоватьДоговорыСПоставщиками", Истина);
ГруппаИли3 = Финансы.НовыйОтбор(ГруппаИ3,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли3.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли3, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаБезРазбиенияДатаПогашения");
Элемент.Поля.Добавить("РасшифровкаПлатежаДатаПогашения");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Элемент.Свойства.Вставить("Видимость");
#КонецОбласти
#Область Команды
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ЗаполнитьРасшифровкуПлатежаПоЗаймамКонтрагенту");
Финансы.НовыйОтбор(Элемент.Условие, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствПоЗаймамВыданным);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("ЗаполнитьРасшифровкуПлатежаПоЗаймамСотруднику");
Финансы.НовыйОтбор(Элемент.Условие, "ХозяйственнаяОперация", Операции.ПогашениеЗаймаСотрудником);
Элемент.Свойства.Вставить("Видимость");
Элемент = Настройки.Добавить();
Элемент.Поля.Добавить("РасшифровкаПлатежаПодборПоОстаткам");
ГруппаИли = Финансы.НовыйОтбор(Элемент.Условие,,, Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаИли.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеОплатыОтКлиента);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтПоставщика);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ПоступлениеДенежныхСредствИзДругойОрганизации);
Финансы.НовыйОтбор(ГруппаИли, "ХозяйственнаяОперация", Операции.ВозвратДенежныхСредствОтДругойОрганизации);
Элемент.Свойства.Вставить("Видимость");
#КонецОбласти
КонецПроцедуры
Функция ПараметрыВзаиморасчеты(ДанныеЗаполнения = Неопределено) Экспорт
Если ОбщегоНазначения.ЗначениеСсылочногоТипа(ДанныеЗаполнения) Тогда
СтруктураДанныеЗаполнения = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(
ДанныеЗаполнения,
"ХозяйственнаяОперация");
ХозяйственнаяОперация = СтруктураДанныеЗаполнения.ХозяйственнаяОперация;
ИначеЕсли ДанныеЗаполнения = Неопределено Тогда
ХозяйственнаяОперация = Неопределено;
Иначе
ХозяйственнаяОперация = ДанныеЗаполнения.ХозяйственнаяОперация;
КонецЕсли;
МассивСтруктур = Новый Массив();
#Область ВсеОстальныеФункции
СтруктураПараметров = ВзаиморасчетыСервер.ПараметрыМеханизма();
Если ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации Тогда
СтруктураПараметров.ТипРасчетов = Перечисления.ТипыРасчетовСПартнерами.РасчетыСКлиентом;
ИначеЕсли ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика
Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации Тогда
СтруктураПараметров.ТипРасчетов = Перечисления.ТипыРасчетовСПартнерами.РасчетыСПоставщиком;
КонецЕсли;
СтруктураПараметров.ИзменяетПланОплаты =
ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации
Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика
Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации;
СтруктураПараметров.ИзменяетРасчетыСтрокой =
"ИсточникДанных.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента)
| ИЛИ ИсточникДанных.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации)
| ИЛИ
|//Условие возврата начало
| ИсточникДанных.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика)
| ИЛИ ИсточникДанных.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации)
|//Условие возврата окончание";
СтруктураПараметров.ИзменяетПланОтгрузкиПоставки = Ложь;
Если ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации
Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации Тогда
СтруктураПараметров.Контрагент = "Объект.КассаОтправитель.Владелец";
СтруктураПараметров.Партнер = Справочники.Партнеры.НашеПредприятие;
Иначе
СтруктураПараметров.Контрагент = "Объект.Контрагент";
СтруктураПараметров.Партнер = "Объект.РасшифровкаПлатежа.Партнер";
КонецЕсли;
СтруктураПараметров.ВалютаВзаиморасчетов = "Объект.РасшифровкаПлатежа.ВалютаВзаиморасчетов";
СтруктураПараметров.КурсЧислитель = "";
СтруктураПараметров.КурсЗнаменатель = "";
СтруктураПараметров.ПорядокРасчетов = "";
СтруктураПараметров.ФормаОплаты = "";
СтруктураПараметров.ОплатаВВалюте = "";
СтруктураПараметров.ПутьКДаннымТЧРасшифровкаПлатежа = "Объект.РасшифровкаПлатежа";
СтруктураПараметров.Организация = "Объект.Организация";
СтруктураПараметров.Соглашение = "";
СтруктураПараметров.Договор = "Объект.Договор";
СтруктураПараметров.БанковскийСчетОрганизации = "";
СтруктураПараметров.БанковскийСчетКонтрагента = "";
СтруктураПараметров.Касса = "Объект.Касса";
СтруктураПараметров.Дата = "Объект.Дата";
СтруктураПараметров.ИдентификаторПлатежа = "";
СтруктураПараметров.Менеджер = "";
СтруктураПараметров.НомерВходящегоДокумента = "";
СтруктураПараметров.ДатаВходящегоДокумента = "";
СтруктураПараметров.НалогообложениеНДС = "Объект.НалогообложениеНДС";
СтруктураПараметров.ЭлементыФормы.РасшифровкаПлатежа = "РасшифровкаПлатежа";
СтруктураПараметров.ЭлементыФормы.ПодборВРасшифровкуПлатежа = "РасшифровкаПлатежаПодборПоОстаткам";
СтруктураПараметров.ПодборДебиторскойЗадолженности = Истина;
СтруктураПараметров.ПодборТолькоБезусловнойЗадолженности =
ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика
Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации;
МассивСтруктур.Добавить(СтруктураПараметров);
#КонецОбласти
#Область ОбъектРасчетовВозврат
Если ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика
Или ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации Тогда
СтруктураПараметров = ВзаиморасчетыСервер.ПараметрыМеханизма();
СтруктураПараметров.ТипРасчетов = Перечисления.ТипыРасчетовСПартнерами.РасчетыСПоставщиком;
СтруктураПараметров.ОбъектРасчетов = "Объект.ОбъектРасчетов";
СтруктураПараметров.ИзменяетПланОплаты = ИСТИНА;
СтруктураПараметров.ИзменяетРасчетыСтрокой =
"ИсточникДанных.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента)
| ИЛИ ИсточникДанных.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации)
| ИЛИ
|//Условие возврата начало
| ИсточникДанных.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика)
| ИЛИ ИсточникДанных.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации)
|//Условие возврата окончание";
СтруктураПараметров.ИзменяетПланОтгрузкиПоставки = ЛОЖЬ;
Если ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации Тогда
СтруктураПараметров.Контрагент = "Объект.КассаОтправитель.Владелец";
СтруктураПараметров.Партнер = Справочники.Партнеры.НашеПредприятие;
Иначе
СтруктураПараметров.Контрагент = "Объект.Контрагент";
СтруктураПараметров.Партнер = "Объект.РасшифровкаПлатежа.Партнер";
КонецЕсли;
СтруктураПараметров.ВалютаВзаиморасчетов = "Объект.РасшифровкаПлатежа.ВалютаВзаиморасчетов";
СтруктураПараметров.КурсЧислитель = "";
СтруктураПараметров.КурсЗнаменатель = "";
СтруктураПараметров.ПорядокРасчетов = "";
СтруктураПараметров.ФормаОплаты = "";
СтруктураПараметров.ОплатаВВалюте = "";
СтруктураПараметров.ПутьКДаннымТЧРасшифровкаПлатежа = "Объект.РасшифровкаПлатежа";
СтруктураПараметров.Организация = "Объект.Организация";
СтруктураПараметров.Соглашение = "";
СтруктураПараметров.Договор = "Объект.Договор";
СтруктураПараметров.БанковскийСчетОрганизации = "";
СтруктураПараметров.БанковскийСчетКонтрагента = "";
СтруктураПараметров.Касса = "Объект.Касса";
СтруктураПараметров.Дата = "Объект.Дата";
СтруктураПараметров.ИдентификаторПлатежа = "";
СтруктураПараметров.Менеджер = "";
СтруктураПараметров.НомерВходящегоДокумента = "";
СтруктураПараметров.ДатаВходящегоДокумента = "";
СтруктураПараметров.НалогообложениеНДС = "Объект.НалогообложениеНДС";
МассивСтруктур.Добавить(СтруктураПараметров);
КонецЕсли;
#КонецОбласти
Возврат МассивСтруктур;
КонецФункции
#КонецОбласти
#Область ДляВызоваИзДругихПодсистем
Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт
Ограничение.Текст =
"РазрешитьЧтение
|ГДЕ
| ( ЗначениеРазрешено(Организация)
| ИЛИ ЗначениеРазрешено(РасшифровкаПлатежа.Организация) И ХозяйственнаяОперация В (
| Значение(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента),
| Значение(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| Значение(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| Значение(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации)
| )
| )И ЗначениеРазрешено(Касса)
| И ЗначениеРазрешено(ХозяйственнаяОперация)
| И ВЫБОР КОГДА ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента) ИЛИ ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика) ТОГДА ЗначениеРазрешено(РасшифровкаПлатежа.Партнер)
| КОГДА ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПодотчетника) ТОГДА ЗначениеРазрешено(ПодотчетноеЛицо)
| КОГДА ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ) ТОГДА ЗначениеРазрешено(КассаККМ)
| ИНАЧЕ ИСТИНА КОНЕЦ
|;
|РазрешитьИзменениеЕслиРазрешеноЧтение
|ГДЕ
| ЗначениеРазрешено(Организация)
| И ЗначениеРазрешено(Касса)
| И ЗначениеРазрешено(ХозяйственнаяОперация)
| И ВЫБОР КОГДА ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента) ИЛИ ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика) ТОГДА ЗначениеРазрешено(РасшифровкаПлатежа.Партнер)
| КОГДА ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПодотчетника) ТОГДА ЗначениеРазрешено(ПодотчетноеЛицо)
| КОГДА ХозяйственнаяОперация = Значение(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ) ТОГДА ЗначениеРазрешено(КассаККМ)
| ИНАЧЕ ИСТИНА КОНЕЦ ";
КонецПроцедуры
#КонецОбласти
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#Область Проведение
Функция ДополнительныеИсточникиДанныхДляДвижений(ИмяРегистра) Экспорт
ИсточникиДанных = Новый Соответствие;
ИсточникиДанных.Вставить("РасшифровкаПлатежа.ОбъектРасчетов");
Возврат ИсточникиДанных;
КонецФункции
Функция АдаптированныйТекстЗапросаДвиженийПоРегистру(ИмяРегистра) Экспорт
Запрос = Новый Запрос();
ТекстыЗапроса = Новый СписокЗначений;
ТекстыЗапросаВременныхТаблиц = Новый Соответствие;
ПереопределениеРасчетаПараметров = Новый Структура;
СинонимТаблицыДокумента = "";
ПолноеИмяДокумента = "Документ.ПриходныйКассовыйОрдер";
Если ИмяРегистра = "ДенежныеСредстваКВыплате" Тогда
ТекстЗапроса = ТекстЗапросаТаблицаДенежныеСредстваКВыплате(Запрос, ТекстыЗапроса, ИмяРегистра);
СинонимТаблицыДокумента = "ДанныеДокумента";
ИначеЕсли ИмяРегистра = "РеестрДокументов" Тогда
ПереопределениеРасчетаПараметров.Вставить("ПартнерИзДокумента", "
| ВЫБОР
| КОГДА
| ДанныеДокумента.ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств))
| ТОГДА
| ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
| ИНАЧЕ
| ДанныеДокумента.Партнер
| КОНЕЦ");
ПереопределениеРасчетаПараметров.Вставить("КонтрагентИзДокумента", "
| ВЫБОР
| КОГДА
| ДанныеДокумента.ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств))
| ТОГДА
| ДанныеДокумента.КассаОтправитель.Владелец
| ИНАЧЕ
| ДанныеДокумента.Контрагент
| КОНЕЦ");
ТекстЗапроса = ТекстЗапросаТаблицаРеестрДокументов(Запрос, ТекстыЗапроса, ИмяРегистра);
СинонимТаблицыДокумента = "ДанныеДокумента";
Иначе
ТекстИсключения = НСтр("ru = 'В документе %ПолноеИмяДокумента% не реализована адаптация текста запроса формирования движений по регистру %ИмяРегистра%.'");
ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ПолноеИмяДокумента%", ПолноеИмяДокумента);
ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ИмяРегистра%", ИмяРегистра);
ВызватьИсключение ТекстИсключения;
КонецЕсли;
Если ИмяРегистра = "РеестрДокументов" Тогда
ТекстЗапроса = ОбновлениеИнформационнойБазыУТ.АдаптироватьЗапросПроведенияПоНезависимомуРегистру(
ТекстЗапроса, ПолноеИмяДокумента, СинонимТаблицыДокумента, Истина, ПереопределениеРасчетаПараметров);
Иначе
ТекстЗапроса = ОбновлениеИнформационнойБазыУТ.АдаптироватьЗапросМеханизмаПроведения(
ТекстЗапроса, ПолноеИмяДокумента, СинонимТаблицыДокумента, ПереопределениеРасчетаПараметров, ТекстыЗапросаВременныхТаблиц);
КонецЕсли;
Результат = ОбновлениеИнформационнойБазыУТ.РезультатАдаптацииЗапроса();
Результат.ЗначенияПараметров = ЗначенияПараметровПроведения();
Результат.ТекстЗапроса = ТекстЗапроса;
Возврат Результат;
КонецФункции
Процедура ЗаполнитьПараметрыИнициализации(Запрос, ДокументСсылка)
Запрос.УстановитьПараметр("Ссылка", ДокументСсылка);
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| ИСТИНА КАК ЕстьПодарочныйСертификат
|ПОМЕСТИТЬ НаличиеВидаОбъектаРасчетовПодарочныйСертификат
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК РасшифровкаПлатежа
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ОбъектыРасчетов КАК ОбъектыРасчетов
| ПО (РасшифровкаПлатежа.ОбъектРасчетов = ОбъектыРасчетов.Ссылка)
|ГДЕ
| ОбъектыРасчетов.Объект ССЫЛКА Справочник.ПодарочныеСертификаты
|;
|
|
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ДанныеДокумента.Номер КАК Номер,
| ДанныеДокумента.Валюта КАК Валюта,
| ДанныеДокумента.ВалютаКонвертации КАК ВалютаКонвертации,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.КассаОтправительВладелец КАК ОрганизацияОтправитель,
| ДанныеДокумента.КассаПодразделение КАК Подразделение,
| ВЫБОР
| КОГДА
| ДанныеДокумента.ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств))
| ТОГДА
| ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
|
| КОГДА
| ЕСТЬNULL(НаличиеВидаПодарочныйСертификат.ЕстьПодарочныйСертификат, ЛОЖЬ)
| ТОГДА
| ЗНАЧЕНИЕ(Справочник.Партнеры.РозничныйПокупатель)
|
| ИНАЧЕ
| ДанныеДокумента.Партнер
| КОНЕЦ КАК Партнер,
|
| ВЫБОР
| КОГДА
| ДанныеДокумента.ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств))
| ТОГДА
| ДанныеДокумента.КассаОтправительВладелец
|
| КОГДА
| ЕСТЬNULL(НаличиеВидаПодарочныйСертификат.ЕстьПодарочныйСертификат, ЛОЖЬ)
| ТОГДА
| ЗНАЧЕНИЕ(Справочник.Контрагенты.РозничныйПокупатель)
|
| ИНАЧЕ
| ДанныеДокумента.Контрагент
| КОНЕЦ КАК Контрагент,
| ВЫБОР
| КОГДА
| ДанныеДокумента.ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств))
| ТОГДА
| ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
| ИНАЧЕ
| ДанныеДокумента.Партнер
| КОНЕЦ КАК ПартнерИзДокумента,
|
| ВЫБОР
| КОГДА
| ДанныеДокумента.ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств))
| ТОГДА
| ДанныеДокумента.КассаОтправительВладелец
| ИНАЧЕ
| ДанныеДокумента.Контрагент
| КОНЕЦ КАК КонтрагентИзДокумента,
|
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| ВЫРАЗИТЬ(ДанныеДокумента.Касса КАК Справочник.Кассы).НаправлениеДеятельности КАК НаправлениеДеятельностиДС,
|
| ДанныеДокумента.ПодотчетноеЛицо КАК ПодотчетноеЛицо,
| ДанныеДокумента.СуммаДокумента КАК СуммаДокумента,
| ДанныеДокумента.Касса КАК Касса,
| ДанныеДокумента.БанковскийСчет КАК БанковскийСчет,
| ДанныеДокумента.Договор КАК Договор,
| ДанныеДокумента.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ДанныеДокумента.Автор КАК Автор,
| ДанныеДокумента.Кассир КАК Кассир,
| ДанныеДокумента.Комментарий КАК Комментарий,
| ДанныеДокумента.ПометкаУдаления КАК ПометкаУдаления,
| ДанныеДокумента.Ссылка КАК Ссылка,
| ДанныеДокумента.Исправление КАК Исправление,
| ДанныеДокумента.СторнируемыйДокумент КАК СторнируемыйДокумент,
| ДанныеДокумента.ИсправляемыйДокумент КАК ИсправляемыйДокумент,
| ДанныеДокумента.Проведен КАК Проведен,
| ЕСТЬNULL(НаличиеВидаПодарочныйСертификат.ЕстьПодарочныйСертификат, ЛОЖЬ) КАК ЕстьПодарочныйСертификат,
| НастройкиХозяйственныхОпераций.Ссылка КАК НастройкаХозяйственнойОперации,
| ДанныеДокумента.ДокументОснование КАК ДокументОснование
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НастройкиХозяйственныхОпераций КАК НастройкиХозяйственныхОпераций
| ПО ДанныеДокумента.ХозяйственнаяОперация = НастройкиХозяйственныхОпераций.ХозяйственнаяОперация
|
| ЛЕВОЕ СОЕДИНЕНИЕ НаличиеВидаОбъектаРасчетовПодарочныйСертификат КАК НаличиеВидаПодарочныйСертификат
| ПО ИСТИНА
|";
Результат = Запрос.Выполнить();
Реквизиты = Результат.Выбрать();
Реквизиты.Следующий();
Для Каждого Колонка Из Результат.Колонки Цикл
Запрос.УстановитьПараметр(Колонка.Имя, Реквизиты[Колонка.Имя]);
КонецЦикла;
Для каждого КлючИЗначение Из ЗначенияПараметровПроведения(Реквизиты) Цикл
Запрос.УстановитьПараметр(КлючИЗначение.Ключ, КлючИЗначение.Значение);
КонецЦикла;
РасчетСебестоимостиПрикладныеАлгоритмы.ЗаполнитьПараметрыИнициализации(Запрос, Реквизиты);
КонецПроцедуры
Процедура ПолучитьДанныеДокумента(Запрос, ДокументСсылка)
СписокЗапросов = Новый Массив;
ТекстЗапросаДанныеДокументаШапка(СписокЗапросов);
ТекстЗапросаДанныеДокументаТаблицаРасшифровкаПлатежа(СписокЗапросов);
ТекстЗапроса = СтрСоединить(СписокЗапросов, ОбщегоНазначения.РазделительПакетаЗапросов());
Запрос.Текст = ТекстЗапроса;
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц();
Запрос.УстановитьПараметр("Ссылка", ДокументСсылка);
Запрос.Выполнить();
КонецПроцедуры
Процедура ТекстЗапросаДанныеДокументаШапка(СписокЗапросов)
ТекстЗапросаШапка = "ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Дата,
| ДанныеДокумента.Номер КАК Номер,
| ДанныеДокумента.ПометкаУдаления КАК ПометкаУдаления,
| ДанныеДокумента.Проведен КАК Проведен,
| ДанныеДокумента.Ссылка КАК Ссылка,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Касса КАК Касса,
| ДанныеДокумента.СуммаДокумента КАК СуммаДокумента,
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.ПринятоОт КАК ПринятоОт,
| ДанныеДокумента.Основание КАК Основание,
| ДанныеДокумента.Приложение КАК Приложение,
| ДанныеДокумента.Контрагент КАК Контрагент,
| ДанныеДокумента.ПодотчетноеЛицо КАК ПодотчетноеЛицо,
| ДанныеДокумента.БанковскийСчет КАК БанковскийСчет,
| ДанныеДокумента.Валюта КАК Валюта,
| ДанныеДокумента.Автор КАК Автор,
| ДанныеДокумента.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.РаспоряжениеНаПеремещениеДенежныхСредств КАК РаспоряжениеНаПеремещениеДенежныхСредств,
| ДанныеДокумента.ВТомЧислеНДС КАК ВТомЧислеНДС,
| ДанныеДокумента.ДокументОснование КАК ДокументОснование,
| ДанныеДокумента.КассаККМ КАК КассаККМ,
| ДанныеДокумента.КассаОтправитель КАК КассаОтправитель,
| ДанныеДокумента.Комментарий КАК Комментарий,
| ДанныеДокумента.ВалютаКонвертации КАК ВалютаКонвертации,
| ДанныеДокумента.КурсКонвертации КАК КурсКонвертации,
| ДанныеДокумента.ГлавныйБухгалтер КАК ГлавныйБухгалтер,
| ДанныеДокумента.ДоверенностьВыданная КАК ДоверенностьВыданная,
| ДанныеДокумента.СуммаКонвертации КАК СуммаКонвертации,
| ДанныеДокумента.Подразделение КАК Подразделение,
| ДанныеДокумента.ГруппаФинансовогоУчета КАК ГруппаФинансовогоУчета,
| ДанныеДокумента.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ДанныеДокумента.Договор КАК Договор,
| ДанныеДокумента.Партнер КАК Партнер,
| ДанныеДокумента.КратностьКурсаКонвертации КАК КратностьКурсаКонвертации,
| ДанныеДокумента.ОбъектРасчетов КАК ОбъектРасчетов,
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторДокумента,
| ДанныеДокумента.Исправление КАК Исправление,
| ДанныеДокумента.СторнируемыйДокумент КАК СторнируемыйДокумент,
| ДанныеДокумента.ИсправляемыйДокумент КАК ИсправляемыйДокумент,
| ДанныеДокумента.Кассир КАК Кассир,
| ДанныеДокумента.НалогообложениеНДС КАК НалогообложениеНДС,
| ДанныеДокумента.КассаККМ.Склад КАК КассаККМСклад,
| ДанныеДокумента.Касса.Подразделение КАК КассаПодразделение,
| ДанныеДокумента.КассаОтправитель.Владелец КАК КассаОтправительВладелец,
| ДанныеДокумента.Касса.НаправлениеДеятельности КАК КассаНаправлениеДеятельности,
| ДанныеДокумента.Касса.ВалютаДенежныхСредств КАК КассаВалютаДенежныхСредств,
| ДанныеДокумента.Контрагент.Партнер как КонтрагентПартнер,
| ДанныеДокумента.БанковскийСчет.НаправлениеДеятельности КАК БанковскийСчетНаправлениеДеятельности,
| ДанныеДокумента.КассаОтправитель.НаправлениеДеятельности КАК КассаОтправительНаправлениеДеятельности
|ПОМЕСТИТЬ ДанныеДокументаШапка
|ИЗ
| Документ.ПриходныйКассовыйОрдер КАК ДанныеДокумента
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
|
|ИНДЕКСИРОВАТЬ ПО
| Ссылка";
СписокЗапросов.Добавить(ТекстЗапросаШапка);
КонецПроцедуры
Процедура ТекстЗапросаДанныеДокументаТаблицаРасшифровкаПлатежа(СписокЗапросов)
ТекстЗапроса = "ВЫБРАТЬ
| ТаблицаРасшифровкаПлатежа.НомерСтроки КАК НомерСтроки,
| ТаблицаРасшифровкаПлатежа.Ссылка КАК Ссылка,
| ТаблицаРасшифровкаПлатежа.Партнер КАК Партнер,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.ОснованиеПлатежа КАК ОснованиеПлатежа,
| ТаблицаРасшифровкаПлатежа.Сумма КАК Сумма,
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК СтатьяДоходов,
| ТаблицаРасшифровкаПлатежа.АналитикаДоходов КАК АналитикаДоходов,
| ТаблицаРасшифровкаПлатежа.АналитикаРасходов КАК АналитикаРасходов,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК Подразделение,
| ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита КАК ДоговорКредитаДепозита,
| ТаблицаРасшифровкаПлатежа.ИдентификаторСтроки КАК ИдентификаторСтроки,
| ТаблицаРасшифровкаПлатежа.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
| ТаблицаРасшифровкаПлатежа.ДоговорЗаймаСотруднику КАК ДоговорЗаймаСотруднику,
| ТаблицаРасшифровкаПлатежа.ТипСуммыКредитаДепозита КАК ТипСуммыКредитаДепозита,
| ТаблицаРасшифровкаПлатежа.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.СтавкаНДС КАК СтавкаНДС,
| ТаблицаРасшифровкаПлатежа.СуммаНДС КАК СуммаНДС,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
| ТаблицаРасшифровкаПлатежа.НастройкаСчетовУчета КАК НастройкаСчетовУчета,
| ТаблицаРасшифровкаПлатежа.ДоговорАренды КАК ДоговорАренды,
| ТаблицаРасшифровкаПлатежа.ТипПлатежаПоАренде КАК ТипПлатежаПоАренде,
| ТаблицаРасшифровкаПлатежа.РасчетныйДокументПоАренде КАК РасчетныйДокументПоАренде,
| ТаблицаРасшифровкаПлатежа.КурсЧислительВзаиморасчетов КАК КурсЧислительВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.КурсЗнаменательВзаиморасчетов КАК КурсЗнаменательВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.ДатаПогашения КАК ДатаПогашения,
| ТаблицаРасшифровкаПлатежа.Организация.ГоловнаяОрганизация КАК ОрганизацияГоловнаяОрганизация,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.Договор КАК ОбъектРасчетовДоговор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.НаправлениеДеятельности КАК ОбъектРасчетовНаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.Организация КАК ОбъектРасчетовОрганизация,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.Партнер КАК ОбъектРасчетовПартнер,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.Подразделение КАК ОбъектРасчетовПодразделение,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.НалогообложениеНДС КАК ОбъектРасчетовНалогообложениеНДС,
| ВЫБОР КОГДА ТаблицаРасшифровкаПлатежа.Ссылка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации)
| ТОГДА
| ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
| ИНАЧЕ
| ТаблицаРасшифровкаПлатежа.Партнер
| КОНЕЦ КАК ОбъектРасчетовПлатежаПартнер
|ПОМЕСТИТЬ ДанныеДокументаТаблицаРасшифровкаПлатежа
|ИЗ
| Документ.ПриходныйКассовыйОрдер.РасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
|ГДЕ
| ТаблицаРасшифровкаПлатежа.Ссылка = &Ссылка
|
|ИНДЕКСИРОВАТЬ ПО
| Ссылка";
СписокЗапросов.Добавить(ТекстЗапроса);
КонецПроцедуры
Функция ЗначенияПараметровПроведения(Реквизиты = Неопределено)
Значения = Новый Структура;
Значения.Вставить("ИдентификаторМетаданных", ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Документ.ПриходныйКассовыйОрдер"));
Значения.Вставить("ИспользоватьСчетаНаОплатуКлиентам", ПолучитьФункциональнуюОпцию("ИспользоватьСчетаНаОплатуКлиентам"));
Значения.Вставить("ИспользоватьЗаявкиНаРасходованиеДенежныхСредств", ПолучитьФункциональнуюОпцию("ИспользоватьЗаявкиНаРасходованиеДенежныхСредств"));
Значения.Вставить("ИспользоватьУчетПрочихДоходовРасходов", ПолучитьФункциональнуюОпцию("ИспользоватьУчетПрочихДоходовРасходов"));
Значения.Вставить("КонтролироватьВыдачуПодОтчетВРазрезеЦелей", ПолучитьФункциональнуюОпцию("КонтролироватьВыдачуПодОтчетВРазрезеЦелей"));
Значения.Вставить("ВалютаУправленческогоУчета", Константы.ВалютаУправленческогоУчета.Получить());
Если Реквизиты <> Неопределено Тогда
Значения.Вставить("СтатьяДвиженияДенежныхСредств", СтатьяДвиженияДенежныхСредствДокумента(Реквизиты));
Коэффициенты = РаботаСКурсамивалютУТ.ПолучитьКоэффициентыПересчетаВалюты(
Реквизиты.Валюта,
Неопределено,
Реквизиты.Период,
Реквизиты.Организация);
КоэффициентыКонвертации = РаботаСКурсамивалютУТ.ПолучитьКоэффициентыПересчетаВалюты(
Реквизиты.ВалютаКонвертации,
Неопределено,
Реквизиты.Период,
Реквизиты.Организация);
ВалютаРегламентированногоУчета = ЗначениеНастроекПовтИсп.ВалютаРегламентированногоУчетаОрганизации(Реквизиты.Организация);
КоэффициентПересчетаВВалютуКонвертации = РаботаСКурсамиВалютУТ.ПолучитьКоэффициентПересчетаИзВалютыВВалюту(
Реквизиты.Валюта,
Реквизиты.ВалютаКонвертации,
Реквизиты.Период,
ВалютаРегламентированногоУчета);
Значения.Вставить("КоэффициентПересчетаВВалютуУпр", Коэффициенты.КоэффициентПересчетаВВалютуУпр);
Значения.Вставить("КоэффициентПересчетаВВалютуРегл", Коэффициенты.КоэффициентПересчетаВВалютуРегл);
Значения.Вставить("КоэффициентПересчетаКонвертацииВВалютуУпр", КоэффициентыКонвертации.КоэффициентПересчетаВВалютуУпр);
Значения.Вставить("КоэффициентПересчетаКонвертацииВВалютуРегл", КоэффициентыКонвертации.КоэффициентПересчетаВВалютуРегл);
Значения.Вставить("КоэффициентПересчетаВВалютуКонвертации", КоэффициентПересчетаВВалютуКонвертации);
Значения.Вставить("НомерНаПечать", ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(Реквизиты.Номер));
Значения.Вставить("ВалютаРегламентированногоУчета", ЗначениеНастроекПовтИсп.ВалютаРегламентированногоУчетаОрганизации(Реквизиты.Организация));
Значения.Вставить("Подразделение", ПодразделениеДокумента(Реквизиты));
КонецЕсли;
Возврат Значения;
КонецФункции
Функция ТекстЗапросаТаблицаОбъектовРасчетов(Запрос, ТекстыЗапроса, ДокументОбъект = Неопределено) Экспорт
ИмяРегистра = "ТаблицаОбъектовРасчетов";
ТекстЗапроса = "
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетовОрганизация КАК Организация,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетовДоговор КАК Договор,
| ВЫБОР КОГДА &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации))
| И ЕСТЬNULL(Направления.УчетРасчетовСПоставщиками, ЛОЖЬ)
| ИЛИ НЕ &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации))
| И ЕСТЬNULL(Направления.УчетДоходов, ЛОЖЬ)
| ТОГДА
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетовНаправлениеДеятельности
| ИНАЧЕ
| ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
| КОНЕЦ КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетовПартнер КАК Партнер,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетовПодразделение КАК Подразделение,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетовНалогообложениеНДС КАК НалогообложениеНДС
|
|ПОМЕСТИТЬ ТаблицаОбъектовРасчетов
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НаправленияДеятельности КАК Направления
| ПО ТаблицаРасшифровкаПлатежа.ОбъектРасчетовНаправлениеДеятельности = Направления.Ссылка
|
|ГДЕ
| ТаблицаРасшифровкаПлатежа.Ссылка = &Ссылка
| И НЕ &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным)
| )
|
|ИНДЕКСИРОВАТЬ ПО
| ОбъектРасчетов
|";
Если ДокументОбъект = Неопределено Тогда
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокументаТаблицаРасшифровкаПлатежа", "Документ.ПриходныйКассовыйОрдер.РасшифровкаПлатежа");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ТаблицаРасшифровкаПлатежа.ОбъектРасчетовОрганизация", "ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.Организация");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ТаблицаРасшифровкаПлатежа.ОбъектРасчетовДоговор", "ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.Договор");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ТаблицаРасшифровкаПлатежа.ОбъектРасчетовНаправлениеДеятельности", "ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.НаправлениеДеятельности");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ТаблицаРасшифровкаПлатежа.ОбъектРасчетовПартнер", "ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.Партнер");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ТаблицаРасшифровкаПлатежа.ОбъектРасчетовПодразделение", "ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.Подразделение");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ТаблицаРасшифровкаПлатежа.ОбъектРасчетовНалогообложениеНДС", "ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.НалогообложениеНДС");
КонецЕсли;
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Процедура ИнициализироватьКлючиАналитикиУчетаПоПартнерам(Запрос, ДокументОбъект = Неопределено)
Если Запрос.Параметры.Свойство("КлючиАналитикиУчетаПартнеровИнициализированы") Тогда
Возврат;
КонецЕсли;
Запрос.Текст = "
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
|
| ВЫБОР КОГДА ТаблицаРасшифровкаПлатежа.ОрганизацияГоловнаяОрганизация = &Организация ТОГДА
| ТаблицаРасшифровкаПлатежа.Организация
| ИНАЧЕ
| &Организация
| КОНЕЦ КАК Организация,
|
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетовДоговор КАК Договор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетовНаправлениеДеятельности КАК НаправлениеДеятельности
|
|ПОМЕСТИТЬ ВтТаблицаОбъектовРасчетов
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
|
|ГДЕ
| ТаблицаРасшифровкаПлатежа.Ссылка = &Ссылка
| И НЕ &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным)
| )
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
| &Организация КАК Организация,
| ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка) КАК Договор,
| ДанныеДоговора.НаправлениеДеятельности КАК НаправлениеДеятельности
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДоговорыКредитовИДепозитов КАК ДанныеДоговора
| ПО ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита = ДанныеДоговора.Ссылка
|
|ГДЕ
| ТаблицаРасшифровкаПлатежа.Ссылка = &Ссылка
| И &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным)
| )
|
|
|ИНДЕКСИРОВАТЬ ПО
| ОбъектРасчетов
|;
|
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ТаблицаОбъектовРасчетов.Организация КАК Организация,
| &Контрагент КАК Контрагент,
| ВЫБОР КОГДА ТИПЗНАЧЕНИЯ(&Контрагент) = ТИП(Справочник.Организации)
| ТОГДА ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
| ИНАЧЕ ТаблицаРасшифровкаПлатежа.Партнер
| КОНЕЦ КАК Партнер,
| ТаблицаОбъектовРасчетов.Договор КАК Договор,
| ТаблицаОбъектовРасчетов.НаправлениеДеятельности КАК НаправлениеДеятельности
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтТаблицаОбъектовРасчетов КАК ТаблицаОбъектовРасчетов
| ПО ТаблицаРасшифровкаПлатежа.ОбъектРасчетов = ТаблицаОбъектовРасчетов.ОбъектРасчетов
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| РегистрСведений.АналитикаУчетаПоПартнерам КАК Аналитика
| ПО
| ТаблицаОбъектовРасчетов.Организация = Аналитика.Организация
| И &Контрагент = Аналитика.Контрагент
| И ВЫБОР КОГДА ТИПЗНАЧЕНИЯ(&Контрагент) = ТИП(Справочник.Организации)
| ТОГДА ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
| ИНАЧЕ ТаблицаРасшифровкаПлатежа.Партнер
| КОНЕЦ = Аналитика.Партнер
| И ТаблицаОбъектовРасчетов.Договор = Аналитика.Договор
| И ТаблицаОбъектовРасчетов.НаправлениеДеятельности = Аналитика.НаправлениеДеятельности
|ГДЕ
| ТаблицаРасшифровкаПлатежа.Ссылка = &Ссылка
| И Аналитика.КлючАналитики ЕСТЬ NULL
| И &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации)
| )
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ТаблицаПлатеж.Организация КАК Организация,
| &Контрагент КАК Контрагент,
| &Партнер КАК Партнер,
| &Договор КАК Договор,
| &НаправлениеДеятельности КАК НаправлениеДеятельности
|ИЗ
| ДанныеДокументаШапка КАК ТаблицаПлатеж
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| РегистрСведений.АналитикаУчетаПоПартнерам КАК Аналитика
| ПО
| ТаблицаПлатеж.Организация= Аналитика.Организация
| И &Контрагент = Аналитика.Контрагент
| И &Партнер = Аналитика.Партнер
| И &Договор = Аналитика.Договор
| И &НаправлениеДеятельности = Аналитика.НаправлениеДеятельности
|ГДЕ
| ТаблицаПлатеж.Ссылка = &Ссылка
| И Аналитика.КлючАналитики ЕСТЬ NULL
| И &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации)
| )
|";
Если ДокументОбъект = Неопределено Тогда
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ДанныеДокументаТаблицаРасшифровкаПлатежа", "Документ.ПриходныйКассовыйОрдер.РасшифровкаПлатежа");
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ДанныеДокументаШапка", "Документ.ПриходныйКассовыйОрдер");
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ТаблицаРасшифровкаПлатежа.ОрганизацияГоловнаяОрганизация", "ТаблицаРасшифровкаПлатежа.Организация.ГоловнаяОрганизация");
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ТаблицаРасшифровкаПлатежа.ОбъектРасчетовДоговор", "ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.Договор");
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ТаблицаРасшифровкаПлатежа.ОбъектРасчетовНаправлениеДеятельности", "ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.НаправлениеДеятельности");
КонецЕсли;
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
РегистрыСведений.АналитикаУчетаПоПартнерам.СоздатьКлючАналитики(Выборка);
КонецЦикла;
ИнициализироватьАналитикуУчетаПоПартнерамОбъектаРасчетов(Запрос);
Запрос.УстановитьПараметр("КлючиАналитикиУчетаПартнеровИнициализированы", Истина);
КонецПроцедуры
Процедура ИнициализироватьАналитикуУчетаПоПартнерамОбъектаРасчетов(Запрос)
Если ВзаиморасчетыСервер.ХозяйственнаяОперацияВозвратДенежныхСредств(Запрос.Параметры.ХозяйственнаяОперация) Тогда
СтруктураАналитики = Новый Структура("Организация, Контрагент, Партнер, Договор, НаправлениеДеятельности");
ЗаполнитьЗначенияСвойств(СтруктураАналитики, Запрос.Параметры);
Если НЕ ЗначениеЗаполнено(Запрос.Параметры.Договор) Тогда
ЭтоИнтеркампани = Запрос.Параметры.ХозяйственнаяОперация = ПредопределенноеЗначение("Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации");
СтруктураАналитики.Договор = ?(ЭтоИнтеркампани, Справочники.ДоговорыМеждуОрганизациями.ПустаяСсылка(), Справочники.ДоговорыКонтрагентов.ПустаяСсылка());
КонецЕсли;
АналитикаУчетаПоПартнерамОбъектаРасчетов = РегистрыСведений.АналитикаУчетаПоПартнерам.ЗначениеКлючаАналитики(СтруктураАналитики);
Иначе
АналитикаУчетаПоПартнерамОбъектаРасчетов = Неопределено;
КонецЕсли;
Запрос.УстановитьПараметр("АналитикаУчетаПоПартнерамОбъектаРасчетов", АналитикаУчетаПоПартнерамОбъектаРасчетов);
КонецПроцедуры
Функция ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект = Неопределено) Экспорт
ИмяРегистра = "ТаблицаРасшифровкаПлатежа";
ИнициализироватьКлючиАналитикиУчетаПоПартнерам(Запрос, ДокументОбъект);
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаОбъектовРасчетов", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаОбъектовРасчетов(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса = "
|ВЫБРАТЬ
| ТаблицаРасшифровкаПлатежа.НомерСтроки КАК НомерСтроки,
| Аналитика.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
| ЕСТЬNULL(ТаблицаОбъектовРасчетов.Договор, Неопределено) КАК Договор,
| ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.ОснованиеПлатежа КАК Документ.СчетНаОплатуКлиенту) КАК СчетНаОплату,
|
| ВЫБОР
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств)
| ТОГДА ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности
| ИНАЧЕ ТаблицаОбъектовРасчетов.НаправлениеДеятельности
| КОНЕЦ КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК СтатьяДоходов,
| ТаблицаРасшифровкаПлатежа.АналитикаДоходов КАК АналитикаДоходов,
| ТаблицаРасшифровкаПлатежа.АналитикаРасходов КАК АналитикаРасходов,
| ТаблицаРасшифровкаПлатежа.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК Подразделение,
| ЕСТЬNULL(ТаблицаОбъектовРасчетов.Подразделение, ЗНАЧЕНИЕ(Справочник.СтруктураПредприятия.ПустаяСсылка)) КАК ПодразделениеЗаказа,
|
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| НЕОПРЕДЕЛЕНО КАК ДоговорКредитаДепозита,
| НЕОПРЕДЕЛЕНО КАК ТипСуммыКредитаДепозита,
| НЕОПРЕДЕЛЕНО КАК ДоговорАренды,
| НЕОПРЕДЕЛЕНО КАК ТипПлатежаПоАренде,
| НЕОПРЕДЕЛЕНО КАК РасчетныйДокументПоАренде,
|
| ТаблицаРасшифровкаПлатежа.Сумма КАК Сумма,
| ВЫБОР
| КОГДА &Валюта = &ВалютаУправленческогоУчета
| ТОГДА ТаблицаРасшифровкаПлатежа.Сумма
| КОГДА ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
| ТОГДА ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов
| ИНАЧЕ ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2))
| КОНЕЦ КАК СуммаУпр,
| ВЫБОР
| КОГДА &Валюта = &ВалютаРегламентированногоУчета
| ТОГДА ТаблицаРасшифровкаПлатежа.Сумма
| КОГДА ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
| ТОГДА ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов
| ИНАЧЕ ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2))
| КОНЕЦ КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов,
|
| ТаблицаРасшифровкаПлатежа.СтавкаНДС КАК СтавкаНДС,
| ТаблицаРасшифровкаПлатежа.СуммаНДС КАК СуммаНДС,
| ВЫБОР КОГДА &Валюта = &ВалютаУправленческогоУчета
| ТОГДА ТаблицаРасшифровкаПлатежа.СуммаНДС
| ИНАЧЕ ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.СуммаНДС * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2))
| КОНЕЦ КАК СуммаНДСУпр,
| ВЫБОР КОГДА &Валюта = &ВалютаРегламентированногоУчета
| ТОГДА ТаблицаРасшифровкаПлатежа.СуммаНДС
| ИНАЧЕ ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.СуммаНДС * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2))
| КОНЕЦ КАК СуммаНДСРегл,
|
| ЕСТЬNULL(ТаблицаОбъектовРасчетов.НалогообложениеНДС, ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПустаяСсылка)) КАК НалогообложениеНДС,
| ЕСТЬNULL(Аналитика.КлючАналитики, Неопределено) КАК АналитикаУчетаПоПартнерам,
|
| ТаблицаРасшифровкаПлатежа.ИдентификаторСтроки КАК ИдентификаторСтроки,
| ДокументПКО.ИдентификаторДокумента КАК ИдентификаторДокумента
|
|ПОМЕСТИТЬ ТаблицаРасшифровкаПлатежа
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаОбъектовРасчетов КАК ТаблицаОбъектовРасчетов
| ПО
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов = ТаблицаОбъектовРасчетов.ОбъектРасчетов
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| Документ.ПриходныйКассовыйОрдер КАК ДокументПКО
| ПО
| ТаблицаРасшифровкаПлатежа.Ссылка = ДокументПКО.Ссылка
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| РегистрСведений.АналитикаУчетаПоПартнерам КАК Аналитика
| ПО
| ТаблицаОбъектовРасчетов.Организация = Аналитика.Организация
| И &Контрагент = Аналитика.Контрагент
| И ВЫБОР КОГДА ТИПЗНАЧЕНИЯ(&Контрагент) = ТИП(Справочник.Организации)
| ТОГДА ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
| КОГДА &ЕстьПодарочныйСертификат = ИСТИНА
| ТОГДА &Партнер
| ИНАЧЕ ТаблицаРасшифровкаПлатежа.Партнер
| КОНЕЦ = Аналитика.Партнер
| И ТаблицаОбъектовРасчетов.Договор = Аналитика.Договор
| И ТаблицаОбъектовРасчетов.НаправлениеДеятельности = Аналитика.НаправлениеДеятельности
|ГДЕ
| ТаблицаРасшифровкаПлатежа.Ссылка = &Ссылка
| И НЕ &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтАрендодателя)
| )
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ТаблицаРасшифровкаПлатежа.НомерСтроки КАК НомерСтроки,
| Аналитика.Организация КАК Организация,
| НЕОПРЕДЕЛЕНО КАК ОбъектРасчетов,
| НЕОПРЕДЕЛЕНО КАК Договор,
| НЕОПРЕДЕЛЕНО КАК СчетНаОплату,
|
| ДанныеДоговора.НаправлениеДеятельности КАК НаправлениеДеятельности,
| НЕОПРЕДЕЛЕНО КАК СтатьяДоходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаДоходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаРасходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаАктивовПассивов,
| ДанныеДоговора.Подразделение КАК Подразделение,
| НЕОПРЕДЕЛЕНО КАК ПодразделениеЗаказа,
|
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита КАК ДоговорКредитаДепозита,
| ТаблицаРасшифровкаПлатежа.ТипСуммыКредитаДепозита КАК ТипСуммыКредитаДепозита,
| НЕОПРЕДЕЛЕНО КАК ДоговорАренды,
| НЕОПРЕДЕЛЕНО КАК ТипПлатежаПоАренде,
| НЕОПРЕДЕЛЕНО КАК РасчетныйДокументПоАренде,
|
| ТаблицаРасшифровкаПлатежа.Сумма КАК Сумма,
| ВЫБОР
| КОГДА &Валюта = &ВалютаУправленческогоУчета
| ТОГДА ТаблицаРасшифровкаПлатежа.Сумма
| КОГДА ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов = &ВалютаУправленческогоУчета
| ТОГДА ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов
| ИНАЧЕ ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2))
| КОНЕЦ КАК СуммаУпр,
| ВЫБОР
| КОГДА &Валюта = &ВалютаРегламентированногоУчета
| ТОГДА ТаблицаРасшифровкаПлатежа.Сумма
| КОГДА ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов = &ВалютаРегламентированногоУчета
| ТОГДА ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов
| ИНАЧЕ ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2))
| КОНЕЦ КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов,
|
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС,
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСУпр,
| 0 КАК СуммаНДСРегл,
|
| ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПустаяСсылка) КАК НалогообложениеНДС,
| ЕСТЬNULL(Аналитика.КлючАналитики, НЕОПРЕДЕЛЕНО) КАК АналитикаУчетаПоПартнерам,
|
| ТаблицаРасшифровкаПлатежа.ИдентификаторСтроки КАК ИдентификаторСтроки,
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторДокумента
|
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
|
| ЛЕВОЕ СОЕДИНЕНИЕ ДанныеДокументаШапка КАК ДанныеДокумента
| ПО ТаблицаРасшифровкаПлатежа.Ссылка = ДанныеДокумента.Ссылка
|
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ
| Справочник.ДоговорыКредитовИДепозитов КАК ДанныеДоговора
| ПО
| ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита = ДанныеДоговора.Ссылка
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| РегистрСведений.АналитикаУчетаПоПартнерам КАК Аналитика
| ПО
| &Организация = Аналитика.Организация
| И &Контрагент = Аналитика.Контрагент
| И ВЫБОР
| КОГДА ТаблицаРасшифровкаПлатежа.Партнер <> ЗНАЧЕНИЕ(Справочник.Партнеры.ПустаяСсылка) ТОГДА
| ТаблицаРасшифровкаПлатежа.Партнер
| ИНАЧЕ
| ДанныеДокумента.КонтрагентПартнер
| КОНЕЦ = Аналитика.Партнер
| И ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка) = Аналитика.Договор
| И ДанныеДоговора.НаправлениеДеятельности = Аналитика.НаправлениеДеятельности
|ГДЕ
| ТаблицаРасшифровкаПлатежа.Ссылка = &Ссылка
| И &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным)
| )
|";
Если ДокументОбъект = Неопределено Тогда
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокументаТаблицаРасшифровкаПлатежа", "Документ.ПриходныйКассовыйОрдер.РасшифровкаПлатежа");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокументаШапка", "Документ.ПриходныйКассовыйОрдер");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокумента.КонтрагентПартнер", "ДанныеДокумента.Контрагент.Партнер");
КонецЕсли;
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДенежныеСредстваНаличные(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ДенежныеСредстваНаличные";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса = "";
Если ДокументОбъект.ХозяйственнаяОперация <> Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка
И ДокументОбъект.ХозяйственнаяОперация <> Перечисления.ХозяйственныеОперации.КонвертацияВалюты Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| ТаблицаРасшифровкаПлатежа.НомерСтроки КАК НомерСтроки,
| ДанныеДокумента.Дата КАК Период,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
| ДанныеДокумента.Организация КАК Организация,
|
| ВЫБОР
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы)
| ТОГДА &Подразделение
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств)
| ТОГДА ТаблицаРасшифровкаПлатежа.Подразделение
| КОГДА &ХозяйственнаяОперация В (ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика))
| ТОГДА ТаблицаРасшифровкаПлатежа.ПодразделениеЗаказа
| КОГДА &ХозяйственнаяОперация В (ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным))
| ТОГДА ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита.Подразделение
| КОГДА &ХозяйственнаяОперация В (ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПодотчетника),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПогашениеЗаймаСотрудником))
| ТОГДА ДанныеДокумента.Подразделение
| ИНАЧЕ НЕОПРЕДЕЛЕНО
| КОНЕЦ КАК Подразделение,
|
| ДанныеДокумента.Касса КАК Касса,
|
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
|
| ВЫБОР КОГДА &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПодотчетника),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПогашениеЗаймаСотрудником),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств))
| ТОГДА
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств
| ИНАЧЕ
| &СтатьяДвиженияДенежныхСредств
| КОНЕЦ КАК СтатьяДвиженияДенежныхСредств,
|
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
|
| ВЫБОР КОГДА ДанныеДокумента.ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации))
| ТОГДА
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам
| ИНАЧЕ
| Неопределено
| КОНЕЦ КАК АналитикаУчетаПоПартнерам,
|
| ЕСТЬNULL(ТаблицаРасшифровкаПлатежа.Сумма, ДанныеДокумента.СуммаДокумента) КАК Сумма,
|
| ВЫБОР КОГДА ТаблицаРасшифровкаПлатежа.Сумма ЕСТЬ NULL
| ТОГДА ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2))
| ИНАЧЕ ТаблицаРасшифровкаПлатежа.СуммаРегл
| КОНЕЦ КАК СуммаРегл,
|
| ВЫБОР КОГДА ТаблицаРасшифровкаПлатежа.Сумма ЕСТЬ NULL
| ТОГДА ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2))
| ИНАЧЕ ТаблицаРасшифровкаПлатежа.СуммаУпр
| КОНЕЦ КАК СуммаУпр,
|
| ВЫБОР
| КОГДА ДанныеДокумента.ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КонвертацияВалюты),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств))
| ТОГДА ДанныеДокумента.ИдентификаторДокумента
| ИНАЧЕ
| ТаблицаРасшифровкаПлатежа.ИдентификаторСтроки
| КОНЕЦ КАК ИдентификаторФинЗаписи,
| &НастройкаХозяйственнойОперации КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|";
Если ДокументОбъект.ХозяйственнаяОперация <> Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам
И ДокументОбъект.ХозяйственнаяОперация <> Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам
И ДокументОбъект.ХозяйственнаяОперация
<> Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным Тогда
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита.Подразделение",
"НЕОПРЕДЕЛЕНО");
КонецЕсли;
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| 1 КАК НомерСтроки,
| ДанныеДокумента.Дата КАК Период,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Подразделение КАК Подразделение,
| ДанныеДокумента.Касса КАК Касса,
|
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| НЕОПРЕДЕЛЕНО КАК ОбъектРасчетов,
| НЕОПРЕДЕЛЕНО КАК АналитикаУчетаПоПартнерам,
|
| ДанныеДокумента.СуммаДокумента КАК Сумма,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаРегл,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаУпр,
|
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ПоступлениеДенежныхСредствИзБанка) КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|";
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| 1 КАК НомерСтроки,
| ДанныеДокумента.Дата КАК Период,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Подразделение КАК Подразделение,
| ДанныеДокумента.Касса КАК Касса,
|
| Значение(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствОтКонвертацииВалюты) КАК ХозяйственнаяОперация,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| НЕОПРЕДЕЛЕНО КАК ОбъектРасчетов,
| НЕОПРЕДЕЛЕНО КАК АналитикаУчетаПоПартнерам,
|
| ДанныеДокумента.СуммаДокумента КАК Сумма,
| ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК СуммаРегл,
| ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК СуммаУпр,
|
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| &НастройкаХозяйственнойОперации КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|";
КонецЕсли;
Если ТекстЗапроса = "" Тогда
Возврат "";
КонецЕсли;
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДенежныеСредстваБезналичные(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ДенежныеСредстваБезналичные";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка Тогда
Возврат "";
КонецЕсли;
ТекстЗапроса = "
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Подразделение КАК Подразделение,
| ДанныеДокумента.БанковскийСчет КАК БанковскийСчет,
|
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| Неопределено КАК АналитикаУчетаПоПартнерам,
|
| ДанныеДокумента.СуммаДокумента КАК Сумма,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаРегл,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаУпр,
|
| &Ссылка КАК ПлатежныйДокумент,
|
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ПоступлениеДенежныхСредствИзБанка) КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|";
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаДенежныеСредстваВПути(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ДенежныеСредстваВПути";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты) Тогда
Возврат "";
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаКурсовыхРазниц", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаКурсовыхРазниц(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
МассивТекстовЗапроса = Новый Массив;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| &Период КАК Период,
|
| ДанныеДокумента.Организация КАК Организация,
| ВЫБОР
| КОГДА ТИПЗНАЧЕНИЯ(ДанныеДокумента.КассаОтправитель) = ТИП(Справочник.Кассы) ТОГДА
| ДанныеДокумента.Касса
| ИНАЧЕ
| НЕОПРЕДЕЛЕНО
| КОНЕЦ КАК Получатель,
| ДанныеДокумента.КассаОтправитель КАК Отправитель,
| ЗНАЧЕНИЕ(Перечисление.ВидыПереводовДенежныхСредств.ПеремещениеВДругуюКассу) КАК ВидПереводаДенежныхСредств,
| НЕОПРЕДЕЛЕНО КАК Контрагент,
| ДанныеДокумента.Валюта КАК Валюта,
|
| ДанныеДокумента.СуммаДокумента КАК Сумма,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаУпр,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаРегл,
|
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ПоступлениеДенежныхСредствИзДругойКассы) КАК НастройкаХозяйственнойОперации
|
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| &Период КАК Период,
|
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Касса КАК Получатель,
| ДанныеДокумента.БанковскийСчет КАК Отправитель,
| ЗНАЧЕНИЕ(Перечисление.ВидыПереводовДенежныхСредств.ИнкассацияИзБанка) КАК ВидПереводаДенежныхСредств,
| НЕОПРЕДЕЛЕНО КАК Контрагент,
| ДанныеДокумента.Валюта КАК Валюта,
|
| ДанныеДокумента.СуммаДокумента КАК Сумма,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаУпр,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаРегл,
|
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ИнкассацияДенежныхСредствИзБанка) КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| &Период КАК Период,
|
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Касса КАК Получатель,
| НЕОПРЕДЕЛЕНО КАК Отправитель,
| ВЫБОР КОГДА ДанныеДокумента.ВалютаКонвертации = &ВалютаРегламентированногоУчета
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ВидыПереводовДенежныхСредств.ПриобретениеВалюты)
| ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.ВидыПереводовДенежныхСредств.РеализацияВалюты)
| КОНЕЦ КАК ВидПереводаДенежныхСредств,
| ДанныеДокумента.Контрагент КАК Контрагент,
| ДанныеДокумента.ВалютаКонвертации КАК Валюта,
|
| ДанныеДокумента.СуммаКонвертации КАК Сумма,
| ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК СуммаУпр,
| ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК СуммаРегл,
|
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.КонвертацияВалюты) КАК НастройкаХозяйственнойОперации
|
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты Тогда
ТекстЗапроса = "
|// Положительные курсовые разницы
|ВЫБРАТЬ
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| &Период КАК Период,
|
| &Организация КАК Организация,
| ТаблицаКурсовыхРазниц.Касса КАК Получатель,
| НЕОПРЕДЕЛЕНО КАК Отправитель,
| ВЫБОР КОГДА &ВалютаКонвертации = &ВалютаРегламентированногоУчета
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ВидыПереводовДенежныхСредств.ПриобретениеВалюты)
| ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.ВидыПереводовДенежныхСредств.РеализацияВалюты)
| КОНЕЦ КАК ВидПереводаДенежныхСредств,
| &Контрагент КАК Контрагент,
| &ВалютаКонвертации КАК Валюта,
|
| 0 КАК Сумма,
| -ТаблицаКурсовыхРазниц.СуммаУпр КАК СуммаУпр,
| -ТаблицаКурсовыхРазниц.СуммаРегл КАК СуммаРегл,
|
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| ТаблицаКурсовыхРазниц.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.КурсовыеРазницыДСУбыток) КАК НастройкаХозяйственнойОперации
|
|
|ИЗ
| ТаблицаКурсовыхРазниц КАК ТаблицаКурсовыхРазниц
|
|ГДЕ
| &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КонвертацияВалюты)
| И (ТаблицаКурсовыхРазниц.СуммаУпр < 0 ИЛИ ТаблицаКурсовыхРазниц.СуммаРегл < 0)";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты Тогда
ТекстЗапроса = "
|// Отрицательные курсовые разницы
|ВЫБРАТЬ
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
| &Период КАК Период,
|
| &Организация КАК Организация,
| ТаблицаКурсовыхРазниц.Касса КАК Получатель,
| НЕОПРЕДЕЛЕНО КАК Отправитель,
| ВЫБОР КОГДА &ВалютаКонвертации = &ВалютаРегламентированногоУчета
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ВидыПереводовДенежныхСредств.ПриобретениеВалюты)
| ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.ВидыПереводовДенежныхСредств.РеализацияВалюты)
| КОНЕЦ КАК ВидПереводаДенежныхСредств,
| &Контрагент КАК Контрагент,
| &ВалютаКонвертации КАК Валюта,
|
| 0 КАК Сумма,
| ТаблицаКурсовыхРазниц.СуммаУпр КАК СуммаУпр,
| ТаблицаКурсовыхРазниц.СуммаРегл КАК СуммаРегл,
|
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| ТаблицаКурсовыхРазниц.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.КурсовыеРазницыДСПрибыль) КАК НастройкаХозяйственнойОперации
|
|
|ИЗ
| ТаблицаКурсовыхРазниц КАК ТаблицаКурсовыхРазниц
|
|ГДЕ
| &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КонвертацияВалюты)
| И (ТаблицаКурсовыхРазниц.СуммаУпр > 0 ИЛИ ТаблицаКурсовыхРазниц.СуммаРегл > 0)
|";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если МассивТекстовЗапроса.Количество() = 0 Тогда
Возврат "";
КонецЕсли;
ТекстЗапроса = СтрСоединить(МассивТекстовЗапроса, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДенежныеСредстваКВыплате(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект = Неопределено)
ИмяРегистра = "ДенежныеСредстваКВыплате";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если ДокументОбъект <> Неопределено
И ДокументОбъект.ХозяйственнаяОперация <> Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка Тогда
Возврат "";
КонецЕсли;
ТекстЗапроса = "
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| ДанныеДокумента.РаспоряжениеНаПеремещениеДенежныхСредств КАК ЗаявкаНаРасходованиеДенежныхСредств,
| ДанныеДокумента.БанковскийСчет КАК БанковскийСчетКасса,
| ДанныеДокумента.Организация КАК Получатель,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.СуммаДокумента КАК Сумма,
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
| И &ИспользоватьЗаявкиНаРасходованиеДенежныхСредств
| И ДанныеДокумента.РаспоряжениеНаПеремещениеДенежныхСредств <> ЗНАЧЕНИЕ(Документ.РаспоряжениеНаПеремещениеДенежныхСредств.ПустаяСсылка)
| И ДанныеДокумента.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка)
|";
Если ДокументОбъект = Неопределено Тогда
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокументаШапка", "Документ.ПриходныйКассовыйОрдер");
КонецЕсли;
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДенежныеСредстваВКассахККМ(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ДенежныеСредстваВКассахККМ";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ Тогда
Возврат "";
КонецЕсли;
ТекстЗапроса = "
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.КассаККМ КАК КассаККМ,
| ДанныеДокумента.СуммаДокумента КАК Сумма,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаРегл,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаУпр,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ПоступлениеДенежныхСредствИзКассыККМ) КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|";
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДенежныеСредстваУПодотчетныхЛиц(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ДенежныеСредстваУПодотчетныхЛиц";
Если Не ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПодотчетника Тогда
Возврат "";
Конецесли;
Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса = "
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.ПодотчетноеЛицо КАК ПодотчетноеЛицо,
| ДанныеДокумента.Подразделение КАК Подразделение,
| ДанныеДокумента.КассаВалютаДенежныхСредств КАК Валюта,
|
| ВЫБОР КОГДА &КонтролироватьВыдачуПодОтчетВРазрезеЦелей ТОГДА
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств
| КОНЕЦ КАК ЦельВыдачи,
|
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ЕстьNULL(ТаблицаРасшифровкаПлатежа.Сумма, ДанныеДокумента.СуммаДокумента) КАК Сумма,
| ВЫБОР КОГДА ТаблицаРасшифровкаПлатежа.Сумма ЕСТЬ NULL
| ТОГДА ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2))
| ИНАЧЕ ТаблицаРасшифровкаПлатежа.СуммаРегл
| КОНЕЦ КАК СуммаРегл,
| ВЫБОР КОГДА ТаблицаРасшифровкаПлатежа.Сумма ЕСТЬ NULL
| ТОГДА ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2))
| ИНАЧЕ ТаблицаРасшифровкаПлатежа.СуммаУпр
| КОНЕЦ КАК СуммаУпр,
| ЕстьNULL(ТаблицаРасшифровкаПлатежа.Сумма, ДанныеДокумента.СуммаДокумента) КАК КОтчету,
|
| ТаблицаРасшифровкаПлатежа.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВозвратДенежныхСредствОтПодотчетника) КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
| ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО ИСТИНА
|
|";
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаПрочиеАктивыПассивы(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ПрочиеАктивыПассивы";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
МассивТекстовЗапроса = Новый Массив;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| &Период КАК Период,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| &Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК Подразделение,
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК Статья,
| ВЫБОР
| КОГДА ТаблицаРасшифровкаПлатежа.АналитикаАктивовПассивов = ЗНАЧЕНИЕ(Перечисление.СтатьиБезАналитики.ПустаяСсылка)
| ТОГДА НЕОПРЕДЕЛЕНО
| ИНАЧЕ ТаблицаРасшифровкаПлатежа.АналитикаАктивовПассивов
| КОНЕЦ КАК Аналитика,
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК Сумма
|ИЗ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
|
|ГДЕ
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов ССЫЛКА ПланВидовХарактеристик.СтатьиАктивовПассивов";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПогашениеЗаймаСотрудником Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| &Период КАК Период,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| &Организация КАК Организация,
| НЕОПРЕДЕЛЕНО КАК Подразделение,
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиАктивовПассивов.ЗаймыВыданные) КАК Статья,
| НЕОПРЕДЕЛЕНО КАК Аналитика,
| СУММА(ТаблицаРасшифровкаПлатежа.СуммаУпр) КАК Сумма
|ИЗ
| ТаблицаРасшифровкаПлатежа
|
|СГРУППИРОВАТЬ ПО
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности
|";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств) Тогда
Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтПрочиеРасходы", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаВтПрочиеРасходы(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
МассивТекстовЗапроса.Добавить(РегистрыНакопления.ПрочиеАктивыПассивы.ТекстЗапросаТаблицаПрочиеАктивыПассивы(Ложь));
КонецЕсли;
Если МассивТекстовЗапроса.Количество() = 0 Тогда
Возврат "";
КонецЕсли;
ТекстЗапроса = СтрСоединить(МассивТекстовЗапроса, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДвиженияПоПрочимАктивамПассивам(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ДвиженияПоПрочимАктивамПассивам";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
ВзаимозачетСФилиалами = Ложь;
Если (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика) Тогда
ВзаимозачетСФилиалами = Истина;
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
Если ВзаимозачетСФилиалами И НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтДвиженияКонтрагентКонтрагент", ТекстыЗапроса) Тогда
ТекстЗапросаВременнаяТаблицаДвиженияКонтрагентКонтрагент(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
МассивТекстовЗапроса = Новый Массив;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств Тогда
ТекстЗапросаАктивыПассивы = "
|ВЫБРАТЬ
| &Период КАК Период,
| &Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК Подразделение,
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК Статья,
| ТаблицаРасшифровкаПлатежа.АналитикаАктивовПассивов КАК Аналитика,
| ЗНАЧЕНИЕ(Перечисление.ВидыДвиженийПрочихАктивовПассивов.Кредит) КАК ДебетКредит,
|
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК СуммаУпр,
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК СуммаСНДС,
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК СуммаБезНДС,
|
| ТаблицаРасшифровкаПлатежа.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
| &НастройкаХозяйственнойОперации КАК НастройкаХозяйственнойОперации
|ИЗ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
|ГДЕ
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов ССЫЛКА ПланВидовХарактеристик.СтатьиАктивовПассивов";
МассивТекстовЗапроса.Добавить(ТекстЗапросаАктивыПассивы);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств Тогда
ТекстЗапросаАктивыПассивы = "
|ВЫБРАТЬ
| &Период КАК Период,
| &Организация КАК Организация,
| &Подразделение КАК Подразделение,
| &НаправлениеДеятельности КАК НаправлениеДеятельности,
| ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиАктивовПассивов.РасчетыСФилиалами) КАК Статья,
| &ОрганизацияОтправитель КАК Аналитика,
| ЗНАЧЕНИЕ(Перечисление.ВидыДвиженийПрочихАктивовПассивов.Кредит) КАК ДебетКредит,
|
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаРегл,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаУпр,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаСНДС,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаБезНДС,
|
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| &НастройкаХозяйственнойОперации КАК НастройкаХозяйственнойОперации
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|";
МассивТекстовЗапроса.Добавить(ТекстЗапросаАктивыПассивы);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПогашениеЗаймаСотрудником Тогда
ТекстЗапросаАктивыПассивы = "
|ВЫБРАТЬ
| &Период КАК Период,
| &Организация КАК Организация,
| НЕОПРЕДЕЛЕНО КАК Подразделение,
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиАктивовПассивов.ЗаймыВыданные) КАК Статья,
| &ПодотчетноеЛицо КАК Аналитика,
| ЗНАЧЕНИЕ(Перечисление.ВидыДвиженийПрочихАктивовПассивов.Кредит) КАК ДебетКредит,
|
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК СуммаУпр,
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК СуммаСНДС,
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК СуммаБезНДС,
|
| ТаблицаРасшифровкаПлатежа.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
| &НастройкаХозяйственнойОперации КАК НастройкаХозяйственнойОперации
|ИЗ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
|";
МассивТекстовЗапроса.Добавить(ТекстЗапросаАктивыПассивы);
КонецЕсли;
Если ВзаимозачетСФилиалами Тогда
МассивТекстовЗапроса.Добавить(ПрочиеАктивыПассивыСервер.ТекстЗапросаВзаимозачетСФилиалами());
КонецЕсли;
Если МассивТекстовЗапроса.Количество() = 0 Тогда
Возврат "";
КонецЕсли;
ТекстЗапроса = СтрСоединить(МассивТекстовЗапроса, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Процедура СформироватьСуммыДокументаВВалютахУчета(Запрос, ТекстыЗапроса, Регистры = Неопределено, ДокументОбъект = Неопределено) Экспорт
ТекстЗапросаДанных = "
|ВЫБРАТЬ
| ""ДанныеДокумента"" КАК ИсточникДанных,
| ЛОЖЬ КАК РаспределятьОбщуюСумму,
| ТаблицаДокумента.Ссылка КАК Ссылка,
| ТаблицаДокумента.Дата КАК Дата,
| ТаблицаДокумента.Организация КАК Организация,
| ТаблицаДокумента.Валюта КАК ВалютаДокумента,
| ЕСТЬNULL(Строки.ВалютаВзаиморасчетов, НЕОПРЕДЕЛЕНО) КАК ВалютаВзаиморасчетов,
| НЕОПРЕДЕЛЕНО КАК ПериодБазыНДС,
| ТаблицаДокумента.Дата КАК ДатаКурса,
|
| ЕСТЬNULL(Строки.НомерСтроки, 0) КАК НомерСтроки,
| ЕСТЬNULL(Строки.ИдентификаторСтроки, """") КАК ИдентификаторСтроки,
| ЕСТЬNULL(Строки.Сумма - Строки.СуммаНДС, ТаблицаДокумента.СуммаДокумента) КАК СуммаБезНДС,
| ЕСТЬNULL(Строки.СтавкаНДС, НЕОПРЕДЕЛЕНО) КАК СтавкаНДС,
| ЕСТЬNULL(Строки.СуммаНДС, 0) КАК СуммаНДС,
| ЕСТЬNULL(Строки.СуммаВзаиморасчетов, 0) КАК СуммаВзаиморасчетов,
| 0 КАК СуммаНДСВзаиморасчетов,
| 0 КАК СуммаБезНДСРегл,
| 0 КАК СуммаБезНДСУпр,
|
| ВЫБОР
| КОГДА ЕСТЬNULL(Строки.ОбъектРасчетов, ЗНАЧЕНИЕ(Справочник.ОбъектыРасчетов.ПустаяСсылка)) = ЗНАЧЕНИЕ(Справочник.ОбъектыРасчетов.ПустаяСсылка)
| ТОГДА ЛОЖЬ
| ИНАЧЕ ИСТИНА
| КОНЕЦ КАК ОтражаетсяВРасчетах,
| ЕСТЬNULL(Строки.ОбъектРасчетов, ЗНАЧЕНИЕ(Справочник.ОбъектыРасчетов.ПустаяСсылка)) КАК ОбъектРасчетов,
| ЛОЖЬ КАК ПересчитыватьПоДаннымРасчетов
|ИЗ
| ДанныеДокументаШапка КАК ТаблицаДокумента
| ЛЕВОЕ СОЕДИНЕНИЕ ДанныеДокументаТаблицаРасшифровкаПлатежа КАК Строки
| ПО Строки.Ссылка = ТаблицаДокумента.Ссылка
|
|ГДЕ
| ТаблицаДокумента.Ссылка В (&Ссылка)
|";
Если ДокументОбъект = Неопределено Тогда
ТекстЗапросаДанных = СтрЗаменить(ТекстЗапросаДанных, "ДанныеДокументаШапка", "Документ.ПриходныйКассовыйОрдер");
ТекстЗапросаДанных = СтрЗаменить(ТекстЗапросаДанных, "ДанныеДокументаТаблицаРасшифровкаПлатежа", "Документ.ПриходныйКассовыйОрдер.РасшифровкаПлатежа");
КонецЕсли;
РегистрыСведений.СуммыДокументовВВалютахУчета.СформироватьПоДаннымДокумента(
Запрос, ТекстыЗапроса, Регистры, ТекстЗапросаДанных);
КонецПроцедуры
Функция ТекстЗапросаТаблицаРасчетыПоФинансовымИнструментам(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "РасчетыПоФинансовымИнструментам";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтАрендодателя) Тогда
Возврат "";
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса = "";
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| ТаблицаРасшифровкаПлатежа.НомерСтроки КАК НомерСтроки,
| &Период КАК Период,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам,
| ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита КАК Договор,
| ВЫБОР
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам)
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ТипыСуммГрафикаКредитовИДепозитов.ОсновнойДолг)
| ИНАЧЕ ТаблицаРасшифровкаПлатежа.ТипСуммыКредитаДепозита
| КОНЕЦ КАК ТипСуммы,
| НЕОПРЕДЕЛЕНО КАК РасчетныйДокумент,
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК Валюта,
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК Сумма,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК СуммаУпр,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ВЫБОР
| КОГДА ДанныеДоговора.ХарактерДоговора = ЗНАЧЕНИЕ(Перечисление.ХарактерыДоговоровФинансовыхИнструментов.КредитИлиЗайм)
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ТипыГрафиковФинансовыхИнструментов.Транши)
| ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.ТипыГрафиковФинансовыхИнструментов.Оплаты)
| КОНЕЦ КАК ТипГрафика,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяАналитики,
|
| ТаблицаРасшифровкаПлатежа.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
| ВЫБОР
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам) ТОГДА
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ПоступлениеДенежныхСредствПоКредитам)
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам) ТОГДА
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ПоступлениеДенежныхСредствПоДепозитам)
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным) ТОГДА
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ПоступлениеДенежныхСредствПоЗаймамВыданным)
| КОНЕЦ КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДоговорыКредитовИДепозитов КАК ДанныеДоговора
| ПО ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита = ДанныеДоговора.Ссылка
|
|УПОРЯДОЧИТЬ ПО
| ТаблицаРасшифровкаПлатежа.НомерСтроки
|";
КонецЕсли;
Если ТекстЗапроса = "" Тогда
Возврат "";
КонецЕсли;
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДвиженияДенежныхСредств(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ДвиженияДенежныхСредств";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПодотчетника
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты) Тогда
Возврат "";
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса = "";
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ВЫБОР
| КОГДА &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка))
| ТОГДА ДанныеДокумента.Подразделение
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы)
| ТОГДА &Подразделение
| ИНАЧЕ
| НЕОПРЕДЕЛЕНО
| КОНЕЦ КАК Подразделение,
|
| ВЫБОР
| КОГДА &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка)
| ) ТОГДА ДанныеДокумента.БанковскийСчет
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ)
| ТОГДА ДанныеДокумента.КассаККМ
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы)
| ТОГДА ДанныеДокумента.КассаОтправитель
| КОНЕЦ КАК ДенежныеСредства,
| ВЫБОР
| КОГДА &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка)
| ) ТОГДА ДанныеДокумента.БанковскийСчетНаправлениеДеятельности
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ)
| ТОГДА ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
| ИНАЧЕ
| ДанныеДокумента.КассаОтправительНаправлениеДеятельности
| КОНЕЦ КАК НаправлениеДеятельности,
|
| ВЫБОР
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка)
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ТипыДенежныхСредств.Безналичные)
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ)
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ТипыДенежныхСредств.Наличные)
| ИНАЧЕ
| Значение(Перечисление.ТипыДенежныхСредств.ДенежныеСредстваВПути)
| КОНЕЦ КАК ТипДенежныхСредств,
|
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
|
| ДанныеДокумента.Валюта КАК Валюта,
|
| ДанныеДокумента.Касса КАК КорДенежныеСредства,
| &НаправлениеДеятельностиДС КАК КорНаправлениеДеятельности,
| Значение(Перечисление.ТипыДенежныхСредств.Наличные) КАК КорТипДенежныхСредств,
| ДанныеДокумента.Валюта КАК КорВалюта,
|
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК Сумма,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаРегл,
| ДанныеДокумента.СуммаДокумента КАК СуммаВВалюте,
| ДанныеДокумента.СуммаДокумента КАК СуммаВКорВалюте,
|
| ВЫБОР
| КОГДА &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка)
| ) ТОГДА ДанныеДокумента.БанковскийСчет
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ)
| ТОГДА ДанныеДокумента.КассаККМ
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы)
| И ТИПЗНАЧЕНИЯ(ДанныеДокумента.КассаОтправитель) = ТИП(Справочник.КассыККМ)
| ТОГДА НЕОПРЕДЕЛЕНО
| ИНАЧЕ
| ДанныеДокумента.Касса
| КОНЕЦ КАК ИсточникГФУДенежныхСредств,
| ДанныеДокумента.Касса КАК ИсточникКорГФУДенежныхСредств
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|";
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПодотчетника Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Подразделение КАК Подразделение,
|
| ДанныеДокумента.ПодотчетноеЛицо КАК ДенежныеСредства,
| ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) КАК НаправлениеДеятельности,
| ЗНАЧЕНИЕ(Перечисление.ТипыДенежныхСредств.ДенежныеСредстваУПодотчетногоЛица) КАК ТипДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК Валюта,
|
| ДанныеДокумента.Касса КАК КорДенежныеСредства,
| &НаправлениеДеятельностиДС КАК КорНаправлениеДеятельности,
| Значение(Перечисление.ТипыДенежныхСредств.Наличные) КАК КорТипДенежныхСредств,
| ДанныеДокумента.Валюта КАК КорВалюта,
|
| ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК Сумма,
| ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВВалюте,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВКорВалюте,
|
| НЕОПРЕДЕЛЕНО КАК ИсточникГФУДенежныхСредств,
| ДанныеДокумента.Касса КАК ИсточникКорГФУДенежныхСредств
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|";
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам Тогда
ТекстЗапроса = "
|// Операции поступления по депозитам
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита.Подразделение КАК Подразделение,
|
| ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита КАК ДенежныеСредства,
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельности,
| Значение(Перечисление.ТипыДенежныхСредств.Депозиты) КАК ТипДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК Валюта,
|
| ДанныеДокумента.Касса КАК КорДенежныеСредства,
| &НаправлениеДеятельностиДС КАК КорНаправлениеДеятельности,
| Значение(Перечисление.ТипыДенежныхСредств.Наличные) КАК КорТипДенежныхСредств,
| ДанныеДокумента.Валюта КАК КорВалюта,
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК Сумма,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВВалюте,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВКорВалюте,
|
| ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита КАК ИсточникГФУДенежныхСредств,
| ДанныеДокумента.Касса КАК ИсточникКорГФУДенежныхСредств
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|";
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты Тогда
ТекстЗапроса = "
|// Операции поступления денежных средств от конвертации валюты
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| Значение(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствОтКонвертацииВалюты) КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Подразделение КАК Подразделение,
|
| ДанныеДокумента.Контрагент КАК ДенежныеСредства,
| &НаправлениеДеятельностиДС КАК НаправлениеДеятельности,
| Значение(Перечисление.ТипыДенежныхСредств.ДенежныеСредстваВПути) КАК ТипДенежныхСредств,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.ВалютаКонвертации КАК Валюта,
|
| ДанныеДокумента.Касса КАК КорДенежныеСредства,
| &НаправлениеДеятельностиДС КАК КорНаправлениеДеятельности,
| Значение(Перечисление.ТипыДенежныхСредств.Наличные) КАК КорТипДенежныхСредств,
| ДанныеДокумента.Валюта КАК КорВалюта,
|
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК Сумма,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаРегл,
| ДанныеДокумента.СуммаКонвертации КАК СуммаВВалюте,
| ДанныеДокумента.СуммаДокумента КАК СуммаВКорВалюте,
|
| НЕОПРЕДЕЛЕНО КАК ИсточникГФУДенежныхСредств,
| ДанныеДокумента.Касса КАК ИсточникКорГФУДенежныхСредств
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
|";
КонецЕсли;
Если ТекстЗапроса = "" Тогда
Возврат "";
КонецЕсли;
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДвиженияДенежныеСредстваДоходыРасходы(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ДвиженияДенежныеСредстваДоходыРасходы";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПогашениеЗаймаСотрудником
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты) Тогда
Возврат "";
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаКурсовыхРазниц", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаКурсовыхРазниц(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса = "";
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств Тогда
ТекстЗапроса =
"ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК Подразделение,
| &НаправлениеДеятельностиДС КАК НаправлениеДеятельностиДС,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК ПодразделениеДоходовРасходов,
|
| ДанныеДокумента.Касса КАК ДенежныеСредства,
| Значение(Перечисление.ТипыДенежныхСредств.Наличные) КАК ТипДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК Валюта,
|
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельностиСтатьи,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК СтатьяДоходовРасходов,
| ТаблицаРасшифровкаПлатежа.АналитикаДоходов КАК АналитикаДоходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаРасходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаАктивовПассивов,
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК Сумма,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВВалюте,
|
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСРегл,
| 0 КАК СуммаНДСВВалютеПлатежа,
|
| ДанныеДокумента.Касса КАК ИсточникГФУДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК ИсточникГФУДоходовРасходов,
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|ГДЕ
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов ССЫЛКА ПланВидовХарактеристик.СтатьиДоходов
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК Подразделение,
| &НаправлениеДеятельностиДС,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК ПодразделениеДоходовРасходов,
|
| ДанныеДокумента.Касса КАК ДенежныеСредства,
| Значение(Перечисление.ТипыДенежныхСредств.Наличные) КАК ТипДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК Валюта,
|
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельностиСтатьи,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК СтатьяДоходовРасходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаДоходов,
| ТаблицаРасшифровкаПлатежа.АналитикаРасходов КАК АналитикаРасходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаАктивовПассивов,
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК Сумма,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВВалюте,
|
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСРегл,
| 0 КАК СуммаНДСВВалютеПлатежа,
|
| ДанныеДокумента.Касса КАК ИсточникГФУДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК ИсточникГФУДоходовРасходов,
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|ГДЕ
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов ССЫЛКА ПланВидовХарактеристик.СтатьиРасходов
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК Подразделение,
| &НаправлениеДеятельностиДС,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК ПодразделениеДоходовРасходов,
|
| ДанныеДокумента.Касса КАК ДенежныеСредства,
| Значение(Перечисление.ТипыДенежныхСредств.Наличные) КАК ТипДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК Валюта,
|
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельностиСтатьи,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК СтатьяДоходовРасходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаДоходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаРасходов,
| ТаблицаРасшифровкаПлатежа.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК Сумма,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВВалюте,
|
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСРегл,
| 0 КАК СуммаНДСВВалютеПлатежа,
|
| ДанныеДокумента.Касса КАК ИсточникГФУДенежныхСредств,
| НЕОПРЕДЕЛЕНО КАК ИсточникГФУДоходовРасходов,
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|ГДЕ
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов ССЫЛКА ПланВидовХарактеристик.СтатьиАктивовПассивов";
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПогашениеЗаймаСотрудником Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Подразделение КАК Подразделение,
| &НаправлениеДеятельностиДС КАК НаправлениеДеятельностиДС,
| НЕОПРЕДЕЛЕНО КАК ПодразделениеДоходовРасходов,
|
| ДанныеДокумента.Касса КАК ДенежныеСредства,
| Значение(Перечисление.ТипыДенежныхСредств.Наличные) КАК ТипДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК Валюта,
|
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельностиСтатьи,
| ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиАктивовПассивов.ЗаймыВыданные) КАК СтатьяДоходовРасходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаДоходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаРасходов,
| ТаблицаРасшифровкаПлатежа.АналитикаАктивовПассивов КАК АналитикаАктивовПассивов,
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК Сумма,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВВалюте,
|
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСРегл,
| 0 КАК СуммаНДСВВалютеПлатежа,
|
| ДанныеДокумента.Касса КАК ИсточникГФУДенежныхСредств,
| НЕОПРЕДЕЛЕНО КАК ИсточникГФУДоходовРасходов,
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС
|
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|";
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты Тогда
ТекстЗапроса = "
|// Расчет доходов от курсовых разниц
|ВЫБРАТЬ
| &Период КАК Период,
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КурсовыеРазницыДСПрибыль) КАК ХозяйственнаяОперация,
| &Организация КАК Организация,
| ТаблицаКурсовыхРазниц.Подразделение КАК Подразделение,
| &НаправлениеДеятельностиДС КАК НаправлениеДеятельностиДС,
| ТаблицаКурсовыхРазниц.Подразделение КАК ПодразделениеДоходовРасходов,
|
| &Контрагент КАК ДенежныеСредства,
| Значение(Перечисление.ТипыДенежныхСредств.ДенежныеСредстваВПути) КАК ТипДенежныхСредств,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| &ВалютаКонвертации КАК Валюта,
|
| ТаблицаКурсовыхРазниц.НаправлениеДеятельности КАК НаправлениеДеятельностиСтатьи,
| ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиДоходов.ДоходыПриКонвертацииВалюты) КАК СтатьяДоходовРасходов,
| ЗНАЧЕНИЕ(Перечисление.АналитикаКурсовыхРазниц.ДенежныеСредства) КАК АналитикаДоходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаРасходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаАктивовПассивов,
|
| ТаблицаКурсовыхРазниц.СуммаУпр КАК Сумма,
| ТаблицаКурсовыхРазниц.СуммаРегл КАК СуммаРегл,
| 0 КАК СуммаВВалюте,
|
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСРегл,
| 0 КАК СуммаНДСВВалютеПлатежа,
|
| НЕОПРЕДЕЛЕНО КАК ИсточникГФУДенежныхСредств,
| ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиДоходов.ДоходыПриКонвертацииВалюты) КАК ИсточникГФУДоходовРасходов,
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС
|ИЗ
| ТаблицаКурсовыхРазниц КАК ТаблицаКурсовыхРазниц
|
|ГДЕ
| (ТаблицаКурсовыхРазниц.СуммаУпр > 0 ИЛИ ТаблицаКурсовыхРазниц.СуммаРегл > 0)
|
|ОБЪЕДИНИТЬ ВСЕ
|
|// Расчет расходов от курсовых разниц
|ВЫБРАТЬ
| &Период КАК Период,
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КурсовыеРазницыДСУбыток) КАК ХозяйственнаяОперация,
| &Организация КАК Организация,
| ТаблицаКурсовыхРазниц.Подразделение КАК Подразделение,
| &НаправлениеДеятельностиДС,
| ТаблицаКурсовыхРазниц.Подразделение КАК ПодразделениеДоходовРасходов,
|
| &Контрагент КАК ДенежныеСредства,
| Значение(Перечисление.ТипыДенежныхСредств.ДенежныеСредстваВПути) КАК ТипДенежныхСредств,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| &ВалютаКонвертации КАК Валюта,
|
| ТаблицаКурсовыхРазниц.НаправлениеДеятельности КАК НаправлениеДеятельностиСтатьи,
| ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиРасходов.РасходыПриКонвертацииВалюты) КАК СтатьяДоходовРасходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаДоходов,
| ЗНАЧЕНИЕ(Перечисление.АналитикаКурсовыхРазниц.ДенежныеСредства) КАК АналитикаРасходов,
| НЕОПРЕДЕЛЕНО КАК АналитикаАктивовПассивов,
|
| -ТаблицаКурсовыхРазниц.СуммаУпр КАК Сумма,
| -ТаблицаКурсовыхРазниц.СуммаРегл КАК СуммаРегл,
| 0 КАК СуммаВВалюте,
|
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСРегл,
| 0 КАК СуммаНДСВВалютеПлатежа,
|
| НЕОПРЕДЕЛЕНО КАК ИсточникГФУДенежныхСредств,
| ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиРасходов.РасходыПриКонвертацииВалюты) КАК ИсточникГФУДоходовРасходов,
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС
|
|ИЗ
| ТаблицаКурсовыхРазниц КАК ТаблицаКурсовыхРазниц
|
|ГДЕ
| (ТаблицаКурсовыхРазниц.СуммаУпр < 0 ИЛИ ТаблицаКурсовыхРазниц.СуммаРегл < 0)
|";
КонецЕсли;
Если ТекстЗапроса = "" Тогда
Возврат "";
КонецЕсли;
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДвиженияДенежныеСредстваКонтрагент(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ДвиженияДенежныеСредстваКонтрагент";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
МассивТекстовПодзапроса = Новый Массив;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика Тогда
ТекстЗапросаПодзапроса = "// Операции по поступлению денежных средств
| ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.ПодразделениеЗаказа КАК Подразделение,
|
| ДанныеДокумента.Касса КАК ДенежныеСредства,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК ВалютаПлатежа,
|
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Партнер КАК Партнер,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Контрагент КАК Контрагент,
| ЕСТЬNULL(ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.НаправлениеДеятельности, ДанныеДокумента.НаправлениеДеятельности) КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Договор КАК Договор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК СуммаОплаты,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаОплатыРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаОплатыВВалютеПлатежа,
|
| 0 КАК СуммаПостоплаты,
| 0 КАК СуммаПостоплатыРегл,
| 0 КАК СуммаПостоплатыВВалютеПлатежа,
|
| 0 КАК СуммаПредоплаты,
| 0 КАК СуммаПредоплатыРегл,
| 0 КАК СуммаПредоплатыВВалютеПлатежа,
|
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСРегл,
| 0 КАК СуммаНДСВВалютеПлатежа,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
|
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК СуммаОплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПостоплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПредоплатыВВалютеВзаиморасчетов,
|
| ДанныеДокумента.Касса КАК ИсточникГФУДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ИсточникГФУРасчетов,
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС
| ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|";
МассивТекстовПодзапроса.Добавить(ТекстЗапросаПодзапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации Тогда
ТекстЗапросаПодзапроса = "// Операции по поступлению денежных средств от другой организации
| ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| НЕОПРЕДЕЛЕНО КАК Подразделение,
|
| ДанныеДокумента.Касса КАК ДенежныеСредства,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК ВалютаПлатежа,
|
| ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие) КАК Партнер,
| ДанныеДокумента.КассаОтправительВладелец КАК Контрагент,
| ЕСТЬNULL(ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.НаправлениеДеятельности, ДанныеДокумента.НаправлениеДеятельности) КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.Договор КАК Договор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
|
| ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуУпр КАК СуммаОплаты,
| ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуРегл КАК СуммаОплатыРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаОплатыВВалютеПлатежа,
|
| 0 КАК СуммаПостоплаты,
| 0 КАК СуммаПостоплатыРегл,
| 0 КАК СуммаПостоплатыВВалютеПлатежа,
|
| 0 КАК СуммаПредоплаты,
| 0 КАК СуммаПредоплатыРегл,
| 0 КАК СуммаПредоплатыВВалютеПлатежа,
|
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСРегл,
| 0 КАК СуммаНДСВВалютеПлатежа,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
|
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК СуммаОплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПостоплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПредоплатыВВалютеВзаиморасчетов,
|
| ДанныеДокумента.Касса КАК ИсточникГФУДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ИсточникГФУРасчетов,
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС
| ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|";
МассивТекстовПодзапроса.Добавить(ТекстЗапросаПодзапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств Тогда
ТекстЗапросаПодзапроса = "// Операции внутренней передачи денежных средств
| ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ВЫБОР
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств)
| ТОГДА Значение(Перечисление.ХозяйственныеОперации.ВнутреннееПоступлениеДенежныхСредств)
| ИНАЧЕ &ХозяйственнаяОперация
| КОНЕЦ КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| НЕОПРЕДЕЛЕНО КАК Подразделение,
|
| ДанныеДокумента.Касса КАК ДенежныеСредства,
| &СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК ВалютаПлатежа,
|
| НЕОПРЕДЕЛЕНО КАК Партнер,
| ДанныеДокумента.КассаОтправительВладелец КАК Контрагент,
| ДанныеДокумента.КассаОтправительНаправлениеДеятельности КАК НаправлениеДеятельности,
| НЕОПРЕДЕЛЕНО КАК Договор,
| НЕОПРЕДЕЛЕНО КАК ОбъектРасчетов,
|
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаОплаты,
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаОплатыРегл,
| ДанныеДокумента.СуммаДокумента КАК СуммаОплатыВВалютеПлатежа,
|
| 0 КАК СуммаПостоплаты,
| 0 КАК СуммаПостоплатыРегл,
| 0 КАК СуммаПостоплатыВВалютеПлатежа,
|
| 0 КАК СуммаПредоплаты,
| 0 КАК СуммаПредоплатыРегл,
| 0 КАК СуммаПредоплатыВВалютеПлатежа,
|
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСРегл,
| 0 КАК СуммаНДСВВалютеПлатежа,
|
| ДанныеДокумента.Валюта КАК ВалютаВзаиморасчетов,
|
| ДанныеДокумента.СуммаДокумента КАК СуммаОплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПостоплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПредоплатыВВалютеВзаиморасчетов,
|
| ДанныеДокумента.Касса КАК ИсточникГФУДенежныхСредств,
| НЕОПРЕДЕЛЕНО КАК ИсточникГФУРасчетов,
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС
| ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|";
МассивТекстовПодзапроса.Добавить(ТекстЗапросаПодзапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным Тогда
ТекстЗапросаПодзапроса = "// Операции поступления по кредитам и займам выданным
| ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ВЫБОР
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным)
| И (ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита.СтатьяДДСПоступленияВыдачи = ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств
| ИЛИ ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита.СтатьяДДСОсновногоДолга = ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств)
| ТОГДА Значение(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным)
| КОГДА &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным)
| И (ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита.СтатьяДДСПроцентов = ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств
| ИЛИ ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита.СтатьяДДСКомиссии = ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств)
| ТОГДА Значение(Перечисление.ХозяйственныеОперации.ПоступлениеПроцентовПоЗаймамВыданным)
| ИНАЧЕ &ХозяйственнаяОперация
| КОНЕЦ КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита.Подразделение КАК Подразделение,
|
| ДанныеДокумента.Касса КАК ДенежныеСредства,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК ВалютаПлатежа,
|
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Партнер КАК Партнер,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Контрагент КАК Контрагент,
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита КАК Договор,
| НЕОПРЕДЕЛЕНО КАК ОбъектРасчетов,
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК СуммаОплаты,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаОплатыРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаОплатыВВалютеПлатежа,
|
| 0 КАК СуммаПостоплаты,
| 0 КАК СуммаПостоплатыРегл,
| 0 КАК СуммаПостоплатыВВалютеПлатежа,
|
| 0 КАК СуммаПредоплаты,
| 0 КАК СуммаПредоплатыРегл,
| 0 КАК СуммаПредоплатыВВалютеПлатежа,
|
| 0 КАК СуммаНДС,
| 0 КАК СуммаНДСРегл,
| 0 КАК СуммаНДСВВалютеПлатежа,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
|
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК СуммаОплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПостоплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПредоплатыВВалютеВзаиморасчетов,
|
| ДанныеДокумента.Касса КАК ИсточникГФУДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозита КАК ИсточникГФУРасчетов,
| НЕОПРЕДЕЛЕНО КАК СтавкаНДС
| ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|";
МассивТекстовПодзапроса.Добавить(ТекстЗапросаПодзапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика Тогда
ТекстЗапросаПодзапроса = "ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.ПодразделениеЗаказа КАК Подразделение,
|
| ДанныеДокумента.Касса КАК ДенежныеСредства,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК ВалютаПлатежа,
|
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Партнер КАК Партнер,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Контрагент КАК Контрагент,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Договор КАК Договор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
|
| 0 КАК СуммаОплаты,
| 0 КАК СуммаОплатыРегл,
| 0 КАК СуммаОплатыВВалютеПлатежа,
|
| 0 КАК СуммаПостоплаты,
| 0 КАК СуммаПостоплатыРегл,
| 0 КАК СуммаПостоплатыВВалютеПлатежа,
|
| 0 КАК СуммаПредоплаты,
| 0 КАК СуммаПредоплатыРегл,
| 0 КАК СуммаПредоплатыВВалютеПлатежа,
|
| ТаблицаРасшифровкаПлатежа.СуммаНДСУпр КАК СуммаНДС,
| ТаблицаРасшифровкаПлатежа.СуммаНДСРегл КАК СуммаНДСРегл,
| ТаблицаРасшифровкаПлатежа.СуммаНДС КАК СуммаНДСВВалютеПлатежа,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
|
| 0 КАК СуммаОплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПостоплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПредоплатыВВалютеВзаиморасчетов,
|
| ДанныеДокумента.Касса КАК ИсточникГФУДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ИсточникГФУРасчетов,
| ТаблицаРасшифровкаПлатежа.СтавкаНДС КАК СтавкаНДС
| ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
| ГДЕ
| ТаблицаРасшифровкаПлатежа.СуммаНДС <> 0";
МассивТекстовПодзапроса.Добавить(ТекстЗапросаПодзапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации Тогда
ТекстЗапросаПодзапроса = "ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| НЕОПРЕДЕЛЕНО КАК Подразделение,
|
| ДанныеДокумента.Касса КАК ДенежныеСредства,
| ТаблицаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.Валюта КАК ВалютаПлатежа,
|
| ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие) КАК Партнер,
| ДанныеДокумента.КассаОтправительВладелец КАК Контрагент,
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.Договор КАК Договор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
|
| 0 КАК СуммаОплаты,
| 0 КАК СуммаОплатыРегл,
| 0 КАК СуммаОплатыВВалютеПлатежа,
|
| 0 КАК СуммаПостоплаты,
| 0 КАК СуммаПостоплатыРегл,
| 0 КАК СуммаПостоплатыВВалютеПлатежа,
|
| 0 КАК СуммаПредоплаты,
| 0 КАК СуммаПредоплатыРегл,
| 0 КАК СуммаПредоплатыВВалютеПлатежа,
|
| ТаблицаРасшифровкаПлатежа.СуммаНДСУпр КАК СуммаНДС,
| ТаблицаРасшифровкаПлатежа.СуммаНДСРегл КАК СуммаНДСРегл,
| ТаблицаРасшифровкаПлатежа.СуммаНДС КАК СуммаНДСВВалютеПлатежа,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
|
| 0 КАК СуммаОплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПостоплатыВВалютеВзаиморасчетов,
| 0 КАК СуммаПредоплатыВВалютеВзаиморасчетов,
|
| ДанныеДокумента.Касса КАК ИсточникГФУДенежныхСредств,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ИсточникГФУРасчетов,
| ТаблицаРасшифровкаПлатежа.СтавкаНДС КАК СтавкаНДС
| ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО
| ИСТИНА
|
| ГДЕ
| ТаблицаРасшифровкаПлатежа.СуммаНДС <> 0";
МассивТекстовПодзапроса.Добавить(ТекстЗапросаПодзапроса);
КонецЕсли;
Если МассивТекстовПодзапроса.Количество() = 0 Тогда
Возврат "";
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстПодзапросаЗапроса = СтрСоединить(МассивТекстовПодзапроса, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());
ТекстЗапроса =
"ВЫБРАТЬ
| ДанныеДокумента.Период КАК Период,
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Подразделение КАК Подразделение,
|
| ДанныеДокумента.ДенежныеСредства КАК ДенежныеСредства,
| &НаправлениеДеятельностиДС КАК НаправлениеДеятельностиДС,
| Значение(Перечисление.ТипыДенежныхСредств.Наличные) КАК ТипДенежныхСредств,
| ДанныеДокумента.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.ВалютаПлатежа КАК ВалютаПлатежа,
|
| ДанныеДокумента.Партнер КАК Партнер,
| ДанныеДокумента.Контрагент КАК Контрагент,
| ВЫБОР КОГДА &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации))
| И ЕСТЬNULL(ДанныеДокумента.НаправлениеДеятельности.УчетРасчетовСПоставщиками, ЛОЖЬ)
| ИЛИ НЕ &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации))
| И ЕСТЬNULL(ДанныеДокумента.НаправлениеДеятельности.УчетДоходов, ЛОЖЬ)
| ТОГДА
| ДанныеДокумента.НаправлениеДеятельности
| ИНАЧЕ
| ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
| КОНЕЦ КАК НаправлениеДеятельностиКонтрагента,
|
| ДанныеДокумента.Договор КАК Договор,
| ДанныеДокумента.ОбъектРасчетов КАК ОбъектРасчетов,
| НЕОПРЕДЕЛЕНО КАК РасчетныйДокумент,
|
| СУММА(ДанныеДокумента.СуммаОплаты) КАК СуммаОплаты,
| СУММА(ДанныеДокумента.СуммаОплатыРегл) КАК СуммаОплатыРегл,
| СУММА(ДанныеДокумента.СуммаОплатыВВалютеПлатежа) КАК СуммаОплатыВВалютеПлатежа,
|
| СУММА(ДанныеДокумента.СуммаПостоплаты) КАК СуммаПостоплаты,
| СУММА(ДанныеДокумента.СуммаПостоплатыРегл) КАК СуммаПостоплатыРегл,
| СУММА(ДанныеДокумента.СуммаПостоплатыВВалютеПлатежа) КАК СуммаПостоплатыВВалютеПлатежа,
|
| СУММА(ДанныеДокумента.СуммаПредоплаты) КАК СуммаПредоплаты,
| СУММА(ДанныеДокумента.СуммаПредоплатыРегл) КАК СуммаПредоплатыРегл,
| СУММА(ДанныеДокумента.СуммаПредоплатыВВалютеПлатежа) КАК СуммаПредоплатыВВалютеПлатежа,
|
| СУММА(ДанныеДокумента.СуммаНДС) КАК СуммаНДС,
| СУММА(ДанныеДокумента.СуммаНДСРегл) КАК СуммаНДСРегл,
| СУММА(ДанныеДокумента.СуммаНДСВВалютеПлатежа) КАК СуммаНДСВВалютеПлатежа,
|
| ДанныеДокумента.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
|
| СУММА(ДанныеДокумента.СуммаОплатыВВалютеВзаиморасчетов) КАК СуммаОплатыВВалютеВзаиморасчетов,
| СУММА(ДанныеДокумента.СуммаПостоплатыВВалютеВзаиморасчетов) КАК СуммаПостоплатыВВалютеВзаиморасчетов,
| СУММА(ДанныеДокумента.СуммаПредоплатыВВалютеВзаиморасчетов) КАК СуммаПредоплатыВВалютеВзаиморасчетов,
|
| ДанныеДокумента.ИсточникГФУДенежныхСредств КАК ИсточникГФУДенежныхСредств,
| ДанныеДокумента.ИсточникГФУРасчетов КАК ИсточникГФУРасчетов,
| ДанныеДокумента.СтавкаНДС,
| ЛОЖЬ КАК ОтложенноеПроведение
|
|ИЗ &ТекстВложенногоЗапроса КАК ДанныеДокумента
|
|СГРУППИРОВАТЬ ПО
| ДанныеДокумента.Период,
| ДанныеДокумента.ХозяйственнаяОперация,
| ДанныеДокумента.Организация,
| ДанныеДокумента.Подразделение,
| ДанныеДокумента.ДенежныеСредства,
| ДанныеДокумента.СтатьяДвиженияДенежныхСредств,
| ДанныеДокумента.ВалютаПлатежа,
| ДанныеДокумента.Партнер,
| ДанныеДокумента.Контрагент,
| ВЫБОР КОГДА &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации))
| И ЕСТЬNULL(ДанныеДокумента.НаправлениеДеятельности.УчетРасчетовСПоставщиками, ЛОЖЬ)
| ИЛИ НЕ &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации))
| И ЕСТЬNULL(ДанныеДокумента.НаправлениеДеятельности.УчетДоходов, ЛОЖЬ)
| ТОГДА
| ДанныеДокумента.НаправлениеДеятельности
| ИНАЧЕ
| ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
| КОНЕЦ,
| ДанныеДокумента.Договор,
| ДанныеДокумента.ОбъектРасчетов,
| ДанныеДокумента.ВалютаВзаиморасчетов,
| ДанныеДокумента.ИсточникГФУДенежныхСредств,
| ДанныеДокумента.ИсточникГФУРасчетов,
| ДанныеДокумента.СтавкаНДС
|";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстВложенногоЗапроса", "(" + ТекстПодзапросаЗапроса + ")");
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаВременнаяТаблицаДвиженияКонтрагентКонтрагент(Запрос, ТекстыЗапроса, ДокументОбъект)
ИмяВременнойТаблицы = "ВтДвиженияКонтрагентКонтрагент";
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
МассивТекстовПодзапроса = Новый Массив;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика Тогда
ТекстПодзапроса = "// Списали задолженность клиента преред филиалом
| ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ВЫБОР КОГДА &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации))
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПередачаПлатежаИзФилиала)
| ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВзаимозачетЗадолженности)
| КОНЕЦ КАК ХозяйственнаяОперация,
| ТаблицаРасшифровкаПлатежа.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.ПодразделениеЗаказа КАК Подразделение,
|
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Партнер КАК Партнер,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Контрагент КАК Контрагент,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Договор КАК Договор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
|
| ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие) КАК КорПартнер,
| ДанныеДокумента.Организация КАК КорКонтрагент,
| &НаправлениеДеятельностиДС КАК КорНаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Договор КАК КорДоговор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК КорОбъектРасчетов,
|
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК Сумма,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВВалюте,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК СуммаВВалютеВзаиморасчетов,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК КорВалютаВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК КорСуммаВВалютеВзаиморасчетов,
|
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ИсточникГФУРасчетов,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК КорИсточникГФУРасчетов
| ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО ИСТИНА
| ГДЕ
| ДанныеДокумента.Организация <> ТаблицаРасшифровкаПлатежа.Организация";
МассивТекстовПодзапроса.Добавить(ТекстПодзапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика Тогда
ТекстПодзапроса = "// Передали задолженность клиента в организацию
| ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ВЫБОР КОГДА &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации))
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПриемПлатежаВФилиале)
| ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВзаимозачетЗадолженности)
| КОНЕЦ КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.ПодразделениеЗаказа КАК Подразделение,
|
| ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие) КАК Партнер,
| ТаблицаРасшифровкаПлатежа.Организация КАК Контрагент,
| &НаправлениеДеятельностиДС КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.Договор КАК Договор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
|
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Партнер КАК КорПартнер,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Контрагент КАК КорКонтрагент,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.НаправлениеДеятельности КАК КорНаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Договор КАК КорДоговор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК КорОбъектРасчетов,
|
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК Сумма,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВВалюте,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК СуммаВВалютеВзаиморасчетов,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК КорВалютаВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК КорСуммаВВалютеВзаиморасчетов,
|
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ИсточникГФУРасчетов,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК КорИсточникГФУРасчетов
| ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО ИСТИНА
| ГДЕ
| ДанныеДокумента.Организация <> ТаблицаРасшифровкаПлатежа.Организация";
МассивТекстовПодзапроса.Добавить(ТекстПодзапроса);
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика Тогда
ТекстПодзапроса = "// Возврат оплаты по курсу аванса
| ВЫБРАТЬ
| ДанныеДокумента.Дата КАК Период,
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВзаимозачетЗадолженности) КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.ПодразделениеЗаказа КАК Подразделение,
|
| ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие) КАК Партнер,
| ДанныеДокумента.Организация КАК Контрагент,
| &НаправлениеДеятельностиДС КАК НаправлениеДеятельности,
| ТаблицаРасшифровкаПлатежа.Договор КАК Договор,
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ОбъектРасчетов,
|
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Партнер КАК КорПартнер,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.Контрагент КАК КорКонтрагент,
| ТаблицаРасшифровкаПлатежа.АналитикаУчетаПоПартнерам.НаправлениеДеятельности КАК КорНаправлениеДеятельности,
| ДанныеДокумента.Договор КАК КорДоговор,
| ДанныеДокумента.ОбъектРасчетов КАК КорОбъектРасчетов,
|
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК Сумма,
| ТаблицаРасшифровкаПлатежа.СуммаРегл КАК СуммаРегл,
| ТаблицаРасшифровкаПлатежа.Сумма КАК СуммаВВалюте,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК СуммаВВалютеВзаиморасчетов,
|
| ТаблицаРасшифровкаПлатежа.ВалютаВзаиморасчетов КАК КорВалютаВзаиморасчетов,
| ТаблицаРасшифровкаПлатежа.СуммаВзаиморасчетов КАК КорСуммаВВалютеВзаиморасчетов,
|
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов КАК ИсточникГФУРасчетов,
| ДанныеДокумента.ОбъектРасчетов КАК КорИсточникГФУРасчетов
| ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
| ПО ИСТИНА
| ГДЕ
| ТаблицаРасшифровкаПлатежа.ОбъектРасчетов.Объект <> &Ссылка";
МассивТекстовПодзапроса.Добавить(ТекстПодзапроса);
КонецЕсли;
Если МассивТекстовПодзапроса.Количество() = 0 Тогда
Возврат "";
КонецЕсли;
ТекстПодзапросаЗапроса = СтрСоединить(МассивТекстовПодзапроса, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());
ТекстЗапроса =
"ВЫБРАТЬ
| ДанныеДокумента.Период КАК Период,
| ДанныеДокумента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Подразделение КАК Подразделение,
|
| ДанныеДокумента.Партнер КАК Партнер,
| ДанныеДокумента.Контрагент КАК Контрагент,
| ВЫБОР
| КОГДА ЕСТЬNULL(ДанныеДокумента.НаправлениеДеятельности.УчетРасчетовСПоставщиками, ЛОЖЬ) ТОГДА
| ДанныеДокумента.НаправлениеДеятельности
| КОНЕЦ КАК НаправлениеДеятельности,
| ДанныеДокумента.Договор КАК Договор,
| ДанныеДокумента.ОбъектРасчетов КАК ОбъектРасчетов,
|
| ДанныеДокумента.КорПартнер КАК КорПартнер,
| ДанныеДокумента.КорКонтрагент КАК КорКонтрагент,
| ВЫБОР
| КОГДА ЕСТЬNULL(ДанныеДокумента.КорНаправлениеДеятельности.УчетРасчетовСПоставщиками, ЛОЖЬ) ТОГДА
| ДанныеДокумента.КорНаправлениеДеятельности
| КОНЕЦ КАК КорНаправлениеДеятельности,
| ДанныеДокумента.КорДоговор КАК КорДоговор,
| ДанныеДокумента.КорОбъектРасчетов КАК КорОбъектРасчетов,
| &Валюта КАК Валюта,
|
| СУММА(ДанныеДокумента.Сумма) КАК Сумма,
| СУММА(ДанныеДокумента.СуммаРегл) КАК СуммаРегл,
| СУММА(ДанныеДокумента.СуммаВВалюте) КАК СуммаВВалюте,
|
| ДанныеДокумента.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
| СУММА(ДанныеДокумента.СуммаВВалютеВзаиморасчетов) КАК СуммаВВалютеВзаиморасчетов,
| ДанныеДокумента.КорВалютаВзаиморасчетов КАК КорВалютаВзаиморасчетов,
| СУММА(ДанныеДокумента.КорСуммаВВалютеВзаиморасчетов) КАК КорСуммаВВалютеВзаиморасчетов,
|
| ДанныеДокумента.ИсточникГФУРасчетов КАК ИсточникГФУРасчетов,
| ДанныеДокумента.КорИсточникГФУРасчетов КАК КорИсточникГФУРасчетов
|ПОМЕСТИТЬ ВтДвиженияКонтрагентКонтрагент
|ИЗ &ТекстВложенногоЗапроса КАК ДанныеДокумента
|
|СГРУППИРОВАТЬ ПО
| ДанныеДокумента.Период,
| ДанныеДокумента.ХозяйственнаяОперация,
| ДанныеДокумента.Организация,
| ДанныеДокумента.Подразделение,
| ДанныеДокумента.Партнер,
| ДанныеДокумента.Контрагент,
| ВЫБОР
| КОГДА ЕСТЬNULL(ДанныеДокумента.НаправлениеДеятельности.УчетРасчетовСПоставщиками, ЛОЖЬ) ТОГДА
| ДанныеДокумента.НаправлениеДеятельности
| КОНЕЦ,
| ДанныеДокумента.Договор,
| ДанныеДокумента.ОбъектРасчетов,
| ДанныеДокумента.КорПартнер,
| ДанныеДокумента.КорКонтрагент,
| ВЫБОР
| КОГДА ЕСТЬNULL(ДанныеДокумента.КорНаправлениеДеятельности.УчетРасчетовСПоставщиками, ЛОЖЬ) ТОГДА
| ДанныеДокумента.КорНаправлениеДеятельности
| КОНЕЦ,
| ДанныеДокумента.КорДоговор,
| ДанныеДокумента.КорОбъектРасчетов,
| ДанныеДокумента.ВалютаВзаиморасчетов,
| ДанныеДокумента.КорВалютаВзаиморасчетов,
| ДанныеДокумента.ИсточникГФУРасчетов,
| ДанныеДокумента.КорИсточникГФУРасчетов
|";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстВложенногоЗапроса", "(" + ТекстПодзапросаЗапроса + ")");
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяВременнойТаблицы);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаДвиженияКонтрагентКонтрагент(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ДвиженияКонтрагентКонтрагент";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика) Тогда
Возврат "";
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтДвиженияКонтрагентКонтрагент", ТекстыЗапроса) Тогда
ТекстЗапросаВременнаяТаблицаДвиженияКонтрагентКонтрагент(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса =
"ВЫБРАТЬ
| ДвиженияКонтрагентКонтрагент.Период КАК Период,
| ДвиженияКонтрагентКонтрагент.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДвиженияКонтрагентКонтрагент.Организация КАК Организация,
| ДвиженияКонтрагентКонтрагент.Подразделение КАК Подразделение,
|
| ДвиженияКонтрагентКонтрагент.Партнер КАК Партнер,
| ДвиженияКонтрагентКонтрагент.Контрагент КАК Контрагент,
| ДвиженияКонтрагентКонтрагент.НаправлениеДеятельности КАК НаправлениеДеятельности,
| ДвиженияКонтрагентКонтрагент.Договор КАК Договор,
| ДвиженияКонтрагентКонтрагент.ОбъектРасчетов КАК ОбъектРасчетов,
|
| ДвиженияКонтрагентКонтрагент.КорПартнер КАК КорПартнер,
| ДвиженияКонтрагентКонтрагент.КорКонтрагент КАК КорКонтрагент,
| ДвиженияКонтрагентКонтрагент.КорНаправлениеДеятельности КАК КорНаправлениеДеятельности,
| ДвиженияКонтрагентКонтрагент.КорДоговор КАК КорДоговор,
| ДвиженияКонтрагентКонтрагент.КорОбъектРасчетов КАК КорОбъектРасчетов,
| ДвиженияКонтрагентКонтрагент.Валюта КАК Валюта,
|
| ДвиженияКонтрагентКонтрагент.Сумма КАК Сумма,
| ДвиженияКонтрагентКонтрагент.СуммаРегл КАК СуммаРегл,
| ДвиженияКонтрагентКонтрагент.СуммаВВалюте КАК СуммаВВалюте,
|
| ДвиженияКонтрагентКонтрагент.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
| ДвиженияКонтрагентКонтрагент.СуммаВВалютеВзаиморасчетов КАК СуммаВВалютеВзаиморасчетов,
| ДвиженияКонтрагентКонтрагент.КорВалютаВзаиморасчетов КАК КорВалютаВзаиморасчетов,
| ДвиженияКонтрагентКонтрагент.КорСуммаВВалютеВзаиморасчетов КАК КорСуммаВВалютеВзаиморасчетов,
|
| ДвиженияКонтрагентКонтрагент.ИсточникГФУРасчетов КАК ИсточникГФУРасчетов,
| ДвиженияКонтрагентКонтрагент.КорИсточникГФУРасчетов КАК КорИсточникГФУРасчетов
|
|ИЗ
| ВтДвиженияКонтрагентКонтрагент КАК ДвиженияКонтрагентКонтрагент
|";
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаПрочиеДоходы(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ПрочиеДоходы";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств) Тогда
Возврат "";
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаКурсовыхРазниц", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаКурсовыхРазниц(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса = "";
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| &Период КАК Период,
| ТаблицаРасшифровкаПлатежа.НомерСтроки КАК ТаблицаРасшифровкаПлатежаНомерСтроки,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
| &Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК СтатьяДоходов,
| ТаблицаРасшифровкаПлатежа.АналитикаДоходов КАК АналитикаДоходов,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК Подразделение,
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельности,
|
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
|
|
| ТаблицаРасшифровкаПлатежа.СуммаУпр КАК Сумма,
| (ВЫБОР
| КОГДА &УправленческийУчетОрганизаций
| ТОГДА ТаблицаРасшифровкаПлатежа.СуммаУпр
| ИНАЧЕ 0 КОНЕЦ) КАК СуммаУпр,
| (ВЫБОР
| КОГДА &ИспользоватьУчетПрочихДоходовРасходовРегл
| ТОГДА ТаблицаРасшифровкаПлатежа.СуммаРегл
| ИНАЧЕ 0 КОНЕЦ) КАК СуммаРегл,
|
| ТаблицаРасшифровкаПлатежа.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ПрочееПоступлениеДенежныхСредств) КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
|
|ГДЕ
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов ССЫЛКА ПланВидовХарактеристик.СтатьиДоходов
| И &ИспользоватьУчетПрочихДоходовРасходов
|
|УПОРЯДОЧИТЬ ПО
| ТаблицаРасшифровкаПлатежаНомерСтроки";
КонецЕсли;
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| &Период КАК Период,
| 0 КАК ТаблицаРасшифровкаПлатежаНомерСтроки,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
| &Организация КАК Организация,
| ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиДоходов.ДоходыПриКонвертацииВалюты) КАК СтатьяДоходов,
| ЗНАЧЕНИЕ(Перечисление.АналитикаКурсовыхРазниц.ДенежныеСредства) КАК АналитикаДоходов,
| ТаблицаКурсовыхРазниц.Подразделение КАК Подразделение,
| ТаблицаКурсовыхРазниц.НаправлениеДеятельности КАК НаправлениеДеятельности,
|
| ТаблицаКурсовыхРазниц.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ТаблицаКурсовыхРазниц.СуммаУпр КАК Сумма,
| (ВЫБОР
| КОГДА &УправленческийУчетОрганизаций
| ТОГДА ТаблицаКурсовыхРазниц.СуммаУпр
| ИНАЧЕ 0 КОНЕЦ) КАК СуммаУпр,
| (ВЫБОР
| КОГДА &ИспользоватьУчетПрочихДоходовРасходовРегл
| ТОГДА ТаблицаКурсовыхРазниц.СуммаРегл
| ИНАЧЕ 0 КОНЕЦ) КАК СуммаРегл,
|
| ТаблицаКурсовыхРазниц.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.КурсовыеРазницыДСПрибыль) КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ТаблицаКурсовыхРазниц КАК ТаблицаКурсовыхРазниц
|
|ГДЕ
| (ТаблицаКурсовыхРазниц.СуммаУпр > 0 ИЛИ ТаблицаКурсовыхРазниц.СуммаРегл > 0)
|
|УПОРЯДОЧИТЬ ПО
| ТаблицаРасшифровкаПлатежаНомерСтроки
|";
КонецЕсли;
Если ТекстЗапроса = "" Тогда
Возврат "";
КонецЕсли;
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаПрочиеРасходы(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
ИмяРегистра = "ПрочиеРасходы";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
Если НЕ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств) Тогда
Возврат "";
КонецЕсли;
Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтПрочиеРасходы", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаВтПрочиеРасходы(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса = РегистрыНакопления.ПрочиеРасходы.ТекстЗапросаТаблицаПрочиеРасходы();
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаКурсовыхРазниц(Запрос, ТекстыЗапроса, ДокументОбъект = Неопределено) Экспорт
ИмяРегистра = "ТаблицаКурсовыхРазниц";
ТекстЗапроса = "
|ВЫБРАТЬ
| ДанныеДокумента.Касса КАК Касса,
| ДанныеДокумента.КассаПодразделение КАК Подразделение,
| ДанныеДокумента.КассаНаправлениеДеятельности КАК НаправлениеДеятельности,
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПереоценкаДенежныхСредств) КАК ХозяйственнаяОперация,
|
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуКонвертации КАК ЧИСЛО(31,2))
| - ДанныеДокумента.СуммаКонвертации КАК Сумма,
|
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2))
| - ВЫРАЗИТЬ(ДанныеДокумента.СуммаКонвертации * &КоэффициентПересчетаКонвертацииВВалютуУпр КАК ЧИСЛО(31,2))
| КАК СуммаУпр,
|
| ВЫРАЗИТЬ(ДанныеДокумента.СуммаДокумента * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2))
| - ВЫРАЗИТЬ(ДанныеДокумента.СуммаКонвертации * &КоэффициентПересчетаКонвертацииВВалютуРегл КАК ЧИСЛО(31,2))
| КАК СуммаРегл,
| ДанныеДокумента.ИдентификаторДокумента КАК ИдентификаторДокумента
|
|ПОМЕСТИТЬ ТаблицаКурсовыхРазниц
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
| И ДанныеДокумента.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КонвертацияВалюты)
|";
Если ДокументОбъект = Неопределено Тогда
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокументаШапка", "Документ.ПриходныйКассовыйОрдер");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокумента.КассаПодразделение", "ДанныеДокумента.Касса.Подразделение");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокумента.КассаНаправлениеДеятельности", "ДанныеДокумента.Касса.НаправлениеДеятельности");
КонецЕсли;
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаВтИсходныеПрочиеРасходы(Запрос, ТекстыЗапроса, ДокументОбъект = Неопределено)
ИмяРегистра = "ВтИсходныеПрочиеРасходы";
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаРасшифровкаПлатежа", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаРасшифровкаПлатежа(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
Если НЕ ПроведениеДокументов.ЕстьТаблицаЗапроса("ТаблицаКурсовыхРазниц", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаКурсовыхРазниц(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса = "
|ВЫБРАТЬ
| &Период КАК Период,
| ТаблицаРасшифровкаПлатежа.НомерСтроки КАК ТаблицаРасшифровкаПлатежаНомерСтроки,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
| &Организация КАК Организация,
| ТаблицаРасшифровкаПлатежа.СтатьяДоходов КАК СтатьяРасходов,
| ТаблицаРасшифровкаПлатежа.АналитикаРасходов КАК АналитикаРасходов,
| ТаблицаРасшифровкаПлатежа.Подразделение КАК Подразделение,
| ТаблицаРасшифровкаПлатежа.НаправлениеДеятельности КАК НаправлениеДеятельности,
| НЕОПРЕДЕЛЕНО КАК ВидДеятельностиНДС,
|
| -ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаСНДС,
| -ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаБезНДС,
| -ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуУпр КАК ЧИСЛО(31,2)) КАК СуммаБезНДСУпр,
|
| -ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаСНДСРегл,
| -ВЫРАЗИТЬ(ТаблицаРасшифровкаПлатежа.Сумма * &КоэффициентПересчетаВВалютуРегл КАК ЧИСЛО(31,2)) КАК СуммаБезНДСРегл,
| 0 КАК ПостояннаяРазница,
| 0 КАК ВременнаяРазница,
|
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| НЕОПРЕДЕЛЕНО КАК АналитикаУчетаНоменклатуры,
|
| ТаблицаРасшифровкаПлатежа.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ПрочееПоступлениеДенежныхСредств ) КАК НастройкаХозяйственнойОперации
|
|ПОМЕСТИТЬ ВтИсходныеПрочиеРасходы
|ИЗ
| ТаблицаРасшифровкаПлатежа КАК ТаблицаРасшифровкаПлатежа
|
| ЛЕВОЕ СОЕДИНЕНИЕ
| ПланВидовХарактеристик.СтатьиРасходов КАК СтатьиРасходов
| ПО
| СтатьиРасходов.Ссылка = ТаблицаРасшифровкаПлатежа.СтатьяДоходов
|
|ГДЕ
| &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств)
| И ТаблицаРасшифровкаПлатежа.СтатьяДоходов ССЫЛКА ПланВидовХарактеристик.СтатьиРасходов
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| &Период КАК Период,
| 0 КАК ТаблицаРасшифровкаПлатежаНомерСтроки,
| ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
| &Организация КАК Организация,
| ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиРасходов.РасходыПриКонвертацииВалюты) КАК СтатьяРасходов,
| ЗНАЧЕНИЕ(Перечисление.АналитикаКурсовыхРазниц.ДенежныеСредства) КАК АналитикаРасходов,
| ТаблицаКурсовыхРазниц.Подразделение КАК Подразделение,
| ТаблицаКурсовыхРазниц.НаправлениеДеятельности КАК НаправлениеДеятельности,
| НЕОПРЕДЕЛЕНО КАК ВидДеятельностиНДС,
|
| -ТаблицаКурсовыхРазниц.СуммаУпр КАК СуммаСНДС,
| -ТаблицаКурсовыхРазниц.СуммаУпр КАК СуммаБезНДС,
| -ТаблицаКурсовыхРазниц.СуммаУпр КАК СуммаБезНДСУпр,
| -ТаблицаКурсовыхРазниц.СуммаРегл КАК СуммаСНДСРегл,
| -ТаблицаКурсовыхРазниц.СуммаРегл КАК СуммаБезНДСРегл,
| 0 КАК ПостояннаяРазница,
| 0 КАК ВременнаяРазница,
| ТаблицаКурсовыхРазниц.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| НЕОПРЕДЕЛЕНО КАК АналитикаУчетаНоменклатуры,
|
| ТаблицаКурсовыхРазниц.ИдентификаторДокумента КАК ИдентификаторФинЗаписи,
| ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.КурсовыеРазницыДСУбыток ) КАК НастройкаХозяйственнойОперации
|
|ИЗ
| ТаблицаКурсовыхРазниц КАК ТаблицаКурсовыхРазниц
|
|ГДЕ
| &ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КонвертацияВалюты)
| И (ТаблицаКурсовыхРазниц.СуммаУпр < 0 ИЛИ ТаблицаКурсовыхРазниц.СуммаРегл < 0)
|";
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаВтПрочиеРасходы(Запрос, ТекстыЗапроса, ДокументОбъект = Неопределено) Экспорт
ИмяРегистра = "ВтПрочиеРасходы";
Если Не ПроведениеДокументов.ЕстьТаблицаЗапроса("ВтИсходныеПрочиеРасходы", ТекстыЗапроса) Тогда
ТекстЗапросаТаблицаВтИсходныеПрочиеРасходы(Запрос, ТекстыЗапроса, ДокументОбъект);
КонецЕсли;
ТекстЗапроса = РегистрыНакопления.ПрочиеРасходы.ТекстЗапросаТаблицаВтПрочиеРасходы();
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Функция ТекстЗапросаТаблицаРеестрДокументов(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект = Неопределено)
ИмяРегистра = "РеестрДокументов";
Если НЕ ПроведениеДокументов.ТребуетсяТаблицаДляДвижений(ИмяРегистра, Регистры) Тогда
Возврат "";
КонецЕсли;
МассивТекстовЗапроса = Новый Массив;
Если ДокументОбъект = Неопределено
ИЛИ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтАрендодателя
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПустаяСсылка()) Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| &ИдентификаторМетаданных КАК ТипСсылки,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &Организация КАК Организация,
| &ПартнерИзДокумента КАК Партнер,
| &Касса КАК МестоХранения,
| &КонтрагентИзДокумента КАК Контрагент,
| ДанныеДокумента.КассаПодразделение КАК Подразделение,
| &Период КАК ДатаДокументаИБ,
| &Ссылка КАК Ссылка,
| &Номер КАК НомерДокументаИБ,
| НЕОПРЕДЕЛЕНО КАК Статус,
| &Автор КАК Ответственный,
| &Автор КАК Автор,
| ЛОЖЬ КАК ДополнительнаяЗапись,
| НЕОПРЕДЕЛЕНО КАК Дополнительно,
| &Комментарий КАК Комментарий,
| &Проведен КАК Проведен,
| &ПометкаУдаления КАК ПометкаУдаления,
| &Период КАК ДатаПервичногоДокумента,
| &НомерНаПечать КАК НомерПервичногоДокумента,
| &СуммаДокумента КАК Сумма,
| &Валюта КАК Валюта,
| &Договор КАК Договор,
| &НаправлениеДеятельности КАК НаправлениеДеятельности,
| &Исправление КАК СторноИсправление,
| &СторнируемыйДокумент КАК СторнируемыйДокумент,
| &ИсправляемыйДокумент КАК ИсправляемыйДокумент,
| &Период КАК ДатаОтраженияВУчете,
| НЕОПРЕДЕЛЕНО КАК Приоритет
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
| И &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПрочееПоступлениеДенежныхСредств),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КонвертацияВалюты),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоДепозитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствПоЗаймамВыданным),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтАрендодателя),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПустаяСсылка)
| )";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если ДокументОбъект = Неопределено
ИЛИ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПогашениеЗаймаСотрудником
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПодотчетника) Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| &ИдентификаторМетаданных КАК ТипСсылки,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &Организация КАК Организация,
| &Партнер КАК Партнер,
| &Касса КАК МестоХранения,
| &ПодотчетноеЛицо КАК Контрагент,
| ДанныеДокумента.КассаПодразделение КАК Подразделение,
| &Период КАК ДатаДокументаИБ,
| &Ссылка КАК Ссылка,
| &Номер КАК НомерДокументаИБ,
| НЕОПРЕДЕЛЕНО КАК Статус,
| &Автор КАК Ответственный,
| &Автор КАК Автор,
| ЛОЖЬ КАК ДополнительнаяЗапись,
| НЕОПРЕДЕЛЕНО КАК Дополнительно,
| &Комментарий КАК Комментарий,
| &Проведен КАК Проведен,
| &ПометкаУдаления КАК ПометкаУдаления,
| &Период КАК ДатаПервичногоДокумента,
| &НомерНаПечать КАК НомерПервичногоДокумента,
| &СуммаДокумента КАК Сумма,
| &Валюта КАК Валюта,
| &Договор КАК Договор,
| &НаправлениеДеятельности КАК НаправлениеДеятельности,
| &Исправление КАК СторноИсправление,
| &СторнируемыйДокумент КАК СторнируемыйДокумент,
| &ИсправляемыйДокумент КАК ИсправляемыйДокумент,
| &Период КАК ДатаОтраженияВУчете,
| НЕОПРЕДЕЛЕНО КАК Приоритет
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
| И &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПогашениеЗаймаСотрудником),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтПодотчетника)
| )";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если ДокументОбъект = Неопределено
ИЛИ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств) Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| &ИдентификаторМетаданных КАК ТипСсылки,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &Организация КАК Организация,
| ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие) КАК Партнер,
| &Касса КАК МестоХранения,
| ДанныеДокумента.КассаОтправительВладелец КАК Контрагент,
| ДанныеДокумента.КассаПодразделение КАК Подразделение,
| &Период КАК ДатаДокументаИБ,
| &Ссылка КАК Ссылка,
| &Номер КАК НомерДокументаИБ,
| НЕОПРЕДЕЛЕНО КАК Статус,
| &Автор КАК Ответственный,
| &Автор КАК Автор,
| ЛОЖЬ КАК ДополнительнаяЗапись,
| НЕОПРЕДЕЛЕНО КАК Дополнительно,
| &Комментарий КАК Комментарий,
| &Проведен КАК Проведен,
| &ПометкаУдаления КАК ПометкаУдаления,
| &Период КАК ДатаПервичногоДокумента,
| &НомерНаПечать КАК НомерПервичногоДокумента,
| &СуммаДокумента КАК Сумма,
| &Валюта КАК Валюта,
| &Договор КАК Договор,
| &НаправлениеДеятельности КАК НаправлениеДеятельности,
| &Исправление КАК СторноИсправление,
| &СторнируемыйДокумент КАК СторнируемыйДокумент,
| &ИсправляемыйДокумент КАК ИсправляемыйДокумент,
| &Период КАК ДатаОтраженияВУчете,
| НЕОПРЕДЕЛЕНО КАК Приоритет
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
| И &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВнутренняяПередачаДенежныхСредств)
| )";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если ДокументОбъект = Неопределено
ИЛИ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ) Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| &ИдентификаторМетаданных КАК ТипСсылки,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &Организация КАК Организация,
| НЕОПРЕДЕЛЕНО КАК Партнер,
| &Касса КАК МестоХранения,
| НЕОПРЕДЕЛЕНО КАК Контрагент,
| ДанныеДокумента.КассаПодразделение КАК Подразделение,
| &Период КАК ДатаДокументаИБ,
| &Ссылка КАК Ссылка,
| &Номер КАК НомерДокументаИБ,
| НЕОПРЕДЕЛЕНО КАК Статус,
| &Автор КАК Ответственный,
| &Автор КАК Автор,
| ЛОЖЬ КАК ДополнительнаяЗапись,
| НЕОПРЕДЕЛЕНО КАК Дополнительно,
| &Комментарий КАК Комментарий,
| &Проведен КАК Проведен,
| &ПометкаУдаления КАК ПометкаУдаления,
| &Период КАК ДатаПервичногоДокумента,
| &НомерНаПечать КАК НомерПервичногоДокумента,
| &СуммаДокумента КАК Сумма,
| &Валюта КАК Валюта,
| НЕОПРЕДЕЛЕНО КАК Договор,
| &НаправлениеДеятельности КАК НаправлениеДеятельности,
| &Исправление КАК СторноИсправление,
| &СторнируемыйДокумент КАК СторнируемыйДокумент,
| &ИсправляемыйДокумент КАК ИсправляемыйДокумент,
| &Период КАК ДатаОтраженияВУчете,
| НЕОПРЕДЕЛЕНО КАК Приоритет
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
| И &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИнкассацияДенежныхСредствИзБанка),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзКассыККМ)
| )";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если ДокументОбъект = Неопределено
ИЛИ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка) Тогда
ТекстЗапроса = "
|ВЫБРАТЬ
| &ИдентификаторМетаданных КАК ТипСсылки,
| &ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| &Организация КАК Организация,
| НЕОПРЕДЕЛЕНО КАК Партнер,
| &БанковскийСчет КАК МестоХранения,
| НЕОПРЕДЕЛЕНО КАК Контрагент,
| ДанныеДокумента.КассаПодразделение КАК Подразделение,
| &Период КАК ДатаДокументаИБ,
| &Ссылка КАК Ссылка,
| &Номер КАК НомерДокументаИБ,
| НЕОПРЕДЕЛЕНО КАК Статус,
| &Автор КАК Ответственный,
| &Автор КАК Автор,
| ИСТИНА КАК ДополнительнаяЗапись,
| НЕОПРЕДЕЛЕНО КАК Дополнительно,
| &Комментарий КАК Комментарий,
| &Проведен КАК Проведен,
| &ПометкаУдаления КАК ПометкаУдаления,
| &Период КАК ДатаПервичногоДокумента,
| &НомерНаПечать КАК НомерПервичногоДокумента,
| &СуммаДокумента КАК Сумма,
| &Валюта КАК Валюта,
| НЕОПРЕДЕЛЕНО КАК Договор,
| &НаправлениеДеятельности КАК НаправлениеДеятельности,
| &Исправление КАК СторноИсправление,
| &СторнируемыйДокумент КАК СторнируемыйДокумент,
| &ИсправляемыйДокумент КАК ИсправляемыйДокумент,
| &Период КАК ДатаОтраженияВУчете,
| НЕОПРЕДЕЛЕНО КАК Приоритет
|ИЗ
| ДанныеДокументаШапка КАК ДанныеДокумента
|ГДЕ
| ДанныеДокумента.Ссылка = &Ссылка
| И &ХозяйственнаяОперация В (
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзБанка)
| )
|";
МассивТекстовЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
Если ДокументОбъект <> Неопределено И МассивТекстовЗапроса.Количество() = 0 Тогда
Возврат "";
КонецЕсли;
ТекстЗапроса = СтрСоединить(МассивТекстовЗапроса, ОбщегоНазначенияУТ.РазделительЗапросовВОбъединении());
Если ДокументОбъект = Неопределено Тогда
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокументаШапка", "Документ.ПриходныйКассовыйОрдер");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокумента.КассаПодразделение", "ДанныеДокумента.Касса.Подразделение");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДанныеДокумента.КассаОтправительВладелец", "ДанныеДокумента.КассаОтправитель.Владелец");
КонецЕсли;
ТекстыЗапроса.Добавить(ТекстЗапроса, ИмяРегистра);
Возврат ТекстЗапроса;
КонецФункции
Процедура ДобавитьТекстыОтраженияВзаиморасчетов(Запрос, ТекстыЗапроса, Регистры, ДокументОбъект)
Если НЕ (ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации) Тогда
Возврат;
КонецЕсли;
#Область КурсыВалютДокумента
ИмяРегистра = "ВременнаяТаблицаКурсыВалютДокумента";
ТекстЗапросаКурсыВалютДокумента =
"ВЫБРАТЬ
| ДанныеДокументаШапка.Ссылка КАК Ссылка,
| ДанныеДокументаШапка.Организация КАК Организация,
| ДанныеДокументаШапка.Дата КАК ДатаКурса,
| Таблица.ОбъектРасчетов КАК ОбъектРасчетов,
| ДанныеДокументаШапка.Валюта КАК ВалютаДокумента,
| Таблица.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК Таблица
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеДокументаШапка КАК ДанныеДокументаШапка
| ПО Таблица.Ссылка = ДанныеДокументаШапка.Ссылка
|
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ДанныеДокументаШапка.Ссылка КАК Ссылка,
| ДанныеДокументаШапка.Организация КАК Организация,
| ДанныеДокументаШапка.Дата КАК ДатаКурса,
| ОбъектыРасчетов.Ссылка КАК ОбъектРасчетов,
| ДанныеДокументаШапка.Валюта КАК ВалютаДокумента,
| Таблица.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК Таблица
| ЛЕВОЕ СОЕДИНЕНИЕ ДанныеДокументаШапка КАК ДанныеДокументаШапка
| ПО Таблица.Ссылка = ДанныеДокументаШапка.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ОбъектыРасчетов КАК ОбъектыРасчетов
| ПО Таблица.Ссылка = ОбъектыРасчетов.Объект
| И Таблица.ОбъектРасчетовПлатежаПартнер = ОбъектыРасчетов.Партнер
| И Таблица.ВалютаВзаиморасчетов = ОбъектыРасчетов.ВалютаВзаиморасчетов
| И НЕ ОбъектыРасчетов.ПометкаУдаления
|";
ТекстЗапросаКурсыВалютДокумента = ВзаиморасчетыСервер.ПолучитьТаблицуКурсовВалютНаправленийДеятельности(ТекстЗапросаКурсыВалютДокумента, Истина);
ТекстыЗапроса.Добавить(ТекстЗапросаКурсыВалютДокумента, ИмяРегистра);
#КонецОбласти
#Область РасчетыСКлиентами
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации Тогда
ТекстОплата =
"ВЫБРАТЬ
| Таблица.Ссылка КАК Ссылка,
| ДанныеДокументаШапка.Организация КАК Организация,
| ВЫБОР КОГДА ДанныеДокументаШапка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойОрганизации)
| ТОГДА ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
| КОГДА &ЕстьПодарочныйСертификат = ИСТИНА
| ТОГДА &Партнер
| ИНАЧЕ Таблица.Партнер
| КОНЕЦ КАК Партнер,
|
| Таблица.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
| Таблица.ОбъектРасчетов КАК ОбъектРасчетов,
|
| Таблица.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
| Таблица.Сумма КАК Сумма,
| 0 КАК УвеличениеОплачивается,
| 0 КАК УменьшениеОплачивается,
|
| ДанныеДокументаШапка.Дата КАК ДатаРегистратора,
| ДанныеДокументаШапка.Дата КАК ДатаКурса,
| Таблица.ДатаПогашения КАК ДатаПогашения,
| ДанныеДокументаШапка.Номер КАК НомерРегистратора,
| ДанныеДокументаШапка.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ЗНАЧЕНИЕ(Перечисление.ФормыОплаты.Наличная) КАК ФормаОплаты,
| Таблица.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| ВЫБОР
| КОГДА ДанныеДокументаШапка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента)
| ТОГДА ВЫРАЗИТЬ(Таблица.ОснованиеПлатежа КАК Документ.СчетНаОплатуКлиенту)
| ИНАЧЕ Неопределено
| КОНЕЦ КАК СчетНаОплату,
| ДанныеДокументаШапка.Валюта КАК ВалютаДокумента,
| Неопределено КАК СвязанныйДокумент,
| Таблица.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
| &НастройкаХозяйственнойОперации КАК НастройкаХозяйственнойОперации
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК Таблица
|
| ЛЕВОЕ СОЕДИНЕНИЕ ДанныеДокументаШапка КАК ДанныеДокументаШапка
| ПО Таблица.Ссылка = ДанныеДокументаШапка.Ссылка
|
|";
ВзаиморасчетыСервер.ПроведениеОплатыОтКлиента(Запрос, ТекстыЗапроса, Регистры, ТекстОплата);
КонецЕсли;
#КонецОбласти
#Область РасчетыСПоставщиками
ТекстВозврат = "";
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации Тогда
ТекстВозврат = "
|ВЫБРАТЬ
| Таблица.Ссылка КАК Ссылка,
| Документ.Организация КАК Организация,
| ВЫБОР КОГДА Документ.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации)
| ТОГДА ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
| ИНАЧЕ Таблица.Партнер
| КОНЕЦ КАК Партнер,
| ОбъектРасчетовПлатеж.Ссылка КАК ОбъектРасчетов,
|
| Таблица.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
| Таблица.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
| Таблица.Сумма КАК Сумма,
|
| Документ.Дата КАК ДатаРегистратора,
| Документ.Дата КАК ДатаКурса,
| Документ.Номер КАК НомерРегистратора,
| Документ.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ЗНАЧЕНИЕ(Перечисление.ФормыОплаты.Наличная) КАК ФормаОплаты,
| Таблица.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| Документ.Валюта КАК ВалютаДокумента,
| Таблица.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
| ВЫБОР КОГДА Документ.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации)
| ТОГДА ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВозвратДенежныхСредствОтДругойОрганизации)
| ИНАЧЕ ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВозвратДенежныхСредствОтПоставщика)
| КОНЕЦ КАК НастройкаХозяйственнойОперации
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК Таблица
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеДокументаШапка КАК Документ
| ПО Документ.Ссылка = Таблица.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ОбъектыРасчетов КАК ОбъектРасчетовПлатеж
| ПО Таблица.Ссылка = ОбъектРасчетовПлатеж.Объект
| И Таблица.ОбъектРасчетовПлатежаПартнер = ОбъектРасчетовПлатеж.Партнер
| И Таблица.ВалютаВзаиморасчетов = ОбъектРасчетовПлатеж.ВалютаВзаиморасчетов
| И НЕ ОбъектРасчетовПлатеж.ПометкаУдаления
|";
КонецЕсли;
ТекстПереносЗадолженности = "";
Если ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтПоставщика
ИЛИ ДокументОбъект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации Тогда
ТекстПереносЗадолженности = "
|ВЫБРАТЬ
| Таблица.Ссылка КАК Ссылка,
| Документ.Организация КАК Организация,
| ВЫБОР КОГДА Документ.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратДенежныхСредствОтДругойОрганизации)
| ТОГДА ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие)
| ИНАЧЕ Таблица.Партнер
| КОНЕЦ КАК Партнер,
| ОбъектРасчетовПлатеж.Ссылка КАК ОбъектРасчетовПриемник,
| Таблица.ОбъектРасчетов КАК ОбъектРасчетовИсточник,
|
| Таблица.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
| Документ.Валюта КАК ВалютаДокумента,
| Таблица.СуммаВзаиморасчетов КАК СуммаВзаиморасчетов,
| Таблица.Сумма КАК Сумма,
|
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПереносАванса) КАК ХозяйственнаяОперация,
| ЗНАЧЕНИЕ(Перечисление.ФормыОплаты.Наличная) КАК ФормаОплаты,
| Документ.Номер КАК НомерРегистратора,
| Документ.Дата КАК ДатаРегистратора,
| Документ.Дата КАК ДатаКурса,
| Таблица.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
| Таблица.ИдентификаторСтроки КАК ИдентификаторФинЗаписи
|ИЗ
| ДанныеДокументаТаблицаРасшифровкаПлатежа КАК Таблица
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДанныеДокументаШапка КАК Документ
| ПО Документ.Ссылка = Таблица.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ОбъектыРасчетов КАК ОбъектРасчетовПлатеж
| ПО Таблица.Ссылка = ОбъектРасчетовПлатеж.Объект
| И Таблица.ОбъектРасчетовПлатежаПартнер = ОбъектРасчетовПлатеж.Партнер
| И Таблица.ВалютаВзаиморасчетов = ОбъектРасчетовПлатеж.ВалютаВзаиморасчетов
| И НЕ ОбъектРасчетовПлатеж.ПометкаУдаления
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ОбъектыРасчетов КАК ОбъектыРасчетов
| ПО Таблица.ОбъектРасчетов = ОбъектыРасчетов.Ссылка
|ГДЕ
| ОбъектРасчетовПлатеж.Ссылка <> ОбъектыРасчетов.Ссылка
|";
КонецЕсли;
ВзаиморасчетыСервер.ПроведениеВозвратаОплатыОтПоставщика(Запрос, ТекстыЗапроса, Регистры, ТекстВозврат, ТекстПереносЗадолженности);
#КонецОбласти
КонецПроцедуры
#КонецОбласти
#Область Печать
Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
Если ПравоДоступа("Изменение", Метаданные.Документы.ПриходныйКассовыйОрдер) Тогда
КомандаПечати = КомандыПечати.Добавить();
КомандаПечати.Идентификатор = "ПКО";
КомандаПечати.Представление = НСтр("ru = 'Приходный кассовый ордер'");
КомандаПечати.ПроверкаПроведенияПередПечатью = Истина;
КонецЕсли;
ПриходныйКассовыйОрдерЛокализация.ДобавитьКомандыПечати(КомандыПечати);
КонецПроцедуры
Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПКО") Тогда
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
КоллекцияПечатныхФорм,
"ПКО",
НСтр("ru='Приходный кассовый ордер'"),
СформироватьПечатнуюФормуПКО(МассивОбъектов, ОбъектыПечати, ПараметрыПечати));
КонецЕсли;
Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "КомплектДокументов") Тогда
КоллекцияПечатныхФорм.Очистить();
СформироватьКомплектПечатныхФорм(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати);
КонецЕсли;
ПриходныйКассовыйОрдерЛокализация.Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода);
ФормированиеПечатныхФорм.ЗаполнитьПараметрыОтправки(ПараметрыВывода.ПараметрыОтправки, МассивОбъектов, КоллекцияПечатныхФорм);
КонецПроцедуры
Функция СформироватьКомплектПечатныхФорм(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати) Экспорт
Перем АдресКомплектаПечатныхФорм;
Если ТипЗнч(ПараметрыПечати) = Тип("Структура") И ПараметрыПечати.Свойство("АдресКомплектаПечатныхФорм", АдресКомплектаПечатныхФорм) Тогда
КомплектПечатныхФорм = ПолучитьИзВременногоХранилища(АдресКомплектаПечатныхФорм);
Иначе
КомплектПечатныхФорм = РегистрыСведений.НастройкиПечатиОбъектов.КомплектПечатныхФорм(
Метаданные.Документы.ПриходныйКассовыйОрдер.ПолноеИмя(),
МассивОбъектов, Неопределено);
КонецЕсли;
Если КомплектПечатныхФорм = Неопределено Тогда
Возврат Неопределено;
КонецЕсли;
КомплектыПечатиПоОбъектам = РегистрыСведений.НастройкиПечатиОбъектов.КомплектыПечатиПоОбъектам(КоллекцияПечатныхФорм,
КомплектПечатныхФорм,
МассивОбъектов,
"ПКО");
Для Каждого КомплектПечати Из КомплектыПечатиПоОбъектам Цикл
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
КоллекцияПечатныхФорм,
КомплектПечати.Имя,
КомплектПечати.Представление,
СформироватьПечатнуюФормуПКО(КомплектПечати.Объекты, ОбъектыПечати, ПараметрыПечати));
КонецЦикла;
ПриходныйКассовыйОрдерЛокализация.СформироватьКомплектПечатныхФорм(МассивОбъектов,
ПараметрыПечати,
КоллекцияПечатныхФорм,
ОбъектыПечати,
КомплектПечатныхФорм);
РегистрыСведений.НастройкиПечатиОбъектов.СформироватьКомплектВнешнихПечатныхФорм(
"Документ.ПриходныйКассовыйОрдер",
МассивОбъектов,
ПараметрыПечати,
КоллекцияПечатныхФорм,
ОбъектыПечати);
КонецФункции
Функция КомплектПечатныхФорм() Экспорт
КомплектПечатныхФорм = РегистрыСведений.НастройкиПечатиОбъектов.ПодготовитьКомплектПечатныхФорм();
РегистрыСведений.НастройкиПечатиОбъектов.ДобавитьПечатнуюФормуВКомплект(КомплектПечатныхФорм, "ПКО", НСтр("ru = 'Приходный кассовый ордер'"), 1);
ПриходныйКассовыйОрдерЛокализация.КомплектПечатныхФорм(КомплектПечатныхФорм);
Возврат КомплектПечатныхФорм;
КонецФункции
Процедура ЗаполнитьСтруктуруПолучателейПечатныхФорм(СтруктураДанныхОбъектаПечати) Экспорт
СтруктураДанныхОбъектаПечати.ОсновнойПолучатель = "Контрагент";
СтруктураДанныхОбъектаПечати.МассивРеквизитовПолучателей.Добавить("Контрагент");
Если ПолучитьФункциональнуюОпцию("ИспользоватьПартнеровИКонтрагентов") Тогда
СтруктураДанныхОбъектаПечати.МассивРеквизитовПолучателей.Добавить("РасшифровкаПлатежа.Партнер");
КонецЕсли;
КонецПроцедуры
Функция СформироватьПечатнуюФормуПКО(МассивОбъектов, ОбъектыПечати, ПараметрыПечати)
ТабличныйДокумент = Новый ТабличныйДокумент;
ТабличныйДокумент.КлючПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ПКО";
Макет = УправлениеПечатью.МакетПечатнойФормы("Документ.ПриходныйКассовыйОрдер.ПФ_MXL_ПриходныйКассовыйОрдер");
ТекстЗапроса =
"ВЫБРАТЬ
| ДанныеДокумента.Ссылка КАК Ссылка,
| ЕСТЬNULL(ДанныеДокумента.ИсправляемыйДокумент.Дата, ДанныеДокумента.Дата) КАК ДатаДокумента,
| ЕСТЬNULL(ДанныеДокумента.ИсправляемыйДокумент.Номер, ДанныеДокумента.Номер) КАК Номер,
| ДанныеДокумента.Организация КАК Организация,
| ДанныеДокумента.Организация.Наименование КАК НаименованиеОрганизации,
| ДанныеДокумента.Организация.НаименованиеСокращенное КАК НаименованиеОрганизацииСокращенное,
| ДанныеДокумента.Организация.Префикс КАК Префикс,
| ДанныеДокумента.Касса.Подразделение КАК ПредставлениеПодразделения,
| ДанныеДокумента.Контрагент КАК Контрагент,
| ДанныеДокумента.Контрагент.Представление КАК КонтрагентПредставление,
| ДанныеДокумента.ПринятоОт КАК ПринятоОт,
| ДанныеДокумента.Основание КАК Основание,
| ДанныеДокумента.СуммаДокумента КАК Сумма,
| ДанныеДокумента.Валюта КАК Валюта,
| ДанныеДокумента.Валюта.Представление КАК ВалютаПредставление
|ИЗ
| Документ.ПриходныйКассовыйОрдер КАК ДанныеДокумента
|ГДЕ
| ДанныеДокумента.Ссылка В(&МассивДокументов)
|
|УПОРЯДОЧИТЬ ПО
| Номер
|;";
Запрос = Новый Запрос(ТекстЗапроса);
Запрос.УстановитьПараметр("МассивДокументов", МассивОбъектов);
Выборка = Запрос.Выполнить().Выбрать();
РеквизитыСторон = ДенежныеСредстваСервер.СведенияОПолучателеПлательщикеПоДокументам(МассивОбъектов);
ПервыйДокумент = Истина;
Пока Выборка.Следующий() Цикл
Если Не ПервыйДокумент Тогда
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
ПервыйДокумент = Ложь;
НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
ОбластьМакета = Макет.ПолучитьОбласть("Шапка");
ШтрихкодированиеПечатныхФорм.ВывестиШтрихкодВТабличныйДокумент(ТабличныйДокумент, Макет, ОбластьМакета, Выборка.Ссылка);
ОбластьМакета.Параметры.Заполнить(Выборка);
ОтборНаименования = Новый Структура("Документ, Признак", Выборка.Ссылка, 4);
СведенияОНаименовании = РеквизитыСторон.НайтиСтроки(ОтборНаименования);
СтруктураПараметров = Новый Структура();
СтруктураПараметров.Вставить("ПредставлениеОрганизации");
Если СведенияОНаименовании.Количество() > 0 Тогда
СтруктураПараметров.ПредставлениеОрганизации = СведенияОНаименовании[0].ЗначениеРеквизита;
Иначе
СтруктураПараметров.ПредставлениеОрганизации = Выборка.НаименованиеОрганизации;
КонецЕсли;
ОбластьМакета.Параметры.Заполнить(СтруктураПараметров);
ОбластьМакета.Параметры.НомерДокумента = ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(
Выборка.Номер,
Ложь,
Истина);
СтруктураДанныхОрганизация = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(Выборка.Организация,
Выборка.ДатаДокумента);
ОбластьМакета.Параметры.Заполнить(СтруктураДанныхОрганизация);
ТабличныйДокумент.Вывести(ОбластьМакета);
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(
ТабличныйДокумент,
НомерСтрокиНачало,
ОбъектыПечати,
Выборка.Ссылка);
КонецЦикла;
ТабличныйДокумент.АвтоМасштаб = Истина;
Возврат ТабличныйДокумент;
КонецФункции
#КонецОбласти
#Область ШаблоныСообщений
Процедура ПриПодготовкеШаблонаСообщения(Реквизиты, Вложения, ДополнительныеПараметры) Экспорт
КонецПроцедуры
Процедура ПриФормированииСообщения(Сообщение, ПредметСообщения, ДополнительныеПараметры) Экспорт
КонецПроцедуры
Процедура ПриЗаполненииТелефоновПолучателейВСообщении(ПолучателиSMS, ПредметСообщения) Экспорт
КонецПроцедуры
Процедура ПриЗаполненииПочтыПолучателейВСообщении(ПолучателиПисьма, ПредметСообщения) Экспорт
КонецПроцедуры
#КонецОбласти
#Область Прочее
Функция СтатьяДвиженияДенежныхСредствДокумента(ДанныеДокумента)
Если ЗначениеЗаполнено(ДанныеДокумента.СтатьяДвиженияДенежныхСредств) Тогда
СтатьяДвиженияДенежныхСредств = ДанныеДокумента.СтатьяДвиженияДенежныхСредств;
Иначе
СтатьяДвиженияДенежныхСредств = Справочники.СтатьиДвиженияДенежныхСредств.ПредопределеннаяСтатьяДДС(
ДанныеДокумента.ХозяйственнаяОперация, ДанныеДокумента.Валюта);
КонецЕсли;
Возврат СтатьяДвиженияДенежныхСредств;
КонецФункции
Функция ПодразделениеДокумента(ДанныеДокумента)
Если ДанныеДокумента.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПоступлениеДенежныхСредствИзДругойКассы Тогда
Если ЗначениеЗаполнено(ДанныеДокумента.ДокументОснование)
И ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(
ДанныеДокумента.ДокументОснование, "РаспоряжениеНаПеремещениеДенежныхСредств") Тогда
Распоряжение = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДанныеДокумента.ДокументОснование, "РаспоряжениеНаПеремещениеДенежныхСредств");
Подразделение = ДенежныеСредстваСервер.ИнициаторВыдачиНаличных(Распоряжение, ДанныеДокумента.Касса);
Иначе
Подразделение = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДанныеДокумента.Касса, "Подразделение");
КонецЕсли;
Иначе
Подразделение = ДанныеДокумента.Подразделение;
КонецЕсли;
Возврат Подразделение;
КонецФункции
#КонецОбласти
#КонецОбласти
#КонецЕсли