Запись с такими ключевыми полями существует при проведении документов по ОС

1. smallbuk 34 23.10.17 07:46 Сейчас в теме
Доброго дня.

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 году других записей нет.

Отладчик ясности не прибавил.

Может сталкивался кто-нибудь с подобным.
Спасибо.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
49. user1137905 15.05.19 11:31 Сейчас в теме
Решение - переутвердите систему налогообложения текущей датой
Прикрепленные файлы:
artoure; smallbuk; White13; +3 Ответить
43. MrFlanker 232 22.12.17 08:55 Сейчас в теме
Раз эта ошибка вылазит не у всех ..значит существуют параметры при которых дублирования не происходит.

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

во второй повлиять невозможно, разбираемся что влияет на первую процедуру.

ОтражатьВНалоговомУчете = УчетнаяПолитика.ПлательщикНалогаНаПрибыль(Реквизиты.Организация, Реквизиты.Период);
Результат = ПолучитьФункциональнуюОпцию("ПлательщикНалогаНаПрибыль", ....


Понимаем что все дело в функциональной опции "ПлательщикНалогаНаПрибыль"

Хранится в "РегистрСведений.НастройкиСистемыНалогообложения.Ресурс.ПлательщикНалогаНаПрибыль"
Синоним "Система налогообложения"
Ресурс "ПлательщикНалогаНаПрибыль" (Булево Да/нет)

В интерфейсе я не нашел как изменить этот флажек

Обработкой для редактирования регистров сведений ставим ее в положение Ложь.
И документы начинается проводится.
Прикрепленные файлы:
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. progr-2008 118 23.10.17 12:33 Сейчас в теме
6. protexprotex 139 23.10.17 16:46 Сейчас в теме
(1) Может, делали корректировку регистров по этому ОС? - типа изменяли первоначальную стоимость (зачем - то)
Или может данное ОС уже введено, а потом снова на него хотят ввести еще ОС (не создавая новую карточку ОС)
52. user1654599 17.10.23 07:25 Сейчас в теме
Дело все в том, что в регистре сведений нет измерения связанного с идентификатором хозяйственных операций, например измерения журнал учёта хозяйственных операций, от этого и возникает ошибка. То есть нет уникального ключевого поля, который однозначно идентифицирует эту и только эту хозяйственную операцию именно по этому и только этому документу. Без этого документы проводиться не будут к сожалению. Ошибка в конфигурации, к сожалению. Необходимо в конфигураторе, создать измерение журнал учёта хозяйственных операций, в том регистре, по которому проводится данный документ, справочник журнал учёта хозяйственных операций, в документе реквизит журнал учёта хозяйственных операций, со ссылкой на данный справочник, измерение ЖурналУчётаХозяйственных операций в соответствующем регистре также должно быть со ссылкой на справочник "ЖурналУчетаХозяйстванныхОпераций" после чего в конструкторе движений изменяет процедуру движения проводя документ также и по измерению "Журнал УчетаХозяйственныхОпераций", которое должно быть ведущим. После чего данная ошибка должна исчезнуть. Основной принцип такой в документе по которому осуществляется движение по какому то из подчинённых регистров должно быть обязательно уникальное поле, позволяющее однозначно идентифицировать данный документ , и это поле должно быть ведущим измерением в регистре, по которому проводится данный документ. По другому никак.
2. accounting_cons 858 23.10.17 08:01 Сейчас в теме
Регистр сведений Начисление амортизации ОС (Налоговый учет) и Регистр сведений Начисление амортизации ОС (Бухгалтерский учет) - это два разных регистра.
3. smallbuk 34 23.10.17 08:28 Сейчас в теме
Да, разные. Но ошибка появляется только в РС "Начисление амортизации ОС (Налоговый учет)".
5. smallbuk 34 23.10.17 16:13 Сейчас в теме
7. accounting_cons 858 23.10.17 17:03 Сейчас в теме
Возможно, это ошибка, описанная в курсе "Ошибки в учете - найти и обезвредить!" (http://1c.ru/cso-part/rus/partners/training/cso/course?id=221), видео начиная с 20-й минуты.

Там дело в неправильном счете начисления амортизации (износа), введенном в документе Принятие ОС к учету..
8. smallbuk 34 24.10.17 12:58 Сейчас в теме
Счет учета - 01.01, Счет начисления амортизации - 02.01
Настораживает то, что ошибка появляется при проведении любого документа по ОС и для любого основного средства.
9. smallbuk 34 24.10.17 17:30 Сейчас в теме
Оформил новое поступление ос. Та же ошибка "Запись с такими ключевыми параметрами уже существует! : ..."
Значит дело не в ОС. Тогда в чем? В реквизитах организации?
10. protexprotex 139 24.10.17 17:42 Сейчас в теме
(9) Сделайте тестирование и исправление информационной базы. Кстати, у Вас конфигурация правленная?
11. protexprotex 139 24.10.17 17:44 Сейчас в теме
(9) В реквизитах организации быть проблемы не может. Т.к. они не прописываются в регистр. Если не разберетесь - пишите - я по удаленке могу подключиться - найдем быстрее чем так мучатся и тыкать палкой в небо.
13. Boneman 302 24.10.17 17:45 Сейчас в теме
(9) отладчиком посмотри в обработке проведения,
там таблицы проведения должны быть..вот и посмотри что там приготовилось по твоему регистру. И станет понятно, искать в проведении документа или во вводе остатков.
12. smallbuk 34 24.10.17 17:44 Сейчас в теме
ТиИ делал. Конфигурация не правленая. Пару макетов изменил, но не думаю, что это влияет
14. protexprotex 139 24.10.17 17:46 Сейчас в теме
(12) Ну, это не влияет. checkdb проверкой проверяли?
15. smallbuk 34 24.10.17 17:47 Сейчас в теме
да. проверял. были ошибки - исправились.
18. protexprotex 139 24.10.17 17:48 Сейчас в теме
(15) т.е. при проведении ЛЮБОГО документа ПринятиеКУчетуОС программа ругается этой ошибкой?- даже с новым ОС?
16. protexprotex 139 24.10.17 17:47 Сейчас в теме
На какой регистр - то ругается при проведении Принятия к учету ОС?
17. smallbuk 34 24.10.17 17:48 Сейчас в теме
НачислениеАмортизацииОСНалоговыйУчет
19. protexprotex 139 24.10.17 17:49 Сейчас в теме
Ну так сделайте вот так: откройте этот регистр и сделайте отбор по ОС которое Вы принимаете к учету. Будут записи ?
20. smallbuk 34 24.10.17 17:52 Сейчас в теме
Верно. И не только принятие к учету, но и все документы по основным средствам.

Отменил проведение документа принятия к учету - нет записей. Консоль запросов по РС "НачислениеАмортизацииНалоговыйУчет" с отбором по конкретному ОС - нет записей.
Пытаюсь провести - сообщение об ошибке "Запись с такими ключевыми параметрами уже существует! : ..."
21. protexprotex 139 24.10.17 17:55 Сейчас в теме
(20) Странно. Это регистр подчинен регистратору. Такое ощущение, что у Вас документ делает два раза попытку записи одних и тех-же записей этого регистра. Первая запись - все ок, а потом еще раз - и т.к. эта запись уже есть, то и отказ программы. Точно ничего не меняли в конфе?
22. smallbuk 34 24.10.17 17:56 Сейчас в теме
100% Мало того, развернул новую чистую 8.3. Выгрузил конфигурацию, загрузил в проблемную базу.
23. smallbuk 34 24.10.17 17:57 Сейчас в теме
Грешу на переход с 8.2 на 8.3 в феврале 2017го
24. protexprotex 139 24.10.17 18:00 Сейчас в теме
(23) Ну а там - то чего? - структура конфигурации примерно такая - же. Тут косяк не в этом - т.к. записей перед проведением документа по этому ОС нет. База файловая?
25. protexprotex 139 24.10.17 18:02 Сейчас в теме
Стоит движения автоматически удалять или нет в документах?
(23)
27. smallbuk 34 24.10.17 18:05 Сейчас в теме
База файловая.
(25) А вот это интересно. Удаление движений установлено в "Не удалять". Сейчас попробую изменить.
(26) Релиз (3.0.53.38)
31. protexprotex 139 24.10.17 18:25 Сейчас в теме
(27) Нет, то что стоит Не удалять - это правильно - удаление производится при проведении документа
28. smallbuk 34 24.10.17 18:16 Сейчас в теме
(25) Нет, не помогло.
Что интересно, беру документ принятия к учету ОС от 2011г. Отменяю проведение - Записей в РС нет. Пытаюсь провести - ошибка.
32. protexprotex 139 24.10.17 18:28 Сейчас в теме
(28) Ну, тогда надо в отладчике смотреть - на процедуре ПриПроведении установите точку останова и посмотрите сколько раз туда войдет отладчик (надеюсь, 1-н раз). Ну а потом - посмотрите в конце этой процедуры установите точку и посмотрите - есть ли записи.
26. protexprotex 139 24.10.17 18:04 Сейчас в теме
(23) И еще - попробуйте обновить конфу.
29. smallbuk 34 24.10.17 18:21 Сейчас в теме
30. protexprotex 139 24.10.17 18:24 Сейчас в теме
(29) Есть новее - 3.0.53.39 - но это навряд ли поможет
33. smallbuk 34 24.10.17 18:30 Сейчас в теме
Кажется нашел...
При проведении вызываются последовательно:
	УчетОС.СформироватьДвиженияИзменениеПараметровАмортизацииОСНУ(
		ТаблицаПараметровАмортизацииНУ,
		ПараметрыПроведения.ПараметрыАмортизацииОСНУ,
		Движения, Отказ);

и
	УчетОС.СформироватьДвиженияИзменениеПризнакаНачисленияАмортизацииОС­НУ(
		ПараметрыПроведения.НачислениеАмортизацииОССпециальныйКоэффициентНУТаблица,
		ПараметрыПроведения.НачислениеАмортизацииОСНУ,
		Движения, Отказ);


Внутри:
Процедура СформироватьДвиженияИзменениеПараметровАмортизацииОСНУ(ТаблицаПараметров, ТаблицаРеквизиты, Движения, Отказ) Экспорт

	Параметры = ПодготовитьПараметрыИзменениеПараметровАмортизацииОСНУ(ТаблицаПараметров, ТаблицаРеквизиты);

	Если Параметры.ТаблицаПараметров.Количество() = 0 Тогда
		Возврат;
	КонецЕсли;

	Реквизиты = Параметры.Реквизиты[0];

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

	Если НЕ ОтражатьВНалоговомУчете 
			И Тип("ДокументСсылка.ИзменениеПараметровНачисленияАмортизацииОС") <> ТипРегистратора Тогда
			
		Возврат;
		
	КонецЕсли;

	Для каждого СтрокаТаблицы Из Параметры.ТаблицаПараметров Цикл
		Движение = Движения.ПараметрыАмортизацииОСНалоговыйУчет.Добавить();
		Движение.Период                     = Реквизиты.Период;
		Движение.ОсновноеСредство           = СтрокаТаблицы.ОсновноеСредство;
		Движение.Организация                = Реквизиты.Организация;
		Движение.СрокПолезногоИспользования = СтрокаТаблицы.СрокПолезногоИспользования;
		Движение.ПРДляВычисленияАмортизации = СтрокаТаблицы.ПРДляВычисленияАмортизации;
	КонецЦикла;

	Движения.ПараметрыАмортизацииОСНалоговыйУчет.Записывать = Истина;
Показать


и

Процедура СформироватьДвиженияИзменениеПризнакаНачисленияАмортизацииОС­НУ(ТаблицаОС, ТаблицаРеквизиты, Движения, Отказ) Экспорт

	Параметры = ПодготовитьПараметрыИзменениеПризнакаНачисленияАмортизацииОС­НУ(ТаблицаОС, ТаблицаРеквизиты);

	Если Параметры.ТаблицаОС.Количество() = 0 Тогда
		Возврат;
	КонецЕсли;

	Реквизиты = Параметры.Реквизиты[0];

	ОтражатьВНалоговомУчете = УчетнаяПолитика.ПлательщикНалогаНаПрибыль(Реквизиты.Организация, Реквизиты.Период);

	Если НЕ ОтражатьВНалоговомУчете Тогда
		Возврат;
	КонецЕсли;

	Для каждого СтрокаТаблицы Из Параметры.ТаблицаОС Цикл
		Движение = Движения.НачислениеАмортизацииОСНалоговыйУчет.Добавить();
		Движение.Период               = Реквизиты.Период;
		Движение.ОсновноеСредство     = СтрокаТаблицы.ОсновноеСредство;
		Движение.Организация          = Реквизиты.Организация;
		Движение.НачислятьАмортизацию = Реквизиты.НачислятьАмортизацию;
	КонецЦикла;

	Движения.НачислениеАмортизацииОСНалоговыйУчет.Записывать = Истина;

КонецПроцедуры
Показать


Налицо создание дублирующей записи в РС. Или я не прав?
34. protexprotex 139 24.10.17 18:39 Сейчас в теме
(33) Ну, тут дело в том, что если Вы говорите, что у Вас типовая конфа - то таких косяков в модуле НЕ может быть (Вы же не один работаете на ней) - обновите до самого последнего релиза. Посмотрите.
35. protexprotex 139 24.10.17 18:40 Сейчас в теме
(33) Кстати, а в таблице где указываются основные средства у Вас одно основное средство?
Пришлите скрины всех закладок документа принятие к учету ОС
36. smallbuk 34 24.10.17 18:47 Сейчас в теме
В таблице одно ОС. Обновляюсь.
37. MrFlanker 232 22.12.17 03:20 Сейчас в теме
Та же фигня, релиз 3.0.55.16 не проводит документы "Принятие к учету ОС" с ошибкой
Запись с такими ключевыми полями существует! Регистр сведений: Параметры амортизации ОС (налоговый учет); Номер строки 2

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

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

Начинаем поиск
38. MrFlanker 232 22.12.17 03:56 Сейчас в теме
ОбработкаПроведения()

УчетОС.СформироватьДвиженияИзменениеПараметровАмортизацииОСНУ()
УчетОС.СформироватьДвиженияИзменениеПризнакаНачисленияАмортизацииОС­НУ()

Та же фигня... два раза добавляются движения 

		Движение = Движения.НачислениеАмортизацииОСНалоговыйУчет.Добавить();
		Движение.Период                         = Реквизиты.Период;
		Движение.ОсновноеСредство     = СтрокаТаблицы.ОсновноеСредство;
		Движение.Организация                 = Реквизиты.Организация;
		Движение.НачислятьАмортизацию = Реквизиты.НачислятьАмортизацию;
Показать
39. MrFlanker 232 22.12.17 04:08 Сейчас в теме
Тоже переходили с Версии 2.0 на 3.0
40. MrFlanker 232 22.12.17 06:10 Сейчас в теме
Немного сбил меня автор предыдущих постов

Выше неправильная информация пишутся разные движения
Движение = Движения.ПараметрыАмортизацииОСНалоговыйУчет.Добавить();
Движение = Движения.НачислениеАмортизацииОСНалоговыйУчет.Добавить();


Реально дублирование происходит далее в процедуре
УчетДоходовИРасходовПредпринимателя.СформироватьДвиженияПринятиеКУчетуОС()



		Если НачислениеАмортизации Тогда
			НачислениеАмортизацииОС	= Движения.НачислениеАмортизацииОСНалоговыйУчет.Добавить();
			ЗаполнитьЗначенияСвойств(НачислениеАмортизацииОС, Реквизиты);
			ЗаполнитьЗначенияСвойств(НачислениеАмортизацииОС, МПЗ);
			
			ПараметрыАмортизацииОС	= Движения.ПараметрыАмортизацииОСНалоговыйУчет.Добавить();
			ЗаполнитьЗначенияСвойств(ПараметрыАмортизацииОС, Реквизиты);
			ЗаполнитьЗначенияСвойств(ПараметрыАмортизацииОС, МПЗ);
			
			НачислениеАмортизацииОССпециальныйКоэффициент	= Движения.НачислениеАмортизацииОССпециальныйКоэффициентНалоговыйУчет.Добавить();
			ЗаполнитьЗначенияСвойств(НачислениеАмортизацииОССпециальныйКоэффициент, Реквизиты);
			ЗаполнитьЗначенияСвойств(НачислениеАмортизацииОССпециальныйКоэффициент, МПЗ);
		КонецЕсли;

Показать
41. MrFlanker 232 22.12.17 06:37 Сейчас в теме
Повторное выполнение когда зависит от значения реквизита документа

"ПорядокВключенияСтоимостиВСоставРасходовНУ"

Если оно равно

Перечисления.ПорядокВключенияСтоимостиОСВСоставРасходовНУ.НачислениеАмортизации

Тогда выполняется код приводящий к дублированию... ищем дальше
42. MrFlanker 232 22.12.17 07:10 Сейчас в теме
Можно выбрать порядок включения стоимости в состав расходов тогда
НачислениеАмортизации = Ложь и дублирования не произойдет...


Но вылазит другая ошибка: Дублирование записей в регистре сведений "ПервоначальныеСведенияОСНалоговыйУчет"

в Процедуре СформироватьДвиженияПринятиеКУчетуОС()

значит путь тупиковый... там это полюбас пишется

Движения.ПервоначальныеСведенияОСНалоговыйУчет.Записывать	= Истина;

Для Каждого МПЗ Из СписокМПЗ Цикл
ПервоначальныеСведенияОС	= Движения.ПервоначальныеСведенияОСНалоговыйУчет.Добавить();
Прикрепленные файлы:
43. MrFlanker 232 22.12.17 08:55 Сейчас в теме
Раз эта ошибка вылазит не у всех ..значит существуют параметры при которых дублирования не происходит.

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

во второй повлиять невозможно, разбираемся что влияет на первую процедуру.

ОтражатьВНалоговомУчете = УчетнаяПолитика.ПлательщикНалогаНаПрибыль(Реквизиты.Организация, Реквизиты.Период);
Результат = ПолучитьФункциональнуюОпцию("ПлательщикНалогаНаПрибыль", ....


Понимаем что все дело в функциональной опции "ПлательщикНалогаНаПрибыль"

Хранится в "РегистрСведений.НастройкиСистемыНалогообложения.Ресурс.ПлательщикНалогаНаПрибыль"
Синоним "Система налогообложения"
Ресурс "ПлательщикНалогаНаПрибыль" (Булево Да/нет)

В интерфейсе я не нашел как изменить этот флажек

Обработкой для редактирования регистров сведений ставим ее в положение Ложь.
И документы начинается проводится.
Прикрепленные файлы:
44. vadim1011985 101 22.12.17 09:18 Сейчас в теме
(43) а если ИП на ОСНО как прибыль считаться будет ?
48. пользователь 01.03.19 08:44
Сообщение было скрыто модератором.
...
45. MrFlanker 232 22.12.17 12:26 Сейчас в теме
У нас ИП на ОСНО + ЕНВД. Мы не являемся плательщиками налога на прибыль.
Я думаю что это рудимент у нас образовался в результате перехода с БП 2.0->3.0

Потому что я не нашел способа убрать галочку через юзер-интерфейс

Возможно есть другие свойства которые влияют на механизм проведения.
Просто именно наша комбинация свойств показывает ошибку.

я не бухгалтер... а в ошибке конфы 100% косяк.

Пользователю не должны выводится сообщение про дубликаты в регистрах
это недопустимая ситуация которую доложен предусмотреть разработчик.
46. Tanga 26.02.18 15:05 Сейчас в теме
Добрый день!
Проблему решили?
Редакция 3.0.58.41 перешли с 2.0.
"Запись с такими ключевыми полями существует! параметры АмортизацииОСБухгалтерский учет" и т.д.

Выдает ошибку при перепроведении старого документа "Принятие к учету ОС" и документ не перепроводится.
47. MrFlanker 232 27.02.18 02:35 Сейчас в теме
Пост №43 описывает решение.
49. user1137905 15.05.19 11:31 Сейчас в теме
Решение - переутвердите систему налогообложения текущей датой
Прикрепленные файлы:
artoure; smallbuk; White13; +3 Ответить
50. user970589 11 20.09.19 15:17 Сейчас в теме
Аналогичная шибка была в УТ11 при проведении документа перемещение товаров.
Было два склада "Основной Красноярск" и "Основной Кемерово". И еще один просто склад.
При перемещении с Красноярска в Кемерово или обратно вылетала эта ошибка.
Решилось при изменении названия одного из двух складов.
После этого даже поменял обратно - все работало. т.е. имел место глюк платформы. Проверка самой базы - тестирование и лечение никаких ошибок не выявило.
51. Первоуралочка 16.10.19 19:46 Сейчас в теме
Сегодня начала бороться с такой же проблемой. Цель: принять ОС с амортизационной премией. Соответственно документ Поступление ОС не подошел. А документ Принятие к учету ОС выдавал ошибку, подобную той, что описали, что запись в регистре сведений ПараметрыАмортизацииОСНалоговыйУчет уже существует. Скрин выкладывать не буду, думаю и так все понятно.
Проверила конфу - изменена, но не в плане ОС. На другой базе при таком же релизе все проходит на "ура".
Вывод проблема именно в моей базе, а не в релизе.
Найденное решение: Регистр Сведений "Система налогообложения". Создаю новую запись текущим годом. Все замечательно провелось.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот