Запись с такими ключевыми полями существует при проведении документов по ОС
Доброго дня.
1с 8.3. Платформа 8.3.10.2639. Конфигурация "Бухгалтерия предприятия, редакция 3.0 (3.0.53.38)"
Есть проблема с проведением документов по основным средствам.
Последний документ по основным средствам датирован сентябрем 2016г. Тогда это еще была платформа 2.0. Конфигурацию не помню.
Делались только регламентные операции по основным средствам.
Сейчас возникла необходимость оформить документ "Передача ОС".
При попытке проведения появляется сообщение об ошибке:
"Запись с такими ключевыми параметрами уже существует! : НачислениеАмортизацииОСНалоговыйУчет 20.10.2017 09:00:05 ПередачаОС НД0000001 от 20.10.2017 09:00:05 Полуприцеп-цистерна, ООО "ООО" (Регистр сведений Начисление амортизации ОС (Налоговый учет); Номер строки 2)
Причем, подобная ошибка появляется при проведении любых документов по ОС с разными ОС.
Что сделал:
- выгрузка и загрузка
-ТиИ
- Обновил конфигурацию и платформу до последней версии
- консолью запросов смотрел РС НачислениеАмортизацииОСНалоговыйУчет с отбором по ОС. Кроме записи принятия к учету в 2016 году других записей нет.
Отладчик ясности не прибавил.
Может сталкивался кто-нибудь с подобным.
Спасибо.
1с 8.3. Платформа 8.3.10.2639. Конфигурация "Бухгалтерия предприятия, редакция 3.0 (3.0.53.38)"
Есть проблема с проведением документов по основным средствам.
Последний документ по основным средствам датирован сентябрем 2016г. Тогда это еще была платформа 2.0. Конфигурацию не помню.
Делались только регламентные операции по основным средствам.
Сейчас возникла необходимость оформить документ "Передача ОС".
При попытке проведения появляется сообщение об ошибке:
"Запись с такими ключевыми параметрами уже существует! : НачислениеАмортизацииОСНалоговыйУчет 20.10.2017 09:00:05 ПередачаОС НД0000001 от 20.10.2017 09:00:05 Полуприцеп-цистерна, ООО "ООО" (Регистр сведений Начисление амортизации ОС (Налоговый учет); Номер строки 2)
Причем, подобная ошибка появляется при проведении любых документов по ОС с разными ОС.
Что сделал:
- выгрузка и загрузка
-ТиИ
- Обновил конфигурацию и платформу до последней версии
- консолью запросов смотрел РС НачислениеАмортизацииОСНалоговыйУчет с отбором по ОС. Кроме записи принятия к учету в 2016 году других записей нет.
Отладчик ясности не прибавил.
Может сталкивался кто-нибудь с подобным.
Спасибо.
По теме из базы знаний
- Выгрузка-загрузка любых данных из 1С (и измененных) в XML между похожими конфигурациями (ФАЙЛ, HTTP, COM) ЛЮБЫХ баз 1С 8.1-8.3 с обработкой и поиском данных по произвольным полям поиска
- Последовательности событий при проведении документа 1С. Шпаргалка
- Автоматическая классификация ошибок технологического журнала
- Комплексный контроль остатков. Для одного или сразу нескольких логически связанных регистров накопления. Универсальное решение уровня данных для контроля не только складских остатков
- Онлайн-курс: Интенсивное обучение программированию в 1С. C 5 по 27 марта 2026 г.
Найденные решения
Раз эта ошибка вылазит не у всех ..значит существуют параметры при которых дублирования не происходит.
В результате дальнейших поисков было выяснено следующее что записывается одинаковые движения в следующих процедурах
1 - СформироватьДвиженияРегистрацияПервоначальныхСведенийОСНУ
2 - СформироватьДвиженияПринятиеКУчетуОС
во второй повлиять невозможно, разбираемся что влияет на первую процедуру.
Понимаем что все дело в функциональной опции "ПлательщикНалогаНаПрибыль"
Хранится в "РегистрСведений.НастройкиСистемыНалогообложения.Ресурс.ПлательщикНалогаНаПрибыль"
Синоним "Система налогообложения"
Ресурс "ПлательщикНалогаНаПрибыль" (Булево Да/нет)
В интерфейсе я не нашел как изменить этот флажек
Обработкой для редактирования регистров сведений ставим ее в положение Ложь.
И документы начинается проводится.
В результате дальнейших поисков было выяснено следующее что записывается одинаковые движения в следующих процедурах
1 - СформироватьДвиженияРегистрацияПервоначальныхСведенийОСНУ
2 - СформироватьДвиженияПринятиеКУчетуОС
во второй повлиять невозможно, разбираемся что влияет на первую процедуру.
ОтражатьВНалоговомУчете = УчетнаяПолитика.ПлательщикНалогаНаПрибыль(Реквизиты.Организация, Реквизиты.Период);
Результат = ПолучитьФункциональнуюОпцию("ПлательщикНалогаНаПрибыль", ....Понимаем что все дело в функциональной опции "ПлательщикНалогаНаПрибыль"
Хранится в "РегистрСведений.НастройкиСистемыНалогообложения.Ресурс.ПлательщикНалогаНаПрибыль"
Синоним "Система налогообложения"
Ресурс "ПлательщикНалогаНаПрибыль" (Булево Да/нет)
В интерфейсе я не нашел как изменить этот флажек
Обработкой для редактирования регистров сведений ставим ее в положение Ложь.
И документы начинается проводится.
Прикрепленные файлы:
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Дело все в том, что в регистре сведений нет измерения связанного с идентификатором хозяйственных операций, например измерения журнал учёта хозяйственных операций, от этого и возникает ошибка. То есть нет уникального ключевого поля, который однозначно идентифицирует эту и только эту хозяйственную операцию именно по этому и только этому документу. Без этого документы проводиться не будут к сожалению. Ошибка в конфигурации, к сожалению. Необходимо в конфигураторе, создать измерение журнал учёта хозяйственных операций, в том регистре, по которому проводится данный документ, справочник журнал учёта хозяйственных операций, в документе реквизит журнал учёта хозяйственных операций, со ссылкой на данный справочник, измерение ЖурналУчётаХозяйственных операций в соответствующем регистре также должно быть со ссылкой на справочник "ЖурналУчетаХозяйстванныхОпераций" после чего в конструкторе движений изменяет процедуру движения проводя документ также и по измерению "Журнал УчетаХозяйственныхОпераций", которое должно быть ведущим. После чего данная ошибка должна исчезнуть. Основной принцип такой в документе по которому осуществляется движение по какому то из подчинённых регистров должно быть обязательно уникальное поле, позволяющее однозначно идентифицировать данный документ , и это поле должно быть ведущим измерением в регистре, по которому проводится данный документ. По другому никак.
Регистр сведений Начисление амортизации ОС (Налоговый учет) и Регистр сведений Начисление амортизации ОС (Бухгалтерский учет) - это два разных регистра.
Возможно, это ошибка, описанная в курсе "Ошибки в учете - найти и обезвредить!" (, видео начиная с 20-й минуты.
Там дело в неправильном счете начисления амортизации (износа), введенном в документе Принятие ОС к учету..
Там дело в неправильном счете начисления амортизации (износа), введенном в документе Принятие ОС к учету..
Счет учета - 01.01, Счет начисления амортизации - 02.01
Настораживает то, что ошибка появляется при проведении любого документа по ОС и для любого основного средства.
Настораживает то, что ошибка появляется при проведении любого документа по ОС и для любого основного средства.
Оформил новое поступление ос. Та же ошибка "Запись с такими ключевыми параметрами уже существует! : ..."
Значит дело не в ОС. Тогда в чем? В реквизитах организации?
Значит дело не в ОС. Тогда в чем? В реквизитах организации?
Ну так сделайте вот так: откройте этот регистр и сделайте отбор по ОС которое Вы принимаете к учету. Будут записи ?
Верно. И не только принятие к учету, но и все документы по основным средствам.
Отменил проведение документа принятия к учету - нет записей. Консоль запросов по РС "НачислениеАмортизацииНалоговыйУчет" с отбором по конкретному ОС - нет записей.
Пытаюсь провести - сообщение об ошибке "Запись с такими ключевыми параметрами уже существует! : ..."
Отменил проведение документа принятия к учету - нет записей. Консоль запросов по РС "НачислениеАмортизацииНалоговыйУчет" с отбором по конкретному ОС - нет записей.
Пытаюсь провести - сообщение об ошибке "Запись с такими ключевыми параметрами уже существует! : ..."
(20) Странно. Это регистр подчинен регистратору. Такое ощущение, что у Вас документ делает два раза попытку записи одних и тех-же записей этого регистра. Первая запись - все ок, а потом еще раз - и т.к. эта запись уже есть, то и отказ программы. Точно ничего не меняли в конфе?
(28) Ну, тогда надо в отладчике смотреть - на процедуре ПриПроведении установите точку останова и посмотрите сколько раз туда войдет отладчик (надеюсь, 1-н раз). Ну а потом - посмотрите в конце этой процедуры установите точку и посмотрите - есть ли записи.
Кажется нашел...
При проведении вызываются последовательно:
и
Внутри:
и
Налицо создание дублирующей записи в РС. Или я не прав?
При проведении вызываются последовательно:
УчетОС.СформироватьДвиженияИзменениеПараметровАмортизацииОСНУ(
ТаблицаПараметровАмортизацииНУ,
ПараметрыПроведения.ПараметрыАмортизацииОСНУ,
Движения, Отказ);
и
УчетОС.СформироватьДвиженияИзменениеПризнакаНачисленияАмортизацииОС НУ(
ПараметрыПроведения.НачислениеАмортизацииОССпециальныйКоэффициентНУТаблица,
ПараметрыПроведения.НачислениеАмортизацииОСНУ,
Движения, Отказ);
Внутри:
Процедура СформироватьДвиженияИзменениеПараметровАмортизацииОСНУ(ТаблицаПараметров, ТаблицаРеквизиты, Движения, Отказ) Экспорт
Параметры = ПодготовитьПараметрыИзменениеПараметровАмортизацииОСНУ(ТаблицаПараметров, ТаблицаРеквизиты);
Если Параметры.ТаблицаПараметров.Количество() = 0 Тогда
Возврат;
КонецЕсли;
Реквизиты = Параметры.Реквизиты[0];
ОтражатьВНалоговомУчете = УчетнаяПолитика.ПлательщикНалогаНаПрибыль(Реквизиты.Организация, Реквизиты.Период);
ТипРегистратора = ТипЗнч(Движения.ПараметрыАмортизацииОСНалоговыйУчет.Отбор.Регистратор.Значение);
Если НЕ ОтражатьВНалоговомУчете
И Тип("ДокументСсылка.ИзменениеПараметровНачисленияАмортизацииОС") <> ТипРегистратора Тогда
Возврат;
КонецЕсли;
Для каждого СтрокаТаблицы Из Параметры.ТаблицаПараметров Цикл
Движение = Движения.ПараметрыАмортизацииОСНалоговыйУчет.Добавить();
Движение.Период = Реквизиты.Период;
Движение.ОсновноеСредство = СтрокаТаблицы.ОсновноеСредство;
Движение.Организация = Реквизиты.Организация;
Движение.СрокПолезногоИспользования = СтрокаТаблицы.СрокПолезногоИспользования;
Движение.ПРДляВычисленияАмортизации = СтрокаТаблицы.ПРДляВычисленияАмортизации;
КонецЦикла;
Движения.ПараметрыАмортизацииОСНалоговыйУчет.Записывать = Истина;
Показатьи
Процедура СформироватьДвиженияИзменениеПризнакаНачисленияАмортизацииОС НУ(ТаблицаОС, ТаблицаРеквизиты, Движения, Отказ) Экспорт
Параметры = ПодготовитьПараметрыИзменениеПризнакаНачисленияАмортизацииОС НУ(ТаблицаОС, ТаблицаРеквизиты);
Если Параметры.ТаблицаОС.Количество() = 0 Тогда
Возврат;
КонецЕсли;
Реквизиты = Параметры.Реквизиты[0];
ОтражатьВНалоговомУчете = УчетнаяПолитика.ПлательщикНалогаНаПрибыль(Реквизиты.Организация, Реквизиты.Период);
Если НЕ ОтражатьВНалоговомУчете Тогда
Возврат;
КонецЕсли;
Для каждого СтрокаТаблицы Из Параметры.ТаблицаОС Цикл
Движение = Движения.НачислениеАмортизацииОСНалоговыйУчет.Добавить();
Движение.Период = Реквизиты.Период;
Движение.ОсновноеСредство = СтрокаТаблицы.ОсновноеСредство;
Движение.Организация = Реквизиты.Организация;
Движение.НачислятьАмортизацию = Реквизиты.НачислятьАмортизацию;
КонецЦикла;
Движения.НачислениеАмортизацииОСНалоговыйУчет.Записывать = Истина;
КонецПроцедуры
ПоказатьНалицо создание дублирующей записи в РС. Или я не прав?
Та же фигня, релиз 3.0.55.16 не проводит документы "Принятие к учету ОС" с ошибкой
Запись с такими ключевыми полями существует! Регистр сведений: Параметры амортизации ОС (налоговый учет); Номер строки 2
Старые документы после отмены проведения провести нельзя. Регистр пустой, база типовая, SQL
Чувство как будто действительно пытается два раза в регистр писать. Ошибка точно не пользовательская.... такие ошибки не должны пользователи видеть.
Начинаем поиск
Запись с такими ключевыми полями существует! Регистр сведений: Параметры амортизации ОС (налоговый учет); Номер строки 2
Старые документы после отмены проведения провести нельзя. Регистр пустой, база типовая, SQL
Чувство как будто действительно пытается два раза в регистр писать. Ошибка точно не пользовательская.... такие ошибки не должны пользователи видеть.
Начинаем поиск
ОбработкаПроведения()
УчетОС.СформироватьДвиженияИзменениеПараметровАмортизацииОСНУ()
УчетОС.СформироватьДвиженияИзменениеПризнакаНачисленияАмортизацииОС НУ()
Та же фигня... два раза добавляются движения
Движение = Движения.НачислениеАмортизацииОСНалоговыйУчет.Добавить();
Движение.Период = Реквизиты.Период;
Движение.ОсновноеСредство = СтрокаТаблицы.ОсновноеСредство;
Движение.Организация = Реквизиты.Организация;
Движение.НачислятьАмортизацию = Реквизиты.НачислятьАмортизацию; Показать
Немного сбил меня автор предыдущих постов
Выше неправильная информация пишутся разные движения
Реально дублирование происходит далее в процедуре
Выше неправильная информация пишутся разные движения
Движение = Движения.ПараметрыАмортизацииОСНалоговыйУчет.Добавить();
Движение = Движения.НачислениеАмортизацииОСНалоговыйУчет.Добавить();
Реально дублирование происходит далее в процедуре
УчетДоходовИРасходовПредпринимателя.СформироватьДвиженияПринятиеКУчетуОС()
Если НачислениеАмортизации Тогда
НачислениеАмортизацииОС = Движения.НачислениеАмортизацииОСНалоговыйУчет.Добавить();
ЗаполнитьЗначенияСвойств(НачислениеАмортизацииОС, Реквизиты);
ЗаполнитьЗначенияСвойств(НачислениеАмортизацииОС, МПЗ);
ПараметрыАмортизацииОС = Движения.ПараметрыАмортизацииОСНалоговыйУчет.Добавить();
ЗаполнитьЗначенияСвойств(ПараметрыАмортизацииОС, Реквизиты);
ЗаполнитьЗначенияСвойств(ПараметрыАмортизацииОС, МПЗ);
НачислениеАмортизацииОССпециальныйКоэффициент = Движения.НачислениеАмортизацииОССпециальныйКоэффициентНалоговыйУчет.Добавить();
ЗаполнитьЗначенияСвойств(НачислениеАмортизацииОССпециальныйКоэффициент, Реквизиты);
ЗаполнитьЗначенияСвойств(НачислениеАмортизацииОССпециальныйКоэффициент, МПЗ);
КонецЕсли;
Показать
Повторное выполнение когда зависит от значения реквизита документа
"ПорядокВключенияСтоимостиВСоставРасходовНУ"
Если оно равно
Перечисления.ПорядокВключенияСтоимостиОСВСоставРасходовНУ.НачислениеАмортизации
Тогда выполняется код приводящий к дублированию... ищем дальше
"ПорядокВключенияСтоимостиВСоставРасходовНУ"
Если оно равно
Перечисления.ПорядокВключенияСтоимостиОСВСоставРасходовНУ.НачислениеАмортизации
Тогда выполняется код приводящий к дублированию... ищем дальше
Можно выбрать порядок включения стоимости в состав расходов тогда
НачислениеАмортизации = Ложь и дублирования не произойдет...
Но вылазит другая ошибка: Дублирование записей в регистре сведений "ПервоначальныеСведенияОСНалоговыйУчет"
в Процедуре СформироватьДвиженияПринятиеКУчетуОС()
значит путь тупиковый... там это полюбас пишется
НачислениеАмортизации = Ложь и дублирования не произойдет...
Но вылазит другая ошибка: Дублирование записей в регистре сведений "ПервоначальныеСведенияОСНалоговыйУчет"
в Процедуре СформироватьДвиженияПринятиеКУчетуОС()
значит путь тупиковый... там это полюбас пишется
Движения.ПервоначальныеСведенияОСНалоговыйУчет.Записывать = Истина;
Для Каждого МПЗ Из СписокМПЗ Цикл
ПервоначальныеСведенияОС = Движения.ПервоначальныеСведенияОСНалоговыйУчет.Добавить();
Прикрепленные файлы:
Раз эта ошибка вылазит не у всех ..значит существуют параметры при которых дублирования не происходит.
В результате дальнейших поисков было выяснено следующее что записывается одинаковые движения в следующих процедурах
1 - СформироватьДвиженияРегистрацияПервоначальныхСведенийОСНУ
2 - СформироватьДвиженияПринятиеКУчетуОС
во второй повлиять невозможно, разбираемся что влияет на первую процедуру.
Понимаем что все дело в функциональной опции "ПлательщикНалогаНаПрибыль"
Хранится в "РегистрСведений.НастройкиСистемыНалогообложения.Ресурс.ПлательщикНалогаНаПрибыль"
Синоним "Система налогообложения"
Ресурс "ПлательщикНалогаНаПрибыль" (Булево Да/нет)
В интерфейсе я не нашел как изменить этот флажек
Обработкой для редактирования регистров сведений ставим ее в положение Ложь.
И документы начинается проводится.
В результате дальнейших поисков было выяснено следующее что записывается одинаковые движения в следующих процедурах
1 - СформироватьДвиженияРегистрацияПервоначальныхСведенийОСНУ
2 - СформироватьДвиженияПринятиеКУчетуОС
во второй повлиять невозможно, разбираемся что влияет на первую процедуру.
ОтражатьВНалоговомУчете = УчетнаяПолитика.ПлательщикНалогаНаПрибыль(Реквизиты.Организация, Реквизиты.Период);
Результат = ПолучитьФункциональнуюОпцию("ПлательщикНалогаНаПрибыль", ....Понимаем что все дело в функциональной опции "ПлательщикНалогаНаПрибыль"
Хранится в "РегистрСведений.НастройкиСистемыНалогообложения.Ресурс.ПлательщикНалогаНаПрибыль"
Синоним "Система налогообложения"
Ресурс "ПлательщикНалогаНаПрибыль" (Булево Да/нет)
В интерфейсе я не нашел как изменить этот флажек
Обработкой для редактирования регистров сведений ставим ее в положение Ложь.
И документы начинается проводится.
Прикрепленные файлы:
У нас ИП на ОСНО + ЕНВД. Мы не являемся плательщиками налога на прибыль.
Я думаю что это рудимент у нас образовался в результате перехода с БП 2.0->3.0
Потому что я не нашел способа убрать галочку через юзер-интерфейс
Возможно есть другие свойства которые влияют на механизм проведения.
Просто именно наша комбинация свойств показывает ошибку.
я не бухгалтер... а в ошибке конфы 100% косяк.
Пользователю не должны выводится сообщение про дубликаты в регистрах
это недопустимая ситуация которую доложен предусмотреть разработчик.
Я думаю что это рудимент у нас образовался в результате перехода с БП 2.0->3.0
Потому что я не нашел способа убрать галочку через юзер-интерфейс
Возможно есть другие свойства которые влияют на механизм проведения.
Просто именно наша комбинация свойств показывает ошибку.
я не бухгалтер... а в ошибке конфы 100% косяк.
Пользователю не должны выводится сообщение про дубликаты в регистрах
это недопустимая ситуация которую доложен предусмотреть разработчик.
Добрый день!
Проблему решили?
Редакция 3.0.58.41 перешли с 2.0.
"Запись с такими ключевыми полями существует! параметры АмортизацииОСБухгалтерский учет" и т.д.
Выдает ошибку при перепроведении старого документа "Принятие к учету ОС" и документ не перепроводится.
Проблему решили?
Редакция 3.0.58.41 перешли с 2.0.
"Запись с такими ключевыми полями существует! параметры АмортизацииОСБухгалтерский учет" и т.д.
Выдает ошибку при перепроведении старого документа "Принятие к учету ОС" и документ не перепроводится.
Аналогичная шибка была в УТ11 при проведении документа перемещение товаров.
Было два склада "Основной Красноярск" и "Основной Кемерово". И еще один просто склад.
При перемещении с Красноярска в Кемерово или обратно вылетала эта ошибка.
Решилось при изменении названия одного из двух складов.
После этого даже поменял обратно - все работало. т.е. имел место глюк платформы. Проверка самой базы - тестирование и лечение никаких ошибок не выявило.
Было два склада "Основной Красноярск" и "Основной Кемерово". И еще один просто склад.
При перемещении с Красноярска в Кемерово или обратно вылетала эта ошибка.
Решилось при изменении названия одного из двух складов.
После этого даже поменял обратно - все работало. т.е. имел место глюк платформы. Проверка самой базы - тестирование и лечение никаких ошибок не выявило.
Сегодня начала бороться с такой же проблемой. Цель: принять ОС с амортизационной премией. Соответственно документ Поступление ОС не подошел. А документ Принятие к учету ОС выдавал ошибку, подобную той, что описали, что запись в регистре сведений ПараметрыАмортизацииОСНалоговыйУчет уже существует. Скрин выкладывать не буду, думаю и так все понятно.
Проверила конфу - изменена, но не в плане ОС. На другой базе при таком же релизе все проходит на "ура".
Вывод проблема именно в моей базе, а не в релизе.
Найденное решение: Регистр Сведений "Система налогообложения". Создаю новую запись текущим годом. Все замечательно провелось.
Проверила конфу - изменена, но не в плане ОС. На другой базе при таком же релизе все проходит на "ура".
Вывод проблема именно в моей базе, а не в релизе.
Найденное решение: Регистр Сведений "Система налогообложения". Создаю новую запись текущим годом. Все замечательно провелось.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот
