Как получить текущий элемент формы списка справочника и изменить его?

1. 123xxx123 11.09.09 18:04 Сейчас в теме
Как получить текущий элемент формы списка справочника и изменить его?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Altair777 648 11.09.09 18:07 Сейчас в теме
(1) Боже!!!
Извините за вопрос... Какой у Вас опыт программрование в 1С?
Вы ЖКК читали хоть раз? А синтаксис-помощник?
12. пользователь 15.11.22 07:40
Сообщение было скрыто модератором.
...
13. tamidi 8 15.11.22 09:16 Сейчас в теме
(12)Вы ничего не перепутали? Может вам на другой форум надо было зарегистрироваться?
3. Altair777 648 11.09.09 18:08 Сейчас в теме
ТекЭлемент=ТекущийЭлемент();
4. Altair777 648 11.09.09 18:12 Сейчас в теме
ТекЭлемент=ТекущийЭлемент();
Спр=СоздатьОбъект("Справочник.Номенклатура");
Спр.НайтиЭлемент(ТекЭлемент);
Спр.Наименование="Новое наименование";
Спр.Записать();

С периодическими реквизитами по-другому.
5. 123xxx123 11.09.09 18:21 Сейчас в теме
Есть справочник "Элементы", в нем реквезит "Метка".
В форме списка добавлено текстовое поле "ПиктМетка".
Нужно при щелчке по колонке "ПиктМетка" изменить реквезит "Метка" с 0 на 1, или наоборот.
//===========================================
Процедура ПриНачалеРедактированияСтроки()
Если Форма.ТекущаяКолонка() = "ПиктМетка" Тогда
ТекЭлемент = ТекущийЭлемент();
ТекЭлемент.Метка = ?(ТекЭлемент.Метка = 0, 1, 0);
ТекЭлемент.Записать();
КонецЕсли;
КонецПроцедуры
//===========================================
Ошибка:
ТекЭлемент.Записать();
{Справочник.Элемент.ФормаСписка.ФормаСтартовая.Модуль(35)}: Не выбран элемент!
Извините за неверно поставленый вопрос.
6. Altair777 648 11.09.09 18:27 Сейчас в теме
(5)
Андрей пишет:
Не выбран элемент!

Конечно, он не выбран. Он не спозиционирован никак.
И при таком подходе, по идее, у Вас еще будет ошибка блокировки объекта.
А, может, и нет :-) В конце дня лень думать....
7. Altair777 648 11.09.09 18:36 Сейчас в теме
8. 123xxx123 11.09.09 18:44 Сейчас в теме
//===========================================
Процедура ПриНачалеРедактированияСтроки()
Если Форма.ТекущаяКолонка() = "ПиктМетка" Тогда
Метка = ?(Метка=0,1,0);
СтатусВозврата(0);
КонецЕсли;
КонецПроцедуры
//===========================================
При таком подходе "Метка" сохранена не будет.
9. Altair777 648 11.09.09 18:47 Сейчас в теме
Вот так работает
Процедура ПриНачалеРедактированияСтроки()
	Если Форма.ТекущаяКолонка() = "Метка" Тогда 
		ТекЭлемент=ТекущийЭлемент(); 
		Спр=СоздатьОбъект("Справочник.Новый1"); 
		Спр.НайтиЭлемент(ТекЭлемент); 
		Спр.Метка=?(ТекЭлемент.Метка=0,1,0);
		Спр.Записать();
	КонецЕсли;
	СтатусВозврата(0);
КонецПроцедуры
Показать

Только значения свои подставьте
10. 123xxx123 11.09.09 18:51 Сейчас в теме
Я искал более простой путь, без создания справочника и поиска элемента в нем.
Большое спасибо за ответ. :)
11. Altair777 648 11.09.09 18:54 Сейчас в теме
(10) Нема за що (укр) :-)

P.S. хм... ну и нафлудил же я...
P.P.S. Самая короткая дорога - это та, которую знаешь
Оставьте свое сообщение

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