Имя: Пароль:
1C
1С v8
Как отчистить табличное поле
0 HelpMePlz
 
07.01.21
11:49
Добрый день. Не подскажите почему я не могу очистить табличный документ методом "Очистить()".
Идея в том что пользователь нажимает кнопку например "Выгрузка".
Заполняется информация о данной выгрузке, в табличное поле.
   код {
        ТабдокВыгрузка = ЭтаФорма.ЭлементыФормы.ТабДокВыгрузка;
    ТабдокВыгрузка.Очистить();
   Код }
А он не очищает! Не знаете что я не так делаю.
ТабДокВыгрузка - это наименование табличного поля.
1 RomanYS
 
07.01.21
11:54
(0) Данные нужно очищать, а не элемент формы
2 HelpMePlz
 
07.01.21
11:56
(1) Спасибо, а как отчистить разом все данные если у меня на каждой строчке, есть какие то данные, только бегать циклом? Или есть какая та команда ?
3 HelpMePlz
 
07.01.21
11:59
(2) то есть не команда а метод
я пытался очищать ТабДокВыгрузка.Область().Очистить(), подумал что если не указывать ячейку то очистит все поле, но нет.
4 Droning1C
 
07.01.21
12:06
ты не понял посыла, который тебе дали в (1)
5 DJ Anthon
 
07.01.21
12:08
(2) не отчистить, а очистить. ты кого собрался чистить, какую выгрузку? можно очистить табличную часть документа, но это только на сервере.
6 Droning1C
 
07.01.21
12:15
у тебя есть элемент формы ТабДокВыгрузка. у этого элемента формы есть свойство ПутьКДанным с типом значения ТабличныйДокумент. В этом свойстве заложено значение реквизита формы, который является "данными" о которых тебе говорят в (1) . Тебе надо очистить значение этого реквизита.
7 Droning1C
 
07.01.21
12:18
посмотри внимательно код заполнения твоего ТабДокВыгрузка. И сделай очистку с аналогичным обращением. Как там определяется аналог твоего ТабДокВыгрузка?
8 HelpMePlz
 
07.01.21
12:23
(7)
Перем Отступ;        
Если ПроверкаИнформацияООбмене <> Ложь Тогда
                // Только что дописал не помогло {
        Если Отступ <> Неопределено Тогда
                        
            Для Индекс = 0 По Отступ Цикл
                Индекс = Индекс + 1;
                ТабдокВыгрузка.Область("R"+Индекс+"C1:R"+Индекс+"C7").Очистить(Истина, Истина, Истина);
            КонецЦикла;
        КонецЕсли;
            // }
        Отступ = 1;
        ИнформацияОбмена = "";
        ИнформацияОбмена = "Информация о инициаторе:";
        Обл = ТабдокВыгрузка.Область("R"+Отступ+"C1:R"+Отступ+"C7");
        Обл.Объединить();
        Обл.Шрифт = Новый Шрифт(,,Истина);
        Обл.Текст = "Информация о инициаторе:";
        Отступ = Отступ + 1;
        ПроцВыг = 0;
        Процент = "Выгрузка заверешена: "+ ПроцВыг +"%";
КонецЕсли;
9 HelpMePlz
 
07.01.21
12:25
(6) Я у табличного поля не нашел этого свойства, мб оно не отображается просто
10 HelpMePlz
 
07.01.21
12:32
у меня есть предположение что он его очищает, но не отображает пока обработка не выполнит код, "поле ввода" сразу отображает изменение,
а табличное поле только тогда когда обработка закончила выполнение кода это заметно когда при нажатии на кнопку выгрузка "поле ввода" по чтению кода сразу меняет свое значение, а вот табличное поле только после выполнение кода отображает свое значение.
11 Droning1C
 
07.01.21
12:48
//ТабдокВыгрузка = ЭтаФорма.ЭлементыФормы.ТабДокВыгрузка;
  ТабдокВыгрузка.Очистить();

вот так попробуй. без первой строчки
12 HelpMePlz
 
07.01.21
12:55
Говорит что переменная не определена, я так пытался еще раз на всякий перепроверил
13 Droning1C
 
07.01.21
12:59
(8) в теле этой процедуры как определяется переменная ТабДокВыгрузка?
14 RomanYS
 
07.01.21
13:07
(0) В ОФ проще:
ЭлементыФормы.ТабДокВыгрузка.Очистить();
15 Droning1C
 
07.01.21
13:13
тебе надо чистить табдок по какому-то условию или всегда перед заполнением?
16 Droning1C
 
07.01.21
13:15
или тебе вообще область ячеек надо чистить? (8)
17 HelpMePlz
 
07.01.21
13:26
я даже не знаю как объяснить. Моя задача стоит в том что бы пользователь открыл мои обработку нажал на кнопку "Выгрузка" и если он не закрывая эту форму нажмет еще раз выгрузка и меня в коде ТабДокВыгрузка изменится, если обработка быстро выполнится то пользователь не заметит изменений, но если обработка идет 20 минут то пользователь видит весь текст ТаДокВыгрузка, а я хотел бы что бы этот ТабДокВыгрузка был пустым.
18 HelpMePlz
 
07.01.21
13:28
Сори за грамотность
19 Droning1C
 
07.01.21
13:34
переведите плз, кто понял о чем речь.
20 HelpMePlz
 
07.01.21
13:35
Это не на что не влияет это только ради моего душевного спокойствия )
21 hhhh
 
07.01.21
13:47
(20) тогда ради спокойствия ничего не чисть.
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс