1. user1200515 13.04.19 17:15 Сейчас в теме

как получить ссылку на значения из справочника программно

Есть такой код, не работает, не пойму как правильно получить ссылку
//Ответственный-строка таб значений на форме
&НаСервере
Функция ПолучитьСпр()	
Ссылка=	Справочники.ФизическиеЛица.Выбрать();
Результат=Ссылка.Наименование;
Возврат Результат
КонецФункции


&НаКлиенте
Процедура ИсторияИзмененияПриИзменении(Элемент)
	Стр=Элементы.ИсторияИзменения.ТекущиеДанные;
   Стр.Ответственный=ПолучитьСпр();
КонецПроцедуры
Показать
Ответы
Избранное Подписка Сортировка: Древо
2. Xershi 542 13.04.19 17:50 Сейчас в теме
(1) у вас не ссылка а выборка. Отладчик не открывали?
3. user1200515 13.04.19 18:03 Сейчас в теме
(2) Не открывала, я совсем новичок в 1с и не очень понимаю как он работает. А как правильно прописать с выборкой?
Выборка=Справочники.ФизическиеЛица.Выбрать();
Результат=Выборка.Наименование;
Возврат Результат

Мне кажется что то не так с процедурой, когда пишу Стр. то Ответственный не подхватывается
4. Sander80 13.04.19 18:17 Сейчас в теме
Что-то тут целая куча ошибок.
1)
Ссылка = Справочники.ФизическиеЛица.Выбрать();

Ну ладно, что название ссылка, можно и Выборка назвать.
Но это штука для перебора всех элементов
Обходится через

Выборка = Справочники.ФизическиеЛица.Выбрать();
Пока Выборка. Следующий() Цикл

КонецЦикла;


И внутри цикла уже можно брать свойства типа наименования.

2) Зачем брать наименование, если нужна ссылка? Учите, что такое ссылка.

3) Написанная выборка вообще никакого отношения не имеет к текущим данным.

Но из контекста не поймешь, что у вас там в текущих данных.
5. user1200515 13.04.19 18:37 Сейчас в теме
(4)Ссылка - это значение, однозначно характеризующее объекты базы данных (элементы справочников, документы и так далее).
Ссылка 1С на данные получается с помощью функций вида:
СправочникСсылка = Справочники.ИмяСправочника.НайтиПоНаименованию()
Мне необходимо программно прописать путь из ТЧ в справочник
Чтобы при добавлении нового элемента в ТЧ, выбирать значения можно было из справочника без какого-либо отбора, просто все строки
История изменения-ТЧ
Ответственный-колонка ТЧ
Физические лица -справочник
СправочникСсылка=Справочники.ФизическиеЛица;
Как вывести все Наименования из данного справочника?
6. Sander80 13.04.19 19:03 Сейчас в теме
(5)Как вывести все Наименования из данного справочника?
Выборка = Справочники.ФизическиеЛица.Выбрать();
Пока Выборка. Следующий() Цикл
    Сообщить(Выборка.Наименование);
КонецЦикла;


Только мне кажется, это странный путь.
Сделайте реквизит табличной части типа ссылки на физлицо а не строку, и кодить не придется.
7. Healer 16.04.19 11:06 Сейчас в теме
По приведённому в вопросе коду вообще не понятно, что нужно сделать? Можете задачу описать?
8. Healer 16.04.19 11:12 Сейчас в теме
Если нужно вывести на управляемой форме документа, посмотрите, как это сделано в типовых конфигурациях. Вкратце так: добавляете на форму элемент поле ввода типа реквизит "Ответстенный" документа. Реквизит, соответственно, имеет тип "Справочник.ФизическиеЛица". при таком подходе код не нужен вообще и ответственного будет видно на форме в виде представления записи справочника.
9. Healer 16.04.19 11:12 Сейчас в теме
Представление, соответственно, можно задать в специальной системной функции ("ПриПолученииПредставления()" или что-то вроде того).
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Санкт-Петербург
зарплата от 135 000 руб. до 135 000 руб.
Полный день

Программист 1С
Норильск
зарплата от 50 000 руб. до 80 000 руб.
Полный день

Руководитель отдела внедрения 1С
Новосибирск
зарплата от 60 000 руб. до 160 000 руб.
Полный день

Ведущий программист 1С
Москва
зарплата от 120 000 руб. до 150 000 руб.
Полный день