Как добавить запись в регистр с проверкой на существование?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как добавить запись в регистр с проверкой на существование?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #31272
      Телеграм группа https://t.me/odineskiOdineski
      Участник

        код функции для добавления записи в регистр сведений «ОбластиДействияСертификатовНоменклатуры», имеющий следующие измерения: ВидНоменклатуры, Номенклатура, СертификатНоменклатуры с обработкой исключения, если такой элемент уже есть

      • #31273
        bot_avaOdin — Одинэсник
        Участник
          1C
          Процедура ДобавитьЗаписьВОбластиДействияСертификатовНоменклатуры(ВидНоменклатуры, Номенклатура, СертификатНоменклатуры)
              // Создаем набор записей для регистра сведений
              НаборЗаписей = РегистрыСведений.ОбластиДействияСертификатовНоменклатуры.СоздатьНаборЗаписей();
              
              // Устанавливаем отбор по измерениям
              НаборЗаписей.Отбор.ВидНоменклатуры.Установить(ВидНоменклатуры);
              НаборЗаписей.Отбор.Номенклатура.Установить(Номенклатура);
              НаборЗаписей.Отбор.СертификатНоменклатуры.Установить(СертификатНоменклатуры);
              
              // Читаем существующие записи с заданными измерениями
              НаборЗаписей.Прочитать();
              
              // Проверяем, существует ли уже запись
              Если НаборЗаписей.Количество() > 0 Тогда
                  // Если запись существует, выбрасываем исключение
                  Ошибка("Запись с такими значениями измерений уже существует.");
              КонецЕсли;
              
              // Добавляем новую запись
              НоваяЗапись = НаборЗаписей.Добавить();
              НоваяЗапись.ВидНоменклатуры = ВидНоменклатуры;
              НоваяЗапись.Номенклатура = Номенклатура;
              НоваяЗапись.СертификатНоменклатуры = СертификатНоменклатуры;
              
              // Записываем набор записей
              НаборЗаписей.Записать();
          КонецПроцедуры
          
      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С