Бухгалтерский учет, налогообложение, отчетность, МСФО, анализ бухгалтерской информации, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

Кто изменял закрытие 25 счета отзовитесь! Интересуют проводки по НУ!

gkvgkv
читатель
офлайн
Дата регистрации: 24.10.2008
Сообщений: 1
Пост №1
 
21.01.2009 19:27

"На 25 счете есть затраты по разным подразделениям. При закрытии месяца надо распределить эти затраты пропорционально зарплате по подразделениям. Стандартно документ закрытие месяца делает списание «само на себя», а нам надо, чтобы затраты по некоторым подразделениям распределялись между определенными подразделениями. Например затраты по цеху 1 списать на участок 2, участок 3, участок 5, а затраты по цеху 2 списать на участок 1, участок 4, участок 6. Т.е. это отдельный документ, который проводится перед документом «Закрытие месяца». А после этого документ закрытие месяца уже закрывает то, что осталось на 25 счете стандартно «само на себя». Т.е. скажем к затратам на 20 счете по участку 2 которые появились от цеха 1 добавятся непосредственные затраты участка 2.
Все бы ничего, если бы не налоговый учет. Описанную выше схему по бух. учету я как смог реализовал, в 7-ке я это уже делал но без реализации налогового учета. Из документа закрытие месяца ничего не понятно как эти налоговые проводки устроены. получаесят что по БУ одна проводка а по НУ три: сприсанеие косвенных расходов, распределение ОХР и ОПР и корректировна выпуска продукции по моему. Может у кого есть предложения или наработки.
Вот как выглядит то, о чем я говорю для бух учета. На форме документа выбираем организацию и в табличной части подразделения, которые закрываются нестандартно. В модуле тупо прописано, какие подразделения, на какие закрываются, так как это будет неизменно.
В запросе пока период не определен.
Перем Операция;
Функция ОпределитьБазуБУ(Подразделение) //Определяем базу, т.е. з/п
Запрос=Новый Запрос;
Запрос.УстановитьПараметр("Счет20", ПланыСчетов.Хозрасчетный.ОсновноеПроизводство);
Запрос.УстановитьПараметр("счет70", ПланыСчетов.Хозрасчетный.РасчетыСПерсоналомПоОплатеТруда);
Запрос.УстановитьПараметр("Подразделение", Подразделение);
Запрос.УстановитьПараметр("Организация", Организация);

Запрос.Текст=
"ВЫБРАТЬ
| ХозрасчетныйОбороты.Счет,
| ХозрасчетныйОбороты.КорСчет,
| ХозрасчетныйОбороты.Субконто1 как Подразделение,
| ХозрасчетныйОбороты.Субконто2 как Номенклатура,
| ХозрасчетныйОбороты.Субконто3 как СтатьиЗатрат,
| ХозрасчетныйОбороты.СуммаОборот как Сумма,
| ХозрасчетныйОбороты.Организация
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.Обороты(, , , Счет = &Счет20, &ТипыСубконт, , КорСчет = &Счет70) КАК ХозрасчетныйОбороты
|Где
| Субконто1 = &Подразделение

| Организация = &Организация";

ТипыСубконт=Новый Массив;
ТипыСубконт.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Подразделения);
ТипыСубконт.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НоменклатурныеГруппы);
ТипыСубконт.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.СтатьиЗатрат);
Запрос.УстановитьПараметр("ТипыСубконт",ТипыСубконт);
РезультатЗапроса = Запрос.Выполнить();
Возврат РезультатЗапроса;

КонецФункции

Процедура РаспределитьРаспределитьБУ(БазаРаспределения, ТаблицаБазыРаспределения, СуммаСписания, СтВ)

Для каждого Эл из ТаблицаБазыРаспределения Цикл
Коэффициент = Число(Эл.Сумма)/Число(БазаРаспределения);
Сообщить(СуммаСписания*Коэффициент);

