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