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


1С:Предприятие ::

Метки: 

v7: Корректное закрытие счета 20

Я
   Vadzim1988
 
02.01.18 - 13:09
Здравствуйте, помогите разобраться в следующем вопросе. Имеется 1с 7.7. Оказание услуг. 25 счет "Общехозяйственные расходы" закрывается на 20 счет "Основное производство" по статьям затрат. На 20 счете 3 субконто: 1. Виды номенклатуры; 2. Затраты на производство; 3. Подразделения.
Проблема в следующем: При проведении документа "Закрытие месяца" сч.20 закрывается только по двум субконто (Виды номенклатуры и Подразделения). По субконто Затраты на производсто не происходит. В чем причина?
P.S. Для наглядности скидываю код, прописанный для закрытия счета 20

//****************************************************************************** 

// ЗакрытиеСчета20() 
// 

// Параметры: 
// Нет. 

// 
// Вызывается из формул элементов диалога: 

// Нет. 
// 

// Описание: 
// Здесь описывается процедура. 

Процедура ЗакрытиеСчета20() 
Сч20 = СчетПоКоду("20"); 
Сч90 = СчетПоКоду("90"); 
Сч90_1 = СчетПоКоду("90.1.1"); 
Сч90_2 = СчетПоКоду("90.2.1"); 
Сч90_3 = СчетПоКоду("90.3"); 
Сч90_4 = СчетПоКоду("90.4"); 
//Определим остатки незавершенного производства 

ЗапросПоОстаткамНезавершенногоПроизводства = СоздатьОбъект("Запрос"); 
ТекстЗапроса = 
"//{{ЗАПРОС(НезавершенноеПроизводство) 

|Период с ДатаНач по ДатаКон; 
|ОбрабатыватьДокументы все; 
|Обрабатывать НеПомеченныеНаУдаление; 
|ВидНоменклатуры = Документ.НезавершенноеПроизводство.ВидНоменклатуры; 
|Подразделение = Документ.НезавершенноеПроизводство.Подразделение; 
|ОстатокДок = Документ.НезавершенноеПроизводство.Остаток; 
|Функция Остаток = Сумма(ОстатокДок); 
|Группировка ВидНоменклатуры; 
|Группировка Подразделение; 
|"//}}ЗАПРОС 

; 
ЗапросПоОстаткамНезавершенногоПроизводства.Выполнить(ТекстЗапроса); 
//Если ранее на счет 20 были списаны общепроизводственные или общехозяйственные 

//расходы, запишем проводки, чтобы учесть эти суммы при закрытии счета 20 
Если Операция.КоличествоПроводок() > 0 Тогда 
Операция.ЗаписатьПроводки(); 
КонецЕсли; 
БухИт90 = СоздатьОбъект("БухгалтерскиеИтоги"); 
БухИт90.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,,,); 
БухИт90.ВключатьСубсчета(-1,); 
БухИт90.ВыполнитьЗапрос(ДатаНач, ДатаКон, Сч90,,,,,); 
БухИт20 = СоздатьОбъект("БухгалтерскиеИтоги"); 
БухИт20.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,,,); 
БухИт20.ИспользоватьСубконто(ВидыСубконто.Подразделения,,,); 
БухИт20.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводство,,,); 
БухИт20.ВыполнитьЗапрос(ДатаНач, ДатаКон, Сч20,,,,,); 
БухИт20.ВыбратьСубконто(ВидыСубконто.ВидыНоменклатуры); 
Пока БухИт20.ПолучитьСубконто(ВидыСубконто.ВидыНоменклатуры) = 1 Цикл 
БухИт20.ВыбратьСубконто(ВидыСубконто.Подразделения); 
Пока БухИт20.ПолучитьСубконто(ВидыСубконто.Подразделения) = 1 Цикл 
СуммаСписания = БухИт20.СКД() - ОстатокНезавершенногоПроизводства(БухИт20.Субконто(ВидыСубконто.ВидыНоменклатуры), БухИт20.Субконто(ВидыСубконто.Подразделения)); 
Если СуммаСписания <> 0 Тогда 
Операция.НоваяПроводка(); 
Операция.НомерЖурнала = "ФР"; 
Операция.СодержаниеПроводки = "Списание счета 20"; 
Операция.ПервичныйДокумент = глПредставлениеПервичногоДокумента(Контекст); 
Операция.Дебет.Счет = Сч90_4; 
Операция.Дебет.ВидыНоменклатуры = БухИт20.Субконто(ВидыСубконто.ВидыНоменклатуры); 
Операция.Кредит.Счет = Сч20; 
Операция.Кредит.ВидыНоменклатуры = БухИт20.Субконто(ВидыСубконто.ВидыНоменклатуры); 
Операция.Кредит.Подразделения = БухИт20.Субконто(ВидыСубконто.Подразделения); 
Операция.Сумма = глОкругление(СуммаСписания, ДатаДок); 
КонецЕсли; 
КонецЦикла; 
КонецЦикла; 
КонецПроцедуры// ЗакрытиеСчета20()
 
 
   ikea
 
1 - 02.01.18 - 13:17
Добавить нужно одну строку:
Операция.Кредит.СтатьиЗатратНаПроизводство= БухИт20.Субконто(ВидыСубконто.СтатьиЗатратНаПроизводство);

После строки Операция.Кредит.ВидыНоменклатуры = БухИт20.Субконто(ВидыСубконто.ВидыНоменклатуры);
   Umga2002
 
2 - 02.01.18 - 13:23
Начать с того что 25 сч - общепроизводственные расходы ну и т. д.
   Vadzim1988
 
3 - 02.01.18 - 13:47
(1) К сожалению, не помогло, до этого пробовал, но после Вашего совета перепроверил - нет...
   ikea
 
4 - 02.01.18 - 14:08
(3) У Вас в бухтоги по 20 счету выбираются только по 2 субконто. Нужно добавлять еще один цикл:

БухИт20.ВыбратьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводство); 
Пока БухИт20.ПолучитьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводство) = 1 Цикл 


..................
КонецЦикла;
   Vadzim1988
 
5 - 02.01.18 - 14:32
(4) Прописал такой код:

БухИт20.ВыбратьСубконто(ВидыСубконто.ВидыНоменклатуры); 
Пока БухИт20.ПолучитьСубконто(ВидыСубконто.ВидыНоменклатуры) = 1 Цикл 
БухИт20.ВыбратьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводство); 
Пока БухИт20.ПолучитьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводство) = 1 Цикл 
БухИт20.ВыбратьСубконто(ВидыСубконто.Подразделения); 
Пока БухИт20.ПолучитьСубконто(ВидыСубконто.Подразделения) = 1 Цикл 
СуммаСписания = БухИт20.СКД() - ОстатокНезавершенногоПроизводства(БухИт20.Субконто(ВидыСубконто.ВидыНоменклатуры), БухИт20.Субконто(ВидыСубконто.Подразделения)); 
Если СуммаСписания <> 0 Тогда....

К сожалению, не работает....
   RoRu
 
6 - 02.01.18 - 14:53
(0) посмотрите как закрывается в типовой бух 77
   RoRu
 
7 - 02.01.18 - 14:59
(6) +
Вообще у вас весь первоначальный код написан в рассчете на 2 субконто , включая запрс по незавершенке - аккуратно и внимательно добавляйте 3е субконто по аналогии с предидущими и у вас все получится
   Vadzim1988
 
8 - 02.01.18 - 15:42
(7) Добавил также в строку:

СуммаСписания = БухИт20.СКД() - ОстатокНезавершенногоПроизводства(БухИт20.Субконто(ВидыСубконто.ВидыНоменклатуры),  БухИт20.Субконто(ВидыСубконто.Подразделения));

третье субконто. Получилось:
СуммаСписания = БухИт20.СКД() - ОстатокНезавершенногоПроизводства(БухИт20.Субконто(ВидыСубконто.ВидыНоменклатуры), БухИт20.Субконто(ВидыСубконто.СтатьиЗатратНаПроизодство), БухИт20.Субконто(ВидыСубконто.Подразделения));

Однако, при попытке проведения документы выдает следующую ошибку: 
СуммаСписания = БухИт20.СКД() - ОстатокНезавершенногоПроизводства(БухИт20.Субконто(ВидыСубконто.ВидыНоменклатуры), БухИт20.Субконто(ВидыСубконто.СтатьиЗатратНаПроизодство), <<?>> БухИт20.Субконто(ВидыСубконто.Подразделения)); 
{Документ.ЗакрытиеМесяца.Модуль Документа (2930)}: Слишком много фактических параметров
Модуль не скомпилирован!
   RoRu
 
9 - 02.01.18 - 15:55
(8) в запросе по незавершенке добавили ?
Вообще вы понимаете , что делаете или не очень ?
Если грубо , то везде,  где у вас есть виды номенклатуры и подразделения у вас должно быть аналогично и статьи затрат , можете прям поиском пройтись .
   Vadzim1988
 
10 - 02.01.18 - 16:00
(9) Понимаю не на 100 процентов, поэтому и обращаюсь на форум за помощь.

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

Вот тут хотелось бы уточнить: это касается только модуль Закрытие месяца и еще каких-либо модулей?
 
  Рекламное место пустует
   RoRu
 
11 - 02.01.18 - 16:13
(10) это я про конкретно вашу процедуру  закрытие 20 писал .
А что за конфа то у вас и зачем исправляете штатое закрытие?
   ribuh
 
