Балансовый счет не может корреспондировать с пустым счетом!
Здраствуйте всем!!! Подскажите пожалуйста ни как не могу допетрить!!!
В авансовомОтчете делаем проводку на 26 счет , два субконто: Общехоз. затраты и Подразделения выбираем значение из этих справочеиков жмем провести и вылазиет ошибка ( Балансовый счет не может корреспондировать с пустым счетом!) а если не вводить первое субконто (Общехоз. затраты)документ проводится без проблем!!! Подскажите как выйти из ситуации и решить эту проблему хотябу подскажите где копать????
и могут ли это быть тут виновны забалаесовые счета потому что конфа у нас не стандартная ????
В авансовомОтчете делаем проводку на 26 счет , два субконто: Общехоз. затраты и Подразделения выбираем значение из этих справочеиков жмем провести и вылазиет ошибка ( Балансовый счет не может корреспондировать с пустым счетом!) а если не вводить первое субконто (Общехоз. затраты)документ проводится без проблем!!! Подскажите как выйти из ситуации и решить эту проблему хотябу подскажите где копать????
и могут ли это быть тут виновны забалаесовые счета потому что конфа у нас не стандартная ????
По теме из базы знаний
- Бухучет для программистов 1С
- Концепция автоматизации многопрофильного Холдинга в системе АУБ на платформе 1С
- Регистры бухгалтерии. Настройки, субконто и движения с субконто
- Регистры бухгалтерии. Виртуальная таблица оборотов
- Разница начисленной амортизации ОС после изменения СПИ (ФСБУ 6/2020). БП 3.0
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Процедура УСН()
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
Если ДокументПоставки.Выбран()=1 Тогда
Если ДокументПоставки.Вид()="ПоступлениеМатериалов" Тогда
ДокументПоставки.ВыбратьСтроки();
Пока ДокументПоставки.ПолучитьСтроку()=1 Цикл
Операция.НоваяПроводка();
Операция.Дебет.Счет = СчетПоКоду("У.05");
Операция.Дебет.Контрагенты = ДокументПоставки.Контрагент;
Операция.Дебет.Материалы= ДокументПоставки.Материал;
Операция.Кредит.Счет = СчетПоКоду("У.01");
Операция.Кредит.Контрагенты = ДокументПоставки.Контрагент;
Операция.Кредит.Материалы= ДокументПоставки.Материал;
Операция.Количество = ДокументПоставки.Количество;
Операция.Сумма = ДокументПоставки.Сумма;
Операция.СодержаниеПроводки = "Оплачено сырье";
Операция.НомерЖурнала = "УСН";
Если ДокументПоставки.НДС>0 Тогда
Операция.НоваяПроводка();
Операция.Дебет.Счет = СчетПоКоду("У.03");
Операция.Кредит.Счет = СчетПоКоду("У.02");
Операция.Сумма = ДокументПоставки.НДС;
Операция.СодержаниеПроводки = "Списываем НДС";
Операция.НомерЖурнала = "УСН";
Операция.ПервичныйДокумент =Формат(ДокументПоставки.ДатаДокВходящий, "Д ДДММГГГГ")+", №"+ДокументПоставки.НомерДокВходящий;
КонецЕсли;
КонецЦикла;
Операция.Записать();
КонецЕсли;
Док=СоздатьОбъект("Документ");
Док.НайтиДокумент(ДокументПоставки);
Док.ОплатаДок=1;
Док.Записать();
Если ДокументПоставки.Вид()="ПоступлениеМатериалов" Тогда
//Если ДокументПоставки.Итог("НДС")>0 Тогда
Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("У04");
Операция.СодержаниеПроводки="Отражен факт расхода";
Операция.НомерЖурнала="НУ";
Операция.Сумма=Сумма;
// КонецЕсли;
ИначеЕсли КоррСчет<>СчетПоКоду("51") Тогда
Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("У04");
Операция.СодержаниеПроводки="Отражен факт расхода";
Операция.НомерЖурнала="НУ";
Операция.Сумма=Сумма;
КонецЕсли;
Если ДокументПоставки.Вид()="УслугиСтороннихОрганизаций" Тогда
Если ДокументПоставки.Итог("НДС")>0 Тогда
Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("НДС");
Операция.Дебет.Контрагенты=Субконто1;
Операция.Дебет.Договоры=Субконто2;
Операция.СодержаниеПроводки="НДС";
Операция.НомерЖурнала="НУ";
Операция.Сумма=ДокументПоставки.Итог("НДС");
КонецЕсли;
КонецЕсли;
ИначеЕсли (КоррСчет<>СчетПоКоду("51")) И (КоррСчет<>СчетПоКоду("66.3")) И (КоррСчет<>СчетПоКоду("71.1")) Тогда
Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("У04");
Операция.СодержаниеПроводки="Отражен факт расхода";
Операция.НомерЖурнала="НУ";
Операция.Сумма=Сумма;
КонецЕсли;
Если УчитыватьДляНУ=1 Тогда
//Если ДвижениеДенежныхСредств.Наименование="Оплата за основные средства" Тогда
// Если КоррСчет=СчетПоКоду("60.1") Тогда
// Если ДокументПоставки.Выбран()=0 Тогда
// Предупреждение("Не выбран документ поставки");
// СтатусВозврата(0);
// Возврат;
// КонецЕсли;
// Если ДокументПоставки.КоличествоСтрок()>1 Тогда
// Предупреждение("В документе поставки должно быть поступление одного ОС");
// СтатусВозврата(0);
// Возврат;
// КонецЕсли;
// ОснСр=СоздатьОбъект("Справочник.ОсновныеСредства");
// ДокументПоставки.ВыбратьСтроки();
// ДокументПоставки.ПолучитьСтроку();
// ОснСр.НайтиЭлемент(ДокументПоставки.ОбъектВнеоборотныхАктивов);
// ОснСр.Оплата.Установить(ДатаДок,Сумма);
// ОснСр.Записать();
// Операция.НоваяПроводка();
// Операция.Дебет.Счет=СчетПоКоду("У02.1");
//
// Операция.Дебет.ОсновныеСредства=ДокументПоставки.ОбъектВнеоборотныхАктивов;
// Операция.Дебет.ДатыОплаты=ДатаДок;
// Операция.СодержаниеПроводки="Учтена оплата основных средств";
// Операция.НомерЖурнала="НУ";
// Операция.Сумма=Сумма;
// КонецЕсли;
//Иначе
Если (КоррСчет=СчетПоКоду("60.1")) И (ДокументПоставки.Выбран()=1) Тогда
Если ДокументПоставки.Вид()="ПоступлениеМатериалов" Тогда
Если ДокументПоставки.Итог("НДС")>0 Тогда
Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("У02.2");
Операция.СодержаниеПроводки="Учтен расход: НДС по поступившему сырью";
Операция.НомерЖурнала="НУ";
Операция.Сумма=ДокументПоставки.Итог("НДС");
КонецЕсли;
Иначе
Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("У02.2");
Операция.СодержаниеПроводки="Учтен расход";
Операция.НомерЖурнала="НУ";
Операция.Сумма=Сумма;
КонецЕсли;
Иначе
Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("У02.2");
Операция.СодержаниеПроводки="Учтен расход";
Операция.НомерЖурнала="НУ";
Операция.Сумма=Сумма;
КонецЕсли;
//КонецЕсли;
КонецЕсли;
КонецЦикла;
Операция.Записать();
КонецПроцедуры
//__________________________________________________________ ___________________
Процедура ОбработкаПроведения()
УСН();
ТипОтчета = Валюта.Выбран() + 1;
Сч19 = СчетПоКоду("19.3");
Если ДокументПоставки.Выбран()=1 Тогда
Если ДокументПоставки.Вид()="ПоступлениеМатериалов" Тогда
ДокументПоставки.ВыбратьСтроки();
Пока ДокументПоставки.ПолучитьСтроку()=1 Цикл
Операция.НоваяПроводка();
Операция.Дебет.Счет = СчетПоКоду("У.05");
Операция.Дебет.Контрагенты = ДокументПоставки.Контрагент;
Операция.Дебет.Материалы= ДокументПоставки.Материал;
Операция.Кредит.Счет = СчетПоКоду("У.01");
Операция.Кредит.Контрагенты = ДокументПоставки.Контрагент;
Операция.Кредит.Материалы= ДокументПоставки.Материал;
Операция.Количество = ДокументПоставки.Количество;
Операция.Сумма = ДокументПоставки.Сумма;
Операция.СодержаниеПроводки = "Оплачено сырье";
Операция.НомерЖурнала = "УСН";
Если ДокументПоставки.НДС>0 Тогда
Операция.НоваяПроводка();
Операция.Дебет.Счет = СчетПоКоду("У.03");
Операция.Кредит.Счет = СчетПоКоду("У.02");
Операция.Сумма = ДокументПоставки.НДС;
Операция.СодержаниеПроводки = "Списываем НДС";
Операция.НомерЖурнала = "УСН";
Операция.ПервичныйДокумент =Формат(ДокументПоставки.ДатаДокВходящий, "Д ДДММГГГГ")+", №"+ДокументПоставки.НомерДокВходящий;
КонецЕсли;
КонецЦикла;
Операция.Записать();
КонецЕсли;
КонецЕсли;
Если ТипОтчета = 2 Тогда
Сч71 = СчетПоКоду("71.11");
КурсВал = Валюта.Курс.Получить(ДатаДок);
Кратность = Валюта.Кратность.Получить(ДатаДок);
Кратность = ?(Кратность=0,1,Кратность);
глТаблицаСчетов.УдалитьСтроки();
глТаблицаСчетов.НоваяСтрока();
глТаблицаСчетов.Счет = Сч71;
глТаблицаСчетов.Субконто1 = Сотрудник;
глТаблицаСчетов.Субконто2 = "";
глТаблицаСчетов.Субконто3 = "";
глТаблицаСчетов.Валюта = Валюта;
глПереоценкаСчетов(Контекст, глТаблицаСчетов);
Иначе
Сч71 = СчетПоКоду("71.1");
КонецЕсли;
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
Если ПустоеЗначение(КоррСчет) = 1 Тогда
ТекстСообщения = "В строке №" + НомерСтроки + " не указан корреспондирующий счет.";
глСообщениеПроведения(ТекстСообщения, ТекущийДокумент(), 1);
глНеПроводить(ТекущийДокумент());
Возврат;
ИначеЕсли КоррСчет.Валютный = 1 Тогда
ТекстСообщения = "В строке №" + НомерСтроки + " корреспондирующий счет не может быть валютным.";
глСообщениеПроведения(ТекстСообщения, ТекущийДокумент(), 1);
глНеПроводить(ТекущийДокумент());
Возврат;
КонецЕсли;
Операция.НоваяПроводка();
Операция.НомерЖурнала = "БК";
Операция.СодержаниеПроводки = КомуЗаЧто;
Операция.ПервичныйДокумент = глПредставлениеПервичногоДокумента(Контекст);
Операция.Дебет.Счет = КоррСчет;
Сообщить ("КоррСчет это: "+ КоррСчет);
Операция.Дебет.Субконто(1,Субконто1);
Операция.Дебет.Субконто(2,Субконто2);
Операция.Дебет.Субконто(3,Субконто3);
Операция.Кредит.Счет = Сч71;
Операция.Кредит.Сотрудники = Сотрудник;
Если НДС > 0 Тогда
Если ТипОтчета = 1 Тогда
Операция.Сумма = Сумма - НДС;
Иначе
Операция.Сумма = Окр(Сумма*КурсВал/Кратность,2,1) - Окр(НДС*КурсВал/Кратность,2,1);
КонецЕсли;
Иначе
Если ТипОтчета = 1 Тогда
Операция.Сумма = Сумма;
Иначе
Операция.Сумма = Окр(Сумма*КурсВал/Кратность,2,1);
КонецЕсли;
КонецЕсли;
Если КоррСчет.Количественный = 1 Тогда
Операция.Количество = Количество;
КонецЕсли;
Если ТипОтчета = 2 Тогда
Операция.Валюта = Валюта;
Операция.ВалСумма = Сумма - НДС;
КонецЕсли;
// Отражение операций в налоговом учете.
ОбъектыАналитикиНУ = глСчетИАналитикаРасходовНУ(Контекст, КоррСчет, Субконто1, Субконто2, Субконто3);
// Если опредлен налоговый счет, то необходимо
// сформировать проводку для целей налогового учета.
СчетНУ = ОбъектыАналитикиНУ.Получить("Счет");
Если ПустоеЗначение(СчетНУ) = 0 Тогда
СуммаРасходов = Операция.Сумма;
Операция.НоваяПроводка();
Операция.НомерЖурнала = "НУ";
Операция.СодержаниеПроводки = КомуЗаЧто;
Операция.ПервичныйДокумент = глПредставлениеПервичногоДокумента(Контекст);
Операция.Дебет.Счет = СчетНУ;
Для СчетчикЦикла = 1 По СчетНУ.КоличествоСубконто() Цикл
ИдентификаторСубконто = СчетНУ.ВидСубконто(СчетчикЦикла,,).Идентификатор();
Операция.Дебет.Субконто(СчетчикЦикла, ОбъектыАналитикиНУ.Получить(ИдентификаторСубконто));
КонецЦикла;
Операция.Дебет.Субконто(ВидыСубконто.УсловияПоступленияИВыбытия, Перечисление.УсловияПоступленияИВыбытия.Другие);
Операция.Сумма = СуммаРасходов;
Если СчетНУ.Количественный = 1 Тогда
Операция.Количество = Количество;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Операция.Записать();
ТекстСообщения = "Сотруднику "+Сотрудник+" зачтена сумма, выданная под отчет.";
глСообщениеПроведения(ТекстСообщения, ТекущийДокумент(), 0);
ТекстСообщения = "Документ проведен.";
глСообщениеПроведения(ТекстСообщения, ТекущийДокумент(), 0);
глПриПроведении(ТекущийДокумент());
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот