Добрый всем вечер !
Имеется следующее перечисление- "Родственники".Задействовано в ТЧ справочника Сотрудники.
Почему то при переборе записей ТЧ значение реквизита Родственник(тип перечисление) можно прочитать
следующим образом:
Значение_реквизита=Строка(Родственник); //псевдокод
Если не использовать функцию Строка(),то на выходе пусто.В отладчике -тип Перечисление.
Кто с таким сталкивался ?
Покажите код функции полностью: что пишете, что не работает. Непонятно ж нифига.
andrew76 @ 24.03.17, 18:03 необходимо зарегистрироваться для просмотра ссылки
,
И какой же тип у "Значение_реквизита"?
Цитата(Vofka @ 27.03.17, 11:07) необходимо зарегистрироваться для просмотра ссылки
Непонятно ж нифига.
Это точно.
Для Каждого ТекущаяСтрока Из СоставСемьи Цикл
Родственник=Строка(ТекущаяСтрока.Родство);
КонецЦикла;
У реквизита Родство -тип Перечисление;Если убрать из кода функцию Строка,то переменная Родственник получает пустое значение.
Petre правильный вопрос задал. Похоже, что переменная, которой вы присваиваете значение не может впитать в себя это присваиваемое значение. Типы у Родственник и ТекущаяСтрока.Родство одинаковые?
Если в коде "Родственник=Строка(" , значит переменная Родственник имеет тип Строка.Мне нужно прочитать значение Перечисления,но почему-то
прочитать это значение я могу взяв его в качестве аргумента для функции Строка.На выходе значение соответственно преобразуется в строку в этом данном случае.Аналогично можно прочитать через функцию Сообщить().Может это особенности работы с перечислением в 8.2 ? Мне просто нужно прочитать
значение перечисления.
andrew76, вы либо давайте прямые ответы на вопросы, либо я удаляюсь из темы, потому что играть дальше в угадай мелодию становится не интересно.
Типы у Родственник и ТекущаяСтрока.Родство разные.Родственник -строка,ТекущаяСтрока.Родство-имеет тип Перечисление.
andrew76 @ Сегодня, 9:16
необходимо зарегистрироваться для просмотра ссылки
,
Не понимаю, чего вы хотите. Если реквизит имеет тип "строка", то ему надо давать только строку. Функция "Строка()" преобразует всякие типы в строку. У вас все корректно происходит. Так чего же вы хотите?
Цитата(andrew76 @ 27.03.17, 9:16) необходимо зарегистрироваться для просмотра ссылки
Может это особенности работы с перечислением в 8.2 ?
Наведите примеры другого поведения с иным типом (кроме примитива)...
Мне просто нужно было получить значение перечисления,(его текстовое представление).
andrew76 @ Сегодня, 9:45 необходимо зарегистрироваться для просмотра ссылки
,
Нет. Значение перечисления имеет тип перечисления. Представление перечисления вы и так получаете одним из вариантом ("Строка()").
Возможно, вы хотите получить имя метаданных значения перечисления. Тогда его следует получать из метаданных.
Нет,мне нужно было именно значение перечисления.В метаданных оно "обозвано" как представление.
andrew76 @ Сегодня, 9:58 необходимо зарегистрироваться для просмотра ссылки
,
Тогда я не пойму, какой смысл присваивать значение перечисления (тип "перечислениессылка") реквизиту с типом "строка"? Поставьте у реквизита тип перечисления.
andrew76 @ Сегодня, 9:58 необходимо зарегистрироваться для просмотра ссылки
,
"представление" - это строка, формирующаяся по определенному алгоритму в зависимости от типа значения, его метасвойств (наименование, синоним...), свойств (код, номер, дата...) и текущего языка пользователя.
Результат
Цитата(Petre @ 27.03.17, 13:07) необходимо зарегистрироваться для просмотра ссылки
Тогда я не пойму, какой смысл присваивать значение перечисления (тип "перечислениессылка") реквизиту с типом "строка"? Поставьте у реквизита тип перечисления.
Не подходит,потому что мне надо заполнять в итоге этими значениями таблицу в файле Ms Word.Мне нужен тип-строка.
Тему можно закрывать.
andr_andrey
27.03.17, 14:43
Цитата(andrew76 @ 24.03.17, 19:03) необходимо зарегистрироваться для просмотра ссылки
Почему то при переборе записей ТЧ значение реквизита Родственник(тип перечисление) можно прочитать
следующим образом:
Потому что функция "Строка(Родственник)" возвращает "Синоним" значения или строковое представление значения (если синоним пустой), которое хранится в реквизите "Родственник".
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.