Управляемые формы. Есть элемент формы Таблица , заполняется из динамического списка. Нужно получить данные текущей строки. При использовании метода "Текущие данные" , он данные получает , но не получает ссылку , а как будто представляет ее в виде строки. Как получить ссылку , что бы например дальше получить данные из нее? И еще есть метод это массив , но туда передаются не ссылка , а просто число , как я понял номер строки , как передать туда ссылк?
Элементы.Оплаты.ТекущиеДанные
Элементы.Оплаты.ВыделенныеСтроки
По теме из базы знаний
- Обзор полезных методов БСП 3.1.4
- Расширение: Быстрые отборы через буфер [Alt+C] Копировать список, [Alt+V] Вставить список, [Ctrl+C] Копировать из файлов
- Дублирование значений в полях табличных частей (CTRL+D)
- Самые используемые методы БСП 3.1.9
- Типовая работа с табличными частями УТ 11.5, аналог которой программист каждый раз изобретает сам
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Kirill2s,
1. В поля ДС нужно добавить поле ссылка.
2. Если это полне не нужно видеть на форме, но нужно к нему обращаться программно, нужно в реквизитах установить флаг "Использовать всегда".
3. Через текущие данные можно будет обратиться.
- Если у ДС установлена основная таблица, тогда ТекущаяСтрока вернет ссылку на ДС.
1. В поля ДС нужно добавить поле ссылка.
2. Если это полне не нужно видеть на форме, но нужно к нему обращаться программно, нужно в реквизитах установить флаг "Использовать всегда".
3. Через текущие данные можно будет обратиться.
- Если у ДС установлена основная таблица, тогда ТекущаяСтрока вернет ссылку на ДС.
(4) Kirill2s, На Клиенте считываются данные, так сказать, первого уровня. Все что "глубже" посмотреть, для этого нужно "бежать" на сервер.
Где-то есть типовая функция которая возвращает эти данные. Но у меня есть своя :)
Где-то есть типовая функция которая возвращает эти данные. Но у меня есть своя :)
&НаСервереБезКонтекста
Функция ПолучитьЗначениеСсылки(Ссылка, ИмяРеквизита)
Возврат Ссылка[ИмяРеквизита];
КонецФункции
(13)
Метод объекта не обнаружен (НайтиПоИдентификатору)
Для Каждого ТекущаяВыделеннаяСтрока Из Элементы.Оплаты.ВыделенныеСтроки Цикл
ТекущиеДанныеСИдентификатора = Элементы.Оплаты.НайтиПоИдентификатору(ТекущаяВыделеннаяСтрока);
ТекущиеДанныеСИдентификатора = Элементы.Оплаты.НайтиПоИдентификатору(ТекущаяВыделеннаяСтрока);
Метод объекта не обнаружен (НайтиПоИдентификатору)
Не уверен что по теме, но
Правда тут СписокСостоянияУзлов это ТаблицаЗначений. Но если есть метод ВыделенныеСтроки то почему бы не попробовать.
&НаКлиенте
Процедура ВыполнитьОбменСВыделенными(Команда)
ТекстВопросаШаблон = НСтр("ru = 'Выполнить обмен данными с ""[УзелИнформационнойБазы]""?'");
ВыделенныеСтроки = Элементы.СписокСостоянияУзлов.ВыделенныеСтроки;
Для Каждого ВыделеннаяСтрока ИЗ ВыделенныеСтроки Цикл
УзелИнформационнойБазы = Элементы.СписокСостоянияУзлов.ДанныеСтроки(ВыделеннаяСтрока).УзелИнформационнойБазы;
ТекстВопроса = СтрЗаменить(ТекстВопросаШаблон, "[УзелИнформационнойБазы]", Строка(УзелИнформационнойБазы));
Ответ = Вопрос(ТекстВопроса, РежимДиалогаВопрос.ДаНет,3, КодВозвратаДиалога.Да,,КодВозвратаДиалога.Да);
Если Ответ = КодВозвратаДиалога.Нет Тогда
Предупреждение("Прервано пользователем",9);
Возврат;
КонецЕсли;
ВыполнитьОбменНаУзле(УзелИнформационнойБазы);
КонецЦикла;
КонецПроцедуры
ПоказатьПравда тут СписокСостоянияУзлов это ТаблицаЗначений. Но если есть метод ВыделенныеСтроки то почему бы не попробовать.
Кстати, по поводу
но не получает ссылку , а как будто представляет ее в виде строки
, на клиенте нельзя получить ничего типа СправочникСсылка и т.п. Если надо обратиться через точку к реквизиту придётся отсылать на сервер.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот