public void ПровестиСписаниеДенежныхСредствУпр(/*СтруктураШапкиДокумента, СтруктураПараметров, ТаблицаПлатежейУпр, Движения, Отказ, Заголовок*/)
{
//РасчетыВозврат = СтруктураПараметров.РасчетыВозврат;
//КоэффициентСторно = ?(РасчетыВозврат = Перечисления.РасчетыВозврат.Возврат, -1, 1);
//РасчетыСКонтрагентами = СтруктураПараметров.ЕстьРасчетыСКонтрагентами ИЛИ СтруктураПараметров.ЕстьРасчетыПоКредитам;
//ОтраженоВОперУчете = СтруктураШапкиДокумента.ОтраженоВОперУчете;
//Оплачено = СтруктураШапкиДокумента.Оплачено;
//Дата = СтруктураШапкиДокумента.Дата;
//ДатаДвижений = СтруктураПараметров.ДатаДвижений;
//Организация = СтруктураШапкиДокумента.Организация;
//ВидДенежныхСредств = СтруктураПараметров.ВидДенежныхСредств;
//СуммаДокумента = СтруктураШапкиДокумента.СуммаДокумента;
//ВалютаДокумента = СтруктураШапкиДокумента.ВалютаДокумента;
//Ссылка = СтруктураШапкиДокумента.Ссылка;
//БанковскийСчетКасса = СтруктураПараметров.БанковскийСчетКасса;
//ВидОперации = СтруктураШапкиДокумента.ВидОперации;
//Контрагент = СтруктураШапкиДокумента.Контрагент;
/*ПоОбъявлениюНаВзносНаличными = СтруктураПараметров.Свойство("ПоОбъявлениюНаВзносНаличными")
И СтруктураПараметров.ПоОбъявлениюНаВзносНаличными;*/
/*ПоРасчетномуДокументу = СтруктураПараметров.Свойство("ПоРасчетномуДокументу")
И СтруктураПараметров.ПоРасчетномуДокументу;*/
//ДвиженияПоСтатьям = ТаблицаПлатежейУпр.Скопировать();
//ДвиженияПоЗаявкам = ТаблицаПлатежейУпр.Скопировать();
//ДвиженияПоРезерву = ТаблицаПлатежейУпр.Скопировать();
//ДвиженияПоКонтрагентам = ТаблицаПлатежейУпр.Скопировать();
//ДвиженияПоЗаявкам.Свернуть("ДокументПланированияПлатежа,ВключатьВПлатежныйКалендарь,ДоговорКонтрагента,ВедениеВзаиморасчетов,ВестиПоДокументамРасчетовСКонтрагентом,Сделка,ДокументРасчетовСКонтрагентом,СтатьяДвиженияДенежныхСредств,Проект","СуммаПлатежа,СуммаВзаиморасчетов,СуммаПлатежаПлан,СуммаУпр");
if(true/*РасчетыСКонтрагентами*/)
{
//ДвиженияПоКонтрагентам.Свернуть("ДоговорКонтрагента,ВедениеВзаиморасчетов,ВестиПоДокументамРасчетовСКонтрагентом,Сделка,ДокументРасчетовСКонтрагентом,ВидДоговора, КонтролироватьДенежныеСредстваКомитента,Проект","СуммаВзаиморасчетов,СуммаУпр,СуммаРегл,СуммаВзаиморасчетовОстаток,СуммаУпрОстаток");
}
//ДвиженияПоСтатьям.Свернуть("СтатьяДвиженияДенежныхСредств","СуммаПлатежа,СуммаУпр");
//ДвиженияПоРезерву.Свернуть("ДокументПланированияПлатежа","СуммаПлатежаПлан");
if(true/*ВидОперации = Перечисления.ВидыОперацийРКО.ВыплатаЗаработнойПлатыПоВедомостям*/)
{
//Запрос = Новый Запрос;
/*Запрос.Текст =
"ВЫБРАТЬ
| РКОВыплатаЗаработнойПлаты.Ведомость,
| РКОВыплатаЗаработнойПлаты.СуммаПлатежа,
| РКОВыплатаЗаработнойПлаты.СтатьяДвиженияДенежныхСредств
|ИЗ
| Документ.РасходныйКассовыйОрдер.ВыплатаЗаработнойПлаты КАК РКОВыплатаЗаработнойПлаты
|ГДЕ
| РКОВыплатаЗаработнойПлаты.Ссылка = &Ссылка";*/
//Запрос.УстановитьПараметр("Ссылка", Ссылка);
//ВыплатаЗаработнойПлаты = Запрос.Выполнить().Выгрузить();
//МассивВедомостей = ОбщегоНазначения.УдалитьПовторяющиесяЭлементыМассива(ВыплатаЗаработнойПлаты.ВыгрузитьКолонку("Ведомость"));
}
if(true/*Оплачено*/)
{
//ТаблицаДенежныеСредства = Движения.ДенежныеСредства.ВыгрузитьКолонки();
//ТаблицаДенежныеСредстваКСписанию = Движения.ДенежныеСредстваКСписанию.ВыгрузитьКолонки();
/*// По регистру "Денежные средства" - расход
*/
//СтрокаКурсыВалют = ТаблицаПлатежейУпр[0];
/*СуммаУпр = МодульВалютногоУчета.ПересчитатьИзВалютыВВалюту(
СуммаДокумента,
ВалютаДокумента, глЗначениеПеременной("ВалютаУправленческогоУчета"),
СтрокаКурсыВалют.КурсДокумента, СтрокаКурсыВалют.КурсУпрУчета,
СтрокаКурсыВалют.КратностьДокумента, СтрокаКурсыВалют.КратностьУпрУчета);*/
//СтрокаДвиженийОстатки = ТаблицаДенежныеСредства.Добавить();
//СтрокаДвиженийОстатки.БанковскийСчетКасса = БанковскийСчетКасса;
//СтрокаДвиженийОстатки.Организация = Организация;
//СтрокаДвиженийОстатки.ВидДенежныхСредств = ВидДенежныхСредств;
//СтрокаДвиженийОстатки.Сумма = СуммаДокумента;
//СтрокаДвиженийОстатки.СуммаУпр = СуммаУпр;
/*// По регистру "Денежные средства к списанию" - расход
*/
if(true/*НЕ ВидОперации=Перечисления.ВидыОперацийРКО.ВыплатаЗаработнойПлатыПоВедомостям*/)
{
}
//Движения.ДенежныеСредства.мПериод = ДатаДвижений;
//Движения.ДенежныеСредства.мТаблицаДвижений = ТаблицаДенежныеСредства;
//Движения.ДенежныеСредства.ВыполнитьРасход();
//Движения.ДенежныеСредстваКСписанию.мПериод = ДатаДвижений;
//Движения.ДенежныеСредстваКСписанию.мТаблицаДвижений = ТаблицаДенежныеСредстваКСписанию;
//Движения.ДенежныеСредстваКСписанию.ВыполнитьРасход();
if(true/*ВидОперации = Перечисления.ВидыОперацийППИсходящее.ПереводНаДругойСчет
ИЛИ ВидОперации = Перечисления.ВидыОперацийСписаниеБезналичныхДенежныхСредств.ПереводНаДругойСчет
ИЛИ (ВидОперации = Перечисления.ВидыОперацийРКО.ВзносНаличнымиВБанк И НЕ ПоОбъявлениюНаВзносНаличными)*/)
{
/*// По регистру "Денежные средства" - приход
*/
//ТаблицаДенежныеСредства.Очистить();
//СтрокаДвиженийОстатки = ТаблицаДенежныеСредства.Добавить();
//СтрокаДвиженийОстатки.БанковскийСчетКасса = СтруктураПараметров.БанковскийСчетКассаПолучатель;
//СтрокаДвиженийОстатки.Организация = Организация;
//СтрокаДвиженийОстатки.ВидДенежныхСредств = СтруктураПараметров.ВидДенежныхСредствПолучатель;
//СтрокаДвиженийОстатки.Сумма = СуммаДокумента;
//СтрокаДвиженийОстатки.СуммаУпр = СуммаУпр;
//Движения.ДенежныеСредства.мПериод = ДатаДвижений;
//Движения.ДенежныеСредства.мТаблицаДвижений = ТаблицаДенежныеСредства;
//Движения.ДенежныеСредства.ВыполнитьПриход();
/*// По регистру "Денежные средства к получению" - расход
*/
//ТаблицаДенежныеСредстваКПолучению = Движения.ДенежныеСредстваКПолучению.ВыгрузитьКолонки();
//Движения.ДенежныеСредстваКПолучению.мПериод = ДатаДвижений;
//Движения.ДенежныеСредстваКПолучению.мТаблицаДвижений = ТаблицаДенежныеСредстваКПолучению;
//Движения.ДенежныеСредстваКПолучению.ВыполнитьРасход();
}
}
if(true/*ОтраженоВОперУчете И НЕ ПоРасчетномуДокументу И НЕ ПоОбъявлениюНаВзносНаличными*/)
{
/*// По регистру "Денежные средства к списанию" - приход
*/
//ТаблицаДенежныеСредстваКСписанию = Движения.ДенежныеСредстваКСписанию.ВыгрузитьКолонки();
if(true/*НЕ ВидОперации=Перечисления.ВидыОперацийРКО.ВыплатаЗаработнойПлатыПоВедомостям*/)
{
//Движения.ДенежныеСредстваКСписанию.мПериод = ?(Оплачено, Мин(ДатаДвижений, Дата), Дата);
//Движения.ДенежныеСредстваКСписанию.мТаблицаДвижений = ТаблицаДенежныеСредстваКСписанию;
//Движения.ДенежныеСредстваКСписанию.ВыполнитьПриход();
}
if(true/*ВидОперации = Перечисления.ВидыОперацийППИсходящее.ПереводНаДругойСчет
ИЛИ ВидОперации = Перечисления.ВидыОперацийСписаниеБезналичныхДенежныхСредств.ПереводНаДругойСчет
ИЛИ ВидОперации = Перечисления.ВидыОперацийРКО.ВзносНаличнымиВБанк*/)
{
/*// По регистру "Денежные средства к получению" - приход
*/
//ТаблицаДенежныеСредстваКПолучению = Движения.ДенежныеСредстваКПолучению.ВыгрузитьКолонки();
//Движения.ДенежныеСредстваКПолучению.мПериод = ?(Оплачено, Мин(ДатаДвижений,Дата), Дата);
//Движения.ДенежныеСредстваКПолучению.мТаблицаДвижений = ТаблицаДенежныеСредстваКПолучению;
//Движения.ДенежныеСредстваКПолучению.ВыполнитьПриход();
}
//ЕстьРезерв = Ложь;
//ЕстьРазмещение = Ложь;
/*// По регистру "Денежные средства в резерве" - расход
*/
//ТаблицаДенежныеСредстваВРезерве = Движения.ДенежныеСредстваВРезерве.ВыгрузитьКолонки();
/*// По регистру "Размещение заявок на расходование средств" - расход
*/
//ТаблицаРазмещениеЗаявокНаРасходованиеСредств = Движения.РазмещениеЗаявокНаРасходованиеСредств.ВыгрузитьКолонки();
/*// По регистру "Заявки на расходование средств" - расход
*/
//ТаблицаЗаявкиНаРасходованиеСредств = Движения.ЗаявкиНаРасходованиеСредств.ВыгрузитьКолонки();
/*// Проверим необходимость списания суммы платежного поручения по заявкам из регистра "ДенежныеСредстваРезерв"
*/
if(true/*ЕстьРезерв*/)
{
//Движения.ДенежныеСредстваВРезерве.мПериод = Дата;
//Движения.ДенежныеСредстваВРезерве.мТаблицаДвижений = ТаблицаДенежныеСредстваВРезерве;
//Движения.ДенежныеСредстваВРезерве.ВыполнитьРасход();
}
if(true/*ЕстьРазмещение*/)
{
//Движения.РазмещениеЗаявокНаРасходованиеСредств.мПериод = Дата;
//Движения.РазмещениеЗаявокНаРасходованиеСредств.мТаблицаДвижений = ТаблицаРазмещениеЗаявокНаРасходованиеСредств;
//Движения.РазмещениеЗаявокНаРасходованиеСредств.ВыполнитьРасход();
}
/*// По регистру ""Расчеты с контрагентами"" - расход при возврате, иначе приход
*/
//ТаблицаРасчетыСКонтрагентами = Движения.РасчетыСКонтрагентами.ВыгрузитьКолонки();
if(true/*ТаблицаЗаявкиНаРасходованиеСредств.Количество() > 0*/)
{
//Движения.ЗаявкиНаРасходованиеСредств.мПериод = Дата;
//Движения.ЗаявкиНаРасходованиеСредств.мТаблицаДвижений = ТаблицаЗаявкиНаРасходованиеСредств;
//Движения.ЗаявкиНаРасходованиеСредств.ВыполнитьРасход();
}
if(true/*ТаблицаРасчетыСКонтрагентами.Количество() > 0*/)
{
//Движения.РасчетыСКонтрагентами.мТаблицаДвижений = ТаблицаРасчетыСКонтрагентами;
//Движения.РасчетыСКонтрагентами.ВыполнитьДвижения();
}
}
if(true/*Оплачено И (ОтраженоВОперУчете ИЛИ ПоРасчетномуДокументу)*/)
{
/*// Проводим по фактическим взаиморасчетам
*/
/*// По регистру "Движения денежных средств"
*/
//ТаблицаДвиженияДенежныхСредств = Движения.ДвиженияДенежныхСредств.ВыгрузитьКолонки();
//ДвиженияДенежныхСредств = ТаблицаПлатежейУпр.Скопировать();
if(true/*СтруктураШапкиДокумента.ВедениеУчетаПоПроектам*/)
{
//ДвиженияДенежныхСредств.Свернуть("ДокументПланированияПлатежа,ДоговорКонтрагента,Сделка,ДокументРасчетовСКонтрагентом,ВестиПоДокументамРасчетовСКонтрагентом,СтатьяДвиженияДенежныхСредств,Проект", "СуммаПлатежа,СуммаУпр");
//ДвиженияДенежныхСредств.Колонки["СуммаПлатежа"].Имя = "Сумма";
//УправлениеПроектами.ОтразитьДвиженияПоПроектам(ДвиженияДенежныхСредств, ТаблицаДвиженияДенежныхСредств, Неопределено, ДатаДвижений, "ДенежныеСредстваСписание", Ссылка);
}
/*// Недостающие поля.
*/
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(ВидДенежныхСредств, "ВидДенежныхСредств");
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(Перечисления.ВидыДвиженийПриходРасход.Расход, "ПриходРасход");
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(БанковскийСчетКасса, "БанковскийСчетКасса");
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(Организация, "Организация");
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(Ссылка, "ДокументДвижения");
if(true/*ВидОперации = Перечисления.ВидыОперацийППИсходящее.ПереводНаДругойСчет
ИЛИ ВидОперации = Перечисления.ВидыОперацийСписаниеБезналичныхДенежныхСредств.ПереводНаДругойСчет
ИЛИ (ВидОперации = Перечисления.ВидыОперацийРКО.ВзносНаличнымиВБанк И НЕ ПоОбъявлениюНаВзносНаличными)*/)
{
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(Организация, "Контрагент");
}
//Движения.ДвиженияДенежныхСредств.мПериод = ДатаДвижений;
//Движения.ДвиженияДенежныхСредств.мТаблицаДвижений = ТаблицаДвиженияДенежныхСредств;
//Движения.ДвиженияДенежныхСредств.ВыполнитьДвижения();
if(true/*ВидОперации = Перечисления.ВидыОперацийППИсходящее.ПереводНаДругойСчет
ИЛИ ВидОперации = Перечисления.ВидыОперацийСписаниеБезналичныхДенежныхСредств.ПереводНаДругойСчет
ИЛИ (ВидОперации = Перечисления.ВидыОперацийРКО.ВзносНаличнымиВБанк И НЕ ПоОбъявлениюНаВзносНаличными)*/)
{
//ТаблицаДвиженияДенежныхСредств.Очистить();
/*// Заполним таблицу движений.
*/
if(true/*СтруктураШапкиДокумента.ВедениеУчетаПоПроектам*/)
{
//УправлениеПроектами.ОтразитьДвиженияПоПроектам(ДвиженияДенежныхСредств, ТаблицаДвиженияДенежныхСредств, Неопределено, Дата, "ДенежныеСредства");
}
/*// Недостающие поля.
*/
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(СтруктураПараметров.ВидДенежныхСредствПолучатель, "ВидДенежныхСредств");
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(Перечисления.ВидыДвиженийПриходРасход.Приход, "ПриходРасход");
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(СтруктураПараметров.БанковскийСчетКассаПолучатель, "БанковскийСчетКасса");
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(Организация, "Организация");
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(Ссылка, "ДокументДвижения");
//ТаблицаДвиженияДенежныхСредств.ЗаполнитьЗначения(Организация, "Контрагент");
//Движения.ДвиженияДенежныхСредств.мПериод = ДатаДвижений;
//Движения.ДвиженияДенежныхСредств.мТаблицаДвижений = ТаблицаДвиженияДенежныхСредств;
//Движения.ДвиженияДенежныхСредств.ВыполнитьДвижения();
}
if(true/*РасчетыСКонтрагентами*/)
{
/*// По регистру "ВзаиморасчетыСКонтрагентами" - расход при возврате, иначе приход
*/
//ТаблицаВзаиморасчетыСКонтрагентами = Движения.ВзаиморасчетыСКонтрагентами.ВыгрузитьКолонки();
/*// По регистру "ДенежныеСредстваКомитента" - приход при возврате, иначе расход
*/
//ТаблицаДенежныеСредстваКомитента = Движения.ДенежныеСредстваКомитента.ВыгрузитьКолонки();
//ЕстьРасчетыСКомитентом = Ложь;
//Движения.ВзаиморасчетыСКонтрагентами.мПериод = ДатаДвижений;
//Движения.ВзаиморасчетыСКонтрагентами.мТаблицаДвижений = ТаблицаВзаиморасчетыСКонтрагентами;
if(true/*КоэффициентСторно = 1*/)
{
//Движения.ВзаиморасчетыСКонтрагентами.ВыполнитьПриход();
}
if(true/*ЕстьРасчетыСКомитентом*/)
{
//Движения.ДенежныеСредстваКомитента.мПериод = ДатаДвижений;
//Движения.ДенежныеСредстваКомитента.мТаблицаДвижений = ТаблицаДенежныеСредстваКомитента;
if(true/*КоэффициентСторно = 1*/)
{
//Движения.ДенежныеСредстваКомитента.ВыполнитьРасход();
}
}
}
}
}