НоваяПроводка = Операция.Добавить();
НоваяПроводка.Организация = Организация;
НоваяПроводка.Активность = Истина;
НоваяПроводка.Период      = Дата;
НоваяПроводка.Содержание = "ПроверкаРаспределения";
НоваяПроводка.Сумма = СуммаСписания*Коэффициент;
НоваяПроводка.СчетДт = ПланыСчетов.Хозрасчетный.ОсновноеПроизводство;
ОбщегоНазначения.УстановитьСубконто(НоваяПроводка.СчетДт, НоваяПроводка.СубконтоДт, 1, Эл.Подразделение);
ОбщегоНазначения.УстановитьСубконто(НоваяПроводка.СчетДт, НоваяПроводка.СубконтоДт, 2, Эл.Номенклатура);
ОбщегоНазначения.УстановитьСубконто(НоваяПроводка.СчетДт, НоваяПроводка.СубконтоДт, 3, СтВ.СтатьиЗатрат);
//Если СтруктураШапкиДокумента.ОтражатьВНалоговомУчете Тогда
// НоваяПроводка.ВидУчетаДт = СтруктураДопПараметров.ВидУчетаПБУ18;
// СчетКт = Обход.СчетЗатратНУ;
//Иначе
// СчетКт = Обход.СчетЗатрат;
//КонецЕсли;
НоваяПроводка.СчетКт = ПланыСчетов.Хозрасчетный.ОбщепроизводственныеРасходы;
ОбщегоНазначения.УстановитьСубконто(НоваяПроводка.СчетКт, НоваяПроводка.СубконтоКт, 1, СтВ.Подразделение);
ОбщегоНазначения.УстановитьСубконто(НоваяПроводка.СчетКт, НоваяПроводка.СубконтоКт, 2, СтВ.СтатьиЗатрат);
//Если СтруктураШапкиДокумента.ОтражатьВНалоговомУчете Тогда
// НоваяПроводка.ВидУчетаКт = СтруктураДопПараметров.ВидУчетаПБУ18;
//КонецЕсли;
//РаспределениеВыполнено = Истина;

//Записываем порциями(в случае большого количество проводок)
//Если Операция.Количество() >= 10000 Тогда
//Операция.Записать(Ложь);
//КонецЕсли;
КонецЦикла;
КонецПроцедуры

Процедура РаспределитьБУ(СуммаСписания,Ств,Подр1,Подр2,Подр3)

ТаблицаБазыРаспределения1 = ОпределитьБазуБУ(Подр1).Выгрузить();
БазаРаспределения1 = ТаблицаБазыРаспределения1.Итог("Сумма");
Сообщить("База1 "+БазаРаспределения1);

ТаблицаБазыРаспределения2 = ОпределитьБазуБУ(Подр2).Выгрузить();
БазаРаспределения2 = ТаблицаБазыРаспределения2.Итог("Сумма");
Сообщить("База2 "+БазаРаспределения2);

ТаблицаБазыРаспределения3 = ОпределитьБазуБУ(Подр3).Выгрузить();
БазаРаспределения3 = ТаблицаБазыРаспределения3.Итог("Сумма");
Сообщить("База3 "+БазаРаспределения3);

База = БазаРаспределения1+БазаРаспределения2+БазаРаспределения3;
КБаза1 = БазаРаспределения1/База;
КБаза2 = БазаРаспределения2/База;
КБаза3 = БазаРаспределения3/База;
СуммаСписания1=СуммаСписания*КБаза1;
СуммаСписания2=СуммаСписания*КБаза2;
СуммаСписания3=СуммаСписания*КБаза3;
Операция = Движения.Хозрасчетный;

Если БазаРаспределения1 > 0 Тогда
РаспределитьРаспределитьБУ(БазаРаспределения1, ТаблицаБазыРаспределения1, СуммаСписания1, СтВ)
КонецЕсли;

Если БазаРаспределения2 > 0 Тогда
РаспределитьРаспределитьБУ(БазаРаспределения2, ТаблицаБазыРаспределения2, СуммаСписания2, СтВ)
КонецЕсли;

Если БазаРаспределения3 > 0 Тогда
РаспределитьРаспределитьБУ(БазаРаспределения3, ТаблицаБазыРаспределения3, СуммаСписания3, СтВ)
КонецЕсли;

КонецПроцедуры

Процедура ОбработкаПроведения(Отказ)
Отказ = Ложь;
Для Каждого Ст из тчПодразделения Цикл
Запрос=Новый Запрос;
Запрос.УстановитьПараметр("Счет25", ПланыСчетов.Хозрасчетный.ОбщепроизводственныеРасходы);
Запрос.УстановитьПараметр("Подразделение", Ст.Подразделение);
Запрос.УстановитьПараметр("Организация", Организация);

Запрос.Текст=
"ВЫБРАТЬ
| ХозрасчетныйОбороты.Счет,
| ХозрасчетныйОбороты.Субконто1 как Подразделение,
| ХозрасчетныйОбороты.Субконто2 как СтатьиЗатрат,
| ХозрасчетныйОбороты.СуммаОборот как Сумма,
| ХозрасчетныйОбороты.Организация
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.Обороты(, , , Счет = &Счет25, &ТипыСубконт) КАК ХозрасчетныйОбороты
|Где
| Субконто1 = &Подразделение

| Организация = &Организация";

ТипыСубконт=Новый Массив;
ТипыСубконт.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Подразделения);
ТипыСубконт.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.СтатьиЗатрат);
Запрос.УстановитьПараметр("ТипыСубконт",ТипыСубконт);
РезультатЗапроса = Запрос.Выполнить();
ТаблицаЗапроса = РезультатЗапроса.Выгрузить();
СуммаСписания = ТаблицаЗапроса.Итог("Сумма");
Сообщить("СуммаСписания "+ СуммаСписания);

Для Каждого Ств Из ТаблицаЗапроса Цикл

Если Ст.Подразделение.код = "000000175" Тогда
Подр1=Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000000001");
Подр2=Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000000002");
Подр3=Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000000003");
РаспределитьБУ(СуммаСписания,Ств,Подр1,Подр2,Подр3);
КонецЕсли;

Если Ст.Подразделение.код = "000000176" Тогда
Подр1=Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000000004");
Подр2=Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000000005");
Подр3=Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000000006");
РаспределитьБУ(СуммаСписания,Ств,Подр1,Подр2,Подр3);
КонецЕсли;

//Если Ст.Подразделение.код = "000000177" Тогда
// Подр1=Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000000007");
// Подр2=Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000000008");
// Подр3=Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000000009");
// РаспределитьБУ(СуммаСписания,Ств,Подр1,Подр2,Подр3);
//КонецЕсли;

КонецЦикла;
КонецЦикла;

Если СуммаСписания >0 Тогда
Операция.Записать(Истина);
Иначе
сообщить(" " + СуммаСписания);
КонецЕсли;
КонецПроцедуры


"

chisli
читатель
офлайн
Дата регистрации: 08.05.2009
Сообщений: 1
Пост №2
 
08.05.2009 11:44

Здравствуйте, а можете поподробнее описать куда вставляли модуль и что добавляли в форму документа. Заранее благодарна.

Показывать по 10 20 40 сообщений

Читают тему:

1 гостей
Быстрый переход
Для технических специалистов
  • Учет, налогообложение, автоматизация
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • ЕГАИС
Предложения партнеров
Обучение пользователей продуктов 1С

1С бесплатно 1С-Отчетность 1С:ERP Управление предприятием 1С:Бесплатно 1С:Бухгалтерия 8 1С:Бухгалтерия 8 КОРП 1С:Бухгалтерия автономного учреждения 1С:Бухгалтерия государственного учреждения 1С:Бюджет муниципального образования 1С:Бюджет поселения 1С:Вещевое довольствие 1С:Деньги 1С:Документооборот 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и кадры государственного учреждения 1С:Зарплата и управление персоналом 1С:Зарплата и управление персоналом КОРП 1С:Комплексная автоматизация 8 1С:Лекторий 1С:Предприятие 1С:Предприятие 7.7 1С:Предприятие 8 1С:Розница 1С:Управление нашей фирмой 1С:Управление производственным предприятием 1С:Управление торговлей 1СПредприятие 8

Все теги