public object РасчетыВУсловныхЕдиницахПриобретениеРеализация(/*СтруктураПараметров,ВалютаРегламентированногоУчета,РежимПроведения=Неопределено,ПроводкиБУ,Объект = Null,Отказ=Ложь,УдаляемыеВидыРегОпераций=Неопределено, ПолучатьПроводкиПоСсылке = Ложь*/)
{
if(true/*СтруктураПараметров.Свойство("ТаблицаРегистрации", ТаблицаРегистрации)
И (ТипЗнч(ТаблицаРегистрации) <> Тип("ТаблицаЗначений")
ИЛИ ТаблицаРегистрации.Количество() = 0)*/)
{
//ТаблицаРегистрации = Неопределено;
}
if(true/*ТаблицаРегистрации = Неопределено*/)
{
}
//Ссылка = СтруктураПараметров.Регистратор;
//ВидДокумента = СтруктураПараметров.ВидДокумента;
//ДатаДока = СтруктураПараметров.Период;
//Заголовок = "";
//СтруктураПараметров.Свойство("Заголовок", Заголовок);
if(true/*НЕ ЗначениеЗаполнено(Заголовок)*/)
{
//Заголовок = ОбщегоНазначения.ПредставлениеДокументаПриПроведении(Ссылка);
}
/*//////////////////////////////////////////////////////////////////////////////////////////
*/
/*// Подменим документ расчетов для "Корректировка поступления" и "Корректировка реализации"
*/
if(true/*ВидДокумента = "КорректировкаПоступления"*/)
{
//ДокументРасчетов = УчетНДС.ПолучитьИсправляемыйДокументПоступления(Ссылка, Истина);
}
//ДоговорКонтрагента = СтруктураПараметров.ДоговорКонтрагента;
//СчетОплаты = СтруктураПараметров.СчетУчетаРасчетовСКонтрагентом;
//СчетАванса = СтруктураПараметров.СчетУчетаРасчетовПоАвансам;
//ОценкаДоходовРасходовПоКурсуАвансов = ПолучитьОценкуДоходовРасходовПоКурсуАвансов(ДатаДока);
/*//Проверка правильности заполнения реквизитов документа
*/
/*ПокупкиПродажи = ПроверкаРасчетыВУсловныхЕдиницах(СтруктураПараметров,
ДоговорКонтрагента, СчетОплаты, СчетАванса, ВалютаРегламентированногоУчета, Отказ, Заголовок, Истина);*/
if(true/*ПокупкиПродажи = Ложь*/)
{
}
//Организация = СтруктураПараметров.Организация;
//Контрагент = СтруктураПараметров.Контрагент;
//ВалютаВзаиморасчетов = СтруктураПараметров.ВалютаВзаиморасчетов;
//КурсРасчетов = СтруктураПараметров.КурсВзаиморасчетов;
//КратностьРасчетов = СтруктураПараметров.КратностьВзаиморасчетов;
//ВалютаДокумента = СтруктураПараметров.ВалютаДокумента;
//КурсДокумента = СтруктураПараметров.КурсДокумента;
//КратностьДокумента = СтруктураПараметров.КратностьДокумента;
//ЭтоВозврат = (СтруктураПараметров.РасчетыВозврат=Перечисления.РасчетыВозврат.Возврат);
//ЗнакОстатка = ?(ЭтоВозврат, -1, 1);
//ВидРегОперацииКорр = Перечисления.ВидыРегламентныхОпераций.КорректировкиПриВалютныхРасчетах;
if(true/*СтруктураПараметров.Свойство("НДСВключенВСтоимость") И ТипЗнч(СтруктураПараметров.НДСВключенВСтоимость) = Тип("Булево")*/)
{
//НДСВключенВСтоимость = СтруктураПараметров.НДСВключенВСтоимость;
}
/*ЕстьТаблицаПоВзаиморасчетам = СтруктураПараметров.ВестиПоДокументамРасчетовСКонтрагентом
И СтруктураПараметров.Свойство("ТаблицаПоВзаиморасчетам")
И ТипЗнч(СтруктураПараметров.ТаблицаПоВзаиморасчетам) = Тип("ТаблицаЗначений");*/
if(true/*ЕстьТаблицаПоВзаиморасчетам*/)
{
//ТаблицаПоВзаиморасчетам = СтруктураПараметров.ТаблицаПоВзаиморасчетам.Скопировать();
if(true/*ЭтоВозврат*/)
{
//УправлениеВзаиморасчетами.ИзменитьЗнакКолонокТаблицы(ТаблицаПоВзаиморасчетам, Новый Структура("СуммаВзаиморасчетов, СуммаРегл, СуммаУпр"));
}
//ТаблицаПоВзаиморасчетам.Колонки.СуммаРегл.Имя = "СуммаРег";
//ТаблицаПоВзаиморасчетам.Колонки.ДокументРасчетовСКонтрагентом.Имя = "Документ";
//НетСделкиВТаблице = ТаблицаПоВзаиморасчетам.Колонки.Найти("Сделка") = Неопределено;
if(true/*НетСделкиВТаблице*/)
{
/*ТаблицаПоВзаиморасчетам.Колонки.Добавить("Сделка", Новый ОписаниеТипов("ДокументСсылка.ЗаказПокупателя, ДокументСсылка.ЗаказПоставщику,
|ДокументСсылка.СчетНаОплатуПокупателю, ДокументСсылка.СчетНаОплатуПоставщика, Неопределено"), "Сделка");*/
}
if(true/*СтруктураПараметров.ВедениеВзаиморасчетов = Перечисления.ВедениеВзаиморасчетовПоДоговорам.ПоДоговоруВЦелом*/)
{
//ТаблицаПоВзаиморасчетам.ЗаполнитьЗначения(Неопределено, "Сделка");
}
if(true/*ВалютаВзаиморасчетов = ВалютаРегламентированногоУчета*/)
{
//ТаблицаПоВзаиморасчетам.ЗагрузитьКолонку(ТаблицаПоВзаиморасчетам.ВыгрузитьКолонку("СуммаВзаиморасчетов"), "СуммаРег");
}
}
if(true/*ТаблицаРегистрации.Колонки.Найти("НДСВал") = Неопределено*/)
{
//ТаблицаРегистрации.Колонки.Добавить("НДСВал", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15,2)));
if(true/*не ТаблицаРегистрации.Итог("СуммаНДС") = 0*/)
{
}
}
//ТаблицаСделокДокумента = ТаблицаРегистрации.Скопировать();
//ТаблицаСделокДокумента.Свернуть("Сделка", "СуммаВзаиморасчетов, СуммаСНДС, НДСВал, СуммаНДС");
if(true/*СтруктураПараметров.ВедениеВзаиморасчетов = Перечисления.ВедениеВзаиморасчетовПоДоговорам.ПоДоговоруВЦелом*/)
{
//ТаблицаСделокДокумента.ЗаполнитьЗначения(Неопределено, "Сделка");
}
//ВызванРегламентнойПроцедурой = (Объект = Null);
if(true/*ВызванРегламентнойПроцедурой*/)
{
//СтруктураДвижений = Новый Структура;
}
/*//Определяем образ действий (on/off-line)
*/
if(true/*НЕ ВызванРегламентнойПроцедурой И НЕ СтруктураПараметров.Свойство("ОпределятьАвансыПриПроведенииДокумента")*/)
{
//УчетнаяПолитика = ОбщегоНазначения.ПолучитьПараметрыУчетнойПолитикиРегл(ДатаДока, Организация);
//СтруктураПараметров.Вставить("ОпределятьАвансыПриПроведенииДокумента",?(НЕ ЗначениеЗаполнено(УчетнаяПолитика), Истина, УчетнаяПолитика.ОпределятьАвансыПриПроведенииДокумента));
}
//УчитыватьАванс = (ВызванРегламентнойПроцедурой ИЛИ СтруктураПараметров.ОпределятьАвансыПриПроведенииДокумента) И ЗначениеЗаполнено(СчетАванса);
if(true/*ЕстьТаблицаПоВзаиморасчетам И УчитыватьАванс*/)
{
//ТаблицаПоВзаиморасчетам.Свернуть("Сделка, Документ, ДатаОплаты", "СуммаВзаиморасчетов, СуммаРег");
}
/*//Получаем записи регистра, по которому отслеживается изменение состояния расчетов по документу
*/
if(true/*ВызванРегламентнойПроцедурой*/)
{
//ДвиженияПоРегиструУЕ = ОбщегоНазначения.ПолучитьНаборЗаписейПоСсылке(Ссылка, РегистрыНакопления[?(покупки, "РасчетыПоПриобретениюВУсловныхЕдиницахОрганизации", "РасчетыПоРеализацииВУсловныхЕдиницахОрганизации")]);
}
if(true/*ДвиженияПоРегиструУЕ = Неопределено*/)
{
}
if(true/*ВызванРегламентнойПроцедурой*/)
{
//СтруктураДвижений.Вставить("ДвиженияПоРегиструУЕ", ДвиженияПоРегиструУЕ);
}
/*// Создание таблицы для последующего отражения расчетов по НДС.
*/
//ТаблицаАвансовДляНДС = Новый ТаблицаЗначений();
//ТаблицаАвансовДляНДС.Колонки.Добавить("ДокументОплаты", Документы.ТипВсеСсылки());
//ТаблицаАвансовДляНДС.Колонки.Добавить("СчетФактура", Документы.ТипВсеСсылки());
//ТаблицаАвансовДляНДС.Колонки.Добавить("РублеваяСумма", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15,2)));
//ТаблицаАвансовДляНДС.Колонки.Добавить("СуммаВал", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15,2)));
//ТаблицаАвансовДляНДС.Колонки.Добавить("КурсоваяРазница",Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15,2)));
if(true/*ЭтоВозврат*/)
{
//ТаблицаАвансовДляНДС.Колонки.Добавить("ДокументРасчетов");
}
//ТаблицаАвансовДляНДС.Колонки.Добавить("Контрагент", новый ОписаниеТипов("СправочникСсылка.Контрагенты"));
//ТаблицаАвансовДляНДС.Колонки.Добавить("ДоговорКонтрагента",новый ОписаниеТипов("СправочникСсылка.ДоговорыКонтрагентов"));
//ТаблицаАвансовДляНДС.Колонки.Добавить("ВалютаВзаиморасчетов", Новый ОписаниеТипов("СправочникСсылка.Валюты"));
/*//Сокращенная схема в случае off-line проведения
*/
if(true/*НЕ УчитыватьАванс*/)
{
//ТаблицаДвиженийПоРегиструУЕ = ДвиженияПоРегиструУЕ.ВыгрузитьКолонки();
//ТаблицаДвиженийПоРегиструУЕ.ЗаполнитьЗначения(ДатаДока, "Период");
//ТаблицаДвиженийПоРегиструУЕ.ЗаполнитьЗначения(Истина, "Активность");
//ТаблицаДвиженийПоРегиструУЕ.ЗаполнитьЗначения(ВидДвиженияНакопления.Расход, "ВидДвижения");
//ТаблицаДвиженийПоРегиструУЕ.ЗаполнитьЗначения(ДоговорКонтрагента, "ДоговорКонтрагента");
//ТаблицаДвиженийПоРегиструУЕ.ЗаполнитьЗначения(Контрагент, "Контрагент");
//ТаблицаДвиженийПоРегиструУЕ.ЗаполнитьЗначения(Организация, "Организация");
if(true/*(ВызванРегламентнойПроцедурой ИЛИ СтруктураПараметров.ОпределятьАвансыПриПроведенииДокумента)*/)
{
//ТаблицаДвиженийПоРегиструУЕ.ЗаполнитьЗначения(ДокументРасчетов, "Документ");
}
//ТаблицаДвиженийПоРегиструУЕ.ЗаполнитьЗначения(СчетОплаты, "СчетОплаты");
//ДвиженияПоРегиструУЕ.Загрузить(ТаблицаДвиженийПоРегиструУЕ);
}
/*//Полная схема проведения (on-line)
*/
//СуммоваяРазница = 0;
//СуммаАвансаРег = СтруктураПараметров.СуммаАвансаРег;
//СуммаАвансаВал = СтруктураПараметров.СуммаАвансаВал;
/*РасчетыВВалюте2008 = (ДатаДока >= '20080101')
И ВалютаВзаиморасчетов <> ВалютаРегламентированногоУчета
И НЕ СтруктураПараметров.РасчетыВУсловныхЕдиницах;*/
//ФормироватьПроводкиПоСчетуВАЛ = Не ОценкаДоходовРасходовПоКурсуАвансов И РасчетыВВалюте2008 И НЕ СтруктураПараметров.ОрганизацияПрименяетУСН;
if(true/*ЕстьТаблицаПоВзаиморасчетам И НЕ ВызванРегламентнойПроцедурой*/)
{
/*// Оставляем в таблице взаиморасчетов по документам только строки авансов
*/
//СтрокиНеАвансов = ТаблицаПоВзаиморасчетам.НайтиСтроки(Новый Структура("Документ", Ссылка));
}
/*// Обработаем закрытие задолженности и сформируем курсовые (суммовые) разницы
*/
//СуммаДокументаВал = 0;
//СуммаДокументаРег = 0;
if(true/*РасчетыВВалюте2008*/)
{
/*// курс на 31.12.2007 для зачета в 2008 году авансов 2007 года
*/
//КурсыВалют20071231 = Новый Соответствие;
}
/*// Отражение в НДС по реализации 0%
*/
if(true/*ДатаДока < '20111001'*/)
{
/*// По операциям реализации со ставкой 0%, совершенным начиная с 01.10.2011, налоговая база по НДС
*/
/*// определяется по курсу на дату реализации и не корректируется с учетом курса зачтенных авансов
*/
//НаправлениеДвиженийДляНДС = ОпределениеНаправленияДвиженияДляДокументаПриобретенияРеализации(СтруктураПараметров.ВидДокумента, СтруктураПараметров.ВидОперации);
if(true/*НаправлениеДвиженийДляНДС.Направление = "Выбытие"
И НаправлениеДвиженийДляНДС.РасчетыВозврат = Перечисления.РасчетыВозврат.Расчеты*/)
{
/*//Удалим из СтруктураПараметров элемент "ПроводкиНУ", "Налоговый", чтобы избежать передачи мутабельного значения в модуль УчетНДСФормированиеДвижений
*/
//ВремПроводкиНУ = Неопределено;
//ВремНалоговый = Неопределено;
if(true/*СтруктураПараметров.Свойство("ПроводкиНУ")*/)
{
//ВремПроводкиНУ = СтруктураПараметров.ПроводкиНУ;
//СтруктураПараметров.Удалить("ПроводкиНУ");
}
if(true/*СтруктураПараметров.Свойство("Налоговый")*/)
{
//ВремНалоговый = СтруктураПараметров.Налоговый;
//СтруктураПараметров.Удалить("Налоговый");
}
//УчетНДСФормированиеДвижений.СформироватьДвиженияПоРегиструНДСРеализация0_КурсовыеРазницы(СтруктураПараметров, ТаблицаАвансовДляНДС, Отказ);
/*//Добавим в СтруктураПараметров удаленный ранее элемент ПроводкиНУ, Налоговый
*/
if(true/*ВремПроводкиНУ <> Неопределено*/)
{
//СтруктураПараметров.Вставить("ПроводкиНУ", ВремПроводкиНУ);
//ВремПроводкиНУ = Неопределено;
}
if(true/*ВремНалоговый <> Неопределено*/)
{
//СтруктураПараметров.Вставить("Налоговый", ВремНалоговый);
//ВремНалоговый = Неопределено;
}
}
}
//СуммаРасхожденийВал = ?(ЭтоВозврат И Продажи, СуммаДокументаВал, СуммаАвансаВал);
//СуммаРасхожденийРег = ?(ЭтоВозврат И Продажи, СуммаДокументаРег, СуммаАвансаРег);
//НужнаПроводкаПоАвансу = (СуммаРасхожденийВал <> 0 ИЛИ СуммаРасхожденийРег <> 0) И (НЕ СчетОплаты = СчетАванса);
if(true/*ЭтоВозврат*/)
{
if(true/*Покупки*/)
{
//СодержаниеОперации = "Возврат поставщику (неоплаченная часть)";
}
}
/*// Корректируем сумму зачтенного аванса по состоянию расчетов на регистре
*/
if(true/*НужнаПроводкаПоАвансу*/)
{
//Проводка = ПроводкиБУ.Добавить();
//Проводка.Период = ДатаДока;
//Проводка.Организация = Организация;
//Проводка.Содержание = СодержаниеОперации;
//Проводка.ВидРегламентнойОперации = ВидРегОперацииКорр;
if(true/*Покупки*/)
{
//Проводка.СчетДт = СчетОплаты;
//Проводка.СчетКт = СчетАванса;
}
//БухгалтерскийУчет.УстановитьСубконто(Проводка.СчетДт, Проводка.СубконтоДт, "Контрагенты" ,Контрагент);
//БухгалтерскийУчет.УстановитьСубконто(Проводка.СчетДт, Проводка.СубконтоДт, "Договоры" ,ДоговорКонтрагента);
//БухгалтерскийУчет.УстановитьСубконто(Проводка.СчетКт, Проводка.СубконтоКт, "Контрагенты" ,Контрагент);
//БухгалтерскийУчет.УстановитьСубконто(Проводка.СчетКт, Проводка.СубконтоКт, "Договоры" ,ДоговорКонтрагента);
if(true/*СтруктураПараметров.РасчетыВУсловныхЕдиницах ИЛИ РасчетыВВалюте2008*/)
{
//Проводка.Сумма = -СуммаРасхожденийРег;
}
if(true/*ВалютаВзаиморасчетов <> ВалютаРегламентированногоУчета*/)
{
if(true/*Проводка.СчетДт.Валютный*/)
{
//Проводка.ВалютаДт = ВалютаВзаиморасчетов;
//Проводка.ВалютнаяСуммаДт = -СуммаРасхожденийВал;
}
if(true/*Проводка.СчетКт.Валютный*/)
{
//Проводка.ВалютаКт = ВалютаВзаиморасчетов;
//Проводка.ВалютнаяСуммаКт = -СуммаРасхожденийВал;
}
}
/*// В 2008 году при зачете валютного аванса одновремено закрываем счет ВАЛ
*/
if(true/*ФормироватьПроводкиПоСчетуВАЛ*/)
{
//Проводка = ПроводкиБУ.Добавить();
//Проводка.Период = ДатаДока;
//Проводка.Организация = Организация;
//Проводка.Содержание = СодержаниеОперации;
//Проводка.ВидРегламентнойОперации = ВидРегОперацииКорр;
if(true/*Покупки*/)
{
//Проводка.СчетКт = ПланыСчетов.Хозрасчетный.АвансыПоставщикамВВалюте;
//БухгалтерскийУчет.УстановитьСубконто(Проводка.СчетКт, Проводка.СубконтоКт, "Контрагенты" ,Контрагент);
//БухгалтерскийУчет.УстановитьСубконто(Проводка.СчетКт, Проводка.СубконтоКт, "Договоры" ,ДоговорКонтрагента);
//Проводка.ВалютаКт = ВалютаВзаиморасчетов;
//Проводка.ВалютнаяСуммаКт = -СуммаРасхожденийВал;
}
/*Проводка.Сумма = МодульВалютногоУчета.ПересчитатьИзВалютыВВалюту(-СуммаРасхожденийВал,
ВалютаВзаиморасчетов, ВалютаРегламентированногоУчета,
КурсРасчетов, 1,
КратностьРасчетов, 1);*/
}
}
/*// Распределение курсовой (суммовой) разницы, формирование корректирующих движений
*/
/*// выполняется только при восстановлении последовательности расчетов
*/
if(true/*НЕ ВызванРегламентнойПроцедурой*/)
{
}
if(true/*НЕ (СтруктураПараметров.РасчетыВУсловныхЕдиницах ИЛИ РасчетыВВалюте2008)
ИЛИ СуммоваяРазница = 0*/)
{
}
//СуммоваяРазницаПоДокументам = Новый ТаблицаЗначений();
//СуммоваяРазницаПоДокументам.Колонки.Добавить("Регистратор");
//СуммоваяРазницаПоДокументам.Колонки.Добавить("СуммоваяРазница",Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15,2)));
//СуммоваяРазницаПоДокументам.Колонки.Добавить("Документ", Документы.ТипВсеСсылки());
//СуммоваяРазницаПоДокументам.Колонки.Добавить("Контрагент", Новый ОписаниеТипов("СправочникСсылка.Контрагенты"));
//СуммоваяРазницаПоДокументам.Колонки.Добавить("ДоговорКонтрагента", Новый ОписаниеТипов("СправочникСсылка.ДоговорыКонтрагентов"));
//СуммоваяРазницаПоДокументам.Колонки.Добавить("ВалютаВзаиморасчетов", Новый ОписаниеТипов("СправочникСсылка.Валюты"));
//СтрокаСуммовыхРазниц = СуммоваяРазницаПоДокументам.Добавить();
//СтрокаСуммовыхРазниц.Регистратор = Ссылка;
//СтрокаСуммовыхРазниц.СуммоваяРазница = -СуммоваяРазница;
//СтрокаСуммовыхРазниц.Документ = Ссылка;
//СтрокаСуммовыхРазниц.Контрагент = Контрагент;
//СтрокаСуммовыхРазниц.ДоговорКонтрагента = ДоговорКонтрагента;
//СтрокаСуммовыхРазниц.ВалютаВзаиморасчетов = ДоговорКонтрагента.ВалютаВзаиморасчетов;
/*ИспользоватьРасширеннуюАналитику = глЗначениеПеременной("ИспользоватьРасширеннуюАналитикуУчетаНоменклатурыИЗатрат")
И (глЗначениеПеременной("ДатаНачалаИспользованияРасширеннойАналитикиУчетаНоменклатурыИЗатрат") <= ДатаДока);*/
if(true/*РасчетыВВалюте2008*/)
{
if(true/*Не СтруктураПараметров.УчетАгентскогоНДС
Или Продажи*/)
{
/*// Расчеты в иностранной валюте. Корректируется только стоимость без НДС или выручка по данным БУ.
*/
/*// Суммы НДС и налогового учета (НУ) не корректируются. В налоговом учете сумма корректировки становится постоянной разницей.
*/
/*//Подготовка таблицы распределения
*/
//ТаблицаРаспределенияСР = Новый ТаблицаЗначений();
//ТаблицаРаспределенияСР.Колонки.Добавить("Регистратор");
//ТаблицаРаспределенияСР.Колонки.Добавить("СуммаСНДС", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15,2)));
//ТаблицаРаспределенияСР.Колонки.Добавить("СуммаНДС", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15,2)));
//СтрокаКРаспределнию = ТаблицаРаспределенияСР.Добавить();
//СтрокаКРаспределнию.Регистратор = Ссылка;
//СтрокаКРаспределнию.СуммаСНДС = -СуммоваяРазница;
//СтрокаКРаспределнию.СуммаНДС = 0;
//Распределение = Новый структура("СуммаСНДС");
//ИсключитьБазовый = Новый структура("Активность,МоментВремени,НомерСтроки,НомерСтрокиДокумента,СуммаВзаиморасчетов,ДатаЗаписи,ВидРегламентнойОперации,РегламентныйДокумент,СуммаНДС");
//ТаблицаРаспределенияСР = ОбщегоНазначения.СформироватьКорректирующиеЗаписи(ТаблицаРаспределенияСР,ТаблицаРегистрации,Распределение,,ИсключитьБазовый);
//ТаблицаРаспределенияСР.Колонки.Добавить("СуммаБезНДС",Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15,2)));
//Дополнение = Новый Структура ("ВидРегламентнойОперации",ВидРегОперацииКорр);
/*//Подготовка таблицы распределения
*/
/*//Движения по бухгалтерскому учету
*/
//ТаблицаПроводок = ОбщегоНазначения.ПолучитьНаборЗаписейПоСсылке(Ссылка, РегистрыБухгалтерии["Хозрасчетный"], Истина);
//ТаблицаПроводокБУ = ТаблицаПроводок.Выгрузить();
//ИсключитьБазовый.Удалить("Активность");
//ИсключитьБазовый.Удалить("МоментВремени");
//ТаблицаПроводокБУ = БухгалтерскийУчет.УпорядочитьСубконтоДляВыгрузкиНабораЗаписейРегистраБухгалтерии(ТаблицаПроводокБУ);
//ИсключитьБазовый.Вставить("КоличествоДт");
//ИсключитьБазовый.Вставить("КоличествоКт");
//ИсключитьБазовый.Вставить("ВалютнаяСуммаДт");
//ИсключитьБазовый.Вставить("ВалютнаяСуммаКт");
//ИсключитьБазовый.Вставить("Содержание");
//СуфиксСчетаРасчетов = ?(Покупки,"Кт","Дт");
//СуфиксСчетаУчета = ?(Покупки,"Дт","Кт");
//Дополнение.Вставить("Содержание","Корректировка "+?(Покупки,"стоимости ","выручки ")+"по расчетам в валюте");
/*//По основным проводкам БУ
*/
//СтруктураОтбора = Новый Структура("Организация");
//СтруктураОтбора.Вставить("Счет"+СуфиксСчетаУчета,"КоррСчет");
//СтруктураОтбора.Вставить("Субконто"+СуфиксСчетаУчета+"1","КоррСубконто1");
//СтруктураОтбора.Вставить("Субконто"+СуфиксСчетаУчета+"2","КоррСубконто2");
//СтруктураОтбора.Вставить("Субконто"+СуфиксСчетаУчета+"3","КоррСубконто3");
//СтруктураОтбора.Вставить("Счет"+СуфиксСчетаРасчетов,"СчетОплаты");
if(true/*Покупки*/)
{
//Распределение = Новый Структура("Сумма",?(НДСВключенВСтоимость,"СуммаСНДС","СуммаБезНДС"));
}
/*// Для реализации комиссионных товаров корсчет и корсубконто в проводках будут отличаться от тех
*/
/*// значений, которые записаны в регистре сведений "Расчеты по реализации организаций", т.к. факт
*/
/*// продажи комиссионного товара определяется в момент списания товара, а не в момент проведения документа реалиазации.
*/
/*// Поэтому необходимо разделение проводок вида Дт 62 - Кт 90 по собственным товарам и Дт 62 - Кт 76 по комиссионным товарам.
*/
//ТаблицыРеализацииСобственныхИКомиссионых = Новый Структура();
//ТаблицыРеализацииСобственныхИКомиссионых.Вставить("ТаблицаРаспределенияСР_Собственный", ТаблицаРаспределенияСР);
//ТаблицыРеализацииСобственныхИКомиссионых.Вставить("ТаблицаРаспределенияСР_Комиссионный", ТаблицаРаспределенияСР.СкопироватьКолонки());
//ТаблицыРеализацииСобственныхИКомиссионых.Вставить("ТаблицаПроводокБУ_Собственный", ТаблицаПроводокБУ);
//ТаблицыРеализацииСобственныхИКомиссионых.Вставить("ТаблицаПроводокБУ_Комиссионный", ТаблицаПроводокБУ.СкопироватьКолонки());
if(true/*НЕ Покупки*/)
{
//ТаблицыРеализацииСобственныхИКомиссионых = РазделитьРеализациюСобственногоИКомиссионногоТовара(ТаблицаРаспределенияСР, ТаблицаПроводокБУ, СтруктураОтбора);
/*ПоОсновнымПроводкам = ОбщегоНазначения.СформироватьКорректирующиеЗаписи(ТаблицыРеализацииСобственныхИКомиссионых.ТаблицаРаспределенияСР_Собственный,
ТаблицыРеализацииСобственныхИКомиссионых.ТаблицаПроводокБУ_Собственный,
Распределение,СтруктураОтбора,ИсключитьБазовый,Дополнение);*/
//БухгалтерскийУчет.ДополнитьНаборЗаписейРегистраЗаписямиТаблицы(ПроводкиБУ , ПоОсновнымПроводкам);
/*// Реализацию комиссионного товара сопоставляем без учета кор. субконто.
*/
//СтруктураОтбора.Удалить("Счет"+СуфиксСчетаУчета);
//СтруктураОтбора.Удалить("Субконто"+СуфиксСчетаУчета+"1");
//СтруктураОтбора.Удалить("Субконто"+СуфиксСчетаУчета+"2");
//СтруктураОтбора.Удалить("Субконто"+СуфиксСчетаУчета+"3");
/*ПоОсновнымПроводкам = ОбщегоНазначения.СформироватьКорректирующиеЗаписи(ТаблицыРеализацииСобственныхИКомиссионых.ТаблицаРаспределенияСР_Комиссионный,
ТаблицыРеализацииСобственныхИКомиссионых.ТаблицаПроводокБУ_Комиссионный,
Распределение,СтруктураОтбора,ИсключитьБазовый,Дополнение);*/
//БухгалтерскийУчет.ДополнитьНаборЗаписейРегистраЗаписямиТаблицы(ПроводкиБУ , ПоОсновнымПроводкам);
}
}
//ТребуетсяКорректировкаПОНУ = Истина;
if(true/*НЕ СтруктураПараметров.ПоддержкаПБУ18*/)
{
if(true/*НЕ ОценкаДоходовРасходовПоКурсуАвансов*/)
{
//ТребуетсяКорректировкаПОНУ = ЛОжь;
}
}
/*//По НУ
*/
if(true/*СтруктураПараметров.ОтражатьВНалоговомУчете И ТребуетсяКорректировкаПОНУ*/)
{
/*//Распределение по проводкам НУ
*/
//ПроводкиНУ = СтруктураПараметров.ПроводкиНУ;
//ТаблицаПроводок = ОбщегоНазначения.ПолучитьНаборЗаписейПоСсылке(Ссылка, РегистрыБухгалтерии["Налоговый"], Истина);
//ТаблицаПроводокНУ = ТаблицаПроводок.Выгрузить();
//ТаблицаПроводокНУ = БухгалтерскийУчет.УпорядочитьСубконтоДляВыгрузкиНабораЗаписейРегистраБухгалтерии(ТаблицаПроводокНУ);
//ИсключитьБазовый.Вставить("КоличествоДт");
//ИсключитьБазовый.Вставить("КоличествоКт");
//ИсключитьБазовый.Вставить("ВалютнаяСуммаДт");
//ИсключитьБазовый.Вставить("ВалютнаяСуммаКт");
//СуфиксСчетаРасчетов = ?(Покупки,"Кт","Дт");
//СуфиксСчетаУчета = ?(Покупки,"Дт","Кт");
/*//По основным проводкам
*/
//СтруктураОтбора = Новый Структура("Организация");
//СтруктураОтбора.Вставить("Счет"+СуфиксСчетаУчета,"СчетУчетаНУ");
//СтруктураОтбора.Вставить("Субконто"+СуфиксСчетаУчета+"1","СубконтоНУ1");
//СтруктураОтбора.Вставить("Субконто"+СуфиксСчетаУчета+"2","СубконтоНУ2");
//СтруктураОтбора.Вставить("Субконто"+СуфиксСчетаУчета+"3","СубконтоНУ3");
//Распределение = Новый Структура("Сумма",?(НДСВключенВСтоимость,"СуммаСНДС","СуммаБезНДС"));
//Дополнение.Вставить("Содержание","Корректировка "+?(Покупки,"стоимости ","выручки ")+"по расчетам в валюте");
//ПоПроводкамНУ = ОбщегоНазначения.СформироватьКорректирующиеЗаписи(ТаблицаРаспределенияСР,ТаблицаПроводокНУ,Распределение,СтруктураОтбора,ИсключитьБазовый,Дополнение);
//СчетПВ = ПланыСчетов.Налоговый.ПоступлениеИВыбытиеИмуществаРаботУслугПрав;
//БухгалтерскийУчет.ДополнитьНаборЗаписейРегистраЗаписямиТаблицы(ПроводкиНУ, ПоПроводкамНУ);
}
/*//По НУ
*/
if(true/*Продажи*/)
{
if(true/*ИспользоватьРасширеннуюАналитику*/)
{
//СтруктураСумм = Новый Структура;
//СтруктураСумм.Вставить("Стоимость", -СуммоваяРазница);
//СтруктураСумм.Вставить("СтоимостьНУ", 0);
//СтруктураСумм.Вставить("Корректировка", -СуммоваяРазница);
//УправлениеЗапасамиРасширеннаяАналитика.СформироватьДвиженияПоПереоценкеТоваровРеализация(Ссылка, СтруктураСумм);
}
}
/*//Для покупок - дополнительные движения
*/
if(true/*ИспользоватьРасширеннуюАналитику*/)
{
//СтруктураСумм = Новый Структура;
//СтруктураСумм.Вставить("Стоимость", -СуммоваяРазница);
if(true/*ОценкаДоходовРасходовПоКурсуАвансов*/)
{
//СтруктураСумм.Вставить("СтоимостьНУ", -СуммоваяРазница);
//СтруктураСумм.Вставить("ПостояннаяРазница", 0);
}
//УправлениеЗапасамиРасширеннаяАналитика.СформироватьДвиженияПоПереоценкеТоваров(Ссылка, СтруктураСумм);
}
}
return null;
}