|
ТекущаяСтрока Таблицы значений на форме | ☑ | ||
|---|---|---|---|---|
|
0
Gera1t
13.11.24
✎
15:58
|
Здравствуйте!
Есть Таблица значений, которая есть на форме. После определенных действий ТЗ перезаполняется. На форме данные отображаются корректно, но если обратиться Элементы.ТЗ.ТекущаяСтрока, то количество строк в Элементы.ТЗ увеличивается. Т.е. например в ТЗ 10 строк, мне нужно удалить одну из ТЗ Делаю: ТекСтрока = Элементы.ТЗ.ТекущаяСтрока (Например 5) ТекДанные = ТЗ.Получить(ТекСтрока) ..... Затем перезаполняю ТЗ и при обращении к ТекСтрока = Элементы.ТЗ.ТекущаяСтрока получаю, что в Элементы.ТЗ уже 20 строк, хотя в ТЗ их все еще 10 Ну и так при каждом обновлении ТЗ количество в Элементы.ТЗ увеличивается на количество строк в ТЗ Элементы.ТЗ.Обновить() пробовал, не помогает |
|||
|
1
Мультук
13.11.24
✎
16:08
|
Это вас как-то напрягает?
Тревожные мысли ? |
|||
|
2
osa1C
13.11.24
✎
16:11
|
(0) Перед тем как перезаполнять ТЗ, её надо очищать. ТЗ.Очистить();
Стаж 14 лет и такие вопросы.... пипец |
|||
|
3
Gera1t
13.11.24
✎
16:12
|
(1) Мне нужно получать данные из ТЗ, но на форме не все колонки, поэтому через ТекущиеДанные не могу получить. Сначала на клиенте делаю ТекущаяСтрока, а потом на сервере ТЗ.Получить(ТекСтрока)
(2) ТЗ очищаю, в том то и дело, что в ТЗ нужное количество строк, а вот в Элементы.ТЗ они как будто не очищаются |
|||
|
4
Gera1t
13.11.24
✎
16:14
|
(2) Стаж 13 лет, а читать не научился
|
|||
|
5
Мультук
13.11.24
✎
16:20
|
(0)
Обработку могу кинуть на dropbox, код - работает. &НаКлиенте Процедура УдалитьТекущуюСтроку(Команда) тз.Удалить(Элементы.ТЗ.ТекущаяСтрока); КонецПроцедуры Более полный пример &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Для й =1 по 5 Цикл
НоваяСтрока = Тз.Добавить();
НоваяСтрока.РеквизитБулево = Ложь;
НоваяСтрока.РеквизитСтрока = Строка("Строка " + й);
КонецЦикла;
КонецПроцедуры
&НаКлиенте
Процедура УдалитьНаКлиенте(Команда)
пОтбор = Новый Структура("РеквизитБулево", Истина);
нс = тз.НайтиСтроки(пОтбор);
Для каждого строкаУдалить из нс Цикл
тз.Удалить(строкаУдалить);
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура УдалитьНаСервереНаСервере()
пОтбор = Новый Структура("РеквизитБулево", Истина);
нс = тз.НайтиСтроки(пОтбор);
Для каждого строкаУдалить из нс Цикл
тз.Удалить(строкаУдалить);
КонецЦикла;
КонецПроцедуры
&НаКлиенте
Процедура УдалитьНаСервере(Команда)
УдалитьНаСервереНаСервере();
КонецПроцедуры
|
|||
|
6
Gera1t
13.11.24
✎
16:20
|
(5) Вопрос не в том, как правильно удалить строку из ТЗ.
Короче сделал через ТекущиеДанные |
|||
|
7
d4rkmesa
13.11.24
✎
16:38
|
(2) Хех, кто бы говорил. ) Уж "Новое в версии ..." на ИТС можно было научиться читать. Ну это я так, без обид.
|
|||
|
8
Gera1t
13.11.24
✎
16:44
|
(7) Да понял уже), поэтому и (6)
|
| Форум | Правила | Описание | Секции | Поиск |