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