При заполнении новой карточки необоротного актива вылазит ошибка "Выбранный счет затрат не соответствует установленному значению в константе "Использовать счета расходов"!". В справочнике "Необоротные активы" есть такая процедурка:
Процедура ВводНового(ПризнакКопирования)
ПерваяЗапись = 1;
Если ПризнакКопирования = 1 Тогда
ИзмФирма();
Возврат;
КонецЕсли;
Фирма = глВосстановитьЗначение(,"БазФирма");
ИзмФирма();
ВидНеоборотногоАктива = глВосстановитьЗначение("НеоборотныеАктивы","ВидНеоборотногоАктива");
ВидДеятельности = глВосстановитьЗначение(,"БазВидДеятельности");
БазЕдиница = глВосстановитьЗначение("НеоборотныеАктивы","БазЕдиница",Константа.БазЕдиница);
Счет = глВосстановитьЗначение("НеоборотныеАктивы","Счет",СчетПоКоду("10.4"));
СчетЗатрат = глВосстановитьЗначение("НеоборотныеАктивы","СчетЗатрат");
ВидЗатрат = глВосстановитьЗначение("НеоборотныеАктивы","ВидЗатрат");
МетодРасчетаИзноса = глВосстановитьЗначение("НеоборотныеАктивы","МетодРасчетаИзноса",Перечисление.МетодыРасчетаИзноса.ПрямолинейноеСписание);
Группа = глВосстановитьЗначение("НеоборотныеАктивы","Группа");
Если (СчетЗатрат.Выбран() = 0) или (глПроверитьСчетЗатрат(СчетЗатрат,0,1)=0) Тогда
Если ИспользоватьСчетаРасходов = Класс8 Тогда
СчетЗатрат = СчетПоКоду("831");
Иначе
СчетЗатрат = СчетПоКоду("91");
КонецЕсли;
КонецЕсли;
Производственное = 1;
Группа = ?(Группа = 0, 1, Группа);
КонецПроцедуры
в глобальнике:
Функция глПроверитьСчетЗатрат(Знач СчетЗатрат, Предупреждать=1, Разрешать231 = 1, Реквизит = "", ВСтроке = 0) Экспорт
Перем сСчетЗатрат;
Если ТипЗначенияСтр(СчетЗатрат) = "Строка" Тогда
сСчетЗатрат = СчетЗатрат;
СчетЗатрат = СчетПоКоду(сСчетЗатрат);
ИначеЕсли ТипЗначенияСтр(СчетЗатрат) = "Счет" Тогда
сСчетЗатрат = СчетЗатрат.Код;
КонецЕсли;
фОшибка = 0;
Если (сСчетЗатрат = "231") Тогда
Если (Разрешать231 = 0) Тогда
ТекстПредупреждения = "Нельзя использовать счет 231 в качестве счета затрат!";
фОшибка = 1;
Иначе
// разрешаем выбирать 231 без проверки на значение константы ИспользоватьСчетаРасходов
КонецЕсли;
ИначеЕсли (сСчетЗатрат = "24") Или (сСчетЗатрат = "39") Тогда
// счета 24 и 39 можно выбирать при любом значении константы ИспользоватьСчетаРасходов
ИначеЕсли СчетЗатрат.ВидСубконто(3) <> ВидыСубконто.ВидыЗатрат Тогда
ТекстПредупреждения = "По счету затрат должен вестись аналитический учет по видам затрат (субконто 3)!";
фОшибка = 1;
Иначе
ТекстПредупреждения = "Выбранный счет затрат не соответствует установленному значению в константе ""Использовать счета расходов""!";
Если (ИспользоватьСчетаРасходов = Класс8) и (Лев(сСчетЗатрат,1)<>"8") Тогда
фОшибка = 1
ИначеЕсли (ИспользоватьСчетаРасходов = Класс9) и (Лев(сСчетЗатрат,1) <> "9") Тогда
фОшибка = 1
ИначеЕсли (ИспользоватьСчетаРасходов = Класс89) и (Лев(сСчетЗатрат,1) <> "9") Тогда
фОшибка = 1
КонецЕсли;
КонецЕсли;
Если фОшибка = 1 Тогда
Если Предупреждать=1 Тогда
Предупреждение(ТекстПредупреждения);
КонецЕсли;
Если Предупреждать=2 Тогда
Если ПустоеЗначение(Реквизит)=0 Тогда
глКомментарий("Реквизит "+Реквизит+?(ВСтроке=0,""," в строке "+ВСтроке)+" установлен неверно!",0,,"!");
КонецЕсли;
глКомментарий(ТекстПредупреждения,0,,"!");
Если (ИспользоватьСчетаРасходов = Класс89) и (Лев(сСчетЗатрат,1) = "8") Тогда
глКомментарий("Счет затрат 8-го класса нужно указывать в справочнике ""Виды затрат"".",2,,"I");
КонецЕсли;
КонецЕсли;
Возврат 0;
КонецЕсли;
Возврат 1;
КонецФункции //глПроверитьСчетЗатрат
Что не так не пойму, ломаю голову уже второй день. Помоги пожалуйста. Это надо очень срочно, бухгалтер ругается, срочно нужно отчет делать, а она необ. актив не может ввести((
в константе "Использовать счета расходов" стоит 8 и 9 классы
когда заполняю карточку ставлю 235 счет, этот счет был добавлен под наше предприятие