Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Запись данных в периодический реквизит справочника-владельца , 1с 7.7.025          
andrew76 Подменю пользователя
сообщение 16.02.17, 16:29
Сообщение #1

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Всем доброго вечера !

Возникла следующая проблема:
При записи данных в подчинённом справочнике нужно заполнять периодический реквизит Справочника-владельца.
При обработке события в ПриЗаписи (в подчиненном справочнике)-при попытке сохранить значение реквизита Справочника-владельца вылетает ошибка:

Объект заблокирован !

Чем лечить ?

Процедура ПриЗаписи()

Влад=СоздатьОбъект("Справочник.Владелец");
Влад.Разряд.Установить(Дата,НовыйРазряд);
Влад.Записать();  //ошибка

КонецПроцедуры

igmig65 Подменю пользователя
сообщение 16.02.17, 22:07
Сообщение #2

Почти ветеран
Иконка группы
Группа: Местный
Сообщений: 613
Из: Донецкая обл
Спасибо сказали: 168 раз
Рейтинг: 140.9

Это значит, что объект, который пытаются записать, открыт.
И что ЭТО -
Цитата
Влад=СоздатьОбъект("Справочник.Владелец");

первый раз такой справочник встречаю...

andrew76 Подменю пользователя
сообщение 17.02.17, 10:07
Сообщение #3

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Справочник конечно называется по другому.Есть ли способ записать в реквизит спрaвочника-владельца?

Sanyk Подменю пользователя
сообщение 17.02.17, 10:35
Сообщение #4

Говорящий
***
Группа: Пользователи
Сообщений: 52
Спасибо сказали: 16 раз
Рейтинг: 0

А в чому проблема? Створіть об'єкт з типом цього довідника, знайдіть об'єкт і пишіть в нього що завгодно.

andrew76 Подменю пользователя
сообщение 17.02.17, 12:23
Сообщение #5

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Ошибка ! - не выбран элемент


Спр=СоздатьОбъект("Справочник.Владелец"); //название условное
Спр.ИспользоватьДату(ДатаСдачи,0);
    
Таб_н=Владелец.Код;
найд=Спр.НайтиПоКоду("Таб_н);

Если найд=1 тогда
       Спр.Разряд.Установить(ДатаСдачи,Разряд);
       Спр.Записать();      //Ошибка ! - не выбран элемент
КонецЕсли;

Sanyk Подменю пользователя
сообщение 17.02.17, 12:37
Сообщение #6

Говорящий
***
Группа: Пользователи
Сообщений: 52
Спасибо сказали: 16 раз
Рейтинг: 0

Навіщо шукати по коду, якщо є сам елемент? Використовуйте НайтиЭлемент()! В вашому випадку буде так:

Спр=СоздатьОбъект("Справочник.Владелец"); //название условное
Спр.ИспользоватьДату(ДатаСдачи,0);

//найд=Спр.НайтиПоКоду("Таб_н);

найд=Спр.НайтиЭлемент(Владелец);

Если найд=1 тогда
       Спр.Разряд.Установить(ДатаСдачи,Разряд);
       Спр.Записать();      //Ошибка ! - не выбран элемент
КонецЕсли;

andrew76 Подменю пользователя
сообщение 17.02.17, 15:05
Сообщение #7

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Ошибка !

{Справочник.ПроизводственноеОбучение.ФормаСписка.ФормаСписка.Модуль(18)}: Значение не представляет агрегатный объект (Установить)


Спр=СоздатьОбъект("Справочник.Владелец"); //название условное
Спр.ИспользоватьДату(ДатаСдачи,0);

Спр.НайтиЭлемент(Владелец);
Спр.Разряд.Установить(ДатаСдачи,Разряд); // Ошибка !
Спр.Записать();




Sanyk Подменю пользователя
сообщение 17.02.17, 15:33
Сообщение #8

Говорящий
***
Группа: Пользователи
Сообщений: 52
Спасибо сказали: 16 раз
Рейтинг: 0

Використовувати одночасно
ИспользоватьДату()
і
Уставноить()
неможна. Щось одне

andrew76 Подменю пользователя
сообщение 17.02.17, 16:05
Сообщение #9

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

1-й вариант

Спр=СоздатьОбъект("Справочник.Владелец"); //название условное
//Спр.ИспользоватьДату(ДатаСдачи,0);

Спр.НайтиЭлемент(Владелец);
Спр.Разряд.Установить(ДатаСдачи,Разряд);
Спр.Записать();



2-й вариант
Спр=СоздатьОбъект("Справочник.Владелец"); //название условное
Спр.ИспользоватьДату(ДатаСдачи,0);

Спр.НайтиЭлемент(Владелец);
Спр.Разряд=Разряд;
Спр.Записать();


при обеих вариантах ошибка уже не появляется,но в справочнике-владельце реквизит разряд не обновляется.

Sanyk Подменю пользователя
сообщение 17.02.17, 16:19
Сообщение #10

Говорящий
***
Группа: Пользователи
Сообщений: 52
Спасибо сказали: 16 раз
Рейтинг: 0

Тут же відкривайте "Отладчик" і дивіться. Причин може бути чимало. Не тей тип данних присвоюється, не так дивишся на значення періодичних реквізитів, ...

Спасибо сказали: andrew76,

andrew76 Подменю пользователя
сообщение 17.02.17, 18:20
Сообщение #11

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Работает.Спасибо,объект блокировался,потому-что перед открытием подчиненного справочника ПроизводственноеОбучение,
открывается форма элемента Справочника-Владельца (способ редактирования- в Диалоге).Поэтому и блокировки пёрли...

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 20.04.24, 5:27
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!