12 - 02.01.18 - 16:16
Начните с изучения матчасти - а именно что есть оборотное субконто в Плане счетов. Статьи производственных затрат, Статьи общепроизводственных и Статьи общехозяйственных -  суть оборотные субконто (по ним система не хранит сальдо), потому значение имеют в данном случае только дебетовые обороты (по ним анализируется отчетный период, работают разл. алгоритмы закрытия месяца и заполнение регл. отчетности). Не имеет смысла плодить кредитовый оборот по статьям затрат (если очень хочется посмотреть, как сделать субконто необротными - посмотрите конфигурацию для строительства от фирмы Импульс ИВЦ "Подрядчик строительства" или "Заказчик строительтва", там сделано)...

ЗЫ Для понимания сути оборотных субконто посмотрите на Статьи движения денежных средств: Поступили в кассу деньги по статье "Оплата покупателей", списали деньги из кассы по статье "Оплата поставщику", если субконто будет не оборотным, то тут надо городить не две проводки:
Дт 50 Кт 62 и Дт 60 Кт 50, а больше, иначе на субконто "Статьи движения денежных средств" будет зависать сальдо, ведь по кредиту "Оплата покупателя" движение счета 50 вряд ли будет (ну только если возврат, да и то там всего скорее будет другая статья выбрана)....
   RoRu
 
13 - 02.01.18 - 16:17
(11) + разверну :
Обрабатывать НеПомеченныеНаУдаление; 
|ВидНоменклатуры=Документ.НезавершенноеПроизводство.ВидНоменклатуры; 
Тут надо добавить про статьи затрат 
И далее везде до 
Операция.Кредит.ВидыНоменклатуры = БухИт20.Субконто(ВидыСубконто.ВидыНоменклатуры);
   Vadzim1988
 
14 - 02.01.18 - 16:18
(11) Конфа 1с 7.7 Мисофт, а штатное хотелось бы подправить, т.к. на 20 счете по аналитике  висят по Дебету и Кредиту куча субконт,  том числе и без признака. Из-за этого из месяца в месяц оборотка пухнет, а хотелось бы, чтобы все ежемесячно по 20 закрывалось и новый месяц был как с "Чистого листа".
   RoRu
 
15 - 02.01.18 - 16:21
(12) в 77 Бух необоротное субконто вроде статья затрат , если верно помню
   RoRu
 
16 - 02.01.18 - 16:22
(14) а вы уверены , что дело именно в неправильном закрытии ?
сделайте копию , сделайте одну затрату и на ней попробуйте проверить
   ribuh
 
17 - 02.01.18 - 16:30
(15) Из тама, статей тех несколько, к каждому из счетов привязано, к 20, 25, 26 и 44. В типовой бух. оборотные (если только в совсем свежих релизах не поменялм, уже много лет всех перевёл на 8, особо не заморачиваюсь 7.7) в настройке для строительства сделали необоротным, и даже работает, потом попытались (Испульс) это повторить для 8...весьма неуспешно правда, сейчас вроде как отказались - вернули типовое закрытие, потому как по 20 обороты задваивались из-за того суммового учета по Статьям затрат.

ЗЫ В 7.7 по умолчанию используется 41 счет, потому необоротный учет по статьям затрат сделать более/менее реально, правда незачем, но... А в 8 обязаловки 40 нет, потому выпуск продукции при необоротных статьях затрат должен выглядеть не одной проводкой на всю сумму выпуска, а разбитым на выпуск по Оплате труда, Амортизации итд итп, что, согласитеь, весьма похоже на бред сивой кобылы... Потому статьи затрат и должны быть оборотными))))
   Vadzim1988
 
18 - 02.01.18 - 16:30
(16) Перепроверил, да Вы правы. Сальдо на следующий не перетекает. Значит, в принципе опрос снимается. Также для понимания сути очень помог Ваш комментарий № 12. Может быть подскажете хорошую литературу по 1С? Заранее, спасибо!
   RoRu
 
19 - 02.01.18 - 16:35
(17) да чё вы лечите то ?
по 20 ( осн пр-во ) всю жизнь было необоротное
спецом глянул текущую, также и осталось .
по зы 41 это товары так то, а не затратный счёт
   ribuh
 
20 - 02.01.18 - 16:41
(19) И где эт я про затратный 41?
Да - глянул на 20 необротное Затраты на производство (простите великодушно - сто лет уже не работаю с 7.7, но и возможно такое как раз по причине использования 40 счета), по остальным (25, 26 , 44) оборотное. Почему засело - так это со стоителями связано - в середине года для БСО 2.0 как включили остатки - весь бубен тогда поломал, пока вылечил....
   ribuh
 
21 - 02.01.18 - 16:42
(19) Увидел где 41 ляпнул - это читать 40))))



Список тем форума
  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует