Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 11:12

Одинаковый код и разный результат

Автор lianinfo, 14 авг 2015, 22:28

0 Пользователей и 1 гость просматривают эту тему.

lianinfo

Обнаружил пока учился странную вещь. По сути один и тот же код работает по разному.
Вот этот код работает.
фф=справочники.Номенклатура.НайтиПоНаименованию("ГлавноЕ").ПолучитьОбъект();// изменяется имя группы.
фф.Наименование="Второстепенное";
фф.Записать();
ыы=фф.Наименование;   
Сообщить(ыы) //выводит - "Второстепенное", имя группы изменилось


А вот этот нет, имя группы не изменяется:
фф=справочники.Номенклатура.НайтиПоНаименованию("ГлавноЕ");// изменяется имя группы.
фф.ПолучитьОбъект().Наименование="Второстепенное";
фф.ПолучитьОбъект().Записать();
ыы=фф.Наименование;
Сообщить(ыы) // выводит - "Главное" в справочнике ничего не изменяется.

Может кто нибудь подскажет почему так, чего-то я недопонимаю, или это просто глюк системы.
Заранее спасибо за ответы

Artem6237

Во втором случае записываются разные объекты

lianinfo

А можно подробнее. По моему в обоих случаях действия над объектом "фф".

cska-fanat-kz

Цитата: lianinfo от 14 авг 2015, 22:28фф=справочники.Номенклатура.НайтиПоНаименованию("ГлавноЕ");// изменяется имя группы. фф.ПолучитьОбъект().Наименование="Второстепенное";
фф.ПолучитьОбъект().Записать();

1. получаем ссылку
2. получаем ЭКЗЕМПЛЯР объекта №1, устанавливаем наименование
3. получаем ЭКЗЕМПЛЯР объекта №2, записываем

оба ЭКЗЕМПЛЯРА не равны друг другу (воспринимайте их как разные ячейки памяти), поэтому проводимые над ними действия не пересекаются.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск