Имя: Пароль:
1C
 
Почему-то не записывается партия
0 AnisaL
 
06.05.20
10:05
Добрый день! Пытаюсь создать программно элемент справочника "ПартииНоменклатуры". При попытке записи все время уходит в Исключение. Что может быть?
&НаСервере
Процедура Расш1_СоздатьПартииПослеНаСервере()
    Для каждого Строка из Объект.Продукция цикл
        Партия = Справочники.ПартииНоменклатуры.СоздатьЭлемент();
        Партия.Наименование = Строка(Строка.Количество) + " м/п";
        Партия.Владелец = Строка.Номенклатура;
        Попытка
            Партия.Записать();
        Исключение    
            Сообщить("Партия не записалась");
        КонецПопытки;
        Строка.Партия = Партия.Ссылка;
    КонецЦикла;
КонецПроцедуры
1 Василий Алибабаевич
 
06.05.20
10:11
(0) На время отладки запись вынести за пределы Попытка... и посмотреть ошибку там. А не спрашивать здесь.
2 Amra
 
06.05.20
10:12
Кто знает, что там у вас в процедурах ПриЗаписи и ПередЗаписью у справочника партий, нам отсюда не видно
3 AnisaL
 
06.05.20
10:18
(1) Все! Спасибо, помогли. Обязательный реквизит - статус партии был не заполнен. Огромное спасибо!
4 Василий Алибабаевич
 
06.05.20
10:22
(3) На будущее. Попытка ... Исключение - есть зло.
Допустимо применять только для процессов, которые невозможно контролировать. Типа обмена с удаленными системами. Ну или для проверки наличия каких-то ресурсов, внешних по отношению к программе. Например есть-нет принтер, табло покупателя, модем...
При записи своего родного объекта в свое родное хранилище Попытка - однозначно зло.
5 ERWINS
 
06.05.20
11:11
(4) в новых языках просто нет try except.
Если что то пошло не так, и ты не обработал, то просто падает.
6 Волшебник
 
модератор
06.05.20
11:45
внутри блока Исключение...КонецПопытки надо выводить информацию СообщениеОбОшибке()
7 AnisaL
 
06.05.20
11:53
(6) Да, точно. Спасибо