|
Как выделить строку в таблице на форме? | ☑ | ||
---|---|---|---|---|
0
Александр111
22.04.24
✎
09:31
|
В документе есть Объект.Маршрут - элемент справочника маршруты, у которого есть табличная часть. Эта табличная часть выводится на форму Элементы.МаршрутМаршрут
Нужно установить (подсветить) заданную строку из таблицы МаршрутМаршрут. Так не получается: &НаСервере Функция ОпределитьЭтапМаршрута(НомерСтроки) НужнаяСтрока=Объект.Маршрут.Маршрут[НомерСтроки]; Возврат(НужнаяСтрока); КонецФункции на клиенте ЭтаФорма.Элементы.МаршрутМаршрут.ТекущаяСтрока=ОпределитьЭтапМаршрута(1).ПолучитьИдентификатор(); Как правильно? |
|||
1
Волшебник
22.04.24
✎
09:34
|
Правильно будет МаршрутМаршрутМаршрут
|
|||
2
Александр111
22.04.24
✎
09:37
|
хоть горшком назови,
|
|||
3
Александр111
22.04.24
✎
10:15
|
&НаСервере
Процедура ОпределитьЭтапМаршрута(НомерСтроки) СтрокаКоллекции=Объект.Маршрут.Маршрут.Получить(НомерСтроки); Элементы.МаршрутМаршрут.ТекущаяСтрока = СтрокаКоллекции.ПолучитьИдентификатор(); КонецПроцедуры Выдает ошибку в ПолучитьИдентификатор(); |
|||
4
yopQua
22.04.24
✎
10:21
|
(0) на клиенте
Новая = Объект.Маршрут.Добавить(); Элементы.Маршрут.ТекущаяСтрока = Новая.ПолучитьИдентификатор(); |
|||
5
Волшебник
22.04.24
✎
10:22
|
(3) Какую ошибку?
|
|||
6
Ёпрст
22.04.24
✎
10:23
|
(0)
подсвечивай условным оформлением формы. |
|||
7
Александр111
22.04.24
✎
10:27
|
(4) - Объект.Маршрут - Объект.Маршрут - элемент справочника маршруты, соответственно на клиенте не добавишь
|
|||
8
Александр111
22.04.24
✎
10:30
|
(6) - условным можно, но хотелось проще.
|
|||
9
Александр111
22.04.24
✎
10:31
|
(5) Метод объекта не обнаружен (ПолучитьИдентификатор)
{Документ._ДемоРеализацияТоваров.Форма.ФормаДокумента.Форма(64)}:Элементы.МаршрутМаршрут.ТекущаяСтрока = СтрокаКоллекции.ПолучитьИдентификатор(); {Документ._ДемоРеализацияТоваров.Форма.ФормаДокумента.Форма(78)}:ОпределитьЭтапМаршрута(1); [ОшибкаВоВремяВыполненияВстроенногоЯзыка, ОшибкаИспользованияВстроенногоЯзыка] |
|||
10
yopQua
22.04.24
✎
10:31
|
(7) это пример, новая - это строка коллекцииформы, получите ее как хотите
ответьте (5) |
|||
11
yopQua
22.04.24
✎
10:33
|
.получить() принимает индекс, у вас "1", там больше одной строки?
|
|||
12
Александр111
22.04.24
✎
10:36
|
(11) Да
|
|||
13
yopQua
22.04.24
✎
10:38
|
косяк в названиях переменных может быть, ищите отладчиком, должно работать
|
|||
14
Александр111
22.04.24
✎
10:43
|
&НаСервере
Процедура ОпределитьЭтапМаршрута(ЭтотОбъект) СтрокаКоллекции=ЭтотОбъект.Объект.Маршрут.Маршрут.Получить(1); Элементы.МаршрутМаршрут.ТекущаяСтрока = СтрокаКоллекции.ПолучитьИдентификатор(); КонецПроцедуры &НаКлиенте Процедура ПриОткрытии(Отказ) ОпределитьЭтапМаршрута(ЭтотОбъект); // КонецЕсли; //ементы.МаршрутМаршрут.ТекущаяСтрока=Элементы.МаршрутМаршрут.ПолучитьндартныеПодсистемы.ПодключаемыеКоманды ПодключаемыеКомандыКлиент.НачатьОбновлениеКоманд(ЭтотОбъект); // Конец СтандартныеПодсистемы.ПодключаемыеКоманды КонецПроцедуры Ошибка Отсутствует отображение для типа 'ФормаКлиентскогоПриложения' по причине: Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа. по причине: Ошибка преобразования данных XDTO: Запись значения свойства 'param': форма: Элемент имя: {http://v8.1c.ru/8.2/managed-application/modules}param по причине: Ошибка отображения типов: Отсутствует отображение для типа 'ФормаКлиентскогоПриложения' |
|||
15
Александр111
22.04.24
✎
10:50
|
Видимо придется создавать к элементу формы еще и реквизит, т.к. связать строку табличной части реквизита со строкой элемента формы не получается.
|
|||
16
Александр111
22.04.24
✎
10:52
|
||||
17
yopQua
22.04.24
✎
10:56
|
что за лажа?
ДанныеФормыКоллекция (FormDataCollection) Получить (Get) Синтаксис: Получить(<Индекс>) Параметры: <Индекс> (необязательный) Тип: Число. Расположение элемента в коллекции. Возвращаемое значение: Тип: ДанныеФормыЭлементКоллекции. Описание: Получает элемент по индексу. Работает аналогично оператору []. Доступность: Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер. |
|||
18
Александр111
22.04.24
✎
11:07
|
(17) -?
|
|||
19
Ёпрст
22.04.24
✎
11:56
|
(8) Зачем тогда привязываться к "номеруСтроки" ?
Если строк нет, например , где это в коде ? |
|||
20
Александр111
22.04.24
✎
13:05
|
Вот так работает:
&НаСервере Процедура ОпределитьЭтапМаршрута() ЗначениеВРеквизитФормы(Объект.Маршрут.Маршрут.Выгрузить(),"ТабМ"); СтрокаКоллекции=ТабМ.Получить(1); Элементы.ТабМаршрут.ТекущаяСтрока = СтрокаКоллекции.ПолучитьИдентификатор(); КонецПроцедуры |
|||
21
Волшебник
22.04.24
✎
13:13
|
(20) Первая строка имеет индекс 0
|
|||
22
Александр111
22.04.24
✎
13:19
|
Нужно получить вторую.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |