|
Провалиться в ячейку табличного поля после программного добавления строки | ☑ | ||
---|---|---|---|---|
0
web_profiler
30.05.15
✎
12:06
|
согласен тем очень много, но у меня не получается "провалиться" в программно добавленную строку
помогите разобраться Обычное приложение Есть форма, на ней таб поле при открытии добавляю строку товары.добавить(); при активизации строки "проваливаюсь в ячейку" ТекущийЭлемент = ЭлементыФормы.товары; ТекСтрока = ЭлементыФормы.Товары.ТекущаяСтрока;//товары.Получить(товары.Количество() - 1); Если ТекСтрока <> Неопределено Тогда ТекущийЭлемент.ТекущаяСтрока = ТекСтрока; ТекущийЭлемент.ТекущаяКолонка = ЭлементыФормы.Товары.Колонки.Штрихкод; КонецЕсли; потом при изменении ТоварыШтрихкодПриИзменении(Элемент) стр = товары.Добавить(); ТекущийЭлемент = ЭлементыФормы.товары; ТекущийЭлемент.ТекущаяСтрока = товары.Получить(товары.Количество() - 1); активизирую добавленную строку и тут вопрос: как "провалиться"новую строку ? |
|||
1
oslokot
30.05.15
✎
12:14
|
(0) Провалиться мне на месте, вот не пойму что такое "провалиться"? активизировать ячейку поля и войти в режим редактирования?
|
|||
2
web_profiler
30.05.15
✎
12:23
|
ячейка активизирована
неполучается войти в режим редактирования вход непосредственно установлен |
|||
3
web_profiler
30.05.15
✎
12:23
|
активизирована
|
|||
4
web_profiler
30.05.15
✎
12:25
|
Процедура ПриОткрытии()
товары.Добавить(); КонецПроцедуры Процедура ТоварыПриАктивизацииСтроки(Элемент) ТекущийЭлемент = ЭлементыФормы.товары; ТекСтрока = ЭлементыФормы.Товары.ТекущаяСтрока;//товары.Получить(товары.Количество() - 1); Если ТекСтрока <> Неопределено Тогда ТекущийЭлемент.ТекущаяСтрока = ТекСтрока; ТекущийЭлемент.ТекущаяКолонка = ЭлементыФормы.Товары.Колонки.Штрихкод; КонецЕсли; КонецПроцедуры Процедура ТоварыШтрихкодПриИзменении(Элемент) //ЭлементыФормы.Товары.ЗакончитьРедактированиеСтроки(Ложь); //ТекСтрока = товары.Получить(товары.Количество() - 1); //Если ТекСтрока <> Неопределено Тогда стр = товары.Добавить(); ТекущийЭлемент = ЭлементыФормы.товары; ТекущийЭлемент.ТекущаяСтрока = товары.Получить(товары.Количество() - 1); ТекущийЭлемент.ТекущаяКолонка = ЭлементыФормы.товары.Колонки.Штрихкод; //ЭлементыФормы.Товары.ИзменитьСтроку(); //КонецЕсли; КонецПроцедуры |
|||
5
web_profiler
30.05.15
✎
12:31
|
ап
|
|||
6
web_profiler
30.05.15
✎
12:38
|
помогите, не получается войти в редактирование ячейки
|
|||
7
web_profiler
30.05.15
✎
12:50
|
хелп!!!
|
|||
8
RomanYS
30.05.15
✎
12:55
|
ЭлементыФормы.ТабличнаяЧасть1.ИзменитьСтроку();
|
|||
9
web_profiler
30.05.15
✎
13:17
|
(8) не работает
|
|||
10
web_profiler
30.05.15
✎
13:18
|
(8) см. (4)
|
|||
11
RomanYS
30.05.15
✎
13:24
|
ты хочешь при открытии добавить строку и начать её редактирование?
Причем здесь обработчики активизации и изменения, делай всё при открытии. (8) работает, просто у тебя оно не вызывается |
|||
12
RomanYS
30.05.15
✎
13:40
|
видимо при открытии отрабатываю какие-то действия, которые завершают редактирование, получилось так:
Процедура _do() ТЧ = ЭлементыФормы.ТабличнаяЧасть1; Стр = ТабличнаяЧасть1.Добавить(); ТЧ.ТекущаяСтрока = Стр; ТЧ.ТекущаяКолонка = ТЧ.Колонки.Реквизит2; ТЧ.ИзменитьСтроку(); КонецПроцедуры Процедура ПриОткрытии() ПодключитьОбработчикОжидания("_do", 0.1, Истина); КонецПроцедуры |
|||
13
Zhuravlik
30.05.15
✎
14:03
|
(12) у него табличное поле
(0) Почему не использовать табл. чать? Табл. поле - поддерживает ввод данных, но вообще ориентировано на вывод информации, а не на ввод. |
|||
14
Zhuravlik
30.05.15
✎
14:04
|
А, не доглядел "ЭлементыФормы.Товары.Колонки.Штрихкод", извиняюсь. В названии темы ошибка.
|
|||
15
Zhuravlik
30.05.15
✎
14:06
|
И снова пардон, нет ошибки) Попутал Табличное поле <> поле табличного документа.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |