Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут!

1С 8.3 и 8.2: Запись с такими ключевыми полями существует! Регистр сведений…

Очень частая ошибка при проведении документа 1С 8.3 и 8.2 Установка цен номенклатуры.

Скриншот ошибки

Запись с такими ключевыми полями существует!

Дело в том, что в 1С можно устанавливать цены номенклатуры только раз в день. Для того чтобы документ провелся, необходимо либо удалить эту номенклатуру из другого документа за сегодняшний день, либо отменить проведение другого документа «Установка цен номенклатуры» за этот день.

Для технических специалистов: связано это с тем, что документ делает записи в регистр сведений «ЦеныНоменклатуры» с периодичностью один день. Если мы пытаемся записать вторую запись с такими же ключевыми полями (измерениями), то система сообщает нам ошибку. Обойти это — можно поставить периодичность регистра — одна секунда. Однако не гарантирую, что это не отобразится на работе системы в других местах.

Честно, мне до конца не ясно, почему 1С 8.3 до сих пор не сделало нормальную обработку данной ошибки, а выводит пользователю техническую информацию пользователю.

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

P.S. Наша компания предоставляет услуги по настройке, доработке и комплексному внедрению 1С. Закажите бесплатный расчет стоимости вашей задачи на странице Услуги 1С или по телефону +7 (499) 350 29 00.

Остались вопросы?

СПРОСИТЕ в комментариях!

Комментариев: 19 на “1С 8.3 и 8.2: Запись с такими ключевыми полями существует! Регистр сведений…
  1. Подробней как обойти проблему. Как поменять с 1 дня на одну секунду. При вводе товара хотелось бы сразу установить нужные цены а не просто одну.

    Ответить

    • Периодичность регистров сведений – http://programmist1s.ru/registryi-svedeniy-1s/.

      Не очень понял последнее предложение, поясните пожалуйста.

      Ответить

      • Вот я в данный момент ввожу номенклатуру.В разделе ЭлементНоменклатуры—ЦеныНоменклатуры нужно ввести типы цен (ввести две цены одного типа в один и той же день нельзя, как я понял с инфы написанной вами выше), а вводить все типы цен хотелось бы сразу поскольку для каждого объекта номенклатуры у меня может бить разная валюта того же типа ЦеныНоменклатуры. Например вид_типа_цен у меня базовый, а валюта_цены мне их нужна две (там рубли и доллары).
        Если я не так понял описание причины ошибки тогда простите:)
        Если не ошибаюсь то ваша ссылка как раз то что мне нужно. Спасибо!

        Ответить

  2. у меня еще один вопрос. Так как я зеленка в 1с хотел бы узнать последовательность работы с нуля в 1с(какие операции делать, что за чем идет). Например у родителей магазинчик и нужно все ввести в 1с УТ. 1.Сначала ввожу номенклатуру(в ней есть установка типов цен и там можно установить цену но она почему то при записи цены исчезает в номенклатуре). 2. Так как нет у меня на складе ничего ввожу через накладную товар количество и цены закупки. Если цены закупки есть уже в накладной поставщика их нужно вводить в Ценообразование—УстановкаЦенНоменклатуры? И в связи с прыганием валюты какой быстрый способ переоценки товара?
    Ваш сайт бомба ссылки которые вы дали детально все объясняют (как рас для таких как я).

    Ответить

    • Спасибо:)

      1. Что бы появились там вроде надо нажать кнопку «перечитать».

      2. Да, можно ввести на основании поступления Установку цен номенклатуры и сделать это почти автоматом 🙂 Проще всего — сделать расчет процентом, зависимый от основной цены. ПРосто менять процент.

      Ответить

  3. Привет)) Вопросик!!

    Можно ли каким то образом создать столбец с артикулом в отчете?
    Хочу вывести в Отчете Закупок столбики с: Наименованием товара, количество Закупок, и Артикул товара ??

    Ответить

    • Приветствую)

      Слишком мало информации.
      В конфигураторе или пользовательском режиме?
      СКД или макет?

      Ответить

  4. Здравствуйте, не пинайте сильно начинающего программиста. Пытаюсь разобраться вот с каким вопросом. Создаю свою конфигурацию с нуля ради интереса и изучения возможностей. Есть регистр сведений Устройства(Измерения:Устройство;Ресурсы:Статус,Местоположение). В этот регистр пишут движения 8 документов. По моей задаче мне нужно программно реализовать создание 2х документов с одним и тем же устройством из базы, но регистр сведений ругается, что запись с такими ключевыми полями существует при проведении второго документа. вот я и не могу понять, почему он ругается, если в поле «регистратор» разные записи — в зависимости от регистратора. Поможет ли, если создать ещё одно измерение в регистре сведений с типом документ.ссылка?

    Ответить

    • Добрый день!
      Пинать не будем! 🙂

      Регистр анализирует «дублированность» записи по всем полям измерений (+период). Регистратор не является «измерением».

      В вашем случае вы правильно сказали — нужно добавить измерение с типом ДокументСсылка и тогда проблема уйдет.

      Если будут еще вопросы, можете задать их на нашем форуме forum1s.ru всегда рады ответить 🙂

      Ответить

  5. Здравствуйте. а возможно ли вывести корректное сообщение при данной ошибке?

    Ответить

    • Доброго времени!

      В типовом варианте — нет. Можно доработать что бы система вначале смотрела в регистр и выводила сообщение.

      Ответить

      • а как обратиться к регистру?

        Ответить

    • Самый простой вариант:

      Запрос = Новый Запрос;
      Запрос.Текст =
      «ВЫБРАТЬ
      | ЦеныНоменклатуры.Цена
      |ИЗ
      | РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
      |ГДЕ
      | ЦеныНоменклатуры.Номенклатура = &Номенклатура
      | И ЦеныНоменклатуры.ТипЦен = &ТипЦен
      | И ЦеныНоменклатуры.Валюта = &Валюта
      | И ЦеныНоменклатуры.Период = &Период»;

      Запрос.УстановитьПараметр(«Валюта», Валюта);
      Запрос.УстановитьПараметр(«Номенклатура», Номенклатура);
      Запрос.УстановитьПараметр(«Период», Период);
      Запрос.УстановитьПараметр(«ТипЦен», ТипЦен);

      ЦенаЕсть = НЕ Запрос.Выполнить().Пустой();

      Где в параметры передать необходимые значения.

      Ответить

      • Здравствуйте
        1. Подскажите, пожалуйста, в чем дело:
        Есть регистр сведений (периодичность — в пределах дня)
        и при проверке Запрос.Выполнить().Пустой() по схеме выше все показывает правильно, но при значении периода ТекущаяДата() — все время Истина.
        2. Так ли я понимаю, чтобы сделать запись в регистре в любом случае(была ли она раньше или нет), нужно сделать проверку как выше и Если .Пустой() =Истина записывать сразу, Иначе Удалить и Записать?

        Ответить

  6. Добрый день! у меня программа 8,3 при закрытии месяца выдает Ошибки:
    ———————————————————————————
    29.01.2016 12:44:34
    Запись с такими ключевыми полями существует! : ДолиСписанияКосвенныхРасходов: 31.01.2015 0:00:00, ГУП РА «ЧЕЧЕНПЕЧАТЬ» (Регистр сведений: Доли списания косвенных расходов; Номер строки: 2)
    Пожалуйста, подскажите как исправить?

    Ответить

    • Асет, здравствуйте.

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

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

      Ответить

  7. Здравствуйте при закрытие месяца пишет такую ошибку как понять: Обработка Принятие к учету ОС Р0000000001 от 30.01.2016 15:48:40 не выполнена по причине:
    {Обработка.ГрупповоеПерепроведениеДокументов.МодульМенеджера(1870)}: Ошибка при вызове метода контекста (Записать): Запись с такими ключевыми полями существует! : ПараметрыАмортизацииОСНалоговыйУчет: 30.01.2016 15:48:40, Принятие к учету ОС Р0000000001 от 30.01.2016 15:48:40, Ноутбук 17.3″ SONY VAIO SVE1712S1RW, IntelCore i3 3110M 2/4 ГГц, 4Гб, 640 Гб Windows 8 белый, Щулькин Борис Иванович (ИП) (Регистр сведений: Параметры амортизации ОС (налоговый учет); Номер строки: 2)

    Ответить

  8. Добрый день! У меня ошибку «Запись с такими ключевыми полями уже существует» выбивает при просчете износа.Что делать?

    Ответить

Добавить комментарий: